﻿BrowserHistoryUtils={addEvent:function(a,c,d,b){b=b||false;if(a.addEventListener){a.addEventListener(c,d,b);return true}else if(a.attachEvent){var e=a.attachEvent("on"+c,d);return e}else a["on"+c]=d}};BrowserHistory=function(){var a={ie:false,firefox:false,safari:false,opera:false,version:-1},j="",g=document.location.href,k=document.location.href,r=document.location.hash,i="history/historyFrame.html?",f=-1,h=[],q=n(k,k+"#"+r,r),b=[],c=[],l=null,d=navigator.userAgent.toLowerCase();if(d.indexOf("opera")!=-1)a.opera=true;else if(d.indexOf("msie")!=-1){a.ie=true;a.version=parseFloat(d.substring(d.indexOf("msie")+4))}else if(d.indexOf("safari")!=-1){a.safari=true;a.version=parseFloat(d.substring(d.indexOf("safari")+7))}else if(d.indexOf("gecko")!=-1)a.firefox=true;if(a.ie==true&&a.version==7)window["_ie_firstload"]=false;function m(){return document.getElementById("ie_historyFrame")}function z(){return document.getElementById("firefox_anchorDiv")}function B(){return document.getElementById("safari_formDiv")}function x(){return document.getElementById("safari_remember_field")}function o(d){if(d&&document.getElementById(d)){var c=document.getElementById(d);if(typeof c.SetVariable!="undefined")return c;else{var a=c.getElementsByTagName("object"),b=c.getElementsByTagName("embed");if(a.length>0&&typeof a[0].SetVariable!="undefined")return a[0];else if(b.length>0&&typeof b[0].SetVariable!="undefined")return b[0]}}else{var a=document.getElementsByTagName("object"),b=document.getElementsByTagName("embed");if(b.length>0&&typeof b[0].SetVariable!="undefined")return b[0];else if(a.length>0&&typeof a[0].SetVariable!="undefined")return a[0];else if(a.length>1&&typeof a[1].SetVariable!="undefined")return a[1]}return undefined}function s(){var a=[];if(a.length==0){var b=document.getElementsByTagName("object");a=b}if(a.length==0||a[0].object==null){var b=document.getElementsByTagName("embed");a=b}return a}function C(){var b=m().contentWindow.document,a=String(b.location.search);if(a.length==1&&a.charAt(0)=="?")a="";else if(a.length>=2&&a.charAt(0)=="?")a=a.substring(1);return a}function e(){var a=document.location.href.indexOf("#");return a>=0?document.location.href.substr(a+1):""}function v(a){if(a=="")a="#";document.location.hash=a}function n(b,c,a){return {baseUrl:b,newUrl:c,flexAppUrl:a,title:null}}function A(e,f,d){c=[];if(a.ie){if(d==j&&document.location.href==k&&window["_ie_firstload"]){g=k;return}if((!d||d==j)&&window["_ie_firstload"]){f=e+"#"+j;d=j}else m().src=i+d;v(d)}else{if(b.length==0&&q.flexAppUrl==d)q=n(e,f,d);else if(b.length>0&&b[b.length-1].flexAppUrl==d)b[b.length-1]=n(e,f,d);if(a.safari){if(a.version<=419.3){var o=window.location.pathname.toString();o=o.substring(o.lastIndexOf("/")+1);B().innerHTML='<form name="historyForm" action="'+o+"#"+d+'" method="GET"></form>';var t=window.location.search.substring(1),r=t.split("&");for(var p=0;p<r.length;p++){var s=r[p].split("="),l=document.createElement("input");l.type="hidden";l.name=s[0];l.value=s[1];document.forms.historyForm.appendChild(l)}document.forms.historyForm.submit()}else top.location.hash=d;h[history.length]=d;u()}else{E(d);v(d)}}b.push(n(e,f,d))}function u(){if(a.safari)x().value=h.join(",")}function t(){var a=b.pop();if(!a)return;var d=b[b.length-1];if(!d&&b.length==0)d=q;c.push(a)}function w(){var a=c.pop();if(!a)return;b.push(a)}function y(){c=[]}function p(){if(a.ie)if(g!=document.location.href&&g+"#"!=document.location.href)if(a.version<7){g=document.location.href;document.location.reload()}else if(e()!=C()){var v=i+e();m().src=v}if(a.safari)if(f>=0&&history.length!=f){f=history.length;var j=h[f];if(j=="");if(typeof BrowserHistory_multiple!="undefined"&&BrowserHistory_multiple==true){var p=s();for(var d=0;d<p.length;d++)p[d].browserURLChange(j)}else o().browserURLChange(j);u()}if(a.firefox)if(g!=document.location.href){var l=b.length,n={back:false,forward:false,"set":false};if((window.location.hash==r||window.location.href==k)&&l==1){n.back=true;t()}if(c.length>0)if(c[c.length-1].flexAppUrl==e()){n.forward=true;w()}if(l>=2&&b[l-2])if(b[l-2].flexAppUrl==e()){n.back=true;t()}if(!n.back&&!n.forward){var q={back:-1,forward:-1};for(var d=0;d<b.length;d++)if(b[d].flexAppUrl==e()&&d!=l-2){arbitraryUrl=true;q.back=d}for(var d=0;d<c.length;d++)if(c[d].flexAppUrl==e()&&d!=l-2){arbitraryUrl=true;q.forward=d}y()}g=document.location.href;var j=e();if(j=="");if(typeof BrowserHistory_multiple!="undefined"&&BrowserHistory_multiple==true){var p=s();for(var d=0;d<p.length;d++)p[d].browserURLChange(j)}else o().browserURLChange(j)}}function E(a){if(document.getElementsByName(a).length==0)z().innerHTML+="<a name='"+a+"'>"+a+"</a>"}var D=function(){if(a.ie){var k=document.getElementsByTagName("script");for(var e=0,c;c=k[e];e++)if(c.src.indexOf("history.js")>-1)var l=(new String(c.src)).replace("history.js","historyFrame.html");i=l+"?";var m=i,d=document.createElement("iframe");d.id="ie_historyFrame";d.name="ie_historyFrame";try{document.body.appendChild(d)}catch(n){setTimeout(function(){document.body.appendChild(d)},0)}}if(a.safari){var f=document.createElement("div");f.id="safari_rememberDiv";document.body.appendChild(f);f.innerHTML='<input type="text" id="safari_remember_field" style="width: 500px;">';var j=document.createElement("div");j.id="safari_formDiv";document.body.appendChild(j);var b=document.createElement("div");b.id="safarireloader";var k=document.getElementsByTagName("script");for(var e=0,c;c=k[e];e++)if(c.src.indexOf("history.js")>-1)html=(new String(c.src)).replace(".js",".html");b.innerHTML='<iframe id="safarireloader-iframe" src="about:blank" frameborder="no" scrolling="no"></iframe>';document.body.appendChild(b);b.style.position="absolute";b.style.left=b.style.top="-9999px";d=b.getElementsByTagName("iframe")[0];if(document.getElementById("safari_remember_field").value!="")h=document.getElementById("safari_remember_field").value.split(",")}if(a.firefox){var g=document.createElement("div");g.id="firefox_anchorDiv";document.body.appendChild(g)}};return {historyHash:h,backStack:function(){return b},forwardStack:function(){return c},getPlayer:o,initialize:function(a){D(a)},setURL:function(a){document.location.href=a},getURL:function(){return document.location.href},getTitle:function(){return document.title},setTitle:function(c){try{b[b.length-1].title=c}catch(e){}if(a.safari)if(c=="")try{var d=window.location.href.toString();c=d.substring(d.lastIndexOf("/")+1,d.lastIndexOf("#"))}catch(e){c=""}document.title=c},setDefaultURL:function(b){j=b;b=e();if(a.ie){window["_ie_firstload"]=true;var g=i+b,d=function(){m().src=g;window.location.replace("#"+b);setInterval(p,50)};try{d()}catch(l){window.setTimeout(function(){d()},0)}}if(a.safari){f=history.length;if(h.length==0){h[f]=b;var c="#"+b;window.location.replace(c)}setInterval(p,50)}if(a.firefox||a.opera){var k=new RegExp("#"+b+"$");if(!window.location.toString().match(k)){var c="#"+b;window.location.replace(c)}setInterval(p,50)}},setBrowserURL:function(c,d){if(a.ie&&typeof d!="undefined")l=d;var h=document.location.href.indexOf("#"),e=h!=-1?document.location.href.substr(0,h):document.location.href,b=e+"#"+c;if(document.location.href!=b&&document.location.href+"#"!=b){g=b;A(e,b,c);f=history.length}return false},browserURLChange:function(c){var d=null;if(a.ie&&l!=null)d=l;pendingURL="";if(typeof BrowserHistory_multiple!="undefined"&&BrowserHistory_multiple==true){var e=s();for(var b=0;b<e.length;b++)try{e[b].browserURLChange(c)}catch(f){}}else try{o(d).browserURLChange(c)}catch(f){}l=null}}}();function setURL(a){document.location.href=a}function backButton(){history.back()}function forwardButton(){history.forward()}function goForwardOrBackInHistory(a){history.go(a)}(function(a){var b=navigator.userAgent,d=!false,c=setTimeout;if(/webkit/i.test(b))c(function(){var b=document.readyState;if(b=="loaded"||b=="complete")a();else c(arguments.callee,10)},10);else if(/mozilla/i.test(b)&&!/(compati)/.test(b)||/opera/i.test(b))document.addEventListener("DOMContentLoaded",a,false);else if(d)(function(){var b=document.createElement("doc:rdy");try{b.doScroll("left");a();b=null}catch(d){c(arguments.callee,0)}})();else window.onload=a})(function(){BrowserHistory.initialize()})
