diff options
author | John Christopher Anderson <jchris@apache.org> | 2009-01-07 21:37:38 +0000 |
---|---|---|
committer | John Christopher Anderson <jchris@apache.org> | 2009-01-07 21:37:38 +0000 |
commit | 7f975737b0b2f84445bae6c402786b2e682db74a (patch) | |
tree | b6b820b9be6cbf389b5a7e87a8a308ddcd544be9 /share | |
parent | b4b3f972483c20f17266987d94ae3b32ed00aa2d (diff) |
backing out r732413 - Futon browse history, due to Safari incompatibility
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@732510 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'share')
-rw-r--r-- | share/www/browse/database.html | 3 | ||||
-rw-r--r-- | share/www/browse/document.html | 3 | ||||
-rw-r--r-- | share/www/index.html | 21 | ||||
-rw-r--r-- | share/www/script/jquery.history.js | 150 |
4 files changed, 2 insertions, 175 deletions
diff --git a/share/www/browse/database.html b/share/www/browse/database.html index a3c08804..6b12ed7d 100644 --- a/share/www/browse/database.html +++ b/share/www/browse/database.html @@ -103,9 +103,6 @@ specific language governing permissions and limitations under the License. $("#toolbar button.add").click(page.addDocument); $("#toolbar button.compact").click(page.compactDatabase); $("#toolbar button.delete").click(page.deleteDatabase); - - // Update title - document.title = "Browse Database " + page.db.name; }); </script> </head> diff --git a/share/www/browse/document.html b/share/www/browse/document.html index f4f6fff9..09136533 100644 --- a/share/www/browse/document.html +++ b/share/www/browse/document.html @@ -64,9 +64,6 @@ specific language governing permissions and limitations under the License. $("#toolbar button.add").click(page.addField); $("#toolbar button.load").click(page.uploadAttachment); $("#toolbar button.delete").click(page.deleteDocument); - - // Update the title - document.title = "View Document " + page.docId; }); </script> </head> diff --git a/share/www/index.html b/share/www/index.html index a20754b8..37217384 100644 --- a/share/www/index.html +++ b/share/www/index.html @@ -30,8 +30,7 @@ specific language governing permissions and limitations under the License. <script src="script/jquery.js?1.2.6"></script> <script src="script/jquery.cookies.js?0.8.0"></script> <script src="script/jquery.couch.js?0.8.0"></script> - <script src="script/jquery.history.js?0.8.0"></script> - <script type="text/javascript"> + <script> function updateRecentDatabasesList() { $("#dbs").empty(); var recentDbs = $.cookies.get("recent", "").split(","); @@ -42,17 +41,6 @@ specific language governing permissions and limitations under the License. "</a></li>"); }); } - var baseURL = location.pathname.match(/.*\//).toString(); - function updateIFrame(hash) { - var l = frames['content'].location; - var title = frames['content'].document.title + " - Apache CouchDB: Futon Utility Client"; - document.title = title; - var href = baseURL + hash; - // For some reason the onload event fires twice; the 2nd time with URL-decoded l.href - if (hash != '' && decodeURIComponent(l.pathname + l.search) != decodeURIComponent(href)) { - l.href = href; - } - } function updateNavigation(path, queryString) { function fixupPath(path) { // hack for IE/Win return (path.charAt(0) != "/") ? ("/" + path) : path; @@ -81,11 +69,6 @@ specific language governing permissions and limitations under the License. }); } $(function() { - $.historyInit(updateIFrame); - $('#content').load(function() { - var l = frames["content"].location; - $.historyLoad(l.pathname.substring(baseURL.length) + l.search); - }); $.couch.info({ success: function(info, status) { $("#version").text(info.version); @@ -112,7 +95,7 @@ specific language governing permissions and limitations under the License. </ul> <div id="footer">Futon on Apache CouchDB <span id="version">?</span></div> <div id="view"> - <iframe name="content" src="browse/index.html" allowtransparency="true" id="content"> + <iframe name="content" src="browse/index.html" allowtransparency="true"> </div> </body> </html> diff --git a/share/www/script/jquery.history.js b/share/www/script/jquery.history.js deleted file mode 100644 index 14e40824..00000000 --- a/share/www/script/jquery.history.js +++ /dev/null @@ -1,150 +0,0 @@ -/* - * jQuery history plugin - * - * Copyright (c) 2006 Taku Sano (Mikage Sawatari) - * Licensed under the MIT License: - * http://www.opensource.org/licenses/mit-license.php - * - * Modified by Lincoln Cooper to add Safari support and only call the callback once during initialization - * for msie when no initial hash supplied. - */ - - -jQuery.extend({ - historyCurrentHash: undefined, - - historyCallback: undefined, - - historyInit: function(callback){ - jQuery.historyCallback = callback; - var current_hash = location.hash; - - jQuery.historyCurrentHash = current_hash; - if(jQuery.browser.msie) { - // To stop the callback firing twice during initilization if no hash present - if (jQuery.historyCurrentHash == '') { - jQuery.historyCurrentHash = '#'; - } - - // add hidden iframe for IE - $("body").prepend('<iframe id="jQuery_history" style="display: none;"></iframe>'); - var ihistory = $("#jQuery_history")[0]; - var iframe = ihistory.contentWindow.document; - iframe.open(); - iframe.close(); - iframe.location.hash = current_hash; - } - else if ($.browser.safari) { - // etablish back/forward stacks - jQuery.historyBackStack = []; - jQuery.historyBackStack.length = history.length; - jQuery.historyForwardStack = []; - - jQuery.isFirst = true; - } - jQuery.historyCallback(current_hash.replace(/^#/, '')); - setInterval(jQuery.historyCheck, 100); - }, - - historyAddHistory: function(hash) { - // This makes the looping function do something - jQuery.historyBackStack.push(hash); - - jQuery.historyForwardStack.length = 0; // clear forwardStack (true click occured) - this.isFirst = true; - }, - - historyCheck: function(){ - if(jQuery.browser.msie) { - // On IE, check for location.hash of iframe - var ihistory = $("#jQuery_history")[0]; - var iframe = ihistory.contentDocument || ihistory.contentWindow.document; - var current_hash = iframe.location.hash; - if(current_hash != jQuery.historyCurrentHash) { - - location.hash = current_hash; - jQuery.historyCurrentHash = current_hash; - jQuery.historyCallback(current_hash.replace(/^#/, '')); - - } - } else if ($.browser.safari) { - if (!jQuery.dontCheck) { - var historyDelta = history.length - jQuery.historyBackStack.length; - - if (historyDelta) { // back or forward button has been pushed - jQuery.isFirst = false; - if (historyDelta < 0) { // back button has been pushed - // move items to forward stack - for (var i = 0; i < Math.abs(historyDelta); i++) jQuery.historyForwardStack.unshift(jQuery.historyBackStack.pop()); - } else { // forward button has been pushed - // move items to back stack - for (var i = 0; i < historyDelta; i++) jQuery.historyBackStack.push(jQuery.historyForwardStack.shift()); - } - var cachedHash = jQuery.historyBackStack[jQuery.historyBackStack.length - 1]; - if (cachedHash != undefined) { - jQuery.historyCurrentHash = location.hash; - jQuery.historyCallback(cachedHash); - } - } else if (jQuery.historyBackStack[jQuery.historyBackStack.length - 1] == undefined && !jQuery.isFirst) { - // back button has been pushed to beginning and URL already pointed to hash (e.g. a bookmark) - // document.URL doesn't change in Safari - if (document.URL.indexOf('#') >= 0) { - jQuery.historyCallback(document.URL.split('#')[1]); - } else { - var current_hash = location.hash; - jQuery.historyCallback(''); - } - jQuery.isFirst = true; - } - } - } else { - // otherwise, check for location.hash - var current_hash = location.hash; - if(current_hash != jQuery.historyCurrentHash) { - jQuery.historyCurrentHash = current_hash; - jQuery.historyCallback(current_hash.replace(/^#/, '')); - } - } - }, - historyLoad: function(hash){ - var newhash; - - if (jQuery.browser.safari) { - newhash = hash; - } - else { - newhash = '#' + hash; - location.hash = newhash; - } - jQuery.historyCurrentHash = newhash; - - if(jQuery.browser.msie) { - var ihistory = $("#jQuery_history")[0]; - var iframe = ihistory.contentWindow.document; - iframe.open(); - iframe.close(); - iframe.location.hash = newhash; - jQuery.historyCallback(hash); - } - else if (jQuery.browser.safari) { - jQuery.dontCheck = true; - // Manually keep track of the history values for Safari - this.historyAddHistory(hash); - - // Wait a while before allowing checking so that Safari has time to update the "history" object - // correctly (otherwise the check loop would detect a false change in hash). - var fn = function() {jQuery.dontCheck = false;}; - window.setTimeout(fn, 200); - jQuery.historyCallback(hash); - // N.B. "location.hash=" must be the last line of code for Safari as execution stops afterwards. - // By explicitly using the "location.hash" command (instead of using a variable set to "location.hash") the - // URL in the browser and the "history" object are both updated correctly. - location.hash = newhash; - } - else { - jQuery.historyCallback(hash); - } - } -}); - - |