openerp-dev-web team mailing list archive
-
openerp-dev-web team
-
Mailing list archive
-
Message #01191
[Merge] lp:~openerp-dev/openobject-client-web/listview_invisible into lp:openobject-client-web
sma (Open ERP) has proposed merging lp:~openerp-dev/openobject-client-web/listview_invisible into lp:openobject-client-web.
Requested reviews:
OpenERP SA's Web Client R&D (openerp-dev-web)
- Support invisible for List view.
- Example: <field name="journal_id" invisible="1">
- It fixed the Bug #681688.
--
https://code.launchpad.net/~openerp-dev/openobject-client-web/listview_invisible/+merge/43494
Your team OpenERP SA's Web Client R&D is requested to review the proposed merge of lp:~openerp-dev/openobject-client-web/listview_invisible into lp:openobject-client-web.
=== modified file 'addons/openerp/widgets/form/_form.py'
--- addons/openerp/widgets/form/_form.py 2010-12-09 14:36:14 +0000
+++ addons/openerp/widgets/form/_form.py 2010-12-13 06:16:13 +0000
@@ -616,8 +616,7 @@
self.widget = get_widget(kind)(**attrs)
self.validator = self.widget.validator
self.relation = attrs.get('relation') or None
- if self.readonly:
- self.editable = self.readonly
+ self.editable = self.readonly
if 'field_id' not in attrs:
self.field_id = self.name
=== modified file 'addons/openerp/widgets/form/templates/hidden.mako'
--- addons/openerp/widgets/form/templates/hidden.mako 2010-10-27 09:36:11 +0000
+++ addons/openerp/widgets/form/templates/hidden.mako 2010-12-13 06:16:13 +0000
@@ -1,2 +1,2 @@
-<input type="hidden" name="${name}" class="${css_class}" readonly="${editable}"
+<input type="hidden" name="${name}" class="${css_class}" value="${value}"
${py.attrs(attrs, id=field_id, kind=kind, relation=relation, value=value)}/>
=== modified file 'addons/openerp/widgets/listgrid.py'
--- addons/openerp/widgets/listgrid.py 2010-12-03 10:33:14 +0000
+++ addons/openerp/widgets/listgrid.py 2010-12-13 06:16:13 +0000
@@ -203,7 +203,8 @@
self.headers, self.hiddens, self.data, self.field_total, self.buttons = self.parse(root, fields, data)
for k, v in self.field_total.items():
- self.field_total[k][1] = self.do_sum(self.data, k)
+ if(len([test[0] for test in self.hiddens if test[0] == k])) <= 0:
+ self.field_total[k][1] = self.do_sum(self.data, k)
self.columns = len(self.headers)
@@ -367,7 +368,6 @@
if invisible:
hiddens += [(name, fields[name])]
-# continue
if 'sum' in attrs:
field_total[name] = [attrs['sum'], 0.0]
@@ -375,7 +375,11 @@
for i, row in enumerate(data):
row_value = values[i]
- cell = CELLTYPES[kind](value=row_value.get(name, False), **fields[name])
+ if invisible:
+ cell = form.Hidden(**fields[name])
+ cell.set_value(row_value.get(name, False))
+ else:
+ cell = CELLTYPES[kind](value=row_value.get(name, False), **fields[name])
for color, expr in self.colors.items():
try:
@@ -573,7 +577,7 @@
self.btype = attrs.get('special', attrs.get('type', 'workflow'))
self.icon = attrs.get('icon')
-
+ self.attrs = attrs.get('attrs', '{}')
if self.icon:
self.icon = icons.get_icon(self.icon)
@@ -600,6 +604,10 @@
return dict(id=id, visible=visible)
+ def update_params(self, d):
+ super(Button, self).update_params(d)
+ d.attrs['attrs']=self.attrs
+
CELLTYPES = {
'char':Char,
=== modified file 'addons/openerp/widgets/templates/listgrid/boolean.mako'
--- addons/openerp/widgets/templates/listgrid/boolean.mako 2010-12-02 13:30:21 +0000
+++ addons/openerp/widgets/templates/listgrid/boolean.mako 2010-12-13 06:16:13 +0000
@@ -1,1 +1,1 @@
-<input type="checkbox" kind="${kind}" class="checkbox" readonly="readonly" disabled="disabled" ${py.checker(val)} value="${val}">
+<input type="checkbox" name="${name}" id="${name}" kind="${kind}" class="checkbox" readonly="readonly" disabled="disabled" ${py.checker(val)} value="${val}">
=== modified file 'addons/openerp/widgets/templates/listgrid/button.mako'
--- addons/openerp/widgets/templates/listgrid/button.mako 2010-12-02 12:14:31 +0000
+++ addons/openerp/widgets/templates/listgrid/button.mako 2010-12-13 06:16:13 +0000
@@ -1,13 +1,13 @@
% if visible:
% if icon:
- <img height="16" width="16" class="listImage" src="${icon}" title="${help}" context="${ctx}" ${py.attrs(attrs)}
+ <img height="16" width="16" name="${name}" id="${name}" class="listImage" src="${icon}" title="${help}" context="${ctx}" ${py.attrs(attrs)}
onclick="new ListView('${parent_grid}').onButtonClick('${name}', '${btype}', ${id}, '${confirm}', getNodeAttribute(this, 'context'))"/>
% else:
- <a class="button-b" href="javascript: void(0)" ${py.attrs(attrs, context=ctx)} title="${help}"
+ <a class="button-b" name="${name}" id="${name}" href="javascript: void(0)" ${py.attrs(attrs, context=ctx)} title="${help}"
onclick="new ListView('${parent_grid}').onButtonClick('${name}', '${btype}', ${id}, '${confirm}', getNodeAttribute(this, 'context'))">
${string}
</a>
% endif
% elif not icon:
- <span> </span>
+ <span><img style="display:none" name="${name}" id="${name}" height="16" width="16" class="listImage" src="${icon}" title="${help}" context="${ctx}" ${py.attrs(attrs)} onclick="new ListView('${parent_grid}').onButtonClick('${name}', '${btype}', ${id}, '${confirm}', getNodeAttribute(this, 'context'))"/></span>
% endif
=== modified file 'addons/openerp/widgets/templates/listgrid/char.mako'
--- addons/openerp/widgets/templates/listgrid/char.mako 2010-12-02 12:14:31 +0000
+++ addons/openerp/widgets/templates/listgrid/char.mako 2010-12-13 06:16:13 +0000
@@ -1,1 +1,1 @@
-<span>${text}</span>
+<span name="${name}" id="${name}" value="${value}">${text}</span>
=== modified file 'addons/openerp/widgets/templates/listgrid/listgrid.mako'
--- addons/openerp/widgets/templates/listgrid/listgrid.mako 2010-12-03 13:18:53 +0000
+++ addons/openerp/widgets/templates/listgrid/listgrid.mako 2010-12-13 06:16:13 +0000
@@ -67,6 +67,10 @@
% endif
</td>
% endif
+ % for field, field_attrs in hiddens:
+ ${data[field].display()}
+ % endfor
+
% if editable:
<td class="grid-cell selector">
% if not editors:
Follow ups