From d539f6aebf4737e635fb630f6474155caf227502 Mon Sep 17 00:00:00 2001 From: rolux Date: Thu, 10 Nov 2011 10:30:39 +0000 Subject: [PATCH] fix bugs where ui find and the filter query would be the same object, keeping changes from triggering --- static/js/pandora/filterDialog.js | 9 --------- static/js/pandora/filterForm.js | 6 +++--- static/js/pandora/findElement.js | 5 +++-- static/js/pandora/mainPanel.js | 1 + 4 files changed, 7 insertions(+), 14 deletions(-) diff --git a/static/js/pandora/filterDialog.js b/static/js/pandora/filterDialog.js index a77941495..0b125dc76 100644 --- a/static/js/pandora/filterDialog.js +++ b/static/js/pandora/filterDialog.js @@ -3,15 +3,6 @@ pandora.ui.filterDialog = function(list) { var that = Ox.Dialog({ buttons: [ - Ox.Button({ - id: 'debug', - title: 'Debug', - }) - .bindEvent({ - click: function() { - alert(JSON.stringify(pandora.$ui.filterForm.options('query'))); - } - }), /* Ox.Button({ id: 'cancel', diff --git a/static/js/pandora/filterForm.js b/static/js/pandora/filterForm.js index 86d8c741e..c8ac489ca 100644 --- a/static/js/pandora/filterForm.js +++ b/static/js/pandora/filterForm.js @@ -24,7 +24,7 @@ pandora.ui.filterForm = function(list) { sort: pandora.user.ui.listSort, view: pandora.user.ui.listView }, - query: list ? list.query : pandora.user.ui.find, + query: Ox.clone(list ? list.query : pandora.user.ui.find, true), sortKeys: pandora.site.sortKeys, viewKeys: pandora.site.listViews }) @@ -51,8 +51,8 @@ pandora.ui.filterForm = function(list) { }); }); } else { - pandora.UI.set({find: data.query}); - //pandora.URL.replace(); + Ox.Log('FIND', 'change form', data.query, pandora.user.ui.find) + pandora.UI.set({find: Ox.clone(data.query, true)}); } } }); diff --git a/static/js/pandora/findElement.js b/static/js/pandora/findElement.js index 4986c57f1..3a67fec83 100644 --- a/static/js/pandora/findElement.js +++ b/static/js/pandora/findElement.js @@ -19,7 +19,7 @@ pandora.ui.findElement = function() { var key = data.selected[0].id; pandora.$ui.findInput.options({ autocomplete: autocompleteFunction() - }).focus(); + }).focusInput(); } }), ] : [], [ @@ -56,10 +56,11 @@ pandora.ui.findElement = function() { pandora.$ui.filterDialog = pandora.ui.filterDialog() )).open(); } else { + Ox.Log('FIND', pandora.$ui.findInput.value()) pandora.$ui.findInput.options({ autocomplete: autocompleteFunction(), placeholder: '' - }).focus(); + }).focusInput(); } } }), diff --git a/static/js/pandora/mainPanel.js b/static/js/pandora/mainPanel.js index c50b292dc..ae4c4b3b5 100644 --- a/static/js/pandora/mainPanel.js +++ b/static/js/pandora/mainPanel.js @@ -21,6 +21,7 @@ pandora.ui.mainPanel = function() { .bindEvent({ pandora_find: function() { var previousUI = pandora.UI.getPrevious(); + Ox.Log('FIND', 'handled in mainPanel', previousUI.item, previousUI._list) if (!previousUI.item && pandora.user.ui._list == previousUI._list) { if (['map', 'calendar'].indexOf(pandora.user.ui.listView) > -1) { pandora.$ui.contentPanel.replaceElement(1,