mirror of https://github.com/OCA/web.git
Merge pull request #122 from hbrunn/7.0-advanced_filters-public
[IMP] let user decide if a filter is private when saving itpull/225/head
commit
91abe98605
|
@ -60,6 +60,11 @@ msgstr "Testen %s"
|
|||
msgid "or"
|
||||
msgstr "or"
|
||||
|
||||
#. module: web_advanced_filters
|
||||
#: field:ir.filters,save_as_public:0
|
||||
msgid "Share with all users"
|
||||
msgstr "Deel met alle gebruikers"
|
||||
|
||||
#. module: web_advanced_filters
|
||||
#: field:ir.filters,complement_filter_ids:0
|
||||
msgid "Remove result of filters"
|
||||
|
|
|
@ -164,11 +164,18 @@ class IrFilters(Model):
|
|||
_evaluate_get, type='boolean', multi='evaluate',
|
||||
string='Always evaluate this filter before using it',
|
||||
help='This is necessary if this filter contains x2many fields with'
|
||||
'_auto_join activated')
|
||||
'_auto_join activated'),
|
||||
'save_as_public': fields.function(
|
||||
lambda self, cr, uid, ids, *args, **kwargs:
|
||||
dict((i, False) for i in ids),
|
||||
fnct_inv=lambda *args, **kwargs: None,
|
||||
type='boolean',
|
||||
string='Share with all users'),
|
||||
}
|
||||
|
||||
_defaults = {
|
||||
'active': True,
|
||||
'save_as_public': False,
|
||||
}
|
||||
|
||||
def _evaluate(self, cr, uid, ids, context=None):
|
||||
|
@ -245,3 +252,8 @@ class IrFilters(Model):
|
|||
"update ir_module_module set state='to remove' where "
|
||||
"name='advanced_filters' and state not in "
|
||||
"('uninstalled', 'to remove')")
|
||||
|
||||
def create(self, cr, uid, values, context=None):
|
||||
values.setdefault(
|
||||
'user_id', False if values.get('save_as_public') else uid)
|
||||
return super(IrFilters, self).create(cr, uid, values, context=context)
|
||||
|
|
|
@ -171,6 +171,7 @@ openerp.web_advanced_filters = function(instance)
|
|||
default_model_id: self.dataset._model.name,
|
||||
default_domain: JSON.stringify(search.domain),
|
||||
default_context: JSON.stringify(ctx),
|
||||
default_user_id: JSON.stringify(false),
|
||||
form_view_ref: 'web_advanced_filters.form_ir_filters_save_new',
|
||||
},
|
||||
},
|
||||
|
@ -201,6 +202,7 @@ openerp.web_advanced_filters = function(instance)
|
|||
]
|
||||
),
|
||||
default_context: JSON.stringify({}),
|
||||
default_user_id: JSON.stringify(false),
|
||||
form_view_ref: 'web_advanced_filters.form_ir_filters_save_new',
|
||||
},
|
||||
},
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
<group>
|
||||
<field name="name" />
|
||||
<field name="is_default"/>
|
||||
<field name="save_as_public" />
|
||||
</group>
|
||||
<footer>
|
||||
<button class="oe_highlight" type="object" name="button_save" string="Save" />
|
||||
|
|
|
@ -62,7 +62,7 @@ class IrFiltersCombineWithExisting(TransientModel):
|
|||
'domain': str(domain),
|
||||
'context': this.context,
|
||||
'model_id': this.model,
|
||||
'user_id': uid,
|
||||
'user_id': this.filter_id.user_id.id or False,
|
||||
})],
|
||||
})
|
||||
elif this.action == 'complement':
|
||||
|
@ -81,7 +81,7 @@ class IrFiltersCombineWithExisting(TransientModel):
|
|||
'domain': str(domain),
|
||||
'context': this.context,
|
||||
'model_id': this.model,
|
||||
'user_id': uid,
|
||||
'user_id': this.filter_id.user_id.id or False,
|
||||
})],
|
||||
})
|
||||
|
||||
|
|
Loading…
Reference in New Issue