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
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