summaryrefslogtreecommitdiff
path: root/addons/web_calendar/static/src
diff options
context:
space:
mode:
authorNicolas Lempereur <nle@odoo.com>2016-02-11 15:52:18 +0100
committerNicolas Lempereur <nle@odoo.com>2016-02-11 16:34:33 +0100
commit924c2dee21fffec7eb2df68cbe703238afc9b438 (patch)
treeebf76725d1f535ef88bd1563c5f750a73012b3e0 /addons/web_calendar/static/src
parentfb7bb95a113033d716c1f4620b5f16497dda99c4 (diff)
[FIX] {web_,}calendar: order contact sidebar
In 22051dc, the sidebar contacts of the calendar were ordered, this does it in another way to solve several issues when selecting filters.
Diffstat (limited to 'addons/web_calendar/static/src')
-rw-r--r--addons/web_calendar/static/src/js/web_calendar.js9
-rw-r--r--addons/web_calendar/static/src/js/widgets.js2
2 files changed, 10 insertions, 1 deletions
diff --git a/addons/web_calendar/static/src/js/web_calendar.js b/addons/web_calendar/static/src/js/web_calendar.js
index 69e038f507d..9716dfdc013 100644
--- a/addons/web_calendar/static/src/js/web_calendar.js
+++ b/addons/web_calendar/static/src/js/web_calendar.js
@@ -834,6 +834,15 @@ var CalendarView = View.extend({
},
/**
+ * Get all_filters ordered by label
+ */
+ get_all_filters_ordered: function() {
+ return _.values(this.all_filters).sort(function(f1,f2) {
+ return _.string.naturalCmp(f1.label, f2.label);
+ });
+ },
+
+ /**
* Updates record identified by ``id`` with values in object ``data``
*/
update_record: function(id, data) {
diff --git a/addons/web_calendar/static/src/js/widgets.js b/addons/web_calendar/static/src/js/widgets.js
index e5d0f5ae4b8..39324d3caf0 100644
--- a/addons/web_calendar/static/src/js/widgets.js
+++ b/addons/web_calendar/static/src/js/widgets.js
@@ -222,7 +222,7 @@ var SidebarFilter = Widget.extend({
var self = this;
if (!filters) {
filters = [];
- _.forEach(self.view.all_filters, function(o) {
+ _.forEach(self.view.get_all_filters_ordered(), function(o) {
if (_.contains(self.view.now_filter_ids, o.value)) {
filters.push(o);
}