Commit graph

1070 commits

Author SHA1 Message Date
Eugen Rochko
6837480719 Adding suspend account service 2016-12-06 17:41:42 +01:00
Eugen Rochko
5522606989 Add single user mode 2016-12-06 17:19:26 +01:00
Eugen Rochko
a4d3947c88 Fix 2016-12-06 00:24:33 +01:00
Eugen Rochko
ca0757a6cf Add account suspension 2016-12-05 22:59:30 +01:00
Eugen Rochko
303044f899 Downsize originals in media attachments, small fixes 2016-12-05 17:13:44 +01:00
Eugen Rochko
e5e702a976 Adding configurable e-mail blacklist 2016-12-04 19:07:02 +01:00
Eugen Rochko
cc7e8339ac Fix rule 2016-12-04 18:34:30 +01:00
Eugen Rochko
9c379084a7 Fix mutating objects 2016-12-04 18:32:31 +01:00
Eugen Rochko
bae8aa876a Better responsiveness 2016-12-04 18:13:07 +01:00
Eugen Rochko
68586258ca Adding more to admin accounts UI 2016-12-04 18:10:40 +01:00
Eugen Rochko
7c81e7e9c7 Fix public tags page 2016-12-04 16:56:45 +01:00
Eugen Rochko
42b065d3d7 Automatically block outgoing notifications from silenced accounts to users
who don't follow them
2016-12-04 16:51:49 +01:00
Eugen Rochko
f6b99b05d3 Do not use expiring links after all 2016-12-04 13:02:43 +01:00
Eugen Rochko
9f4b033a8b Set a specific S3 expiration time so that files can be cached 2016-12-04 12:58:35 +01:00
Eugen Rochko
595f592304 Do not autoplay videos, display play button instead. Use expiring links when using S3. Do not keep originals
for avatars/headers, resize avatars down to 120x120 instead of 300x300. Set cache headers on S3 stuff, also
make it private (aka only accessible via expiring links to prevent hotlinking)
2016-12-04 12:28:10 +01:00
Eugen Rochko
e5c39148d7 Keep timelines in the UI trimmed when possible 2016-12-03 21:04:57 +01:00
Eugen Rochko
047bdf6fe0 Improve notification model 2016-12-03 20:04:19 +01:00
Eugen Rochko
b506010b4f Add "next" pagination to public profiles 2016-12-03 19:30:13 +01:00
Eugen Rochko
fb61dd14c5 Admin accounts page lists accounts 2016-12-03 19:08:07 +01:00
Eugen Rochko
2d4ce8a867 Fix #248 - Reload all accounts when fetching from cache 2016-12-03 18:21:26 +01:00
Eugen Rochko
78d6c567b3 Make all account links into permalinks (open public except on left click) 2016-12-02 15:05:50 +01:00
Eugen Rochko
ef09351a06 Fix #284 - Alignment in notifications column 2016-12-02 14:52:41 +01:00
Eugen Rochko
29bd2ba85b Fix #298 - Esc to close modal 2016-12-02 14:37:00 +01:00
Eugen Rochko
23a4f93345 Fix #323 - self-replies to appear in public timelines again 2016-12-02 14:33:20 +01:00
Eugen Rochko
211049ae59 Fix #329 - avatar errors no longer prevent remote accounts from being saved
(without avatar). Also improved search position of exact matches
2016-12-02 14:14:49 +01:00
Eugen
b81f025a56 Merge pull request #327 from TazeTSchnitzel/clearer_unlisted
Replace “Unlisted mode” with “Do not show on public timeline”
2016-12-01 20:58:00 +01:00
Andrea Faulds
3966353feb Fix line endings for Portuguese locale 2016-12-01 17:27:47 +00:00
Andrea Faulds
76bbb55d61 Replace "Unlisted mode" with more explicit text 2016-12-01 17:19:58 +00:00
Eugen Rochko
8260628fc8 Fix pt translations, improve pre-cache queries, removing will_paginate
from accounts/tags because it's a terribly inefficient way to paginate
large sets of data
2016-12-01 16:26:25 +01:00
Eugen
9413d66105 Fix opengraph preview image 2016-12-01 01:56:43 +01:00
unsmell
26a69d768c Create pt.jsx 2016-11-30 23:05:24 -01:00
Eugen Rochko
a8814a19dc Add basic OEmbed provider API, fix #247 2016-11-30 23:01:03 +01:00
Eugen Rochko
8d4ef0b6c3 Per-status control for unlisted mode, also federation for unlisted mode
Fix #233, fix #268
2016-11-30 21:34:59 +01:00
Eugen Rochko
53cefcb6f8 Preparing sensitive content for text 2016-11-30 16:10:19 +01:00
Eugen Rochko
1bb1ec3b8d Further abstract caching for includes 2016-11-30 15:57:56 +01:00
Eugen Rochko
329b2a326d Normalize localizations, add stub for admin/accounts 2016-11-30 15:32:26 +01:00
Eugen Rochko
a692318382 Track successful PuSH deliveries 2016-11-30 15:24:57 +01:00
Eugen Rochko
015cd99f41 Make User#current_sign_in_at actually track when user was last active,
by updating it at least every 24h if the user visits the site
2016-11-30 15:17:03 +01:00
Eugen
b389954d22 Merge pull request #235 from TazeTSchnitzel/settings_contrast
Improve contrast for settings pages (fixes #173)
2016-11-29 17:50:19 +01:00
Eugen
c0bb1ed7c5 Fix trying to PuSH-publish updates of remote removals 2016-11-29 17:41:47 +01:00
Eugen Rochko
bee7aeaea5 Unify collection caching code 2016-11-29 15:49:39 +01:00
Eugen Rochko
d26b8f3cce Delete statuses asynchronously but provide instant feedback in the API 2016-11-29 15:32:25 +01:00
Eugen Rochko
67db2cd871 Upgrade Paperclip to 5, AWS-SDK to 2, do not generate medium/small versions of avatars 2016-11-29 14:20:15 +01:00
Eugen Rochko
3c1c2b0e06 Adding rack timeout of 30sec, PuSH jobs moved to push queue so they
can be processed separately
2016-11-29 02:07:14 +01:00
Eugen Rochko
79075e1303 Fix URLs in inline-rendered XML 2016-11-29 00:26:01 +01:00
Eugen Rochko
66e01be769 Fix delete Salmons 2016-11-28 19:44:27 +01:00
Eugen Rochko
02da8fdcbe Fix setting of confirmed=true on successful confirmation 2016-11-28 19:24:49 +01:00
Eugen Rochko
bf7c9e826d More logging to ConfirmationWorker 2016-11-28 19:15:28 +01:00
Eugen Rochko
0cc5410e03 Adding backtracing to Salmon/Processing workers 2016-11-28 19:11:36 +01:00
Eugen Rochko
f37efe8e56 Add simple admin overview of PuSH subscriptions 2016-11-28 18:45:13 +01:00
Eugen Rochko
95321e961b Fix Pubsubhubbub::UnsubscribeService 2016-11-28 18:14:49 +01:00
Eugen Rochko
3439869ca1 Forgot to enable hungarian translation in the frontend 2016-11-28 13:55:45 +01:00
Eugen Rochko
ef93efbb5b Enabling portuguese and hungarian translations, which are awfully incomplete 2016-11-28 13:55:03 +01:00
Eugen
0e9ac6e2ab Merge pull request #304 from unsmell/patch-1
activate portuguese translation
2016-11-28 13:51:09 +01:00
Eugen Rochko
b344f157cc Fix order of attachments (see #269) 2016-11-28 13:49:55 +01:00
Eugen Rochko
b5ad0eb4ea Adding embedded PuSH server 2016-11-28 13:36:47 +01:00
unsmell
d4631d5479 activate portuguese translation 2016-11-27 14:57:09 -01:00
Eugen
313ebb4962 Merge pull request #275 from kodacs/master
Hungarian translation for Mastodon.
2016-11-26 18:33:48 +01:00
Eugen
3d86a74933 Merge pull request #282 from nclm/misc
Allow vertical resizing of the toot textarea
2016-11-26 18:30:03 +01:00
Eugen Rochko
31108d4659 Public and hashtag timelines now exclude reblogs and replies
Fix #289 - don't download avatar unless the URL is http/https
Fix #293 - reblog/reblogged is now boost/boosted
2016-11-26 15:45:35 +01:00
Eugen Rochko
1f62ffcc7a Fix #288 - Strip first @ from search query, don't search accounts if it begins with # 2016-11-26 15:32:29 +01:00
Eugen Rochko
1997e331ce Fix #278 - Use mb_chars.downcase on hashtags 2016-11-26 15:24:14 +01:00
Eugen Rochko
23162b2893 Update hub URL and re-subscribe if hub URL changes 2016-11-26 15:18:21 +01:00
nicolas
dfb0bace3c Allow vertical resizing of the toot textarea 2016-11-25 18:17:47 +01:00
Eugen Rochko
abeccf6eb2 X-RateLimit-Reset formatted with iso8601 2016-11-25 15:21:22 +01:00
Eugen Rochko
62dc431e9d Fix checkbox spacing 2016-11-25 14:02:12 +01:00
nicolas
c6d369c52b Checkboxes label adjustement
When the label of a checkbox is more than one line long, avoid unalignment.
2016-11-25 14:02:12 +01:00
nicolas
8cd2d6a174 Merge branch 'master' into french-translation 2016-11-25 13:33:00 +01:00
nicolas
12100797c4 Update fr.jsx 2016-11-25 13:31:46 +01:00
Eugen Rochko
666eda7256 Remove stale entries from cache results 2016-11-25 13:25:40 +01:00
Eugen
8183330361 Merge pull request #273 from nclm/french-translation
French localisation update
2016-11-25 13:14:30 +01:00
Eugen Rochko
ea0846645a Fix #65 - Options to block notifications from people you don't follow/who don't follow you 2016-11-25 13:13:16 +01:00
kodacs
6d952d6815 Server side HU translation + Toot fix. 2016-11-25 12:43:23 +01:00
Eugen Rochko
3b3bf2dd59 Filter statuses that mention blocked users 2016-11-25 12:35:52 +01:00
kodacs
c6353f6d39 Hungarian translation 2016-11-25 09:43:19 +01:00
nicolas
b70a12c0f3 Update fr.jsx 2016-11-25 09:25:28 +01:00
Eugen Rochko
ca342abbff Fix bad reference 2016-11-24 23:56:37 +01:00
Eugen Rochko
45c68c76d0 Fix forgotten reference 2016-11-24 23:49:45 +01:00
Eugen Rochko
30f9e9e624 Remove Neo4J 2016-11-24 23:46:27 +01:00
Eugen Rochko
4bbec58034 Center header in account column, hide media in "muted" status components (notifications) 2016-11-24 23:09:53 +01:00
nicolas
f447649d25 Merge branch 'master' into french-translation 2016-11-24 20:13:30 +01:00
nicolas
d46c2e98ee Update index.jsx
Forgot to add `fr` here.
2016-11-24 20:12:16 +01:00
Eugen Rochko
8ab2fcbb2c Mini Profiler not working well, remove it 2016-11-24 19:59:11 +01:00
Eugen Rochko
4af2805038 Add some OpenGraph tags to public statuses 2016-11-24 18:28:10 +01:00
Eugen Rochko
f613f2b84a Only distribute statuses to followers who signed in in the last 2 weeks, add rake task for clearing feeds of inactive users 2016-11-24 18:17:58 +01:00
Eugen
2152dfef02 Merge pull request #242 from TazeTSchnitzel/media_uri_obfuscation
Rename media to avoid exposing filename (fixes #207)
2016-11-24 16:27:32 +01:00
Alyssa Ross
cb06801b21 Extract filename obfuscation into module 2016-11-24 00:30:58 +00:00
Eugen Rochko
90b3ff2518 Follow/unfollow button outside of dropdown, also make favs/reblogs update indicator instantly and
then adjust to failure later if the request fails
2016-11-23 23:34:12 +01:00
Eugen Rochko
f6d196255c Fix unfollows not clearing reblogs, fix blocks not clearing reblogs and notifications,
skip ActionCable for follow/unfollow/block events, instead clear UI from
blocked account's posts instantly if block request succeeds. Add forgotten
i18n for sensitive content
2016-11-23 22:57:57 +01:00
Andrea Faulds
66a20701b7 Rename media to avoid exposing filename (fixes #207) 2016-11-23 21:03:03 +00:00
Eugen Rochko
cda67241d4 Merge branch 'development' 2016-11-23 19:01:12 +01:00
Eugen Rochko
d78962c1ed Cache accounts/:id/statuses and single statuses too 2016-11-23 19:00:43 +01:00
Eugen Rochko
1c8ca7aed5 Adding content sensitivity toggle, spoilers for media 2016-11-23 18:53:23 +01:00
Andrea Faulds
5dc7e130f8 Improve contrast for settings pages (fixes #173) 2016-11-23 17:37:10 +00:00
nicolas
862b82051a Rename ‘Publier’ to ‘Pouet’ in French locale.
🎺 https://mastodon.social/users/Pierrec/updates/100589
2016-11-23 15:53:49 +01:00
Eugen Rochko
3c12f6f23b Add content spoilers for media in sensitive-content statuses 2016-11-23 11:23:32 +01:00
Eugen Rochko
65d6191147 Adding sensitive marker to statuses in API 2016-11-23 10:46:48 +01:00
Eugen Rochko
c60df460af Rename "publish" to "toot" in english locale, fix lightbox showing old image
before loading new one, cache notifications API, fix missing follow button
on public profiles
2016-11-23 09:20:34 +01:00
Eugen Rochko
59d7fe4c05 Fix #168 - Turn off e-mail notifications by default 2016-11-23 08:39:04 +01:00
Eugen Rochko
dda6354c76 Implement includes caching for timelines APIs 2016-11-23 08:34:35 +01:00
Eugen Rochko
f6a975af8b More query optimizations 2016-11-22 23:18:54 +01:00
Eugen Rochko
30010a6dbd Moving some counter queries out of subqueries in the API 2016-11-22 22:59:54 +01:00
Eugen Rochko
f07b0dc82f Remove unneeded indices, improve error handling in background workers, don't needlessly reload reblogged status, send Devise e-mails asynchronously 2016-11-22 17:32:51 +01:00
nicolas
5902e95af9 Update fr.jsx 2016-11-22 10:49:50 +01:00
nicolas
1a9ad408e8 Merging code updates (Unlisted Mode) 2016-11-22 10:25:17 +01:00
nicolas
1555bf8400 Adding French locale to mastodon.jsx 2016-11-22 10:21:56 +01:00
nicolas
2a1b5185b3 Adding French locale to settings_helper.rb 2016-11-22 10:20:28 +01:00
Eugen Rochko
74df3ba1d7 Local accounts can control "silenced" attribute which removes them from public timeline 2016-11-21 23:06:41 +01:00
Eugen Rochko
7e8f1061dd Fix #163 - No need for Safari chrome on iOS 2016-11-21 22:33:44 +01:00
nicolas
c6ca8f8f2f First version for fr.jsx 2016-11-21 22:06:05 +01:00
Eugen Rochko
0943e98288 Adding option to specify asset server, filter followers query by local accounts
during Fan Out On Write to load less stuff into memory
2016-11-21 22:04:10 +01:00
nicolas
14e9972858 Create fr.jsx 2016-11-21 21:51:34 +01:00
Eugen Rochko
0aeae195cb Better error message in doorkeeper json response 2016-11-21 16:19:35 +01:00
Eugen Rochko
0a68464995 Performance improvement for notifications API 2016-11-21 16:10:42 +01:00
Eugen Rochko
4d100a1b36 Remove some n+1 queries from notifications API 2016-11-21 15:16:04 +01:00
Eugen Rochko
83cdfefa7d Remove orphaned notifications, add scopes param to app create API 2016-11-21 14:59:13 +01:00
Eugen Rochko
3624a8b6dd Try to fix for browsers that don't support notifications 2016-11-21 10:59:59 +01:00
Eugen Rochko
75590bba23 Icon for desktop notifications 2016-11-21 10:55:49 +01:00
Eugen Rochko
524847e4e1 Switch to compose route when replying and compose is not mounted 2016-11-21 10:52:11 +01:00
Eugen Rochko
dc8b46ecbc Use old rules for mention notifications as for mentions timeline 2016-11-21 10:37:34 +01:00
Eugen Rochko
80d58c6c04 Desktop notifications 2016-11-21 10:24:50 +01:00
Eugen Rochko
a75ad23c83 Fix responsive layout breakpoint, replace mentions column with notifications 2016-11-21 10:03:55 +01:00
Eugen Rochko
3fc7820d6e Call NotifyService about remote reblogs 2016-11-21 09:56:01 +01:00
Eugen Rochko
951843e646 Adding notifications column 2016-11-20 19:39:58 +01:00
Eugen Rochko
38025dfea3 Adding unified streamable notifications 2016-11-20 19:39:58 +01:00
caesarologia
622b48803b Portuguese translation (front-end) 2016-11-20 11:40:26 +01:00
Eugen Rochko
575b585024 Graphic emoji in usernames in the "reblogged" string above status 2016-11-19 00:28:42 +01:00
Eugen Rochko
b8293cd830 Display human names of locales in dropdown 2016-11-19 00:19:57 +01:00
Eugen Rochko
42fb16ec3a Activating Spanish i18n 2016-11-19 00:10:47 +01:00
Eugen Rochko
a750b471a2 Add more Spanish i18n 2016-11-19 00:01:02 +01:00
Eugen Rochko
fbaddca49e Move Salmon processing to background as well as PuSH 2016-11-18 23:24:57 +01:00
Eugen Rochko
b373fb0ff6 Catch validation errors in ProcessFeedService so that one failing entry wouldn't stop others from going through 2016-11-18 23:19:38 +01:00
Eugen Rochko
d2029a8845 Don't create attachments if remote file cannot be fetched 2016-11-18 23:16:34 +01:00
Eugen Rochko
8d767b477f Validate presence of text even for remote statuses 2016-11-18 23:14:41 +01:00
Eugen Rochko
c282e5be19 Fix OAuth authorization page and add a spec for it 2016-11-18 23:10:44 +01:00
victorhck
95ac094a1b fixed typos 2016-11-18 20:07:48 +01:00
Victorhck
c04884563e Added spanish translation (#150) 2016-11-18 19:12:44 +01:00
Eugen
8a3ac3502e Fix syntax error 2016-11-18 19:10:38 +01:00
victorhck
73f578231c doing spanish translation 2016-11-18 19:06:33 +01:00
victorhck
709fa3e988 added spanish translation 2016-11-18 18:52:48 +01:00
Eugen Rochko
a82a15a38e Adding german localization 2016-11-18 15:53:46 +01:00
Eugen Rochko
2096fc62ec Add an Intl polyfill 2016-11-17 16:34:36 +01:00
Eugen Rochko
08ed85b3cf Fix #148 - Devise mailer fixed, test spec added so it won't slip past again 2016-11-17 12:29:11 +01:00
Eugen Rochko
f06907eadd Remove broken test 2016-11-16 19:11:30 +01:00
Eugen Rochko
0e0b4f9e59 i18n for devise mailer too 2016-11-16 18:25:21 +01:00
Eugen Rochko
b8e6ca45e5 Add user locale setting 2016-11-16 17:56:31 +01:00
Eugen Rochko
43daf0be85 Adding react-intl i18n to the frontend. No translations yet 2016-11-16 17:20:52 +01:00
Eugen Rochko
1b61e404b4 Localizations for most server-side strings 2016-11-16 00:55:33 +01:00
Eugen Rochko
0e956910c3 Adding some localizations 2016-11-15 23:02:57 +01:00
Eugen Rochko
2fa716c92a Improve how public status pages look slightly 2016-11-15 18:45:54 +01:00
Eugen Rochko
15af998d7b Support emojis in display name, bio 2016-11-15 18:38:57 +01:00
Eugen Rochko
c6f5eb8aa7 Fix #144 - Filter statuses from blocked users out of ancestors/descendants results 2016-11-15 17:33:41 +01:00
Eugen Rochko
e71b152d89 Fix rubocop issues, introduce usage of frozen literal to improve performance 2016-11-15 16:56:29 +01:00
Eugen Rochko
a7332acba3 Delegate processing of incoming PuSH data to background workers 2016-11-15 15:43:33 +01:00
Eugen Rochko
19ea717b3c Fix wrong link header on followers API, wrong link in tabs component, order
account results
2016-11-14 01:19:25 +01:00
Eugen Rochko
7a55e3c409 Fix #63 - Filter mentions that reply to blocked users 2016-11-13 21:11:45 +01:00
Eugen Rochko
2a3ec3d5a3 Fix another mistake with infinite user list for following 2016-11-13 21:02:10 +01:00
Eugen Rochko
e3556ed56d Fix another mistake 2016-11-13 20:55:24 +01:00
Eugen Rochko
d2b92bca09 Fix infinite scrolling mistake 2016-11-13 20:52:11 +01:00
Eugen Rochko
c244c3f7bc Infinite scroll for followers/following lists 2016-11-13 20:42:54 +01:00
Eugen Rochko
b20d651b88 Fix stale reference 2016-11-13 19:44:19 +01:00
Eugen Rochko
295c9e7df1 Use privacy policy from Discourse 2016-11-13 19:35:45 +01:00
Eugen Rochko
6f0d312dc3 Force utf-8 encoding when processing XML 2016-11-13 19:12:40 +01:00
Eugen Rochko
0a8aced7f4 Making upload button into a smaller icon button 2016-11-13 19:08:52 +01:00
Eugen Rochko
0f7a388de6 Fix #110 - Make web UI use browser history, change links in e-mails to link to that 2016-11-13 14:02:34 +01:00
Eugen Rochko
e60cb2792e Debounce autosuggestions requests 2016-11-13 13:13:36 +01:00
Eugen Rochko
18341b1621 Search component 2016-11-13 13:04:18 +01:00
Eugen Rochko
733b5415be Fix #142 - Escape ILIKE special characters from Account.find_remote 2016-11-13 11:27:13 +01:00
Eugen Rochko
6b7fdf3b5f Weigh username matches higher than domain matches in account search 2016-11-12 14:56:40 +01:00
Eugen Rochko
6206f75837 Add limit to search results 2016-11-12 14:49:28 +01:00
Eugen Rochko
cbfa28b9cc Use full-text search for autosuggestions 2016-11-12 14:36:10 +01:00
Eugen Rochko
202fbc3e1b Enable emojis in reply indicator as well 2016-11-10 23:30:42 +01:00
Eugen Rochko
db4df4481b Fix modals sizing and add animation to it, fix #140 by only making the text of
status clickable (this also fixes multiple dropdown being openable at the same
time)
2016-11-10 23:21:24 +01:00
Eugen Rochko
d8c2044e65 Fix public timeline query 2016-11-10 21:58:22 +01:00
Eugen Rochko
6430d86e86 Fix #131 - Make active favourite buttons yellow 2016-11-10 01:32:32 +01:00
Eugen Rochko
ebe726f774 Fix #122 - Add microformats-2 classes to mention links 2016-11-10 01:19:33 +01:00
Eugen Rochko
aed424aef0 Fix live status removal from public/hashtag channels 2016-11-10 00:47:47 +01:00
Eugen Rochko
0b03bbad67 Discard misattributed remote statuses, improve timelines filter 2016-11-10 00:15:49 +01:00
Eugen Rochko
6d9f8ee11e Improve filtering of public/hashtag timelines, both in backlog and real-time 2016-11-10 00:03:33 +01:00
Eugen Rochko
a6ae45e8d7 Status removal is broadcast to public/hashtag timelines too 2016-11-09 19:16:27 +01:00
Eugen Rochko
a6667f7f58 Replace setting custom CORS headers with rack-cors, set it on /oauth/token endpoint 2016-11-09 18:06:01 +01:00
Eugen Rochko
beb36e24fe API pagination for all collections using Link header 2016-11-09 17:48:44 +01:00
Eugen Rochko
d98b43cf56 Move timelines API from statuses to its own controller, add a check for
resources that require a user context vs those that don't (such as public timeline)

/api/v1/statuses/public   -> /api/v1/timelines/public
/api/v1/statuses/home     -> /api/v1/timelines/home
/api/v1/statuses/mentions -> /api/v1/timelines/mentions
/api/v1/statuses/tag/:tag -> /api/v1/timelines/tag/:tag
2016-11-08 23:29:08 +01:00
Eugen Rochko
46191e7071 Adding Emoji One 2016-11-08 21:46:29 +01:00
Eugen Rochko
c0ee14756f Adding more logging 2016-11-08 19:37:08 +01:00
Eugen Rochko
ac79369f2b Fix for thread resolve service and process feed service url method 2016-11-08 19:09:22 +01:00
Eugen Rochko
9da30e31c8 Fix region setting for AWS gem 2016-11-08 18:55:46 +01:00
Eugen Rochko
f1d2c46ded Improve feed regeneration 2016-11-08 02:08:32 +01:00
Eugen Rochko
663c0edd8d Fix typo 2016-11-08 01:48:17 +01:00
Eugen Rochko
434c3fb2f7 ProcessFeedService refactor 2016-11-08 01:44:51 +01:00
Eugen Rochko
8f0869876b Improved configuration from ENV, cleaned up timeline filter methods
to be more readable, add extra logging to process feed service
2016-11-07 23:20:52 +01:00
Eugen Rochko
5d46b8d285 Click video player to toggle playback 2016-11-07 19:05:32 +01:00
Eugen Rochko
97d9150779 Fix #135 - More prominent focus style for inputs 2016-11-07 18:45:44 +01:00
Eugen Rochko
4a9a053b90 Better look/behaviours for video player/lightbox 2016-11-07 18:42:39 +01:00
Eugen Rochko
24abc550ab Replace react-skylight with own solution that centers images better 2016-11-07 18:23:36 +01:00
Eugen Rochko
b225b8d32e Fix account and hashtag regex 2016-11-07 17:35:25 +01:00
Eugen Rochko
4d2b690582 Do not modify scroll position unless content has been added to the top, not bottom 2016-11-07 02:11:38 +01:00
Eugen Rochko
8ac4c4eed1 Keep scroll position when scrolled down and new content is added 2016-11-07 02:02:55 +01:00
Eugen Rochko
6d948a809e Account notes (bios) can now contain links. Character limit upped to 160 2016-11-07 01:14:12 +01:00
Eugen Rochko
54b9a42b3a Fix URL configuration when S3 is enabled 2016-11-06 20:43:16 +01:00
Eugen Rochko
5ad6611101 Add test for FanOutOnWriteService 2016-11-06 15:56:34 +01:00
Eugen Rochko
f0956d434c Improve @mention regex 2016-11-05 22:09:51 +01:00
Eugen Rochko
c6461dc247 Fix remote hashtag linking 2016-11-05 17:54:19 +01:00
Eugen Rochko
bb517d832d Fix mistake 2016-11-05 17:48:53 +01:00
Eugen Rochko
814907e870 Fix linking of remote hashtags in UI, add public view of hashtags 2016-11-05 17:44:14 +01:00
Eugen Rochko
cb22dce970 Adding hashtags 2016-11-05 17:13:14 +01:00
Eugen Rochko
082e57fc13 Adding hashtag model 2016-11-04 19:12:59 +01:00
Eugen Rochko
5b1e01f000 Fix web app manifests 2016-11-04 14:19:58 +01:00
Eugen Rochko
c625dd46d0 Add forgotten reducer for FAVOURITES_FETCH_SUCCESS 2016-11-04 14:15:25 +01:00
Eugen Rochko
5285e9b1f9 Adding list of who favourited status 2016-11-04 13:39:24 +01:00
Eugen Rochko
12a420f0f3 Reduce code duplication, add touch scrolling behaviour for webkit browsers
on scrollable areas
2016-11-04 13:32:14 +01:00
Eugen Rochko
ef16a48c5f Optimize how statuses are re-rendered and relative time intervals 2016-11-04 12:48:53 +01:00
Eugen Rochko
1f9aaede07 Add list of who reblogged status 2016-11-03 20:16:14 +01:00
Eugen Rochko
db3322033f Aria-labels actually didn't work in React, so removing. Fixing some bugs 2016-11-03 19:52:09 +01:00
Eugen Rochko
be2b3eb241 Fix #136: Add aria-labels 2016-11-03 19:19:39 +01:00
Eugen Rochko
ca8208c1a7 Disable accounts caching too 2016-11-03 19:06:11 +01:00
Eugen Rochko
d44997809c Disable caching of statuses (maybe this will help with the weird bug) 2016-11-03 18:55:55 +01:00
Eugen Rochko
4c3885b952 Allow @username@domain/@username in follow form, prevent duplicate accounts
created via remote look-up when domains differ but point to the same resource
2016-11-03 16:57:44 +01:00
Eugen Rochko
7a527c947d Fix reblogged/favourited caching; add API endpoints for who favd/reblogged status 2016-11-03 14:50:22 +01:00
Eugen Rochko
389535429e Caching should work correctly now (fingers crossed) 2016-11-03 14:12:45 +01:00
Eugen Rochko
695f62e49e Need to disable caching again due to bug in Rabl 2016-11-03 13:59:31 +01:00
Eugen Rochko
71836838dd Enable caching for some rabl views 2016-11-03 13:28:36 +01:00
Eugen Rochko
6c4efc9cab Add own composed status to home without waiting for websocket event
This makes the UI appear less laggy. After all, the status *is* created
right there and then, it's the distribution to home timelines that can take
a while
2016-11-03 11:06:55 +01:00
Eugen Rochko
72565e9e61 Fix subtle bugs, new icon button 2016-11-02 22:29:19 +01:00
Eugen
e0d7b3401c Merge pull request #132 from marcus-herrmann/master
a11y: Improve icon button component regarding semantics, screen reader usage
2016-11-02 21:53:05 +01:00
Eugen
735dc8a14b Merge pull request #129 from fhemberger/fix/a11y-labels
a11y: Add labels to input fields for screenreader
2016-11-02 21:53:00 +01:00
mhe
7867bfc281 a11y: Improve icon button component regarding semantics and screen reader usage 2016-11-02 20:18:39 +01:00
Eugen
9f551f2cbd Fix syntax errors 2016-11-02 17:13:47 +01:00
Frederic Hemberger
739e8d6605 Add touch icons for Chrome, iOS and Windows 10 2016-11-02 16:05:08 +01:00
Frederic Hemberger
1a6e13a4e5 a11y: Add labels to input fields for screenreader
See: https://dequeuniversity.com/rules/axe/2.1/label
2016-11-02 14:53:39 +01:00
Eugen Rochko
e7035a4d39 Make cookies https-only if LOCAL_HTTPS is true, set X-Frame-Options to DENY,
add permissive CORS to API controllers
2016-11-02 12:58:15 +01:00
Frederic Hemberger
6c44d9e7f5 a11y: Add HTML lang attribute and utf8 encoding meta tag
See: https://dequeuniversity.com/rules/axe/2.1/html-has-lang
2016-11-02 11:01:18 +01:00
Eugen Rochko
36470feeb2 Fix follow icon changing plus to minus, add terms page stub 2016-11-01 18:05:55 +01:00
Eugen Rochko
02a90979c5 Catch 404 errors when downloading remote media, add screenshot to landing page 2016-11-01 16:58:13 +01:00
Eugen Rochko
31cacef08b Actually fix the reblogs/favs reducer issue 2016-10-31 18:11:49 +01:00
Eugen
8c3f7964fb Fix forgotten reducers for reblogs/favourites 2016-10-31 16:59:36 +01:00
Eugen
543e8d6a20 Fix accounts not being normalized from context statuses 2016-10-31 01:27:19 +01:00
Eugen Rochko
6448169447 Actually complete the autosuggestion feature 2016-10-30 18:21:38 +01:00
Eugen Rochko
b91faaebbb Basic username autocomplete for text area 2016-10-30 18:13:05 +01:00
Eugen Rochko
95e65d883a Limit returned followees/followers by API to 40 for now 2016-10-30 15:14:07 +01:00
Eugen Rochko
e5c0f979cf Fix common followers API 2016-10-30 15:08:36 +01:00
Eugen Rochko
53de3b66ce Refactoring redux state into different reducers 2016-10-30 15:06:43 +01:00
Eugen Rochko
1c157c040a Hide notes on user lists for now 2016-10-29 01:31:33 +02:00
Eugen Rochko
38cacac4b0 Adding common followers API, fixing fallback query again 2016-10-29 01:29:19 +02:00
Eugen Rochko
2917bca72b Fix follow suggestion fallback to exclude already followed users 2016-10-28 20:35:30 +02:00
Eugen Rochko
f9e06eb819 Make suggestions box also use user list components 2016-10-28 20:26:49 +02:00
Eugen Rochko
553760399f Improved how user lists look, added follow button to them 2016-10-28 20:05:44 +02:00
Eugen Rochko
b3aab1f3bc Adding following/followers lists to the UI 2016-10-27 21:59:56 +02:00
Eugen Rochko
1eac265f35 Adding public timeline silencing 2016-10-27 19:33:04 +02:00
Eugen Rochko
d8a66ab492 Fix suggestions fallback query 2016-10-27 19:03:05 +02:00
Eugen Rochko
43905dd59a Guard against unexisting statuses rendering 2016-10-25 11:13:16 +02:00
Eugen Rochko
68535f58cd Add opening images in a modal window 2016-10-24 18:08:23 +02:00
Eugen Rochko
5bea337189 Move status components inside individual containers. We still need to select
all statuses/accounts to assemble, but at least lists don't have to be
re-rendered all the time now. Also add "mention" dropdown option
2016-10-24 18:08:23 +02:00
Eugen Rochko
cab1211ef7 Fix OAuth authorization redirect 2016-10-23 12:05:55 +02:00
Eugen Rochko
d63f0295b9 Fix public channel 2016-10-23 11:56:04 +02:00
Eugen Rochko
6657414266 Adding OAuth access scopes, fixing OAuth authorization UI, adding rate limiting
to the API
2016-10-22 19:39:44 +02:00
Eugen Rochko
cc10f56f66 Fix method return when rescuing 2016-10-20 18:36:12 +02:00
Eugen Rochko
4470966cd9 Fix #100 - Add "back" button to certain views
Also fix reloading of timelines after merge-type events
2016-10-19 18:20:19 +02:00
Eugen Rochko
fac770fccd Remember scroll position when navigating back, do not needlessly reload
entire timelines (only fetch since last known ID). Side effect: account
timelines no longer update in real-time
2016-10-18 23:06:28 +02:00
Eugen Rochko
39aa7caaa5 Do not force-transcode uploaded videos to webm (leave mp4 as-is) 2016-10-18 17:51:45 +02:00
Eugen Rochko
9d7c7bd342 Improve how errors are displayed in the UI 2016-10-18 17:09:45 +02:00
Eugen Rochko
f46cf245bf Fix #97 - plain text version of devise e-mails 2016-10-18 16:39:21 +02:00
Eugen Rochko
be98addccc Improving all forms 2016-10-18 16:37:15 +02:00
Eugen Rochko
683c42724f Added e-mail edit field to settings, proper format default for webfinger 2016-10-18 03:34:26 +02:00
Eugen Rochko
02613aef3b Adding application/jrd+json webfinger resource 2016-10-18 02:54:49 +02:00
Eugen Rochko
f4376d4d01 Small clean up 2016-10-18 01:48:46 +02:00
Eugen Rochko
f9659685ab This should fix it 2016-10-18 01:44:31 +02:00
Eugen Rochko
4a2cb79b58 Debugging 2016-10-18 01:38:32 +02:00
Eugen Rochko
e052929058 More debugging 2016-10-18 01:34:38 +02:00
Eugen Rochko
f3a6be81cc More debugging 2016-10-18 01:31:03 +02:00
Eugen Rochko
b92c8c3f87 More debugging 2016-10-18 01:22:28 +02:00
Eugen Rochko
f06a788e19 More debugging 2016-10-18 01:16:50 +02:00
Eugen Rochko
1abe6ed990 Will this fix the issue? 2016-10-18 01:11:00 +02:00
Eugen Rochko
032de4b5e8 More debugging 2016-10-18 00:59:18 +02:00
Eugen Rochko
b9ace5a74c Add console.error to all axios failures 2016-10-18 00:42:04 +02:00
Eugen Rochko
d0240a2cf2 Include <id> (identical value to <uri>) on person-type objects in Atom
This might help with GS compatibility
2016-10-17 15:36:37 +02:00
Eugen Rochko
39d6f837db Actually fix public timeline 2016-10-17 01:59:34 +02:00
Eugen Rochko
9dab51e047 Fix #82 - only show latest reblog of status in UI 2016-10-17 01:34:16 +02:00
Eugen Rochko
b1dee1b6d1 Fix #99 - public timeline not just reblogs, fix #98 infinite scrolling issues 2016-10-17 01:23:41 +02:00
Eugen Rochko
1df4d2e3aa Increase default number of loaded suggestions to 10 2016-10-16 19:30:01 +02:00
Eugen Rochko
7b52b5ab9e Don't preload timelines as props, load them when timeline component is mounted
This prevents the bug where if you go "back" to the UI after navigating to
another page it loads with the old set of statuses
2016-10-16 19:23:17 +02:00
Eugen Rochko
bcdb0dc310 Fix RemoveStatusService trying to send delete salmons on behalf of remote statuses 2016-10-16 19:14:23 +02:00
Eugen Rochko
41aae40927 Fix #16 - Optimize n+1 queries when checking reblogged/favourited values for status lists in API 2016-10-16 19:10:16 +02:00
Eugen Rochko
19b6f7a013 Filter out reblogs of blocked users from public timeline (the not real-time variant) 2016-10-16 18:35:20 +02:00
Eugen Rochko
1715657fa3 Fix scrolling on small devices for account timelines and compose column 2016-10-16 17:09:00 +02:00
Eugen Rochko
916907580e Backfill follow suggestions with fallback when not enough results. Cycling
through suggestions in UI
2016-10-16 17:04:13 +02:00
Eugen Rochko
395d15e5fd Fix suggestions fallback 2016-10-15 17:34:00 +02:00
Eugen Rochko
8497dfc98e Fix follow suggestions order 2016-10-15 17:19:18 +02:00
Eugen Rochko
4e89662eea Fix typo 2016-10-15 16:57:10 +02:00
Eugen Rochko
52a5ad8207 Fix follow suggestions ranking 2016-10-15 16:54:50 +02:00
Eugen Rochko
e5bcf8040c Adding sort by node rank to follow suggestions and fallback to most influential users 2016-10-15 16:46:15 +02:00
Eugen Rochko
2614a47a15 Exclude blocked users from follow suggestions, fix tests 2016-10-15 13:48:38 +02:00
Eugen Rochko
f4e5ca98bf Fix suggestions box style for long names 2016-10-15 13:05:37 +02:00
Eugen Rochko
8374abcf06 Fix multiple results return from FollowSuggestion.get 2016-10-15 13:00:21 +02:00
Eugen Rochko
e88d667d3f Add sync command for neo4j, fix configuration, add neo4j to docker-compose, fix seed 2016-10-15 12:37:43 +02:00
Eugen Rochko
92209a1b6e Display follow suggestions 2016-10-15 12:06:30 +02:00
Eugen Rochko
5860094354 Adding sync of follow relationships to Neo4J, accounts/suggestions API 2016-10-14 23:10:07 +02:00
Eugen Rochko
4762bb6b7a Fix duplication of media attachments when a remote status reblogs a local one 2016-10-14 20:15:37 +02:00
Eugen Rochko
7beab6b00c Fix remove status service sending salmons 2016-10-14 20:09:33 +02:00
Eugen Rochko
6f1497586c Add "edit profile" link to dropdown on own profile 2016-10-14 02:45:20 +02:00
Eugen Rochko
588cb77e9f E-mail preferences page 2016-10-14 02:28:49 +02:00
Eugen Rochko
32b6dc088e Add window titles to auth pages and about page, link sign up/login from about page 2016-10-14 01:03:12 +02:00
Eugen Rochko
84495615b4 Shorten rendered links (strip protocol and www, truncate to 30 chars), redirect
to sign in page after sign up instead of root path which redirects to /about
2016-10-13 16:51:34 +02:00
Eugen Rochko
405f7f0541 No-op for Salmons without body, fail fast if Webfinger does not contain
all required resource links (profile page, salmon, atom feed, magic key)
2016-10-13 13:41:06 +02:00
Eugen Rochko
dd99153ce6 Treat dfrn:owner like xmlns:author for Friendica compatibility 2016-10-12 22:55:00 +02:00
Eugen Rochko
a1d34be18b Improve Friendica support (but still not there yet) 2016-10-12 21:07:00 +02:00
Eugen Rochko
3902f9f46d Fix magic key in webfinger XRD href 2016-10-12 19:30:41 +02:00
Eugen Rochko
34bfc0f0dc Fix up a few exceptions 2016-10-12 19:25:46 +02:00
Eugen Rochko
6f26b06454 Fix styles 2016-10-12 19:14:47 +02:00
Eugen Rochko
5e49118f86 Change how convert options are escaped 2016-10-12 14:39:54 +02:00
Eugen Rochko
1474f87a14 Allow mp4 uploads, convert to WebM 2016-10-12 14:29:10 +02:00
Eugen Rochko
d70e728326 Responsively changing layout to single-column + nav on smaller screens 2016-10-12 13:17:17 +02:00
Eugen Rochko
1af00c8193 Fixing namespaces issue 2016-10-10 19:16:23 +02:00
Eugen Rochko
43f73c35fd Show media of reblogged statuses in public html view 2016-10-10 18:23:08 +02:00
Eugen Rochko
ad2a5cc79f Stop logging incoming Atom 2016-10-10 18:16:39 +02:00
Eugen Rochko
61d7c88408 Fix namespace parsing in Atom feeds 2016-10-10 18:16:07 +02:00
Eugen Rochko
4f406d89b1 Log incoming Atom from PuSH 2016-10-10 17:40:28 +02:00
Eugen Rochko
80217fd58b Use Account#find_remote method when possible 2016-10-10 17:30:49 +02:00
Eugen Rochko
3d229e3937 Don't return unsaved status from ProcessFeedService 2016-10-10 16:49:05 +02:00
Eugen Rochko
33668b91f8 Adding test for ProcessFeedService 2016-10-10 16:03:38 +02:00
Eugen Rochko
5da603fb6f Improve process feed service 2016-10-10 15:27:39 +02:00
Eugen Rochko
77f782758b Fix reblog mentions Atom 2016-10-10 15:08:24 +02:00
Eugen Rochko
13bef96f10 Include mentions and media attachments of reblogged posts in Atom 2016-10-10 14:22:09 +02:00
Eugen Rochko
d2c7d9fc4e PuSH unsubscribe needs correct callback URL 2016-10-10 03:40:08 +02:00
Eugen Rochko
12a6eb95be Make account domains case-insensitive, downcase before checking against local 2016-10-10 03:34:15 +02:00
Eugen Rochko
7cb55af441 Fix default assumed object type (note->activity), make stream entry threaded? check aware of orphaned replies 2016-10-10 02:55:30 +02:00
Eugen Rochko
848cbbd242 Improved how in-UI profiles look 2016-10-09 22:19:15 +02:00
Eugen Rochko
22e05d2ff6 Making AccountTimeline into a sub-route 2016-10-09 20:18:54 +02:00
Eugen Rochko
102eab0ac9 Public timeline to exclude users you blocked 2016-10-09 15:15:21 +02:00
Eugen Rochko
d5b2e48e9e Filter block users and reblogs of them from public timeline 2016-10-09 15:05:07 +02:00
Eugen Rochko
9bf5a73968 Adding domain blocks 2016-10-09 14:48:59 +02:00
Yann Vaillant
9f7d65b98b Strip exif data from uploaded images
Using `-strip` cli options from ImageMagick

http://www.imagemagick.org/script/command-line-options.php#strip

fix #85
2016-10-08 15:18:20 +02:00
Eugen Rochko
4f9ac5a611 Fix mistake 2016-10-08 00:39:46 +02:00
Eugen Rochko
1d63e39a00 Add link to public timeline to getting started screen 2016-10-08 00:30:56 +02:00
Eugen Rochko
f10b5ee0d8 Use reselect to memoize denormalization in UI state
Also upgrade react-redux to latest version. This is a performance update
2016-10-08 00:01:22 +02:00
Eugen Rochko
c3f5dfeabb Adding public timeline 2016-10-07 16:00:11 +02:00
Eugen Rochko
d51efdd1dc Adding user settings (model and mailer), no form yet 2016-10-07 13:17:56 +02:00
Eugen Rochko
93aa4085a2 Fix #73 - Click on in-UI profile avatar/name to open public profile 2016-10-06 23:15:50 +02:00
Eugen Rochko
4eb5319882 Styling loading indicator, removing unused routes, adding "getting started" explanation
Also, only update relative time every minute instead of 6 seconds. My bad
2016-10-06 22:47:35 +02:00
Eugen Rochko
cad6653af0 Fix how missing display name is displayed (fallback to username) 2016-10-06 22:07:32 +02:00
Eugen Rochko
493956bde7 Adjusting new CSS for smaller screens 2016-10-06 22:00:56 +02:00
Eugen Rochko
f3ecf89468 Fix #79 - break too long lines and hide overflowing characters in status content 2016-10-06 21:56:07 +02:00
Eugen Rochko
4c54d1076f Fix #80 - pretty scrollbars for lucky webkit users 2016-10-06 21:39:30 +02:00
Eugen Rochko
62498dcefd Fix #83 - if user cannot be found (or is self) throw error, don't return empty 200
This prevents the undefined profile from being opened in the first place on such an error
2016-10-06 21:33:33 +02:00
Eugen Rochko
10395fd275 Fix #72 - add follow/unfollow button to public profiles 2016-10-06 21:27:58 +02:00
Eugen Rochko
9c01f3fcf0 Fix delete option missing from statuses in detailed view 2016-10-06 17:27:07 +02:00
Eugen Rochko
b23c4b488c Better comparison of "local" domain 2016-10-06 16:36:16 +02:00
Eugen Rochko
b62d8e2d5b Fix #76 - set scrollTop property of element node rather than use scrollTo() method 2016-10-06 16:18:32 +02:00
Eugen Rochko
c02bdd64a0 Fix sign-in redirecting "back" to a missing image because missing static files hit the raise_not_found method 2016-10-06 15:42:00 +02:00
Eugen Rochko
f9f9d74053 Fix #71 - Add logout link to UI 2016-10-06 15:34:11 +02:00
Eugen Rochko
f621ee8101 Fix #70 - disable autocomplete on follow form 2016-10-06 15:24:28 +02:00
Eugen Rochko
6e8165696c Update OStatus2 to handle malformed Salmon without raising unexpected exceptions 2016-10-06 14:47:38 +02:00
Eugen Rochko
96cc77ce55 Catch Paperclip errors on /api/v1/media, return early from update profile service if XML given is nil 2016-10-06 14:40:15 +02:00
Yann Vaillant
043ff2f616 Update default devise wording to include reference to Mastodon
Fix #68
2016-10-06 07:45:07 +02:00
Eugen Rochko
3319473b2c Move PubSubHubbub pinging to a background worker
It can take as much as 0.5s if not longer to complete
2016-10-05 13:50:21 +02:00
Eugen Rochko
2febc6ed65 Fix typo 2016-10-05 13:40:14 +02:00
Eugen Rochko
fe77921e47 Catching more exceptions that slipped through, removing AR logging from
production as it's very verbose and not very useful
2016-10-05 13:26:44 +02:00
Eugen Rochko
b078885414 Catch :warden correctly 2016-10-03 19:19:03 +02:00
Eugen Rochko
feda1e6554 Catch warden throw in actioncable 2016-10-03 19:10:56 +02:00
Eugen Rochko
70e9dd0b5b Blocking will prevent e-mail notifications from blocked user, blocks in UI 2016-10-03 18:49:52 +02:00
Eugen Rochko
7b9a4af311 API for blocking and unblocking 2016-10-03 18:17:06 +02:00
Eugen Rochko
2c9e672ee2 Integrating block relationships into the API (read-only for now) 2016-10-03 17:16:58 +02:00
Eugen Rochko
9d59d7b463 Adding a block model and filter mentions from blocked users (fix #60) 2016-10-03 17:12:13 +02:00
Eugen Rochko
a488b05726 Cleaning up unused views 2016-10-03 16:52:45 +02:00
Eugen Rochko
fc198a8b4c Adding e-mail confirmations 2016-10-03 16:51:00 +02:00
Eugen Rochko
b3c7c8700d Fix most pages on small screens 2016-10-03 16:17:28 +02:00
Eugen Rochko
188c6f326b Making public pages responsive, removing reblogs/favs counts from them 2016-10-03 00:26:00 +02:00
Eugen Rochko
d74da1a89a Small fixes 2016-10-02 23:46:25 +02:00
Eugen Rochko
9fd3d7b6cd Add since_id param to feeds 2016-10-02 22:35:27 +02:00
Eugen Rochko
a0f85774c4 Redirect after sign in to previous page (unless it's a sign in/up/etc page) 2016-10-02 17:11:08 +02:00
Eugen Rochko
6d7290f47c Add API for getting info about authenticated user: /api/v1/accounts/verify_credentials 2016-10-02 16:14:21 +02:00
Eugen Rochko
31a0202546 Slightly improved e-mail notifications 2016-10-02 15:37:35 +02:00
Eugen Rochko
2d4f9ecebf Validate against multiple reblogs of same status by same account 2016-10-02 15:33:24 +02:00
Eugen Rochko
be86d4e0a3 Preparing feeds for better filtering 2016-10-02 15:28:47 +02:00
Eugen Rochko
1fce687f8e Unreblogging and unfavouriting from the UI 2016-10-02 15:14:26 +02:00
Eugen Rochko
4909bbf415 Add logging for outgoing http requests 2016-10-02 14:58:06 +02:00
Eugen Rochko
96ad9b0db1 Meaningful validation errors in API response 2016-09-30 22:31:16 +02:00
Eugen Rochko
62b057b085 Adjust client registration API 2016-09-30 00:03:08 +02:00
Eugen Rochko
ef2b50c9ac Deleting statuses from UI 2016-09-30 00:00:45 +02:00
Eugen Rochko
a4f7eca5fa Fix #25 - Only latest reblog of status kept on feed as zset value is set to "true" status ID 2016-09-29 21:40:37 +02:00
Eugen Rochko
927333f4f8 Improve code style 2016-09-29 21:28:21 +02:00
Eugen Rochko
e4aebad35a Fix handling of multiple Link headers (that should not be a thing though) 2016-09-27 23:49:12 +02:00
Eugen Rochko
e63aebff7a Adding landing page 2016-09-27 23:12:33 +02:00
Eugen Rochko
45a96e899e Fix #58 - disable compose form while image is uploading 2016-09-27 17:02:30 +02:00
Eugen Rochko
4f9b7432dd Fix #52 - Add API versioning (v1) 2016-09-27 16:59:08 +02:00
Eugen
3f75f52285 Fix subtle home feed filtering bug 2016-09-27 10:52:37 +02:00
Eugen Rochko
7e14eefc81 Replace logo, fix #57 - delete/unreblog/unfavourite API, fix #45 - app
registration API
2016-09-26 23:56:53 +02:00
Eugen Rochko
210362e665 Improve redirect handling in FetchAtomService 2016-09-26 17:04:05 +02:00
Eugen Rochko
c6b0311b86 Fix #54 - Fetch remote accounts by URL from mentions
Fetching atom extracted from FetchRemoteAccountService and FetchRemoteStatusService
into FetchAtomService. Mentions of the constant "http://activityschema.org/collection/public"
skipped as it's not a real URL/user.
2016-09-26 16:44:40 +02:00
Eugen Rochko
0bd4608ad1 Fix #55 - Filter self from pre-filled mentions 2016-09-26 15:49:28 +02:00
Eugen Rochko
693383234c Improved style of settings page 2016-09-25 15:48:20 +02:00
Eugen Rochko
e9bc4a4a08 Limit usernames to 30 chars, statuses to 500, open account after follow form success 2016-09-25 15:26:56 +02:00
Eugen Rochko
62b384824d Improved styling for media/videos in detailed status view 2016-09-25 14:58:07 +02:00
Eugen Rochko
15f51dbf8c Better styling for selected status in detailed view 2016-09-25 14:20:29 +02:00
Eugen Rochko
1215ab57ff Some extra scopes for user sorting 2016-09-24 14:59:52 +02:00
Eugen Rochko
a706f1af04 Don't generate stream entries for streamables of remote accounts 2016-09-24 14:42:29 +02:00
Eugen Rochko
fb94013796 Improved partial rendering for threads 2016-09-24 14:34:44 +02:00
Eugen Rochko
db6df6ddb3 Only load JS on homepage, no other page uses it 2016-09-24 13:47:51 +02:00
Eugen Rochko
57583f3fb8 Improve partial rendering and Haml performance (Haml->Hamlit) 2016-09-24 13:40:42 +02:00
Eugen Rochko
95d72b2249 Temporarily link "settings" to the static version of the form 2016-09-23 21:59:21 +02:00
Eugen Rochko
0c75ce1122 Improved ColumnsArea on smaller windows, improved how ActionBar looks 2016-09-23 21:52:28 +02:00
Eugen Rochko
3f9708edc4 Change output of api/accounts/:id/follow and unfollow to return relationship
Track relationship in redux state. Display follow/unfollow and following-back
information on account view (unstyled)
2016-09-23 20:23:26 +02:00
Eugen Rochko
c6d893a71d Uploading/undoing media modifies status text. Also: status text trimmed before validation 2016-09-22 21:39:53 +02:00
Eugen Rochko
b1a670af8d Handle remote account mentions a little better by trying a URL lookup in the db 2016-09-22 21:10:36 +02:00
Eugen Rochko
2a84271e85 Infinite scroll for account timelines 2016-09-22 20:58:35 +02:00
Eugen Rochko
4a670780f0 Fix #51 - prevent duplicate attachments for remote statuses 2016-09-22 20:42:20 +02:00
Eugen Rochko
2c0261ac25 Infinite scroll for timeline columns 2016-09-22 01:08:35 +02:00
Eugen Rochko
74dfefabd3 Make in-text mentions open account detailed view when possible 2016-09-22 00:32:27 +02:00
Eugen Rochko
bc98865c1a API returns mentions for statuses, compose form pre-fills all relevant usernames into the form when replying 2016-09-22 00:09:21 +02:00
Eugen Rochko
c0e9603c92 Fix #50 - Order ancestors/descendants by tree path 2016-09-21 23:18:28 +02:00
Eugen Rochko
e46abc71ca Fix notifications in UI, added new API for fetching account relationships 2016-09-21 22:07:18 +02:00
Eugen Rochko
4bec613897 Fix #24 - Thread resolving for remote statuses
This is a big one, so let me enumerate:

Accounts as well as stream entry pages now contain Link headers that
reference the Atom feed and Webfinger URL for the former and Atom entry
for the latter. So you only need to HEAD those resources to get that
information, no need to download and parse HTML <link>s.

ProcessFeedService will now queue ThreadResolveWorker for each remote
status that it cannot find otherwise. Furthermore, entries are now
processed in reverse order (from bottom to top) in case a newer entry
references a chronologically previous one.

ThreadResolveWorker uses FetchRemoteStatusService to obtain a status
and attach the child status it was queued for to it.

FetchRemoteStatusService looks up the URL, first with a HEAD, tests
if it's an Atom feed, in which case it processes it directly. Next
for Link headers to the Atom feed, in which case that is fetched
and processed. Lastly if it's HTML, it is checked for <link>s to the Atom
feed, and if such is found, that is fetched and processed. The account for
the status is derived from author/name attribute in the XML and the hostname
in the URL (domain). FollowRemoteAccountService and ProcessFeedService
are used.

This means that potentially threads are resolved recursively until a dead-end
is encountered, however it is performed asynchronously over background jobs,
so it should be ok.
2016-09-21 01:50:31 +02:00
Eugen Rochko
6d89edc4f7 Fix #47 by renaming TIMELINE_SET action to TIMELINE_REFRESH_SUCCESS 2016-09-20 23:18:00 +02:00
Eugen Rochko
1d2856c2af Since GNU Social hubs don't seem to return a hub.lease_seconds param in the subscription confirmation request,
we'll have to default that value to the GS "minimum" (from their code) which is 24 hours.
2016-09-20 03:24:04 +02:00
Eugen Rochko
246330493b More debugging for PuSH confirmations 2016-09-20 03:18:55 +02:00
Eugen Rochko
a66d34878c Add more logging to PuSH callback 2016-09-20 03:12:23 +02:00
Eugen Rochko
608a2bfffc Upgrade to PubSubHubbub 0.4 (removing verify_token) 2016-09-20 02:43:20 +02:00
Eugen Rochko
a86f21cf90 Fix rake tasks and loading bar 2016-09-20 01:53:30 +02:00
Eugen Rochko
1cfc9aa20e OStatus2 and Goldfinger gems now have timeouts for requests 2016-09-20 01:10:51 +02:00
Eugen Rochko
059ebbf48d Separate PuSH subscriptions from following, add mastodon:push:refresh task,
respect hub.lease_seconds (fix #46)
2016-09-20 00:43:36 +02:00
Eugen Rochko
1245ee42fb Update OStatus2 library 2016-09-19 23:52:42 +02:00
Eugen Rochko
98de6927f3 Remove background mask from avatars 2016-09-19 23:28:22 +02:00
Eugen Rochko
337462aa5e Re-organizing components to be more modular, adding loading bars 2016-09-19 23:26:21 +02:00
Eugen Rochko
f820edb463 Fix type mistake in account component 2016-09-18 18:44:52 +02:00
Eugen Rochko
ee770c3fd3 Live update account timelines, small fix for replyCompose 2016-09-18 18:38:44 +02:00
Eugen Rochko
0967961de7 Improve how account detailed view looks, load account's statuses 2016-09-18 18:18:46 +02:00
Eugen Rochko
dafcb02153 Remove unused action constants 2016-09-18 13:45:39 +02:00
Eugen Rochko
9863196f7b Small rubocop offences removed 2016-09-18 13:42:24 +02:00
Eugen Rochko
08896f7dcf Detailed status view scrollable 2016-09-18 13:03:37 +02:00
Eugen Rochko
ab7291b8fe Add ancestors/descendants during normalization in timeline reducer
This way replies will appear in the detailed view live if they are from
statuses that would be delivered to the user normally
2016-09-18 12:51:09 +02:00
Eugen Rochko
dfd5deacf4 Volume toggle control in VideoPlayer 2016-09-18 12:39:00 +02:00
Eugen Rochko
adffc7a495 Fix #43 2016-09-18 12:28:49 +02:00
Eugen Rochko
5342629a0a Adding webm playback to UI 2016-09-17 18:05:02 +02:00
Eugen Rochko
bd5ad304ba Adding media controller, 1 webm/compose form allowed, previews generated 2016-09-17 17:47:26 +02:00
Eugen Rochko
183a23943b Fix how other services used old FollowRemoteAccountService 2016-09-17 17:07:45 +02:00
Eugen Rochko
0e9c1a297a Improved error handling for FollowRemoteService 2016-09-17 17:03:36 +02:00
Eugen Rochko
8c0b19012b Fix #41, debug #42 2016-09-17 16:36:10 +02:00
Eugen
e906677092 Stop event propagation after IconButton onClick 2016-09-16 11:20:39 +02:00
Eugen Rochko
5b0cef9781 Setting up preliminary "detailed" routes in the UI, new API end-point for fetching status context 2016-09-16 00:21:51 +02:00
Eugen Rochko
2e7aac793a Adding sense of self to the UI, cleaning up routing, adding third (detail) column 2016-09-13 02:24:40 +02:00
Eugen Rochko
d6a64f45fd Adding a notification stack for error messages 2016-09-12 19:20:55 +02:00
Eugen Rochko
05b0c985b4 Send "delete" Salmons to remote mentioned accounts on status removal
Fixes #27
2016-09-12 18:33:34 +02:00
Eugen Rochko
ce29624c6d Fixing image upload limits, allowing webm, merge/unmerge events trigger
timeline reload in UI, other small fixes
2016-09-12 18:22:43 +02:00
Eugen Rochko
3d566279cb Fix formatter return block 2016-09-10 19:18:17 +02:00
Eugen Rochko
0077fc26df Merge and unmerge timelines on follow/unfollow, solves #21, #22 2016-09-10 18:36:48 +02:00
Eugen Rochko
7d45a4e692 Fix local mention regex so it works on newlines in HTML (with a preceding tag) 2016-09-10 10:19:50 +02:00
Eugen Rochko
457625591d Styling for paragraphs in statuses 2016-09-10 10:14:36 +02:00
Eugen Rochko
73615d7a79 Newlines and paragraphs in local statuses properly formatted 2016-09-10 10:07:56 +02:00
Eugen Rochko
76c40cbfb1 Disallow self-follow 2016-09-10 10:01:08 +02:00
Eugen Rochko
33ad2e5423 Shorten mentions to only usernames 2016-09-10 09:57:41 +02:00
Eugen Rochko
d6b3113304 Validates local username, max sizes for uploads. Fixes #32 2016-09-10 09:43:45 +02:00
Eugen
de7eb2341a Fix typo in deleteFromTimelines action creator 2016-09-09 20:54:49 +02:00
Eugen Rochko
3cc47beb6e Refactored generation of unique tags, URIs and object URLs into own classes,
as well as formatting of content
2016-09-09 20:04:34 +02:00
Eugen Rochko
735b4cc62e Probably fixes #31 2016-09-09 15:29:41 +02:00
Eugen Rochko
762157ee4e Fix for single status pages 2016-09-08 21:23:29 +02:00
Eugen Rochko
85d89b472d Optimized n+1 queries in accounts Atom and HTML views
Added stack trace for SQL queries in development
Removed badly thought out accounts/lookup API
2016-09-08 20:36:01 +02:00
Eugen Rochko
a4cc966476 Removing default avatars 2016-09-08 18:23:59 +02:00
Eugen Rochko
509c18eb13 Fix local follows, 404 in logs 2016-09-08 02:40:51 +02:00
Eugen Rochko
0f4bc56719 Improving production logs, removing n+1 on media attachments in atom,
adding attachments display to static views
2016-09-08 01:24:26 +02:00
Eugen Rochko
87576e1ab1 Fixing atom feeds for accounts, adding tests that would catch such bugs in future 2016-09-08 00:33:07 +02:00
Eugen Rochko
499beb4484 UI for uploading media attachments (and cancelling them)
Mostly resolves #8, though attachments are still not displayed in public view
2016-09-07 18:21:57 +02:00
Eugen
1efa8e48d1 Fix enclosures not being parsed for reblogged statuses 2016-09-06 12:30:15 +02:00
Eugen Rochko
aca988a16b Fix for Drawer growing horizontally 2016-09-06 01:45:17 +02:00
Eugen Rochko
75fbde1c1a Fixed styling for media attachments in statuses (margins) 2016-09-06 01:27:40 +02:00
Eugen Rochko
ac77170d19 Add icons to column headers, click them to scroll to top 2016-09-06 00:44:28 +02:00
Eugen Rochko
1f18cf97b5 Fix styling of media attachments in statuses 2016-09-06 00:23:27 +02:00
Eugen
265215dae9 Fix reply bug introduced when compose form started using normalized data 2016-09-05 22:43:34 +02:00
Eugen Rochko
5f36d8828a Better layout for attachments in <MediaGallery> 2016-09-05 20:59:56 +02:00
Eugen Rochko
fc222dfa49 Displaying media attachments in timelines 2016-09-05 20:38:31 +02:00
Eugen Rochko
14fb0ab4a2 Improve JSON output for media attachments, generate :small preview for them 2016-09-05 19:26:24 +02:00
Eugen Rochko
ed94e998bc Fix for media attachments remote URL download 2016-09-05 19:11:25 +02:00
Eugen Rochko
1d9c886518 Adding enclosures to Atom and statuses JSON 2016-09-05 18:57:59 +02:00
Eugen Rochko
eec0dc46a6 PostStatusService can attach media to status, ProcessFeedService likewise 2016-09-05 18:39:53 +02:00
Eugen Rochko
ae1fac0062 Add API to upload media attachments 2016-09-05 17:46:36 +02:00
Eugen Rochko
05001d54d1 Make compose form also use normalized data 2016-09-05 16:56:43 +02:00
Eugen Rochko
926eea89b5 RemoveStatusService fleshed out, still doesn't send Salmon slaps though 2016-09-05 01:59:46 +02:00
Eugen Rochko
b5ebf99439 Possibly fix issue with stale favourite/reblog information after API call 2016-09-04 21:28:48 +02:00
Eugen Rochko
35dfc0fbcb Fixed more case-sensitivity issues 2016-09-04 21:15:52 +02:00
Eugen Rochko
29996a7e8b Fix wrongful mentions breaking status update 2016-09-04 21:07:29 +02:00
Eugen Rochko
54ea7f5dfe Case-insensitive search by usernames 2016-09-04 21:06:04 +02:00
Eugen Rochko
a82f2e4b82 Fix timelines for users whose user id and account_id are not the same 2016-09-04 19:22:27 +02:00
Eugen Rochko
a289c1d52f Handle delete Salmons, todo: clean up timelines 2016-09-04 14:44:16 +02:00
Eugen Rochko
1022d682dc Normalized data in Redux, fix for asset URLs when rendered outside request 2016-09-04 14:04:26 +02:00
Eugen Rochko
d0e2733f63 Fix reblogs of reblogs in UI, add follow form in UI 2016-09-03 14:01:42 +02:00
Eugen Rochko
2d57bcf1b7 Preparing for follow form 2016-09-01 15:13:02 +02:00
Eugen Rochko
c249ceb10c Reblogs fixed 2016-09-01 14:12:11 +02:00
Eugen Rochko
595c8dda60 Favouriting works, reblogging is a little broken because of <Status> 2016-09-01 13:21:48 +02:00
Eugen Rochko
c2a4d70265 Small style fixes 2016-09-01 12:13:41 +02:00
Eugen Rochko
2093cda89a Fixing one more typo 2016-08-31 23:07:46 +02:00
Eugen Rochko
d6873797ac Fix typo 2016-08-31 23:03:01 +02:00
Eugen Rochko
dbae8062f4 Replies in the compose form 2016-08-31 22:58:10 +02:00
Eugen Rochko
1e0e17ba85 Improving styling a little bit 2016-08-31 16:48:21 +02:00
Eugen Rochko
72591cc6d5 Cleaning up action names and compose drawer 2016-08-31 16:15:12 +02:00
Eugen Rochko
92afd29650 The frontend will now be an OAuth app, auto-authorized. The frontend will use an access token for API requests
Adding better errors for the API controllers, posting a simple status works from the frontend now
2016-08-26 19:12:19 +02:00
Eugen Rochko
44e57f64dd Improving statuses, adding a composer drawer, which doesn't work yet 2016-08-25 19:52:55 +02:00
Eugen
f5e1127894 Forgotten return 2016-08-24 23:33:46 +02:00
Eugen Rochko
a541e937ca More styling for statuses 2016-08-24 21:08:00 +02:00
Eugen Rochko
bc0692d75b Removing mini-profiler that doesn't work, formatting timelines a bit better 2016-08-24 19:23:37 +02:00
Eugen Rochko
03f5ffcd06 Dockerfile adjustments 2016-08-24 18:51:36 +02:00
Eugen Rochko
49520d6e62 Adding React.js, Redux, revamping dashboard 2016-08-24 17:56:44 +02:00