Commit Graph

504 Commits

Author SHA1 Message Date
Andreas Nedbal 43af4acb2c Remove vote functionality from `Ajax::ModerationController` 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 159ce5c2ae Remove trailing comma 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 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 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
Karina Kwiatek d9f82c4985 Disallow deletion of accounts when a data export is pending 2022-07-16 21:29:20 +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 e7112f0244 Use `dependent: :destroy_async` instead of `DeletionWorker` 2022-07-06 20:58:53 +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 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 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
Andreas Nedbal 565f7e4536 Move data action into `Settings::DataController` 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 a4bc137aca Move mute action into `Settings::MutesController` 2022-07-05 20:40:19 +02:00
Andreas Nedbal fcd1da40a1 Move 2FA settings actions into `OtpAuthenticationController` 2022-07-03 18:32:36 +02:00
Andreas Nedbal 58d91c9c46 Improve export processing condition on index view 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
Andreas Nedbal 8cf6be8067 Move privacy actions from user controller to `Settings::PrivacyController` 2022-06-28 23:20:11 +02:00
Andreas Nedbal a1ee29d826 Require being logged in to view `/settings/blocks` 2022-06-26 23:54:55 +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 1b09d51443 Add toggle for moderation view 2022-06-26 21:07:28 +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 0c6d79ce0b Add `permanent?` method to `UserBan` 2022-06-26 18:32:18 +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 298c7d625e Move theme actions from `UserController` to `Settings::ThemeController` 2022-06-26 17:52:44 +02:00
Andreas Nedbal 936b49eef0 WIP: Add UI to manage (anonymous) blocks 2022-06-25 15:39:30 +02:00
Karina Kwiatek be8ba63b95 Add a way for moderators to view user inboxes 2022-06-23 22:17:14 +02:00
Karina Kwiatek 768d360ce7 Add profile setting for anon display name 2022-06-23 21:29:27 +02:00
Karina Kwiatek e404b61ec1 Sort relationship lists by relationship IDs rather than user IDs 2022-06-18 17:50:41 +02:00
Karina Kwiatek cca8795b01 Allow anonymous questions to be returned when the user has disabled anonymous questions
Fixes #267
2022-06-15 17:49:04 +02:00
Karina Kwiatek 41e476a2f7 Prevent other user's anon blocks from affecting each other 2022-06-15 14:26:48 +02:00
Karina Kwiatek abd07373e3 Fix double-hashing in `Ajax::AnonymousBlockController#create` 2022-06-15 14:26:48 +02:00
Karina Kwiatek e660b731d7 Appease the dog overlords 2022-06-15 14:26:48 +02:00
Karina Kwiatek 7e98f427c6 Add endpoint for removing anon blocks 2022-06-15 14:26:48 +02:00
Karina Kwiatek f379845615 Add frontend for blocking anonymous users 2022-06-15 14:26:48 +02:00
Karina Kwiatek 4e80b4f9ab Prevent anon questions from being sent while blocked 2022-06-15 14:26:48 +02:00
Karina Kwiatek 1a68c1b46f Rename `author_email` field to `author_identifier` 2022-06-15 14:26:48 +02:00
Karina Kwiatek 37732ff926 Expose `AjaxController` errors in dev envirnoments 2022-06-13 23:27:54 +02:00
Karina Kwiatek c8b6689a61 Fix error messages for reacting & listing errors 2022-06-13 11:56:34 +02:00
Karina Kwiatek 6a15a323cf Add tests for reacting to comments while blocked/blocking 2022-06-13 11:56:34 +02:00
Karina Kwiatek 0eb3f53b45 Add tests for asking questions while blocked 2022-06-13 11:56:34 +02:00
Karina Kwiatek 04243c2ec8 Appease the dog overlords 2022-06-13 11:56:34 +02:00
Karina Kwiatek ea3bbcef17 Update question controller block handling to account for users not being logged in 2022-06-13 11:56:34 +02:00
Karina Kwiatek febbee1306 Simplify error handling in answer create method
We were previously catching all exceptions when creating the answer and returning a generic error.
As exception handling is done in `AjaxController`, we don't need to do this and can get more specific error messages instead.
2022-06-13 11:56:34 +02:00
Karina Kwiatek 14dfef6a52 Add status messages for blocking/unblocking users 2022-06-13 11:56:34 +02:00
Karina Kwiatek d67ae1eb19 Only accept users to relationship use cases
Dry Types was having issues with taking either an object or string so it's easier to deal with just passing in an object directly
2022-06-13 11:56:34 +02:00
Karina Kwiatek 56799f60c7 Disallow adding blocked users to lists 2022-06-13 11:56:34 +02:00
Karina Kwiatek 9f06b48569 Disallow creating questions when blocked by the user being asked 2022-06-13 11:56:34 +02:00
Andreas Nedbal bf0ac3c4e3 Add translations for inbox controller 2022-04-25 19:40:23 +02:00
Andreas Nedbal a768d09862 Count users that only answer questions as active 2022-04-17 22:58:42 +02:00
Andreas Nedbal 583a3ba519 Remove `user#lists` action, view and route 2022-04-15 21:32:14 +02:00
Andreas Nedbal cf5d1d6e69 Remove token validation skip in ServicesController 2022-04-12 22:31:05 +02:00
Andreas Nedbal 6541442098 Add translations for privacy settings flashes 2022-02-20 21:20:57 +01:00
Andreas Nedbal 79dbf7d1c8 Add translations for mute rule controller actions 2022-02-18 12:50:27 +01:00
Andreas Nedbal 1a829f5e47 Fix hound nits 2022-02-13 23:41:50 +01:00
Andreas Nedbal 9899f05560 Add info flash translation for used recovery key 2022-02-13 23:41:50 +01:00
Andreas Nedbal 075614c5d7 Add translations for 2FA controllers and actions 2022-02-13 23:41:50 +01:00
Andreas Nedbal 3a718a7e88
Merge branch 'main' into refactor/export-locales 2022-02-13 16:55:19 +01:00
Andreas Nedbal 61edaa5bcd Fix hound nits 2022-02-13 16:53:42 +01:00
Andreas Nedbal 555636577e Translate theme update success/error flashes 2022-02-13 16:53:42 +01:00
Andreas Nedbal 0119437170 Add translations for user export 2022-02-13 02:26:15 +01:00
Andreas Nedbal 64601e7e8a Add translations for `UserController#update(_profile)` 2022-01-30 21:20:59 +01:00
Andreas Nedbal a05248fb13 Fix Ruby codestyle in `ServicesController` 2022-01-29 20:08:41 +01:00
Andreas Nedbal 592de78a4f Add translations for `ServicesController` 2022-01-29 20:08:41 +01:00
Andreas Nedbal c08545fe7c Fix typo 2022-01-25 22:31:25 +01:00
Andreas Nedbal ac83995dfc Add controller-scoped locales for `AnnouncementController` 2022-01-25 22:31:25 +01:00
Andreas Nedbal 8d73008ebf Address review suggestions 2022-01-24 20:13:09 +01:00
Andreas Nedbal fb812d4f36 Appease the mighty dog overlords (fix Ruby code nits) 2022-01-24 20:13:09 +01:00
Andreas Nedbal ad60e3c753 Disable locale switching logic 2022-01-24 20:13:09 +01:00
Karina Kwiatek 3b1287c424 Apply suggestions from @nilsding
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2022-01-23 16:48:53 +01:00
Karina Kwiatek 731ee4bf69 Address review comments from @nilsding 2022-01-23 16:48:53 +01:00
Karina Kwiatek 677ce26e6c Use generic handling of our own exceptions
Noticed that we shouldn't be trying to catch specific exceptions as `Dry::Types` will throw its own exceptions for validation errors.
2022-01-23 16:48:53 +01:00
Karina Kwiatek 29d46b43db Fix lint error; use fail message for relationship create failures 2022-01-23 16:48:53 +01:00
Karina Kwiatek 8d59ef9398 Use `screen_name` instead of `target_user` param in `Ajax::RelationshipController` 2022-01-23 16:48:53 +01:00
Karina Kwiatek b4e0699e82 Fix lint errors 2022-01-23 16:48:53 +01:00
Karina Kwiatek 0ab822c33a Use full translation key for messages 2022-01-23 16:48:53 +01:00
Karina Kwiatek d609435f7c Update `Ajax::RelationshipController` to use usernames; Test Use Case 2022-01-23 16:48:53 +01:00
Karina Kwiatek 3962671135 Implement relationship logic as use case 2022-01-23 16:48:53 +01:00
Karina Kwiatek ce951453a2 Make relationships polymorphic 2022-01-23 16:48:53 +01:00
Andreas Nedbal d56dfc02f9 Move consent POST-logic to separate action 2022-01-22 22:50:32 +01:00
Andreas Nedbal 3711c676da Fix Ruby codestyle 2022-01-22 22:50:32 +01:00
Andreas Nedbal 4d4296de19 Redirect away from consent action if consent is already given 2022-01-22 22:50:32 +01:00
Andreas Nedbal 0b76ceb73d WIP: Canny integration 2022-01-22 22:50:32 +01:00
Karina Kwiatek 45854894dc Upgrade to Rails 6.0 2022-01-13 21:42:06 +01:00
Karina Kwiatek 136e2fa016
Merge pull request #272 from Retrospring/feature/social-post-tagging
Add the ability to post to services with a tag
2022-01-07 19:40:52 +01:00
Karina Kwiatek 96e48a833b
Merge pull request #194 from Retrospring/refactor/user-bans
Implement ban history
2022-01-06 14:05:33 +01:00
Karina Kwiatek 75d24db1b9
Merge pull request #269 from Retrospring/feature/mod-pagination
Pagination in moderation panel
2022-01-06 14:05:12 +01:00
Karina Kwiatek ac92a8b6bd Use `String#tr` instead of `String#gsub` 2022-01-05 20:09:34 +01:00
Karina Kwiatek 023b642bc1 Disallow @ symbols from post tags
Co-authored-by: Andreas Nedbal <git@pixelde.su>
2022-01-05 19:50:01 +01:00
Karina Kwiatek 683fffd734 Add the ability to post to services with a tag 2022-01-05 19:49:59 +01:00
Andreas Nedbal 7fcb8312b9 Put `/settings/muted` behind authentication 2022-01-04 01:35:14 +01:00
Karina Kwiatek 2cab96b9af Implement cursored pagination in Moderation Panel 2022-01-03 22:43:37 +01:00
Karina Kwiatek 7677ed21a4 Update tests for unbanning users 2022-01-02 19:50:44 +01:00
Karina Kwiatek 6500d7ac71 Update usages of bans 2022-01-02 19:50:44 +01:00
Karina Kwiatek 9a35584284 Refactor ban-related functionality into use cases 2022-01-02 19:50:01 +01:00
Karina Kwiatek be0cf69368 Refactor existing ban-related methods 2022-01-02 19:50:01 +01:00
Karina Kwiatek b7ce9cdbba
Merge pull request #222 from Retrospring/feature/muting 2022-01-02 15:31:49 +01:00
Karina Kwiatek 6b626765a8 Create views for managing muted words 2022-01-02 01:55:52 +01:00
Karina Kwiatek 9ce1fc0ce4 Address review comments from @nilsding
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2022-01-01 22:10:13 +01:00
Karina Kwiatek fe6dff8ed6 Improve error messaging when trying to attach a service connected to another account 2022-01-01 21:58:22 +01:00
Karina Kwiatek 6c0e6b1d30 Create mute rules AJAX controller 2022-01-01 00:38:38 +01:00
Karina Kwiatek c31ab3578d Apply mute filters to questions asked directly 2022-01-01 00:38:38 +01:00
Andreas Nedbal 09172a56ef Add linkfilter action 2021-12-31 22:40:38 +01:00
Karina Kwiatek 0da070c5ff Move includes into `cursored_friends`/`cursored_followers` 2021-12-31 15:35:02 +01:00
Karina Kwiatek 7e57735b88 Add basic test for answer & user show views 2021-12-31 13:59:15 +01:00
Karina Kwiatek 32e6975c28 Include smiles when eager loading answers 2021-12-30 23:21:46 +01:00
Karina Kwiatek 7357e92865 Eager load relationships for questions, answers and users 2021-12-30 22:15:59 +01:00
Andreas Nedbal dcc781df3d Put all security related actions behind authentication 2021-12-29 22:35:17 +01:00
Karina Kwiatek 1b4aa8600d Set Sentry user context 2021-12-28 19:19:27 +01:00
Karina Kwiatek 065e56ccf1 Replace New Relic with Sentry 2021-12-28 18:32:03 +01:00
Karina Kwiatek 053ebafbc5
Merge pull request #213 from Retrospring/refactor/profile
Move profile fields to seperate table
2021-12-25 22:44:10 +01:00
Karina Kwiatek f28f714457 Allow retries for ShareWorker 2021-12-25 13:40:21 +01:00
Karina Kwiatek 8fa4feb469 Add endpoint for updating profile 2021-12-22 00:03:19 +01:00
Andreas Nedbal 58588d22b1 use .where.not instead of in-query condition for user confirm date 2021-10-03 20:49:33 +02:00
Andreas Nedbal 6639f6646a only count active users on about page 2021-10-03 20:40:25 +02:00
Karina Kwiatek 56786ebb38 Add direct field to questions
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2021-08-11 16:56:58 +02:00
Dominik Kwiatek 2e6f49819a Address @nilsding's review comments 2020-11-15 22:08:18 +01:00
Dominik Kwiatek aeb1396422 Add tests for recovery codes 2020-11-15 10:21:06 +01:00
Dominik Kwiatek e16896fac1 Provide the user a way to generate new codes. 2020-11-01 18:52:42 +01:00
Dominik Kwiatek 61d82bdbec Display count of remaining recovery codes 2020-11-01 18:41:37 +01:00
Dominik Kwiatek 5eb4f32660 Clean up after TOTP is disabled. 2020-11-01 18:31:20 +01:00
Dominik Kwiatek 5dd920eba2 Allow recovery codes to be used to sign in in place of a OTP 2020-11-01 18:29:11 +01:00
Dominik Kwiatek b4f479a00f Generate recovery keys on TOTP setup 2020-11-01 17:55:31 +01:00
Dominik Kwiatek d20f527d8c Add drift period 2020-10-24 00:24:04 +02:00