orbit4-5/app/controllers/admin/categories_controller.rb

48 lines
1.2 KiB
Ruby

class Admin::CategoriesController < OrbitAdminController
before_action :setup_vars
def index
@category = Category.new
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