@filer_list()\r
@trigger('done', @params)\r
\r
- show_html: () ->\r
- @item = new Pettanr.Panel.WithElements({id: @item.get('id')}) # retake panel for 'with_elements' mode\r
- @item.fetch({cache: false}).done =>\r
+ show: () ->\r
+ @set_show(@render_show)\r
+ \r
+ render_show: () -> \r
+ switch @params['format']\r
+ when 'prof'\r
+ @show_prof()\r
+ when 'html'\r
+ @show_html()\r
+ \r
+ show_html: () -> \r
+ @item = @item.with_elements() # retake panel for 'with_elements' mode\r
+ @item.fetch({cache: true}).done =>\r
+ @item.replace_elements()\r
@trigger('title', @params, @item.get('caption'))\r
show = new Pettanr.Views.Panel.Show({\r
panel: @item,\r
show.render()\r
@trigger('ready', show)\r
@trigger('done', @params)\r
- false\r
- \r
- show: () ->\r
- @set_show()\r
- switch @params['format']\r
- when 'prof'\r
- @show_prof()\r
- else\r
- @show_html()\r
\r
count: () ->\r
\r
new: () ->\r
- @trigger('title', @params)\r
- @set_new()\r
- Pettanr.History.lock_url = @item.new_url()\r
- @editor()\r
- @trigger('done', @params)\r
+ if @gate and @gate.is_lock()\r
+ @trigger('lock', @params)\r
+ else\r
+ @trigger('title', @params)\r
+ @set_new()\r
+ @editor(@item.new_url())\r
+ @trigger('done', @params)\r
\r
edit: () ->\r
- @trigger('title', @params)\r
- @set_model()\r
- panel = new Pettanr.Panel({id: @params['id']})\r
- @item = panel.with_elements()\r
- @item.fetch({cache: false}).done =>\r
- Pettanr.History.lock_url = @item.edit_url()\r
- @editor()\r
- @trigger('done', @params)\r
+ if @gate and @gate.is_lock()\r
+ @trigger('lock', @params)\r
+ else\r
+ @trigger('title', @params)\r
+ @set_model()\r
+ panel = new Pettanr.Panel({id: @params['id']})\r
+ @item = panel.with_elements()\r
+ @item.fetch({cache: false}).done =>\r
+ @item.replace_elements()\r
+ @editor(@item.edit_url())\r
+ @trigger('done', @params)\r
\r
editor: () ->\r
editor = new Editor.PanelEditor({root_item: @item, operators: @operators})\r
editor.render()\r
+ @trigger('lock', @params, editor)\r
@trigger('ready', editor)\r
\r
create: () ->\r
@form.save()\r
\r
destroy: () ->\r
- @set_show()\r
- @item.fetch({cache: true}).done =>\r
- @listenTo(@item, 'destroy:success', @destroy_success)\r
- @listenTo(@item, 'destroy:fail', @destroy_fail)\r
- @item.destroy()\r
+ @set_show(@render_destroy)\r
+ \r
+ render_destroy: () ->\r
+ @listenTo(@item, 'destroy:success', @destroy_success)\r
+ @listenTo(@item, 'destroy:fail', @destroy_fail)\r
+ @item.destroy()\r
\r