Commit Graph

2200 Commits

Author SHA1 Message Date
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
Andreas Nedbal 936b49eef0 WIP: Add UI to manage (anonymous) blocks 2022-06-25 15:39:30 +02:00
Karina Kwiatek da71744a0d Disallow all tags in anon names 2022-06-25 10:38:06 +02:00
Karina Kwiatek 3bb48270a2 Sanitize anon names 2022-06-25 10:38:06 +02:00
Karina Kwiatek 10ead35209 Add translations for inbox moderation 2022-06-23 22:17:14 +02:00
Karina Kwiatek be8ba63b95 Add a way for moderators to view user inboxes 2022-06-23 22:17:14 +02:00
Karina Kwiatek cd581fd2b1 Move anon icon tooltip text into translatable string 2022-06-23 21:29:27 +02:00
Karina Kwiatek a2937a60e9 Add icon for anonymous questions 2022-06-23 21:29:27 +02:00
Karina Kwiatek 15052e203e Appease the dog overlords 2022-06-23 21:29:27 +02:00
Karina Kwiatek d1ad34eb9c Apply anon display name settings to question author display 2022-06-23 21:29:27 +02:00
Karina Kwiatek 768d360ce7 Add profile setting for anon display name 2022-06-23 21:29:27 +02:00
Georg Gadinger 96ccb09908 screen_name_validator: use non-deprecated syntax for adding errors to fields 2022-06-21 21:30:59 +02:00
Georg Gadinger c375775daa typoed_email_validator: add new endings to the typo list 2022-06-21 20:46:48 +02:00
Karina Kwiatek 483c413796 Remove unused user relationship paginators 2022-06-18 17:50:41 +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 1e6243c6ce Create AnonymousBlock model 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
Andreas Nedbal e4603ff852 Add block identifiers to questionbox 2022-06-13 22:59:41 +02:00
Andreas Nedbal cf74d6f4c8 Add translations for questionbox 2022-06-13 22:59:41 +02:00
Karina Kwiatek b657894576 Prevent errors in `User#answer` when asking anonymous questions 2022-06-13 19:32:00 +02:00
Karina Kwiatek 14e84fd47c Prevent errors when asking anonymous questions 2022-06-13 16:12:06 +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 e64d4f3ca7 Prevent blocked users from reacting on comments 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 65309edd8f Add block checks into `User#answer` 2022-06-13 11:56:34 +02:00
Karina Kwiatek e9fa3b83b2 Fix mixed up block handling in follow method 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 a48a187086 Reset follow button after blocking a user 2022-06-13 11:56:34 +02:00
Karina Kwiatek c173c4a17d Add the ability to block/unblock users from profile pages 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 b38ae50ba7 Disallow reacting to an answer when blocked by its author 2022-06-13 11:56:34 +02:00
Karina Kwiatek b4e5037469 Disallow commenting when blocked by the answer's author 2022-06-13 11:56:34 +02:00
Karina Kwiatek bd0a4532a5 Disallow answering questions when blocked by its author 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
Karina Kwiatek 0038272417 Add Block relationship type 2022-06-13 11:56:34 +02:00
Andreas Nedbal d5e317d3fe Fix missing translation on question view 2022-04-26 08:20:54 +02:00
Andreas Nedbal a0741a9a68 Add translations for inbox entry 2022-04-25 19:40:23 +02:00
Andreas Nedbal 14d0074cb8 Add translations for inbox sidebar 2022-04-25 19:40:23 +02:00
Andreas Nedbal 5829dc51ec Add translations for inbox show view 2022-04-25 19:40:23 +02:00
Andreas Nedbal bf0ac3c4e3 Add translations for inbox controller 2022-04-25 19:40:23 +02:00
Andreas Nedbal 6b1be53827 Add translations for linkfilter 2022-04-19 21:25:56 +02:00
Andreas Nedbal e06159b465 Fix quote style 2022-04-18 20:15:34 +02:00
Andreas Nedbal 5518014024 Add translations for footer 2022-04-18 20:15:34 +02:00
Andreas Nedbal a7d2c7be7e Fix Hound nits 2022-04-17 22:58:42 +02:00
Andreas Nedbal a768d09862 Count users that only answer questions as active 2022-04-17 22:58:42 +02:00
Andreas Nedbal c2d0ca7eed Update about page layout 2022-04-17 22:58:42 +02:00
Andreas Nedbal f43d4b8621 Remove FAQ page 2022-04-17 22:58:42 +02:00
Andreas Nedbal 7e8ba6c647 Add current version as title to site name in footer 2022-04-16 12:56:18 +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 1fd06fd404 encode user input in inbox author search 2022-04-12 22:31:05 +02:00
Andreas Nedbal e56d0d121a Removed legacy frontpage jumbotron styling 2022-04-11 22:41:22 +02:00
Andreas Nedbal e0d65ea26e Remove particle-related styling 2022-04-11 22:41:22 +02:00
Andreas Nedbal c1d1ab6501 Remove color utility and tinycolor module 2022-04-11 22:41:22 +02:00
Andreas Nedbal 3bbc7a36f8 Remove particleground 2022-04-11 22:41:22 +02:00
Andreas Nedbal a2f3f5dce2 Replace inline style with utility class 2022-04-10 22:01:27 +02:00
Andreas Nedbal fdedecb6cd Add missing newline to file 2022-04-10 22:01:27 +02:00
Andreas Nedbal de3af3638e Add translations for frontpage 2022-04-10 22:01:27 +02:00
Andreas Nedbal 6ad7b1d599 Implement frontpage theme switch 2022-04-10 22:01:27 +02:00
Andreas Nedbal f0c7fdb92f Add example themes for frontpage demonstration 2022-04-10 22:01:27 +02:00
Andreas Nedbal 249de5b1ee Fix theme color application on guest navbar 2022-04-10 22:01:27 +02:00
Andreas Nedbal 2ebe96be17 Update layout of frontpage 2022-04-10 22:01:27 +02:00
Andreas Nedbal 933b0c2e9f WIP: new layout for frontpage 2022-04-10 22:01:27 +02:00
Georg Gadinger 6f2c2654a1 typoed_email_validator: add new ending to the typo list 2022-04-10 10:39:40 +02:00
Andreas Nedbal fdd8bf7962 Increase in-feed answer display length 2022-04-08 22:16:38 +02:00
Georg Gadinger 3d6fb9dc34 typoed_email_validator: add new ending to the typo list
also:
- consider '.mail' TLD a typo
- get rid of a deprecation warning
2022-03-04 21:12:35 +01:00
Andreas Nedbal 56af98294a
Merge branch 'main' into refactor/settings-tabs-locales 2022-02-20 21:36:31 +01:00
Andreas Nedbal 6541442098 Add translations for privacy settings flashes 2022-02-20 21:20:57 +01:00
Andreas Nedbal 2fc4b8f4a4 Add translations for privacy setting attributes 2022-02-20 21:20:57 +01:00
Andreas Nedbal e424d5ed38 Add translations for privacy settings title 2022-02-20 21:20:57 +01:00
Andreas Nedbal e26d981105 Fix haml-lint nits 2022-02-20 21:20:14 +01:00
Andreas Nedbal edf3d3db15 Add translation for "time ago" wording 2022-02-20 21:20:14 +01:00