Commit Graph

70 Commits

Author SHA1 Message Date
Karina Kwiatek aaee04b5ed Restore `QuestionWorker` for compatibility during upgrade
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2023-12-11 19:54:56 +01:00
Karina Kwiatek 83ac156382 Refactor `QuestionWorker` to send to individual users rather than all followers at once 2023-11-01 08:45:56 +01:00
Andreas Nedbal 3811f15bd7 Add use cases for creating and destroying reactions 2023-10-29 20:47:18 +01:00
Andreas Nedbal 20cf1ac85b Fix rubocop nits 2023-10-28 02:44:48 +02:00
Andreas Nedbal 1e29d3f86f Rename `Appendable::Reaction` to `Reaction` 2023-10-28 02:44:48 +02:00
Andreas Nedbal 454438091b Use explicit `create!` call in mute rule creation use case 2023-10-15 10:16:21 +02:00
Karina Kwiatek d5c27dcfb4 Exclude caching timestamps from data exports 2023-03-07 19:14:14 +01:00
Georg Gadinger 9fadeea3fe rubodog 2023-02-13 22:17:46 +01:00
Georg Gadinger bc6806aa89 initial metrics 2023-02-13 22:17:46 +01:00
Karina Kwiatek 736ca4d6b0 Use a policy for pinning/unpinning 2023-02-12 20:19:50 +01:00
Karina Kwiatek baea942975 Add check for pinning when the answer is already pinned 2023-02-12 20:19:50 +01:00
Karina Kwiatek 438884e13a Add trailing commas (lint) 2023-02-12 20:19:50 +01:00
Karina Kwiatek 410d9b5d8e Implement unpinning answers 2023-02-12 20:19:50 +01:00
Karina Kwiatek ed4ec98455 Add use case for pinning answers 2023-02-12 20:19:50 +01:00
Karina Kwiatek c919b4913f
Merge branch 'main' into feature/long-questions 2023-01-11 22:24:58 +01:00
Andreas Nedbal 00e677886f Prevent global anon blocks blocking every anon question with a user 2023-01-11 01:47:32 +01:00
Karina Kwiatek 3a6814b908 Respect allow long questions setting 2023-01-08 14:03:54 +01:00
Karina Kwiatek d403cdde75 Prevent error when creating questions
This error didn't prevent the question from being sent.
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 8178d75a57 Add use cases for creating and destroying mute rules 2023-01-02 12:45:35 +01:00
Karina Kwiatek ee9c48fd06 Clean up question create use case 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 062e293607 Fix missing namespace qualifier for Rpush 2023-01-02 11:50:48 +01:00
Karina Kwiatek 93d4af3f0d Deduplicate notification sending logic and replace placeholder string 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
Georg Gadinger 86441cda57 rubodog 2023-01-02 09:24:34 +01:00
Georg Gadinger 9d38292d4a question/create_followers: fix incrementing asked_count 2023-01-02 09:20:59 +01:00
Andreas Nedbal 00959a8645 add exporting of mute relationships 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
Georg Gadinger 6e54b4daba remove requires for types
autoloaded by zeitwerk
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
Andreas Nedbal 099665022f Use `id` from `source_user` inside query
With the proper presence check using `source_user_id` we guarantee `source_user` is there, and so we can use it like in the other query
2022-12-28 00:10:59 +01:00
Andreas Nedbal 97736a956d Track question users in anonymous blocks 2022-12-28 00:10:59 +01:00
Georg Gadinger 9895782a02 data_export/user: remove rescue since local image handling works now for sure 2022-12-22 17:29:38 +01:00
Georg Gadinger 3e143954e3 data_export: yeet inbox_entries 2022-12-10 15:47:54 +01:00
Georg Gadinger 2b3e7ab609 add specs for new exporters 2022-12-10 03:28:17 +01:00
Georg Gadinger 4229c7f579 first draft of the new data exporter 2022-12-10 00:39:50 +01:00
Andreas Nedbal 3cefc829f8
Merge branch 'main' into feature/privacy-require-user 2022-11-13 17:27:53 +01:00
Andreas Nedbal 9393374eab `LoginRequired` -> `NotAuthorized` 2022-11-13 14:38:11 +01:00
Andreas Nedbal 32d270113d Check for users being logged in if a user requires it in questions 2022-11-13 14:26:49 +01:00
Andreas Nedbal fa12b19b8a Prevent questions being sent to users that lock their inbox 2022-11-06 15:01:01 +01:00
Karina Kwiatek 74e309e9fc Apply anonymous blocks without an owner as global 2022-08-20 19:02:37 +02:00
Karina Kwiatek 050d7d5b56 Return hashes from user ban use cases 2022-07-30 15:40:37 +02:00
Karina Kwiatek a8e99723cc Return hashes from question use cases 2022-07-30 15:40:37 +02:00
Andreas Nedbal ed69d84d48
Apply review suggestion from @nilsding
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2022-07-24 22:45:04 +02:00
Andreas Nedbal 2692783518 Turn direct setting into an option for the use case 2022-07-24 22:24:48 +02:00
Andreas Nedbal bea98fa917 Always set follower created questions to not be direct explicitly 2022-07-24 22:24:24 +02:00
Andreas Nedbal 83dbd5d2e3 Don't list direct questions on user profiles 2022-07-24 21:56:03 +02:00
Karina Kwiatek 2dac4c09ed Use endless method definition in `UseCase::Base`
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2022-07-23 12:06:24 +02:00