class Pettanr.PanelsController extends Pettanr.AppController index: () -> @trigger('title', @params) @filer_list() @trigger('done', @params) by_author: () -> @trigger('title', @params) @filer_list() @trigger('done', @params) by_scroll: () -> @trigger('title', @params) @filer_list() @trigger('done', @params) by_sheet: () -> @trigger('title', @params) @filer_list() @trigger('done', @params) by_speech_balloon_template: () -> @trigger('title', @params) @filer_list() @trigger('done', @params) show: () -> @set_show(@render_show) render_show: (@item) -> switch @params['format'] when 'prof' @show_prof() when 'html' @show_html() show_html: () -> @item = @item.with_elements() # retake panel for 'with_elements' mode @item.fetch({cache: true}).done => @item.attributes = @item.replaced_attributes() @trigger('title', @params, @item.get('caption')) show = new Pettanr.Views.Panel.Show({ panel: @item, spot: null }) show.render() @trigger('ready', show) @trigger('done', @params) count: () -> new: () -> @trigger('title', @params) @form_new() @trigger('done', @params) edit: () -> @trigger('title', @params) @set_edit({with_elements: true}) @trigger('done', @params) render_form: () -> @form = new Editor.PanelEditor({root_item: @item}) @form.render() @trigger('lock', @params, @form) @trigger('ready', @form) create: () -> # @form is editor @form.panel.overwrite({}) @listenTo(@form, 'success', @post_success) @listenTo(@form, 'fail', @post_fail) @form.save() update: () -> # @form is editor @form.panel.overwrite({}) @listenTo(@form, 'success', @post_success) @listenTo(@form, 'fail', @post_fail) @form.save() destroy: () -> @set_show(@render_destroy) render_destroy: () -> @listenTo(@item, 'destroy:success', @destroy_success) @listenTo(@item, 'destroy:fail', @destroy_fail) @item.destroy() @is_deny_action_on_picker: (params) -> switch params['action'] when 'new' true when 'edit' true else false