[MERGE] Sync with trunk
bzr revid: tde@openerp.com-20130909093126-dg8odqhq6g2bsd9w bzr revid: tde@openerp.com-20130912073949-dib01nji97z0ogn2
This commit is contained in:
commit
be64818d1b
|
@ -3,8 +3,12 @@
|
|||
You can adapt this file completely to your liking, but it should at least
|
||||
contain the root `toctree` directive.
|
||||
|
||||
Welcome to OpenERP Web's documentation!
|
||||
=======================================
|
||||
OpenERP Web Reference Documentation
|
||||
===================================
|
||||
|
||||
See also the `OpenERP Web Training`_.
|
||||
|
||||
.. _OpenERP Web Training: https://doc.openerp.com/trunk/training/
|
||||
|
||||
Basics
|
||||
------
|
||||
|
|
|
@ -61,18 +61,19 @@ instance.web.Query = instance.web.Class.extend({
|
|||
},
|
||||
_execute: function () {
|
||||
var self = this;
|
||||
return this._model.call('search_read', {
|
||||
return instance.session.rpc('/web/dataset/search_read', {
|
||||
model: this._model.name,
|
||||
fields: this._fields || false,
|
||||
domain: instance.web.pyeval.eval('domains',
|
||||
[this._model.domain(this._filter)]),
|
||||
fields: this._fields || false,
|
||||
offset: this._offset,
|
||||
limit: this._limit,
|
||||
order: instance.web.serialize_sort(this._order_by),
|
||||
context: instance.web.pyeval.eval('contexts',
|
||||
[this._model.context(this._context)]),
|
||||
offset: this._offset,
|
||||
limit: this._limit,
|
||||
sort: instance.web.serialize_sort(this._order_by)
|
||||
}).then(function (results) {
|
||||
self._count = results.length;
|
||||
return results;
|
||||
return results.records;
|
||||
}, null);
|
||||
},
|
||||
/**
|
||||
|
@ -450,7 +451,7 @@ instance.web.DataSet = instance.web.Class.extend(instance.web.PropertiesMixin,
|
|||
// TODO: reorder results to match ids list
|
||||
return this._model.call('read',
|
||||
[ids, fields || false],
|
||||
{context: this._model.context(options.context)});
|
||||
{context: this.get_context(options.context)});
|
||||
},
|
||||
/**
|
||||
* Read a slice of the records represented by this DataSet, based on its
|
||||
|
|
|
@ -166,13 +166,13 @@ instance.web.TreeView = instance.web.View.extend(/** @lends instance.web.TreeVie
|
|||
var is_loaded = 0,
|
||||
$this = $(this),
|
||||
record_id = $this.data('id'),
|
||||
parent_id = $this.data('parent-id'),
|
||||
row_parent_id = $this.data('row-parent-id'),
|
||||
record = self.records[record_id],
|
||||
children_ids = record[self.children_field];
|
||||
|
||||
_(children_ids).each(function(childid) {
|
||||
if (self.$el.find('[id=treerow_' + childid + '][data-parent-id='+ record_id +']').length ) {
|
||||
if (self.$el.find('[id=treerow_' + childid + '][data-parent-id='+ record_id +']').is(':hidden')) {
|
||||
if (self.$el.find('[id=treerow_' + childid + '][data-row-parent-id='+ record_id +']').length ) {
|
||||
if (self.$el.find('[id=treerow_' + childid + '][data-row-parent-id='+ record_id +']').is(':hidden')) {
|
||||
is_loaded = -1;
|
||||
} else {
|
||||
is_loaded++;
|
||||
|
@ -196,7 +196,6 @@ instance.web.TreeView = instance.web.View.extend(/** @lends instance.web.TreeVie
|
|||
_(records).each(function (record) {
|
||||
self.records[record.id] = record;
|
||||
});
|
||||
|
||||
var $curr_node = self.$el.find('#treerow_' + id);
|
||||
var children_rows = QWeb.render('TreeView.rows', {
|
||||
'records': records,
|
||||
|
@ -206,7 +205,7 @@ instance.web.TreeView = instance.web.View.extend(/** @lends instance.web.TreeVie
|
|||
'level': $curr_node.data('level') || 0,
|
||||
'render': instance.web.format_value,
|
||||
'color_for': self.color_for,
|
||||
'parent_id': id
|
||||
'row_parent_id': id
|
||||
});
|
||||
if ($curr_node.length) {
|
||||
$curr_node.addClass('oe_open');
|
||||
|
@ -250,7 +249,7 @@ instance.web.TreeView = instance.web.View.extend(/** @lends instance.web.TreeVie
|
|||
showcontent: function (curnode,record_id, show) {
|
||||
curnode.parent('tr').toggleClass('oe_open', show);
|
||||
_(this.records[record_id][this.children_field]).each(function (child_id) {
|
||||
var $child_row = this.$el.find('[id=treerow_' + child_id + '][data-parent-id='+ curnode.data('id') +']');
|
||||
var $child_row = this.$el.find('[id=treerow_' + child_id + '][data-row-parent-id='+ curnode.data('id') +']');
|
||||
if ($child_row.hasClass('oe_open')) {
|
||||
$child_row.toggleClass('oe_open',show);
|
||||
this.showcontent($child_row, child_id, false);
|
||||
|
|
|
@ -685,7 +685,7 @@
|
|||
t-foreach="records" t-as="record"
|
||||
t-att-id="'treerow_' + record.id"
|
||||
t-att-data-id="record.id" t-att-data-level="level + 1"
|
||||
t-att-data-parent-id="parent_id">
|
||||
t-att-data-row-parent-id="row_parent_id">
|
||||
<t t-set="children" t-value="record[children_field]"/>
|
||||
<t t-set="class" t-value="children and children.length ? 'treeview-tr' : 'treeview-td'"/>
|
||||
<t t-set="rank" t-value="'oe-treeview-first'"/>
|
||||
|
|
|
@ -18,16 +18,16 @@ openerp.testing.section('data.model.group_by', {
|
|||
"should have single grouping field");
|
||||
return group_result;
|
||||
});
|
||||
mock('foo:search_read', function (args, kwargs) {
|
||||
deepEqual(kwargs.domain, [['bar', '=', 3]],
|
||||
mock('/web/dataset/search_read', function (args) {
|
||||
deepEqual(args.params.domain, [['bar', '=', 3]],
|
||||
"should have domain matching that of group_by result");
|
||||
return [
|
||||
return {records: [
|
||||
{bar: 3, id: 1},
|
||||
{bar: 3, id: 2},
|
||||
{bar: 3, id: 4},
|
||||
{bar: 3, id: 8},
|
||||
{bar: 3, id: 16}
|
||||
];
|
||||
], length: 5};
|
||||
});
|
||||
|
||||
return m.query().group_by('bar')
|
||||
|
|
Loading…
Reference in New Issue