Method: Notifun::PreferencesController#save

Defined in:
app/controllers/notifun/preferences_controller.rb

#saveObject



16
17
18
19
20
21
22
23
24
25
# File 'app/controllers/notifun/preferences_controller.rb', line 16

def save
  params[:preferences].each do |index, preference_params|
    permitted_params = preference_params.slice(:preferable_type, :preferable_id, :category, :message_template_key, :email, :push, :text).permit!
    preference = Notifun::Preference.where(permitted_params.slice(:preferable_type, :preferable_id, preference_params[:preference_type])).first_or_initialize
    preference.attributes = permitted_params
    preference.save!
  end

  redirect_to notifun_preferences_path, notice: "Notification preferences saved."
end