1 class PanelsController < ApplicationController
2 layout 'test' if Pettanr::TestLayout
3 before_filter :authenticate_user!, :only => [:index, :show, :new, :edit, :create, :update, :destroy]
4 before_filter :authenticate_admin!, :only => [:list, :browse]
11 @page = Panel.page params[:page]
12 @page_size = Panel.page_size params[:page_size]
13 @panels = Panel.list({}, @page, @page_size)
15 respond_to do |format|
16 format.html # index.html.erb
17 format.json { render json: @panels.to_json(Panel.list_json_opt) }
24 @panel = Panel.show(params[:id], @author)
26 respond_to do |format|
27 format.html # show.html.erb
28 format.json { render json: @panel.to_json(Panel.show_json_include_opt) }
30 render :json => "callback(" + @panel.to_json(Panel.show_json_include_opt) + ");"
36 @panel = {:count => Panel.visible_count}
37 respond_to do |format|
38 format.json { render json: @panel.to_json }
43 @panels = Panel.all :order => 'updated_at'
45 respond_to do |format|
46 format.html { render layout: 'system' }
47 format.json { render json: @panels }
52 @panel = Panel.find(params[:id])
54 respond_to do |format|
55 format.html { render layout: 'system' }
63 respond_to do |format|
64 format.html # new.html.erb
66 format.json { render json: @panel }
71 @panel = Panel.show(params[:id], @author)
72 respond_to do |format|
84 jsn = JSON.parse(params[:json])
86 @prm = params[:panel] || jsn
87 @panel.attributes = @prm
88 @panel.overwrite @author
89 respond_to do |format|
91 format.html { redirect_to @panel, notice: 'Panel was successfully created.' }
92 format.json { render json: @panel, status: :created, location: @panel }
94 format.html { render action: "new" }
95 format.json { render json: @panel.errors, status: :unprocessable_entity }
103 @panel = Panel.edit(params[:id], @author)
105 jsn = JSON.parse(params[:json])
107 @prm = params[:panel] || jsn
108 @panel.attributes = @prm
109 @panel.overwrite @author
110 respond_to do |format|
112 format.html { redirect_to @panel, notice: 'Panel was successfully updated.' }
113 format.json { head :ok }
115 format.html { render action: "edit" }
116 format.json { render json: @panel.errors, status: :unprocessable_entity }
122 # DELETE /panels/1.json
124 @panel = Panel.edit(params[:id], @author)
125 respond_to do |format|
128 format.html { redirect_to panels_url }
129 format.json { head :ok }
135 @panel = Panel.find(params[:id])
136 @new_seq = params[:panel][:t].to_i
137 respond_to do |format|
139 if @panel.move_to(@new_t)
140 format.html { redirect_to @panel, notice: 'Panel was successfully moved.' }
141 format.json { head :ok }
143 format.html { render action: "show" }
144 format.json { render json: @panel.errors, status: :unprocessable_entity }