Commit Graph

624 Commits

Author SHA1 Message Date
Andreas Nedbal 3258ea4f0b Implement shared collapse partial 2023-01-12 21:03:44 +01:00
Karina Kwiatek c919b4913f
Merge branch 'main' into feature/long-questions 2023-01-11 22:24:58 +01:00
Andreas Nedbal 53bc270e08
Apply review suggestions from @nilsding
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2023-01-10 20:49:37 +01:00
Andreas Nedbal eccb51eab0 Add formatting help markup/translations 2023-01-10 15:48:56 +01:00
Karina Kwiatek 2e7fca67fa Update long question warning to be more descriptive 2023-01-08 17:20:12 +01:00
Karina Kwiatek 7cdb0e4976 Respect long question setting in frontend 2023-01-08 17:12:46 +01:00
Karina Kwiatek 122be928bf
Merge pull request #934 from Retrospring/more-obvious-sharing-options
Make sharing options more obvious
2023-01-08 11:24:50 +00:00
Andreas Nedbal 8b5271df69 Remove Webpacker 2023-01-08 12:19:45 +01:00
Karina Kwiatek 4ac3483f1a Make sharing options more obvious 2023-01-06 17:38:27 +01:00
Georg Gadinger fc62e2ddb2 fix english 2023-01-05 15:42:56 +01:00
Georg Gadinger b728c494d7 remove flag leftovers 2023-01-05 10:37:44 +01:00
Andreas Nedbal 7450143311 Remove legacy entrypoint and packages 2023-01-05 10:35:52 +01:00
Georg Gadinger 931fe4a8ed disable some built-in Rails features
this commit gets rid of the following routes:

                                      Prefix Verb     URI Pattern                                                                                       Controller#Action
               rails_postmark_inbound_emails POST     /rails/action_mailbox/postmark/inbound_emails(.:format)                                           action_mailbox/ingresses/postmark/inbound_emails#create
                  rails_relay_inbound_emails POST     /rails/action_mailbox/relay/inbound_emails(.:format)                                              action_mailbox/ingresses/relay/inbound_emails#create
               rails_sendgrid_inbound_emails POST     /rails/action_mailbox/sendgrid/inbound_emails(.:format)                                           action_mailbox/ingresses/sendgrid/inbound_emails#create
         rails_mandrill_inbound_health_check GET      /rails/action_mailbox/mandrill/inbound_emails(.:format)                                           action_mailbox/ingresses/mandrill/inbound_emails#health_check
               rails_mandrill_inbound_emails POST     /rails/action_mailbox/mandrill/inbound_emails(.:format)                                           action_mailbox/ingresses/mandrill/inbound_emails#create
                rails_mailgun_inbound_emails POST     /rails/action_mailbox/mailgun/inbound_emails/mime(.:format)                                       action_mailbox/ingresses/mailgun/inbound_emails#create
              rails_conductor_inbound_emails GET      /rails/conductor/action_mailbox/inbound_emails(.:format)                                          rails/conductor/action_mailbox/inbound_emails#index
                                             POST     /rails/conductor/action_mailbox/inbound_emails(.:format)                                          rails/conductor/action_mailbox/inbound_emails#create
           new_rails_conductor_inbound_email GET      /rails/conductor/action_mailbox/inbound_emails/new(.:format)                                      rails/conductor/action_mailbox/inbound_emails#new
          edit_rails_conductor_inbound_email GET      /rails/conductor/action_mailbox/inbound_emails/:id/edit(.:format)                                 rails/conductor/action_mailbox/inbound_emails#edit
               rails_conductor_inbound_email GET      /rails/conductor/action_mailbox/inbound_emails/:id(.:format)                                      rails/conductor/action_mailbox/inbound_emails#show
                                             PATCH    /rails/conductor/action_mailbox/inbound_emails/:id(.:format)                                      rails/conductor/action_mailbox/inbound_emails#update
                                             PUT      /rails/conductor/action_mailbox/inbound_emails/:id(.:format)                                      rails/conductor/action_mailbox/inbound_emails#update
                                             DELETE   /rails/conductor/action_mailbox/inbound_emails/:id(.:format)                                      rails/conductor/action_mailbox/inbound_emails#destroy
    new_rails_conductor_inbound_email_source GET      /rails/conductor/action_mailbox/inbound_emails/sources/new(.:format)                              rails/conductor/action_mailbox/inbound_emails/sources#new
       rails_conductor_inbound_email_sources POST     /rails/conductor/action_mailbox/inbound_emails/sources(.:format)                                  rails/conductor/action_mailbox/inbound_emails/sources#create
       rails_conductor_inbound_email_reroute POST     /rails/conductor/action_mailbox/:inbound_email_id/reroute(.:format)                               rails/conductor/action_mailbox/reroutes#create
                          rails_service_blob GET      /rails/active_storage/blobs/redirect/:signed_id/*filename(.:format)                               active_storage/blobs/redirect#show
                    rails_service_blob_proxy GET      /rails/active_storage/blobs/proxy/:signed_id/*filename(.:format)                                  active_storage/blobs/proxy#show
                                             GET      /rails/active_storage/blobs/:signed_id/*filename(.:format)                                        active_storage/blobs/redirect#show
                   rails_blob_representation GET      /rails/active_storage/representations/redirect/:signed_blob_id/:variation_key/*filename(.:format) active_storage/representations/redirect#show
             rails_blob_representation_proxy GET      /rails/active_storage/representations/proxy/:signed_blob_id/:variation_key/*filename(.:format)    active_storage/representations/proxy#show
                                             GET      /rails/active_storage/representations/:signed_blob_id/:variation_key/*filename(.:format)          active_storage/representations/redirect#show
                          rails_disk_service GET      /rails/active_storage/disk/:encoded_key/*filename(.:format)                                       active_storage/disk#show
                   update_rails_disk_service PUT      /rails/active_storage/disk/:encoded_token(.:format)                                               active_storage/disk#update
                        rails_direct_uploads POST     /rails/active_storage/direct_uploads(.:format)                                                    active_storage/direct_uploads#create
2023-01-05 06:38:58 +01:00
Karina Kwiatek ffb849047f Categorise Web Push Subscriptions in Rails Admin 2023-01-05 00:00:57 +01:00
Karina Kwiatek b35108e9d0 Implement NodeInfo
Closes #902
2023-01-04 17:08:05 +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 ae52810aae Add WebPushSubscription to Rails Admin 2023-01-03 18:12:13 +01:00
Andreas Nedbal 077958bc5c Install Font Awesome 6 2023-01-03 17:21:09 +01:00
Andreas Nedbal 3799640538 Make RailsAdmin use Sprockets again 2023-01-03 14:14:23 +01:00
Andreas Nedbal 219a4fbbbc Configure Sprockets to work with cssbundling-rails 2023-01-03 14:14:23 +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 1cfd3250c0 Track failures on Web Push subscriptions 2023-01-02 11:51:46 +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 3619f46360 Add unsubscribe messages 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 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 92ba2d7c9b Add `rpush` 2023-01-02 11:50:47 +01:00
Karina Kwiatek 9d1e77aeba Revoke Twitter connection when the token is revoked 2023-01-01 23:46:10 +01:00
Andreas Nedbal 0d34037dc7 Add mute relationships to Rails Admin 2023-01-01 22:42:50 +01:00
Andreas Nedbal 744724bc3a Add locale for self-muting error 2023-01-01 22:42:50 +01:00
Andreas Nedbal a6b3c51013 Rename "Muted Terms" settings tab to "Mutes" 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 409c8372ba Add mute action support in user action handler 2023-01-01 22:42:50 +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 7cc57968bc Localize Sidekiq dashboard panel 2022-12-25 00:29:24 +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
Georg Gadinger e1bdb1324f make the export worker create a *real* notification and add specs for it 2022-12-10 04:25:08 +01:00
Georg Gadinger 17783fbf38 update example config for use with radosgw 2022-12-10 03:28:37 +01:00
Georg Gadinger 4229c7f579 first draft of the new data exporter 2022-12-10 00:39:50 +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