summaryrefslogtreecommitdiff
path: root/addons/web/static/src
diff options
context:
space:
mode:
authorXavier Morel <xmo@openerp.com>2012-05-11 16:32:25 +0200
committerXavier Morel <xmo@openerp.com>2012-05-11 16:32:25 +0200
commitc20d7cfb47bfbebfac6a8c6322a74b05a8a5c0a1 (patch)
treecf5016119e88067cf117df2348483558b26152dc /addons/web/static/src
parent3ecf0e1ae19f9b86251bd0f20154df6a1ad3d2f7 (diff)
[IMP] unify open/close behavior of advanced and custom filters, close custom after creating
bzr revid: xmo@openerp.com-20120511143225-472ineg91e111tvv
Diffstat (limited to 'addons/web/static/src')
-rw-r--r--addons/web/static/src/css/base.css25
-rw-r--r--addons/web/static/src/css/base.sass45
-rw-r--r--addons/web/static/src/js/search.js13
-rw-r--r--addons/web/static/src/xml/base.xml12
4 files changed, 54 insertions, 41 deletions
diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css
index 6d2287aa1c0..11095d7baf1 100644
--- a/addons/web/static/src/css/base.css
+++ b/addons/web/static/src/css/base.css
@@ -1183,6 +1183,13 @@
border-top: none;
margin: 0;
}
+.openerp .oe_searchview .oe_searchview_drawer h4, .openerp .oe_searchview .oe_searchview_drawer h4 * {
+ margin: 0;
+ cursor: pointer;
+}
+.openerp .oe_searchview .oe_searchview_drawer h4:before {
+ content: "▸ ";
+}
.openerp .oe_searchview .oe_searchview_drawer button, .openerp .oe_searchview .oe_searchview_drawer .button {
border: none;
background: white;
@@ -1224,24 +1231,20 @@
.openerp .oe_searchview .oe_searchview_drawer .oe_searchview_filters li:hover {
background-color: #f0f0fa;
}
-.openerp .oe_searchview .oe_searchview_drawer .oe_searchview_custom .oe_searchview_custom_save {
+.openerp .oe_searchview .oe_searchview_drawer .oe_searchview_custom form {
+ display: none;
+}
+.openerp .oe_searchview .oe_searchview_drawer .oe_searchview_custom form button {
font-size: 1px;
letter-spacing: -1px;
color: transparent;
}
-.openerp .oe_searchview .oe_searchview_drawer .oe_searchview_custom .oe_searchview_custom_save:before {
+.openerp .oe_searchview .oe_searchview_drawer .oe_searchview_custom form button:before {
font-family: "mnmliconsRegular";
content: "S";
font-size: 20px;
color: #404040;
}
-.openerp .oe_searchview .oe_searchview_drawer .oe_searchview_advanced h4 {
- margin: 0;
- cursor: pointer;
-}
-.openerp .oe_searchview .oe_searchview_drawer .oe_searchview_advanced h4:before {
- content: "▸ ";
-}
.openerp .oe_searchview .oe_searchview_drawer .oe_searchview_advanced form {
display: none;
}
@@ -1259,10 +1262,10 @@
list-style: none;
margin: 0;
}
-.openerp .oe_searchview .oe_searchview_drawer .oe_searchview_advanced.oe_opened h4:before {
+.openerp .oe_searchview .oe_searchview_drawer .oe_opened h4:before {
content: "▾ ";
}
-.openerp .oe_searchview .oe_searchview_drawer .oe_searchview_advanced.oe_opened form {
+.openerp .oe_searchview .oe_searchview_drawer .oe_opened form {
display: block;
}
.openerp .oe_view_topbar {
diff --git a/addons/web/static/src/css/base.sass b/addons/web/static/src/css/base.sass
index cf35624d4b1..c1824427f58 100644
--- a/addons/web/static/src/css/base.sass
+++ b/addons/web/static/src/css/base.sass
@@ -939,6 +939,13 @@ $colour4: #8a89ba
border-top: none
margin: 0
+ h4, h4 *
+ margin: 0
+ cursor: pointer
+
+ h4:before
+ content: "▸ "
+
button, .button
border: none
background: white
@@ -975,24 +982,20 @@ $colour4: #8a89ba
background-color: #f0f0fa
.oe_searchview_custom
- .oe_searchview_custom_save
- font-size: 1px
- letter-spacing: -1px
- color: transparent
- &:before
- font-family: "mnmliconsRegular"
- content: "S"
- font-size: 20px
- color: #404040
-
- .oe_searchview_advanced
- h4
- margin: 0
- cursor: pointer
+ form
+ display: none
- h4:before
- content: "▸ "
+ button
+ font-size: 1px
+ letter-spacing: -1px
+ color: transparent
+ &:before
+ font-family: "mnmliconsRegular"
+ content: "S"
+ font-size: 20px
+ color: #404040
+ .oe_searchview_advanced
form
display: none
@@ -1008,11 +1011,11 @@ $colour4: #8a89ba
list-style: none
margin: 0
- &.oe_opened
- h4:before
- content: "▾ "
- form
- display: block
+ .oe_opened
+ h4:before
+ content: "▾ "
+ form
+ display: block
// }}}
// View.topbar {{{
.oe_view_topbar
diff --git a/addons/web/static/src/js/search.js b/addons/web/static/src/js/search.js
index 2ec0a79a3cd..bce4770339b 100644
--- a/addons/web/static/src/js/search.js
+++ b/addons/web/static/src/js/search.js
@@ -1483,9 +1483,13 @@ instance.web.search.CustomFilters = instance.web.search.Input.extend({
template: 'SearchView.CustomFilters',
_in_drawer: true,
start: function () {
+ var self = this;
this.model = new instance.web.Model('ir.filters');
this.filters = {};
this.$element.on('submit', 'form', this.proxy('save_current'));
+ this.$element.on('click', 'h4', function () {
+ self.$element.toggleClass('oe_opened');
+ });
// FIXME: local eval of domain and context to get rid of special endpoint
return this.rpc('/web/searchview/get_filters', {
model: this.view.model
@@ -1508,7 +1512,8 @@ instance.web.search.CustomFilters = instance.web.search.Input.extend({
$('<button type="button">').appendTo($filter)
.text(_t("Delete"))
- .click(function () {
+ .click(function (e) {
+ e.stopPropagation();
self.model.call('unlink', [id]).then(function () {
$filter.remove();
});
@@ -1534,7 +1539,7 @@ instance.web.search.CustomFilters = instance.web.search.Input.extend({
save_current: function () {
var self = this;
var $name = this.$element.find('input:first');
- var private_filter = this.$element.find('input:last').prop('checked');
+ var private_filter = !this.$element.find('input:last').prop('checked');
var search = this.view.build_search_data();
this.rpc('/web/session/eval_domain_and_context', {
@@ -1558,7 +1563,9 @@ instance.web.search.CustomFilters = instance.web.search.Input.extend({
filter.id = id;
}
self.append_filter(filter);
- $name.val('');
+ self.$element
+ .removeClass('oe_opened')
+ .find('form')[0].reset();
});
});
return false;
diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml
index 12db7a4a822..f123710edb6 100644
--- a/addons/web/static/src/xml/base.xml
+++ b/addons/web/static/src/xml/base.xml
@@ -1472,13 +1472,13 @@
</div>
<div t-name="SearchView.CustomFilters" class="oe_searchview_custom">
<ul class="oe_searchview_custom_list"/>
- <form class="oe_searchview_custom_closed">
- <label for="oe_searchview_custom_input" class="oe_searchview_custom_title">
- Save current search</label>
+ <h4 class="oe_searchview_custom_title">
+ <label for="oe_searchview_custom_input">Save search</label></h4>
+ <form>
<input id="oe_searchview_custom_input"/>
- <label for="oe_searchview_custom_private">Private: </label>
- <input id="oe_searchview_custom_private" type="checkbox" checked="checked"/>
- <button class="oe_searchview_custom_save">Save</button>
+ <button>Save</button><br/>
+ <label for="oe_searchview_custom_public">Share with all users:</label>
+ <input id="oe_searchview_custom_public" type="checkbox"/>
</form>
</div>
<div t-name="SearchView.advanced" class="oe_searchview_advanced">