diff options
| author | niv-openerp <nicolas.vanhoren@openerp.com> | 2011-05-19 19:00:41 +0200 |
|---|---|---|
| committer | niv-openerp <nicolas.vanhoren@openerp.com> | 2011-05-19 19:00:41 +0200 |
| commit | a15401a72202e30f41eba711cd31b2a334b6dbdc (patch) | |
| tree | 01cb483ab063b6e78d353d8dcc493de0ac607629 /addons/base/static/src | |
| parent | 0ce128b59ea3dff85100c306c60b50ec7d27b6bd (diff) | |
[IMP] added selection in custom filters.
bzr revid: nicolas.vanhoren@openerp.com-20110519170041-kgkio0hp6nt6u4bn
Diffstat (limited to 'addons/base/static/src')
| -rw-r--r-- | addons/base/static/src/js/search.js | 33 | ||||
| -rw-r--r-- | addons/base/static/src/xml/base.xml | 9 |
2 files changed, 39 insertions, 3 deletions
diff --git a/addons/base/static/src/js/search.js b/addons/base/static/src/js/search.js index 8d22a068e39..4ebf1238dd3 100644 --- a/addons/base/static/src/js/search.js +++ b/addons/base/static/src/js/search.js @@ -830,6 +830,9 @@ openerp.base.search.ExtendedSearchProposition = openerp.base.BaseWidget.extend({ } this.value = new (openerp.base.search.custom_filters.get_object(type)) (this); + if(this.value.set_field) { + this.value.set_field(field); + } _.each(this.value.operators, function(operator) { var option = jQuery('<option>', {value: operator.value}) .text(operator.text) @@ -951,6 +954,31 @@ openerp.base.search.ExtendedSearchProposition.Float = openerp.base.BaseWidget.ex return val2; } }); +openerp.base.search.ExtendedSearchProposition.Selection = openerp.base.BaseWidget.extend({ + template: 'SearchView.extended_search.proposition.selection', + identifier_prefix: 'extended-search-proposition-selection', + operators: [ + {value: "=", text: "is"}, + {value: "!=", text: "is not"} + ], + set_field: function(field) { + this.field = field; + }, + get_value: function() { + return this.$element.val(); + } +}); +openerp.base.search.ExtendedSearchProposition.Boolean = openerp.base.BaseWidget.extend({ + template: 'SearchView.extended_search.proposition.boolean', + identifier_prefix: 'extended-search-proposition-boolean', + operators: [ + {value: "=", text: "is true"}, + {value: "!=", text: "is false"} + ], + get_value: function() { + return true; + } +}); openerp.base.search.custom_filters = new openerp.base.Registry({ 'char': 'openerp.base.search.ExtendedSearchProposition.Char', @@ -963,9 +991,8 @@ openerp.base.search.custom_filters = new openerp.base.Registry({ 'date': 'openerp.base.search.ExtendedSearchProposition.Date', 'integer': 'openerp.base.search.ExtendedSearchProposition.Integer', 'float': 'openerp.base.search.ExtendedSearchProposition.Float', - - 'selection': 'openerp.base.search.ExtendedSearchProposition.Char', - 'boolean': 'openerp.base.search.ExtendedSearchProposition.Char', + 'boolean': 'openerp.base.search.ExtendedSearchProposition.Boolean', + 'selection': 'openerp.base.search.ExtendedSearchProposition.Selection' }); }; diff --git a/addons/base/static/src/xml/base.xml b/addons/base/static/src/xml/base.xml index b99e7adf10d..b9b3068257b 100644 --- a/addons/base/static/src/xml/base.xml +++ b/addons/base/static/src/xml/base.xml @@ -587,6 +587,15 @@ <t t-name="SearchView.extended_search.proposition.float"> <input type="number" t-att-id="element_id" class="field_float" step="0.01"/> </t> +<t t-name="SearchView.extended_search.proposition.boolean"> +</t> +<t t-name="SearchView.extended_search.proposition.selection"> + <select t-att-id="element_id"> + <t t-foreach="field.selection" t-as="element"> + <option t-att-value="element[0]"><t t-esc="element[1]"/></option> + </t> + </select> +</t> <t t-name="ViewManager.sidebar"> <div t-att-id="element_id" class="sidebar-main-div closed-sidebar"> |
