X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=plugins%2Ffilter_status%2Fstatic%2Fjs%2Ffilter_status.js;h=676d3ee12674c22b7d5f76fb39b9f2e45b553a1f;hb=79ffdb8b0d0fe78e5d5b8491ffe8fdd940943621;hp=3bcd15c23ccd13d72163a9b8e78ab4b5c471c645;hpb=4f924a3d5b8d6ca7cf022e15900369c7a0c4ce7e;p=myslice.git diff --git a/plugins/filter_status/static/js/filter_status.js b/plugins/filter_status/static/js/filter_status.js index 3bcd15c2..676d3ee1 100644 --- a/plugins/filter_status/static/js/filter_status.js +++ b/plugins/filter_status/static/js/filter_status.js @@ -28,6 +28,7 @@ /* Setup query and record handlers */ this.listen_query(options.query_uuid); + this.listen_query(options.query_lease_uuid, 'leases'); /* Setup click handlers */ this.elts('list-group-item').click({'instance': this}, this._on_click); @@ -66,6 +67,11 @@ // XXX }, + on_leases_field_state_changed: function(data) + { + console.log('leases_field_state_changed'); + this.on_field_state_changed(data); + }, on_field_state_changed: function(data) { var query_ext; @@ -115,17 +121,22 @@ filter_status = this.dataset['status']; self.select_tab(filter_status); + // manifoldapi/static/js/manifold.js + // See this.apply_filters + // ... and communicate the appropriate filters to the manager // NOTE: we use the manifold namespace for internal filters - if (self.prev_filter_status) - manifold.raise_event(self.options.query_uuid, FILTER_REMOVED, self.prev_filter_status); - - // XXX The datatables will be refreshed twice ! - if (filter_status != 'all') { - // No filter for 'all' - var filter = ['manifold:status', '==', filter_status]; - manifold.raise_event(self.options.query_uuid, FILTER_ADDED, filter); + if (self.prev_filter_status) { + var filter = ['manifold:status', '==', self.prev_filter_status]; + manifold.raise_event(self.options.query_uuid, FILTER_REMOVED, filter); } + // XXX The datatables will be refreshed twice ! + //if (filter_status != 'all') { + // No filter for 'all' + // Changed since we have available/unavailable status + var filter = ['manifold:status', '==', filter_status]; + manifold.raise_event(self.options.query_uuid, FILTER_ADDED, filter); + //} self.prev_filter_status = filter_status; },