Commit Graph

2666 Commits

Author SHA1 Message Date
Karina Kwiatek 3dbbed3ef2 Shorten question text in notifications to short question length 2023-01-13 17:30:37 +01:00
Andreas Nedbal 8b4909ab80 use height limiting instead of legacy line-clamp 2023-01-13 15:58:07 +01:00
Andreas Nedbal 0d41da54b8 Fix layout for inbox entries as well 2023-01-12 23:21:08 +01:00
Andreas Nedbal f0b9a00923 Fix alignment of collapsibles in question headers
Co-Authored-By: Georg Gadinger <nilsding@nilsding.org>
2023-01-12 23:17:09 +01:00
Andreas Nedbal a2139213c7 Hide collapse from screenreaders
Co-Authored-By: Georg Gadinger <nilsding@nilsding.org>
2023-01-12 21:03:44 +01:00
Andreas Nedbal a8fb9fd701 Refactor render_theme method
Co-Authored-By: Georg Gadinger <nilsding@nilsding.org>
2023-01-12 21:03:44 +01:00
Andreas Nedbal e85f9d6867 Re-add support for detail page `display_all` condition 2023-01-12 21:03:44 +01:00
Andreas Nedbal 07a13d39da Add support for theme helper mapping specifying multiple target values 2023-01-12 21:03:44 +01:00
Andreas Nedbal 430cfa1a38 Add RGB variables for some theme colors 2023-01-12 21:03:44 +01:00
Andreas Nedbal a3b902b747 Add collapse to answerboxes and questions 2023-01-12 21:03:44 +01:00
Andreas Nedbal 46830f50cd Add Stimulus controller for collapse functionality 2023-01-12 21:03:44 +01:00
Andreas Nedbal 3258ea4f0b Implement shared collapse partial 2023-01-12 21:03:44 +01:00
Andreas Nedbal e8657891a9 Add wrapper -body classes to answerbox sections 2023-01-12 21:03:44 +01:00
Andreas Nedbal b66c2b1f36 add `long?` method and constant to Answer model 2023-01-12 21:03:44 +01:00
Karina Kwiatek c919b4913f
Merge branch 'main' into feature/long-questions 2023-01-11 22:24:58 +01:00
Andreas Nedbal c93255338e Add dev indicator to guest navbar 2023-01-11 22:24:16 +01:00
Andreas Nedbal 9150d09960 Apply review suggestion from @nilsding
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2023-01-11 22:24:16 +01:00
Andreas Nedbal 710192e8fa Add "DEV" badge to navigation brand 2023-01-11 22:24:16 +01:00
Andreas Nedbal 8e915e1c0a Add dev env indicator to navigation 2023-01-11 22:24:16 +01:00
Andreas Nedbal 7970838659 Remove superfluous focus styling 2023-01-10 20:54:13 +01:00
Andreas Nedbal 6fa26340ef Add bigger shadow to popover 2023-01-10 20:53:55 +01:00
Andreas Nedbal 53bc270e08
Apply review suggestions from @nilsding
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2023-01-10 20:49:37 +01:00
Andreas Nedbal 122935e723 only show formatting help on focus/hover in inbox entries 2023-01-10 16:05:50 +01:00
Andreas Nedbal cb7f9179e3 Add format help to inbox entries 2023-01-10 15:51:43 +01:00
Andreas Nedbal 30933e6ca1 Add Stimulus controller to launch format popup 2023-01-10 15:49:52 +01:00
Andreas Nedbal eccb51eab0 Add formatting help markup/translations 2023-01-10 15:48:56 +01:00
Karina Kwiatek 4e78efcae7 Add tests for sending long questions with question worker 2023-01-08 19:22:00 +01:00
Karina Kwiatek cfba963b55 Only reset character counters when they are present
Co-authored-by: Andreas Nedbal <git@pixelde.su>
2023-01-08 18:51:43 +01:00
Karina Kwiatek 7cdb0e4976 Respect long question setting in frontend 2023-01-08 17:12:46 +01:00
Karina Kwiatek 3a6814b908 Respect allow long questions setting 2023-01-08 14:03:54 +01:00
Karina Kwiatek ba7b19faee Add allow long questions option to profile settings 2023-01-08 13:14:21 +01:00
Karina Kwiatek 122be928bf
Merge pull request #934 from Retrospring/more-obvious-sharing-options
Make sharing options more obvious
2023-01-08 11:24:50 +00:00
Andreas Nedbal f6d7d6ae2d Fix initializers 2023-01-08 12:19:45 +01:00
Andreas Nedbal ce067a2d57 Move entrypoint to app/javascript/ 2023-01-08 12:19:45 +01:00
Andreas Nedbal 20e01d3a3f Install and setup jsbundling-rails with esbuild 2023-01-08 12:19:45 +01:00
Karina Kwiatek b65242d81e
Merge pull request #930 from Retrospring/fix/push-enable-when-subbed
Prevent push enable prompt (inbox) when already subscribed
2023-01-08 11:14:33 +00:00
Karina Kwiatek 4ac3483f1a Make sharing options more obvious 2023-01-06 17:38:27 +01:00
Georg Gadinger 04f1793058
Merge pull request #932 from Retrospring/om@nom.nom
typoed_email_validator: add new endings to the typo list
2023-01-06 14:55:25 +00:00
Georg Gadinger b6121b16f0
Merge pull request #929 from Retrospring/locale-gen
re-enable locale switching, add rake task to generate testing locales
2023-01-06 12:47:49 +00:00
Georg Gadinger 5b8e34aa1d add integration specs for changing locales 2023-01-06 13:37:22 +01:00
Georg Gadinger b81bbc2483 typoed_email_validator: add new endings to the typo list 2023-01-06 10:26:32 +01:00
Georg Gadinger ebcf9d7676 obey the dog 2023-01-06 10:04:31 +01:00
Karina Kwiatek 4457f2ed26 Prevent push enable prompt (inbox) when already subscribed 2023-01-05 23:20:36 +01:00
Georg Gadinger 8323f39ecd re-add locale switching logic
based on https://guides.rubyonrails.org/i18n.html\#managing-the-locale-across-requests
2023-01-05 15:20:33 +01:00
Karina Kwiatek 5db058cb73 Fix nav badge pills not being marked as HTML safe 2023-01-05 14:32:04 +01:00
Andreas Nedbal 01ab84aa31 Improve layout of inbox push info card 2023-01-05 12:32:50 +01:00
Karina Kwiatek 3180e10449
Merge pull request #924 from Retrospring/fix/webpush-multiple-init
Prevent WebPush init from attaching events multiple times
2023-01-05 11:32:43 +00:00
Karina Kwiatek 01f4ed499d Ensure enable button doesn't unexpectedly disappear
Co-authored-by: Andreas Nedbal <git@pixelde.su>
2023-01-05 11:53:19 +01:00
Karina Kwiatek 7673ecdadf Add missing return to subscription check 2023-01-05 11:22:43 +01:00
Karina Kwiatek 8a754de85c Rename subscriptionCheck.ts to settingsButtons.ts 2023-01-05 11:22:27 +01:00
Karina Kwiatek d288f6d6a3 Move subscription check logic into separate initializer 2023-01-05 11:08:13 +01:00
Andreas Nedbal cb740b64a9 remove duplicate stylesheet folder 2023-01-05 10:55:18 +01:00
Karina Kwiatek e93531a4af Prevent WebPush init from attaching events multiple times 2023-01-05 10:53:04 +01:00
Georg Gadinger b728c494d7 remove flag leftovers 2023-01-05 10:37:44 +01:00
Andreas Nedbal 84fcfb41a3 Fix Sass deprecation warnings 2023-01-05 10:35:52 +01:00
Andreas Nedbal dd830bd22b Fix order of icons and text on frontpage 2023-01-05 10:35:52 +01:00
Andreas Nedbal 0e47e06db1 Add bottom margin to mute rule inputs 2023-01-05 10:35:52 +01:00
Andreas Nedbal 61a9e39a3e Fix dropdowns in mobile navigation 2023-01-05 10:35:52 +01:00
Andreas Nedbal b7c7838b96 Make code HTML elements monospace again 2023-01-05 10:35:52 +01:00
Andreas Nedbal 5c583acf05 Give `bootstrap_color` a proper argument 2023-01-05 10:35:52 +01:00
Andreas Nedbal 58717c0e7f Fix ESLint nits 2023-01-05 10:35:52 +01:00
Andreas Nedbal c9b39ad1e5 Appease the dog overlords 2023-01-05 10:35:52 +01:00
Andreas Nedbal 0e97c7c80a Fix badge colors in various places 2023-01-05 10:35:52 +01:00
Andreas Nedbal da7e30f459 Remove link underlines in some places 2023-01-05 10:35:52 +01:00
Andreas Nedbal af01ab2950 Fix profile settings layout 2023-01-05 10:35:52 +01:00
Andreas Nedbal cea1190ab9 Remove and replace usage of media classes 2023-01-05 10:35:52 +01:00
Andreas Nedbal 68dd6da1f2 Remove and adjust jumbotron usage 2023-01-05 10:35:52 +01:00
Andreas Nedbal 5ce9972a3e Fix usages of btn-block class 2023-01-05 10:35:52 +01:00
Andreas Nedbal 49a972bfd3 Remove jQuery call to close question modal 2023-01-05 10:35:52 +01:00
Andreas Nedbal 2efaae6987 Fix modal/alert dismiss toggles 2023-01-05 10:35:52 +01:00
Andreas Nedbal c878862730 Remove `xxl` container width 2023-01-05 10:35:52 +01:00
Andreas Nedbal 99085f1836 Fix sizing of inline inbox action form 2023-01-05 10:35:52 +01:00
Andreas Nedbal 23c01a97be Fix text alignment classes 2023-01-05 10:35:52 +01:00
Andreas Nedbal 6643c65e23 Remove superfluous close icon 2023-01-05 10:35:52 +01:00
Andreas Nedbal 572a9ab076 Fix positioning of dropdown menus 2023-01-05 10:35:52 +01:00
Andreas Nedbal 09954c15d2 Fix data attributes for functionality in Bootstrap 5 2023-01-05 10:35:52 +01:00
Andreas Nedbal 4d417f15c5 Fix event registration for modal autofocus 2023-01-05 10:35:52 +01:00
Andreas Nedbal a00936f17e Initialize Bootstrap in TypeScript 2023-01-05 10:35:52 +01:00
Andreas Nedbal 5612f8d2bd Fix close buttons for Bootstrap 5 2023-01-05 10:35:52 +01:00
Andreas Nedbal 7450143311 Remove legacy entrypoint and packages 2023-01-05 10:35:52 +01:00
Andreas Nedbal ec5dda9f66 Fix screen reader classes for Bootstrap 5 2023-01-05 10:35:52 +01:00
Andreas Nedbal 34dbaad28e Fix font-weight classes for Bootstrap 5 2023-01-05 10:35:52 +01:00
Andreas Nedbal 5bbb798102 Fix spacing classes for Bootstrap 5 2023-01-05 10:35:52 +01:00
Andreas Nedbal 97f522e0b3 Remove Bootstrap CSS variable prefix 2023-01-05 10:35:52 +01:00
Andreas Nedbal 1ac4123e2d Replace `map-get` with `map.get` 2023-01-05 10:35:52 +01:00
Andreas Nedbal eaaed57759 Fix initial variable overrides for Bootstrap 2023-01-05 10:35:52 +01:00
Andreas Nedbal c463055cc8 Add new required Bootstrap partials 2023-01-05 10:35:52 +01:00
Karina Kwiatek 39ec2836f6
Merge pull request #918 from Retrospring/feature/nodeinfo
Implement NodeInfo
2023-01-04 17:55:05 +00:00
Karina Kwiatek b35108e9d0 Implement NodeInfo
Closes #902
2023-01-04 17:08:05 +01:00
Karina Kwiatek ea4e9e2205 Don't require an endpoint for unsubscribe
This was added by mistake earlier. Unsubscribing without an `endpoint` parameter is supposed to remove all subscriptions.
2023-01-04 16:38:48 +01:00
Karina Kwiatek 3105cb74b4 Make `endpoint` and `subscription` parameters required on web push endpoints 2023-01-04 16:34:38 +01:00
Karina Kwiatek 9fd3940b7d Don't check push subscription when not logged in 2023-01-04 16:34:38 +01:00
Georg Gadinger ea94e83e11 views/settings: change text of save profile pic button to something less generic 2023-01-04 15:39:27 +01:00
Karina Kwiatek b57b11be9d Change ID of 2FA form
This caused an error in settings/password.ts as the form had the same ID as the account settings form
2023-01-04 12:34:19 +01:00
Karina Kwiatek 3033ad4400 Fix error in checkSubscription and improve logging 2023-01-03 18:12:13 +01:00
Andreas Nedbal 6e5e483346 add fullwidth class to user action icons 2023-01-03 17:21:09 +01:00
Andreas Nedbal 05494e8822 change fa-mask icon back to fa-user-secret 2023-01-03 17:21:09 +01:00
Andreas Nedbal a7269bb202 Replace some icons with better choices from FA6 2023-01-03 17:21:09 +01:00
Andreas Nedbal 22491b19a6 Bring back pull-* utilities 2023-01-03 17:21:09 +01:00
Andreas Nedbal 077958bc5c Install Font Awesome 6 2023-01-03 17:21:09 +01:00
Karina Kwiatek 7fa548b613 Remove use of @rails/ujs in report dialog handler 2023-01-03 15:09:23 +01:00
Andreas Nedbal 2bb4f5355c Fix asset root paths 2023-01-03 14:14:23 +01:00
Andreas Nedbal 8d970ce47b Fix Lexend font path 2023-01-03 14:14:23 +01:00
Andreas Nedbal 8896445704 Add notice about asset linking to manifest 2023-01-03 14:14:23 +01:00
Andreas Nedbal 8c9dc92afb Move stylesheets back to `app/assets/stylesheets` 2023-01-03 14:14:23 +01:00
Andreas Nedbal cf4246d827 Configure Sprockets asset manifest 2023-01-03 14:14:23 +01:00
Andreas Nedbal dae4a47824 `stylesheet_pack_tag` -> `stylesheet_link_tag` 2023-01-03 14:14:23 +01:00
Andreas Nedbal e658925013 Add keepfile to builds directory 2023-01-03 14:14:23 +01:00
Andreas Nedbal 538756c6aa Remove style require in TypeScript 2023-01-03 14:14:23 +01:00
Andreas Nedbal 412be4123c Remove legacy RailsAdmin entrypoints 2023-01-03 14:14:23 +01:00
Karina Kwiatek 5d6f9deb93 Handle missing services in share worker 2023-01-03 12:38:19 +01:00
Karina Kwiatek 35a3b6b87a Hide push notification prompt in inbox after accepting 2023-01-02 13:51:02 +01:00
Karina Kwiatek 05a8ef1797 Allow re-enabling push notifications after unsubscribing 2023-01-02 13:51:02 +01:00
Karina Kwiatek 1a29a19e9d Allow setting up push when service worker hasn't been registered yet.
We don't register the service worker until the user opts in for push notifications.
2023-01-02 13:51:02 +01:00
Karina Kwiatek cc1c262256
Merge pull request #678 from Retrospring/feature/webpush
WebPush support
2023-01-02 11:57:34 +00:00
Karina Kwiatek 04bc1da8cf Use Mute Rule use cases in mutes controller 2023-01-02 12:45:35 +01:00
Karina Kwiatek c20974d182 Appease the dog overlords
Co-authored-by: nilsding <nilsding@nilsding.org>
2023-01-02 12:30:19 +01:00
Karina Kwiatek 48c7beb54e Only allow checking of own subscriptions 2023-01-02 11:52:02 +01:00
Karina Kwiatek 2417354b31 Unsubscribe client on too many failures 2023-01-02 11:52:02 +01:00
Karina Kwiatek efad76855e Add endpoint for checking subscription status 2023-01-02 11:52:02 +01:00
Karina Kwiatek e0195654b5 Send notification on 3 push failures 2023-01-02 11:52:00 +01:00
Karina Kwiatek fccf35fdab Restore push notification prompt in inbox 2023-01-02 11:51:46 +01:00
Karina Kwiatek 1cfd3250c0 Track failures on Web Push subscriptions 2023-01-02 11:51:46 +01:00
Karina Kwiatek 22a84ab818 Appease the dog overlords 2023-01-02 11:51:45 +01:00
Karina Kwiatek 2d6f539dfd Use author avatar on notification 2023-01-02 11:50:48 +01:00
Karina Kwiatek a67c26d985 Fix missing anon names from notification text 2023-01-02 11:50:48 +01:00
Karina Kwiatek 91d3db4034 Move rpush init/exit logic into Sidekiq initializer
Co-authored-by: nilsding <nilsding@nilsding.org>
2023-01-02 11:50:48 +01:00
Karina Kwiatek 10c224b2fe Address review comments from @nilsding
Co-authored-by: nilsding <nilsding@nilsding.org>
2023-01-02 11:50:48 +01:00
Karina Kwiatek 89008364d9 Handle push notifications in Sidekiq job 2023-01-02 11:50:48 +01:00
Karina Kwiatek 185c454da0 Fix incorrect author relationship name 2023-01-02 11:50:48 +01:00
Karina Kwiatek d9514a306a Make push notification settings reinit on navigation 2023-01-02 11:50:48 +01:00
Karina Kwiatek 3eafa5e335 Add tests for subscription management 2023-01-02 11:50:48 +01:00
Karina Kwiatek 8c2bfcb452 Use JSON for notification payload 2023-01-02 11:50:48 +01:00
Karina Kwiatek dc80c1dba3 Fix push notification settings not appearing when not subscribed 2023-01-02 11:50:48 +01:00
Karina Kwiatek 66b1dac3b9 Improve UX for push subscription management 2023-01-02 11:50:48 +01:00
Karina Kwiatek 8ff213af4e Add the ability to unsubscribe from push notifications 2023-01-02 11:50:48 +01:00
Karina Kwiatek 752cf1506b Add settings page for push notifications 2023-01-02 11:50:47 +01:00
Karina Kwiatek c8f5511a38 Fix capability classes being removed on page navigation
The body tag gets replaced by Turbo on page navigation, removing the classes.
2023-01-02 11:50:47 +01:00
Karina Kwiatek a04b290067 Appease the dog overlords 2023-01-02 11:50:47 +01:00
Karina Kwiatek 93d4af3f0d Deduplicate notification sending logic and replace placeholder string 2023-01-02 11:50:47 +01:00
Karina Kwiatek 2da4767623 Add JS for subscribing to and receiving push notifications 2023-01-02 11:50:47 +01:00
Karina Kwiatek 8b98c278da Send push notifications on question create 2023-01-02 11:50:47 +01:00
Karina Kwiatek bae227be76 Add endpoints for getting webpush public key and subscribing 2023-01-02 11:50:47 +01:00
Karina Kwiatek 32ab9267ec Add web push subscription model 2023-01-02 11:50:47 +01:00
Karina Kwiatek 4c158066cb Clean up User model 2023-01-02 11:31:27 +01:00
Karina Kwiatek 81c9870af4 Ignore Metrics/AbcSize in share worker 2023-01-02 09:46:55 +01:00
Karina Kwiatek 873d6a2c88 Fix typo in share worker 2023-01-02 09:46:55 +01:00
Karina Kwiatek 0241a02e29 Remove unnecessary `Object.const_get` 2023-01-02 09:35:32 +01:00
Karina Kwiatek 02bcfb3c9e Move user service into an instance variable
Co-authored-by: nilsding <nilsding@nilsding.org>
2023-01-02 09:34:08 +01:00
Karina Kwiatek d320a74045 Mark notification as read when visiting service settings 2023-01-02 00:01:42 +01:00