Commit Graph

2754 Commits

Author SHA1 Message Date
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
Karina Kwiatek baffd05d6f Appease the dog overlords 2023-01-01 23:52:46 +01:00
Karina Kwiatek 9d1e77aeba Revoke Twitter connection when the token is revoked 2023-01-01 23:46:10 +01:00
Andreas Nedbal 9b5470cfd3 Appease the dog overlords 2023-01-01 22:43:24 +01:00
Andreas Nedbal 7b0a615193 Validate uniqueness of answers for questions 2023-01-01 22:43:24 +01:00
Andreas Nedbal 6700a52ad1 Remove superfluous require 2023-01-01 22:42:50 +01:00
Andreas Nedbal 6a03d3587a Appease the dog overlords 2023-01-01 22:42:50 +01:00
Andreas Nedbal 0e172bb179 Add UI to manage muted users 2023-01-01 22:42:50 +01:00
Andreas Nedbal 55c473e0f5 don't create notifications from muted user 2023-01-01 22:42:50 +01:00
Andreas Nedbal 2a7a17a4c3 wip: don't create notifications from a muted user 2023-01-01 22:42:50 +01:00
Andreas Nedbal 8017d97784 Don't receive questions from muted users 2023-01-01 22:42:50 +01:00
Andreas Nedbal 409c8372ba Add mute action support in user action handler 2023-01-01 22:42:50 +01:00
Andreas Nedbal 361b8df798 Add mute relationship and user methods 2023-01-01 22:42:50 +01:00
Georg Gadinger 55f60bc5a7 remove requires for exporter
handled by Zeitwerk now
2022-12-29 20:57:28 +01:00
Georg Gadinger fb07eda972 remove errors 2022-12-29 20:57:28 +01:00
Georg Gadinger 9413d23a02 let Zeitwerk autoload the `lib/` directory
this also allows the UseCase classes to be hot reloaded in dev 🎉

- remove use_case requires (except for the exporter as Zeitwerk
  doesn't know about the subclasses)
- move version.rb to lib/retrospring so that Zeitwerk knows where
  to find Retrospring::Version
2022-12-29 20:57:28 +01:00
Georg Gadinger 447d1f7e6d
Merge pull request #886 from Retrospring/bugfix/questionable-user-questions
fix display conditions of profile questions
2022-12-27 23:15:58 +00:00
Andreas Nedbal 97736a956d Track question users in anonymous blocks 2022-12-28 00:10:59 +01:00
Andreas Nedbal e7f60acad5 Add target_user field to anonymous blocks 2022-12-28 00:10:59 +01:00
Andreas Nedbal 481f3c4d8f Apply review suggestions from @nilsding
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2022-12-27 23:51:41 +01:00
Andreas Nedbal 44e144cecc Appease the dog overlords 2022-12-27 23:51:41 +01:00
Andreas Nedbal 37f4b78f66 Silently fail in share worker if user account is suspended 2022-12-27 23:51:41 +01:00
Georg Gadinger 3524809e21 fix display conditions of profile questions 2022-12-27 22:07:21 +00:00
Andreas Nedbal 712328bd86 Fix wrong translation in linkfilter view 2022-12-26 15:38:19 +01:00
Andreas Nedbal 7cc57968bc Localize Sidekiq dashboard panel 2022-12-25 00:29:24 +01:00
Andreas Nedbal 2e27c45bbe move sidekiq panel into separate partial 2022-12-25 00:23:53 +01:00
Andreas Nedbal c730faa1b9 Remove Sidekiq dashboard link from admin sidebar 2022-12-25 00:19:08 +01:00
Andreas Nedbal be452c48b0 improve layout of Sidekiq dashboard panel 2022-12-25 00:18:17 +01:00
Georg Gadinger cf88da111c admin/dashboard: add basic sidekiq stats and warn if sidekiq is not running 2022-12-24 22:44:42 +00:00
Andreas Nedbal b53538ccb8 add safe-area to bottom padding on mobile 2022-12-24 21:47:23 +01:00
Andreas Nedbal 67e564fd94 fix z-index of comment input 2022-12-24 21:47:23 +01:00
Andreas Nedbal 7ab4214a14 add max height to notification dropdown and make it scroll 2022-12-24 21:47:23 +01:00
Andreas Nedbal 538eaecd86 remove fixed positioning from questions in mobile view 2022-12-24 21:47:23 +01:00
Andreas Nedbal 61c4033dfa add support for custom footer links 2022-12-24 19:10:05 +01:00
Georg Gadinger 312fadff2a fix images when not using S3/radosgw
"das system ist das problem, ja?"

fixes #822
2022-12-22 17:29:38 +01:00
Andreas Nedbal ff811edfe6 Apply review suggestion from @nilsding
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2022-12-18 22:01:43 +01:00
Andreas Nedbal 175ad4a83b eager load notification associations for dropdown 2022-12-18 22:01:43 +01:00
Andreas Nedbal 19e5837ce5 get rid of N+1 query in `notification_count` method 2022-12-18 22:01:43 +01:00
Andreas Nedbal 5a0e42fe66 use `has_cached_role?` instead of `has_role?` 2022-12-18 21:47:03 +01:00
Georg Gadinger d52529c840 mark dataexported notifications as read when visiting export page 2022-12-10 15:56:07 +01:00
Georg Gadinger e1bdb1324f make the export worker create a *real* notification and add specs for it 2022-12-10 04:25:08 +01:00
Karina Kwiatek cb61db02eb
Merge pull request #824 from Retrospring/feature/anonymous-block-tuuuuuuurbo
Migrate anonymous blocks to Turbo Streams
2022-12-04 23:23:19 +01:00
Karina Kwiatek ce5b8d2356
Merge pull request #825 from Retrospring/feature/stimulus-announcements
Add Stimulus controller for announcements
2022-12-04 23:23:11 +01:00
Karina Kwiatek 63436d3464 Remove `ios_web_app?` helper 2022-12-04 23:11:59 +01:00
Georg Gadinger a2ae98eee8 inbox_controller: update all inbox entries when requesting turbo stream
since there's no layout rendered which updates all inbox entries the
inbox entries would still be shown as unread

fixes #827
2022-11-25 00:10:36 +01:00
Bandie 0529247851 Keep place of link consistent 2022-11-25 00:10:16 +01:00
Bandie ecb68eaee4 Make link to "all notifications" accessible even if your monitor is too small for all of your notifications 2022-11-25 00:10:16 +01:00
Andreas Nedbal b51d8c048d Remove legacy announcement TypeScript 2022-11-23 21:01:35 +01:00
Andreas Nedbal 3b1f15ebb9 Add Stimulus controller for announcements 2022-11-23 21:00:49 +01:00
Andreas Nedbal 55f26cb7d4 Remove settings unblock TypeScript 2022-11-22 08:38:33 +01:00
Andreas Nedbal 1c4993df3f Fix lints 2022-11-21 23:07:18 +01:00
Andreas Nedbal d9991f5fa7 Add tests 2022-11-21 23:05:04 +01:00
Andreas Nedbal b81fbb7fe6 Wire up Turbo Streams action calls in templates 2022-11-21 22:30:15 +01:00
Andreas Nedbal d000ddaae4 Add `AnonymousBlockController` 2022-11-21 22:29:47 +01:00
Andreas Nedbal ddded27757 Remove anonymous block AJAX implementation 2022-11-21 22:28:38 +01:00
Andreas Nedbal bb3ef51f13 Add spacing to 2FA buttons 2022-11-21 21:13:25 +01:00
Andreas Nedbal 41c43538b5 Fix lints 2022-11-21 20:26:19 +01:00
Andreas Nedbal 9a4c0d576d Add Stimulus autofocus controller 2022-11-21 20:26:19 +01:00
Andreas Nedbal efef85b7c6 Split mute rule form into seperate partial and replace on create 2022-11-21 20:26:19 +01:00
Karina Kwiatek 40d5dc41dd Ensure mute rules cannot be empty 2022-11-21 20:26:19 +01:00
Andreas Nedbal 94c9fa12fb Add policy for mute rules 2022-11-21 20:26:19 +01:00
Andreas Nedbal c8f990e319 Set up Pundit 2022-11-21 20:26:19 +01:00
Andreas Nedbal 9048a3e7d8 Remove AJAX Mute Rules code 2022-11-21 20:26:19 +01:00
Andreas Nedbal c08ff04738 Destroy Mute Rules using Turbo Streams 2022-11-21 20:26:19 +01:00
Andreas Nedbal 589b753df3 Create Mute Rules using Turbo Streams 2022-11-21 20:26:19 +01:00
Andreas Nedbal 97d55127e4 Fix double nested layouts 2022-11-21 20:26:01 +01:00
Andreas Nedbal c464e80e45 Fix lints 2022-11-21 20:26:01 +01:00
Andreas Nedbal d42f1ba0c5 Fix tests 2022-11-21 20:26:01 +01:00
Andreas Nedbal 9bd9c7af9f Disable Turbo on announcement forms 2022-11-21 20:26:01 +01:00
Andreas Nedbal 54e157ec76 `AnnouncementController` -> `Admin::AnnouncementController` 2022-11-21 20:26:01 +01:00
Andreas Nedbal cc00fff8cd Add global anon blocks to moderation sidebar 2022-11-21 20:26:01 +01:00
Andreas Nedbal 695ce57762 Use moderation layout on specific views 2022-11-21 20:26:01 +01:00
Andreas Nedbal 95b501301d Move moderation layout to proper location 2022-11-21 20:26:01 +01:00
Andreas Nedbal 6d462cbd1b Add link to admin dashboard to profile dropdown 2022-11-21 20:26:01 +01:00
Andreas Nedbal d0654d7d9d Use new layout in announcements views 2022-11-21 20:26:01 +01:00
Andreas Nedbal 4504d5ebac Add layout and sidebar for administration views 2022-11-21 20:26:01 +01:00
Andreas Nedbal c61ccfa5c1 Add admin dashboard controller 2022-11-21 20:26:01 +01:00
Andreas Nedbal f91246986c Update generated entries to not be new after rendering 2022-11-18 23:35:38 +01:00
Andreas Nedbal 22289f2946 Hide empty text as soon as another inbox entry appears 2022-11-18 23:35:38 +01:00
Andreas Nedbal 44c0136c9e Remove AJAX question generation code 2022-11-18 23:35:38 +01:00
Andreas Nedbal d3eae22f13 Generate inbox entries using Turbo Streams 2022-11-18 23:35:38 +01:00
Andreas Nedbal 23dafb5bcb
Merge branch 'main' into feature/privacy-noindex 2022-11-18 23:23:01 +01:00
Andreas Nedbal d3bfbff30a
Merge branch 'main' into feature/input-placeholder-theming 2022-11-18 23:21:08 +01:00
Andreas Nedbal fe9a77cd67 Fix lints 2022-11-18 23:19:24 +01:00
Andreas Nedbal 8699a4ca08 Redirect from follower/following page if social graph is hidden 2022-11-18 23:19:24 +01:00
Andreas Nedbal 51a70b67f4 Hide follower/followings tabs if social graph is hidden 2022-11-18 23:19:24 +01:00
Andreas Nedbal 9249ef976b Add social graph field to privacy settings view 2022-11-18 23:19:24 +01:00
Andreas Nedbal 4c820b472e Set noindex robots tag on content of users that enable it 2022-11-16 22:33:04 +01:00
Andreas Nedbal f8e43a9bb0 Add noindex setting to privacy settings view 2022-11-16 22:32:40 +01:00
Andreas Nedbal 921f02c4c9 Fix lints in ThemeHelper 2022-11-15 00:32:54 +01:00
Andreas Nedbal f35d49e575 Properly handle placeholder fields in theme application 2022-11-14 23:13:22 +01:00
Andreas Nedbal 420a25872e Allow input placeholder in theme settings 2022-11-14 23:12:39 +01:00
Andreas Nedbal 752d6cb987 Make input placeholder themable 2022-11-14 23:11:23 +01:00
Andreas Nedbal 3cefc829f8
Merge branch 'main' into feature/privacy-require-user 2022-11-13 17:27:53 +01:00
Andreas Nedbal 16c6e7c096 Show message in questionbox that users need to log in 2022-11-13 14:27:33 +01:00
Andreas Nedbal 18b3ac641b Add user requirement setting to privacy settings 2022-11-13 14:26:03 +01:00
Andreas Nedbal 024a37bdd6
Merge branch 'main' into feature/inbox-locking 2022-11-12 13:39:35 +01:00
Karina Kwiatek 68ca431165 Prevent questions from being sent to banned users 2022-11-12 11:58:20 +01:00
Andreas Nedbal 38332194c7 Show message in questionbox that user locked their inbox 2022-11-06 15:01:20 +01:00
Andreas Nedbal fa12b19b8a Prevent questions being sent to users that lock their inbox 2022-11-06 15:01:01 +01:00
Andreas Nedbal f6c28eefbd Add inbox locking setting to privacy settings 2022-11-06 15:00:28 +01:00
Andreas Nedbal 049f92e138 Add inbox locking setting to user 2022-11-06 14:59:56 +01:00
Andreas Nedbal bef1c23a66 reset questionbox character counts after successful submit 2022-10-31 21:23:22 +01:00
Andreas Nedbal 15d05f1699 Merge branch 'main' into feature/stimulus-character-count 2022-10-31 20:56:38 +01:00
Karina Kwiatek d3b59ae169
Merge pull request #767 from Retrospring/fix/missing-unsubscribe-text-on-comment
Fix missing unsubscribe string in answer actions when posting a comment
2022-10-26 11:37:38 +02:00
Karina Kwiatek 0090d1ca4a
Merge pull request #766 from Retrospring/fix/comment-error-on-answer-pages
Prevent error when commenting via an answer page
2022-10-26 11:37:29 +02:00
Karina Kwiatek 29608c54c9 Fix missing unsubscribe string in answer actions when posting a comment 2022-10-26 11:32:39 +02:00
Karina Kwiatek f9f49198fa Prevent error when commenting via an answer page 2022-10-26 11:29:58 +02:00
Karina Kwiatek 9e52d5b623 Use Lexend 300 as 400 2022-10-26 10:57:55 +02:00
Karina Kwiatek 16ac195ab9 Center-align load more buttons on single column pages 2022-10-25 22:12:51 +02:00
Georg Gadinger caf73558d6 views: rename .haml to .html.haml 2022-10-25 20:10:31 +02:00
Georg Gadinger cffb962194 fix parent_layout for HAML 6 2022-10-25 19:35:53 +02:00
Karina Kwiatek bc1fc50780 Prevent comments from submitting after input as composition ends 2022-10-25 18:57:36 +02:00
Georg Gadinger 430abe8743 make the shared links visible everywhere again 2022-10-25 18:57:11 +02:00
Karina Kwiatek f6abb8a8ca Use body font in sweet-alert 2022-10-25 18:56:19 +02:00
Karina Kwiatek 474fac757a
Merge pull request #759 from Retrospring/goodbye-summer
Replace Lato font with Lexend
2022-10-25 08:26:05 +02:00
Karina Kwiatek 99955e5452 Replace Lato font with Lexend 2022-10-24 23:43:53 +02:00
Andreas Nedbal 3498bd9072 Use data-turbo-method for mod (un)masking link 2022-10-24 23:34:15 +02:00
Andreas Nedbal 559ed3ecf8 Merge branch 'main' into feature/stimulus-character-count 2022-10-24 23:26:31 +02:00
Georg Gadinger 87ec3093a9 allow for using SVG logos in the navbar
this uses our new and improved logo by default, but can be easily
changed by modifying `/public/logo.svg`.  the svg is loaded only once
when the application starts, so any modifications to it after a
deployment are visible immediately.

thanks to the power of CSS and SVG being able to make use of it, custom
colour schemes still work too.
2022-10-24 23:19:51 +02:00
Andreas Nedbal 14199059b4 Filter out selected list from lists dropdown 2022-10-24 23:19:39 +02:00
Andreas Nedbal c5efbee938 Remove sidebar from timeline layout 2022-10-24 23:19:39 +02:00
Andreas Nedbal d3faccf85e Apply review suggestions from @nilsding
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2022-10-24 13:58:54 +02:00
Andreas Nedbal d11aff1db9 Decrease vertical spacing of inbox action bar 2022-10-24 13:58:54 +02:00
Andreas Nedbal ccaf519b8f Remove sidebar template 2022-10-24 13:58:54 +02:00
Andreas Nedbal 9bfc2b9dac Add top action bar to Inbox 2022-10-24 13:58:54 +02:00
Andreas Nedbal 941e79d33c Adjust layout of comment input 2022-10-13 22:29:25 +02:00
Andreas Nedbal 724c241bed Count character count downwards instead of up 2022-10-13 22:29:04 +02:00
Andreas Nedbal 0983ffca3a Merge branch 'main' into feature/stimulus-character-count 2022-10-13 22:07:15 +02:00
Georg Gadinger 0f9c6f1e07 typoed_email_validator: check for valid TLDs
i'm sure there are many more typos waiting to happen.  one thing we
can already catch though is the usage of invalid TLDs.

this makes use of my new TLDv gem -- the data it uses can be updated
independently from the main gem.
2022-10-13 21:38:54 +02:00
Georg Gadinger ea4a661368 typoed_email_validator: add new endings to the typo list 2022-10-13 07:59:54 +02:00
Karina Kwiatek 9004da9bd1 Disable Turbo on Service Settings 2022-10-12 08:58:22 +02:00
Karina Kwiatek 29618d399d Fix profile menu direction on desktop 2022-10-12 00:04:09 +02:00
Karina Kwiatek bb94845262
Merge pull request #727 from Retrospring/feature/i19n.js
Install i18n-js 4 2: Electric Boogaloo
2022-10-11 23:34:52 +02:00
Georg Gadinger 96d3216d39
Merge pull request #730 from Retrospring/hocus-pocus-there's-pizza-on-your-focus
auto-focus text field in ask modal
2022-10-11 22:53:12 +02:00
Karina Kwiatek 59b619324c
Merge pull request #728 from Retrospring/feature/lazy
Use appropriate image sizes and lazy loading
2022-10-11 22:36:20 +02:00
Georg Gadinger 4b8490a2d1 auto-foxus text field in ask modal
resolves #557
2022-10-11 22:08:59 +02:00
Georg Gadinger 0294225269 typoed_email_validator: add new endings to the typo list
gmail.co.uk is registered by the big ad company with the 5000 chat apps,
but it doesn't have a NX record
2022-10-11 20:43:29 +02:00
Andreas Nedbal 3cf985eb11 Use appropriate image sizes and lazy loading in userbox 2022-10-10 23:16:57 +02:00
Andreas Nedbal ec6f25e16b Use appropriate image sizes and lazy loading in questions 2022-10-10 23:16:44 +02:00
Andreas Nedbal 8d1bd30615 Use appropriate image sizes and lazy loading in notifications 2022-10-10 23:15:05 +02:00
Andreas Nedbal fedfbb1333 Use appropriate image sizes and lazy loading in moderationbox 2022-10-10 23:14:45 +02:00
Andreas Nedbal 66c80d2add Use appropriate image sizes and lazy loading in inbox entry 2022-10-10 23:14:30 +02:00
Andreas Nedbal 99b523bf9c Use appropriate image sizes and lazy loading in answerbox 2022-10-10 23:14:07 +02:00
Andreas Nedbal a8c1961af3 Migrate entrypoint to support new i18n-js version 2022-10-10 21:40:30 +02:00
Georg Gadinger 2dfbc1dd3c typoed_email_validator: add new endings to the typo list 2022-10-02 22:13:34 +02:00
Andreas Nedbal 93d1a4e2cb Add Stimulus controller to relevant views 2022-10-02 22:10:04 +02:00
Andreas Nedbal ff5210a891 Implement character count as Stimulus controller 2022-10-02 22:09:34 +02:00
Andreas Nedbal 58d8c827e0 Install and setup Stimulus 2022-10-02 22:09:01 +02:00
Andreas Nedbal 8f2200d3e0 Remove Turbo from 2FA form 2022-09-11 21:59:20 +02:00
Andreas Nedbal 6ee96446dc Remove legacy pagination 2022-09-08 23:48:01 +02:00
Andreas Nedbal 62b53d8740 Fix notifications pagination not working 2022-09-08 23:35:41 +02:00
Andreas Nedbal fe922d7aa2 Fix identation 2022-09-08 23:35:41 +02:00
Andreas Nedbal 6ae03dbd7f Refactor questions to use a Turbo Stream-backed pagination 2022-09-08 23:35:41 +02:00
Andreas Nedbal b595910564 Refactor timelines to use a Turbo Stream-backed pagination 2022-09-08 23:18:21 +02:00
Andreas Nedbal 5d88dfcb9c Remove turbo-frame tags in user views 2022-09-08 22:11:26 +02:00
Andreas Nedbal c60acebf21 Refactor user relationships to use a Turbo Stream-backed pagination 2022-09-08 22:11:26 +02:00
Andreas Nedbal 688a68e769 Refactor user questions to use a Turbo Stream-backed pagination 2022-09-08 22:11:26 +02:00
Andreas Nedbal 753424f2d2 Refactor user answers to use a Turbo Stream-backed pagination 2022-09-08 22:11:26 +02:00
Andreas Nedbal 3074ce3bbe Set up proper response codes for Turbo Stream responses 2022-09-08 01:00:06 +02:00
Andreas Nedbal 1ac6475fb2 Remove turbo-frame tag in notifications view 2022-09-08 01:00:06 +02:00
Andreas Nedbal 57b638faaa Remove turbo-frame tag in moderation inbox view 2022-09-08 01:00:06 +02:00
Andreas Nedbal 9212d485fc Remove turbo-frame tag in inbox view 2022-09-08 01:00:06 +02:00
Andreas Nedbal 073343f56f Remove turbo-frame tag in moderation report view 2022-09-08 01:00:06 +02:00
Andreas Nedbal 427c6b5d64 Remove obsolete view 2022-09-08 01:00:06 +02:00
Andreas Nedbal 1375293f31 Refactor moderation to use a Turbo Stream-backed pagination 2022-09-08 01:00:06 +02:00
Andreas Nedbal ae607ac840 Don't duplicate pagination on paging 2022-09-08 00:04:27 +02:00
Andreas Nedbal c118dab903 Refactor notifications to use a Turbo Stream-backed pagination 2022-09-08 00:04:27 +02:00
Andreas Nedbal 8c14fb5423 Refactor mod inbox to use a Turbo Stream-backed pagination 2022-09-07 22:31:28 +02:00
Andreas Nedbal 8226198f76 Disable Turbo for all Devise forms 2022-09-07 22:19:38 +02:00
Andreas Nedbal 3f79ca70aa Remove obsolete view 2022-09-04 21:33:37 +02:00
Andreas Nedbal 136f7f117d Refactor inbox to use a Turbo Stream-backed pagination 2022-09-04 20:24:32 +02:00
Andreas Nedbal a7e17a07cc Fix deleting 2FA and regenerating codes not working 2022-09-04 18:34:23 +02:00
Andreas Nedbal 8d1e32e0f3 Disable Turbo for settings forms 2022-09-04 18:34:23 +02:00
Andreas Nedbal dc91d91c2e Directly call matching route instead of redirecting for themes 2022-09-04 18:34:23 +02:00
Andreas Nedbal 4b4deecf9c Update theme deletion to work with Turbo 2022-09-04 18:34:23 +02:00
Andreas Nedbal 674fc04a8b Update account deletion to work with Turbo 2022-09-04 18:34:23 +02:00
Andreas Nedbal 42a34bced4 Update logout link to work with Turbo 2022-09-04 18:34:23 +02:00
Andreas Nedbal 8814cce171 Rename `turbolinks-track` attribute to `turbo-track` 2022-09-04 18:34:23 +02:00
Andreas Nedbal f05abed6ef Rename `turbolinks:load` event to `turbo:load` 2022-09-04 18:34:23 +02:00
Andreas Nedbal c7ca416e67 Import (and setup) Turbo in TypeScript 2022-09-04 18:34:23 +02:00
Andreas Nedbal 203db7565d Remove UJS and Turbolinks initializers 2022-09-04 18:34:23 +02:00
Karina Kwiatek 5baafdc38d
Merge pull request #662 from Retrospring/feature/request-js-user
Refactor user TS functionality to use `@rails/request.js`
2022-09-03 21:44:48 +02:00
Karina Kwiatek bc9db3e8fc
Merge pull request #661 from Retrospring/feature/request-js-question
Refactor question(box) TS functionality to use `@rails/request.js`
2022-09-03 21:44:38 +02:00
Karina Kwiatek 67546ec857
Merge pull request #660 from Retrospring/feature/request-js-moderation
Refactor moderation TS functionality to use `@rails/request.js`
2022-09-03 21:31:24 +02:00
Karina Kwiatek 10b596ed99
Merge pull request #659 from Retrospring/feature/request-js-lists
Refactor lists TS functionality to use `@rails/request.js`
2022-09-03 21:31:06 +02:00
Karina Kwiatek 904285ae47
Merge pull request #657 from Retrospring/feature/request-js-answerbox
Refactor answerbox TS functionality to use `@rails/request.js`
2022-09-03 21:30:55 +02:00
Andreas Nedbal 6a083230dd Fixed wrong call of translation method in ban action 2022-09-03 16:42:17 +02:00
Andreas Nedbal 2643d1a524 Refactor user actions to use request.js 2022-09-03 16:36:02 +02:00
Andreas Nedbal d116e338a3 Move destroying and deleting questions to question/ 2022-09-03 16:20:07 +02:00
Andreas Nedbal dba817c8b6 Refactor question asking on profiles to use request.js 2022-09-03 16:19:32 +02:00
Andreas Nedbal 9c9f56e231 Refactor question asking to use request.js 2022-09-03 16:19:00 +02:00
Andreas Nedbal 2f05708a65 Refactor question answering to use request.js 2022-09-03 16:18:31 +02:00
Andreas Nedbal 918c514f12 Refactor user privilege changing to use request.js 2022-09-03 08:43:19 +02:00
Andreas Nedbal fe6b6b198f Refactor report removal to use request.js 2022-09-03 08:42:55 +02:00
Andreas Nedbal 389e1271d7 Refactor global anon blocks to use request.js 2022-09-03 08:42:37 +02:00
Andreas Nedbal 6639519905 Refactor user banning to use request.js 2022-09-03 08:42:17 +02:00
Andreas Nedbal 5aab54acdb Refactor list membership functionality to use request.js 2022-09-03 07:51:30 +02:00
Andreas Nedbal 41fea7fd5e Refactor list removal to use request.js 2022-09-03 07:50:33 +02:00
Andreas Nedbal af0258c8aa Refactor list creation to use request.js 2022-09-03 07:50:16 +02:00
Andreas Nedbal 3b6ade483f Refactor question generating to use request.js 2022-09-03 06:58:08 +02:00
Andreas Nedbal 90f33dd76c Refactor inbox entry deleting to use request.js 2022-09-03 06:57:52 +02:00
Andreas Nedbal 969f7e80f8 Refactor anon blocking to use request.js 2022-09-03 06:57:32 +02:00
Andreas Nedbal a893d11aa1 Refactor inbox answering to use request.js 2022-09-03 06:57:15 +02:00
Andreas Nedbal f55efbb017 Refactor inbox deleting to use request.js 2022-09-03 06:56:47 +02:00
Andreas Nedbal f091fd4193 Remove unused import 2022-09-03 05:20:52 +02:00
Andreas Nedbal 5295dc83c8 Refactor answer subscribing to use request.js 2022-09-03 05:05:43 +02:00
Andreas Nedbal 0aff344581 Refactor answer smile to use request.js 2022-09-03 05:05:21 +02:00
Andreas Nedbal 508c7e844b Refactor answer destroy to use request.js 2022-09-03 05:05:06 +02:00
Andreas Nedbal 5ea28e1830 Refactor comment smiling to use request.js 2022-09-03 05:04:01 +02:00
Andreas Nedbal 40637c5f6d Refactor comment creation to use request.js 2022-09-03 05:03:25 +02:00
Andreas Nedbal 2c5da2bc5c Refactor comment destroy to use request.js 2022-09-03 05:03:04 +02:00
Andreas Nedbal 8ad0cf24b8 Fix bug preventing deletion of freshly created mute rules 2022-09-02 19:59:43 +02:00
Andreas Nedbal 812c9617ff Refactor mute rule handling to use request.js 2022-08-31 21:46:47 +02:00
Andreas Nedbal d521800a59 Refactor removal of anon blocks to use request.js 2022-08-31 21:46:10 +02:00
Andreas Nedbal eca1e66ea9 Remove superfluous hiding span for comment actions 2022-08-31 20:16:16 +02:00
Andreas Nedbal 0380f7fcab Remove superfluous hiding span for answerbox actions 2022-08-31 18:46:00 +02:00
Andreas Nedbal d867352bf7 Fix "other" comment notification case not linking to answer 2022-08-30 22:56:13 +02:00
Andreas Nedbal ba0ee581c4 Remove "frown" state when an answer/comment is smiled 2022-08-30 19:47:18 +02:00
Georg Gadinger 37b770ddef typoed_email_validator: add new endings to the typo list 2022-08-25 20:28:29 +02:00
Andreas Nedbal 4ba954a3cf Add (un)subscribing to vocabulary 2022-08-21 16:55:09 +02:00
Andreas Nedbal cc3934b423 Replace `has_role?` use in action partial with `admin?` 2022-08-21 15:12:12 +02:00
Andreas Nedbal 656a9e8a86 Add missing newlines 2022-08-21 15:10:17 +02:00
Andreas Nedbal 24be74a5a2 Split and reuse question actions in partial 2022-08-21 15:04:54 +02:00
Andreas Nedbal 2a2f1a9988 Split actions from comments into separate partial 2022-08-21 15:04:12 +02:00
Andreas Nedbal 5562bd0de0 Split actions from answerbox into separate partials 2022-08-21 15:03:42 +02:00
Andreas Nedbal 56a1c70fae add `admin?` shorthand to users 2022-08-21 15:02:49 +02:00
Andreas Nedbal ffc0ba05e1 Add missing newline 2022-08-21 13:17:45 +02:00
Andreas Nedbal b46fae5ebd Rename index action to show action 2022-08-21 13:17:45 +02:00
Andreas Nedbal f521b5f160 Implement moderation question view layout 2022-08-21 13:17:45 +02:00
Andreas Nedbal 778cf90f85 Add `Moderation::QuestionsController` 2022-08-21 13:17:45 +02:00
Andreas Nedbal 6f19d806f7 Prevent layout markup duplication 2022-08-21 01:13:10 +02:00
Andreas Nedbal 3bb91932b5 Appease the robot dog 2022-08-21 01:13:10 +02:00
Andreas Nedbal 922799f123 Adjust route and alias naming 2022-08-21 01:13:10 +02:00
Andreas Nedbal 883d669d13 Move views to new location 2022-08-21 01:13:10 +02:00
Andreas Nedbal 3f7a94d56c Move actions from `ModerationController` to `Moderation::ReportsController` 2022-08-21 01:13:10 +02:00
Karina Kwiatek 48f70c9e47
Prevent default event handling on block anon option
Co-authored-by: Andreas Nedbal <github-bf215181b5140522137b3d4f6b73544a@desu.email>
2022-08-20 19:37:51 +02:00
Karina Kwiatek 4814ccdaa5 Use null-safe navigation for destroying inbox entries when blocking 2022-08-20 19:18:28 +02:00
Karina Kwiatek 2d01d9b365 Apply review suggestions
Co-authored-by: Andreas Nedbal <git@pixelde.su>
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2022-08-20 19:05:55 +02:00
Karina Kwiatek 92a5095c00 Appease the robot canine 2022-08-20 19:05:55 +02:00
Karina Kwiatek 136eac8bdd Add page for managing site-wide anonymous-blocks 2022-08-20 19:05:55 +02:00
Karina Kwiatek ae5d8931af Implement frontend for blocking users site-wide 2022-08-20 19:03:05 +02:00
Karina Kwiatek 0bbb435858 Allow anonymous blocks without an owner 2022-08-20 19:02:37 +02:00
Georg Gadinger b41983a2bf
Disgustingly merge pull request #598 from Retrospring/feature/norway
Add new translations in various places
2022-08-20 17:22:37 +02:00
Andreas Nedbal b00a12b322 Always return a boolean value from `moderation_view?` 2022-08-20 17:21:47 +02:00
Andreas Nedbal 6693864fbc Move `belongs_to_current_user?` to UserController 2022-08-20 17:21:47 +02:00
Andreas Nedbal 87c2ed3ab7 List direct questions for current users or mods 2022-08-20 17:21:47 +02:00
Georg Gadinger 8f86f8bc96 answerbox: use ActiveSupport's String#truncate
this change cuts off the answer after a word and not within one.
2022-08-19 16:49:08 +02:00
Andreas Nedbal 2a8711e7db Fix asked header in question and answerbox 2022-08-17 22:18:37 +02:00
Georg Gadinger cb158c1fac typoed_email_validator: add new endings to the typo list 2022-08-14 20:49:51 +02:00
Karina Kwiatek e8ceaa48f4 Prevent password prompt submit button from being disabled 2022-08-04 20:56:58 +02:00
Karina Kwiatek 29e0f06222 Fix syntax error in password confirmation dialogues 2022-08-04 15:09:20 +02:00
Andreas Nedbal 14221aea71 Fix legacy locale references 2022-08-02 19:13:23 +02:00
Andreas Nedbal 77685d4229 Add new translations for navigation 2022-08-02 19:13:23 +02:00
Andreas Nedbal bf2c97184a Add new translations for feedback pages 2022-08-02 19:13:23 +02:00
Andreas Nedbal 416bf19132 Fix HAML codestyle in views 2022-08-02 19:13:23 +02:00
Andreas Nedbal c9c0a8e296 Add new translations for sidebar 2022-08-02 19:13:23 +02:00
Andreas Nedbal 196433052b Add new translations for feed tabs 2022-08-02 19:13:23 +02:00
Andreas Nedbal 0575bb8ee3 Add new translations for profile tabs 2022-08-02 19:13:23 +02:00
Andreas Nedbal f22c69cfe8 Add new translations for profile badges 2022-08-02 19:13:23 +02:00
Andreas Nedbal 77abb202d7 Add new translation for questionbox title 2022-08-02 19:13:23 +02:00
Andreas Nedbal 318ad270eb Add new translation for noscript message 2022-08-02 19:13:23 +02:00
Karina Kwiatek 9634aeda62 Fix missing translation in webapp manifest 2022-07-31 23:19:42 +02:00
Andreas Nedbal 1caac0e2db Translate post time for answerbox comments 2022-07-31 15:14:02 +02:00
Andreas Nedbal 437e72a322 Translate share alt title in answerbox actions 2022-07-31 15:14:02 +02:00
Andreas Nedbal bb47e30ed1 Fix HAML codestyle of answerbox views 2022-07-31 15:14:02 +02:00
Andreas Nedbal f4f581d12f Add new translations for answerbox 2022-07-31 15:14:02 +02:00
Karina Kwiatek 561d402ff7
Merge pull request #593 from Retrospring/action-strings
Refactor action strings
2022-07-30 20:37:22 +02:00
Karina Kwiatek abaa33a664
Merge pull request #591 from Retrospring/translation-cleanup
Translation cleanup
2022-07-30 20:37:04 +02:00
Karina Kwiatek 55cb43c876 Move "Manage list memberships" user action title 2022-07-30 20:14:02 +02:00
Karina Kwiatek 91df126132 Move follow/unfollow user actions 2022-07-30 20:01:08 +02:00
Karina Kwiatek afa1a102d6 Prevent Twitter markdown from stripping `<///3` 2022-07-30 19:41:47 +02:00
Karina Kwiatek a03fe85b33 Re-word strings used in `ServicesController` 2022-07-30 19:01:49 +02:00
Karina Kwiatek 3f2cdbb911 Re-word strings used in views 2022-07-30 19:01:49 +02:00
Karina Kwiatek e887e8c4fc Refactor action strings 2022-07-30 18:50:46 +02:00
Andreas Nedbal 628959d754 Appease the reviewdog overlords 2022-07-30 18:29:32 +02:00
Andreas Nedbal 54e072c98c Use notification types instead of target types to clear them 2022-07-30 18:14:48 +02:00
Andreas Nedbal 4c67a9b492 Use full locale path for ban flash message 2022-07-30 16:51:07 +02:00
Andreas Nedbal 27eaef45ef Appease the reviewdog overlords 2022-07-30 16:51:07 +02:00
Andreas Nedbal 39639c2d85 Add new translations for ban flash message 2022-07-30 16:51:07 +02:00
Andreas Nedbal 19e95d066c Remove superfluous report existence checks 2022-07-30 05:12:22 +02:00
Andreas Nedbal 08033361f7 Fix HAML codestyle of moderation views 2022-07-30 05:11:29 +02:00
Andreas Nedbal a4c090d594 Add new translations for moderationbox 2022-07-30 04:58:20 +02:00
Andreas Nedbal 0ca8c20845 Add new translations for moderation tabs 2022-07-30 02:55:56 +02:00
Andreas Nedbal 8a5c7b2b3e Remove navbar style moderation navigation 2022-07-30 02:55:32 +02:00
Andreas Nedbal 6a0c7034ee Fix HAML codestyle of Discover views 2022-07-30 02:20:19 +02:00
Andreas Nedbal e46b9b1389 Use subdirectory for Discover tabs 2022-07-30 02:20:19 +02:00
Andreas Nedbal d1241f46a0 Add new translations for Discover userbox 2022-07-30 02:20:19 +02:00
Andreas Nedbal ac1c09fcd4 Add new translations for Discover index view 2022-07-30 02:20:19 +02:00
Karina Kwiatek 328746f7be Fix missing "Post to …" translation on question page 2022-07-28 23:54:03 +02:00
Andreas Nedbal 5f1453103b Add pluralization to list member locale 2022-07-28 12:22:32 +02:00
Andreas Nedbal afa250af01 Fix quote style in user privilege item partial 2022-07-28 12:22:32 +02:00
Andreas Nedbal 76845a55c0 Add new translations for user privilege modal 2022-07-28 12:22:32 +02:00
Andreas Nedbal 6dac157aef Adjust TypeScript logic for list member count 2022-07-28 12:22:32 +02:00
Andreas Nedbal 1492434e15 Add new translations for modal list items 2022-07-28 12:22:32 +02:00
Andreas Nedbal 8839139a72 Add new translations for list management modal 2022-07-28 12:22:32 +02:00
Andreas Nedbal c4fefbf0aa Add new translations for comment smiles modal 2022-07-28 12:22:32 +02:00
Andreas Nedbal 001e747efe Add new translations for ask modal 2022-07-28 12:22:32 +02:00
Georg Gadinger 1da70158bf questionbox: make "Hide your name" clickable 2022-07-27 20:16:11 +02:00
Karina Kwiatek a39a6e2826
Merge pull request #567 from Retrospring/feature/improving-asks 2022-07-25 07:16:20 +02:00
Andreas Nedbal bdb637047b Omit hash value in question methods 2022-07-24 22:27:15 +02:00
Andreas Nedbal 4f4e6c83a1 Do not decrement the question count if the question is direct 2022-07-24 22:25:13 +02:00
Andreas Nedbal 83dbd5d2e3 Don't list direct questions on user profiles 2022-07-24 21:56:03 +02:00
Andreas Nedbal 70e95375fb Render questions on user profiles with markdown 2022-07-24 21:55:31 +02:00
Andreas Nedbal c894551ffc Add Rails Admin link to question partials 2022-07-24 21:44:46 +02:00
Georg Gadinger 5b70be74c2 typoed_email_validator: add new endings to the typo list 2022-07-24 21:44:27 +02:00
Andreas Nedbal 74dc7c4526 Improve profile header layout 2022-07-24 15:17:11 +02:00
Georg Gadinger 434d176ebe appease the Cyber Canine 9000 2022-07-23 12:19:47 +02:00
Georg Gadinger 66efa5d4f4 clean up routes
- replace `match` with `get`/`post`/`patch`/`delete`
- format routes.rb
- rename the `show_user_{profile,question,answer}` routes to
  `profile`, `question`, `answer` so `url_for` (used by Rails Admin)
  works fine for these things
- also add `to_param` to the `User` model so that `url_for(some_user)`
  uses the user name
2022-07-23 12:14:06 +02:00
Karina Kwiatek 5f60d86efe Make forbidden screen names configurable 2022-07-23 09:11:32 +02:00
Karina Kwiatek 81b73d5196 Replace options hash with keyword arguments 2022-07-22 16:52:42 +02:00
Karina Kwiatek b534dc0bb8 Fix `CommentSmile` notification type not being returned 2022-07-22 16:52:42 +02:00
Karina Kwiatek 6089c57a20 Appease the dog overlords 2022-07-22 16:52:42 +02:00