Eugen Rochko
02613aef3b
Adding application/jrd+json webfinger resource
8 years ago
Eugen Rochko
f4376d4d01
Small clean up
8 years ago
Eugen Rochko
f9659685ab
This should fix it
8 years ago
Eugen Rochko
4a2cb79b58
Debugging
8 years ago
Eugen Rochko
e052929058
More debugging
8 years ago
Eugen Rochko
f3a6be81cc
More debugging
8 years ago
Eugen Rochko
b92c8c3f87
More debugging
8 years ago
Eugen Rochko
f06a788e19
More debugging
8 years ago
Eugen Rochko
1abe6ed990
Will this fix the issue?
8 years ago
Eugen Rochko
032de4b5e8
More debugging
8 years ago
Eugen Rochko
b9ace5a74c
Add console.error to all axios failures
8 years ago
Eugen Rochko
d0240a2cf2
Include <id> (identical value to <uri>) on person-type objects in Atom
...
This might help with GS compatibility
8 years ago
Eugen Rochko
39d6f837db
Actually fix public timeline
8 years ago
Eugen Rochko
9dab51e047
Fix #82 - only show latest reblog of status in UI
8 years ago
Eugen Rochko
b1dee1b6d1
Fix #99 - public timeline not just reblogs, fix #98 infinite scrolling issues
8 years ago
Eugen Rochko
1df4d2e3aa
Increase default number of loaded suggestions to 10
8 years ago
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
8 years ago
Eugen Rochko
bcdb0dc310
Fix RemoveStatusService trying to send delete salmons on behalf of remote statuses
8 years ago
Eugen Rochko
41aae40927
Fix #16 - Optimize n+1 queries when checking reblogged/favourited values for status lists in API
8 years ago
Eugen Rochko
19b6f7a013
Filter out reblogs of blocked users from public timeline (the not real-time variant)
8 years ago
Eugen Rochko
1715657fa3
Fix scrolling on small devices for account timelines and compose column
8 years ago
Eugen Rochko
916907580e
Backfill follow suggestions with fallback when not enough results. Cycling
...
through suggestions in UI
8 years ago
Eugen Rochko
395d15e5fd
Fix suggestions fallback
8 years ago
Eugen Rochko
8497dfc98e
Fix follow suggestions order
8 years ago
Eugen Rochko
4e89662eea
Fix typo
8 years ago
Eugen Rochko
52a5ad8207
Fix follow suggestions ranking
8 years ago
Eugen Rochko
e5bcf8040c
Adding sort by node rank to follow suggestions and fallback to most influential users
8 years ago
Eugen Rochko
2614a47a15
Exclude blocked users from follow suggestions, fix tests
8 years ago
Eugen Rochko
f4e5ca98bf
Fix suggestions box style for long names
8 years ago
Eugen Rochko
8374abcf06
Fix multiple results return from FollowSuggestion.get
8 years ago
Eugen Rochko
e88d667d3f
Add sync command for neo4j, fix configuration, add neo4j to docker-compose, fix seed
8 years ago
Eugen Rochko
92209a1b6e
Display follow suggestions
8 years ago
Eugen Rochko
5860094354
Adding sync of follow relationships to Neo4J, accounts/suggestions API
8 years ago
Eugen Rochko
4762bb6b7a
Fix duplication of media attachments when a remote status reblogs a local one
8 years ago
Eugen Rochko
7beab6b00c
Fix remove status service sending salmons
8 years ago
Eugen Rochko
6f1497586c
Add "edit profile" link to dropdown on own profile
8 years ago
Eugen Rochko
588cb77e9f
E-mail preferences page
8 years ago
Eugen Rochko
32b6dc088e
Add window titles to auth pages and about page, link sign up/login from about page
8 years ago
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
8 years ago
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)
8 years ago
Eugen Rochko
dd99153ce6
Treat dfrn:owner like xmlns:author for Friendica compatibility
8 years ago
Eugen Rochko
a1d34be18b
Improve Friendica support (but still not there yet)
8 years ago
Eugen Rochko
3902f9f46d
Fix magic key in webfinger XRD href
8 years ago
Eugen Rochko
34bfc0f0dc
Fix up a few exceptions
8 years ago
Eugen Rochko
6f26b06454
Fix styles
8 years ago
Eugen Rochko
5e49118f86
Change how convert options are escaped
8 years ago
Eugen Rochko
1474f87a14
Allow mp4 uploads, convert to WebM
8 years ago
Eugen Rochko
d70e728326
Responsively changing layout to single-column + nav on smaller screens
8 years ago
Eugen Rochko
1af00c8193
Fixing namespaces issue
8 years ago
Eugen Rochko
43f73c35fd
Show media of reblogged statuses in public html view
8 years ago
Eugen Rochko
ad2a5cc79f
Stop logging incoming Atom
8 years ago
Eugen Rochko
61d7c88408
Fix namespace parsing in Atom feeds
8 years ago
Eugen Rochko
4f406d89b1
Log incoming Atom from PuSH
8 years ago
Eugen Rochko
80217fd58b
Use Account#find_remote method when possible
8 years ago
Eugen Rochko
3d229e3937
Don't return unsaved status from ProcessFeedService
8 years ago
Eugen Rochko
33668b91f8
Adding test for ProcessFeedService
8 years ago
Eugen Rochko
5da603fb6f
Improve process feed service
8 years ago
Eugen Rochko
77f782758b
Fix reblog mentions Atom
8 years ago
Eugen Rochko
13bef96f10
Include mentions and media attachments of reblogged posts in Atom
8 years ago
Eugen Rochko
d2c7d9fc4e
PuSH unsubscribe needs correct callback URL
8 years ago
Eugen Rochko
12a6eb95be
Make account domains case-insensitive, downcase before checking against local
8 years ago
Eugen Rochko
7cb55af441
Fix default assumed object type (note->activity), make stream entry threaded? check aware of orphaned replies
8 years ago
Eugen Rochko
848cbbd242
Improved how in-UI profiles look
8 years ago
Eugen Rochko
22e05d2ff6
Making AccountTimeline into a sub-route
8 years ago
Eugen Rochko
102eab0ac9
Public timeline to exclude users you blocked
8 years ago
Eugen Rochko
d5b2e48e9e
Filter block users and reblogs of them from public timeline
8 years ago
Eugen Rochko
9bf5a73968
Adding domain blocks
8 years ago
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
8 years ago
Eugen Rochko
4f9ac5a611
Fix mistake
8 years ago
Eugen Rochko
1d63e39a00
Add link to public timeline to getting started screen
8 years ago
Eugen Rochko
f10b5ee0d8
Use reselect to memoize denormalization in UI state
...
Also upgrade react-redux to latest version. This is a performance update
8 years ago
Eugen Rochko
c3f5dfeabb
Adding public timeline
8 years ago
Eugen Rochko
d51efdd1dc
Adding user settings (model and mailer), no form yet
8 years ago
Eugen Rochko
93aa4085a2
Fix #73 - Click on in-UI profile avatar/name to open public profile
8 years ago
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
8 years ago
Eugen Rochko
cad6653af0
Fix how missing display name is displayed (fallback to username)
8 years ago
Eugen Rochko
493956bde7
Adjusting new CSS for smaller screens
8 years ago
Eugen Rochko
f3ecf89468
Fix #79 - break too long lines and hide overflowing characters in status content
8 years ago
Eugen Rochko
4c54d1076f
Fix #80 - pretty scrollbars for lucky webkit users
8 years ago
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
8 years ago
Eugen Rochko
10395fd275
Fix #72 - add follow/unfollow button to public profiles
8 years ago
Eugen Rochko
9c01f3fcf0
Fix delete option missing from statuses in detailed view
8 years ago
Eugen Rochko
b23c4b488c
Better comparison of "local" domain
8 years ago
Eugen Rochko
b62d8e2d5b
Fix #76 - set scrollTop property of element node rather than use scrollTo() method
8 years ago
Eugen Rochko
c02bdd64a0
Fix sign-in redirecting "back" to a missing image because missing static files hit the raise_not_found method
8 years ago
Eugen Rochko
f9f9d74053
Fix #71 - Add logout link to UI
8 years ago
Eugen Rochko
f621ee8101
Fix #70 - disable autocomplete on follow form
8 years ago
Eugen Rochko
6e8165696c
Update OStatus2 to handle malformed Salmon without raising unexpected exceptions
8 years ago
Eugen Rochko
96cc77ce55
Catch Paperclip errors on /api/v1/media, return early from update profile service if XML given is nil
8 years ago
Yann Vaillant
043ff2f616
Update default devise wording to include reference to Mastodon
...
Fix #68
8 years ago
Eugen Rochko
3319473b2c
Move PubSubHubbub pinging to a background worker
...
It can take as much as 0.5s if not longer to complete
8 years ago
Eugen Rochko
2febc6ed65
Fix typo
8 years ago
Eugen Rochko
fe77921e47
Catching more exceptions that slipped through, removing AR logging from
...
production as it's very verbose and not very useful
8 years ago
Eugen Rochko
b078885414
Catch :warden correctly
8 years ago
Eugen Rochko
feda1e6554
Catch warden throw in actioncable
8 years ago
Eugen Rochko
70e9dd0b5b
Blocking will prevent e-mail notifications from blocked user, blocks in UI
8 years ago
Eugen Rochko
7b9a4af311
API for blocking and unblocking
8 years ago
Eugen Rochko
2c9e672ee2
Integrating block relationships into the API (read-only for now)
8 years ago
Eugen Rochko
9d59d7b463
Adding a block model and filter mentions from blocked users ( fix #60 )
8 years ago
Eugen Rochko
a488b05726
Cleaning up unused views
8 years ago
Eugen Rochko
fc198a8b4c
Adding e-mail confirmations
8 years ago
Eugen Rochko
b3c7c8700d
Fix most pages on small screens
8 years ago
Eugen Rochko
188c6f326b
Making public pages responsive, removing reblogs/favs counts from them
8 years ago
Eugen Rochko
d74da1a89a
Small fixes
8 years ago
Eugen Rochko
9fd3d7b6cd
Add since_id param to feeds
8 years ago
Eugen Rochko
a0f85774c4
Redirect after sign in to previous page (unless it's a sign in/up/etc page)
8 years ago
Eugen Rochko
6d7290f47c
Add API for getting info about authenticated user: /api/v1/accounts/verify_credentials
8 years ago
Eugen Rochko
31a0202546
Slightly improved e-mail notifications
8 years ago
Eugen Rochko
2d4f9ecebf
Validate against multiple reblogs of same status by same account
8 years ago
Eugen Rochko
be86d4e0a3
Preparing feeds for better filtering
8 years ago
Eugen Rochko
1fce687f8e
Unreblogging and unfavouriting from the UI
8 years ago
Eugen Rochko
4909bbf415
Add logging for outgoing http requests
8 years ago
Eugen Rochko
96ad9b0db1
Meaningful validation errors in API response
8 years ago
Eugen Rochko
62b057b085
Adjust client registration API
8 years ago
Eugen Rochko
ef2b50c9ac
Deleting statuses from UI
8 years ago
Eugen Rochko
a4f7eca5fa
Fix #25 - Only latest reblog of status kept on feed as zset value is set to "true" status ID
8 years ago
Eugen Rochko
927333f4f8
Improve code style
8 years ago
Eugen Rochko
e4aebad35a
Fix handling of multiple Link headers (that should not be a thing though)
8 years ago
Eugen Rochko
e63aebff7a
Adding landing page
8 years ago
Eugen Rochko
45a96e899e
Fix #58 - disable compose form while image is uploading
8 years ago
Eugen Rochko
4f9b7432dd
Fix #52 - Add API versioning (v1)
8 years ago
Eugen
3f75f52285
Fix subtle home feed filtering bug
8 years ago
Eugen Rochko
7e14eefc81
Replace logo, fix #57 - delete/unreblog/unfavourite API, fix #45 - app
...
registration API
8 years ago
Eugen Rochko
210362e665
Improve redirect handling in FetchAtomService
8 years ago
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.
8 years ago
Eugen Rochko
0bd4608ad1
Fix #55 - Filter self from pre-filled mentions
8 years ago
Eugen Rochko
693383234c
Improved style of settings page
8 years ago
Eugen Rochko
e9bc4a4a08
Limit usernames to 30 chars, statuses to 500, open account after follow form success
8 years ago
Eugen Rochko
62b384824d
Improved styling for media/videos in detailed status view
8 years ago
Eugen Rochko
15f51dbf8c
Better styling for selected status in detailed view
8 years ago
Eugen Rochko
1215ab57ff
Some extra scopes for user sorting
8 years ago
Eugen Rochko
a706f1af04
Don't generate stream entries for streamables of remote accounts
8 years ago
Eugen Rochko
fb94013796
Improved partial rendering for threads
8 years ago
Eugen Rochko
db6df6ddb3
Only load JS on homepage, no other page uses it
8 years ago
Eugen Rochko
57583f3fb8
Improve partial rendering and Haml performance (Haml->Hamlit)
8 years ago
Eugen Rochko
95d72b2249
Temporarily link "settings" to the static version of the form
8 years ago
Eugen Rochko
0c75ce1122
Improved ColumnsArea on smaller windows, improved how ActionBar looks
8 years ago
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)
8 years ago
Eugen Rochko
c6d893a71d
Uploading/undoing media modifies status text. Also: status text trimmed before validation
8 years ago
Eugen Rochko
b1a670af8d
Handle remote account mentions a little better by trying a URL lookup in the db
8 years ago
Eugen Rochko
2a84271e85
Infinite scroll for account timelines
8 years ago
Eugen Rochko
4a670780f0
Fix #51 - prevent duplicate attachments for remote statuses
8 years ago
Eugen Rochko
2c0261ac25
Infinite scroll for timeline columns
8 years ago
Eugen Rochko
74dfefabd3
Make in-text mentions open account detailed view when possible
8 years ago
Eugen Rochko
bc98865c1a
API returns mentions for statuses, compose form pre-fills all relevant usernames into the form when replying
8 years ago
Eugen Rochko
c0e9603c92
Fix #50 - Order ancestors/descendants by tree path
8 years ago
Eugen Rochko
e46abc71ca
Fix notifications in UI, added new API for fetching account relationships
8 years ago
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.
8 years ago
Eugen Rochko
6d89edc4f7
Fix #47 by renaming TIMELINE_SET action to TIMELINE_REFRESH_SUCCESS
8 years ago
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.
8 years ago