53 lines
1.4 KiB
Ruby
Executable File
53 lines
1.4 KiB
Ruby
Executable File
class Admin::MindMapsController < OrbitAdminController
|
|
|
|
def index
|
|
@table_fields = ["universal_table.mind_map","universal_table.created_time"]
|
|
@table = UTable.find(params[:id])
|
|
@mind_maps = Kaminari.paginate_array(@table.mind_maps).page(params[:page]).per(10)
|
|
end
|
|
|
|
def new
|
|
@table = UTable.find(params[:table])
|
|
@mind_map = MindMap.new
|
|
end
|
|
|
|
def edit
|
|
uid = params[:id].split("-").last
|
|
@mind_map = MindMap.where(:uid => uid).first
|
|
@table = @mind_map.u_table
|
|
end
|
|
|
|
def create
|
|
mind_map = MindMap.new
|
|
mind_params = mind_map_params
|
|
mind_params[:mind_map_data] = JSON.parse(mind_params[:mind_map_data])
|
|
mind_map.update_attributes(mind_map_params)
|
|
mind_map.save
|
|
redirect_to "/admin/universal_table/#{mind_map.u_table.id.to_s}/mind_maps"
|
|
end
|
|
|
|
def update
|
|
mind_map = MindMap.find(params[:id])
|
|
mind_params = mind_map_params
|
|
mind_params[:mind_map_data] = JSON.parse(mind_params[:mind_map_data])
|
|
mind_map.update_attributes(mind_map_params)
|
|
mind_map.save
|
|
redirect_to "/admin/universal_table/#{mind_map.u_table.id.to_s}/mind_maps"
|
|
end
|
|
|
|
def destroy
|
|
uid = params[:id].split("-").last
|
|
mind_map = MindMap.where(:uid => uid).first
|
|
table = mind_map.u_table
|
|
mind_map.destroy
|
|
redirect_to "/admin/universal_table/#{table.id.to_s}/mind_maps"
|
|
end
|
|
|
|
private
|
|
|
|
def mind_map_params
|
|
params.require(:mind_map).permit!
|
|
end
|
|
|
|
end
|