/*
 * jQuery JavaScript Library v1.3.2
 * http://jquery.com/
 *
 * Copyright (c) 2009 John Resig
 * Dual licensed under the MIT and GPL licenses.
 * http://docs.jquery.com/License
 *
 * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009)
 * Revision: 6246
 */
(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F<J;F++){var G=M[F];if(G.selected){K=o(G).val();if(H){return K}L.push(K)}}return L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof K==="number"){K+=""}return this.each(function(){if(this.nodeType!=1){return}if(o.isArray(K)&&/radio|checkbox/.test(this.type)){this.checked=(o.inArray(this.value,K)>=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H<I;H++){if((G=arguments[H])!=null){for(var F in G){var K=J[F],L=G[F];if(J===L){continue}if(E&&L&&typeof L==="object"&&!L.nodeType){J[F]=o.extend(E,K||(L.length!=null?[]:{}),L)}else{if(L!==g){J[F]=L}}}}}return J};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,q=document.defaultView||{},s=Object.prototype.toString;o.extend({noConflict:function(E){l.$=p;if(E){l.jQuery=y}return o},isFunction:function(E){return s.call(E)==="[object Function]"},isArray:function(E){return s.call(E)==="[object Array]"},isXMLDoc:function(E){return E.nodeType===9&&E.documentElement.nodeName!=="HTML"||!!E.ownerDocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.test(G)){var F=document.getElementsByTagName("head")[0]||document.documentElement,E=document.createElement("script");E.type="text/javascript";if(o.support.scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=G}F.insertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){return F.nodeName&&F.nodeName.toUpperCase()==E.toUpperCase()},each:function(G,K,F){var E,H=0,I=G.length;if(F){if(I===g){for(E in G){if(K.apply(G[E],F)===false){break}}}else{for(;H<I;){if(K.apply(G[H++],F)===false){break}}}}else{if(I===g){for(E in G){if(K.call(G[E],E,G[E])===false){break}}}else{for(var J=G[0];H<I&&K.call(J,H,J)!==false;J=G[++H]){}}}return G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=I.call(H,F)}return typeof I==="number"&&G=="curCSS"&&!b.test(E)?I+"px":I},className:{add:function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType==1&&!o.className.has(E.className,H)){E.className+=(E.className?" ":"")+H}})},remove:function(E,F){if(E.nodeType==1){E.className=F!==g?o.grep(E.className.split(/\s+/),function(G){return !o.className.has(F,G)}).join(" "):""}},has:function(F,E){return F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"></"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/<tbody/i.test(S),N=!O.indexOf("<table")&&!R?L.firstChild&&L.firstChild.childNodes:Q[1]=="<table>"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E<F;E++){if(H[E]===G){return E}}return -1},merge:function(H,E){var F=0,G,I=H.length;if(!o.support.getAll){while((G=E[F++])!=null){if(G.nodeType!=8){H[I++]=G}}}else{while((G=E[F++])!=null){H[I++]=G}}return H},unique:function(K){var F=[],E={};try{for(var G=0,H=K.length;G<H;G++){var J=o.data(K[G]);if(!E[J]){E[J]=true;F.push(K[G])}}}catch(I){F=K}return F},grep:function(F,J,E){var G=[];for(var H=0,I=F.length;H<I;H++){if(!E!=!J(F[H],H)){G.push(F[H])}}return G},map:function(E,J){var F=[];for(var G=0,H=E.length;G<H;G++){var I=J(E[G],G);if(I!=null){F[F.length]=I}}return F.concat.apply([],F)}});var C=navigator.userAgent.toLowerCase();o.browser={version:(C.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),msie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compatible|webkit)/.test(C)};o.each({parent:function(E){return E.parentNode},parents:function(E){return o.dir(E,"parentNode")},next:function(E){return o.nth(E,2,"nextSibling")},prev:function(E){return o.nth(E,2,"previousSibling")},nextAll:function(E){return o.dir(E,"nextSibling")},prevAll:function(E){return o.dir(E,"previousSibling")},siblings:function(E){return o.sibling(E.parentNode.firstChild,E)},children:function(E){return o.sibling(E.firstChild)},contents:function(E){return o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.makeArray(E.childNodes)}},function(E,F){o.fn[E]=function(G){var H=o.map(this,F);if(G&&typeof G=="string"){H=o.multiFilter(G,H)}return this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(E,F){o.fn[E]=function(G){var J=[],L=o(G);for(var K=0,H=L.length;K<H;K++){var I=(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}});
/*
 * Sizzle CSS Selector Engine - v0.9.3
 *  Copyright 2009, The Dojo Foundation
 *  Released under the MIT, BSD, and GPL Licenses.
 *  More information: http://sizzlejs.com/
 */
(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa<ab.length;aa++){if(ab[aa]===ab[aa-1]){ab.splice(aa--,1)}}}}}return ab};F.matches=function(T,U){return F(T,null,null,U)};F.find=function(aa,T,ab){var Z,X;if(!aa){return[]}for(var W=0,V=I.order.length;W<V;W++){var Y=I.order[W],X;if((X=I.match[Y].exec(aa))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){X[1]=(X[1]||"").replace(/\\/g,"");Z=I.find[Y](X,T,ab);if(Z!=null){aa=aa.replace(I.match[Y],"");break}}}}if(!Z){Z=T.getElementsByTagName("*")}return{set:Z,expr:aa}};F.filter=function(ad,ac,ag,W){var V=ad,ai=[],aa=ac,Y,T,Z=ac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){for(var ab in I.filter){if((Y=I.match[ab].exec(ad))!=null){var U=I.filter[ab],ah,af;T=false;if(aa==ai){ai=[]}if(I.preFilter[ab]){Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=ah=true}else{if(Y===true){continue}}}if(Y){for(var X=0;(af=aa[X])!=null;X++){if(af){ah=U(af,Y,X,aa);var ae=W^!!ah;if(ag&&ah!=null){if(ae){T=true}else{aa[X]=false}}else{if(ae){ai.push(af);T=true}}}}}if(ah!==g){if(!ag){aa=ai}ad=ad.replace(I.match[ab],"");if(!T){return[]}break}}}if(ad==V){if(T==null){throw"Syntax error, unrecognized expression: "+ad}else{break}}V=ad}return aa};var I=F.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(T){return T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=typeof T==="string",ab=X&&!/\W/.test(T),Y=X&&!ab;if(ab&&!Z){T=T.toUpperCase()}for(var W=0,V=aa.length,U;W<V;W++){if((U=aa[W])){while((U=U.previousSibling)&&U.nodeType!==1){}aa[W]=Y||U&&U.nodeName===T?U||false:U===T}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){var W=Y.parentNode;Z[V]=W.nodeName===U?W:false}}}else{for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){Z[V]=X?Y.parentNode:Y.parentNode===U}}if(X){F.filter(U,Z,true)}}},"":function(W,U,Y){var V=L++,T=S;if(!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("parentNode",U,V,W,X,Y)},"~":function(W,U,Y){var V=L++,T=S;if(typeof U==="string"&&!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("previousSibling",U,V,W,X,Y)}},find:{ID:function(U,V,W){if(typeof V.getElementById!=="undefined"&&!W){var T=V.getElementById(U[1]);return T?[T]:[]}},NAME:function(V,Y,Z){if(typeof Y.getElementsByName!=="undefined"){var U=[],X=Y.getElementsByName(V[1]);for(var W=0,T=X.length;W<T;W++){if(X[W].getAttribute("name")===V[1]){U.push(X[W])}}return U.length===0?null:U}},TAG:function(T,U){return U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var X=0,Y;(Y=U[X])!=null;X++){if(Y){if(Z^(Y.className&&(" "+Y.className+" ").indexOf(W)>=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W<T;W++){if(Y[W]===Z){return false}}return true}}}},CHILD:function(T,W){var Z=W[1],U=T;switch(Z){case"only":case"first":while(U=U.previousSibling){if(U.nodeType===1){return false}}if(Z=="first"){return true}U=T;case"last":while(U=U.nextSibling){if(U.nodeType===1){return false}}return true;case"nth":var V=W[2],ac=W[3];if(V==1&&ac==0){return true}var Y=W[0],ab=T.parentNode;if(ab&&(ab.sizcache!==Y||!T.nodeIndex)){var X=0;for(U=ab.firstChild;U;U=U.nextSibling){if(U.nodeType===1){U.nodeIndex=++X}}ab.sizcache=Y}var aa=T.nodeIndex-ac;if(V==0){return aa==0}else{return(aa%V==0&&aa/V>=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V<T;V++){U.push(X[V])}}else{for(var V=0;X[V];V++){U.push(X[V])}}}return U}}var G;if(document.documentElement.compareDocumentPosition){G=function(U,T){var V=U.compareDocumentPosition(T)&4?-1:U===T?0:1;if(V===0){hasDuplicate=true}return V}}else{if("sourceIndex" in document.documentElement){G=function(U,T){var V=U.sourceIndex-T.sourceIndex;if(V===0){hasDuplicate=true}return V}}else{if(document.createRange){G=function(W,U){var V=W.ownerDocument.createRange(),T=U.ownerDocument.createRange();V.selectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var X=V.compareBoundaryPoints(Range.START_TO_END,T);if(X===0){hasDuplicate=true}return X}}}}(function(){var U=document.createElement("form"),V="script"+(new Date).getTime();U.innerHTML="<input name='"+V+"'/>";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="<a href='#'></a>";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="<p class='TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="<div class='test e'></div><div class='test'></div>";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1&&!ac){T.sizcache=Y;T.sizset=W}if(T.nodeName===Z){X=T;break}T=T[U]}ad[W]=X}}}function S(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1){if(!ac){T.sizcache=Y;T.sizset=W}if(typeof Z!=="string"){if(T===Z){X=true;break}}else{if(F.filter(Z,[T]).length>0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z<U;Z++){F(T,V[Z],W)}return F.filter(X,W)};o.find=F;o.filter=F.filter;o.expr=F.selectors;o.expr[":"]=o.expr.filters;F.selectors.filters.hidden=function(T){return T.offsetWidth===0||T.offsetHeight===0};F.selectors.filters.visible=function(T){return T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F<E.length){o.event.proxy(G,E[F++])}return this.click(o.event.proxy(G,function(H){this.lastToggle=(this.lastToggle||0)%F;H.preventDefault();return E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F){return this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.call(document,o)}else{o.readyList.push(E)}return this},live:function(G,F){var E=o.event.proxy(F);E.guid+=this.selector+G;o(document).bind(i(G,this.selector),this.selector,E);return this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.guid+this.selector+F}:null);return this}});function c(H){var E=RegExp("(^|\\.)"+H.type+"(\\.|$)"),G=true,F=[];o.each(o.data(this,"events").live||[],function(I,J){if(E.test(J.type)){var K=o(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort(function(J,I){return o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){if(this.fn.call(this.elem,H,this.fn.data)===false){return(G=false)}});return G}function i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ /g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){if(!o.isReady){o.isReady=true;if(o.readyList){o.each(o.readyList,function(){this.call(document,o)});o.readyList=null}o(document).triggerHandler("ready")}}});var x=false;function B(){if(x){return}x=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);o.ready()}});if(document.documentElement.doScroll&&l==l.top){(function(){if(o.isReady){return}try{document.documentElement.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.ready()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(F,E){o.fn[E]=function(G){return G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var E in o.cache){if(E!=1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.elem)}}});(function(){o.support={};var F=document.documentElement,G=document.createElement("script"),K=document.createElement("div"),J="script"+(new Date).getTime();K.style.display="none";K.innerHTML='   <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("<div/>").append(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H<F;H++){var E=o.data(this[H],"olddisplay");this[H].style.display=E||"";if(o.css(this[H],"display")==="none"){var G=this[H].tagName,K;if(m[G]){K=m[G]}else{var I=o("<"+G+" />").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H<F;H++){this[H].style.display=o.data(this[H],"olddisplay")||""}return this}},hide:function(H,I){if(H){return this.animate(t("hide",3),H,I)}else{for(var G=0,F=this.length;G<F;G++){var E=o.data(this[G],"olddisplay");if(!E&&E!=="none"){o.data(this[G],"olddisplay",o.css(this[G],"display"))}}for(var G=0,F=this.length;G<F;G++){this[G].style.display="none"}return this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=typeof G==="boolean";return o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G==null||E?this.each(function(){var H=E?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t("toggle",3),G,F)},fadeTo:function(E,G,F){return this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var E=o.speed(F,H,G);return this[E.queue===false?"each":"queue"](function(){var K=o.extend({},E),M,L=this.nodeType==1&&o(this).is(":hidden"),J=this;for(M in I){if(I[M]=="hide"&&L||I[M]=="show"&&!L){return K.complete.call(this)}if((M=="height"||M=="width")&&this.style){K.display=o.css(this,"display");K.overflow=this.style.overflow}}if(K.overflow!=null){this.style.overflow="hidden"}K.curAnim=o.extend({},I);o.each(I,function(O,S){var R=new o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=="toggle"?L?"show":"hide":S](I)}else{var Q=S.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),T=R.cur(true)||0;if(Q){var N=parseFloat(Q[2]),P=Q[3]||"px";if(P!="px"){J.style[O]=(N||1)+P;T=((N||1)/R.cur(true))*T;J.style[O]=T+P}if(Q[1]){N=((Q[1]=="-="?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return true})},stop:function(F,E){var G=o.timers;if(F){this.queue([])}this.each(function(){for(var H=G.length-1;H>=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInterval(n);n=g}},13)}},show:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());o(this.elem).show()},hide:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(H){var G=e();if(H||G>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})();
jQuery.noConflict();

// This is the wp-e-commerce front end javascript "library"// this function is for binding actions to events and rebinding them after they are replaced by AJAX// these functions are bound to events on elements when the page is fully loaded.// empty the cart using ajax when the form is submitted,  function check_make_purchase_button(){	toggle = jQuery('#noca_gateway').attr('checked');	if(toggle == true){		//jQuery('.make_purchase').hide();		jQuery('#OCPsubmit').show();	}else{		jQuery('.make_purchase').show();			jQuery('#OCPsubmit').hide();			}}	jQuery(document).ready(function () {  	  	//this bit of code runs on the checkout page. If the checkbox is selected it copies the valus in the billing country and puts it in the shipping country form fields. 23.07.09	//jQuery('.wpsc_shipping_forms').hide();     jQuery("#shippingSameBilling").click(function(){       				jQuery('.wpsc_shipping_forms').show();        // If checked        jQuery("#shippingSameBilling").livequery(function(){                	if(jQuery(this).is(":checked")){    	            var fname = jQuery("input[title='billingfirstname']").val();				var lname = jQuery("input[title='billinglastname']").val();            	            var addr = jQuery("textarea[title='billingaddress']").val();				var city = jQuery("input[title='billingcity']").val(); 	            var pcode = jQuery("input[title='billingpostcode']").val();				var phone = jQuery("input[title='billingphone']").val(); 	            var email = jQuery("input[title='billingfirstname']").val();	            var state = jQuery("select[title='billingregion'] :selected").text();				var country = jQuery("select[title='billingcountry'] :selected").text();				var countryID = jQuery("select[title='billingcountry'] :selected").val();             					jQuery("input[title='shippingfirstname']").val(fname);				jQuery("input[title='shippinglastname']").val(lname); 				jQuery("textarea[title='shippingaddress']").val(addr);				jQuery("input[title='shippingcity']").val(city);				jQuery("input[title='shippingpostcode']").val(pcode);								jQuery("input[title='shippingphone']").val(phone);								jQuery("input[title='shippingemail']").val(email);						jQuery("input[title='shippingstate']").val(state);																		jQuery("input.shipping_country").val(countryID);				jQuery("span.shipping_country_name").html(country);				jQuery("select#current_country").val(countryID);								if(jQuery("select[title='billingcountry'] :selected").val() != jQuery("select[name='country'] :selected").val()){					jQuery("select[name='country']").val(countryID);					submit_change_country();				}											}else{						}                     //otherwise, hide it            //jQuery("#extra").hide("fast");        }); 	 });	// Submit the product form using AJAX  jQuery("form.product_form").submit(function() {    // we cannot submit a file through AJAX, so this needs to return true to submit the form normally if a file formfield is present    file_upload_elements = jQuery.makeArray(jQuery('input[type=file]', jQuery(this)));		if(file_upload_elements.length > 0) {			return true;		} else {			form_values = jQuery(this).serialize();			// Sometimes jQuery returns an object instead of null, using length tells us how many elements are in the object, which is more reliable than comparing the object to null			if(jQuery('#fancy_notification').length == 0) {				jQuery('div.wpsc_loading_animation',this).css('visibility', 'visible');			}			jQuery.post( 'index.php?ajax=true', form_values, function(returned_data) {				eval(returned_data);				jQuery('div.wpsc_loading_animation').css('visibility', 'hidden');								if(jQuery('#fancy_notification') != null) {					jQuery('#loading_animation').css("display", 'none');					//jQuery('#fancy_notificationimage').css("display", 'none');				}							});			wpsc_fancy_notification(this);			return false;		}	});	jQuery('a.wpsc_category_link, a.wpsc_category_image_link').click(function(){    product_list_count = jQuery.makeArray(jQuery('ul.category-product-list'));		if(product_list_count.length > 0) {			jQuery('ul.category-product-list', jQuery(this).parent()).toggle();			return false;		}	});    //  this is for storing data with the product image, like the product ID, for things like dropshop and the the ike.	jQuery("form.product_form").livequery(function(){			product_id = jQuery('input[name=product_id]',this).val();			image_element_id = 'product_image_'+product_id;			jQuery("#"+image_element_id).data("product_id", product_id);						parent_container = jQuery(this).parents('div.product_view_'+product_id);			jQuery("div.item_no_image", parent_container).data("product_id", product_id);	});  //jQuery("form.product_form").trigger('load');    // Toggle the additional description content    jQuery("a.additional_description_link").click(function() {    parent_element = jQuery(this).parent('.additional_description_span');    jQuery('.additional_description',parent_element).toggle();		return false;	});		  // update the price when the variations are altered.  jQuery("div.wpsc_variation_forms .wpsc_select_variation").change(function() {    parent_form = jQuery(this).parents("form.product_form");    form_values =jQuery("input[name=product_id],div.wpsc_variation_forms .wpsc_select_variation",parent_form).serialize( );		jQuery.post( 'index.php?update_product_price=true', form_values, function(returned_data) {			eval(returned_data);      if(product_id != null) {        target_id = "product_price_"+product_id;				buynow_id = "BB_BuyButtonForm"+product_id;				//document.getElementById(target_id).firstChild.innerHTML = price;							if(jQuery("input#"+target_id).attr('type') == 'text') {				  jQuery("input#"+target_id).val(numeric_price);				} else {				  jQuery("#"+target_id+".pricedisplay").html(price);				}			}		});		return false;	});/*	jQuery('form#specials').livequery(function(){		jQuery(this).submit(function(){		alert('submitted');		form_values = "ajax=true&";		form_values += jQuery(this).serialize();			jQuery.post( 'index.php', form_values, function(returned_data) {				//eval(returned_data);			});				//return false;			});	});*/	jQuery("form.wpsc_empty_the_cart").livequery(function(){		jQuery(this).submit(function() {			form_values = "ajax=true&";			form_values += jQuery(this).serialize();			jQuery.post( 'index.php', form_values, function(returned_data) {				eval(returned_data);			});			return false;		});	});	jQuery("form.wpsc_empty_the_cart span.emptycart a").livequery(function(){		jQuery(this).click(function() {			parent_form = jQuery(this).parents("form.wpsc_empty_the_cart");			form_values = "ajax=true&";			form_values += jQuery(parent_form).serialize();			jQuery.post( 'index.php', form_values, function(returned_data) {				eval(returned_data);			});			return false;		});	}); });// update the totals when shipping methods are changed.function switchmethod(key,key1){// 	total=document.getElementById("shopping_cart_total_price").value;	form_values = "ajax=true&";	form_values += "wpsc_ajax_action=update_shipping_price&";	form_values += "key1="+key1+"&";	form_values += "key="+key;	jQuery.post( 'index.php', form_values, function(returned_data) {		eval(returned_data);	});}// submit the country forms.function submit_change_country(){  document.forms.change_country.submit();}// submit the fancy notifications forms.function wpsc_fancy_notification(parent_form){  if(typeof(WPSC_SHOW_FANCY_NOTIFICATION) == 'undefined'){    WPSC_SHOW_FANCY_NOTIFICATION = true;	}	if((WPSC_SHOW_FANCY_NOTIFICATION == true) && (jQuery('#fancy_notification') != null)){    var options = {      margin: 1 ,      border: 1 ,      padding: 1 ,      scroll: 1 		};    form_button_id = jQuery(parent_form).attr('id') + "_submit_button";    //console.log(form_button_id);    //return;    var container_offset = {};    new_container_offset = jQuery('#products_page_container').offset(options, container_offset);    		if(container_offset['left'] == null) {      container_offset['left'] = new_container_offset.left;      container_offset['top'] = new_container_offset.top;    }        var button_offset = {};    new_button_offset = jQuery('#'+form_button_id).offset(options, button_offset)        if(button_offset['left'] == null) {      button_offset['left'] = new_button_offset.left;      button_offset['top'] = new_button_offset.top;    }            jQuery('#fancy_notification').css("left", (button_offset['left'] - container_offset['left'] + 10) + 'px');    jQuery('#fancy_notification').css("top", ((button_offset['top']  - container_offset['top']) -60) + 'px');               jQuery('#fancy_notification').css("display", 'block');    jQuery('#loading_animation').css("display", 'block');    jQuery('#fancy_notification_content').css("display", 'none');  	}}function shopping_cart_collapser() {  switch(jQuery("#sliding_cart").css("display")) {    case 'none':    jQuery("#sliding_cart").slideToggle("fast",function(){			jQuery.post( 'index.php', "ajax=true&set_slider=true&state=1", function(returned_data) { });      jQuery("#fancy_collapser").attr("src", (WPSC_URL+"/images/minus.png"));		});    break;        default:    jQuery("#sliding_cart").slideToggle("fast",function(){			jQuery.post( 'index.php', "ajax=true&set_slider=true&state=0", function(returned_data) { });      jQuery("#fancy_collapser").attr("src", (WPSC_URL+"/images/plus.png"));		});    break;	}  return false;}  function set_billing_country(html_form_id, form_id){  var billing_region = '';  country = jQuery(("div#"+html_form_id+" select[class=current_country]")).val();  region = jQuery(("div#"+html_form_id+" select[class=current_region]")).val();  if(/[\d]{1,}/.test(region)) {    billing_region = "&billing_region="+region;	}		form_values = "wpsc_ajax_action=change_tax&form_id="+form_id+"&billing_country="+country+billing_region;	jQuery.post( 'index.php', form_values, function(returned_data) {		eval(returned_data);	});  //ajax.post("index.php",changetaxntotal,("ajax=true&form_id="+form_id+"&billing_country="+country+billing_region));}
// Copyright (c) 2005 Timothy R. Morgan// // Permission is hereby granted, free of charge, to any person obtaining a copy// of this software and associated documentation files (the "Software"), to deal// in the Software without restriction, including without limitation the rights// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell// copies of the Software, and to permit persons to whom the Software is// furnished to do so, subject to the following conditions:// // The above copyright notice and this permission notice shall be included in// all copies or substantial portions of the Software.// // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS// IN THE SOFTWARE.// mini/ajax.js - http://timmorgan.org/mini// var fvd = 0;function ajax_item(e){if(typeof e=='string')e=document.getElementById(e);return e};function collect(a,f){var n=[];for(var i=0;i<a.length;i++){var v=f(a[i]);if(v!=null)n.push(v)}return n};ajax={};ajax.x=function(){try{return new ActiveXObject('Msxml2.XMLHTTP')}catch(e){try{return new ActiveXObject('Microsoft.XMLHTTP')}catch(e){return new XMLHttpRequest()}}};ajax.serialize=function(f)  {  var g=function(n)    {    return f.getElementsByTagName(n)    };  var nv=function(e)    {    if(e.name)      {      return encodeURIComponent(e.name)+'='+encodeURIComponent(e.value);      } else {return '';}    };  var i=collect(g('input'),function(i){if((i.type!='radio'&&i.type!='checkbox')||i.checked)return nv(i)});var s=collect(g('select'),nv);var t=collect(g('textarea'),nv);return i.concat(s).concat(t).join('&');  };  ajax.send=function(u,f,m,a){var x=ajax.x();x.open(m,u,true);x.onreadystatechange=function(){if(x.readyState==4)f(x.responseText)};if(m=='POST')x.setRequestHeader('Content-type','application/x-www-form-urlencoded');x.send(a)};ajax.get=function(url,func){ajax.send(url,func,'GET')};ajax.gets=function(url){var x=ajax.x();x.open('GET',url,false);x.send(null);return x.responseText};ajax.post=function(url,func,args){ajax.send(url,func,'POST',args)};ajax.update=function(url,elm){var e=ajax_item(elm);var f=function(r){e.innerHTML=r};ajax.get(url,f)};ajax.submit=function(url,elm,frm){var e=ajax_item(elm);var f=function(r){e.innerHTML=r};ajax.post(url,f,ajax.serialize(frm))};
/*! Copyright (c) 2008 Brandon Aaron (http://brandonaaron.net) * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)  * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses. * * Version: 1.0.3 * Requires jQuery 1.1.3+ * Docs: http://docs.jquery.com/Plugins/livequery */(function($) {	$.extend($.fn, {	livequery: function(type, fn, fn2) {		var self = this, q;				// Handle different call patterns		if ($.isFunction(type))			fn2 = fn, fn = type, type = undefined;					// See if Live Query already exists		$.each( $.livequery.queries, function(i, query) {			if ( self.selector == query.selector && self.context == query.context &&				type == query.type && (!fn || fn.$lqguid == query.fn.$lqguid) && (!fn2 || fn2.$lqguid == query.fn2.$lqguid) )					// Found the query, exit the each loop					return (q = query) && false;		});				// Create new Live Query if it wasn't found		q = q || new $.livequery(this.selector, this.context, type, fn, fn2);				// Make sure it is running		q.stopped = false;				// Run it immediately for the first time		q.run();				// Contnue the chain		return this;	},		expire: function(type, fn, fn2) {		var self = this;				// Handle different call patterns		if ($.isFunction(type))			fn2 = fn, fn = type, type = undefined;					// Find the Live Query based on arguments and stop it		$.each( $.livequery.queries, function(i, query) {			if ( self.selector == query.selector && self.context == query.context && 				(!type || type == query.type) && (!fn || fn.$lqguid == query.fn.$lqguid) && (!fn2 || fn2.$lqguid == query.fn2.$lqguid) && !this.stopped )					$.livequery.stop(query.id);		});				// Continue the chain		return this;	}});$.livequery = function(selector, context, type, fn, fn2) {	this.selector = selector;	this.context  = context || document;	this.type     = type;	this.fn       = fn;	this.fn2      = fn2;	this.elements = [];	this.stopped  = false;		// The id is the index of the Live Query in $.livequery.queries	this.id = $.livequery.queries.push(this)-1;		// Mark the functions for matching later on	fn.$lqguid = fn.$lqguid || $.livequery.guid++;	if (fn2) fn2.$lqguid = fn2.$lqguid || $.livequery.guid++;		// Return the Live Query	return this;};$.livequery.prototype = {	stop: function() {		var query = this;				if ( this.type )			// Unbind all bound events			this.elements.unbind(this.type, this.fn);		else if (this.fn2)			// Call the second function for all matched elements			this.elements.each(function(i, el) {				query.fn2.apply(el);			});					// Clear out matched elements		this.elements = [];				// Stop the Live Query from running until restarted		this.stopped = true;	},		run: function() {		// Short-circuit if stopped		if ( this.stopped ) return;		var query = this;				var oEls = this.elements,			els  = $(this.selector, this.context),			nEls = els.not(oEls);				// Set elements to the latest set of matched elements		this.elements = els;				if (this.type) {			// Bind events to newly matched elements			nEls.bind(this.type, this.fn);						// Unbind events to elements no longer matched			if (oEls.length > 0)				$.each(oEls, function(i, el) {					if ( $.inArray(el, els) < 0 )						$.event.remove(el, query.type, query.fn);				});		}		else {			// Call the first function for newly matched elements			nEls.each(function() {				query.fn.apply(this);			});						// Call the second function for elements no longer matched			if ( this.fn2 && oEls.length > 0 )				$.each(oEls, function(i, el) {					if ( $.inArray(el, els) < 0 )						query.fn2.apply(el);				});		}	}};$.extend($.livequery, {	guid: 0,	queries: [],	queue: [],	running: false,	timeout: null,		checkQueue: function() {		if ( $.livequery.running && $.livequery.queue.length ) {			var length = $.livequery.queue.length;			// Run each Live Query currently in the queue			while ( length-- )				$.livequery.queries[ $.livequery.queue.shift() ].run();		}	},		pause: function() {		// Don't run anymore Live Queries until restarted		$.livequery.running = false;	},		play: function() {		// Restart Live Queries		$.livequery.running = true;		// Request a run of the Live Queries		$.livequery.run();	},		registerPlugin: function() {		$.each( arguments, function(i,n) {			// Short-circuit if the method doesn't exist			if (!$.fn[n]) return;						// Save a reference to the original method			var old = $.fn[n];						// Create a new method			$.fn[n] = function() {				// Call the original method				var r = old.apply(this, arguments);								// Request a run of the Live Queries				$.livequery.run();								// Return the original methods result				return r;			}		});	},		run: function(id) {		if (id != undefined) {			// Put the particular Live Query in the queue if it doesn't already exist			if ( $.inArray(id, $.livequery.queue) < 0 )				$.livequery.queue.push( id );		}		else			// Put each Live Query in the queue if it doesn't already exist			$.each( $.livequery.queries, function(id) {				if ( $.inArray(id, $.livequery.queue) < 0 )					$.livequery.queue.push( id );			});				// Clear timeout if it already exists		if ($.livequery.timeout) clearTimeout($.livequery.timeout);		// Create a timeout to check the queue and actually run the Live Queries		$.livequery.timeout = setTimeout($.livequery.checkQueue, 20);	},		stop: function(id) {		if (id != undefined)			// Stop are particular Live Query			$.livequery.queries[ id ].stop();		else			// Stop all Live Queries			$.each( $.livequery.queries, function(id) {				$.livequery.queries[ id ].stop();			});	}});// Register core DOM manipulation methods$.livequery.registerPlugin('append', 'prepend', 'after', 'before', 'wrap', 'attr', 'removeAttr', 'addClass', 'removeClass', 'toggleClass', 'empty', 'remove');// Run Live Queries when the Document is ready$(function() { $.livequery.play(); });// Save a reference to the original init methodvar init = $.prototype.init;// Create a new init method that exposes two new properties: selector and context$.prototype.init = function(a,c) {	// Call the original init and save the result	var r = init.apply(this, arguments);		// Copy over properties if they exist already	if (a && a.selector)		r.context = a.context, r.selector = a.selector;			// Set properties	if ( typeof a == 'string' )		r.context = c || document, r.selector = a;		// Return the result	return r;};// Give the init function the jQuery prototype for later instantiation (needed after Rev 4091)$.prototype.init.prototype = $.prototype;	})(jQuery);
var testsuccess = 0;var lnid = new Array();function categorylist(url) {  self.location = url;}var noresults=function(results) {  return true;}function roundNumber(num, dec) {	var result = Math.round(num*Math.pow(10,dec))/Math.pow(10,dec);	return result;}var getresults=function(results) {  eval(results);  if(window.drag_and_drop_cart_updater) {     drag_and_drop_cart_updater();	}  if(document.getElementById('loadingimage') != null) {    document.getElementById('loadingindicator').style.visibility = 'hidden';	} else if(document.getElementById('alt_loadingimage') != null) {    document.getElementById('alt_loadingindicator').style.visibility = 'hidden';	}  if((document.getElementById('sliding_cart') != null) && (document.getElementById('sliding_cart').style.display == 'none')) {    jQuery("#fancy_collapser").attr("src", (WPSC_URL+"/images/minus.png"));    jQuery("#sliding_cart").show("fast",function(){    ajax.post("index.php",noresults,"ajax=true&set_slider=true&state=1"); });	}  if(document.getElementById('fancy_notification') != null) {    jQuery('#loading_animation').css("display", 'none');    //jQuery('#fancy_notificationimage').css("display", 'none');	}}/*  function set_billing_country(html_form_id, form_id){  var billing_region = '';  country = jQuery(("div#"+html_form_id+" select[@class=current_country]")).val();  region = jQuery(("div#"+html_form_id+" select[@class=current_region]")).val();  if(/[\d]{1,6}/.test(region)) { // number over 6 digits for a region ID? yeah right, not in the lifetime of this code    billing_region = "&billing_region="+region;	}  ajax.post("index.php",getresults,("ajax=true&changetax=true&form_id="+form_id+"&billing_country="+country+billing_region));  //ajax.post("index.php",changetaxntotal,("ajax=true&form_id="+form_id+"&billing_country="+country+billing_region));}*/function submitform(frm, show_notification)  {  if(show_notification != false)    {    show_notification = true;    }  //alert(ajax.serialize(frm));  ajax.post("index.php?ajax=true&user=true",getresults,ajax.serialize(frm));  if(document.getElementById('loadingimage') != null)    {    document.getElementById('loadingimage').src = WPSC_URL+'/images/indicator.gif';    document.getElementById('loadingindicator').style.visibility = 'visible';    }     else if(document.getElementById('alt_loadingimage') != null)    {    document.getElementById('alt_loadingimage').src = WPSC_URL+'/images/indicator.gif';    document.getElementById('alt_loadingindicator').style.visibility = 'visible';    }       if((show_notification == true) && (document.getElementById('fancy_notification') != null))    {    var options = {      margin: 1 ,      border: 1 ,      padding: 1 ,      scroll: 1       };    form_button_id = frm.id + "_submit_button";    //alert(form_button_id);    var container_offset = {};    new_container_offset = jQuery('#products_page_container').offset(options, container_offset);    		if(container_offset['left'] == null) {      container_offset['left'] = new_container_offset.left;      container_offset['top'] = new_container_offset.top;    }        var button_offset = {};    new_button_offset = jQuery('#'+form_button_id).offset(options, button_offset)        if(button_offset['left'] == null) {      button_offset['left'] = new_button_offset.left;      button_offset['top'] = new_button_offset.top;    }            jQuery('#fancy_notification').css("left", (button_offset['left'] - container_offset['left'] + 10) + 'px');    jQuery('#fancy_notification').css("top", ((button_offset['top']  - container_offset['top']) -60) + 'px');                jQuery('#fancy_notification').css("display", 'block');    jQuery('#loading_animation').css("display", 'block');    jQuery('#fancy_notification_content').css("display", 'none');      }  return false;  }function prodgroupswitch(state)  {  if(state == 'brands')    {    jQuery('.categorydisplay').css("display", 'none');    jQuery('.branddisplay').css("display", 'block');    }    else if(state == 'categories')      {      jQuery('.categorydisplay').css("display", 'block');      jQuery('.branddisplay').css("display", 'none');      }  return false;  }  var previous_rating;function ie_rating_rollover(id,state)  {  target_element = document.getElementById(id);  switch(state)    {    case 1:    previous_rating = target_element.style.background;    target_element.style.background = "url("+WPSC_URL+"/images/blue-star.gif)";    break;        default:    if(target_element.style.background != "url("+WPSC_URL+"/images/gold-star.gif)")      {      target_element.style.background = previous_rating;      }    break;    }  }    var apply_rating=function(results)  {  outarr = results.split(",");  //alert(results);  for(i=1;i<=outarr[1];i++)    {    id = "star"+outarr[0]+"and"+i+"_link";    document.getElementById(id).style.background = "url("+WPSC_URL+"/images/gold-star.gif)";    }      for(i=5;i>outarr[1];i--)    {    id = "star"+outarr[0]+"and"+i+"_link";    document.getElementById(id).style.background = "#c4c4b8";    }  lnid[outarr[0]] = 1;       rating_id = 'rating_'+outarr[0]+'_text';  //alert(rating_id);  if(document.getElementById(rating_id).innerHTML != "Your Rating:")    {    document.getElementById(rating_id).innerHTML = "Your Rating:";    }      saved_id = 'saved_'+outarr[0]+'_text';  document.getElementById(saved_id).style.display = "inline";  update_vote_count(outarr[0]);  }  function hide_save_indicator(id)  {  document.getElementById(id).style.display = "none";  }  function rate_item(prodid,rating)  {  ajax.post("index.php",apply_rating,"ajax=true&rate_item=true&product_id="+prodid+"&rating="+rating);  }  function update_vote_count(prodid)  {  var update_vote_count=function(results)    {    outarr = results.split(",");    vote_count = outarr[0];    prodid = outarr[1];    vote_count_id = 'vote_total_'+prodid;    document.getElementById(vote_count_id).innerHTML = vote_count;    }  ajax.post("index.php",update_vote_count,"ajax=true&get_rating_count=true&product_id="+prodid);  }  function update_preview_url(prodid)  {  image_height = document.getElementById("image_height").value;  image_width = document.getElementById("image_width").value;  if(((image_height > 0) && (image_height <= 1024)) && ((image_width > 0) && (image_width <= 1024)))    {    new_url = "index.php?productid="+prodid+"&height="+image_height+"&width="+image_width+"";    document.getElementById("preview_link").setAttribute('href',new_url);    }    else      {      new_url = "index.php?productid="+prodid+"";      document.getElementById("preview_link").setAttribute('href',new_url);      }  return false;  }  function change_variation(product_id, variation_ids, special) {  value_ids = '';  special_prefix = "";  if(special == true) {    form_id = "specials_"+product_id;	} else {    form_id = "product_"+product_id;	}  for(var i in variation_ids) {    if(!isNaN(parseInt(i))) {      variation_name = "variation["+variation_ids[i]+"]";      value_ids += "&variation[]="+document.getElementById(form_id).elements[variation_name].value;		}	}  if(special == true) {    var return_price=function(results) {       eval(results);      if(product_id != null) {        target_id = "special_product_price_"+product_id;				buynow_id = "BB_BuyButtonForm"+product_id;				document.getElementById(target_id).firstChild.innerHTML = price;				if (price.substring(27,price.indexOf("&"))!='')					document.getElementById(buynow_id).item_price_1.value = price.substring(27,price.indexOf("&"));				}      }	} else {    var return_price=function(results) {      //alert(results);      eval(results);      if(product_id != null) {        target_id = "product_price_"+product_id;				buynow_id = "BB_BuyButtonForm"+product_id;				//document.getElementById(target_id).firstChild.innerHTML = price;							if(jQuery("input#"+target_id).attr('type') == 'text') {				  jQuery("input#"+target_id).val(numeric_price);				} else {				  jQuery("#"+target_id+" span.pricedisplay").html(price);				}			}		}	}  ajax.post("index.php",return_price,"ajax=true&get_updated_price=true&product_id="+product_id+value_ids);}function show_details_box(id,image_id) {  state = document.getElementById(id).style.display;   if(state != 'block') {    document.getElementById(id).style.display = 'block';    document.getElementById(image_id).src = WPSC_URL+"/images/icon_window_collapse.gif";	} else {		document.getElementById(id).style.display = 'none';		document.getElementById(image_id).src = WPSC_URL+"/images/icon_window_expand.gif";	}  return false;}  var register_results=function(results) {  jQuery("div#TB_ajaxContent").html(results);  jQuery('div#checkout_login_box').css("border", '1px solid #339933');  jQuery('div#checkout_login_box').css("background-color", '#e8fcea');}  function submit_register_form(frm)  {  jQuery('img#register_loading_img').css("display", 'inline');  ajax.post("index.php?ajax=true&action=register",register_results,ajax.serialize(frm));  return false;  }var fadeInSuggestion = function(suggestionBox, suggestionIframe) {	$(suggestionBox).fadeTo(300,1);};var fadeOutSuggestion = function(suggestionBox, suggestionIframe) {	$(suggestionBox).fadeTo(300,0);};function change_pics(command){	location1 = window.location.href;	if (command == 1){		document.getElementById('out_view_type').innerHTML = "<input type='hidden' id='view_type' name='view_type' value='default'>";		document.getElementById('out_default_pic').innerHTML ="<img id='default_pic' src='"+WPSC_URL+"/images/default-on.gif'>";		document.getElementById('out_grid_pic').innerHTML ="<img id='grid_pic' style='cursor:pointer;' onclick='change_pics(0)' src='"+WPSC_URL+"/images/grid-off.gif'>";		if (location1.search(/view_type/)!=-1) {			$new_location = location1.replace("grid","default");		} else {		  if (location1.search(/\?/)!=-1) {				$new_location = location1+"&view_type=default";			} else {				$new_location = location1+"?view_type=default";			}		}		window.location = $new_location;	} else {		document.getElementById('out_view_type').innerHTML = "<input type='hidden' id='view_type' name='view_type' value='grid'>";		document.getElementById('out_default_pic').innerHTML ="<img id='default_pic'  style='cursor:pointer;' onclick='change_pics(1)' src='"+WPSC_URL+"/images/default-off.gif'>";		document.getElementById('out_grid_pic').innerHTML ="<img id='grid_pic' src='"+WPSC_URL+"/images/grid-on.gif'>";		if (location1.search(/view_type/)!=-1) {			$new_location = location1.replace("default","grid");		} else {		  if (location1.search(/\?/)!=-1) {				$new_location = location1+"&view_type=grid";			} else {				$new_location = location1+"?view_type=grid";			}		}				window.location = $new_location;	}}function log_buynow(form){	id = form.product_id.value;	price = form.item_price_1.value;	ajax.post("index.php",noresults,"ajax=true&buynow=true&product_id="+id+"price="+price);}function gotoexternallink(link){	window.location = link;}function manage_extras(product_id, extras_id, special) {	value_ids = '';	special_prefix = "";	extra_idss='';	document.getElementById('extras_indicator'+product_id+extras_id).style.display='block';	if(special == true) {		form_id = "specials_"+product_id;	} else {		form_id = "product_"+product_id;	}		jQuery(document).ready(function(){		extra_ids=jQuery("input.extras_"+product_id+":checked");	});		jQuery.each(extra_ids, function(key, value) {		extra_idss += "&extra[]="+extra_ids[key].value;	});	pm='stay';	if(special == true) {		var return_price=function(results) {			//alert(results);			eval(results);			if(product_id != null) {				target_id = "special_product_price_"+product_id;				buynow_id = "BB_BuyButtonForm"+product_id;				document.getElementById(target_id).firstChild.innerHTML = price;				if (price.substring(27,price.indexOf("&"))!='')					document.getElementById(buynow_id).item_price_1.value = price.substring(27,price.indexOf("&"));			}			document.getElementById('extras_indicator'+product_id+extras_id).style.display='none';		}	} else {		var return_price=function(results) {			eval(results);			if(product_id != null) {				target_id = "product_price_"+product_id;				buynow_id = "BB_BuyButtonForm"+product_id;				document.getElementById(target_id).firstChild.innerHTML = price;				if (price.substring(27,price.indexOf("&"))!='')					document.getElementById(form_id).item_price_1.value = price.substring(27,price.indexOf("&"));			}			document.getElementById('extras_indicator'+product_id+extras_id).style.display='none';		}	}ajax.post("index.php",return_price,"ajax=true&get_updated_price=true&pm="+pm+"&product_id="+product_id+extra_idss);}function store_list(){	address = document.getElementById('user_address').value;	city = document.getElementById('user_city').value;	if ((address != '')&&(city != '')) {		document.getElementById('gloc_loading').style.display='block';		ajax.post("index.php",return_store_list,"ajax=true&store_list=true&addr="+address+"&city="+city);	}}var return_store_list=function(results) {	document.getElementById('gloc_storelist').innerHTML=results;	document.getElementById('gloc_loading').style.display='none';	return true;}function autocomplete(event) {	if(!event){		event=window.event;	}	if(event.keyCode){		keyPressed=event.keyCode;	}else if(event.which){		keyPressed=event.which;	}	str = document.getElementById('wpsc_search_autocomplete').value;	if (str != '') {		ajax.post("index.php",autocomplete_results,"wpsc_live_search=true&keyword="+str);	} else {		jQuery('#blind_down').slideUp(100);	}}var autocomplete_results=function(results) {	document.getElementById('blind_down').innerHTML=results;	if (document.getElementById('blind_down').style.display!='block') {		jQuery('#blind_down').slideDown(200);	}	return true;}function statusTextKeyPress(event){	if(!event){		event=window.event;	}	if(event.keyCode){		keyPressed=event.keyCode;	}else if(event.which){		keyPressed=event.which;	}	if(keyPressed==9){		return false;	}	if(keyPressed==13){		newstatus = document.getElementById('status_change_text').value;		ajax.post("index.php",submit_user_status,"ajax=true&submitstatus=true&status="+newstatus);		return false;	}	if(keyPressed==27){		document.getElementById('edit_status_select').style.display='none';		return false;	}	return true;}// function switchmethod(key,key1){// // 	total=document.getElementById("shopping_cart_total_price").value;// 	ajax.post("index.php",usps_method_switch,"ajax=true&uspsswitch=true&key1="+key1+"&key="+key+"&total="+total);// }var usps_method_switch=function (results){	shipping = results.split('---');	shipping1 = shipping[1];	jQuery("#checkout_total").html(shipping[0]);		jQuery('.total > .pricedisplay').remove();	jQuery('.total > .totalhead').after(shipping[0]);	jQuery('.postage > .pricedisplay').remove();	jQuery('.postage > .postagehead').after(shipping1);}function add_meta_box(results){	jQuery(".wpsc_buy_button").before(results);	jQuery('.time_requested').datepicker({ dateFormat: 'yy-mm-dd' });}function submit_purchase(){	document.forms.ideal_form.submit();}function do_nothing() {	return;}jQuery(document).ready(	function() {		if (jQuery("#openair").val() == 1) {			var max_height = 0;			var min_offset = 9999;			var max_left_offset = 0;			var top_offset = 0;			jQuery("div.product_grid_item").each(				function() {					jQuery(this).css('margin','0');					if (jQuery(this).height() > max_height) {						max_height = jQuery(this).height();					}					var offset = jQuery(this).offset();					if (offset.left <= min_offset) {						min_offset = offset.left;					}					if (offset.top > top_offset) {						top_offset = offset.top;					}					if (offset.left > max_left_offset) {						max_left_offset = offset.left;					}				}			);						jQuery("div.product_grid_item:last").each(				function() {					var offset = jQuery(this).offset();										if (offset.left != max_left_offset) {						jQuery(this).css('border-right','1px solid #ddd');					}				}			);						jQuery("div.product_grid_item").each(				function() {																				var offset = jQuery(this).offset();					if (offset.left == min_offset) {						setTimeout('do_nothing', 200);						jQuery(this).css('border-left','0px solid #ddd');					}										if (offset.top == top_offset) {						jQuery(this).css('border-bottom','0px solid #ddd');					}					jQuery(this).height(max_height+30);				}			);		}								jQuery("div.custom_gateway table").each(			function() {				if(jQuery(this).css('display') == 'none') {					jQuery('input', this).attr( 'disabled', true);				}			}		);				jQuery("input.custom_gateway").change(			function() {				if(jQuery(this).attr('checked') == true) {					parent_div = jQuery(this).parents("div.custom_gateway");					jQuery('table input',parent_div).attr( 'disabled', false);					jQuery('table',parent_div).css('display', 'block');				  jQuery("div.custom_gateway table").not(jQuery('table',parent_div)).css('display', 'none');				  				  jQuery("div.custom_gateway table input").not(jQuery('table input',parent_div)).attr( 'disabled', true);				}			}		);	});
/* * Thickbox 2.1 - jQuery plugin for displaying content in a box above the page *  * Copyright (c) 2006, 2007 Cody Lindley (http://www.codylindley.com) * * Licensed under the MIT License: *   http://www.opensource.org/licenses/mit-license.php */// on page load call TB_initjQuery(document).ready(TB_init);// add thickbox to href elements that have a class of .thickboxfunction TB_init(){	jQuery("a.thickbox").click(function(event){		// stop default behaviour		event.preventDefault();		// remove click border		this.blur();			// get caption: either title or name attribute		var caption = this.title || this.name || "";				// get rel attribute for image groups		var group = this.rel || false;				// display the box for the elements href		TB_show(caption, this.href, group);	});}// called when the user clicks on a thickbox linkfunction TB_show(caption, url, rel) {	// create iframe, overlay and box if non-existent	if ( !jQuery("#TB_HideSelect").length ) {		jQuery("body").append("<iframe id='TB_HideSelect'></iframe><div id='TB_overlay'></div><div id='TB_window'></div>");		jQuery("#TB_overlay").click(TB_remove);	}	// TODO replace or check if event is already assigned	jQuery(window).scroll(TB_position);		// TODO replace	TB_overlaySize();		// TODO create loader only once, hide and show on demand	jQuery("body").append("<div id='TB_load'><img src='"+fileThickboxLoadingImage+"' /></div>");	TB_load_position();		// check if a query string is involved	var baseURL = url.match(/(.+)?/)[1] || url;	// regex to check if a href refers to an image	var imageURL = /\.(jpe?g|png|gif|bmp)/gi;	// check for images	if ( baseURL.match(imageURL) ) {		var dummy = { caption: "", url: "", html: "" };				var prev = dummy,			next = dummy,			imageCount = "";					// if an image group is given		if ( rel ) {			function getInfo(image, id, label) {				return {					caption: image.title,					url: image.href,					html: "<span id='TB_" + id + "'>&nbsp;&nbsp;<a href='#'>" + label + "</a></span>"				}			}					// find the anchors that point to the group			var imageGroup = jQuery("a[rel="+rel+"]").get();			var foundSelf = false;			var imageTitle = 'Gallery'; //default to something sane			// loop through the anchors, looking for ourself, saving information about previous and next image			for (var i = 0; i < imageGroup.length; i++) {				var image = imageGroup[i];				var urlTypeTemp = image.href.match(imageURL);								// look for ourself				if ( image.href == url ) {					foundSelf = true;					imageCount = "Image " + (i + 1) + " of "+ (imageGroup.length);          if(image.rel != null) {            imageTitle = image.rel.replace(/_/, " ");					}				} else {					// when we found ourself, the current is the next image					if ( foundSelf ) {						next = getInfo(image, "next", "Next &gt;");						// stop searching						break;					} else {						// didn't find ourself yet, so this may be the one before ourself						prev = getInfo(image, "prev", "&lt; Prev");					}				}			}		}				imgPreloader = new Image();		imgPreloader.onload = function() {			imgPreloader.onload = null;			// Resizing large images			var pagesize = TB_getPageSize();			var x = pagesize[0] - 150;			var y = pagesize[1] - 150;			var imageWidth = imgPreloader.width;			var imageHeight = imgPreloader.height;			if (imageWidth > x) {				imageHeight = imageHeight * (x / imageWidth); 				imageWidth = x; 				if (imageHeight > y) { 					imageWidth = imageWidth * (y / imageHeight); 					imageHeight = y; 				}			} else if (imageHeight > y) { 				imageWidth = imageWidth * (y / imageHeight); 				imageHeight = y; 				if (imageWidth > x) { 					imageHeight = imageHeight * (x / imageWidth); 					imageWidth = x;				}			}			// End Resizing						// TODO don't use globals      if(imageGroup.length > 1) {         TB_WIDTH = imageWidth + 30 + 76 + 18;        TB_HEIGHT = imageHeight + 60;         // Browser detection is bad and all, but hey, its better than things not working        if(jQuery.browser.msie) {          TB_HEIGHT += 30;           if(navigator.appVersion.match(/MSIE\s6\.0/) == "MSIE 6.0") {            TB_WIDTH += 20;					}				}                // make additional image links and containing div        thumbPreloader = Array();        additional_links = "<div id='TB_additional_images'>";        var thumb_x = 76;        var thumb_y = imageHeight;                for (var i = 0; i < imageGroup.length; i++) {          var image = imageGroup[i];          // look for ourself          var image_selected = "";          if ( image.href == url ) {            image_selected = "class='TB_Selected'";            }                      thumbPreloader[i] = new Image();          thumbPreloader[i].onload = function() {            //thumbPreloader[i].onload = null;    					}          thumbPreloader[i].src = image.href;        var thumbImgWidth = thumbPreloader[i].width;        var thumbImgHeight = thumbPreloader[i].height;        if (thumbImgWidth > thumb_x) {          thumbImgHeight = Math.floor(thumbImgHeight * (thumb_x / thumbImgWidth));           thumbImgWidth = Math.floor(thumb_x);           if (thumbImgHeight > thumb_y) {             thumbImgWidth = Math.floor(thumbImgWidth * (thumb_y / thumbImgHeight));             thumbImgHeight = Math.floor(thumb_y); 					}				}				if(thumbImgWidth < 1) {          thumbImgWidth = thumb_x;								}								if(thumbImgHeight < 1) {          thumbImgHeight = 60								}								if(jQuery('img',image).attr('src') == null) {					image_src = jQuery(image).attr('rev');				} else {					image_src = jQuery('img',image).attr('src');				}								image_src = image_src.replace(/width=(\d)*/, "width="+thumbImgWidth);				image_src = image_src.replace(/height=(\d)*/, "height="+thumbImgHeight);        additional_links += "<a href='#' "+image_selected+" id='TB_ThumbnailLink_"+i+"' ><img class='TB_Thumbnail_Image' src='"+image_src+"' width='"+thumbImgWidth+"' height='"+thumbImgHeight+"' alt=''/></a>";        }                additional_links += "</div>";       jQuery("#TB_window").append("<div id='TB_Header'><div id='TB_TopCloseAjaxWindow'><a href='#' id='TB_TopCloseWindowButton' title='Close'>close</a></div>"+imageTitle+"</div>");                jQuery("#TB_window").append(additional_links);        jQuery("#TB_TopCloseWindowButton").click(TB_remove);        }        else          {          TB_WIDTH = imageWidth + 30;          TB_HEIGHT = imageHeight + 60;          }			// TODO empty window content instead			jQuery("#TB_window").append("<a href='' id='TB_ImageOff' title='Close'><img id='TB_Image' src='"+url+"' width='"+imageWidth+"' height='"+imageHeight+"' alt='"+caption+"'/></a>" + "<div id='TB_caption'>"+caption+"<div id='TB_secondLine'>" + imageCount + prev.html + next.html + "</div></div><div id='TB_closeWindow'><a href='#' id='TB_closeWindowButton' title='Close'>close</a></div>");						jQuery("#TB_closeWindowButton").click(TB_remove);         function buildClickHandler(image) {         return function() {            jQuery("#TB_window").remove();            jQuery("body").append("<div id='TB_window'></div>");            TB_show(image.caption, image.url, rel);            return false;          };       }               if(imageGroup.length > 1)        {          goImage = Array();        for (var i = 0; i < imageGroup.length; i++) {                goImage[i] = buildClickHandler(getInfo(imageGroup[i], "image_"+i+"", ""));          jQuery("#TB_ThumbnailLink_"+i+"").click(goImage[i]);          }        }			var goPrev = buildClickHandler(prev);			var goNext = buildClickHandler(next);			if ( prev.html ) {				jQuery("#TB_prev").click(goPrev);			}						if ( next.html ) {						jQuery("#TB_next").click(goNext);			}						// TODO use jQuery, maybe with event fix plugin, or just get the necessary parts of it			document.onkeydown = function(e) {				if (e == null) { // ie					keycode = event.keyCode;				} else { // mozilla					keycode = e.which;				}				switch(keycode) {				case 27:					TB_remove();					break;				case 190:					if( next.html ) {						document.onkeydown = null;						goNext();					}					break;				case 188:					if( prev.html ) {						document.onkeydown = null;						goPrev();					}					break;				}			}						// TODO don't remove loader etc., just hide and show later			TB_position();			jQuery("#TB_load").remove();			jQuery("#TB_ImageOff").click(TB_remove);						// for safari using css instead of show			// TODO is that necessary? can't test safari			jQuery("#TB_window").css({display:"block"});		}		imgPreloader.src = url;			} else { //code to show html pages		//alert(url);		var queryString = url.match(/\?(.+)/)[1];		var params = TB_parseQuery( queryString );				TB_WIDTH = (params['width']*1) + 30;		TB_HEIGHT = (params['height']*1) + 40;		var ajaxContentW = TB_WIDTH - 30,			ajaxContentH = TB_HEIGHT - 45;				if(url.indexOf('TB_iframe') != -1){							urlNoQuery = url.split('TB_');					jQuery("#TB_window").append("<div id='TB_title'><div id='TB_ajaxWindowTitle'>"+caption+"</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton' title='Close'>close</a></div></div><iframe frameborder='0' hspace='0' src='"+urlNoQuery[0]+"' id='TB_iframeContent' name='TB_iframeContent' style='width:"+(ajaxContentW + 29)+"px;height:"+(ajaxContentH + 17)+"px;' onload='TB_showIframe()'> </iframe>");		} else {			jQuery("#TB_window").append("<div id='TB_title'><div id='TB_ajaxWindowTitle'>"+caption+"</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton'>close</a></div></div><div id='TB_ajaxContent' style='width:"+ajaxContentW+"px;height:"+ajaxContentH+"px;'></div>");		}						jQuery("#TB_closeWindowButton").click(TB_remove);					if(url.indexOf('TB_inline') != -1){					jQuery("#TB_ajaxContent").html(jQuery('#' + params['inlineId']).html());				TB_position();				jQuery("#TB_load").remove();				jQuery("#TB_window").css({display:"block"}); 			}else if(url.indexOf('TB_iframe') != -1){				TB_position();				if(frames['TB_iframeContent'] == undefined){//be nice to safari					jQuery("#TB_load").remove();					jQuery("#TB_window").css({display:"block"});					jQuery(document).keyup( function(e){ var key = e.keyCode; if(key == 27){TB_remove()} });				}			}else{				jQuery("#TB_ajaxContent").load(url, function(){					TB_position();					jQuery("#TB_load").remove();					jQuery("#TB_window").css({display:"block"}); 				});			}		}		jQuery(window).resize(TB_position);		document.onkeyup = function(e){ 			if (e == null) { // ie			keycode = event.keyCode;		} else { // mozilla			keycode = e.which;		}		if(keycode == 27){ // close			TB_remove();		}		}		}//helper functions belowfunction TB_showIframe(){	jQuery("#TB_load").remove();	jQuery("#TB_window").css({display:"block"});}function TB_remove() { 	jQuery("#TB_imageOff").unbind("click");	jQuery("#TB_overlay").unbind("click");	jQuery("#TB_closeWindowButton").unbind("click");  jQuery("#TB_TopCloseWindowButton").unbind("click");	jQuery("#TB_window").fadeOut("fast",function(){jQuery('#TB_window,#TB_overlay,#TB_HideSelect').remove();});	jQuery("#TB_load").remove();	return false;}function TB_position() {	var pagesize = TB_getPageSize();		var arrayPageScroll = TB_getPageScrollTop();	var style = {width: TB_WIDTH, left: (arrayPageScroll[0] + (pagesize[0] - TB_WIDTH)/2), top: (arrayPageScroll[1] + (pagesize[1]-TB_HEIGHT)/2)};	jQuery("#TB_window").css(style);	jQuery("#TB_window").css("margin-top", 0);}function TB_overlaySize(){	if (window.innerHeight && window.scrollMaxY || window.innerWidth && window.scrollMaxX) {			yScroll = window.innerHeight + window.scrollMaxY;		xScroll = window.innerWidth + window.scrollMaxX;		var deff = document.documentElement;		var wff = (deff&&deff.clientWidth) || document.body.clientWidth || window.innerWidth || self.innerWidth;		var hff = (deff&&deff.clientHeight) || document.body.clientHeight || window.innerHeight || self.innerHeight;		xScroll -= (window.innerWidth - wff);		yScroll -= (window.innerHeight - hff);	} else if (document.body.scrollHeight > document.body.offsetHeight || document.body.scrollWidth > document.body.offsetWidth){ // all but Explorer Mac		yScroll = document.body.scrollHeight;		xScroll = document.body.scrollWidth;	} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari		yScroll = document.body.offsetHeight;		xScroll = document.body.offsetWidth;  	}	jQuery("#TB_overlay").css({"height": yScroll, "width": xScroll});	jQuery("#TB_HideSelect").css({"height": yScroll,"width": xScroll});}function TB_load_position() {	var pagesize = TB_getPageSize();	var arrayPageScroll = TB_getPageScrollTop();	jQuery("#TB_load")		.css({left: (arrayPageScroll[0] + (pagesize[0] - 100)/2), top: (arrayPageScroll[1] + ((pagesize[1]-100)/2)) })		.css({display:"block"});}function TB_parseQuery ( query ) {	// return empty object	if( !query )		return {};	var params = {};		// parse query	var pairs = query.split(/[;&]/);	for ( var i = 0; i < pairs.length; i++ ) {		var pair = pairs[i].split('=');		if ( !pair || pair.length != 2 )			continue;		// unescape both key and value, replace "+" with spaces in value		params[unescape(pair[0])] = unescape(pair[1]).replace(/\+/g, ' ');   }   return params;}function TB_getPageScrollTop(){	var yScrolltop;	var xScrollleft;	if (self.pageYOffset || self.pageXOffset) {		yScrolltop = self.pageYOffset;		xScrollleft = self.pageXOffset;	} else if (document.documentElement && document.documentElement.scrollTop || document.documentElement.scrollLeft ){	 // Explorer 6 Strict		yScrolltop = document.documentElement.scrollTop;		xScrollleft = document.documentElement.scrollLeft;	} else if (document.body) {// all other Explorers		yScrolltop = document.body.scrollTop;		xScrollleft = document.body.scrollLeft;	}	arrayPageScroll = new Array(xScrollleft,yScrolltop) 	return arrayPageScroll;}function TB_getPageSize(){	var de = document.documentElement;	var w = window.innerWidth || self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth;	var h = window.innerHeight || self.innerHeight || (de&&de.clientHeight) || document.body.clientHeight	arrayPageSize = new Array(w,h) 	return arrayPageSize;}
/*
Shutter Reloaded for NextGEN Gallery
http://www.laptoptips.ca/javascripts/shutter-reloaded/
Version: 1.3.0
Copyright (C) 2007-2008  Andrew Ozz
Released under the GPL, http://www.gnu.org/copyleft/gpl.html

Acknowledgement: some ideas are from: Shutter by Andrew Sutherland - http://code.jalenack.com, WordPress - http://wordpress.org, Lightbox by Lokesh Dhakar - http://www.huddletogether.com, the icons are from Crystal Project Icons, Everaldo Coelho, http://www.everaldo.com

*/

shutterOnload = function(){shutterReloaded.init('sh');}

if (typeof shutterOnload == 'function') {
	if ('undefined' != typeof jQuery) jQuery(document).ready(function(){shutterOnload();});
	else if( typeof window.onload != 'function' ) window.onload = shutterOnload;
	else {oldonld = window.onload;window.onload = function(){if(oldonld){oldonld();};shutterOnload();}};
}

shutterReloaded = {

	I : function (a) {
		return document.getElementById(a);
	},

	settings : function() {
		var t = this, s = shutterSettings;

		t.imageCount = s.imageCount || 0;
		t.msgLoading = s.msgLoading || 'L O A D I N G';
		t.msgClose = s.msgClose || 'Click to Close';
	},

	init : function (a) {
		var t = this, L, T, ext, i, m, setid, inset, shfile, shMenuPre, k, img;
		shutterLinks = {}, shutterSets = {};
		if ( 'object' != typeof shutterSettings ) shutterSettings = {};

		for ( i = 0; i < document.links.length; i++ ) {
			L = document.links[i];
			ext = ( L.href.indexOf('?') == -1 ) ? L.href.slice(-4).toLowerCase() : L.href.substring( 0, L.href.indexOf('?') ).slice(-4).toLowerCase();
			if ( ext != '.jpg' && ext != '.png' && ext != '.gif' && ext != 'jpeg' ) continue;
			if ( a == 'sh' && L.className.toLowerCase().indexOf('shutter') == -1 ) continue;
			if ( a == 'lb' && L.rel.toLowerCase().indexOf('lightbox') == -1 ) continue;

			if ( L.className.toLowerCase().indexOf('shutterset') != -1 )
			setid = L.className.replace(/\s/g, '_');			
			else if ( L.rel.toLowerCase().indexOf('lightbox[') != -1 )
			setid = L.rel.replace(/\s/g, '_');
			else setid = 0, inset = -1;
			
			if( setid ) {
				if ( ! shutterSets[setid] ) shutterSets[setid] = [];
					inset = shutterSets[setid].push(i);
			}
			
			shfile = L.href.slice(L.href.lastIndexOf('/')+1);
			T = ( L.title && L.title != shfile ) ? L.title : '';
			
			shutterLinks[i] = {link:L.href,num:inset,set:setid,title:T}
			L.onclick = new Function('shutterReloaded.make("' + i + '");return false;');
		}

		t.settings();

	},

	make : function(ln,fs) {
		var t = this, prev, next, prevlink = '', nextlink = '', previmg, nextimg, D, S, W, fsarg = -1, imgNum, NavBar;

		if ( ! t.Top ) {
			if ( typeof window.pageYOffset != 'undefined' ) t.Top = window.pageYOffset;
			else t.Top = (document.documentElement.scrollTop > 0) ? document.documentElement.scrollTop : document.body.scrollTop;
		}

		if ( typeof t.pgHeight == 'undefined' )
			t.pgHeight = Math.max(document.documentElement.scrollHeight,document.body.scrollHeight);

		if ( fs ) t.FS = ( fs > 0 ) ? 1 : 0;
		else t.FS = shutterSettings.FS || 0;

		if ( t.resizing ) t.resizing = null;
		window.onresize = new Function('shutterReloaded.resize("'+ln+'");');

		document.documentElement.style.overflowX = 'hidden';
		if ( ! t.VP ) {
			t._viewPort();
			t.VP = true;
		}

		if ( ! (S = t.I('shShutter')) ) {
			S = document.createElement('div');
			S.setAttribute('id','shShutter');
			document.getElementsByTagName('body')[0].appendChild(S);
			t.hideTags();
		}

		if ( ! (D = t.I('shDisplay')) ) {
			D = document.createElement('div');
			D.setAttribute('id','shDisplay');
			D.style.top = t.Top + 'px';
			document.getElementsByTagName('body')[0].appendChild(D);
		}

		S.style.height = t.pgHeight + 'px';

		var dv = t.textBtns ? ' | ' : '';
		if ( shutterLinks[ln].num > 1 ) {
			prev = shutterSets[shutterLinks[ln].set][shutterLinks[ln].num - 2];
			prevlink = '<a href="#" onclick="shutterReloaded.make('+prev+');return false">&lt;&lt;</a>'+dv;
			previmg = new Image();
			previmg.src = shutterLinks[prev].link;
		} else {
			prevlink = '';
		}

		if ( shutterLinks[ln].num != -1 && shutterLinks[ln].num < (shutterSets[shutterLinks[ln].set].length) ) {
			next = shutterSets[shutterLinks[ln].set][shutterLinks[ln].num];
			nextlink = '<a href="#" onclick="shutterReloaded.make('+next+');return false">&gt;&gt;</a>'+dv;
			nextimg = new Image();
			nextimg.src = shutterLinks[next].link;
		} else {
			nextlink = '';
		}

		imgNum = ( (shutterLinks[ln].num > 0) && t.imageCount ) ? '<div id="shCount">&nbsp;(&nbsp;' + shutterLinks[ln].num + '&nbsp;/&nbsp;' + shutterSets[shutterLinks[ln].set].length + '&nbsp;)&nbsp;</div>' : '';

		NavBar = '<div id="shTitle"><div id="shPrev">' + prevlink + '</div><div id="shNext">' + nextlink + '</div><div id="shName">' + shutterLinks[ln].title + '</div>' + imgNum + '</div>';

		D.innerHTML = '<div id="shWrap"><img src="'+shutterLinks[ln].link+'" id="shTopImg" title="' + t.msgClose + '" onload="shutterReloaded.showImg();" onclick="shutterReloaded.hideShutter();" />' + NavBar +'</div>';

		window.setTimeout(function(){shutterReloaded.loading();},2000);
	},

	loading : function() {
		var t = this, S, WB, W;
		if ( (W = t.I('shWrap')) && W.style.visibility == 'visible' ) return;
		if ( ! (S = t.I('shShutter')) ) return;
		if ( t.I('shWaitBar') ) return;
		WB = document.createElement('div');
		WB.setAttribute('id','shWaitBar');
		WB.style.top = t.Top + 'px';
		WB.innerHTML = t.msgLoading;
		S.appendChild(WB);
	},

	hideShutter : function() {
		var t = this, D, S;
		if ( D = t.I('shDisplay') ) D.parentNode.removeChild(D);
		if ( S = t.I('shShutter') ) S.parentNode.removeChild(S);
		t.hideTags(true);
		window.scrollTo(0,t.Top);
		window.onresize = t.FS = t.Top = t.VP = null;
		document.documentElement.style.overflowX = '';
	},

	resize : function(ln) {
		var t = this;

		if ( t.resizing ) return;
		if ( ! t.I('shShutter') ) return;
		var W = t.I('shWrap');
		if ( W ) W.style.visibility = 'hidden';

		window.setTimeout(function(){shutterReloaded.resizing = null},500);
		window.setTimeout(new Function('shutterReloaded.VP = null;shutterReloaded.make("'+ln+'");'),100);
		t.resizing = true;
	},

	_viewPort : function() {
		var t = this;
		var wiH = window.innerHeight ? window.innerHeight : 0;
		var dbH = document.body.clientHeight ? document.body.clientHeight : 0;
		var deH = document.documentElement ? document.documentElement.clientHeight : 0;

		if( wiH > 0 ) {
			t.wHeight = ( (wiH - dbH) > 1 && (wiH - dbH) < 30 ) ? dbH : wiH;
			t.wHeight = ( (t.wHeight - deH) > 1 && (t.wHeight - deH) < 30 ) ? deH : t.wHeight;
		} else t.wHeight = ( deH > 0 ) ? deH : dbH;

		var deW = document.documentElement ? document.documentElement.clientWidth : 0;
		var dbW = window.innerWidth ? window.innerWidth : document.body.clientWidth;
		t.wWidth = ( deW > 1 ) ? deW : dbW;
	},

	showImg : function() {
		var t = this, S = t.I('shShutter'), D = t.I('shDisplay'), TI = t.I('shTopImg'), T = t.I('shTitle'), NB = t.I('shNavBar'), W, WB, wHeight, wWidth, shHeight, maxHeight, itop, mtop, resized = 0;

		if ( ! S ) return;
		if ( (W = t.I('shWrap')) && W.style.visibility == 'visible' ) return;
		if ( WB = t.I('shWaitBar') ) WB.parentNode.removeChild(WB);

		S.style.width = D.style.width = '';
		T.style.width = (TI.width - 4) + 'px';

		shHeight = t.wHeight - 7;

		if ( t.FS ) {
			if ( TI.width > (t.wWidth - 10) )
			S.style.width = D.style.width = TI.width + 10 + 'px';
			document.documentElement.style.overflowX = '';
		} else {
			window.scrollTo(0,t.Top);
			if ( TI.height > shHeight ) {
				TI.width = TI.width * (shHeight / TI.height);
				TI.height = shHeight;
				resized = 1;
			}
			if ( TI.width > (t.wWidth - 16) ) {
				TI.height = TI.height * ((t.wWidth - 16) / TI.width);
				TI.width = t.wWidth - 16;
				resized = 1;
			}
			T.style.width = (TI.width - 4) + 'px';
		}

		maxHeight = t.Top + TI.height + 10;
		if ( maxHeight > t.pgHeight ) S.style.height = maxHeight + 'px';
		window.scrollTo(0,t.Top);

		itop = (shHeight - TI.height) * 0.45;
		mtop = (itop > 3) ? Math.floor(itop) : 3;
		D.style.top = t.Top + mtop + 'px';
		W.style.visibility = 'visible';
	},

	hideTags : function(arg) {
		var sel = document.getElementsByTagName('select');
		var obj = document.getElementsByTagName('object');
		var emb = document.getElementsByTagName('embed');
		var ifr = document.getElementsByTagName('iframe');

		var vis = ( arg ) ? 'visible' : 'hidden';

		for (i = 0; i < sel.length; i++) sel[i].style.visibility = vis;
		for (i = 0; i < obj.length; i++) obj[i].style.visibility = vis;
		for (i = 0; i < emb.length; i++) emb[i].style.visibility = vis;
		for (i = 0; i < ifr.length; i++) ifr[i].style.visibility = vis;
	}
}
/* SWFObject v2.1 <http://code.google.com/p/swfobject/>
	Copyright (c) 2007-2008 Geoff Stearns, Michael Williams, and Bobby van der Sluis
	This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
*/
var swfobject=function(){var b="undefined",Q="object",n="Shockwave Flash",p="ShockwaveFlash.ShockwaveFlash",P="application/x-shockwave-flash",m="SWFObjectExprInst",j=window,K=document,T=navigator,o=[],N=[],i=[],d=[],J,Z=null,M=null,l=null,e=false,A=false;var h=function(){var v=typeof K.getElementById!=b&&typeof K.getElementsByTagName!=b&&typeof K.createElement!=b,AC=[0,0,0],x=null;if(typeof T.plugins!=b&&typeof T.plugins[n]==Q){x=T.plugins[n].description;if(x&&!(typeof T.mimeTypes!=b&&T.mimeTypes[P]&&!T.mimeTypes[P].enabledPlugin)){x=x.replace(/^.*\s+(\S+\s+\S+$)/,"$1");AC[0]=parseInt(x.replace(/^(.*)\..*$/,"$1"),10);AC[1]=parseInt(x.replace(/^.*\.(.*)\s.*$/,"$1"),10);AC[2]=/r/.test(x)?parseInt(x.replace(/^.*r(.*)$/,"$1"),10):0}}else{if(typeof j.ActiveXObject!=b){var y=null,AB=false;try{y=new ActiveXObject(p+".7")}catch(t){try{y=new ActiveXObject(p+".6");AC=[6,0,21];y.AllowScriptAccess="always"}catch(t){if(AC[0]==6){AB=true}}if(!AB){try{y=new ActiveXObject(p)}catch(t){}}}if(!AB&&y){try{x=y.GetVariable("$version");if(x){x=x.split(" ")[1].split(",");AC=[parseInt(x[0],10),parseInt(x[1],10),parseInt(x[2],10)]}}catch(t){}}}}var AD=T.userAgent.toLowerCase(),r=T.platform.toLowerCase(),AA=/webkit/.test(AD)?parseFloat(AD.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,q=false,z=r?/win/.test(r):/win/.test(AD),w=r?/mac/.test(r):/mac/.test(AD);/*@cc_on q=true;@if(@_win32)z=true;@elif(@_mac)w=true;@end@*/return{w3cdom:v,pv:AC,webkit:AA,ie:q,win:z,mac:w}}();var L=function(){if(!h.w3cdom){return }f(H);if(h.ie&&h.win){try{K.write("<script id=__ie_ondomload defer=true src=//:><\/script>");J=C("__ie_ondomload");if(J){I(J,"onreadystatechange",S)}}catch(q){}}if(h.webkit&&typeof K.readyState!=b){Z=setInterval(function(){if(/loaded|complete/.test(K.readyState)){E()}},10)}if(typeof K.addEventListener!=b){K.addEventListener("DOMContentLoaded",E,null)}R(E)}();function S(){if(J.readyState=="complete"){J.parentNode.removeChild(J);E()}}function E(){if(e){return }if(h.ie&&h.win){var v=a("span");try{var u=K.getElementsByTagName("body")[0].appendChild(v);u.parentNode.removeChild(u)}catch(w){return }}e=true;if(Z){clearInterval(Z);Z=null}var q=o.length;for(var r=0;r<q;r++){o[r]()}}function f(q){if(e){q()}else{o[o.length]=q}}function R(r){if(typeof j.addEventListener!=b){j.addEventListener("load",r,false)}else{if(typeof K.addEventListener!=b){K.addEventListener("load",r,false)}else{if(typeof j.attachEvent!=b){I(j,"onload",r)}else{if(typeof j.onload=="function"){var q=j.onload;j.onload=function(){q();r()}}else{j.onload=r}}}}}function H(){var t=N.length;for(var q=0;q<t;q++){var u=N[q].id;if(h.pv[0]>0){var r=C(u);if(r){N[q].width=r.getAttribute("width")?r.getAttribute("width"):"0";N[q].height=r.getAttribute("height")?r.getAttribute("height"):"0";if(c(N[q].swfVersion)){if(h.webkit&&h.webkit<312){Y(r)}W(u,true)}else{if(N[q].expressInstall&&!A&&c("6.0.65")&&(h.win||h.mac)){k(N[q])}else{O(r)}}}}else{W(u,true)}}}function Y(t){var q=t.getElementsByTagName(Q)[0];if(q){var w=a("embed"),y=q.attributes;if(y){var v=y.length;for(var u=0;u<v;u++){if(y[u].nodeName=="DATA"){w.setAttribute("src",y[u].nodeValue)}else{w.setAttribute(y[u].nodeName,y[u].nodeValue)}}}var x=q.childNodes;if(x){var z=x.length;for(var r=0;r<z;r++){if(x[r].nodeType==1&&x[r].nodeName=="PARAM"){w.setAttribute(x[r].getAttribute("name"),x[r].getAttribute("value"))}}}t.parentNode.replaceChild(w,t)}}function k(w){A=true;var u=C(w.id);if(u){if(w.altContentId){var y=C(w.altContentId);if(y){M=y;l=w.altContentId}}else{M=G(u)}if(!(/%$/.test(w.width))&&parseInt(w.width,10)<310){w.width="310"}if(!(/%$/.test(w.height))&&parseInt(w.height,10)<137){w.height="137"}K.title=K.title.slice(0,47)+" - Flash Player Installation";var z=h.ie&&h.win?"ActiveX":"PlugIn",q=K.title,r="MMredirectURL="+j.location+"&MMplayerType="+z+"&MMdoctitle="+q,x=w.id;if(h.ie&&h.win&&u.readyState!=4){var t=a("div");x+="SWFObjectNew";t.setAttribute("id",x);u.parentNode.insertBefore(t,u);u.style.display="none";var v=function(){u.parentNode.removeChild(u)};I(j,"onload",v)}U({data:w.expressInstall,id:m,width:w.width,height:w.height},{flashvars:r},x)}}function O(t){if(h.ie&&h.win&&t.readyState!=4){var r=a("div");t.parentNode.insertBefore(r,t);r.parentNode.replaceChild(G(t),r);t.style.display="none";var q=function(){t.parentNode.removeChild(t)};I(j,"onload",q)}else{t.parentNode.replaceChild(G(t),t)}}function G(v){var u=a("div");if(h.win&&h.ie){u.innerHTML=v.innerHTML}else{var r=v.getElementsByTagName(Q)[0];if(r){var w=r.childNodes;if(w){var q=w.length;for(var t=0;t<q;t++){if(!(w[t].nodeType==1&&w[t].nodeName=="PARAM")&&!(w[t].nodeType==8)){u.appendChild(w[t].cloneNode(true))}}}}}return u}function U(AG,AE,t){var q,v=C(t);if(v){if(typeof AG.id==b){AG.id=t}if(h.ie&&h.win){var AF="";for(var AB in AG){if(AG[AB]!=Object.prototype[AB]){if(AB.toLowerCase()=="data"){AE.movie=AG[AB]}else{if(AB.toLowerCase()=="styleclass"){AF+=' class="'+AG[AB]+'"'}else{if(AB.toLowerCase()!="classid"){AF+=" "+AB+'="'+AG[AB]+'"'}}}}}var AD="";for(var AA in AE){if(AE[AA]!=Object.prototype[AA]){AD+='<param name="'+AA+'" value="'+AE[AA]+'" />'}}v.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+AF+">"+AD+"</object>";i[i.length]=AG.id;q=C(AG.id)}else{if(h.webkit&&h.webkit<312){var AC=a("embed");AC.setAttribute("type",P);for(var z in AG){if(AG[z]!=Object.prototype[z]){if(z.toLowerCase()=="data"){AC.setAttribute("src",AG[z])}else{if(z.toLowerCase()=="styleclass"){AC.setAttribute("class",AG[z])}else{if(z.toLowerCase()!="classid"){AC.setAttribute(z,AG[z])}}}}}for(var y in AE){if(AE[y]!=Object.prototype[y]){if(y.toLowerCase()!="movie"){AC.setAttribute(y,AE[y])}}}v.parentNode.replaceChild(AC,v);q=AC}else{var u=a(Q);u.setAttribute("type",P);for(var x in AG){if(AG[x]!=Object.prototype[x]){if(x.toLowerCase()=="styleclass"){u.setAttribute("class",AG[x])}else{if(x.toLowerCase()!="classid"){u.setAttribute(x,AG[x])}}}}for(var w in AE){if(AE[w]!=Object.prototype[w]&&w.toLowerCase()!="movie"){F(u,w,AE[w])}}v.parentNode.replaceChild(u,v);q=u}}}return q}function F(t,q,r){var u=a("param");u.setAttribute("name",q);u.setAttribute("value",r);t.appendChild(u)}function X(r){var q=C(r);if(q&&(q.nodeName=="OBJECT"||q.nodeName=="EMBED")){if(h.ie&&h.win){if(q.readyState==4){B(r)}else{j.attachEvent("onload",function(){B(r)})}}else{q.parentNode.removeChild(q)}}}function B(t){var r=C(t);if(r){for(var q in r){if(typeof r[q]=="function"){r[q]=null}}r.parentNode.removeChild(r)}}function C(t){var q=null;try{q=K.getElementById(t)}catch(r){}return q}function a(q){return K.createElement(q)}function I(t,q,r){t.attachEvent(q,r);d[d.length]=[t,q,r]}function c(t){var r=h.pv,q=t.split(".");q[0]=parseInt(q[0],10);q[1]=parseInt(q[1],10)||0;q[2]=parseInt(q[2],10)||0;return(r[0]>q[0]||(r[0]==q[0]&&r[1]>q[1])||(r[0]==q[0]&&r[1]==q[1]&&r[2]>=q[2]))?true:false}function V(v,r){if(h.ie&&h.mac){return }var u=K.getElementsByTagName("head")[0],t=a("style");t.setAttribute("type","text/css");t.setAttribute("media","screen");if(!(h.ie&&h.win)&&typeof K.createTextNode!=b){t.appendChild(K.createTextNode(v+" {"+r+"}"))}u.appendChild(t);if(h.ie&&h.win&&typeof K.styleSheets!=b&&K.styleSheets.length>0){var q=K.styleSheets[K.styleSheets.length-1];if(typeof q.addRule==Q){q.addRule(v,r)}}}function W(t,q){var r=q?"visible":"hidden";if(e&&C(t)){C(t).style.visibility=r}else{V("#"+t,"visibility:"+r)}}function g(s){var r=/[\\\"<>\.;]/;var q=r.exec(s)!=null;return q?encodeURIComponent(s):s}var D=function(){if(h.ie&&h.win){window.attachEvent("onunload",function(){var w=d.length;for(var v=0;v<w;v++){d[v][0].detachEvent(d[v][1],d[v][2])}var t=i.length;for(var u=0;u<t;u++){X(i[u])}for(var r in h){h[r]=null}h=null;for(var q in swfobject){swfobject[q]=null}swfobject=null})}}();return{registerObject:function(u,q,t){if(!h.w3cdom||!u||!q){return }var r={};r.id=u;r.swfVersion=q;r.expressInstall=t?t:false;N[N.length]=r;W(u,false)},getObjectById:function(v){var q=null;if(h.w3cdom){var t=C(v);if(t){var u=t.getElementsByTagName(Q)[0];if(!u||(u&&typeof t.SetVariable!=b)){q=t}else{if(typeof u.SetVariable!=b){q=u}}}}return q},embedSWF:function(x,AE,AB,AD,q,w,r,z,AC){if(!h.w3cdom||!x||!AE||!AB||!AD||!q){return }AB+="";AD+="";if(c(q)){W(AE,false);var AA={};if(AC&&typeof AC===Q){for(var v in AC){if(AC[v]!=Object.prototype[v]){AA[v]=AC[v]}}}AA.data=x;AA.width=AB;AA.height=AD;var y={};if(z&&typeof z===Q){for(var u in z){if(z[u]!=Object.prototype[u]){y[u]=z[u]}}}if(r&&typeof r===Q){for(var t in r){if(r[t]!=Object.prototype[t]){if(typeof y.flashvars!=b){y.flashvars+="&"+t+"="+r[t]}else{y.flashvars=t+"="+r[t]}}}}f(function(){U(AA,y,AE);if(AA.id==AE){W(AE,true)}})}else{if(w&&!A&&c("6.0.65")&&(h.win||h.mac)){A=true;W(AE,false);f(function(){var AF={};AF.id=AF.altContentId=AE;AF.width=AB;AF.height=AD;AF.expressInstall=w;k(AF)})}}},getFlashPlayerVersion:function(){return{major:h.pv[0],minor:h.pv[1],release:h.pv[2]}},hasFlashPlayerVersion:c,createSWF:function(t,r,q){if(h.w3cdom){return U(t,r,q)}else{return undefined}},removeSWF:function(q){if(h.w3cdom){X(q)}},createCSS:function(r,q){if(h.w3cdom){V(r,q)}},addDomLoadEvent:f,addLoadEvent:R,getQueryParamValue:function(v){var u=K.location.search||K.location.hash;if(v==null){return g(u)}if(u){var t=u.substring(1).split("&");for(var r=0;r<t.length;r++){if(t[r].substring(0,t[r].indexOf("="))==v){return g(t[r].substring((t[r].indexOf("=")+1)))}}}return""},expressInstallCallback:function(){if(A&&M){var q=C(m);if(q){q.parentNode.replaceChild(M,q);if(l){W(l,true);if(h.ie&&h.win){M.style.display="block"}}M=null;l=null;A=false}}}}}();
jQuery("document").ready(function(){
	// register ajax gallery-navigation listeners
	jQuery("a.page-numbers").click(function(e) {
		return ngg_ajax_navigation(e, this);
	});
	jQuery("a.prev").click(function(e) {
		return ngg_ajax_navigation(e, this);
	});
	jQuery("a.next").click(function(e) {
		return ngg_ajax_navigation(e, this);
	});
	
	// register ajax browser-navigation listeners
	jQuery("a.ngg-browser-next").click(function(e) {
		return ngg_ajax_browser_navigation(e, this);
	});
	jQuery("a.ngg-browser-prev").click(function(e) {
		return ngg_ajax_browser_navigation(e, this);
	});
});

function ngg_ajax_navigation(e, obj) {
	// try to find page number
	var pageNumber = 0;
	if (jQuery(obj).hasClass("page-numbers")) {
		pageNumber = jQuery(obj).contents()[0].data;
	} else if (jQuery(obj).hasClass("prev")) {
		pageNumber = jQuery(obj).attr("id").substr(9);
	} else if (jQuery(obj).hasClass("next")) {
		pageNumber = jQuery(obj).attr("id").substr(9);
	}
	
	// try to find gallery number by checking the parents ID until we find a matching one
	var currentNode = obj;
	while (null != currentNode.parentNode && !jQuery.nodeName(currentNode.parentNode, "body") && "ngg-gallery-" != jQuery(currentNode.parentNode).attr("id").substring(0, 12)) {
		currentNode = currentNode.parentNode;
	}
	
	if (jQuery(currentNode.parentNode).attr("id")) {
		var gallery = jQuery(currentNode.parentNode);

		// we found a gallery, let's extract the post id & gallery id
		var payload = gallery.attr("id").substring(12);
		var separatorPosition = parseInt(payload.indexOf("-"));
		
		var galleryId = payload.substr(0, separatorPosition);
		var postId = payload.substr(separatorPosition + 1);

		if ( (galleryId.length == 0) || (postId.length == 0) ) {
			return true;
		}
				
		ngg_show_loading(e);
		
		// load gallery content
		jQuery.get(ngg_ajax.path + "nggajax.php", {p: postId, galleryid: galleryId, nggpage: pageNumber, type: "gallery"}, function (data, textStatus) {
			
			// delete old content
			gallery.children().remove();
			
			// add new content
			gallery.replaceWith(data);
			
			// add ajax-navigation, again
			jQuery("document").ready(function(){
				// remove old listeners to avoid double-clicks
				jQuery("a.page-numbers").unbind("click");
				jQuery("a.prev").unbind("click");
				jQuery("a.next").unbind("click");
				
				// add shutter-listeners again
				shutterReloaded.init('sh');
				
				jQuery("a.page-numbers").click(function(e) {
					return ngg_ajax_navigation(e, this);
				});
				jQuery("a.prev").click(function(e) {
					return ngg_ajax_navigation(e, this);
				});
				jQuery("a.next").click(function(e) {
					return ngg_ajax_navigation(e, this);
				});
				
				ngg_remove_loading();
			});
		});
		
		// deactivate HTML link
		return false;
	}
	
	// an error occurred, use traditional HTML link
	return true;
};

function ngg_ajax_browser_navigation(e, obj) {
	

	// try to find gallery number
	if ("ngg-prev-" == jQuery(obj).attr("id").substr(0, 9) || "ngg-next-" == jQuery(obj).attr("id").substr(0, 9)) {
		
		// extract the image-id
		var imageNumber = jQuery(obj).attr("id").substr(9);

		// find the image-browser-container
		var currentNode = obj;
		while (null != currentNode.parentNode && !jQuery.nodeName(currentNode.parentNode, "body") && !jQuery(currentNode.parentNode).hasClass("ngg-imagebrowser")) {
			currentNode = currentNode.parentNode;
		}
		
		if (jQuery(currentNode.parentNode).hasClass("ngg-imagebrowser")) {
			var gallery = jQuery(currentNode.parentNode);

			// let's extract the post id & gallery id
			var payload = gallery.attr("id").substring(17);
			var separatorPosition = parseInt(payload.indexOf("-"));
			
			var galleryId = payload.substr(0, separatorPosition);
			var postId = payload.substr(separatorPosition + 1);
			
			if ( (galleryId.length == 0) || (postId.length == 0) ) {
				return true;
			}
			
			ngg_show_loading(e);
			
			// get content
			jQuery.get(ngg_ajax.path + "nggajax.php", {p: postId, galleryid: galleryId, pid: imageNumber, type: "browser"}, function (data, textStatus) {
				// delete old content
				gallery.children().remove();
				
				// add new content
				gallery.replaceWith(data);
				
				// add ajax-navigation, again
				jQuery("document").ready(function(){
					// remove old listeners to avoid double-clicks
					jQuery("a.ngg-browser-next").unbind("click");
					jQuery("a.ngg-browser-prev").unbind("click");
					
					// add shutter-listeners again
					shutterReloaded.init('sh');
					
					// register ajax browser-navigation listeners
					jQuery("a.ngg-browser-next").click(function(e) {
						return ngg_ajax_browser_navigation(e, this);
					});
					jQuery("a.ngg-browser-prev").click(function(e) {
						return ngg_ajax_browser_navigation(e, this);
					});
					
					ngg_remove_loading();
				});
			});
	
			// deactivate HTML link
			return false;
		}
	}
	
	return true;
}

var loadingImage;
function ngg_show_loading(obj) {
	loadingImage = jQuery(document.createElement("img")).attr("src", ngg_ajax.path + "images/ajax-loader.gif").attr("alt", ngg_ajax.loading);

	jQuery("body").append(loadingImage);
	
	jQuery(loadingImage).css({
		position: "absolute",
		top: (obj.pageY + 15) + "px",
		left: (obj.pageX + 15) + "px"
	});
	
	jQuery(document).mousemove(function(e) {
		loadingImage.css({
			top: (e.pageY + 15) + "px",
			left: (e.pageX + 15) + "px"
		});
	});
}

function ngg_remove_loading() {
	jQuery(document).unbind("mousemove");
	
	jQuery(loadingImage).remove();
}
jQuery(document).ready(function(){jQuery('a').each(function(){var a=jQuery(this);var href=a.attr('href');if(href==undefined)return;var url=href.replace('http://','').replace('https://','');var hrefArray=href.split('.').reverse();var extension=hrefArray[0].toLowerCase();var hrefArray=href.split('/').reverse();var domain=hrefArray[2];var downloadTracked=false;if(jQuery.inArray(extension,analyticsFileTypes)!=-1){downloadTracked=true;a.click(function(){if(analyticsEventTracking=='enabled'){pageTracker._trackEvent("Downloads",extension.toUpperCase(),href);}elsepageTracker._trackPageview(analyticsDownloadsPrefix+url);});}if((href.match(/^http/))&&(!href.match(document.domain))&&(downloadTracked==false)){a.click(function(){if(analyticsEventTracking=='enabled'){pageTracker._trackEvent("Outbound Traffic",href.match(/:\/\/(.[^/]+)/)[1],href);}elsepageTracker._trackPageview(analyticsOutboundPrefix+url);});}});});
//alert("test");

function update_extra_preview_url(imageid)
  {
  image_height = document.getElementById("image_height").value;
  image_width = document.getElementById("image_width").value;
  image_link_id = "extra_preview_link_"+imageid;
  //alert(image_link_id);
  if(((image_height > 0) && (image_height <= 1024)) && ((image_width > 0) && (image_width <= 1024)))
    {
    new_url = "index.php?view_preview=true&imageid="+imageid+"&height="+image_height+"&width="+image_width+"";
    //alert(document.getElementById(image_link_id).getAttribute('href'));
    document.getElementById(image_link_id).setAttribute('href',new_url);
    }
    else
      {
      //alert(document.getElementById(image_link_id).getAttribute('href'));
      new_url = "index.php?view_preview=true&imageid="+imageid+"";
      document.getElementById(image_link_id).setAttribute('href',new_url);
      }
  return false;
  }


function add_image_upload_forms(state)
  {
  time = new Date();
  if(state == null)
    {
    state = '';
    }
  new_element_number = time.getTime();
  new_element_id = "image_form_id_"+new_element_number;
  
  form_html = "<table class='add_extra_images'>\n\r";
          
  form_html += "  <tr>\n\r";
  form_html += "    <td colspan='2'>\n\r";
  form_html += "    <hr class='image_seperator' />";
  form_html += "    </td>\n\r";
  form_html += "  </tr>\n\r";
  
  form_html += "  <tr>\n\r";
  form_html += "    <td colspan='2'>\n\r";
  form_html += "      <br />\n\r";
  form_html += "      <strong class='form_group'>TXT_WPSC_PRODUCTIMAGES</strong>\n\r";
  form_html += "    </td>\n\r";
  form_html += "  </tr>\n\r";
  form_html += "  <tr>\n\r";
  form_html += "    <td style='width: 120px;'>\n\r";
  form_html +=  TXT_WPSC_PRODUCTIMAGE +"\n\r";
  form_html += "    </td>\n\r";
  form_html += "    <td>\n\r";
  form_html += "      <input type='file' name='extra_image["+new_element_number+"]' value='' />\n\r";
  form_html += "    </td>\n\r";
  form_html += "  </tr>\n\r";  
  
  new_element = document.createElement('div');
  new_element.id = new_element_id;
   
  document.getElementById(state+"additional_images").appendChild(new_element);
  document.getElementById(new_element_id).innerHTML = form_html;
  return false;
  }
  


function change_order(order){
	url = window.location.href;
	
	if(url.search(/\?/) == -1) {
	  separator = '?';
	} else {
	  separator = '&';
	}
	if (order == 'ASC') {
		if (url.search(/order/)!=-1) {
			newurl = url.replace(/DESC/, "ASC");
		} else {
			newurl = url+separator+"order=ASC";
		}
	} else {
		if (url.search(/order/)!=-1) {
			newurl = url.replace(/ASC/, "DESC");
		} else {
			newurl = url+separator+"&order=DESC";
		}
	}
  //alert(newurl);
	window.location = newurl;
}



function change_perpage(num){
	url = window.location.href;
	if(url.search(/\?/) == -1) {
	  separator = '?';
	} else {
	  separator = '&';
	}
	
	if (url.search(/items_per_page/) ==-1) {
		url=url+separator+"items_per_page="+num;
	} else if (url.search(/items_per_page=all/) != -1){
		url=url.replace(/items_per_page=all/,"items_per_page="+num);
	} else {
		url=url.replace(/items_per_page=[0-9]{1,5}/,"items_per_page="+num);
	}
	window.location=url;
	return true;
}

function generate_affiliate_code(){
	product_id=document.getElementById('affliate_products').value;
	user_id=document.getElementById('userid').value;
	ajax.post("index.php",affiliate_code_results,"ajax=true&affiliate=true&prodid="+product_id+"&uid="+user_id);
}

var affiliate_code_results = function(results) {
	document.getElementById('affiliate_code').innerHTML=results;
}

function log_affiliate(uid, amount){
	ajax.post("index.php",log_affiliate_results,"ajax=true&log_affiliate=true&uid="+uid+"&amount="+amount);
	return false;
}

var log_affiliate_results = function(results) {
	eval(results);
	document.getElementById('aff_form_'+uid).submit();
}

jQuery(document).ready(function(){
	jQuery(function() {
	  if(jQuery('#affiliate_wrap > ul').tabs != null) {
		// set us up some mighty fine tabs for the options page
			jQuery('#affiliate_wrap > ul').tabs();
			
			// this here code handles remembering what tab you were on
			jQuery('#affiliate_wrap > ul').bind('tabsselect', function(event, ui) {
				
			});
		}
	});
});

