catstodon/app/controllers
Sorin Davidoi 0c7c188c45 Web Push Notifications (#3243)
* 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-13 22:15:32 +02:00
..
admin Improve UI of admin site settings (#4163) 2017-07-12 03:24:04 +02:00
api Web Push Notifications (#3243) 2017-07-13 22:15:32 +02:00
auth Add overview of active sessions (#3929) 2017-06-25 16:54:30 +02:00
concerns Fix #2619 - When redis feed is empty, fall back to database (#3721) 2017-06-14 13:37:03 +02:00
oauth Fix #1165 - before_action was called before protect_from_forgery 2017-04-08 02:30:50 +02:00
settings Add setting a always mark media as sensitive (#4136) 2017-07-10 14:00:32 +02:00
well_known Ensure well_known controllers use WEB_DOMAIN by including RoutingHelper (#2388) 2017-06-02 22:21:36 +02:00
about_controller.rb Redesign the landing page, mount public timeline on it (#4122) 2017-07-11 15:27:59 +02:00
account_follow_controller.rb Restful refactor of accounts/ routes (#2133) 2017-04-19 13:52:37 +02:00
account_unfollow_controller.rb Restful refactor of accounts/ routes (#2133) 2017-04-19 13:52:37 +02:00
accounts_controller.rb Remove redundant call of recent scope in AccountsController (#3330) 2017-05-26 16:35:25 +02:00
application_controller.rb Fix #4058 - Use a long-lived cookie to keep track of user-level sessions (#4091) 2017-07-07 23:25:15 +02:00
authorize_follows_controller.rb Remote following success page (#4129) 2017-07-10 18:05:06 +02:00
follower_accounts_controller.rb Introduce recent to Follow (#3247) 2017-05-23 13:12:19 +02:00
following_accounts_controller.rb Introduce recent to Follow (#3247) 2017-05-23 13:12:19 +02:00
home_controller.rb Web Push Notifications (#3243) 2017-07-13 22:15:32 +02:00
manifests_controller.rb Fix #3063 - Add dynamic app manifest (#3563) 2017-06-06 19:29:42 +02:00
media_controller.rb Extract authorization policy for viewing statuses (#3150) 2017-05-29 18:22:22 +02:00
remote_follow_controller.rb Conditional validations no longer accept strings for if/unless (#3124) 2017-05-19 03:11:23 +02:00
statuses_controller.rb Extract authorization policy for viewing statuses (#3150) 2017-05-29 18:22:22 +02:00
stream_entries_controller.rb Extract authorization policy for viewing statuses (#3150) 2017-05-29 18:22:22 +02:00
tags_controller.rb Return missing page when tag does not exist (#2563) 2017-04-28 15:11:21 +02:00