1 class Editor.PanelEditor.Dialog extends Backbone.View
\r
3 className: 'panel-editor-dialog'
\r
5 initialize: (options) ->
\r
6 @parent = options.parent
\r
7 @target_model = options.target_model
\r
8 @history = new Pettanr.Views.History({parent: this})
\r
9 @listenTo(@history, 'http_get', @http_get)
\r
10 @listenTo(@history, 'get', @get)
\r
12 start: (@target_model, params, form) ->
\r
16 this.$el.dialog('close')
\r
27 this.$el.append(@history.render().el)
\r
28 rb = new Tag.RowBreak()
\r
29 this.$el.append(rb.render().el)
\r
30 this.$el.append(view.el)
\r
33 proxy = new Pettanr.PickerProxy({})
\r
34 @listenTo(proxy, 'ready', @ready)
\r
35 @listenTo(proxy, 'title', @title)
\r
36 @listenTo(proxy, 'title', @push_history)
\r
37 @listenTo(proxy, 'done', @done)
\r
38 @listenTo(proxy, 'deny', @deny)
\r
41 http_get: (url, form) ->
\r
42 @getter_proxy().http_get(url, form)
\r
44 get: (params, form) ->
\r
45 @getter_proxy().get(params, form)
\r
48 @listenTo(view, 'http_get', @http_get)
\r
49 # @listenTo(view, 'http_post', @http_post)
\r
50 @listenTo(view, 'pick', @pick)
\r
51 if view['is_pickable'] and view.is_pickable()
\r
52 view.add_pick(@target_model)
\r
54 this.$el.dialog('open')
\r
58 deny: (params, form, safe_url) ->
\r
59 @getter_proxy().http_get(safe_url, params, form)
\r
61 push_history: (params, str = null) ->
\r
62 @history.push(params, str)
\r
64 title: (params, str = null) ->
\r
65 t = str || I18n.t(params['controller'] + '.' + params['action'] + '.title')
\r
66 this.$el.dialog({title: t})
\r
69 @trigger('pick', item)
\r