Commit Graph

2984 Commits

Author SHA1 Message Date
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
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
Karina Kwiatek 691f72d0ce Set notification type for reactions based on what the reaction is attached to 2022-07-22 16:52:42 +02:00
Karina Kwiatek 0992d44aef Filter notifications by target type 2022-07-22 16:52:42 +02:00
Karina Kwiatek f475cd0a0b Make notifications relation polymorphic 2022-07-22 16:52:42 +02:00
Karina Kwiatek cb061b1da5 Remove `@title` assign inside view 2022-07-21 16:08:51 +02:00
Karina Kwiatek a39960d269 Add tests for `TimelineController` 2022-07-21 16:08:51 +02:00
Karina Kwiatek d794a69729 Add translation for Public Timeline title 2022-07-21 16:08:51 +02:00
Karina Kwiatek 6e61e0cabe Deduplicate shared logic in `TimelineController` 2022-07-21 16:08:51 +02:00
Karina Kwiatek fa712a547f Update pagination to match template changes 2022-07-20 23:21:21 +02:00
Karina Kwiatek 0e2e2f35e1 Remove list styling from notification list 2022-07-20 23:21:21 +02:00
Karina Kwiatek 84abd1226d Use only card classes 2022-07-20 23:21:21 +02:00
Karina Kwiatek 7c96627106 Add card to empty notifications list 2022-07-20 23:21:21 +02:00
Karina Kwiatek 83e0f7a711 Place notifications in individual cards 2022-07-20 23:21:21 +02:00
Karina Kwiatek 9a79670e53 Appease the dog overlords 2022-07-20 21:46:41 +02:00
Karina Kwiatek 5a33c77c3a Prevent notification content from overflowing outside the container 2022-07-20 21:46:41 +02:00
Karina Kwiatek e8f20d1fd8 Restore missing modifiers to notifications badge 2022-07-20 21:46:41 +02:00
Karina Kwiatek c4b241f9e1 Prevent notifications dropdown from going off-screen 2022-07-20 21:46:41 +02:00
Andreas Nedbal 7623213f96 Remove priority action views and links 2022-07-19 22:53:50 +02:00
Andreas Nedbal fafefc3dc0 Remove priority action from `ModerationController` 2022-07-19 22:53:50 +02:00
Andreas Nedbal 67b6847311 Remove links to ip action from views 2022-07-19 22:53:50 +02:00
Andreas Nedbal 94bd339671 Remove ip action from `ModerationController` 2022-07-19 22:53:50 +02:00
Andreas Nedbal cbd9106a87 Remove `ModerationComment` model, relations and methods 2022-07-19 11:17:45 +02:00
Andreas Nedbal 5c3d003c2b Remove moderation comment functionality from TypeScript 2022-07-19 11:17:45 +02:00
Andreas Nedbal b7bdf2de02 Remove comment functionality from `Ajax::ModerationController` 2022-07-19 11:17:45 +02:00
Andreas Nedbal 4df4e41a47 Remove moderation comments from report view 2022-07-19 11:17:45 +02:00
Karina Kwiatek 8d8c07371f Remove FAQ action
This was removed a while ago
2022-07-18 23:24:05 +02:00
Karina Kwiatek 977ebdfe4d Appease the dog overlords 2022-07-18 23:24:05 +02:00
Karina Kwiatek 6344b55b44 Move public & list timelines into `TimelineController` 2022-07-18 23:24:05 +02:00
Karina Kwiatek 98d7bec924 Move link filter into its own controller 2022-07-18 23:24:05 +02:00
Karina Kwiatek 7abdac2d8a Move About, ToS & Privacy Policy into `AboutController` 2022-07-18 23:24:05 +02:00
Karina Kwiatek f3b58c1d33 Split front page into separate actions 2022-07-18 23:24:05 +02:00
Andreas Nedbal e283648ce0 Remove `ModerationVote` model, relations and methods 2022-07-18 23:10:07 +02:00
Andreas Nedbal 3cabd39b89 Remove vote functionality from TypeScript 2022-07-18 23:10:07 +02:00
Andreas Nedbal 43af4acb2c Remove vote functionality from `Ajax::ModerationController` 2022-07-18 23:10:07 +02:00
Andreas Nedbal 4ab391a09e Remove moderation vote from report view 2022-07-18 23:10:07 +02:00
Karina Kwiatek 7fdb2168a6 Move web app manifest into its own controller 2022-07-18 23:09:53 +02:00
Karina Kwiatek 5bd186bbe2 Deduplicate navigation dropdowns; Restore notification dropdown to mobile 2022-07-18 23:09:53 +02:00
Karina Kwiatek 159ce5c2ae Remove trailing comma 2022-07-18 23:09:53 +02:00
Karina Kwiatek 52d4efbd03 Use maskable icons for Apple web app icon 2022-07-18 23:09:53 +02:00
Karina Kwiatek c384dde809 Split up web app manifest action 2022-07-18 23:09:53 +02:00
Karina Kwiatek b3092d2070 Add PWA metadata endpoint and icons 2022-07-18 23:09:53 +02:00
Karina Kwiatek 4f88b82361 Use null-safe navigation for `denotify` 2022-07-17 21:21:37 +02:00
Andreas Nedbal 851c74f228 Fix logged-out users sending wrong data to question endpoint 2022-07-17 10:05:20 +02:00
Karina Kwiatek 5d542161a0 Add tests for question create use case 2022-07-17 10:05:20 +02:00
Karina Kwiatek 0e9be78588 Create use case for deleting questions 2022-07-17 10:05:20 +02:00
Karina Kwiatek 72906ca549 Fix lint errors 2022-07-17 10:05:20 +02:00
Karina Kwiatek 1216c249e8 Return different responses for use case errors 2022-07-17 10:05:20 +02:00
Karina Kwiatek 22a66f4d1a Fix lint errors 2022-07-17 10:05:20 +02:00
Karina Kwiatek d9ff4d5765 Refactor Ajax::QuestionController#create into separate UseCases
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2022-07-17 10:05:20 +02:00
Andreas Nedbal 2722f4fffb Fix comment notifications displaying escaped HTML 2022-07-17 09:40:47 +02:00
Andreas Nedbal ca2cf727e1 Require `user` param for `ListController#create` 2022-07-17 09:40:34 +02:00
Andreas Nedbal 47120e8d24 Appease the dog overlords 2022-07-17 09:40:34 +02:00
Andreas Nedbal a5b6ef07d3 Refactor `Ajax::ListController`
* remove inline authentication checks and use before_action instead
* remove begin/rescue catches as those are handled by the base controller and validations now
2022-07-17 09:40:34 +02:00
Andreas Nedbal a3f80380dd Adjust validations for `List` 2022-07-17 09:40:34 +02:00
Karina Kwiatek e1e45b04a3 Use double quotes instead of single quotes 2022-07-16 21:29:20 +02:00
Karina Kwiatek c59a70844b Display if a context question has been deleted when viewing anon blocks 2022-07-16 21:29:20 +02:00
Karina Kwiatek 8005fc8ae6 Skip denotify if recipient doesn't exist 2022-07-16 21:29:20 +02:00
Karina Kwiatek d9f82c4985 Disallow deletion of accounts when a data export is pending 2022-07-16 21:29:20 +02:00
Karina Kwiatek 5e633ab56e Fix invalid paths for original size images 2022-07-16 15:58:30 +02:00
Karina Kwiatek bd5ec792b7 Prevent text in links from being double-escaped 2022-07-16 15:57:32 +02:00
Georg Gadinger 572132f9e9 make captcha readable 2022-07-09 12:41:16 +02:00
Karina Kwiatek 39d55e52c8 Use `target.class.name` instead of `target.type`
This only worked for polymorphic relations
2022-07-09 01:15:31 +02:00
Karina Kwiatek 28240bba27 Properly match notification type 2022-07-09 01:15:31 +02:00
Andreas Nedbal b3f15fe409 Remove unnecessary duplicate locales 2022-07-07 16:51:05 +02:00
Andreas Nedbal a8362702e3 Localize notification page title 2022-07-07 16:51:05 +02:00
Andreas Nedbal b551b7acdb Add translations for notification navigation 2022-07-07 16:51:05 +02:00
Andreas Nedbal af327b3f08 Add translations for notification types 2022-07-07 16:51:05 +02:00
Andreas Nedbal 52218bf1d0 Add translations for navigation index page 2022-07-07 16:51:05 +02:00
Andreas Nedbal 334c30e773 Remove notification navigation bar 2022-07-07 16:51:05 +02:00
Andreas Nedbal 9fc3e535d2 Apply review suggestion from @raccube
Co-authored-by: Karina Kwiatek <6197148+raccube@users.noreply.github.com>
2022-07-06 21:54:34 +02:00
Andreas Nedbal 73ac742332 Add translations for ajax controller error handling 2022-07-06 21:54:34 +02:00
Andreas Nedbal 6d4478b7c4 Remove subscription ajax controller locales 2022-07-06 21:54:34 +02:00
Andreas Nedbal e670a50adf Add translations for report ajax controller 2022-07-06 21:54:34 +02:00
Andreas Nedbal 9460bcfdd7 Add translations for answer ajax controller 2022-07-06 21:54:34 +02:00
Andreas Nedbal 80172d0852 Add translations for question ajax controller 2022-07-06 21:54:34 +02:00
Andreas Nedbal 2237ff8f04 Add translations for moderation ajax controller 2022-07-06 21:54:34 +02:00
Andreas Nedbal e6e7780142 Add translations for list ajax controller 2022-07-06 21:54:34 +02:00
Andreas Nedbal 1c31ff41db Add translations for inbox ajax controller 2022-07-06 21:54:34 +02:00
Andreas Nedbal 15946740eb Add translations for comment ajax controller 2022-07-06 21:54:34 +02:00
Andreas Nedbal 7381a685ac Add translations for smile ajax controller 2022-07-06 21:54:34 +02:00
Andreas Nedbal 34de119bb1 Add translations for block/relationship ajax controllers 2022-07-06 21:54:34 +02:00
Karina Kwiatek 8a6a9c21ec Appease the dog overlords
These counters are legacy and will later be removed.
2022-07-06 20:58:53 +02:00
Karina Kwiatek 539505eccd Ensure counters only get updated if the record exists 2022-07-06 20:58:53 +02:00
Karina Kwiatek e2462b1e51 Correct lint errors
(only on lines affected in this PR)
2022-07-06 20:58:53 +02:00
Karina Kwiatek e7112f0244 Use `dependent: :destroy_async` instead of `DeletionWorker` 2022-07-06 20:58:53 +02:00
Karina Kwiatek 0db369a9ae Remove comment_smiles relationship from users 2022-07-06 20:48:50 +02:00
Karina Kwiatek c0dbc7d501 Always denotify when deleting reactions 2022-07-06 20:43:01 +02:00
Karina Kwiatek 1ec99dd767 Appease the dog overlords 2022-07-06 19:56:04 +02:00
Karina Kwiatek 9bcf1a80ad Merge `author_name` with `author_identifier` 2022-07-06 19:56:04 +02:00
Karina Kwiatek 561946cab9 Fix issues from bad rebase 2022-07-05 23:23:37 +02:00
Karina Kwiatek 22ec4db349 Remove `Smile` & `CommentSmile` 2022-07-05 23:23:37 +02:00
Karina Kwiatek 19dcb96dcd Update remaining usages of `Smile`/`CommentSmile` 2022-07-05 23:23:37 +02:00
Karina Kwiatek 08e5764bf3 Appease the dog overlords 2022-07-05 23:23:37 +02:00
Karina Kwiatek 5ba3fed56c Replace usage of `answer` in `before_destroy` of Reaction with `parent` 2022-07-05 23:23:37 +02:00
Karina Kwiatek f9ec11a616 Use `.class.name` for `target_type` in `Notification#make_notification` 2022-07-05 23:23:37 +02:00
Karina Kwiatek f20e407cc3 Fix notifications page crashing on reactions 2022-07-05 23:23:37 +02:00
Karina Kwiatek 0cfe5ee964 Replace usages of smiles with reaction appendables 2022-07-05 23:23:37 +02:00
Karina Kwiatek 5f0a546353 Refactor smiling answers to using reactions 2022-07-05 23:23:37 +02:00
Karina Kwiatek 1e53f00032 Add migration for converting smiles to reaction appendable 2022-07-05 23:23:37 +02:00
Karina Kwiatek 544e9c8fa6 Create Appendable model 2022-07-05 23:23:37 +02:00
Karina Kwiatek be8418a1aa Use TypeScript for RailsAdmin entrypoint 2022-07-05 21:22:58 +02:00
Karina Kwiatek a2f7ea2895 Configure RailsAdmin to use webpacker 2022-07-05 21:22:58 +02:00
Andreas Nedbal 086797829e Use non-redirect route definitions for navigation states 2022-07-05 20:40:19 +02:00
Andreas Nedbal 2f6de3b36d Remove superfluous edit_security view 2022-07-05 20:40:19 +02:00
Andreas Nedbal c73f961006 Move data action views to new locations 2022-07-05 20:40:19 +02:00
Andreas Nedbal 565f7e4536 Move data action into `Settings::DataController` 2022-07-05 20:40:19 +02:00
Andreas Nedbal 9c4a934959 Move block action views to new locations 2022-07-05 20:40:19 +02:00
Andreas Nedbal 72d37032e6 Move block action into `Settings::BlocksController` 2022-07-05 20:40:19 +02:00
Andreas Nedbal 6dc0587423 Move mute action views to new locations 2022-07-05 20:40:19 +02:00
Andreas Nedbal a4bc137aca Move mute action into `Settings::MutesController` 2022-07-05 20:40:19 +02:00
Karina Kwiatek 517f2df1cc Add Lato semibold
This one gets used by Bootstrap for headings.
2022-07-03 18:55:02 +02:00
Karina Kwiatek 845e8fb3a3 Prevent navigation from appearing in print 2022-07-03 18:54:44 +02:00
Andreas Nedbal 5d9e91f90c Update app/views/tabs/_settings.haml
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2022-07-03 18:32:36 +02:00
Andreas Nedbal 0f63e39194 Move TOTP views to new location 2022-07-03 18:32:36 +02:00
Andreas Nedbal fcd1da40a1 Move 2FA settings actions into `OtpAuthenticationController` 2022-07-03 18:32:36 +02:00
Karina Kwiatek 022bdeb159 Add missing slash to `paperclip_path` 2022-07-03 15:07:18 +02:00
Karina Kwiatek b899c1aeb3 Order past bans newest-first 2022-07-02 17:08:44 +02:00
Karina Kwiatek 645469daa5 Correctly display time ago in ban history 2022-07-02 17:08:44 +02:00
Karina Kwiatek 32865b528d Highlight current ban 2022-07-02 17:08:44 +02:00
Karina Kwiatek c838263a2e Allow for ban history to be seen while banned 2022-07-02 17:08:44 +02:00
Karina Kwiatek 990c67baea Move unban into own view 2022-07-02 17:08:44 +02:00
Karina Kwiatek a0877b102a Create tabs for ban modal 2022-07-02 17:08:44 +02:00
Karina Kwiatek 1f3681ef50 Remove unnecessary value from reason field 2022-07-02 17:08:44 +02:00
Karina Kwiatek 5239f69081 Display duration controls on one line 2022-07-02 17:08:44 +02:00
Karina Kwiatek bb23f6b3f0 Add translations for ban modal 2022-07-02 17:08:44 +02:00
Andreas Nedbal 58d91c9c46 Improve export processing condition on index view 2022-07-02 16:36:14 +02:00
Andreas Nedbal f53aaf6091 Move and combine export settings template 2022-07-02 16:36:14 +02:00
Andreas Nedbal 2ee3aab14d Move export actions into `Settings::ExportController` 2022-07-02 16:36:14 +02:00
Karina Kwiatek 2a017c8b11 Fix upload path when not using fog with cloud storage 2022-07-02 13:00:46 +02:00
Karina Kwiatek c899e7983c Only import the weights of Lato which we use 2022-07-02 13:00:13 +02:00
Andreas Nedbal 97f28d8309 Move and combine privacy settings template 2022-06-28 23:20:11 +02:00
Andreas Nedbal 8cf6be8067 Move privacy actions from user controller to `Settings::PrivacyController` 2022-06-28 23:20:11 +02:00
Karina Kwiatek 97d8068a09 Set input types and autocomplete in profile settings 2022-06-28 23:13:30 +02:00
Karina Kwiatek 297bacf339 Remove old profile settings view 2022-06-28 23:13:30 +02:00
Karina Kwiatek 805e3504c7 Set autocomplete attributes on username & password fields 2022-06-28 23:13:30 +02:00
Karina Kwiatek 9dedf447a6 Use numeric input mode in TOTP entry 2022-06-28 23:13:30 +02:00
Karina Kwiatek 38d6a47372 Appease the dog overlords 2022-06-27 00:41:26 +02:00
Karina Kwiatek 597f8b74cb Fix everyone showing up as anonymous outside of moderation view 2022-06-27 00:41:26 +02:00
Andreas Nedbal a1ee29d826 Require being logged in to view `/settings/blocks` 2022-06-26 23:54:55 +02:00
Karina Kwiatek 93c62a3008 Fix `moderation_view?` breaking when not logged in 2022-06-26 23:41:29 +02:00
Andreas Nedbal 4d31addd0c Use proper route definitions in templates 2022-06-26 22:45:52 +02:00
Andreas Nedbal 52de0cddb0 Remove old authentication checks in `UserController` 2022-06-26 22:45:52 +02:00
Andreas Nedbal 8141db2ca7 Move profile picture actions to `Settings::ProfilePictureController` 2022-06-26 22:45:52 +02:00
Andreas Nedbal efa0048c87 WIP: Move profile actions to `Settings::ProfileController` 2022-06-26 22:45:52 +02:00
Karina Kwiatek e64f206f5b Replace `anonymous_identifier` with `author_identifier` 2022-06-26 21:07:28 +02:00
Karina Kwiatek ddd7cfd81d Pass `author_identifier` in `question/question` partial 2022-06-26 21:07:28 +02:00
Karina Kwiatek 8fb4256432 Use `content_tag` for generating markup in `unmask` method 2022-06-26 21:07:28 +02:00
Karina Kwiatek e5b8ea017c Show anon identifier in tooltip when unmasking 2022-06-26 21:07:28 +02:00
Karina Kwiatek 93f8bf35d2 Unmask author when in moderation mode 2022-06-26 21:07:28 +02:00
Karina Kwiatek 1b09d51443 Add toggle for moderation view 2022-06-26 21:07:28 +02:00
Karina Kwiatek a857887398 Appease the dog overlords 2022-06-26 18:32:18 +02:00
Karina Kwiatek 53361eefdd Move ban-related user methods to own module 2022-06-26 18:32:18 +02:00
Karina Kwiatek a533f68c65 Adjust exporter and user count to match new ban system 2022-06-26 18:32:18 +02:00
Karina Kwiatek 59c4507ec3 Remove unused use case requires from `User` model 2022-06-26 18:32:18 +02:00
Karina Kwiatek 73274988c1 Add `permanently_banned?` method to user model 2022-06-26 18:32:18 +02:00
Karina Kwiatek 34c747ebf7 Appease the dog overlords 2022-06-26 18:32:18 +02:00
Karina Kwiatek 3247d1c746 Move ban invalidation to `User#unban` method 2022-06-26 18:32:18 +02:00
Karina Kwiatek 0c6d79ce0b Add `permanent?` method to `UserBan` 2022-06-26 18:32:18 +02:00
Karina Kwiatek 94aec26588 Move ban creation to `User#ban` method 2022-06-26 18:32:18 +02:00
Karina Kwiatek e4a00ceedc Fix ban reason being set to the banned user's username 2022-06-26 18:32:18 +02:00
Andreas Nedbal f6828a24ad Adjust form queries so selector doesn't pick delete button 2022-06-26 17:52:44 +02:00
Andreas Nedbal bafe92968d Adjust usages of route definitions 2022-06-26 17:52:44 +02:00
Andreas Nedbal 54c89d7247 More lint fixes 2022-06-26 17:52:44 +02:00
Andreas Nedbal 417eee2ddc Appease the dog overlords 2022-06-26 17:52:44 +02:00
Andreas Nedbal 8f8ebaf77b Update theme settings related TypeScript code 2022-06-26 17:52:44 +02:00
Andreas Nedbal b15aaafccd Move theme templates to new location 2022-06-26 17:52:44 +02:00
Andreas Nedbal 298c7d625e Move theme actions from `UserController` to `Settings::ThemeController` 2022-06-26 17:52:44 +02:00
Karina Kwiatek 449aa1d998 Fix profiles failing to load when the user disallows anonymous questions 2022-06-26 12:00:31 +02:00
Andreas Nedbal 2e9b3e882d Only add button classes to actions that actually are buttons 2022-06-25 15:39:30 +02:00
Andreas Nedbal 3788e492dd Add text if no user is (anonymously) blocked 2022-06-25 15:39:30 +02:00
Andreas Nedbal bc986c6624 Add translations for block settings page 2022-06-25 15:39:30 +02:00