about summary refs log tree commit diff
path: root/app/models
AgeCommit message (Collapse)Author
2017-08-29Serialize ActivityPub alternate link into OStatus deletes, handle it (#4730)Eugen Rochko
Requires moving Atom rendering from DistributionWorker (where `stream_entry.status` is already nil) to inline (where `stream_entry.status.destroyed?` is true) and distributing that. Unfortunately, such XML renderings can no longer be easily chained together into one payload of n items.
2017-08-28rescue HTTP::ConnectionError in RemoteFollowController#create (#4726)abcang
2017-08-25Allow multiple pinned statuses to be shown and make them be ordered b… (#4690)nullkal
* Allow multiple pinned statuses to be shown and make them be ordered by pinned date * Set timestamps NOT NULL * Make single-line pinned_statuses * Spec for pinned_statuses * Remove redundant empty line
2017-08-25Pinned statuses (#4675)Eugen Rochko
* Pinned statuses * yarn manage:translations
2017-08-24Minor performance improvement for test suite (#4678)Eugen Rochko
2017-08-22Application prefs section (#2758)Colin Mitchell
* Add code for creating/managing apps to settings section * Add specs for app changes * Fix controller spec * Fix view file I pasted over by mistake * Add locale strings. Add 'my apps' to nav * Add Client ID/Secret to App page. Add some visual separation * Fix rubocop warnings * Fix embarrassing typo I lost an `end` statement while fixing a merge conflict. * Add code for creating/managing apps to settings section - Add specs for app changes - Add locale strings. Add 'my apps' to nav - Add Client ID/Secret to App page. Add some visual separation - Fix some bugs/warnings * Update to match code standards * Trigger notification * Add warning about not sharing API secrets * Tweak spec a bit * Cleanup fixture creation by using let! * Remove unused key * Add foreign key for application<->user
2017-08-21Periodically remove expired PuSH subscribers (#4654)Eugen Rochko
2017-08-21Do not try to re-subscribe to unsubscribed accounts (#4653)Eugen Rochko
2017-08-16Redesign public profiles (#4608)Eugen Rochko
* Redesign public profiles * Responsive design * Change public profile status filtering defaults and add options - No longer displays private/direct toots even if you are permitted access - By default omits replies - "With replies" option - "Media only" option * Redesign account grid cards * Fix style issues
2017-08-13ActivityPub delivery (#4566)Eugen Rochko
* Deliver ActivityPub Like * Deliver ActivityPub Undo-Like * Deliver ActivityPub Create/Announce activities * Deliver ActivityPub creates from mentions * Deliver ActivityPub Block/Undo-Block * Deliver ActivityPub Accept/Reject-Follow * Deliver ActivityPub Undo-Follow * Deliver ActivityPub Follow * Deliver ActivityPub Delete activities Incidentally fix #889 * Adjust BatchedRemoveStatusService for ActivityPub * Add tests for ActivityPub workers * Add tests for FollowService * Add tests for FavouriteService, UnfollowService and PostStatusService * Add tests for ReblogService, BlockService, UnblockService, ProcessMentionsService * Add tests for AuthorizeFollowService, RejectFollowService, RemoveStatusService * Add tests for BatchedRemoveStatusService * Deliver updates to a local account to ActivityPub followers * Minor adjustments
2017-08-08Add ActivityPub inbox (#4216)Eugen Rochko
* Add ActivityPub inbox * Handle ActivityPub deletes * Handle ActivityPub creates * Handle ActivityPub announces * Stubs for handling all activities that need to be handled * Add ActivityPub actor resolving * Handle conversation URI passing in ActivityPub * Handle content language in ActivityPub * Send accept header when fetching actor, handle JSON parse errors * Test for ActivityPub::FetchRemoteAccountService * Handle public key and icon/image when embedded/as array/as resolvable URI * Implement ActivityPub::FetchRemoteStatusService * Add stubs for more interactions * Undo activities implemented * Handle out of order activities * Hook up ActivityPub to ResolveRemoteAccountService, handle Update Account activities * Add fragment IDs to all transient activity serializers * Add tests and fixes * Add stubs for missing tests * Add more tests * Add more tests
2017-08-08Add coalesce option to avatar and header convert processor (#4552)Yamagishi Kazutoshi
Resolve #3199
2017-08-08Revert "Set false to animated options for thumbnail processor" (#4550)Yamagishi Kazutoshi
* Revert "Adjust tags and accounts page (#4534)" This reverts commit a3e53bd442752f210db2025f2dfc45e7599354c2. * Revert "feat: Cache status height to avoid expensive renders (#4439)" This reverts commit 8eb6d171e690e013eb2881478cfa1fd50b4ba705. * Revert "Refactor Avatar and AvatarOverlay to have 'account' as prop instead of src and staticSrc (#4526)" This reverts commit 594234740788a51fa528152343eb50dc1c6ca093. * Revert "Update dependencies for Ruby (#4543)" This reverts commit 22db9472253f6ffcfed254f7a406a58b53e80cfe. * Revert "[Docker] Add multicore support to "make" and "bundler" (#4544)" This reverts commit 5d408fd9aa76f9ef3d559a377bccbcece998fbfa. * Revert "It makes no sense to try using invalid or expired link again (#4521)" This reverts commit 47579ec58ce984acc9f194f8cb145abd88d0ea19. * Revert "i18n: Update Polish translation (#4545)" This reverts commit 3363a05539c0c774fca4651755e6423fe131d205. * Revert "Set false to animated options for thumbnail processor (#4547)" This reverts commit 87f10d476cf7a05bc60851c93e3c051eca8c357e.
2017-08-07Set false to animated options for thumbnail processor (#4547)Yamagishi Kazutoshi
Resolve #3199 Fix the aspect ratio of animated GIF whose background is transparent.
2017-08-01fix(web_push_notifications): Send message with welcome notifications (#4471)Sorin Davidoi
* fix(web_push_notifications): Send grouping title in welcome notification * fix(web_push_notifications): Read message from last notification
2017-07-29Count all URLs in text as 23 characters flat, do not count domain part of ↵Eugen Rochko
usernames (#4427) * Count all URLs in text as 23 characters flat, do not count domain part of usernames * Add new status text counting logic to web UI
2017-07-28Fix web push notifications "boost" icon not being loaded (regression from ↵Eugen Rochko
#4426) (#4431)
2017-07-28Use consistent icons for web push notifications, same as web UI (#4426)Eugen Rochko
2017-07-28feat(web_push_notifications): Group notifications (#4388)Sorin Davidoi
2017-07-27fix(push_subscription): Use star icon for favourite action (#4396)Sorin Davidoi
2017-07-24Allow domain blocks that only reject media without silencing or suspending ↵sdukhovni
(#4325) * Allow domain blocks to reject media without silencing or suspending * Fix typo * Hide 'Reject media' button when superfluous, instead of disabling it * Properly hide 'reject media' checkbox on page load if needed This may happen when resubmitting the domain block form after an error. * Don't ask whether undoing a media-only block should be retroactive * Rename :media_only block to :noop * Display :noop block as None in frontend, allow blocks that do nothing * Remove 'coding' line auto-added by emacs
2017-07-23Add rake task mastodon:feeds:build to regenerate all active users' feeds (#4303)Eugen Rochko
2017-07-19fix(push_subscription): Guard against malformed favourite notification (#4271)Sorin Davidoi
2017-07-19Add ActivityPub attributes to accounts (#4273)Eugen Rochko
2017-07-19Fix deprecation warning for non-pipeline assets (#4267)Eugen Rochko
2017-07-18Add unfollow modal (optional) (#4246)Yamagishi Kazutoshi
* Add unfollow modal * unfollowing someone * remove unnecessary prop
2017-07-18Improve admin page (#4121)abcang
* Improve admin page * Fix test * Add spec * Improve select style
2017-07-18fix(push-subscriptions): Refactor how Sidekiq jobs are handled (#4226)Sorin Davidoi
2017-07-14Fix #2672 - Connect signed PuSH subscription requests to instance domain (#4205)Eugen Rochko
* Fix #2672 - Connect signed PuSH subscription requests to instance domain Resolves #2739 * Fix return of locate_subscription * Fix tests
2017-07-14HTTP signatures (#4146)Eugen Rochko
* Add Request class with HTTP signature generator Spec: https://tools.ietf.org/html/draft-cavage-http-signatures-06 * Add HTTP signature verification concern * Add test for SignatureVerification concern * Add basic test for Request class * Make PuSH subscribe/unsubscribe requests use new Request class Accidentally fix lease_seconds not being set and sent properly, and change the new minimum subscription duration to 1 day * Make all PuSH workers use new Request class * Make Salmon sender use new Request class * Make FetchLinkService use new Request class * Make FetchAtomService use the new Request class * Make Remotable use the new Request class * Make ResolveRemoteAccountService use the new Request class * Add more tests * Allow +-30 seconds window for signed request to remain valid * Disable time window validation for signed requests, restore 7 days as PuSH subscription duration (which was previous default due to a bug)
2017-07-14Fix #4149, fix #1199 - Store emojis as unicode (#4189)Eugen Rochko
- Use unicode when selecting emoji through picker - Convert shortcodes to unicode when storing text input server-side - Do not convert shortcodes in JS anymore
2017-07-14Add option to opt out of search engines on public profile/status pages (#4199)Eugen Rochko
2017-07-14add validation to tag name (#4194)masarakki
2017-07-13Web Push Notifications (#3243)Sorin Davidoi
* feat: Register push subscription * feat: Notify when mentioned * feat: Boost, favourite, reply, follow, follow request * feat: Notification interaction * feat: Handle change of public key * feat: Unsubscribe if things go wrong * feat: Do not send normal notifications if push is enabled * feat: Focus client if open * refactor: Move push logic to WebPushSubscription * feat: Better title and body * feat: Localize messages * chore: Fix lint errors * feat: Settings * refactor: Lazy load * fix: Check if push settings exist * feat: Device-based preferences * refactor: Simplify logic * refactor: Pull request feedback * refactor: Pull request feedback * refactor: Create /api/web/push_subscriptions endpoint * feat: Spec PushSubscriptionController * refactor: WebPushSubscription => Web::PushSubscription * feat: Spec Web::PushSubscription * feat: Display first media attachment * feat: Support direction * fix: Stuff broken while rebasing * refactor: Integration with session activations * refactor: Cleanup * refactor: Simplify implementation * feat: Set VAPID keys via environment * chore: Comments * fix: Crash when no alerts * fix: Set VAPID keys in testing environment * fix: Follow link * feat: Notification actions * fix: Delete previous subscription * chore: Temporary logs * refactor: Move migration to a later date * fix: Fetch the correct session activation and misc bugs * refactor: Move migration to a later date * fix: Remove follow request (no notifications) * feat: Send administrator contact to push service * feat: Set time-to-live * fix: Do not show sensitive images * fix: Reducer crash in error handling * feat: Add badge * chore: Fix lint error * fix: Checkbox label overlap * fix: Check for payload support * fix: Rename action "type" (crash in latest Chrome) * feat: Action to expand notification * fix: Lint errors * fix: Unescape notification body * fix: Do not allow boosting if the status is hidden * feat: Add VAPID keys to the production sample environment * fix: Strip HTML tags from status * refactor: Better error messages * refactor: Handle browser not implementing the VAPID protocol (Samsung Internet) * fix: Error when target_status is nil * fix: Handle lack of image * fix: Delete reference to invalid subscriptions * feat: Better error handling * fix: Unescape HTML characters after tags are striped * refactor: Simpify code * fix: Modify to work with #4091 * Sort strings alphabetically * i18n: Updated Polish translation it annoys me that it's not fully localized :P * refactor: Use current_session in PushSubscriptionController * fix: Rebase mistake * fix: Set cacheName to mastodon * refactor: Pull request feedback * refactor: Remove logging statements * chore(yarn): Fix conflicts with master * chore(yarn): Copy latest from master * chore(yarn): Readd offline-plugin * refactor: Use save! and update! * refactor: Send notifications async * fix: Allow retry when push fails * fix: Save track for failed pushes * fix: Minify sw.js * fix: Remove account_id from fabricator
2017-07-13Make tag search case insensitive again (#4184)unarist
2017-07-13Fix boolean columns sometimes having a null value (#4162)Eugen Rochko
* Fix boolean columns sometimes having a null value * Fix wrong value being set instead of null
2017-07-13Fix #1010 - When spoiler text is set, enforce sensitivity too (#4176)Eugen Rochko
2017-07-12Improve UI of admin site settings (#4163)Eugen Rochko
2017-07-11Fix #2848 - Rake task to redownload avatars/headers (#4156)Eugen Rochko
Can be filtered by a specific domain Resolves #2292
2017-07-10Add setting a always mark media as sensitive (#4136)Yamagishi Kazutoshi
2017-07-07Refactor JSON templates to be generated with ActiveModelSerializers instead ↵Eugen Rochko
of Rabl (#4090)
2017-07-06Add a setting allowing the use of system's default font in Web UI (#4033)Damien Erambert
* add a system_font_ui setting on the server * Plug the system_font_ui on the front-end * add EN/FR locales for the new setting * put Roboto after all other fonts * remove trailing whitespace so CodeClimate is happy * fix user_spec.rb * correctly write user_spect this time * slightly better way of adding the classes * add comments to the system-font stack for clarification * use .system-font for the class instead * don't use multiple lines for comments * remove trailing whitespace * use the classnames module for consistency * use `mastodon-font-sans-serif` instead of Roboto directly
2017-07-05Explicitly require MIME::Types (#4083)Akihiko Odaki (@fn_aki@pawoo.net)
2017-07-03Remove sort in Feed (#4050)Akihiko Odaki (@fn_aki@pawoo.net)
In from_redis method, statuses retrieved from the database was mapped to the IDs retrieved from Redis. It was equivalent to order from high to low because those IDs are sorted in the same order. Statuses are ordered with the ID by default, so we do not have to reorder. Sorting statuses in the database is even faster since the IDs are indexed with B-tree.
2017-07-03Rescue exceptions caused by FetchLinkCardService (#4045)abcang
2017-06-30Rescue Addressable::URI::InvalidURIError at Remotable (#4017)abcang
2017-06-28Do not fail to create access token if superapp was never created (#3986)Eugen Rochko
2017-06-25Bind web UI access tokens to sessions (#3940)Eugen Rochko
* Add overview of active sessions * Better display of browser/platform name * Improve how browser information is stored and displayed for sessions overview * Fix test * Fix #2347 - Bind web UI access token to session When you logout, session also destroys the access token, so it's no longer valid. If access token is destroyed some other way, the session is also destroyed, requiring a re-login. Fix #1681 - Add scheduler to remove revoked access tokens and grants * Fix test
2017-06-25Add overview of active sessions (#3929)Eugen Rochko
* Add overview of active sessions * Better display of browser/platform name * Improve how browser information is stored and displayed for sessions overview * Fix test
2017-06-23Revocable sessions (#3616)Sorin Davidoi
* feat: Revocable sessions * fix: Tests using sign_in * feat: Configuration entry for the maximum number of session activations