[IMP] factorize view/load part1
bzr revid: al@openerp.com-20110906205438-wk1x6dx2mp103en2
This commit is contained in:
parent
6932592e26
commit
02792660b8
|
@ -884,22 +884,13 @@ class View(openerpweb.Controller):
|
|||
if context_string:
|
||||
elem.set(el, self.parse_context(context_string, session))
|
||||
|
||||
class FormView(View):
|
||||
_cp_path = "/web/formview"
|
||||
|
||||
@openerpweb.jsonrequest
|
||||
def load(self, req, model, view_id, toolbar=False):
|
||||
fields_view = self.fields_view_get(req, model, view_id, 'form', toolbar=toolbar)
|
||||
return {'fields_view': fields_view}
|
||||
def load(self, req, model, view_id, view_type, toolbar=False):
|
||||
return self.fields_view_get(req, model, view_id, view_type, toolbar=toolbar)
|
||||
|
||||
class ListView(View):
|
||||
_cp_path = "/web/listview"
|
||||
|
||||
@openerpweb.jsonrequest
|
||||
def load(self, req, model, view_id, toolbar=False):
|
||||
fields_view = self.fields_view_get(req, model, view_id, 'tree', toolbar=toolbar)
|
||||
return {'fields_view': fields_view}
|
||||
|
||||
def process_colors(self, view, row, context):
|
||||
colors = view['arch']['attrs'].get('colors')
|
||||
|
||||
|
@ -918,6 +909,15 @@ class ListView(View):
|
|||
return color[0]
|
||||
return 'maroon'
|
||||
|
||||
class TreeView(View):
|
||||
_cp_path = "/web/treeview"
|
||||
|
||||
@openerpweb.jsonrequest
|
||||
def action(self, req, model, id):
|
||||
return load_actions_from_ir_values(
|
||||
req,'action', 'tree_but_open',[(model, id)],
|
||||
False)
|
||||
|
||||
class SearchView(View):
|
||||
_cp_path = "/web/searchview"
|
||||
|
||||
|
@ -1073,19 +1073,6 @@ class Action(openerpweb.Controller):
|
|||
return clean_action(req, req.session.model('ir.actions.server').run(
|
||||
[action_id], req.session.eval_context(req.context)))
|
||||
|
||||
class TreeView(View):
|
||||
_cp_path = "/web/treeview"
|
||||
|
||||
@openerpweb.jsonrequest
|
||||
def load(self, req, model, view_id, toolbar=False):
|
||||
return self.fields_view_get(req, model, view_id, 'tree', toolbar=toolbar)
|
||||
|
||||
@openerpweb.jsonrequest
|
||||
def action(self, req, model, id):
|
||||
return load_actions_from_ir_values(
|
||||
req,'action', 'tree_but_open',[(model, id)],
|
||||
False)
|
||||
|
||||
class Export(View):
|
||||
_cp_path = "/web/export"
|
||||
|
||||
|
@ -1336,7 +1323,6 @@ class ExcelExport(Export):
|
|||
fp.close()
|
||||
return data
|
||||
|
||||
|
||||
class Reports(View):
|
||||
_cp_path = "/web/report"
|
||||
|
||||
|
|
|
@ -50,8 +50,13 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView#
|
|||
return def.promise();
|
||||
} else {
|
||||
var context = new openerp.web.CompoundContext(this.dataset.get_context());
|
||||
return this.rpc("/web/formview/load", {"model": this.model, "view_id": this.view_id,
|
||||
toolbar: this.options.sidebar, context: context}, this.on_loaded);
|
||||
return this.rpc("/web/view/load", {
|
||||
"model": this.model,
|
||||
"view_id": this.view_id,
|
||||
"view_type": "form",
|
||||
toolbar: this.options.sidebar,
|
||||
context: context
|
||||
}, this.on_loaded);
|
||||
}
|
||||
},
|
||||
stop: function() {
|
||||
|
@ -65,7 +70,7 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView#
|
|||
},
|
||||
on_loaded: function(data) {
|
||||
var self = this;
|
||||
this.fields_view = data.fields_view;
|
||||
this.fields_view = data;
|
||||
var frame = new (this.registry.get_object('frame'))(this, this.fields_view.arch);
|
||||
|
||||
this.$element.html(QWeb.render(this.template, { 'frame': frame, 'view': this }));
|
||||
|
|
|
@ -74,7 +74,7 @@ openerp.web.list_editable = function (openerp) {
|
|||
},
|
||||
on_loaded: function (data, grouped) {
|
||||
// tree/@editable takes priority on everything else if present.
|
||||
this.options.editable = data.fields_view.arch.attrs.editable || this.options.editable;
|
||||
this.options.editable = data.arch.attrs.editable || this.options.editable;
|
||||
return this._super(data, grouped);
|
||||
}
|
||||
});
|
||||
|
|
|
@ -147,7 +147,7 @@ openerp.web.ListView = openerp.web.View.extend( /** @lends openerp.web.ListView#
|
|||
*/
|
||||
on_loaded: function(data, grouped) {
|
||||
var self = this;
|
||||
this.fields_view = data.fields_view;
|
||||
this.fields_view = data;
|
||||
//this.log(this.fields_view);
|
||||
this.name = "" + this.fields_view.arch.attrs.string;
|
||||
|
||||
|
@ -218,7 +218,7 @@ openerp.web.ListView = openerp.web.View.extend( /** @lends openerp.web.ListView#
|
|||
if (!this.sidebar && this.options.sidebar && this.options.sidebar_id) {
|
||||
this.sidebar = new openerp.web.Sidebar(this, this.options.sidebar_id);
|
||||
this.sidebar.start();
|
||||
this.sidebar.add_toolbar(data.fields_view.toolbar);
|
||||
this.sidebar.add_toolbar(this.fields_view.toolbar);
|
||||
this.set_common_sidebar_sections(this.sidebar);
|
||||
}
|
||||
},
|
||||
|
@ -373,6 +373,7 @@ openerp.web.ListView = openerp.web.View.extend( /** @lends openerp.web.ListView#
|
|||
return this.rpc('/web/listview/load', {
|
||||
model: this.model,
|
||||
view_id: this.view_id,
|
||||
"view_type": "list",
|
||||
context: this.dataset.get_context(context),
|
||||
toolbar: this.options.sidebar
|
||||
}, callback);
|
||||
|
|
|
@ -31,6 +31,7 @@ openerp.web.TreeView = openerp.web.View.extend({
|
|||
return this.rpc("/web/treeview/load", {
|
||||
model: this.model,
|
||||
view_id: this.view_id,
|
||||
view_type: "tree",
|
||||
toolbar: this.view_manager ? !!this.view_manager.sidebar : false
|
||||
}, this.on_loaded);
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue