Fix WebPush (regression from #4524) (#4778)

* Fix NoMethodError in Web::PushSubscription

```
undefined method `site_contact_email' for #<Class:0x00005976d13c40>

/usr/local/bundle/gems/activerecord-5.1.3/lib/active_record/dynamic_matchers.rb:22:in `method_missing'
/usr/local/bundle/gems/attr_encrypted-3.0.3/lib/attr_encrypted.rb:295:in `method_missing'
/usr/local/bundle/gems/attr_encrypted-3.0.3/lib/attr_encrypted/adapters/active_record.rb:129:in `method_missing_with_attr_encrypted'
/mastodon/app/models/web/push_subscription.rb:53:in `push_payload'
```

* Specify serializer in Web::NotificationSerializer
master
unarist 7 years ago committed by Eugen Rochko
parent 8cc1ed3c55
commit bfa7f9ebf2
  1. 2
      app/models/web/push_subscription.rb
  2. 2
      app/serializers/web/notification_serializer.rb

@ -50,7 +50,7 @@ class Web::PushSubscription < ApplicationRecord
auth: key_auth, auth: key_auth,
ttl: ttl, ttl: ttl,
vapid: { vapid: {
subject: "mailto:#{Setting.site_contact_email}", subject: "mailto:#{::Setting.site_contact_email}",
private_key: Rails.configuration.x.vapid_private_key, private_key: Rails.configuration.x.vapid_private_key,
public_key: Rails.configuration.x.vapid_public_key, public_key: Rails.configuration.x.vapid_public_key,
} }

@ -121,7 +121,7 @@ class Web::NotificationSerializer < ActiveModel::Serializer
attributes :title, :image, :badge, :tag, attributes :title, :image, :badge, :tag,
:timestamp, :icon :timestamp, :icon
has_one :data has_one :data, serializer: DataSerializer
def title def title
case object.type case object.type

Loading…
Cancel
Save