Sha256: 64cb51010208ceae59de6979681d2841001d02429e0f1e6e7704aa5ab8a0f02f

Contents?: true

Size: 1.12 KB

Versions: 4

Compression:

Stored size: 1.12 KB

Contents

class API::V1::ContactTypesController < Faalis::APIController
  before_filter :build_resource, :only => :create
  load_and_authorize_resource :except => [:destory]

  # GET /api/v1/contact_types
  def index
    respond_with(@contact_types)
  end

  def create

    if @contact_type.save
      respond_with(@contact_type)
    else
      respond_to do |format|
        format.json { render :json => {:fields => @contact_type.errors}, :status => :unprocessable_entity }
      end
    end
  end

  def show
    respond_with(@contact_type)
  end

  def update


    if @contact_type.update(resource_params)
      respond_with(@contact_type)
    else
      respond_to do |format|
        format.json { render :json => {:fields => @contact_type.errors}, :status => :unprocessable_entity }
      end
    end
  end

  def destroy
    ids = params[:id].split(",")
    @contact_types = ContactType.where(:id => ids)
    authorize! :destroy, @contact_types
    @contact_types.destroy_all
  end

  def build_resource
    @contact_type = ContactType.new(resource_params)
  end

  def resource_params
    params.require(:contact_type).permit(:id, :name)
  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
faalis_contacts-0.4.1 app/controllers/api/v1/contact_types_controller.rb
faalis_contacts-0.4.0 app/controllers/api/v1/contact_types_controller.rb
faalis_contacts-0.3.0 app/controllers/api/v1/contact_types_controller.rb
faalis_contacts-0.1.0 app/controllers/api/v1/contact_types_controller.rb