Canon imagePROGRAF iPF5000 Consumer Products Home var isLoadingContent = true; var selectedTabId = null; var tabInfos = new Array(); // switch to determine whether to use dojo.undo.browser functionality var useDojoUndoBrowser = true; // Object to hold state of page conforms to DOJO requirements // to implement back/forward functionality TabState = function(tabId){ this.tabId = tabId; this.changeUrl=null; var bookmarkValue = tabInfos[tabId].bookMarkHash; if (bookmarkValue){ this.changeUrl = bookmarkValue; } this.isInitialTab=false; } TabState.prototype.back = function(){ // fix for bug while using IE. Initial state if doesn't have hash identifier // the back button to intial state takes the value from previous visited tab // reported : http://trac.dojotoolkit.org/ticket/3418 if (dojo.render.html.ie && this.isInitialTab && window.location.hash!=""){ // dojo.debug("Changing hash of initial state "+this.tabId); window.location.hash=this.changeUrl; } // dojo.debug("Back to "+this.tabId); this.showStateData(); } TabState.prototype.forward = function(){ // dojo.debug("Forward to "+this.tabId); this.showStateData(); } TabState.prototype.showStateData = function(){ updateTabInfo(this.tabId); isLoadingContent = true; displayContentUsingTabData(this.tabId); isLoadingContent = false; } // displayContentUsingTabData changes content of mainContentArea // using tabInfoX.data element // Useful when : 1- User already clicked on the tab and the data is already present // : 2- Used By dojo.undo.browser back/forward functionality function displayContentUsingTabData (tabId){ dojo.widget.byId("mainContentArea").setContent(tabInfos[tabId].data); var tabImg = dojo.byId("tabLink" + tabId); dojo.html.