Sha256: d98c0cce2ec800337dc4cc3936d113320bbe2087a1693c4951d32f3477eba5cc

Contents?: true

Size: 1.41 KB

Versions: 7

Compression:

Stored size: 1.41 KB

Contents

class Census::DataGroupsController < ApplicationController
  
  before_filter :restrict_access
  
  def index
    @data_groups = DataGroup.all
  end

  def new
    @data_group = DataGroup.new(params[:data_group])
  end
  
  def create
    @data_group = DataGroup.new(params[:data_group])
    
    if @data_group.save
      flash[:notice] = "Created #{@data_group.name}"
      redirect_to census_admin_path
    else
      render :action => 'new', :status => :unprocessable_entity
    end
  end
  
  def edit
    @data_group = DataGroup.find(params[:id])
  end
  
  def update
    @data_group = DataGroup.find(params[:id])
    
    if @data_group.update_attributes(params[:data_group])
      flash[:notice] = "Saved #{@data_group.name}"
      redirect_to census_admin_path
    else
      render :action => 'edit', :status => :unprocessable_entity
    end
  end
  
  def destroy
    @data_group = DataGroup.find(params[:id])
    @data_group.destroy
    flash[:notice] = "Deleted #{@data_group.name}"
    redirect_to census_admin_path
  end
  
  def sort
    group_positions = params[:data_group].to_a
    DataGroup.all.each_with_index do |group, i|
      group.position = group_positions.index(group.id.to_s) + 1
      group.save
    end
    render :text => 'ok'
  end
  
  
  private
  
  
  def restrict_access
    render :text => 'Not authorized', :status => :unauthorized unless instance_eval(Census::configuration.admin_role.to_s)
  end

end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
census-0.5.2 app/controllers/census/data_groups_controller.rb
census-0.5.0 app/controllers/census/data_groups_controller.rb
census-0.4.4 app/controllers/census/data_groups_controller.rb
census-0.4.3 app/controllers/census/data_groups_controller.rb
census-0.4.2 app/controllers/census/data_groups_controller.rb
census-0.4.1 app/controllers/census/data_groups_controller.rb
census-0.4.0 app/controllers/census/data_groups_controller.rb