Commit graph

578 commits

Author SHA1 Message Date
Eugen Rochko
7ac574d9a9 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
b2e504616a Remove broken test 2016-11-16 19:11:30 +01:00
Eugen Rochko
116ab27e08 i18n for devise mailer too 2016-11-16 18:25:21 +01:00
Eugen Rochko
2c766bd4b4 Add user locale setting 2016-11-16 17:56:31 +01:00
Eugen Rochko
01e43c3e57 Adding react-intl i18n to the frontend. No translations yet 2016-11-16 17:20:52 +01:00
Eugen Rochko
546c4718e7 Localizations for most server-side strings 2016-11-16 00:55:33 +01:00
Eugen Rochko
3ce6ac0ce2 Adding some localizations 2016-11-15 23:02:57 +01:00
Eugen Rochko
a4313224d9 Improve how public status pages look slightly 2016-11-15 18:45:54 +01:00
Eugen Rochko
489bd99803 Support emojis in display name, bio 2016-11-15 18:38:57 +01:00
Eugen Rochko
4f07fb1f0a Fix #144 - Filter statuses from blocked users out of ancestors/descendants results 2016-11-15 17:33:41 +01:00
Eugen Rochko
fdc17bea58 Fix rubocop issues, introduce usage of frozen literal to improve performance 2016-11-15 16:56:29 +01:00
Eugen Rochko
a91c3ef6ce Delegate processing of incoming PuSH data to background workers 2016-11-15 15:43:33 +01:00
Eugen Rochko
cea28e0c1d 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
f8f15e5697 Fix #63 - Filter mentions that reply to blocked users 2016-11-13 21:11:45 +01:00
Eugen Rochko
bcfa49aea7 Fix another mistake with infinite user list for following 2016-11-13 21:02:10 +01:00
Eugen Rochko
4286d49ade Fix another mistake 2016-11-13 20:55:24 +01:00
Eugen Rochko
44f236e889 Fix infinite scrolling mistake 2016-11-13 20:52:11 +01:00
Eugen Rochko
dbfe1e4be6 Infinite scroll for followers/following lists 2016-11-13 20:42:54 +01:00
Eugen Rochko
49b7896953 Fix stale reference 2016-11-13 19:44:19 +01:00
Eugen Rochko
3f54fba0d3 Use privacy policy from Discourse 2016-11-13 19:35:45 +01:00
Eugen Rochko
7ce4670164 Force utf-8 encoding when processing XML 2016-11-13 19:12:40 +01:00
Eugen Rochko
50d3083cbd Making upload button into a smaller icon button 2016-11-13 19:08:52 +01:00
Eugen Rochko
d42ed78aa4 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
c4eb63c1d4 Debounce autosuggestions requests 2016-11-13 13:13:36 +01:00
Eugen Rochko
f0bdfadab7 Search component 2016-11-13 13:04:18 +01:00
Eugen Rochko
8152584cf5 Fix #142 - Escape ILIKE special characters from Account.find_remote 2016-11-13 11:27:13 +01:00
Eugen Rochko
20aa777c58 Weigh username matches higher than domain matches in account search 2016-11-12 14:56:40 +01:00
Eugen Rochko
afded319d2 Add limit to search results 2016-11-12 14:49:28 +01:00
Eugen Rochko
09218d4c01 Use full-text search for autosuggestions 2016-11-12 14:36:10 +01:00
Eugen Rochko
1c17b932fe Enable emojis in reply indicator as well 2016-11-10 23:30:42 +01:00
Eugen Rochko
82fd74d101 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
0320ea4b85 Fix public timeline query 2016-11-10 21:58:22 +01:00
Eugen Rochko
36921be9aa Fix #131 - Make active favourite buttons yellow 2016-11-10 01:32:32 +01:00
Eugen Rochko
ca3b364aea Fix #122 - Add microformats-2 classes to mention links 2016-11-10 01:19:33 +01:00
Eugen Rochko
bf5f55a6bb Fix live status removal from public/hashtag channels 2016-11-10 00:47:47 +01:00
Eugen Rochko
aabf884c5f Discard misattributed remote statuses, improve timelines filter 2016-11-10 00:15:49 +01:00
Eugen Rochko
17903c6dae Improve filtering of public/hashtag timelines, both in backlog and real-time 2016-11-10 00:03:33 +01:00
Eugen Rochko
c5e03a2e0d Status removal is broadcast to public/hashtag timelines too 2016-11-09 19:16:27 +01:00
Eugen Rochko
448ab18a20 Replace setting custom CORS headers with rack-cors, set it on /oauth/token endpoint 2016-11-09 18:06:01 +01:00
Eugen Rochko
b13e7dda1f API pagination for all collections using Link header 2016-11-09 17:48:44 +01:00
Eugen Rochko
9aecc0f48a 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
86574ea524 Adding Emoji One 2016-11-08 21:46:29 +01:00
Eugen Rochko
b6832553ff Adding more logging 2016-11-08 19:37:08 +01:00
Eugen Rochko
cff0b03cbb Fix for thread resolve service and process feed service url method 2016-11-08 19:09:22 +01:00
Eugen Rochko
2f21f4cc01 Fix region setting for AWS gem 2016-11-08 18:55:46 +01:00
Eugen Rochko
bb4d1eb2e8 Improve feed regeneration 2016-11-08 02:08:32 +01:00
Eugen Rochko
096bfbad96 Fix typo 2016-11-08 01:48:17 +01:00
Eugen Rochko
11cbe49ffc ProcessFeedService refactor 2016-11-08 01:44:51 +01:00
Eugen Rochko
dbe00a4156 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
0400734df7 Click video player to toggle playback 2016-11-07 19:05:32 +01:00
Eugen Rochko
a39a92bd22 Fix #135 - More prominent focus style for inputs 2016-11-07 18:45:44 +01:00
Eugen Rochko
bec47e40f5 Better look/behaviours for video player/lightbox 2016-11-07 18:42:39 +01:00
Eugen Rochko
d0d799f911 Replace react-skylight with own solution that centers images better 2016-11-07 18:23:36 +01:00
Eugen Rochko
f5c6baf29d Fix account and hashtag regex 2016-11-07 17:35:25 +01:00
Eugen Rochko
c3559d18a3 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
4a6cc46e81 Keep scroll position when scrolled down and new content is added 2016-11-07 02:02:55 +01:00
Eugen Rochko
23fc424b7a Account notes (bios) can now contain links. Character limit upped to 160 2016-11-07 01:14:12 +01:00
Eugen Rochko
d14967e1c8 Fix URL configuration when S3 is enabled 2016-11-06 20:43:16 +01:00
Eugen Rochko
93212bc2c4 Add test for FanOutOnWriteService 2016-11-06 15:56:34 +01:00
Eugen Rochko
7bb28bf780 Improve @mention regex 2016-11-05 22:09:51 +01:00
Eugen Rochko
262adb9791 Fix remote hashtag linking 2016-11-05 17:54:19 +01:00
Eugen Rochko
eb47409036 Fix mistake 2016-11-05 17:48:53 +01:00
Eugen Rochko
a698b767c1 Fix linking of remote hashtags in UI, add public view of hashtags 2016-11-05 17:44:14 +01:00
Eugen Rochko
48b9619439 Adding hashtags 2016-11-05 17:13:14 +01:00
Eugen Rochko
62292797ec Adding hashtag model 2016-11-04 19:12:59 +01:00
Eugen Rochko
4ea13d8dc9 Fix web app manifests 2016-11-04 14:19:58 +01:00
Eugen Rochko
2463c72006 Add forgotten reducer for FAVOURITES_FETCH_SUCCESS 2016-11-04 14:15:25 +01:00
Eugen Rochko
087b993892 Adding list of who favourited status 2016-11-04 13:39:24 +01:00
Eugen Rochko
6d5ef89356 Reduce code duplication, add touch scrolling behaviour for webkit browsers
on scrollable areas
2016-11-04 13:32:14 +01:00
Eugen Rochko
98c3a5e9c3 Optimize how statuses are re-rendered and relative time intervals 2016-11-04 12:48:53 +01:00
Eugen Rochko
6d26bfd147 Add list of who reblogged status 2016-11-03 20:16:14 +01:00
Eugen Rochko
0405ef977a Aria-labels actually didn't work in React, so removing. Fixing some bugs 2016-11-03 19:52:09 +01:00
Eugen Rochko
159203a7bc Fix #136: Add aria-labels 2016-11-03 19:19:39 +01:00
Eugen Rochko
1828df9bc0 Disable accounts caching too 2016-11-03 19:06:11 +01:00
Eugen Rochko
abf664b560 Disable caching of statuses (maybe this will help with the weird bug) 2016-11-03 18:55:55 +01:00
Eugen Rochko
3731230c6d 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
e4671adc25 Fix reblogged/favourited caching; add API endpoints for who favd/reblogged status 2016-11-03 14:50:22 +01:00
Eugen Rochko
c003e70758 Caching should work correctly now (fingers crossed) 2016-11-03 14:12:45 +01:00
Eugen Rochko
562044f36a Need to disable caching again due to bug in Rabl 2016-11-03 13:59:31 +01:00
Eugen Rochko
0160d1d9b5 Enable caching for some rabl views 2016-11-03 13:28:36 +01:00
Eugen Rochko
aff22bfdb5 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
4b357ecf98 Fix subtle bugs, new icon button 2016-11-02 22:29:19 +01:00
Eugen
d427df4a8a 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
76a717d549 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
87aabeb7af a11y: Improve icon button component regarding semantics and screen reader usage 2016-11-02 20:18:39 +01:00
Eugen
bc1dba22c5 Fix syntax errors 2016-11-02 17:13:47 +01:00
Frederic Hemberger
e7cd6da938 Add touch icons for Chrome, iOS and Windows 10 2016-11-02 16:05:08 +01:00
Frederic Hemberger
5ff2762fcf 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
9467b900a2 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
d991869498 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
dd03118098 Fix follow icon changing plus to minus, add terms page stub 2016-11-01 18:05:55 +01:00
Eugen Rochko
57304ac375 Catch 404 errors when downloading remote media, add screenshot to landing page 2016-11-01 16:58:13 +01:00
Eugen Rochko
bab4904492 Actually fix the reblogs/favs reducer issue 2016-10-31 18:11:49 +01:00
Eugen
d88d148d89 Fix forgotten reducers for reblogs/favourites 2016-10-31 16:59:36 +01:00
Eugen
50aaf4667f Fix accounts not being normalized from context statuses 2016-10-31 01:27:19 +01:00
Eugen Rochko
7e35650398 Actually complete the autosuggestion feature 2016-10-30 18:21:38 +01:00
Eugen Rochko
c49f6290eb Basic username autocomplete for text area 2016-10-30 18:13:05 +01:00
Eugen Rochko
fa1cc2d05a Limit returned followees/followers by API to 40 for now 2016-10-30 15:14:07 +01:00
Eugen Rochko
f10feb2e70 Fix common followers API 2016-10-30 15:08:36 +01:00
Eugen Rochko
e8ff4c8e56 Refactoring redux state into different reducers 2016-10-30 15:06:43 +01:00
Eugen Rochko
7060bdf04b Hide notes on user lists for now 2016-10-29 01:31:33 +02:00
Eugen Rochko
e0a197650a Adding common followers API, fixing fallback query again 2016-10-29 01:29:19 +02:00
Eugen Rochko
c913bdfc98 Fix follow suggestion fallback to exclude already followed users 2016-10-28 20:35:30 +02:00
Eugen Rochko
bfb6cc5f2c Make suggestions box also use user list components 2016-10-28 20:26:49 +02:00
Eugen Rochko
ac4f53a3a2 Improved how user lists look, added follow button to them 2016-10-28 20:05:44 +02:00
Eugen Rochko
1c84d505c8 Adding following/followers lists to the UI 2016-10-27 21:59:56 +02:00
Eugen Rochko
909d0d5e88 Adding public timeline silencing 2016-10-27 19:33:04 +02:00
Eugen Rochko
e5565a7e4a Fix suggestions fallback query 2016-10-27 19:03:05 +02:00
Eugen Rochko
c1a0633a12 Guard against unexisting statuses rendering 2016-10-25 11:13:16 +02:00
Eugen Rochko
de50eff6ac Add opening images in a modal window 2016-10-24 18:08:23 +02:00
Eugen Rochko
f8f40f15da 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
b746a931a5 Fix OAuth authorization redirect 2016-10-23 12:05:55 +02:00
Eugen Rochko
abb8f5837e Fix public channel 2016-10-23 11:56:04 +02:00
Eugen Rochko
a9e40a3d80 Adding OAuth access scopes, fixing OAuth authorization UI, adding rate limiting
to the API
2016-10-22 19:39:44 +02:00
Eugen Rochko
852c82435d Fix method return when rescuing 2016-10-20 18:36:12 +02:00
Eugen Rochko
04bbc57690 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
8698cd3281 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
1d2175f73c Do not force-transcode uploaded videos to webm (leave mp4 as-is) 2016-10-18 17:51:45 +02:00
Eugen Rochko
f88b8ce757 Improve how errors are displayed in the UI 2016-10-18 17:09:45 +02:00
Eugen Rochko
aea151a0de Fix #97 - plain text version of devise e-mails 2016-10-18 16:39:21 +02:00
Eugen Rochko
43df35213e Improving all forms 2016-10-18 16:37:15 +02:00
Eugen Rochko
2e0a38d07c Added e-mail edit field to settings, proper format default for webfinger 2016-10-18 03:34:26 +02:00
Eugen Rochko
d5e086a47b Adding application/jrd+json webfinger resource 2016-10-18 02:54:49 +02:00
Eugen Rochko
7bb72ff198 Small clean up 2016-10-18 01:48:46 +02:00
Eugen Rochko
b62c31306e This should fix it 2016-10-18 01:44:31 +02:00
Eugen Rochko
f8b9b0810d Debugging 2016-10-18 01:38:32 +02:00
Eugen Rochko
225ce8cfce More debugging 2016-10-18 01:34:38 +02:00
Eugen Rochko
ea44d89383 More debugging 2016-10-18 01:31:03 +02:00
Eugen Rochko
dd02fc0ec4 More debugging 2016-10-18 01:22:28 +02:00
Eugen Rochko
f3e5625d2d More debugging 2016-10-18 01:16:50 +02:00
Eugen Rochko
fdd30af595 Will this fix the issue? 2016-10-18 01:11:00 +02:00
Eugen Rochko
6611e3a2ef More debugging 2016-10-18 00:59:18 +02:00
Eugen Rochko
564e01eaf6 Add console.error to all axios failures 2016-10-18 00:42:04 +02:00
Eugen Rochko
6c05e3063a 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
a782e3b39d Actually fix public timeline 2016-10-17 01:59:34 +02:00
Eugen Rochko
e865673175 Fix #82 - only show latest reblog of status in UI 2016-10-17 01:34:16 +02:00
Eugen Rochko
b5c6d00afa Fix #99 - public timeline not just reblogs, fix #98 infinite scrolling issues 2016-10-17 01:23:41 +02:00
Eugen Rochko
13ee88926d Increase default number of loaded suggestions to 10 2016-10-16 19:30:01 +02:00
Eugen Rochko
f0f791bb76 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
0895ff414e Fix RemoveStatusService trying to send delete salmons on behalf of remote statuses 2016-10-16 19:14:23 +02:00
Eugen Rochko
de1f3aab86 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
1de2833f30 Filter out reblogs of blocked users from public timeline (the not real-time variant) 2016-10-16 18:35:20 +02:00
Eugen Rochko
b8eda3026f Fix scrolling on small devices for account timelines and compose column 2016-10-16 17:09:00 +02:00
Eugen Rochko
4470330385 Backfill follow suggestions with fallback when not enough results. Cycling
through suggestions in UI
2016-10-16 17:04:13 +02:00
Eugen Rochko
db4671fd3f Fix suggestions fallback 2016-10-15 17:34:00 +02:00
Eugen Rochko
6e0b3ddb0d Fix follow suggestions order 2016-10-15 17:19:18 +02:00
Eugen Rochko
df2c0b8dad Fix typo 2016-10-15 16:57:10 +02:00
Eugen Rochko
04bfd4262f Fix follow suggestions ranking 2016-10-15 16:54:50 +02:00
Eugen Rochko
7075cef8f9 Adding sort by node rank to follow suggestions and fallback to most influential users 2016-10-15 16:46:15 +02:00
Eugen Rochko
67b35a601a Exclude blocked users from follow suggestions, fix tests 2016-10-15 13:48:38 +02:00