File: app/controllers/admin/preferences_controller.rb

Overview
Module Structure
Class Hierarchy
Code

Overview

Module Structure

  module: <Toplevel Module>
  module: Admin
  class: PreferencesController#1
inherits from
  ApplicationController   
has properties
method: initialize #4
method: show #9
method: edit #14
method: update #18
method: load_user #34
method: valid_params? #38
method: announce_bad_data #43

Class Hierarchy

Code

   1  class Admin::PreferencesController < ApplicationController
   2    before_filter :load_user
   3 
   4    def initialize
   5      @controller_name = 'user'
   6      @template_name = 'preferences'
   7    end
   8 
   9    def show
  10      set_standard_body_style
  11      render :edit
  12    end
  13 
  14    def edit
  15      render
  16    end
  17 
  18    def update
  19      if valid_params?
  20        if @user.update_attributes(params[:user])
  21          redirect_to admin_configuration_path
  22        else
  23          flash[:error] = t('preferences_controller.error_updating')
  24          render :edit
  25        end
  26      else
  27        announce_bad_data
  28        render :edit
  29      end
  30    end
  31 
  32    private
  33 
  34    def load_user
  35      @user = current_user
  36    end
  37 
  38    def valid_params?
  39      hash = (params[:user] || {}).symbolize_keys
  40      (hash.keys - User.unprotected_attributes).size == 0
  41    end
  42 
  43    def announce_bad_data
  44      flash[:error] = 'Bad form data.'
  45    end
  46  end