class Settings::ThemeController < ApplicationController include ThemeHelper before_action :authenticate_user! def edit end def update update_attributes = params.require(:theme).permit([ :primary_color, :primary_text, :danger_color, :danger_text, :success_color, :success_text, :warning_color, :warning_text, :info_color, :info_text, :dark_color, :dark_text, :light_color, :light_text, :raised_background, :raised_accent, :background_color, :body_text, :muted_text, :input_color, :input_text ]) if current_user.theme.nil? current_user.theme = Theme.new update_attributes current_user.theme.user_id = current_user.id if current_user.theme.save flash[:success] = t(".success") else flash[:error] = t(".error", errors: current_user.theme.errors.messages.flatten.join(" ")) end elsif current_user.theme.update(update_attributes) flash[:success] = t(".success") else flash[:error] = t(".error", errors: current_user.theme.errors.messages.flatten.join(" ")) end redirect_to edit_user_theme_path end def destroy current_user.theme.destroy! redirect_to edit_user_theme_path end end