/*
 * jQuery Address Plugin v1.2.2
 * http://www.asual.com/jquery/address/
 *
 * Copyright (c) 2009-2010 Rostislav Hristov
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * Date: 2010-08-04 08:55:59 +0300 (Wed, 04 Aug 2010)
 */
(function(c){c.address=function(){var r=function(a){c(c.address).trigger(c.extend(c.Event(a),function(){for(var b={},f=c.address.parameterNames(),g=0,q=f.length;g<q;g++)b[f[g]]=c.address.parameter(f[g]);return{value:c.address.value(),path:c.address.path(),pathNames:c.address.pathNames(),parameterNames:f,parameters:b,queryString:c.address.queryString()}}.call(c.address)))},s=function(a,b,f){c(c.address).bind(a,b,f);return c.address},p=function(){var a=d.href.indexOf("#");return a!=-1?W(I(t(d.href.substr(a+
1),l))):""},ka=function(){return"javascript"},X=function(a,b){if(e.strict)a=b?a.substr(0,1)!="/"?"/"+a:a:a==""?"/":a;return a},t=function(a,b){if(e.crawlable&&b)return(a!=""?"!":"")+a;return a.replace(/^\!/,"")},u=function(a,b){return parseInt(a.css(b),10)},Y=function(a){for(var b,f,g=0,q=a.childNodes.length;g<q;g++){if(a.childNodes[g].src)b=String(a.childNodes[g].src);if(f=Y(a.childNodes[g]))b=f}return b},F=function(){if(!J){var a=p(),b=j!=a;if(v&&m<523){if(B!=D.length){B=D.length;if(typeof x[B-
1]!=y)j=x[B-1];E(l)}}else if(b)if(w&&m<7)d.reload();else{w&&m<8&&e.history&&z(N,50);j=a;E(l)}}},E=function(a){r(Z);r(a?$:aa);z(ba,10)},ba=function(){if(e.tracker!=="null"&&e.tracker!==null){var a=n[e.tracker],b=(d.pathname+(c.address?c.address.value():"")).replace(/\/\//,"/").replace(/^\/$/,"");if(typeof a==K)a(b);else if(typeof urchinTracker==K)urchinTracker(b);else if(typeof pageTracker!=y&&typeof pageTracker._trackPageview==K)pageTracker._trackPageview(b);else typeof _gaq!=y&&typeof _gaq.push==
K&&_gaq.push(["_trackPageview",b])}},N=function(){var a=ka()+":"+l+";document.open();document.writeln('<html><head><title>"+h.title+"</title><script>var "+o+' = "'+p()+(h.domain!=d.host?'";document.domain="'+h.domain:"")+"\";<\/script></head></html>');document.close();";if(m<7)k.src=a;else k.contentWindow.location.replace(a)},da=function(){if(G&&ca!=-1){var a,b=G.substr(ca+1).split("&");for(C=0;C<b.length;C++){a=b[C].split("=");if(/^(autoUpdate|crawlable|history|strict|wrap)$/.test(a[0]))e[a[0]]=
isNaN(a[1])?/^(true|yes)$/i.test(a[1]):parseInt(a[1],10)!==0;if(/^tracker$/.test(a[0]))e[a[0]]=a[1]}G=null}},ga=function(){if(!ea){ea=i;da();var a=c("body").ajaxComplete(function(){fa.call(this);la.call(this)}).trigger("ajaxComplete");if(e.wrap){c("body > *").wrapAll('<div style="padding:'+(u(a,"marginTop")+u(a,"paddingTop"))+"px "+(u(a,"marginRight")+u(a,"paddingRight"))+"px "+(u(a,"marginBottom")+u(a,"paddingBottom"))+"px "+(u(a,"marginLeft")+u(a,"paddingLeft"))+'px;" />').parent().wrap('<div id="'+
o+'" style="height:100%; overflow:auto;'+(v?window.statusbar.visible&&!/chrome/i.test(O)?"":" resize:both;":"")+'" />');c("html, body").css({height:"100%",margin:0,padding:0,overflow:"hidden"});v&&c('<style type="text/css" />').appendTo("head").text("#"+o+"::-webkit-resizer { background-color: #fff; }")}if(w&&m<8){a=h.getElementsByTagName("frameset")[0];k=h.createElement((a?"":"i")+"frame");if(a){a.insertAdjacentElement("beforeEnd",k);a[a.cols?"cols":"rows"]+=",0";k.noResize=i;k.frameBorder=k.frameSpacing=
0}else{k.style.display="none";k.style.width=k.style.height=0;k.tabIndex=-1;h.body.insertAdjacentElement("afterBegin",k)}z(function(){c(k).bind("load",function(){var b=k.contentWindow;j=typeof b[o]!=y?b[o]:"";if(j!=p()){E(l);d.hash=t(j,i)}});typeof k.contentWindow[o]==y&&N()},50)}else if(v){if(m<418){c(h.body).append('<form id="'+o+'" style="position:absolute;top:-9999px;" method="get"></form>');P=h.getElementById(o)}if(typeof d[o]==y)d[o]={};if(typeof d[o][d.pathname]!=y)x=d[o][d.pathname].split(",")}z(function(){r("init");
E(l)},1);if(w&&m>7||!w&&"on"+H in n)if(n.addEventListener)n.addEventListener(H,F,false);else n.attachEvent&&n.attachEvent("on"+H,F);else ma(F,50);fa()}},fa=function(){c("a").filter("[rel*=address:]").address()},na=function(){if(n.removeEventListener)n.removeEventListener(H,F,false);else n.detachEvent&&n.detachEvent("on"+H,F)},la=function(){var a=d.pathname.replace(/\/$/,"");c("body").html().indexOf("_escaped_fragment_")!=-1&&c("a[href]:not([href^=http]), , a[href*="+document.domain+"]",this).each(function(){var b=
c(this).attr("href").replace(/^http:/,"").replace(new RegExp(a+"/?$"),"");if(b==""||b.indexOf("_escaped_fragment_")!=-1)c(this).attr("href","#"+decodeURIComponent(b.replace(/\/(.*)\?_escaped_fragment_=(.*)$/,"!$2")))})},o="jQueryAddress",K="function",y="undefined",H="hashchange",Z="change",$="internalChange",aa="externalChange",i=true,l=false,e={autoUpdate:i,crawlable:l,history:i,strict:i,wrap:l},L=c.browser,m=parseFloat(c.browser.version),ha=L.mozilla,w=L.msie,ia=L.opera,v=L.safari,Q=l,n=function(){try{return top.document!==
undefined?top:window}catch(a){return window}}(),h=n.document,D=n.history,d=n.location,ma=setInterval,z=setTimeout,I=decodeURI,W=encodeURI,O=navigator.userAgent,k,P,G=Y(document),ca=G?G.indexOf("?"):-1,R=h.title,B=D.length,J=l,ea=l,S=i,ja=i,M=l,x=[],j=p();if(w){m=parseFloat(O.substr(O.indexOf("MSIE")+4));if(h.documentMode&&h.documentMode!=m)m=h.documentMode!=8?7:8;c(document).bind("propertychange",function(){if(h.title!=R&&h.title.indexOf("#"+p())!=-1)h.title=R})}if(Q=ha&&m>=1||w&&m>=6||ia&&m>=9.5||
v&&m>=312){for(var C=1;C<B;C++)x.push("");x.push(j);if(ia)history.navigationMode="compatible";if(document.readyState=="complete")var oa=setInterval(function(){if(c.address){ga();clearInterval(oa)}},50);else{da();c(ga)}c(window).bind("unload",na)}else if(!Q&&p()!=""||v&&m<418&&p()!=""&&d.search!=""){h.open();h.write('<html><head><meta http-equiv="refresh" content="0;url='+encodeURI(d.href.substr(0,d.href.indexOf("#")))+'" /></head></html>');h.close()}else ba();return{bind:function(a,b,f){return s(a,
b,f)},init:function(a){return s("init",a)},change:function(a){return s(Z,a)},internalChange:function(a){return s($,a)},externalChange:function(a){return s(aa,a)},baseURL:function(){var a=d.href;if(a.indexOf("#")!=-1)a=a.substr(0,a.indexOf("#"));if(/\/$/.test(a))a=a.substr(0,a.length-1);return a},autoUpdate:function(a){if(a!==undefined){e.autoUpdate=a;return this}return e.autoUpdate},crawlable:function(a){if(a!==undefined){e.crawlable=a;return this}return e.crawlable},history:function(a){if(a!==undefined){e.history=
a;return this}return e.history},strict:function(a){if(a!==undefined){e.strict=a;return this}return e.strict},tracker:function(a){if(a!==undefined){e.tracker=a;return this}return e.tracker},wrap:function(a){if(a!==undefined){e.wrap=a;return this}return e.wrap},update:function(){M=i;this.value(j);M=l;return this},title:function(a){if(a!==undefined){a=I(a);z(function(){R=h.title=a;if(ja&&k&&k.contentWindow&&k.contentWindow.document){k.contentWindow.document.title=a;ja=l}if(!S&&ha)d.replace(d.href.indexOf("#")!=
-1?d.href:d.href+"#");S=l},50);return this}return h.title},value:function(a){if(a!==undefined){a=W(I(X(a,i)));if(a=="/")a="";if(j==a&&!M)return;S=i;j=a;if(e.autoUpdate||M){J=i;E(i);x[D.length]=j;if(v)if(e.history){d[o][d.pathname]=x.toString();B=D.length+1;if(m<418){if(d.search==""){P.action="#"+t(j,i);P.submit()}}else if(m<523||j==""){a=h.createEvent("MouseEvents");a.initEvent("click",i,i);var b=h.createElement("a");b.href="#"+t(j,i);b.dispatchEvent(a)}else d.hash="#"+t(j,i)}else d.replace("#"+t(j,
i));else if(j!=p())if(e.history)d.hash="#"+t(j,i);else d.replace("#"+t(j,i));w&&m<8&&e.history&&z(N,50);if(v)z(function(){J=l},1);else J=l}return this}if(!Q)return null;return I(X(j,l))},path:function(a){if(a!==undefined){var b=this.queryString(),f=this.hash();this.value(a+(b?"?"+b:"")+(f?"#"+f:""));return this}return this.value().split("#")[0].split("?")[0]},queryString:function(a){if(a!==undefined){var b=this.hash();this.value(this.path()+(a?"?"+a:"")+(b?"#"+b:""));return this}a=this.value().split("?");
return a.slice(1,a.length).join("?").split("#")[0]},parameter:function(a,b,f){var g,q;if(b!==undefined){var T=this.parameterNames();q=[];for(g=0;g<T.length;g++){var U=T[g],A=this.parameter(U);if(typeof A=="string")A=[A];if(U==a)A=b===null||b===""?[]:f?A.concat([b]):[b];for(var V=0;V<A.length;V++)q.push(U+"="+A[V])}c.inArray(a,T)==-1&&b!==null&&b!==""&&q.push(a+"="+b);this.queryString(q.join("&"));return this}if(b=this.queryString()){q=b.split("&");b=[];for(g=0;g<q.length;g++){f=q[g].split("=");f[0]==
a&&b.push(f[1])}if(b.length!==0)return b.length!=1?b:b[0]}},pathNames:function(){var a=this.path(),b=a.replace(/\/{2,9}/g,"/").split("/");if(a.substr(0,1)=="/"||a.length===0)b.splice(0,1);a.substr(a.length-1,1)=="/"&&b.splice(b.length-1,1);return b},parameterNames:function(){var a=this.queryString(),b=[];if(a&&a.indexOf("=")!=-1){a=a.split("&");for(var f=0;f<a.length;f++){var g=a[f].split("=")[0];c.inArray(g,b)==-1&&b.push(g)}}return b},hash:function(a){if(a!==undefined){this.value(this.value().split("#")[0]+
(a?"#"+a:""));return this}a=this.value().split("#");return a.slice(1,a.length).join("#")}}}();c.fn.address=function(r){if(!c(this).attr("address")){var s=function(){if(c(this).is("a")){var p=r?r.call(this):/address:/.test(c(this).attr("rel"))?c(this).attr("rel").split("address:")[1].split(" ")[0]:c(this).attr("href").replace(/^#\!?/,"");c.address.value(p);return false}};c(this).click(s).live("click",s).submit(function(){if(c(this).is("form")){var p=r?r.call(this):c(this).attr("action")+"?"+c(this).serialize();
c.address.value(p);return false}}).attr("address",true)}return this}})(jQuery);
