forked from saurabh/orbit4-5
47 lines
1.2 KiB
Ruby
47 lines
1.2 KiB
Ruby
class Admin::CategoriesController < OrbitAdminController
|
|
before_action :setup_vars
|
|
|
|
def index
|
|
unless @module_app.nil?
|
|
@categories = @module_app.categories
|
|
end
|
|
end
|
|
|
|
def create
|
|
category = @module_app.categories.build(category_params)
|
|
category.save
|
|
redirect_to request.referer, :status => 303
|
|
end
|
|
|
|
def create_in_form
|
|
@category = @module_app.categories.build(category_params)
|
|
@category.save
|
|
render :json => {:id=>@category.id.to_s, :title=>@category.title}.to_json ,:layout => false
|
|
end
|
|
|
|
def update
|
|
@category = Category.find(params[:id])
|
|
@category.update_attributes(category_params)
|
|
redirect_to request.referer, :status => 303
|
|
end
|
|
|
|
def toggle
|
|
category = Category.find(params[:id])
|
|
category.disable = category.disable ? false : true
|
|
category.save!
|
|
redirect_to request.referer, :status => 303
|
|
end
|
|
|
|
private
|
|
|
|
def setup_vars
|
|
@module_apps = params[:module_app_id].blank? ? ModuleApp.where(categorizable: true) : [ModuleApp.find(params[:module_app_id])]
|
|
@module_app = params[:module_app_id].blank? ? ModuleApp.find_by(:key=>'category') : ModuleApp.find(params[:module_app_id])
|
|
end
|
|
|
|
def category_params
|
|
params.require(:category).permit!
|
|
end
|
|
|
|
end
|