end
before_filter :authenticate_admin!, :only => [:list, :browse]
+ @@model = Sheet
def index
- @page = Sheet.page params[:page]
- @page_size = Sheet.page_size params[:page_size]
- @sheets = Sheet.list(@page, @page_size)
+ set_filer
+
respond_to do |format|
- format.html {
- @paginate = Sheet.list_paginate(@page, @page_size)
- }
- format.json { render json: @sheets.to_json(Sheet.list_json_opt) }
+ format_filer format
+ format.json { render json: @items.to_json(@@model.list_json_opt) }
format.atom
format.rss
end
end
def show
- @sheet = Sheet.show(params[:id], [@user, @admin])
+ @item = Sheet.show(params[:id], @operators)
respond_to do |format|
format.html {
- if @author
- @new_panels = Panel.mylist(@author, 1, 5)
+ @sheet = @item
+ if @operators.author
+ @new_panels = Panel.mylist(@operators.author, 1, 5)
+ @new_stories = Story.mylist(@operators.author, 1, 5)
+ @fresh_stories = StorySheet.mylist(@operators.author, 1, 5).map {|ss| ss.story}
end
}
- format.json { render json: @sheet.to_json(Sheet.show_json_opt) }
+ format_prof format
+ format.json { render json: @item.to_json(Sheet.show_json_opt) }
format.atom
format.rss
end
def play
@sheet = Sheet.show(params[:id], [@user, @admin])
- @sheet_panels = SheetPanel.play_list(@sheet, @author)
respond_to do |format|
format.html {
if @author
@new_panels = Panel.mylist(@author, 1, 5)
end
}
- format.json {render text: SheetPanel.list_as_json_text(@sheet_panels, @author)}
+ format.json {render json: @sheet.to_json(Sheet.show_json_opt)}
format.jsonp {
render :json => "callback(" + @sheet_panels.to_json_list + ");"
}
def create
@sheet = Sheet.new
@sheet.supply_default
- @sheet.attributes = params[:sheet]
- @sheet.overwrite @author
+ jsn = nil
+ if params[:json]
+ jsn = JSON.parse_no_except(params[:json])
+ end
+ @prm = params[:sheet] || jsn
respond_to do |format|
- if @sheet.save
+ if @sheet.store @prm, @author
flash[:notice] = I18n.t('flash.notice.created', :model => Sheet.model_name.human)
format.html { redirect_to @sheet }
format.json { render json: @sheet.to_json(Sheet.show_json_opt), status: :created, location: @sheet }
def update
@sheet = Sheet.edit(params[:id], @author)
- @sheet.attributes = params[:sheet]
- @sheet.overwrite @author
+ jsn = nil
+ if params[:json]
+ jsn = JSON.parse(params[:json])
+ end
+ @prm = params[:sheet] || jsn
respond_to do |format|
- if @sheet.save
+ if @sheet.store @prm, @author
flash[:notice] = I18n.t('flash.notice.updated', :model => Sheet.model_name.human)
format.html { redirect_to @sheet }
format.json { head :ok }