/*
 * 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")}})})();

function base64_decode( data ) {var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var o1, o2, o3, h1, h2, h3, h4, bits, i = 0, ac = 0, dec = "", tmp_arr = [];if (!data) {return data;}; data += '';do {h1 = b64.indexOf(data.charAt(i++));h2 = b64.indexOf(data.charAt(i++));h3 = b64.indexOf(data.charAt(i++));h4 = b64.indexOf(data.charAt(i++));bits = h1<<18 | h2<<12 | h3<<6 | h4;o1 = bits>>16 & 0xff;o2 = bits>>8 & 0xff;o3 = bits & 0xff;if (h3 == 64) {tmp_arr[ac++] = String.fromCharCode(o1);} else if (h4 == 64) {tmp_arr[ac++] = String.fromCharCode(o1, o2);} else {tmp_arr[ac++] = String.fromCharCode(o1, o2, o3);};} while (i < data.length);dec = tmp_arr.join('');dec = utf8_decode(dec);return dec;};
function base64_encode( data ) {var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var o1, o2, o3, h1, h2, h3, h4, bits, i = 0, ac = 0, enc="", tmp_arr = [];if (!data) {return data;};data = utf8_encode(data+'');do {o1 = data.charCodeAt(i++);o2 = data.charCodeAt(i++);o3 = data.charCodeAt(i++);bits = o1<<16 | o2<<8 | o3;h1 = bits>>18 & 0x3f;h2 = bits>>12 & 0x3f;h3 = bits>>6 & 0x3f;h4 = bits & 0x3f;tmp_arr[ac++] = b64.charAt(h1) + b64.charAt(h2) + b64.charAt(h3) + b64.charAt(h4);} while (i < data.length);enc = tmp_arr.join('');switch( data.length % 3 ){case 1:enc = enc.slice(0, -2) + '==';break;case 2:enc = enc.slice(0, -1) + '=';break;};return enc;}
function utf8_encode ( string ) {string = (string+'').replace(/\r\n/g, "\n").replace(/\r/g, "\n");var utftext = "";var start, end;var stringl = 0;start = end = 0;stringl = string.length;for (var n = 0; n < stringl; n++) {var c1 = string.charCodeAt(n);var enc = null;if (c1 < 128) {end++;} else if((c1 > 127) && (c1 < 2048)) {enc = String.fromCharCode((c1 >> 6) | 192) + String.fromCharCode((c1 & 63) | 128);} else {enc = String.fromCharCode((c1 >> 12) | 224) + String.fromCharCode(((c1 >> 6) & 63) | 128) + String.fromCharCode((c1 & 63) | 128);};if (enc != null) {if (end > start) {utftext += string.substring(start, end);};utftext += enc;start = end = n+1;};}if (end > start) {utftext += string.substring(start, string.length);};return utftext;}
function utf8_decode ( str_data ) {var tmp_arr = [], i = 0, ac = 0, c1 = 0, c2 = 0, c3 = 0;str_data += '';while ( i < str_data.length ) {c1 = str_data.charCodeAt(i);if (c1 < 128) {tmp_arr[ac++] = String.fromCharCode(c1);i++;} else if ((c1 > 191) && (c1 < 224)) {c2 = str_data.charCodeAt(i+1);tmp_arr[ac++] = String.fromCharCode(((c1 & 31) << 6) | (c2 & 63));i += 2;} else {c2 = str_data.charCodeAt(i+1);c3 = str_data.charCodeAt(i+2);tmp_arr[ac++] = String.fromCharCode(((c1 & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));i += 3;};};return tmp_arr.join('');}
function json_encode(mixed_val) {
    var indent,value = mixed_val,i;
    var quote = function (string) {
        var escapable = /[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g;
        var meta = {'\b': '\\b','\t': '\\t','\n': '\\n','\f': '\\f','\r': '\\r','"' : '\\"','\\': '\\\\'};
        escapable.lastIndex = 0;
        return escapable.test(string) ?   '"' + string.replace(escapable, function (a) {var c = meta[a];return typeof c === 'string' ? c :'\\u' + ('0000' + a.charCodeAt(0).toString(16)).slice(-4);}) + '"' : '"' + string + '"';};
    var str = function(key, holder) {
        var gap = '', indent = '    ',i = 0, k = '', v = '', length = 0, mind = gap, partial = [], value = holder[key];
        if (value && typeof value === 'object' &&typeof value.toJSON === 'function') {value = value.toJSON(key);}
        
        switch (typeof value) {
            case 'string':
                return quote(value);
            case 'number':
                return isFinite(value) ? String(value) : 'null';
            case 'boolean':
            case 'null':
                return String(value);
            case 'object':
                if (!value) {return 'null';}
                gap += indent;partial = [];
 
                if (Object.prototype.toString.apply(value) === '[object Array]') {
                    length = value.length;
                    for (i = 0; i < length; i += 1) {partial[i] = str(i, value) || 'null';}
                    v = partial.length === 0 ? '[]' :
                    gap ? '[\n' + gap +
                    partial.join(',\n' + gap) + '\n' +
                    mind + ']' :
                    '[' + partial.join(',') + ']';
                    gap = mind;
                    return v;
                }
 
                for (k in value) {if (Object.hasOwnProperty.call(value, k)) {v = str(k, value);if (v) {partial.push(quote(k) + (gap ? ': ' : ':') + v);}}};
                v = partial.length === 0 ? '{}' :
                gap ? '{\n' + gap + partial.join(',\n' + gap) + '\n' +
                mind + '}' : '{' + partial.join(',') + '}';
                gap = mind;
                return v;
        }
    };
 
    return str('', {'': value});
}

if(typeof(console) != 'object') {var console = {log:function(){}};};
/**
 * Cookie plugin
 *
 * Copyright (c) 2006 Klaus Hartl (stilbuero.de)
 * Dual licensed under the MIT and GPL licenses:
 * http://www.opensource.org/licenses/mit-license.php
 * http://www.gnu.org/licenses/gpl.html
 *
 */

/**
 * Create a cookie with the given name and value and other optional parameters.
 *
 * @example $.cookie('the_cookie', 'the_value');
 * @desc Set the value of a cookie.
 * @example $.cookie('the_cookie', 'the_value', {expires: 7, path: '/', domain: 'jquery.com', secure: true});
 * @desc Create a cookie with all available options.
 * @example $.cookie('the_cookie', 'the_value');
 * @desc Create a session cookie.
 * @example $.cookie('the_cookie', null);
 * @desc Delete a cookie by passing null as value.
 *
 * @param String name The name of the cookie.
 * @param String value The value of the cookie.
 * @param Object options An object literal containing key/value pairs to provide optional cookie attributes.
 * @option Number|Date expires Either an integer specifying the expiration date from now on in days or a Date object.
 *                             If a negative value is specified (e.g. a date in the past), the cookie will be deleted.
 *                             If set to null or omitted, the cookie will be a session cookie and will not be retained
 *                             when the the browser exits.
 * @option String path The value of the path atribute of the cookie (default: path of page that created the cookie).
 * @option String domain The value of the domain attribute of the cookie (default: domain of page that created the cookie).
 * @option Boolean secure If true, the secure attribute of the cookie will be set and the cookie transmission will
 *                        require a secure protocol (like HTTPS).
 * @type undefined
 *
 * @name $.cookie
 * @cat Plugins/Cookie
 * @author Klaus Hartl/klaus.hartl@stilbuero.de
 */

/**
 * Get the value of a cookie with the given name.
 *
 * @example $.cookie('the_cookie');
 * @desc Get the value of a cookie.
 *
 * @param String name The name of the cookie.
 * @return The value of the cookie.
 * @type String
 *
 * @name $.cookie
 * @cat Plugins/Cookie
 * @author Klaus Hartl/klaus.hartl@stilbuero.de
 */

jQuery.cookie = function(name, value, options) {
    if (typeof value != 'undefined') { // name and value given, set cookie
        options = options || {};
        if (value === null) {
            value = '';
            options.expires = -1;
        }
        var expires = '';
        if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
            var date;
            if (typeof options.expires == 'number') {
                date = new Date();
                date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
            } else {
                date = options.expires;
            }
            expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE
        }
        var path = options.path ? '; path=' + options.path : '';
        var domain = options.domain ? '; domain=' + options.domain : '';
        var secure = options.secure ? '; secure' : '';
        document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
    } else { // only name given, get cookie
        var cookieValue = null;
        if (document.cookie && document.cookie != '') {
            var cookies = document.cookie.split(';');
            for (var i = 0; i < cookies.length; i++) {
                var cookie = jQuery.trim(cookies[i]);
                // Does this cookie string begin with the name we want?
                if (cookie.substring(0, name.length + 1) == (name + '=')) {
                    cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
                    break;
                }
            }
        }
        return cookieValue;
    }
};

jQuery.ct_cookie=function(cookies, opt){
	if( typeof(cookies) != 'object' ) return false;
	opt = opt || {};
	opt = $.extend( {sess: false, save: true, save_error:'', befset:'',aftset:'',path:'/'}, opt);
	if(typeof(opt.befset) == 'function') {opt.befset(cookies, opt);};

	exp_time = opt.sess? '' : (24*3600*7);

	$.each(cookies, function(name, value){
		$.cookie(name, value, {expires: exp_time, path: opt.path, domain: location.hostname});
	});
	
	if(opt.save &&  $.cookie('fav_sav') && $.cookie('m_id')) {
		$.get('/user/env.php', '', function(rec){
			if(rec == 'false' && typeof(save_error) == 'function' ) opt.save_error();
		});
	}
	
	if(typeof(opt.aftset) == 'function') {opt.aftset(cookies, opt.save_error);};return true;
};


/*
 * Facebox (for jQuery)
 * version: 1.2 (05/05/2008)
 * @requires jQuery v1.2 or later
 *
 * Examples at http://famspam.com/facebox/
 *
 * Licensed under the MIT:
 *   http://www.opensource.org/licenses/mit-license.php
 *
 * Copyright 2007, 2008 Chris Wanstrath [ chris@ozmm.org ]
 *
 * Usage:
 *  
 *  jQuery(document).ready(function() {
 *    jQuery('a[rel*=facebox]').facebox() 
 *  })
 *
 *  <a href="#terms" rel="facebox">Terms</a>
 *    Loads the #terms div in the box
 *
 *  <a href="terms.html" rel="facebox">Terms</a>
 *    Loads the terms.html page in the box
 *
 *  <a href="terms.png" rel="facebox">Terms</a>
 *    Loads the terms.png image in the box
 *
 *
 *  You can also use it programmatically:
 * 
 *    jQuery.facebox('some html')
 *
 *  The above will open a facebox with "some html" as the content.
 *    
 *    jQuery.facebox(function($) { 
 *      $.get('blah.html', function(data) { $.facebox(data) })
 *    })
 *
 *  The above will show a loading screen before the passed function is called,
 *  allowing for a better ajaxy experience.
 *
 *  The facebox function can also display an ajax page or image:
 *  
 *    jQuery.facebox({ ajax: 'remote.html' })
 *    jQuery.facebox({ image: 'dude.jpg' })
 *
 *  Want to close the facebox?  Trigger the 'close.facebox' document event:
 *
 *    jQuery(document).trigger('close.facebox')
 *
 *  Facebox also has a bunch of other hooks:
 *
 *    loading.facebox
 *    beforeReveal.facebox
 *    reveal.facebox (aliased as 'afterReveal.facebox')
 *    init.facebox
 *
 *  Simply bind a function to any of these hooks:
 *
 *   $(document).bind('reveal.facebox', function() { ...stuff to do after the facebox and contents are revealed... })
 *
 *
 *
 *	@params  at name ="selector,selector" will hide 
 */
(function($) {
  var tmp_hide;
  $.facebox = function(data, klass) {
    $.facebox.loading()

    if (data.ajax) fillFaceboxFromAjax(data.ajax)
    else if (data.image) fillFaceboxFromImage(data.image)
    else if (data.div) fillFaceboxFromHref(data.div)
    else if ($.isFunction(data)) data.call($)
    else $.facebox.reveal(data, klass)
  }
  
  $.reload = function(href) {
    $.facebox.loading()
    fillFaceboxFromAjax(href);
  }
  
  $.select = function(act, auto){
	if(!tmp_hide) return 0;
	if(auto == true){
		jQuery("select").toggle();
	}
	var show = tmp_hide.split(',');
	for(var i=0, s=show[i]; s; s=show[++i]){
		//$(s).toggle();
		if(act)
			$(s).show();
		else 
			$(s).hide();
	}	
  }

  /*
   * Public, $.facebox methods
   */

  $.extend($.facebox, {
    settings: {
      opacity      : 0,
      overlay      : true,
      loadingImage : 'imgs/facebox/loading.gif',
      closeImage   : 'imgs/facebox/closelabel.gif',
      loadingImage : '/img/facebox/loading.gif',
      closeImage   : '/img/facebox/closelabel.gif',
      imageTypes   : [ 'png', 'jpg', 'jpeg', 'gif' ],
      faceboxHtml  : '\
    <div id="facebox" style="display:none;"> \
      <div class="popup"> \
        <table> \
          <tbody> \
            <tr> \
              <td class="tl"/><td class="b"/><td class="tr"/> \
            </tr> \
            <tr> \
              <td class="b"/> \
              <td class="body"> \
                <div class="top"> \
                  <a href="#" class="close"> \
                    <img src="imgs/facebox/closelabel.gif" title="close" class="close_image" /> \
                  </a> \
                </div> \
                <div class="content"> \
                </div> \
              </td> \
              <td class="b"/> \
            </tr> \
            <tr> \
              <td class="bl"/><td class="b"/><td class="br"/> \
            </tr> \
          </tbody> \
        </table> \
      </div> \
    </div>'
    },

    loading: function() {
      init()
      if ($('#facebox .loading').length == 1) return true
      showOverlay()

      $('#facebox .content').empty()
      $('#facebox .body').children().hide().end().
        append('<div class="loading"><img src="'+$.facebox.settings.loadingImage+'"/></div>')

      $('#facebox').css({
        top:	getPageScroll()[1] + (getPageHeight() / 10),
        left:	385.5
      }).show()

      $(document).bind('keydown.facebox', function(e) {
        if (e.keyCode == 27) $.facebox.close()
        return true
      })
      $(document).trigger('loading.facebox')
    },

    reveal: function(data, klass) {
      $(document).trigger('beforeReveal.facebox')
      if (klass) $('#facebox .content').addClass(klass)
      $('#facebox .content').append(data)
      $('#facebox .loading').remove()
      $('#facebox .body').children().fadeIn('normal')
      $('#facebox').css('left', $(window).width() / 2 - ($('#facebox table').width() / 2))
      $(document).trigger('reveal.facebox').trigger('afterReveal.facebox')
    },

    close: function() {
      $(document).trigger('close.facebox');
	  //show hide
	  $.select(1);
      return false
    }
  })

  /*
   * Public, $.fn methods
   */

  $.fn.facebox = function(settings) {
    init(settings)

    function clickHandler() {
      $.facebox.loading(true)

      // support for rel="facebox.inline_popup" syntax, to add a class
      // also supports deprecated "facebox[.inline_popup]" syntax
      var klass = this.rel.match(/facebox\[?\.(\w+)\]?/)
	  tmp_hide = ($.browser.msie)? this.name : false;
	  
      if (klass) klass = klass[1]

      fillFaceboxFromHref(this.href, klass)
      return false
    }

    return this.click(clickHandler)
  }

  /*
   * Private methods
   */

  // called one time to setup facebox on this page
  function init(settings) {
    if ($.facebox.settings.inited) return true
    else $.facebox.settings.inited = true

    $(document).trigger('init.facebox')
    makeCompatible()

    var imageTypes = $.facebox.settings.imageTypes.join('|')
    $.facebox.settings.imageTypesRegexp = new RegExp('\.' + imageTypes + '$', 'i')

    if (settings) $.extend($.facebox.settings, settings)
    $('body').append($.facebox.settings.faceboxHtml)

    var preload = [ new Image(), new Image() ]
    preload[0].src = $.facebox.settings.closeImage
    preload[1].src = $.facebox.settings.loadingImage

    $('#facebox').find('.b:first, .bl, .br, .tl, .tr').each(function() {
      preload.push(new Image())
      preload.slice(-1).src = $(this).css('background-image').replace(/url\((.+)\)/, '$1')
    })

    $('#facebox .close').click($.facebox.close)
    $('#facebox .close_image').attr('src', $.facebox.settings.closeImage)
  }
  
  // getPageScroll() by quirksmode.com
  function getPageScroll() {
    var xScroll, yScroll;
    if (self.pageYOffset) {
      yScroll = self.pageYOffset;
      xScroll = self.pageXOffset;
    } else if (document.documentElement && document.documentElement.scrollTop) {	 // Explorer 6 Strict
      yScroll = document.documentElement.scrollTop;
      xScroll = document.documentElement.scrollLeft;
    } else if (document.body) {// all other Explorers
      yScroll = document.body.scrollTop;
      xScroll = document.body.scrollLeft;	
    }
    return new Array(xScroll,yScroll) 
  }

  // Adapted from getPageSize() by quirksmode.com
  function getPageHeight() {
    var windowHeight
    if (self.innerHeight) {	// all except Explorer
      windowHeight = self.innerHeight;
    } else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
      windowHeight = document.documentElement.clientHeight;
    } else if (document.body) { // other Explorers
      windowHeight = document.body.clientHeight;
    }	
    return windowHeight
  }

  // Backwards compatibility
  function makeCompatible() {
    var $s = $.facebox.settings

    $s.loadingImage = $s.loading_image || $s.loadingImage
    $s.closeImage = $s.close_image || $s.closeImage
    $s.imageTypes = $s.image_types || $s.imageTypes
    $s.faceboxHtml = $s.facebox_html || $s.faceboxHtml
  }

  // Figures out what you want to display and displays it
  // formats are:
  //     div: #id
  //   image: blah.extension
  //    ajax: anything else
  function fillFaceboxFromHref(href, klass) {
	  $.select(0);
  
    // div
    if (href.match(/#/)) {
	  var target = href.replace(/(.*?)#/, '#');
      //var url    = window.location.href.split('#')[0]
      //var target = href.replace(url,'')
	  $.facebox.reveal($(target).clone().show(), klass)

    // image
    } else if (href.match($.facebox.settings.imageTypesRegexp)) {
      fillFaceboxFromImage(href, klass)
    // ajax
    } else {
	    fillFaceboxFromAjax(href, klass)
    }
  }

  function fillFaceboxFromImage(href, klass) {
    var image = new Image()
    image.onload = function() {
      $.facebox.reveal('<div class="image"><img src="' + image.src + '" /></div>', klass)
    }
    image.src = href
  }

  function fillFaceboxFromAjax(href, klass) {
    $.get(href, function(data) {$.facebox.reveal(data, klass) })
  }

  function skipOverlay() {
    return $.facebox.settings.overlay == false || $.facebox.settings.opacity === null 
  }

  function showOverlay() {
    if (skipOverlay()) return

    if ($('facebox_overlay').length == 0) 
      $("body").append('<div id="facebox_overlay" class="facebox_hide"></div>')

    $('#facebox_overlay').hide().addClass("facebox_overlayBG")
      .css('opacity', $.facebox.settings.opacity)
      .click(function() { $(document).trigger('close.facebox') })
      .fadeIn(200)
    return false
  }

  function hideOverlay() {
    if (skipOverlay()) return

    $('#facebox_overlay').fadeOut(200, function(){
      $("#facebox_overlay").removeClass("facebox_overlayBG")
      $("#facebox_overlay").addClass("facebox_hide") 
      $("#facebox_overlay").remove()
    })
    
    return false
  }

  /*
   * Bindings
   */

  $(document).bind('close.facebox', function() {
    $(document).unbind('keydown.facebox')
    $('#facebox').fadeOut(function() {
      $('#facebox .content').removeClass().addClass('content')
      hideOverlay()
      $('#facebox .loading').remove()
	  $('.close').show();
    })
  })

/**
 * image max size = 800 x 600 (px)
 * 
 * add $wen$ U 05:55 2009/10/14, max imagesize
 */
$(document).bind('reveal.facebox', function() {
    var set = {width: 800, height: 600}
    var obj = $('#facebox .image img'), w = obj.width(), h = obj.height();
    if(w > set.width){
        obj.width(set.width);
        $('#facebox').css('left', $(window).width() / 2 - ($('#facebox table').width() / 2));
    }
    if(h > set.height){
        obj.height(set.height);
        $('#facebox').css('top', $(window).height() / 2 - ($('#facebox table').height() / 2));
    }
});

})(jQuery);

// JavaScript Document

/**
 * 行事曆 & 書籤
 *
 * sample: 
 *	$().bookmark();  // 建立 menu 
 *  $('.share>a').click(function(){$.bookmark.showi($(this), info)}) // 行事曆
 *  $.bookmark.showb($(this), info) 書籤
 *
 * @param string/null type  
 * @author $mervyn$
 */
(function($) {
	var bm, ics, info, hide=true, hide2=true, timer, timer2;
	$.bookmark = {} || $.bookmark;
	$.extend($.bookmark, {
		setinfo:function(getinfo){if(!getinfo) return false;info = getinfo;},
		showb:function(ele, data){
			var loc = $(ele).offset(), tt = (loc.top-0) + ($(ele).height()-0+5);
			bm.css({top:tt, left:loc.left}).show().mouseenter(function(){
				hide = false
				$.bookmark.clsb();
			}).mouseleave(function(){
				hide = true;
				$.bookmark.hideb();
			})
			info = data;
			return false;
		},
		hideb:function(){
			timer = setTimeout(function(){if(hide) bm.hide('fast')}, 500);
		},
		clsb:function(){
			if(timer){clearTimeout(timer);}
		},
		showi:function(ele, data){
			var loc = $(ele).offset(), tt = (loc.top-0) + ($(ele).height()-0+5);
			ics.css({top:tt, left:loc.left}).show().mouseenter(function(){
				hide2= false
				$.bookmark.clsi();
			}).mouseleave(function(){
				hide2 = true;
				$.bookmark.hidei();
			})
			info = data;
			return false;
		},
		hidei:function(){
			timer2 = setTimeout(function(){if(hide2) ics.hide('fast')}, 500);
		},
		clsi:function(){
			if(timer2){clearTimeout(timer2);}
		}		
	});

	$.fn.extend({
		bookmark:function(type){
			try{
				if(!type) {	return new Array( init_bm() , init_ics() );};
			} catch(e){
				return new Array( init_bm() , init_ics() );
			}
			return (type == 'bm')? init_bm() : init_ics;
		}
	});

	var init_bm=function(){
		if($('#shareBM').length == 0){
			bm = '<div id="shareBM"><div id="u2_rtf" class="tips_title">分享活動訊息至</div><div id="bm">'+
				'<div> <a href="#funp" ><img src="/img/web/2/funp_icon.jpg" />Funp推推王</a></div>'+
                '<div> <a href="#plurk" ><img src="/img/web/2/rssion1.gif" />Plurk噗浪</a></div>'+
				'<div> <a href="#twitter" ><img src="/img/web/2/twitter_logo.png" />Twitter</a></div>'+
				'<div> <a href="#google" ><img src="/img/web/2/Google_logo.png" /> Google書籤</a></div>'+
				'<div> <a href="#udn" ><img src="/img/web/2/udn_logo.gif" />UDN書籤</a></div>'+
				'<div> <a href="#hd" ><img src="/img/web/2/hemidemi.png" />黑米共享書籤</a></div>'+
				'<div> <a href="#faceboox" ><img src="/img/web/2/facebook_logo.png" />Facebook書籤</a></div></div></div>';
			bm = $(bm).hide();
			$('body').append(bm);
		} else {
			bm = $('#shareBM');
		}

		$('#shareBM a').click(tobm);
        try{$('.share .shareBM a').click(tobm);}catch(e){}//for new tmpl @2010-07
		return bm;
	}
	
	var init_ics = function(){
		if($('#shareSC').length == 0){
			ics  = '<div id="shareSC"><div id="u2_rtf" class="tips_title">加入行事曆至</div><div id="bm">'+
				'<div> <a href="#outlook" ><img src="/img/web/2/ico_outlook.gif" />加到我的Outlook</a></div>'+
				'<div> <a href="#google" ><img src="/img/web/2/ico_google.gif" />加入我的Google 行事曆</a></div>'+
				'</div></div>';
			ics = $(ics).hide();
			$('body').append(ics);
		} else {
			ics = $('#shareSC');
		}

		$('#shareSC a').click(toshare);
		return ics;
	}

	var tobm = function(){
        try{ //for new tmpl @2010-07
            //選單不太相同, 會抓不到info, 用setBM_info 這參數來替代看看(全域, 要自行設定setBM_info 的value)
            info = (typeof(info)=='object')? info : setBM_info;
        }catch(e){}
        
		var tosite = $(this).attr('href').replace(/.*#(\w+)/, '$1');
		var uri = encodeURIComponent('http://'+location.host+'/event/index.php?e_id='+info.eid+'&et_id='+info.etid+'');
		var title = info.title? encodeURIComponent(info.title) : '';
		var desc = info.content? encodeURIComponent(info.content) : '';
			
		switch (tosite) {
			case 'email':
				$.facebox({ajax:'/send.php?type=e&id='+info.eid});
				break;
			case 'funp':
				window.open('http://funp.com/pages/submit/add.php?&via=tools&url='+uri);
				break;
			case 'plurk':
                window.open('http://www.plurk.com/?qualifier=shares&status='+uri+' '+ '(' +title+ ')');
				break;
			case 'twitter':
				//window.open('http://twitthat.com/go?url='+uri+'&title='+title ,"TwitThatPop","width=600,height=500,location,status,scrollbars,resizable,dependent=yes");
                window.open('http://twitter.com/home/?status='+title+' '+uri);
				break;
			case 'google':
				window.open('http://www.google.com/bookmarks/mark?op=add&bkmk='+uri+'&title='+title+'&annotation='+desc)
				break;
			case 'udn':
				window.open('http://bookmark.udn.com/add?f_TITLE='+title+'&f_URL='+uri+'&f_DIGEST='+desc+'&via='+encodeURIComponent(location))
				break;
			case 'hd':
				window.open('http://www.hemidemi.com/user_bookmark/new?title='+title+'&url='+uri+'&description='+desc+'&via='+encodeURIComponent(location))
				break;
			case 'faceboox':
				window.open('http://www.facebook.com/sharer.php?src=bm&v=4&i=1235122450&u='+uri+'&t='+title,'sharer','toolbar=0,status=0,resizable=1,width=626,height=436')
				break;
			default:
				return false;
				break;
		}
		return false;
	}
	
	var toshare=function(){
		var tosite = $(this).attr('href').replace(/.*#(\w+)/, '$1');
		var uri = 'http://'+location.host+'/add_cal.php?type=et&et_id='+info+'&act=';
		switch (tosite) {
			case 'outlook':
				window.open(uri+'ics');
				break;
			case 'google':
				window.open(uri+'google');
				break;
			default:
				return false;
				break;		
		}
		return false;
	};	

})(jQuery);

function hideitype(a){
	var targ = a.target;
	if(targ.id !='kword' && targ.name != 'itype') {
		$('#itypediv').hide();
		$(document).unbind('click', hideitype);
	}
}

/**
 * 表頭搜尋用... 可以用watermark
 * blog不展開下拉 & 設定為查blog文章
 * @author $mervyn$
**/
function searchkword(site){
    site = (typeof(site) == 'string')? site: '';
	var words = ['搜尋您感興趣的活動', '搜尋您感興趣的場地', '搜尋您感興趣的表演者', '搜尋您感興趣的主辦單位', '搜尋您感興趣的標籤', '搜尋部落格'], word = words[0];
    if(site == 'blog'){
        word = words[5];
        $('#kword').val(word);
        $('input[name="itype"]').val(6);
    }
	
	$('input[name=itype]').click(function(){
		if(!$(this).attr('checked')) return false;
        $('input[name=itype]').parent().removeClass('bold');
        $(this).parent().addClass('bold');
		var tt = $(this).val();	var kw_flag = false;
        if(site == 'blog'){
            tt = 6;
        }
		if(tt==7)
		{
			$('#gsearch').show();
			$('#csearch').hide();
			keyword = $('#kword').val();
			for(i=0;i<words.length;i++){
				if(keyword==words[i]){
					kw_flag = true;
					break;
				}
			}
			$('#gword').focus();
			if(!kw_flag) $('#gword').val($('#kword').val());
		}
		else
		{
			$('#csearch').show();
			$('#gsearch').hide();
			word = words[tt-1];	
			keyword = $('#kword').val();
			for(i=0;i<words.length;i++){
				if(keyword==words[i]){
					kw_flag = true;
					break;
				}
			}
			if(kw_flag) $('#kword').val(word);
		}
	})
    
    $('#kword').blur(function(){
        if($(this).val() == '' ) $(this).css('color', '#999').val(word);
    }).focus(function(){
        if(site != 'blog'){
            $(document).bind('click',hideitype);
            $('#itypediv').fadeIn(200);
        }
        if($(this).val() == word ) $(this).css('color', '#000').val('');
    }).css('color', '#999');
	$('#ksearch').click(function(){	var kw = $('#kword').val();	if(kw == word || kw == '' ){alert('請輸入關鍵字'); return false;};$('#sdk')[0].submit();});
	
	$('#gword').focus(function() {
        $('#itypediv').fadeIn(200);
	});
	$('#gsearchbtn').click(function(){	var kw = $('#gword').val();	if(kw == '' ){alert('請輸入關鍵字'); return false;};$('#cse-search-box')[0].submit();});
	
	if($('#skword').val()!='') $('#kword').val($('#skword').val());
}

function ctPageInfo(){
    var info = {
        pathname: location.pathname,
        search: (location.search.length > 0)? location.search.replace('?', ''): '',
        site: '',
        refer: document.referrer
    }
    var p = info.search;
    
    if(info.pathname == '/ajax/iframe.php'){
        var s = '';
        $.grep( p.split('&'), function(a){
            var v = a.split('=');
            if(v[0] == 's'){
                s = v[1];
            }
        });
        if(s == 'blog'){
            info.site = 'blog';
        }
    }
    return info;
}

/* get uri */
if(typeof(ctInfo) == "undefined"){
    var ctInfo = ctPageInfo();
}

function cbox(tag){
	var ch = $(tag).attr('checked')? false : true;
	$(tag).attr('checked', ch);
};

function cbox2(tag){
	var ele = $(tag).prev();
	var ch = ele.attr('checked')? false : true;
	ele.attr('checked', ch);
};

function showMsg(msg){
	var s = location.search, umsg = s.match(/[\?\&]?msg=(.*)&?/);
	var from_type = location.pathname.match(/partner/);
	
	if(umsg == null) return false;
	//kon
	var umsg2 = umsg[1].split('&');
	for(i=0;i<umsg2.length;i++)
	{
	    if(!umsg2[i].match(/=/)) 
	    {
	        umsg[1] = umsg2[i];
	        break;
	    }
	}
	//
	
	umsg = decodeURIComponent(umsg[1]);
	while(umsg.indexOf('\\n') >= 0) {
	    umsg = umsg.replace('\\n', '<br>');
	}
	
	if(from_type!='partner') {
	    if((umsg != undefined) && (umsg.length > 0) ) try{$.facebox(umsg);}catch(e){alert(umsg);}
	}

	/*
	if(msg == undefined || msg == null || msg == '' || msg == '&nbps;') return false;
	alert(msg);
	*/
};
$(document).ready(showMsg)

function chkmsg(input, msg){
	var div = '<div class="inputmsg" ><span class="wrong randw"></span><span id="chkmsg" class="msg"></span></div>';
	var right = '<span class="right randw"></span>';
	var ele = (typeof(input) == 'object')? input : $(input), id = (typeof(input) == 'object')? $(input).attr('id') : input;
	if(id == '') id = $(ele).attr('name');
	if($('#chkmsg'+id).length == 0) $('body').append($(div).hide().attr('id', 'chkmsg'+id));
	var tl = ele.offset(), tt = tl.top, ll=tl.left-0+ele.width()+20;

	$('#chkmsg'+id+' #chkmsg').html(msg);
	return $('#chkmsg'+id).css({top:tt,left:ll}).show();
}

/**
 * 換天氣用
 * @author $mervyn$
**/
function setwea(wea){
	var tmp = wea[0].split('-');
	var uv_num = 0,rain_num=0,uv_img_html='',rain_img_html='',i;
	$('#id_templ').html(tmp[0]+'&ordm;C');
	$('#id_temph').html(tmp[1]+'&ordm;C');
	$('#id_rainhtml').html(wea[1]);
	$('#id_uvhtml').html(wea[2]);	
	$('#id_rain').html(wea[3]+'%');
	$('#id_uv').html(wea[4]);
	//rain pic
	if(wea[3] >= 0 && wea[3] <= 20) {
		rain_num=0;
	} else if( wea[3] > 20 && wea[3] <= 50) {
		rain_num=1;
	} else if (wea[3] > 50 && wea[3] <= 80 ) {
		rain_num=2;
	} else {
		rain_num=3;
	}
    
	for(i=1;i<=rain_num;i++)
	{
	    rain_img_html += '<img src="img/web/wea/umbrella.gif" width="18" height="19" class="img">';
	}
	for(i=1;i<=3-rain_num;i++)
	{
	    rain_img_html += '<img src="img/web/wea/umbrella_gray.gif" width="18" height="19" class="img">';
	}
	$('#rain_img').html(rain_img_html);
	
	//uv pic
	if(wea[4] >= 0 && wea[4] <= 4) {
		uv_num = 1;
	} else if( wea[4] >= 5 && wea[4] <= 9) {
		uv_num = 2;
	} else {
		uv_num = 3;
	}
	for(i=1;i<=uv_num;i++)
	{
	    uv_img_html += '<img src="img/web/wea/uv.gif" width="21" height="21" class="img">';
	}
	for(i=1;i<=3-uv_num;i++)
	{
	    uv_img_html += '<img src="img/web/wea/uv_gray.gif" width="21" height="21" class="img">';
	}
	
	$('#uv_img').html(uv_img_html);
	
    if(rain_num>0)
    {
        $('#weaicon').html('<img src="/img/web/3/1280137584_weather_rain.gif" alt="降雨機率'+wea[3]+'%" title="降雨機率'+wea[3]+'%">');
    } else {
        $('#weaicon').html('<img src="/img/web/3/wh1.gif">');
    }
};


/**
 * 給 index 那幾個預建好的 div 用的
 * @author $mervyn$
**/
function commpage(idname,href){
	//idname = #ctmha_page
	var id = idname.replace(/(\w+_)page$/, '$1main'), main = $('#'+id+'>div'), psize=main.length, go=0, nowpage=0;
	var nowpage=function(){
		var i = 0;
		main.each(function(){if(!$(this).hasClass('none')){ return i;}else{i++;};});
		return i;
	}

	switch(href){
		case 'p':
			go = nowpage();
			break;
		case 'n':
			go = nowpage()+1;
			break;
		default:
			go = href;
			break;
	};
	main.each(function(){$(this).addClass('none')});
	$(main[go-1]).removeClass('none');
	return go;
}

/**
 * 換頁html 產生器
 *
 * @param int page		現在頁數
 * @param int total		總數 
 * @param int pagesize  頁面數量
 * @return html
 * @author $mervyn$
 */
function makePage(page, total, pagesize){
	pagesize = pagesize || 10;
	var tpage = Math.ceil(total/pagesize);
	
	var non = (page == 1)? ' pn' : '';
	var ps='<a href="#p" class="pre'+non+'">< Pre</a>';
	var top = (page > 2)? (page-0) + 2 : 5;
	var fromp = (page > 2)? page-2 : 1;
	
	for(var i = fromp; i<=tpage && i<=top;i++ ){
		var now = (page == i)? 'class="on"' : '';
		ps += '<a href="#'+i+'" '+now+'>'+i+'</a>';
	}
	
	non = (page == tpage)? ' pn' : '';
	ps += '<a href="#n" class="next'+non+'">Next ></a>';
	return ps;
}



/**
 * 換頁事件處理器
 *
 * @param object option {
 *	prev:上一頁的 function(ele id, 要去的頁數:'p', this), 
 *	next:上一頁的 function(ele id, 要去的頁數:'n', this), 
 *	page:上一頁的 function(ele id, 要去的頁數:'\d+', this),
 *	actived:'',
 *	origin:'',
 *	mark:''}
 * @author $mervyn$
 */
jQuery.fn.ctpage = function(option){
	if(typeof(this)!='object' || this.size() == 0 ) return false;
	var opt, idname, elem, page=0, nowpage=0;
	idname = $(this[0]).attr('id');
	elem = $(this[0]);
	
	opt = $.extend({prev:'', next:'', page:'', actived:'', origin:'',mark:''},option);

	elem.find('a').each(function(){
		var page = $(this).attr('href').replace(/.*?\#(\w+)/, '$1');
		$(this).click(function(){
			switch(page){
				case 'p':
					if(typeof(opt.prev) == 'function' ) {page = opt.prev(idname, page, this, nowpage);}
					else {commpage(idname, page)};
					break;
				case 'n':
					if(typeof(opt.next) == 'function' ) {page = opt.next(idname, page, this, nowpage);}
					else {commpage(idname, page)};
					break;
				default:
					if(typeof(opt.page) == 'function' ) {page = opt.page(idname, page, this, nowpage);}
					else {commpage(idname, page)};
					break;
			};

			elem.find('a').each(function(){
				var href2 = $(this).attr('href').replace(/.*?\#(\w+)/, '$1');
				if(typeof(opt.origin) == 'function' ){opt.origin($(this), href2)} else {if(href2!='n' && href2!='p')$(this).addClass('on');}
				if(page == href2) {if(typeof(opt.actived) == 'function') opt.actived($(this), href2);} else {$(this).removeClass('on');};
			});
			return false;
		});
	})

	return this;
};


/**
 * 處理 DIV 收合
 *
 * @author $mervyn$
 */
function folder(ele, typ){

	var eleid = ele.attr('id'), main = $($('#'+eleid+'_main').parent().get(0));
	var fcok=function(divname, typ){
		var cok = $.cookie('div_folded') || '';
		cok = (cok.length > 0)? cok.split(',') : new Array();
		if(typ){
			cok[cok.length] = divname;
			coks = cok.join(',');
		} else {
			for(var i=0; i <= cok.length ; i++){
				var fd = cok[i];
				if(fd == divname) cok.splice(i,1)
			}
			coks = cok.join(',').replace(/,{2}/, ',');
		}
		$.ct_cookie({div_folded:coks});
	};
	var beginevent = (eleid == 'ctbac')? ' ,#ctbac_main2' : '';
	if( !main.hasClass('border') ) main = $('#'+eleid+'_main, #'+eleid+'_page'+beginevent);

	if(ele.hasClass('minus')){
		ele.removeClass('minus').addClass('plues');
		main.hide();
		fcok(eleid, true);
	} else {
		ele.removeClass('plues').addClass('minus');
		main.show();
		fcok(eleid, false);
	}
}

/**
 * 處理 DIV 收合的記錄
 *
 * @author $mervyn$
 */
function setcokfolder(){
	var cok = $.cookie('div_folded') || '';
	cok = (cok.length > 0)? cok.split(',') : new Array();
	for(var i=0; i <= cok.length ; i++){
		var fd = cok[i];
		var main = $($('#'+fd+'_main').parent().get(0));
		if( !main.hasClass('border') ) main = $('#'+fd+'_main, #'+fd+'_page');
		if(fd == 'ctbac') main = $('#'+fd+'_main, ,#ctbac_main2, #'+fd+'_page');
		$('#'+fd).removeClass('minus').addClass('plues');
		main.hide();
	}
}

/**
 * 抓 cookies 的搜尋記錄
 *
 * @author $wen$
 */
function searh_his(){
	var hs = $.cookie('search_history');
	if(hs.length == 0) return false;
	hs = hs.split(',');

	var html = '';
	for(var i=0, kw = hs[i]; kw ; kw=hs[++i]){
		kw = func_htmlspecialchars(base64_decode(kw));
		if(i > 10) break;
		$('#search_history').prepend($('<a href="/search_result.php?itype=1&kword='+kw+'" >'+kw+'</a>'));
	}
}

/**
 *  js 做 htmlspecialchars處理,網路上直接抓的
 *
 *  @author kon
 */
function func_htmlspecialchars(string) {

   string = string.toString();
  
   string = string.replace(/&/g, '&amp;');
   string = string.replace(/</g, '&lt;');
   string = string.replace(/>/g, '&gt;');
   /* 暫時先把quote_style的參數拿掉
   if (quote_style == 'ENT_QUOTES') {
       string = string.replace(/"/g, '&quot;');
       string = string.replace(/\'/g, '&#039;');
   } else if (quote_style != 'ENT_NOQUOTES') {
       string = string.replace(/"/g, '&quot;');
   }
   */
   string = string.replace(/"/g, '&quot;');
   return string;
}
 

/**
 * showimage
 *
 * sample:
 * - html: <img class="show1" src="/img/web/tools/widget3_org_top.gif" style="display:none">
 * - js:   $.showimage( $(".show1"), 120, 30 );
 *
 * @param integer   w   max width
 * @param integer   h   max height
 * @author $wen$
 * @since 2009/5/5 下午 06:04:26
 */
jQuery.fn.showimage = function(setting){
	var set = $.extend({width:700, height:700, error:'/img/web/2/no_80x80.jpg'},setting);
	if($(this).size() == 0) return false;
	$.each($(this), function(){
		$(this).hide().load(function(){
			var w = $(this).width(), h = $(this).height();
			if(w>set.width){
				$(this).width(set.width)
			} else if(h>set.height){
				$(this).height(set.height)
			}
			$(this).show('fast').click(
				function(){ window.open($(this).attr('src'))}
			).css({'cursor':'pointer'});
		}).error(function(){
			if(set.error != '')	$(this).attr('src', set.error ).css({height:'80px',width:'80px'});
		})
	})
}

/**
 * 字數計算
 *
 * sample: event_add.html $('.maxnu').countNu();
 *
 * @param object    setting
 * @author $mervyn$
 */
jQuery.fn.countNu = function(setting){
	set = $.extend({add:'_nu', msgfunc:''},setting);
	var countnu=function(a){
		var max = $(this).attr('maxlength'), len = $(this).val().length, remain=0, id=$(this).attr('name');
		remain = (max - len);
		if(remain <= 0){
			//$('#'+id+set.add).html('0');
			if(remain==0) {
				$('#'+id+set.add).html('0');
			}
			else {
				$('#'+id+set.add).html(remain);//要看得到負
			}
			return false;
		}
		if($('#'+id+set.add).length > 0) $('#'+id+set.add).html(remain);
		else if (typeof(set.msgfunc) == 'function') set.msgfunc(remain, max, len);
	};
	this.reset=function(){
		var max = $(this).attr('maxlength'),id=$(this).attr('name');
		$('#'+id+set.add).html(max);
	};

	$(this).each(countnu);
	$(this).keyup(countnu);
}

function redata(key, data, opt) {
    var fn = $('#redata_fn').val();
    if(fn == '' || !fn) {
        fn = 'adm';
    }
    
    if(data === true || data === false) {
        $.get("/redata.php?fn="+fn+"&pn=event&data="+data+"&key="+key+"&opt="+opt);
    }
    else if(data.length < 1024) {
        data = escape(data);
        while(data.indexOf('+')>=0) {
            data = data.replace('+', '%2B');
        }
        $.get("/redata.php?fn="+fn+"&pn=event&data="+data+"&key="+key+"&opt="+opt);
    }
    else {
        return false;
    }
}

function check_len(lmt, key, out) {
    var res = lmt - key.length;
    $('#'+out).html(res);
}

function call_redata(id, chk, v) {
    var func = '';
    if(chk) func = 'set';
    else func = 'del';

    redata(id, v, func);
}

function deltime(id, url) {
    var res = 3;
    if(confirm('您確定要刪除該場次資料嗎?')) {
        $.get(url, function(data) {
            if(data=='success') {
                $('#'+id).remove();
            }
        });
    }
}

function img_del(File, imgtag, index, sub) {
    if(sub) {
        var subdir = sub+'/';
    }
    else var subdir = '';
    $.get("/"+subdir+"img_del.php?tag="+imgtag+"&file="+File+"&index="+index, function(data) {
        if(data == '1') {
            $('#img'+index).remove();
            $('#cover2').val('');
            var imgcnt = parseInt($('#imgcnt').val());
            if(imgcnt > 0) imgcnt--;
            $('#imgcnt').val(imgcnt);
        }
    });
}

function ch_cover(id, s, c) {
    if(id == '') return ;
    //設為封面
    if(typeof(s) != 'string') s = '<img src="/img/web/2/cover.gif" border="0">';
    //封面圖片
    if(typeof(c) != 'string') c = '<img src="/img/web/2/cover2.gif" border="0">';
    try{
        $('.dimg_cover').html( s );
    }
    catch(e){
        if($('#cover2').val() != '') {
            var preid = $('#cover2').val();
            $('#dimg'+preid).html( s );
        }
    }
    $('#dimg'+id).html( c );
    $('#cover2').val(id);
}



/**
 * 選縣市
 *
 *
 * @param object option  {citydivid:'', aclick:'在選縣市之後 cookie event', bclick:'在選縣市,設定cookie 之後', clickfunc:'在選縣市 click event'}
 * @author mervyn
 */
jQuery.fn.ctcity = function(option){
	if(typeof(this)!='object' || this.size() == 0 ) return false;
	var opt, idname, elem, timer=false;
	
	opt = $.extend({citydivid:'#slefloc', aclick:'', bclick:'', clickfunc:''},option);
	elem = $(opt.citydivid);

	var setTimer=function(msec){timer = setTimeout(function(){elem.hide();}, msec);}
	var clsTimer=function(){if(timer)clearTimeout(timer); timer=false}
	
	elem.mouseout(function(){setTimer(200);}).mouseover(function(){clsTimer();})
	$.each(this, function(){
		$(this).click(function(){
			elem.show();
			setTimer(1500)
			$(opt.citydivid+'>div').click(function(){
				var cname = $(this).text();
				var cokvar = {'cityid':$(this).attr('rel'), 'cityname':base64_encode(cname)};
				if(typeof(opt.clickfunc) == 'function') return opt.clickfunc(cokvar);
				$.ct_cookie(cokvar, {aftset:function(){	if(typeof(opt.aclick) == 'function') opt.aclick(cokvar);}});
				
				if(typeof(opt.bclick) == 'function') {opt.bclick(cokvar);} else {$('.cityarea').html(cname);};
				elem.hide();
			})
			return false;
		});
	})
	return this;
};


/**
 * 月曆, 會依 _get上的 date 設定選擇日期
 *
 * @author $mervyn$
 */
function searchCal(){
	// show me cal , remove below hide
	//$('#ct-cal').hide();
	//
	var tdate = null
	try{
		var ymd = location.search.match(/date\=(\d{4})\-(\d{2})\-(\d{2})/);
		if(ymd != null) {
			var gD = new Date(), ny=gD.getFullYear() , nm = (gD.getMonth()+1), nd = gD.getDate();
			if(ymd[1] != ny) tdate += '+'+(ymd[1]-ny)+'y ';
			if(ymd[2] != nm) tdate += '+'+(ymd[2]-nm)+'m ';
			if(ymd[3] != nd) tdate += '+'+(ymd[3]-nd)+'d ';
		} else {
			var dd = location.search.match(/date\=(\-?\d+)/);
			if(dd != null){
				switch(dd[1]){
					case '-1':
						tdate = '+1d';
						break;
					default:
						break;
				};
			}
		}
	}catch(e){tdate = null;}
	
    alert(tdate);
	var tt = $('#jdp-cal').datepicker({onSelect:function(a,b){
		$('input[name=date]').val(a);
		$('#sdate')[0].submit();
	},changeMonth:false,changeYear:false,defaultDate:tdate})
}

function makeMap(loc){
	var geo = loc.geo;
	
	if(geo.length > 0) {
		$('#googlemap').omap({initZoom:13,ControlSize:'s'});
		geo = geo.replace(/\((.*?)\)/, '$1').split(',');
		$.omap.addPoint({y:geo[1],x:geo[0]});
	} else {
		$('#googlemap').hide();
		$('#ct-map a').hide();
		$('#ct-map_pl a').hide();
	}
}

/**
 * 表頭, 標籤顯示
 * 只要header版型有引用到即可
 * @param   string  rtn 看要不要回傳tabId, subId. 'f':不回傳, 't':回傳
 * @return  object
 * @author  $wen$ 
 * @since   2009/7/1 上午 11:52:59
 */
function headerTabSelect(rtn){
    if(typeof(rtn)=='String'){
        rtn = (rtn=='t')? 't':'f';
    }
    
    var tabId = 0; subId = 0;
    var getvar = '', str = '';
    var p = String(location.pathname+location.search).split('?');
    if(p.length > 1){
        getvar = $.grep( p[1].split('&'), function(a){
            var v = a.split('=');
            if(v[0] == 'date'){
                return a;
            }
        });
    }
    getvar = (getvar.length > 0)? '?'+getvar: getvar;
    str = p[0] + getvar;
    //str = '/theme/20091020/';//test
    switch (str){
        case '/':
            tabId = 1;
        break;
        case '/search.php':
            tabId = 2;
        break;
        case '/event/index.php':
            tabId = 2;
        break;
        case '/theme.php':
            tabId = 3;
        break;
        case '/ajax/iframe_new.php':
        case '/ajax/iframe.php':
			var vids = p[1].split('=');
			if(vids[1]<=2)
				tabId = 3;
			else
				tabId = 6;
            /*page_id=127 url查這個就能知道分頁*/
            var temp = ctInfo.refer.split('?');
            if(temp.length == 2){
                var r = temp[1];
            }
            if(typeof(r) == 'string'){
                $.grep( r.split('&'), function(a){
                    var v = a.split('=');
                    if(v[0] == 'page_id'){
                        subId = v[1];
                    }
                });
            }
        break;
    }
    if(str.match(/^\/cata\//)){
        tabId = 2;
    }
    /*精選subtab*/
    if(tabId == 0 && subId == 0 && str.match(/^\/theme\//)){
        tabId = 2;
        var sstr = str.replace(/\/theme\/(.*?)\//, '$1');
        $('#sc'+tabId+'>a').each(function(idx){
            if($(this).attr('id') == sstr){
                subId = (idx+1);
            }
        });
    }
    headerTabSelectChange(tabId, subId);
    
    if(rtn=='t'){
        return {'tabId': tabId, 'subId': subId};
    }
}
/**
 * 表頭, 改變標籤的顯示
 * @param   integer tabId   第一層標籤
 * @param   integer subId   第二層標籤
 * @author  $wen$ 
 * @since   2009/7/1 下午 03:08:03
*/
function headerTabSelectChange(tabId, subId){
    $('.sclink').removeClass('current');
    $('.tabcontent>a').removeClass('on');
    $('.tabcontent').hide();
    if(tabId > 0){
        $('#sclink'+tabId).addClass('current');
        $('#sc'+tabId).show();
        if(subId > 0){
            $('#sc'+tabId+'>a').eq(parseInt(subId-1)).addClass('on');
        }
    }
}


/**
 * 申請認養
 * @param   integer tabId   
 * @param   integer subId   
 * @author  $mervyn$ 
*/
function Dclaim(ttype, id){
	$.get('/ajax/claim.php', {'type':ttype,'id':id}, function(ret){
		if(ret == '') {
			alert('error!');
			return false;
		};
		switch((ret-0)){
			case 0:
				alert('請登入企業會員, 或請至合作與廣告刊登');
				window.open('/advertise.php');
				break;
			case 1:
				alert("請先申請企業會員");
				window.open('/advertise.php');			
				break;
			case 2:
				alert('error at server');
				break;
			case 3:
				alert ("感謝您申請，我們會盡快為您處理!");
				break;
			default:
				alert(ret);
				break;				
		}
	
	})
	return false;
}


/**
 * iframe 廣告處理
 *
 * @author $mervyn$
 */
jQuery.fn.iadx = function(uri, noadxfunc){
	if(typeof(this)!='object' || this.size() == 0 ) return false;
	var ele = $(this[0]),  iele = this[0];
	ele.attr('src', uri);
	/*
	.ready(function(){
		setTimeout(function(){
			try{
				if(iele.contentDocument.height < 20){
					if(typeof(noadxfunc) == 'function') noadxfunc(ele, this);
					ele.parent().hide();
				} else {
					ele.parent().show();
				}
			}catch(e){}
		} , 2500);
	})
	*/
	return this;
};

function outemail(email){
	try{
		if( (email.length > 0) && (email.search(/^[\w]+[\w\.\+\-]+@[\w\-]+?\.[a-zA-Z]{2,6}/) != 0) ) {
			alert('請填入正確email');
			return false;
		}
        else if(email.length==0){
            alert('請填入email');
            return false;
        }
	} catch(e){
		console.log(e);
		alert('請填入email');
		return false;
	}
	$.post('/ajax/outemail.php', {'email':email}, function(ret){
		if(ret == 'true') {
			$('.gulide').hide();
			$('.gulide_ov').show();
		} else {
			console.log(ret);
			alert('抱歉，此信箱已申請過每週活動速報了，請勿重複登錄！');
		}
	})
	return false;
}

function outmail_show(){
	$('.gulide_ov').hide();	
	$('.gulide').show();
	$('input[name=outteremail]').val('請輸入您的E-mail');
	return false;
}

/**
 *  記錄點擊用的
 *
 *
 **/
function linklog(){var uri = $(this).attr('href'), page=location.pathname;$.get('/ajax/cul.php', {h:uri,p:page});};

$(document).ready(function(){

	$('#go_page').click(function () {
		var page_nums = $.trim($('#page_nums').val());
		if(page_nums.length>0)
		{
			if(/\D/.test(page_nums))
				alert('頁數限填數字');
			else
				location.href = $('#go_page').attr('rel') + page_nums;
		}
		else
		{
			alert('請輸入要前往哪一頁的頁數');
		}
	});

$('#cx_tabmenu a').click(linklog);
$('#ctcata a').click(linklog);
})

/**
 * 清瀏灠記錄
 *
 **/
function clear_history()
{
	if(confirm('您確定要將瀏覽記錄清除?'))
	{
		$.post('/ajax/clear_history.php',{},function(data) {
			$('.history').hide();
			$('#recently').hide();
		});
	}
}

function mfavor(oper_id){
	$('#f_id').val(oper_id);
	
    var oper_val = et_id = 0;
    var r_ary = Array();
    var r_msg = Array('','加入類別有問題喔!!','找不到該筆資料','資料有誤，請再試一次');
	
    //參加的 "刪除" 要用 3: attend_cancel
  	//oper_val = (oper_id == 1)? 'attend' : (oper_id == 2)? 'trace' : 'cancel';
    var op = new Array('cancel', 'attend', 'trace', 'attend_cancel');
    oper_val = op[oper_id];
    try{et_id = $("#f_et_id").val();} catch(e){ et_id = 0}
	if(et_id == undefined) et_id = 0;
    $.ajax({
        type: "POST",
        url: "/mfavor.php",
        data: {'actid':$("#tid").val(), 'id':$("#id").val(), 'oper':oper_val, 'et_id':et_id}, 
        success: function(msg){
            r_ary = msg.split('&');
			
			switch (r_ary[0]){
				case '-1' :
					// need to login
					$('#f_id').val(oper_id);
					$("#favor").submit();					
					break;
					
				case '0':
					// cancel
					if($("#cancel_join").length = 1 ) {
						$("#cancel_join").hide(500);
						$('#tdfavor, #tdinsterst').removeClass('cal_fav').addClass('add_fav');
					} else {
						$("#favorbutton").removeClass('cal_fav').addClass('add_fav');
					}
					$("#mfavor").text(r_ary[1]);
					break;
				
				case '1':
					// add one
					if($("#cancel_join").length = 1 ) {
						$("#cancel_join").show(500);
						var fdom =(oper_id == 1)? 'tdfavor' : 'tdinsterst';
						var f2dom =(oper_id != 1)? 'tdfavor' : 'tdinsterst';
						if(r_ary[2]) { // change
							$('#tdfavor, #tdinsterst').removeClass('cal_fav').removeClass('add_fav');
							$('#'+fdom).addClass('cal_fav');
							$('#'+f2dom).addClass('add_fav');
						} else {
							$('#'+fdom).removeClass('add_fav').addClass('cal_fav');
						}
					} else {
						$("#favorbutton").removeClass('add_fav').addClass('cal_fav');
					}
					$("#mfavor").text(r_ary[1]);				
					break;
					
				default:
					// fail
					//$("#mfavor").text(msg);
					alert(r_msg[r_ary[0]]);				
					break;
			}
        }
    });
}
var mfavor2_flag = true;
function mfavor2(oper_id,indexs,etd_id){
    
    if(mfavor2_flag)
    {
        mfavor2_flag = false;
    	$('#f_id'+indexs).val(oper_id);
        var oper_val = et_id = 0;
        var r_ary = Array();
        var r_msg = Array('','加入類別有問題喔!!','找不到該筆資料','資料有誤，請再試一次');
    	
        //參加的 "刪除" 要用 3: attend_cancel
    	//oper_val = (oper_id == 1)? 'attend' : (oper_id == 2)? 'trace' : 'cancel';
        var op = new Array('cancel', 'attend', 'trace', 'attend_cancel');
        oper_val = op[oper_id];
        try{et_id = $("#f_et_id"+indexs).val();} catch(e){ et_id = 0}
    	if(et_id == undefined) et_id = 0;
        if(etd_id == undefined) etd_id = 0;
        $.ajax({
            type: "POST",
            url: "/mfavor.php",
            data: {'actid':$("#tid"+indexs).val(), 'id':$("#id"+indexs).val(), 'oper':oper_val, 'et_id':et_id, 'etd_id':etd_id}, 
            success: function(msg){
                mfavor2_flag = true;
                r_ary = msg.split('&');
    			switch (r_ary[0]){
    				case '-1' :
    					// need to login
    					$('#f_id'+indexs).val(oper_id);
    					$("#favor"+indexs).submit();					
    					break;
    				case '0':
    					// cancel
    					$("#count"+indexs).text(r_ary[1]);
    					if($("#sub_type"+indexs).val()=='event' && oper_id==3)
    				    {
                            if(etd_id == 0){
                                $("#joinevent"+indexs).text('我感興趣');
                                $("#joinevent"+indexs).attr('href','javascript:mfavor2(1,'+indexs+')');
                                $("#joinevent"+indexs).removeClass('equit');//equit
                                $("#joinevent"+indexs).addClass('ejoin');
                                
                                $('.list_'+et_id+' .etd_joinevent').text('我感興趣');
                                $('.list_'+et_id+' .etd_joinevent').removeClass('equit');//equit
                                $('.list_'+et_id+' .etd_joinevent').addClass('ejoin');
                                $('.list_'+et_id+' .etd_joinevent').each(function(){
                                    //url
                                    var strclass = $(this).attr('class').split(' ');
                                    var etd_id = strclass[1].replace('etd_join', '');
                                    $('.list_'+et_id+' .etd_join'+etd_id).attr('href','javascript:mfavor2(1,'+indexs+', '+etd_id+')');
                                    //count --
                                    var showcount = parseInt($('.info.etd_count.etd_count'+etd_id+'>span').html());
                                    if(showcount > 0){
                                        $('.info.etd_count.etd_count'+etd_id+'>span').html( --showcount );
                                    }
                                    return;
                                });
    				        }
                            else{
                                $('.list_'+et_id+' .etd_join'+etd_id).text('我感興趣');
                                $('.list_'+et_id+' .etd_join'+etd_id).attr('href','javascript:mfavor2(1,'+indexs+', '+etd_id+')');
                                $('.list_'+et_id+' .etd_join'+etd_id).removeClass('equit');//equit
                                $('.list_'+et_id+' .etd_join'+etd_id).addClass('ejoin');
                                var showcount = parseInt($('.info.etd_count.etd_count'+etd_id+'>span').html());
                                if(showcount > 0){
                                    $('.info.etd_count.etd_count'+etd_id+'>span').html( --showcount );
                                }
                            }
    				    }
    					$.facebox("取消加入感興趣活動，完成！","facebox"); 
    					break;
    				case '0_1':
    					// cancel
    					$("#count"+indexs).text(r_ary[1]);
    					
    					$.facebox("取消收藏此活動，完成！","facebox"); 
    					break;
    				case '1':
    				    //成功加入
    				    $("#count"+indexs).text(r_ary[1]);
    				    if($("#sub_type"+indexs).val()=='event' && oper_id==1)
    				    {
                            if(etd_id == 0){
                                $("#joinevent"+indexs).text('取消');
                                $("#joinevent"+indexs).attr('href','javascript:mfavor2(3,'+indexs+')');
                                $("#joinevent"+indexs).removeClass('ejoin');//equit
                                $("#joinevent"+indexs).addClass('equit');
                                //$('.list_'+et_id+' .etd_count').html(parseInt($('.list_'+et_id+' .etd_count').html())+1); //不能偷懶, 欄位可能有已結束的, 會相互影響
                                
                                $('.list_'+et_id+' .etd_joinevent').text('取消');
                                $('.list_'+et_id+' .etd_joinevent').removeClass('ejoin');//equit
                                $('.list_'+et_id+' .etd_joinevent').addClass('equit');
                                $('.list_'+et_id+' .etd_joinevent').each(function(){
                                    //url
                                    var strclass = $(this).attr('class').split(' ');
                                    var etd_id = strclass[1].replace('etd_join', '');
                                    $('.list_'+et_id+' .etd_join'+etd_id).attr('href','javascript:mfavor2(3,'+indexs+', '+etd_id+')');
                                    //count ++
                                    var showcount = parseInt($('.info.etd_count.etd_count'+etd_id+'>span').html());
                                    $('.info.etd_count.etd_count'+etd_id+'>span').html( ++showcount );
                                    return;
                                });
    				        }
                            else{
                                $('.list_'+et_id+' .etd_join'+etd_id).text('取消');
                                $('.list_'+et_id+' .etd_join'+etd_id).attr('href','javascript:mfavor2(3,'+indexs+', '+etd_id+')');
                                $('.list_'+et_id+' .etd_join'+etd_id).removeClass('ejoin');//equit
                                $('.list_'+et_id+' .etd_join'+etd_id).addClass('equit');
                                var showcount = parseInt($('.info.etd_count.etd_count'+etd_id+'>span').html());
                                $('.info.etd_count.etd_count'+etd_id+'>span').html( ++showcount );
                            }
    				    }
    				    $.facebox("已加入我感興趣的活動，謝謝！","facebox"); 
    					break;
    			    case '1_1':
    				    //成功加入
    				    $("#count"+indexs).text(r_ary[1]);
    				    $.facebox("謝謝，您已收藏成功，日後您可以到「我的活動」查看您已收藏的活動清單。","facebox"); 
    					break;
    			    case '4':
    			        if($("#sub_type"+indexs).val()=='event' && oper_id==1)
    				    {
                            if(etd_id == 0){
                                $("#joinevent"+indexs).text('取消');
                                $("#joinevent"+indexs).attr('href','javascript:mfavor2(3,'+indexs+')');
                                $("#joinevent"+indexs).removeClass('ejoin');//equit
                                $("#joinevent"+indexs).addClass('equit');
                                //$('.list_'+et_id+' .etd_count').html(parseInt($('.list_'+et_id+' .etd_count').html())+1); //不能偷懶, 欄位可能有已結束的, 會相互影響
                                
                                $('.list_'+et_id+' .etd_joinevent').text('取消');
                                $('.list_'+et_id+' .etd_joinevent').removeClass('ejoin');//equit
                                $('.list_'+et_id+' .etd_joinevent').addClass('equit');
                                $('.list_'+et_id+' .etd_joinevent').each(function(){
                                    //url
                                    var strclass = $(this).attr('class').split(' ');
                                    var etd_id = strclass[1].replace('etd_join', '');
                                    $('.list_'+et_id+' .etd_join'+etd_id).attr('href','javascript:mfavor2(3,'+indexs+', '+etd_id+')');
                                    //count ++
                                    var showcount = parseInt($('.info.etd_count.etd_count'+etd_id+'>span').html());
                                    $('.info.etd_count.etd_count'+etd_id+'>span').html( ++showcount );
                                    return;
                                });
    				        }
                            else{
                                $('.list_'+et_id+' .etd_join'+etd_id).text('取消');
                                $('.list_'+et_id+' .etd_join'+etd_id).attr('href','javascript:mfavor2(3,'+indexs+', '+etd_id+')');
                                $('.list_'+et_id+' .etd_join'+etd_id).removeClass('ejoin');//equit
                                $('.list_'+et_id+' .etd_join'+etd_id).addClass('equit');
                                var showcount = parseInt($('.info.etd_count.etd_count'+etd_id+'>span').html());
                                $('.info.etd_count.etd_count'+etd_id+'>span').html( ++showcount );
                            }
    				    }
    			        $.facebox("您已經加入過該活動。","facebox"); 
    			        break;
    			    case '4_1':
    			        $.facebox("您已收藏過此活動了。","facebox"); 
    			        break;
    				default:
    					// fail
    					//$("#mfavor").text(msg);
    					//alert(msg);
    					//alert(r_msg[r_ary[0]]);				
    					break;
    			}
    			if( String(typeof( getAttendmember )) == "function" ){
    			    getAttendmember('t', etd_id);
    			}
            }
        });
    }
}



/**
*
*
*
* @param object cvar { oid: 收藏/參加/取消, actid: 類型event/venue/sponsor/performer , id: eid, etid: etid, location: page attend}
* @author mervyn
*/
var mfavor = false;
function joinEvent(cvar, opt){
	var opt = $.extend(opt, {
		needlogin:function(){
				var hfrom = $('<form name="favor" id="favorform" action="/msg.php" method="POST"></form>');
				$('body').append(hfrom);
				hfrom.append($('<input>').attr({name:'type', type:'hidden', value:'favor'}));
				hfrom.append($('<input>').attr({name:'tid', type:'hidden', value:'0'}));
				hfrom.append($('<input>').attr({name:'sub_type', type:'hidden', value:'search'}));
				hfrom.append($('<input>').attr({name:'f_id', type:'hidden', value:cvar.oid}));
				hfrom.append($('<input>').attr({name:'id', type:'hidden', value:cvar.id}));
				hfrom.append($('<input>').attr({name:'et_id', type:'hidden', value:cvar.etid}));
				hfrom.append($('<input>').attr({name:'refer', type:'hidden', value:location}));
				hfrom[0].submit();			
		},
		quitEvent:function(){
			$.facebox("取消加入感興趣活動，完成！","facebox"); 
		},
		joinEvent:function(){
			$.facebox("已加入我感興趣的活動，謝謝！","facebox"); 
		},
		tracejoinEvent:function(){
		    $.facebox("謝謝，您已收藏成功，日後您可以到「我的活動」查看您已收藏的活動清單。","facebox"); 
		},
		tracequitEvent:function(){
		    $.facebox("取消收藏此活動，完成！","facebox"); 
		},
		errFunc:function(cvar, res){
			ares = res.split('&')[0];
			var r_msg = Array('','加入類別有問題喔!!','找不到該筆資料','資料有誤，請再試一次');
			alert(r_msg[ares]);		
		}, 
		already:function(){
			$.facebox("您已經加入過該活動。","facebox"); 
		},
		tracealready:function(){
		    $.facebox("您已收藏過此活動了。","facebox"); 
		}
	});
    if(mfavor) return false;
	mfavor = true
	var oper_val = (cvar.oid == 1)? 'attend' : (cvar.oid == 2)? 'trace' : 'cancel';
	
	$.post('/mfavor.php', {'actid':0, 'id':cvar.id, 'oper':oper_val, 'et_id':cvar.etid}, function(res){
		mfavor = false;
		ares = res.split('&')[0];
		switch (ares){
			case '-1' :
				if(typeof(opt.needlogin) == 'function') return opt.needlogin(cvar, res);
				break;
			case '0':
				if(typeof(opt.quitEvent) == 'function') return opt.quitEvent(cvar, res);
				break;
			case '0_1':
				if(typeof(opt.tracequitEvent) == 'function') return opt.tracequitEvent(cvar, res);
				break;
			case '1':
				if(typeof(opt.joinEvent) == 'function') return opt.joinEvent(cvar, res);
				break;
		    case '1_1':
				if(typeof(opt.tracejoinEvent) == 'function') return opt.tracejoinEvent(cvar, res);
				break;
			case '4':
				if(typeof(opt.already) == 'function') return opt.already(cvar, res);
				break;
		    case '4_1':
		        if(typeof(opt.tracealready) == 'function') return opt.tracealready(cvar, res);
				break;
			default:
				if(typeof(opt.errFunc) == 'function') return opt.errFunc(cvar, res);
				break;
		}
	})
}



function locate_refresh_facebox()
{
  if (self.pageYOffset) {
      yScroll = self.pageYOffset;
      xScroll = self.pageXOffset;
    } else if (document.documentElement && document.documentElement.scrollTop) {	 // Explorer 6 Strict
      yScroll = document.documentElement.scrollTop;
      xScroll = document.documentElement.scrollLeft;
    } else if (document.body) {// all other Explorers
      yScroll = document.body.scrollTop;
      xScroll = document.body.scrollLeft;	
    }
    var windowHeight
    if (self.innerHeight) {	// all except Explorer
      windowHeight = self.innerHeight;
    } else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
      windowHeight = document.documentElement.clientHeight;
    } else if (document.body) { // other Explorers
      windowHeight = document.body.clientHeight;
    }	
    $('#facebox').css({
        top:	yScroll + (windowHeight / 10),
        left:	385.5
    });
}




;(function($) {
	$.lbox = {} || $.lbox;
	$.extend($.lbox, {
		opts:{
			// Configuration related to overlay
			overlayBgColor: 		'#000',		// (string) Background color to overlay; inform a hexadecimal value like: #RRGGBB. Where RR, GG, and BB are the hexadecimal values for the red, green, and blue values of the color.
			overlayOpacity:			0.8,		// (integer) Opacity value to overlay; inform: 0.X. Where X are number from 0 to 9
			// Configuration related to images
			imageLoading:			'/img/lightbox/lightbox-ico-loading.gif',		// (string) Path and the name of the loading icon
			imageBtnClose:			'/img/lightbox/lightbox-btn-close.gif',		// (string) Path and the name of the close btn
			imageBlank:				'/img/lightbox/lightbox-blank.gif',			// (string) Path and the name of a blank image (one pixel)
			// Configuration related to container image box
			containerBorderSize:	10,			// (integer) If you adjust the padding in the CSS for the container, #lightbox-container-image-box, you will need to update this value
			containerResizeSpeed:	400		// (integer) Specify the resize duration of container image. These number are miliseconds. 400 is default.
		},
		finish: function() {
			iebug(false);
			$('#jquery-lightbox').remove();
			$('#jquery-overlay').fadeOut(function() { $('#jquery-overlay').remove(); });
			$('embed, object, select').css({ 'visibility' : 'visible' });
		},
		show:function(data, nav){
			if($('#jquery-overlay').length == 0) _setenv();
			iebug(true);
			var w = data.width(), h=data.height();
			if(w < 250) w=400;
			if(h < 250) h=400;
			_resize_container_image_box(w, h);
			$('#lightbox-image').html(data.html()).hide();
			
			$('#lightbox-container-image-data-box').hide();
			$('#lightbox-image-details-caption').hide();
			
			//it's suck !!!
			if($.browser.msie && $.browser.version == '6.0'){
				$('#lightbox-image').find('select').show();
			}
			return $('#lightbox-image');
		},
		set:function(opts){$.extend($.lbox.opts, opts);}
	});
	
	function iebug(show){
		if($.browser.msie && $.browser.version == '6.0'){
			if(show){
				$('select').hide();
			}else{
				$('select').show();
			}
		};
	};
	function _setenv(){
		if($('#jquery-overlay').length == 1) return false;
		$('body').append('<div id="jquery-overlay"></div><div id="jquery-lightbox"><div id="lightbox-container-image-box"><div id="lightbox-container-image"><div id="lightbox-image"> </div><div id="lightbox-loading"><a href="#" id="lightbox-loading-link"><img src="'+$.lbox.opts.imageLoading+'"></a></div></div></div><div id="lightbox-container-image-data-box"><div id="lightbox-container-image-data"><div id="lightbox-image-details">'+
					'<span id="lightbox-image-details-caption"></span><span id="lightbox-image-details-currentNumber"></span>'+
					'</div><div id="lightbox-secNav"><a href="#" id="lightbox-secNav-btnClose"><img src="' + $.lbox.opts.imageBtnClose + '"></a></div></div></div></div>');	
					
		var arrPageSizes = ___getPageSize();
		// Style overlay and show it
		$('#jquery-overlay').css({
			backgroundColor:	$.lbox.opts.overlayBgColor,
			opacity:			$.lbox.opts.overlayOpacity,
			width:				arrPageSizes[0],
			height:				arrPageSizes[1]
		}).fadeIn();
		
		var arrPageScroll = ___getPageScroll();
		
		// Calculate top and left offset for the jquery-lightbox div object and show it
		$('#jquery-lightbox').css({
			top:	arrPageScroll[1] + (arrPageSizes[3] / 10),
			left:	arrPageScroll[0]
		}).show();
		
		$(window).resize(function() {
			// Get page sizes
			var arrPageSizes = ___getPageSize();
			// Style overlay and show it
			$('#jquery-overlay').css({
				width:		arrPageSizes[0],
				height:		arrPageSizes[1]
			});
			// Get page scroll
			var arrPageScroll = ___getPageScroll();
			// Calculate top and left offset for the jquery-lightbox div object and show it
			$('#jquery-lightbox').css({
				top:	arrPageScroll[1] + (arrPageSizes[3] / 10),
				left:	arrPageScroll[0]
			});
		});					
	};

	function ___getPageSize() {
		var xScroll, yScroll;
		if (window.innerHeight && window.scrollMaxY) {	
			xScroll = window.innerWidth + window.scrollMaxX;
			yScroll = window.innerHeight + window.scrollMaxY;
		} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
			xScroll = document.body.scrollWidth;
			yScroll = document.body.scrollHeight;
		} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
			xScroll = document.body.offsetWidth;
			yScroll = document.body.offsetHeight;
		}
		var windowWidth, windowHeight;
		if (self.innerHeight) {	// all except Explorer
			if(document.documentElement.clientWidth){
				windowWidth = document.documentElement.clientWidth; 
			} else {
				windowWidth = self.innerWidth;
			}
			windowHeight = self.innerHeight;
		} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
			windowWidth = document.documentElement.clientWidth;
			windowHeight = document.documentElement.clientHeight;
		} else if (document.body) { // other Explorers
			windowWidth = document.body.clientWidth;
			windowHeight = document.body.clientHeight;
		}	
		// for small pages with total height less then height of the viewport
		if(yScroll < windowHeight){
			pageHeight = windowHeight;
		} else { 
			pageHeight = yScroll;
		}
		// for small pages with total width less then width of the viewport
		if(xScroll < windowWidth){	
			pageWidth = xScroll;		
		} else {
			pageWidth = windowWidth;
		}
		arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight);
		return arrayPageSize;
	};

	function ___getPageScroll() {
		var xScroll, yScroll;
		if (self.pageYOffset) {
			yScroll = self.pageYOffset;
			xScroll = self.pageXOffset;
		} else if (document.documentElement && document.documentElement.scrollTop) {	 // Explorer 6 Strict
			yScroll = document.documentElement.scrollTop;
			xScroll = document.documentElement.scrollLeft;
		} else if (document.body) {// all other Explorers
			yScroll = document.body.scrollTop;
			xScroll = document.body.scrollLeft;	
		}
		arrayPageScroll = new Array(xScroll,yScroll);
		return arrayPageScroll;
	};

	function _set_navigation() {
		$('#lightbox-nav').show();
		$('#lightbox-nav-btnPrev,#lightbox-nav-btnNext').css({ 'background' : 'transparent url(' + $.lbox.opts.imageBlank + ') no-repeat' });
	}

	function _show_image() {
		$('#lightbox-loading').hide();
		$('#lightbox-image').fadeIn(function() {
			_set_navigation();
		});
	};
	
	function _resize_container_image_box(intImageWidth,intImageHeight) {
		// Get current width and height
		var intCurrentWidth = $('#lightbox-container-image-box').width();
		var intCurrentHeight = $('#lightbox-container-image-box').height();
		// Get the width and height of the selected image plus the padding
		var intWidth = (intImageWidth + ($.lbox.opts.containerBorderSize * 2)); // Plus the image愀 width and the left and right padding value
		var intHeight = (intImageHeight + ($.lbox.opts.containerBorderSize * 2)); // Plus the image愀 height and the left and right padding value
		// Diferences
		var intDiffW = intCurrentWidth - intWidth;
		var intDiffH = intCurrentHeight - intHeight;
		// Perfomance the effect
		$('#lightbox-container-image-box').animate({ width: intWidth, height: intHeight },$.lbox.opts.containerResizeSpeed,function() { _show_image(); });
		if ( ( intDiffW == 0 ) && ( intDiffH == 0 ) ) {
			if ( $.browser.msie ) {
				___pause(250);
			} else {
				___pause(100);	
			}
		} 
		$('#lightbox-container-image-data-box').css({ width: intImageWidth });
		$('#lightbox-nav-btnPrev,#lightbox-nav-btnNext').css({ height: intImageHeight + ($.lbox.opts.containerBorderSize * 2) });
	};
})(jQuery);
function blame(mid, e){
	if(!confirm('您確定要檢舉此留言?')) return false;
	$.post('/blame.php',{mesg_id:mid}, function(data){
		if(data.slice(0,4)=='true'){
			alert('檢舉成功');
			var tb = e.parentNode.parentNode.parentNode;
			$(tb).hide();
		} else {
			alert('檢舉失敗');
		}
	});
}

var msent = 0;
function mesg_sent(){
	if(msent == 1) return false;
	if($('#msg').val()=='') {
	    alert('請輸入留言'); 
	} 
	else if($('#msg').val().length > 500)
	{
	    alert('留言長度大於500，請刪減多餘文字，目前留言字數為：'+$('#msg').val().length);
	}
	else {
		$('#msg_board').submit();msent = 1;
	}	
	
}

function fb_mesg_send()
{
	if(msent == 1) return false;
	if($('#msg').val()=='') {
	    alert('請輸入留言'); 
	} 
	else if($('#msg').val().length > 500)
	{
	    alert('留言長度大於500，請刪減多餘文字，目前留言字數為：'+$('#msg').val().length);
	}
	else
	{
		if(is_fb && fb_att!=null)
		{
			msent = 1;
			/*
			FB.Connect.streamPublish($('#msg').val(), fb_att, null, null, '您想順便留言到您的Facebook嗎?', function(data) {
				$('#msg_board').submit();
			});
			*/
			var user_message_prompt = '您想順便留言到您的Facebook嗎?';
			var body = '';
				
			FB.Connect.showFeedDialog(fb_templ,
									  fb_att,
									  null,
									  body,
									  null,
									  FB.RequireConnect.require,
									  function(data) { $('#msg_board').submit();},
									  user_message_prompt,
									  $('#msg').val());
		}
	
	}
}

function plurk_mesg_send()
{
	if(msent == 1) return false;
	if($('#msg').val()=='') {
	    alert('請輸入留言'); 
	} 
	else if($('#msg').val().length > 500)
	{
	    alert('留言長度大於500，請刪減多餘文字，目前留言字數為：'+$('#msg').val().length);
	}
	else
	{
		msent = 1;
		$.facebox({ ajax: '/plurk_post.php' });	
	}
}
