Sha256: 1fd0c8a91ce3a330d9f67eaff2e967ff0b3ac679eee2d3d7c84a119080e1ae85

Contents?: true

Size: 1.2 KB

Versions: 3

Compression:

Stored size: 1.2 KB

Contents

module Admin

  class Market::PropertiesController < BaseController

    handle_return_path

    PER_PAGE = 20

    def index
      if params[:term].present?
        # autocomplete
        render json: ::Market::Property.where('name ILIKE ?', "#{params[:term]}%").order(:name).map { |property| {id: property.id, label: property.name} }
      else
        @properties = ::Market::Property.order(:name).paginate(page: params[:page], per_page: PER_PAGE)
      end
    end

    def new
      @property = ::Market::Property.new
    end

    def create
      property_params
      @property = ::Market::Property.new(property_params)
      if @property.save
        redirect_to_back
      else
        render :new
      end
    end

    def edit
      @property = ::Market::Property.find(params[:id])
    end

    def update
      @property = ::Market::Property.find(params[:id])
      if @property.update_attributes(property_params)
        redirect_to_back
      else
        render :edit
      end
    end

    def destroy
      @property = ::Market::Property.find(params[:id])
      @property.destroy
      redirect_to_back
    end

    private

    def property_params
      params[:market_property].permit(:name)
    end

  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
coalla-cms-0.5.2.4 lib/generators/coalla/cms/market/templates/controllers/properties_controller.rb
coalla-cms-0.5.1.9 lib/generators/coalla/cms/market/templates/controllers/properties_controller.rb
coalla-cms-0.5.1.8 lib/generators/coalla/cms/market/templates/controllers/properties_controller.rb