From 009491c52f4ea5759efe7690d1701b11371caf7e Mon Sep 17 00:00:00 2001 From: Gergely Polonkai Date: Wed, 29 Oct 2014 23:11:56 +0100 Subject: [PATCH] Add fancybox for each card --- index.html | 172 +- js/fancybox/.gitattributes | 7 + js/fancybox/CHANGELOG.md | 125 + js/fancybox/README.md | 217 ++ js/fancybox/demo/1_b.jpg | Bin 0 -> 82080 bytes js/fancybox/demo/1_s.jpg | Bin 0 -> 8097 bytes js/fancybox/demo/2_b.jpg | Bin 0 -> 51674 bytes js/fancybox/demo/2_s.jpg | Bin 0 -> 1455 bytes js/fancybox/demo/3_b.jpg | Bin 0 -> 55777 bytes js/fancybox/demo/3_s.jpg | Bin 0 -> 2543 bytes js/fancybox/demo/4_b.jpg | Bin 0 -> 84150 bytes js/fancybox/demo/4_s.jpg | Bin 0 -> 5203 bytes js/fancybox/demo/5_b.jpg | Bin 0 -> 76217 bytes js/fancybox/demo/5_s.jpg | Bin 0 -> 4412 bytes js/fancybox/demo/ajax.txt | 15 + js/fancybox/demo/iframe.html | 26 + js/fancybox/demo/index.html | 312 +++ js/fancybox/lib/jquery-1.10.1.min.js | 6 + js/fancybox/lib/jquery-1.9.0.min.js | 4 + .../lib/jquery.mousewheel-3.0.6.pack.js | 13 + js/fancybox/source/blank.gif | Bin 0 -> 43 bytes js/fancybox/source/fancybox_loading.gif | Bin 0 -> 6567 bytes js/fancybox/source/fancybox_loading@2x.gif | Bin 0 -> 13984 bytes js/fancybox/source/fancybox_overlay.png | Bin 0 -> 1003 bytes js/fancybox/source/fancybox_sprite.png | Bin 0 -> 1362 bytes js/fancybox/source/fancybox_sprite@2x.png | Bin 0 -> 6553 bytes .../source/helpers/fancybox_buttons.png | Bin 0 -> 1080 bytes .../helpers/jquery.fancybox-buttons.css | 97 + .../source/helpers/jquery.fancybox-buttons.js | 122 + .../source/helpers/jquery.fancybox-media.js | 199 ++ .../source/helpers/jquery.fancybox-thumbs.css | 55 + .../source/helpers/jquery.fancybox-thumbs.js | 162 ++ js/fancybox/source/jquery.fancybox.css | 274 +++ js/fancybox/source/jquery.fancybox.js | 2020 +++++++++++++++++ js/fancybox/source/jquery.fancybox.pack.js | 46 + js/fancybox/sprite.psd | Bin 0 -> 250491 bytes 36 files changed, 3793 insertions(+), 79 deletions(-) create mode 100644 js/fancybox/.gitattributes create mode 100644 js/fancybox/CHANGELOG.md create mode 100644 js/fancybox/README.md create mode 100644 js/fancybox/demo/1_b.jpg create mode 100644 js/fancybox/demo/1_s.jpg create mode 100644 js/fancybox/demo/2_b.jpg create mode 100644 js/fancybox/demo/2_s.jpg create mode 100644 js/fancybox/demo/3_b.jpg create mode 100644 js/fancybox/demo/3_s.jpg create mode 100644 js/fancybox/demo/4_b.jpg create mode 100644 js/fancybox/demo/4_s.jpg create mode 100644 js/fancybox/demo/5_b.jpg create mode 100644 js/fancybox/demo/5_s.jpg create mode 100644 js/fancybox/demo/ajax.txt create mode 100644 js/fancybox/demo/iframe.html create mode 100644 js/fancybox/demo/index.html create mode 100644 js/fancybox/lib/jquery-1.10.1.min.js create mode 100644 js/fancybox/lib/jquery-1.9.0.min.js create mode 100644 js/fancybox/lib/jquery.mousewheel-3.0.6.pack.js create mode 100644 js/fancybox/source/blank.gif create mode 100644 js/fancybox/source/fancybox_loading.gif create mode 100644 js/fancybox/source/fancybox_loading@2x.gif create mode 100644 js/fancybox/source/fancybox_overlay.png create mode 100644 js/fancybox/source/fancybox_sprite.png create mode 100644 js/fancybox/source/fancybox_sprite@2x.png create mode 100644 js/fancybox/source/helpers/fancybox_buttons.png create mode 100644 js/fancybox/source/helpers/jquery.fancybox-buttons.css create mode 100644 js/fancybox/source/helpers/jquery.fancybox-buttons.js create mode 100644 js/fancybox/source/helpers/jquery.fancybox-media.js create mode 100644 js/fancybox/source/helpers/jquery.fancybox-thumbs.css create mode 100644 js/fancybox/source/helpers/jquery.fancybox-thumbs.js create mode 100644 js/fancybox/source/jquery.fancybox.css create mode 100755 js/fancybox/source/jquery.fancybox.js create mode 100755 js/fancybox/source/jquery.fancybox.pack.js create mode 100644 js/fancybox/sprite.psd diff --git a/index.html b/index.html index de61dde..1395b7a 100644 --- a/index.html +++ b/index.html @@ -18,8 +18,14 @@ text-align: center; border-bottom: 1px solid black; } + + img { + border: 0 none; + } + + ",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")}),pt("value",ht,r.attributes&&r.input),r.getElementsByTagName=ct(function(e){return e.appendChild(n.createComment("")),!e.getElementsByTagName("*").length}),r.getElementsByClassName=ct(function(e){return e.innerHTML="
",e.firstChild.className="i",2===e.getElementsByClassName("i").length}),r.getById=ct(function(e){return d.appendChild(e).id=b,!n.getElementsByName||!n.getElementsByName(b).length}),r.getById?(o.find.ID=function(e,t){if(typeof t.getElementById!==j&&h){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},o.filter.ID=function(e){var t=e.replace(rt,it);return function(e){return e.getAttribute("id")===t}}):(delete o.find.ID,o.filter.ID=function(e){var t=e.replace(rt,it);return function(e){var n=typeof e.getAttributeNode!==j&&e.getAttributeNode("id");return n&&n.value===t}}),o.find.TAG=r.getElementsByTagName?function(e,n){return typeof n.getElementsByTagName!==j?n.getElementsByTagName(e):t}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},o.find.CLASS=r.getElementsByClassName&&function(e,n){return typeof n.getElementsByClassName!==j&&h?n.getElementsByClassName(e):t},m=[],g=[],(r.qsa=st(n.querySelectorAll))&&(ct(function(e){e.innerHTML="",e.querySelectorAll("[selected]").length||g.push("\\["+P+"*(?:value|"+B+")"),e.querySelectorAll(":checked").length||g.push(":checked")}),ct(function(e){var t=n.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("t",""),e.querySelectorAll("[t^='']").length&&g.push("[*^$]="+P+"*(?:''|\"\")"),e.querySelectorAll(":enabled").length||g.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),g.push(",.*:")})),(r.matchesSelector=st(y=d.webkitMatchesSelector||d.mozMatchesSelector||d.oMatchesSelector||d.msMatchesSelector))&&ct(function(e){r.disconnectedMatch=y.call(e,"div"),y.call(e,"[s!='']:x"),m.push("!=",I)}),g=g.length&&RegExp(g.join("|")),m=m.length&&RegExp(m.join("|")),v=st(d.contains)||d.compareDocumentPosition?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},r.sortDetached=ct(function(e){return 1&e.compareDocumentPosition(n.createElement("div"))}),A=d.compareDocumentPosition?function(e,t){if(e===t)return S=!0,0;var i=t.compareDocumentPosition&&e.compareDocumentPosition&&e.compareDocumentPosition(t);return i?1&i||!r.sortDetached&&t.compareDocumentPosition(e)===i?e===n||v(w,e)?-1:t===n||v(w,t)?1:c?F.call(c,e)-F.call(c,t):0:4&i?-1:1:e.compareDocumentPosition?-1:1}:function(e,t){var r,i=0,o=e.parentNode,a=t.parentNode,s=[e],l=[t];if(e===t)return S=!0,0;if(!o||!a)return e===n?-1:t===n?1:o?-1:a?1:c?F.call(c,e)-F.call(c,t):0;if(o===a)return gt(e,t);r=e;while(r=r.parentNode)s.unshift(r);r=t;while(r=r.parentNode)l.unshift(r);while(s[i]===l[i])i++;return i?gt(s[i],l[i]):s[i]===w?-1:l[i]===w?1:0},n):f},at.matches=function(e,t){return at(e,null,null,t)},at.matchesSelector=function(e,t){if((e.ownerDocument||e)!==f&&p(e),t=t.replace(Y,"='$1']"),!(!r.matchesSelector||!h||m&&m.test(t)||g&&g.test(t)))try{var n=y.call(e,t);if(n||r.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(i){}return at(t,f,null,[e]).length>0},at.contains=function(e,t){return(e.ownerDocument||e)!==f&&p(e),v(e,t)},at.attr=function(e,n){(e.ownerDocument||e)!==f&&p(e);var i=o.attrHandle[n.toLowerCase()],a=i&&L.call(o.attrHandle,n.toLowerCase())?i(e,n,!h):t;return a===t?r.attributes||!h?e.getAttribute(n):(a=e.getAttributeNode(n))&&a.specified?a.value:null:a},at.error=function(e){throw Error("Syntax error, unrecognized expression: "+e)},at.uniqueSort=function(e){var t,n=[],i=0,o=0;if(S=!r.detectDuplicates,c=!r.sortStable&&e.slice(0),e.sort(A),S){while(t=e[o++])t===e[o]&&(i=n.push(o));while(i--)e.splice(n[i],1)}return e},a=at.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=a(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r];r++)n+=a(t);return n},o=at.selectors={cacheLength:50,createPseudo:ut,match:Q,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(rt,it),e[3]=(e[4]||e[5]||"").replace(rt,it),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||at.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&at.error(e[0]),e},PSEUDO:function(e){var n,r=!e[5]&&e[2];return Q.CHILD.test(e[0])?null:(e[3]&&e[4]!==t?e[2]=e[4]:r&&J.test(r)&&(n=bt(r,!0))&&(n=r.indexOf(")",r.length-n)-r.length)&&(e[0]=e[0].slice(0,n),e[2]=r.slice(0,n)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(rt,it).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=N[e+" "];return t||(t=RegExp("(^|"+P+")"+e+"("+P+"|$)"))&&N(e,function(e){return t.test("string"==typeof e.className&&e.className||typeof e.getAttribute!==j&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=at.attr(r,e);return null==i?"!="===t:t?(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i+" ").indexOf(n)>-1:"|="===t?i===n||i.slice(0,n.length+1)===n+"-":!1):!0}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,l){var u,c,p,f,d,h,g=o!==a?"nextSibling":"previousSibling",m=t.parentNode,y=s&&t.nodeName.toLowerCase(),v=!l&&!s;if(m){if(o){while(g){p=t;while(p=p[g])if(s?p.nodeName.toLowerCase()===y:1===p.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?m.firstChild:m.lastChild],a&&v){c=m[b]||(m[b]={}),u=c[e]||[],d=u[0]===T&&u[1],f=u[0]===T&&u[2],p=d&&m.childNodes[d];while(p=++d&&p&&p[g]||(f=d=0)||h.pop())if(1===p.nodeType&&++f&&p===t){c[e]=[T,d,f];break}}else if(v&&(u=(t[b]||(t[b]={}))[e])&&u[0]===T)f=u[1];else while(p=++d&&p&&p[g]||(f=d=0)||h.pop())if((s?p.nodeName.toLowerCase()===y:1===p.nodeType)&&++f&&(v&&((p[b]||(p[b]={}))[e]=[T,f]),p===t))break;return f-=i,f===r||0===f%r&&f/r>=0}}},PSEUDO:function(e,t){var n,r=o.pseudos[e]||o.setFilters[e.toLowerCase()]||at.error("unsupported pseudo: "+e);return r[b]?r(t):r.length>1?(n=[e,e,"",t],o.setFilters.hasOwnProperty(e.toLowerCase())?ut(function(e,n){var i,o=r(e,t),a=o.length;while(a--)i=F.call(e,o[a]),e[i]=!(n[i]=o[a])}):function(e){return r(e,0,n)}):r}},pseudos:{not:ut(function(e){var t=[],n=[],r=l(e.replace(z,"$1"));return r[b]?ut(function(e,t,n,i){var o,a=r(e,null,i,[]),s=e.length;while(s--)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),!n.pop()}}),has:ut(function(e){return function(t){return at(e,t).length>0}}),contains:ut(function(e){return function(t){return(t.textContent||t.innerText||a(t)).indexOf(e)>-1}}),lang:ut(function(e){return G.test(e||"")||at.error("unsupported lang: "+e),e=e.replace(rt,it).toLowerCase(),function(t){var n;do if(n=h?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===d},focus:function(e){return e===f.activeElement&&(!f.hasFocus||f.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeName>"@"||3===e.nodeType||4===e.nodeType)return!1;return!0},parent:function(e){return!o.pseudos.empty(e)},header:function(e){return tt.test(e.nodeName)},input:function(e){return et.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||t.toLowerCase()===e.type)},first:vt(function(){return[0]}),last:vt(function(e,t){return[t-1]}),eq:vt(function(e,t,n){return[0>n?n+t:n]}),even:vt(function(e,t){var n=0;for(;t>n;n+=2)e.push(n);return e}),odd:vt(function(e,t){var n=1;for(;t>n;n+=2)e.push(n);return e}),lt:vt(function(e,t,n){var r=0>n?n+t:n;for(;--r>=0;)e.push(r);return e}),gt:vt(function(e,t,n){var r=0>n?n+t:n;for(;t>++r;)e.push(r);return e})}};for(n in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})o.pseudos[n]=mt(n);for(n in{submit:!0,reset:!0})o.pseudos[n]=yt(n);function bt(e,t){var n,r,i,a,s,l,u,c=k[e+" "];if(c)return t?0:c.slice(0);s=e,l=[],u=o.preFilter;while(s){(!n||(r=X.exec(s)))&&(r&&(s=s.slice(r[0].length)||s),l.push(i=[])),n=!1,(r=U.exec(s))&&(n=r.shift(),i.push({value:n,type:r[0].replace(z," ")}),s=s.slice(n.length));for(a in o.filter)!(r=Q[a].exec(s))||u[a]&&!(r=u[a](r))||(n=r.shift(),i.push({value:n,type:a,matches:r}),s=s.slice(n.length));if(!n)break}return t?s.length:s?at.error(e):k(e,l).slice(0)}function xt(e){var t=0,n=e.length,r="";for(;n>t;t++)r+=e[t].value;return r}function wt(e,t,n){var r=t.dir,o=n&&"parentNode"===r,a=C++;return t.first?function(t,n,i){while(t=t[r])if(1===t.nodeType||o)return e(t,n,i)}:function(t,n,s){var l,u,c,p=T+" "+a;if(s){while(t=t[r])if((1===t.nodeType||o)&&e(t,n,s))return!0}else while(t=t[r])if(1===t.nodeType||o)if(c=t[b]||(t[b]={}),(u=c[r])&&u[0]===p){if((l=u[1])===!0||l===i)return l===!0}else if(u=c[r]=[p],u[1]=e(t,n,s)||i,u[1]===!0)return!0}}function Tt(e){return e.length>1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function Ct(e,t,n,r,i){var o,a=[],s=0,l=e.length,u=null!=t;for(;l>s;s++)(o=e[s])&&(!n||n(o,r,i))&&(a.push(o),u&&t.push(s));return a}function Nt(e,t,n,r,i,o){return r&&!r[b]&&(r=Nt(r)),i&&!i[b]&&(i=Nt(i,o)),ut(function(o,a,s,l){var u,c,p,f=[],d=[],h=a.length,g=o||St(t||"*",s.nodeType?[s]:s,[]),m=!e||!o&&t?g:Ct(g,f,e,s,l),y=n?i||(o?e:h||r)?[]:a:m;if(n&&n(m,y,s,l),r){u=Ct(y,d),r(u,[],s,l),c=u.length;while(c--)(p=u[c])&&(y[d[c]]=!(m[d[c]]=p))}if(o){if(i||e){if(i){u=[],c=y.length;while(c--)(p=y[c])&&u.push(m[c]=p);i(null,y=[],u,l)}c=y.length;while(c--)(p=y[c])&&(u=i?F.call(o,p):f[c])>-1&&(o[u]=!(a[u]=p))}}else y=Ct(y===a?y.splice(h,y.length):y),i?i(null,a,y,l):M.apply(a,y)})}function kt(e){var t,n,r,i=e.length,a=o.relative[e[0].type],s=a||o.relative[" "],l=a?1:0,c=wt(function(e){return e===t},s,!0),p=wt(function(e){return F.call(t,e)>-1},s,!0),f=[function(e,n,r){return!a&&(r||n!==u)||((t=n).nodeType?c(e,n,r):p(e,n,r))}];for(;i>l;l++)if(n=o.relative[e[l].type])f=[wt(Tt(f),n)];else{if(n=o.filter[e[l].type].apply(null,e[l].matches),n[b]){for(r=++l;i>r;r++)if(o.relative[e[r].type])break;return Nt(l>1&&Tt(f),l>1&&xt(e.slice(0,l-1).concat({value:" "===e[l-2].type?"*":""})).replace(z,"$1"),n,r>l&&kt(e.slice(l,r)),i>r&&kt(e=e.slice(r)),i>r&&xt(e))}f.push(n)}return Tt(f)}function Et(e,t){var n=0,r=t.length>0,a=e.length>0,s=function(s,l,c,p,d){var h,g,m,y=[],v=0,b="0",x=s&&[],w=null!=d,C=u,N=s||a&&o.find.TAG("*",d&&l.parentNode||l),k=T+=null==C?1:Math.random()||.1;for(w&&(u=l!==f&&l,i=n);null!=(h=N[b]);b++){if(a&&h){g=0;while(m=e[g++])if(m(h,l,c)){p.push(h);break}w&&(T=k,i=++n)}r&&((h=!m&&h)&&v--,s&&x.push(h))}if(v+=b,r&&b!==v){g=0;while(m=t[g++])m(x,y,l,c);if(s){if(v>0)while(b--)x[b]||y[b]||(y[b]=q.call(p));y=Ct(y)}M.apply(p,y),w&&!s&&y.length>0&&v+t.length>1&&at.uniqueSort(p)}return w&&(T=k,u=C),x};return r?ut(s):s}l=at.compile=function(e,t){var n,r=[],i=[],o=E[e+" "];if(!o){t||(t=bt(e)),n=t.length;while(n--)o=kt(t[n]),o[b]?r.push(o):i.push(o);o=E(e,Et(i,r))}return o};function St(e,t,n){var r=0,i=t.length;for(;i>r;r++)at(e,t[r],n);return n}function At(e,t,n,i){var a,s,u,c,p,f=bt(e);if(!i&&1===f.length){if(s=f[0]=f[0].slice(0),s.length>2&&"ID"===(u=s[0]).type&&r.getById&&9===t.nodeType&&h&&o.relative[s[1].type]){if(t=(o.find.ID(u.matches[0].replace(rt,it),t)||[])[0],!t)return n;e=e.slice(s.shift().value.length)}a=Q.needsContext.test(e)?0:s.length;while(a--){if(u=s[a],o.relative[c=u.type])break;if((p=o.find[c])&&(i=p(u.matches[0].replace(rt,it),V.test(s[0].type)&&t.parentNode||t))){if(s.splice(a,1),e=i.length&&xt(s),!e)return M.apply(n,i),n;break}}}return l(e,f)(i,t,!h,n,V.test(e)),n}o.pseudos.nth=o.pseudos.eq;function jt(){}jt.prototype=o.filters=o.pseudos,o.setFilters=new jt,r.sortStable=b.split("").sort(A).join("")===b,p(),[0,0].sort(A),r.detectDuplicates=S,x.find=at,x.expr=at.selectors,x.expr[":"]=x.expr.pseudos,x.unique=at.uniqueSort,x.text=at.getText,x.isXMLDoc=at.isXML,x.contains=at.contains}(e);var O={};function F(e){var t=O[e]={};return x.each(e.match(T)||[],function(e,n){t[n]=!0}),t}x.Callbacks=function(e){e="string"==typeof e?O[e]||F(e):x.extend({},e);var n,r,i,o,a,s,l=[],u=!e.once&&[],c=function(t){for(r=e.memory&&t,i=!0,a=s||0,s=0,o=l.length,n=!0;l&&o>a;a++)if(l[a].apply(t[0],t[1])===!1&&e.stopOnFalse){r=!1;break}n=!1,l&&(u?u.length&&c(u.shift()):r?l=[]:p.disable())},p={add:function(){if(l){var t=l.length;(function i(t){x.each(t,function(t,n){var r=x.type(n);"function"===r?e.unique&&p.has(n)||l.push(n):n&&n.length&&"string"!==r&&i(n)})})(arguments),n?o=l.length:r&&(s=t,c(r))}return this},remove:function(){return l&&x.each(arguments,function(e,t){var r;while((r=x.inArray(t,l,r))>-1)l.splice(r,1),n&&(o>=r&&o--,a>=r&&a--)}),this},has:function(e){return e?x.inArray(e,l)>-1:!(!l||!l.length)},empty:function(){return l=[],o=0,this},disable:function(){return l=u=r=t,this},disabled:function(){return!l},lock:function(){return u=t,r||p.disable(),this},locked:function(){return!u},fireWith:function(e,t){return t=t||[],t=[e,t.slice?t.slice():t],!l||i&&!u||(n?u.push(t):c(t)),this},fire:function(){return p.fireWith(this,arguments),this},fired:function(){return!!i}};return p},x.extend({Deferred:function(e){var t=[["resolve","done",x.Callbacks("once memory"),"resolved"],["reject","fail",x.Callbacks("once memory"),"rejected"],["notify","progress",x.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return x.Deferred(function(n){x.each(t,function(t,o){var a=o[0],s=x.isFunction(e[t])&&e[t];i[o[1]](function(){var e=s&&s.apply(this,arguments);e&&x.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[a+"With"](this===r?n.promise():this,s?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?x.extend(e,r):r}},i={};return r.pipe=r.then,x.each(t,function(e,o){var a=o[2],s=o[3];r[o[1]]=a.add,s&&a.add(function(){n=s},t[1^e][2].disable,t[2][2].lock),i[o[0]]=function(){return i[o[0]+"With"](this===i?r:this,arguments),this},i[o[0]+"With"]=a.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=g.call(arguments),r=n.length,i=1!==r||e&&x.isFunction(e.promise)?r:0,o=1===i?e:x.Deferred(),a=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?g.call(arguments):r,n===s?o.notifyWith(t,n):--i||o.resolveWith(t,n)}},s,l,u;if(r>1)for(s=Array(r),l=Array(r),u=Array(r);r>t;t++)n[t]&&x.isFunction(n[t].promise)?n[t].promise().done(a(t,u,n)).fail(o.reject).progress(a(t,l,s)):--i;return i||o.resolveWith(u,n),o.promise()}}),x.support=function(t){var n,r,o,s,l,u,c,p,f,d=a.createElement("div");if(d.setAttribute("className","t"),d.innerHTML="
a",n=d.getElementsByTagName("*")||[],r=d.getElementsByTagName("a")[0],!r||!r.style||!n.length)return t;s=a.createElement("select"),u=s.appendChild(a.createElement("option")),o=d.getElementsByTagName("input")[0],r.style.cssText="top:1px;float:left;opacity:.5",t.getSetAttribute="t"!==d.className,t.leadingWhitespace=3===d.firstChild.nodeType,t.tbody=!d.getElementsByTagName("tbody").length,t.htmlSerialize=!!d.getElementsByTagName("link").length,t.style=/top/.test(r.getAttribute("style")),t.hrefNormalized="/a"===r.getAttribute("href"),t.opacity=/^0.5/.test(r.style.opacity),t.cssFloat=!!r.style.cssFloat,t.checkOn=!!o.value,t.optSelected=u.selected,t.enctype=!!a.createElement("form").enctype,t.html5Clone="<:nav>"!==a.createElement("nav").cloneNode(!0).outerHTML,t.inlineBlockNeedsLayout=!1,t.shrinkWrapBlocks=!1,t.pixelPosition=!1,t.deleteExpando=!0,t.noCloneEvent=!0,t.reliableMarginRight=!0,t.boxSizingReliable=!0,o.checked=!0,t.noCloneChecked=o.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!u.disabled;try{delete d.test}catch(h){t.deleteExpando=!1}o=a.createElement("input"),o.setAttribute("value",""),t.input=""===o.getAttribute("value"),o.value="t",o.setAttribute("type","radio"),t.radioValue="t"===o.value,o.setAttribute("checked","t"),o.setAttribute("name","t"),l=a.createDocumentFragment(),l.appendChild(o),t.appendChecked=o.checked,t.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,d.attachEvent&&(d.attachEvent("onclick",function(){t.noCloneEvent=!1}),d.cloneNode(!0).click());for(f in{submit:!0,change:!0,focusin:!0})d.setAttribute(c="on"+f,"t"),t[f+"Bubbles"]=c in e||d.attributes[c].expando===!1;d.style.backgroundClip="content-box",d.cloneNode(!0).style.backgroundClip="",t.clearCloneStyle="content-box"===d.style.backgroundClip;for(f in x(t))break;return t.ownLast="0"!==f,x(function(){var n,r,o,s="padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",l=a.getElementsByTagName("body")[0];l&&(n=a.createElement("div"),n.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",l.appendChild(n).appendChild(d),d.innerHTML="
t
",o=d.getElementsByTagName("td"),o[0].style.cssText="padding:0;margin:0;border:0;display:none",p=0===o[0].offsetHeight,o[0].style.display="",o[1].style.display="none",t.reliableHiddenOffsets=p&&0===o[0].offsetHeight,d.innerHTML="",d.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",x.swap(l,null!=l.style.zoom?{zoom:1}:{},function(){t.boxSizing=4===d.offsetWidth}),e.getComputedStyle&&(t.pixelPosition="1%"!==(e.getComputedStyle(d,null)||{}).top,t.boxSizingReliable="4px"===(e.getComputedStyle(d,null)||{width:"4px"}).width,r=d.appendChild(a.createElement("div")),r.style.cssText=d.style.cssText=s,r.style.marginRight=r.style.width="0",d.style.width="1px",t.reliableMarginRight=!parseFloat((e.getComputedStyle(r,null)||{}).marginRight)),typeof d.style.zoom!==i&&(d.innerHTML="",d.style.cssText=s+"width:1px;padding:1px;display:inline;zoom:1",t.inlineBlockNeedsLayout=3===d.offsetWidth,d.style.display="block",d.innerHTML="
",d.firstChild.style.width="5px",t.shrinkWrapBlocks=3!==d.offsetWidth,t.inlineBlockNeedsLayout&&(l.style.zoom=1)),l.removeChild(n),n=d=o=r=null) +}),n=s=l=u=r=o=null,t}({});var B=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,P=/([A-Z])/g;function R(e,n,r,i){if(x.acceptData(e)){var o,a,s=x.expando,l=e.nodeType,u=l?x.cache:e,c=l?e[s]:e[s]&&s;if(c&&u[c]&&(i||u[c].data)||r!==t||"string"!=typeof n)return c||(c=l?e[s]=p.pop()||x.guid++:s),u[c]||(u[c]=l?{}:{toJSON:x.noop}),("object"==typeof n||"function"==typeof n)&&(i?u[c]=x.extend(u[c],n):u[c].data=x.extend(u[c].data,n)),a=u[c],i||(a.data||(a.data={}),a=a.data),r!==t&&(a[x.camelCase(n)]=r),"string"==typeof n?(o=a[n],null==o&&(o=a[x.camelCase(n)])):o=a,o}}function W(e,t,n){if(x.acceptData(e)){var r,i,o=e.nodeType,a=o?x.cache:e,s=o?e[x.expando]:x.expando;if(a[s]){if(t&&(r=n?a[s]:a[s].data)){x.isArray(t)?t=t.concat(x.map(t,x.camelCase)):t in r?t=[t]:(t=x.camelCase(t),t=t in r?[t]:t.split(" ")),i=t.length;while(i--)delete r[t[i]];if(n?!I(r):!x.isEmptyObject(r))return}(n||(delete a[s].data,I(a[s])))&&(o?x.cleanData([e],!0):x.support.deleteExpando||a!=a.window?delete a[s]:a[s]=null)}}}x.extend({cache:{},noData:{applet:!0,embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(e){return e=e.nodeType?x.cache[e[x.expando]]:e[x.expando],!!e&&!I(e)},data:function(e,t,n){return R(e,t,n)},removeData:function(e,t){return W(e,t)},_data:function(e,t,n){return R(e,t,n,!0)},_removeData:function(e,t){return W(e,t,!0)},acceptData:function(e){if(e.nodeType&&1!==e.nodeType&&9!==e.nodeType)return!1;var t=e.nodeName&&x.noData[e.nodeName.toLowerCase()];return!t||t!==!0&&e.getAttribute("classid")===t}}),x.fn.extend({data:function(e,n){var r,i,o=null,a=0,s=this[0];if(e===t){if(this.length&&(o=x.data(s),1===s.nodeType&&!x._data(s,"parsedAttrs"))){for(r=s.attributes;r.length>a;a++)i=r[a].name,0===i.indexOf("data-")&&(i=x.camelCase(i.slice(5)),$(s,i,o[i]));x._data(s,"parsedAttrs",!0)}return o}return"object"==typeof e?this.each(function(){x.data(this,e)}):arguments.length>1?this.each(function(){x.data(this,e,n)}):s?$(s,e,x.data(s,e)):null},removeData:function(e){return this.each(function(){x.removeData(this,e)})}});function $(e,n,r){if(r===t&&1===e.nodeType){var i="data-"+n.replace(P,"-$1").toLowerCase();if(r=e.getAttribute(i),"string"==typeof r){try{r="true"===r?!0:"false"===r?!1:"null"===r?null:+r+""===r?+r:B.test(r)?x.parseJSON(r):r}catch(o){}x.data(e,n,r)}else r=t}return r}function I(e){var t;for(t in e)if(("data"!==t||!x.isEmptyObject(e[t]))&&"toJSON"!==t)return!1;return!0}x.extend({queue:function(e,n,r){var i;return e?(n=(n||"fx")+"queue",i=x._data(e,n),r&&(!i||x.isArray(r)?i=x._data(e,n,x.makeArray(r)):i.push(r)),i||[]):t},dequeue:function(e,t){t=t||"fx";var n=x.queue(e,t),r=n.length,i=n.shift(),o=x._queueHooks(e,t),a=function(){x.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return x._data(e,n)||x._data(e,n,{empty:x.Callbacks("once memory").add(function(){x._removeData(e,t+"queue"),x._removeData(e,n)})})}}),x.fn.extend({queue:function(e,n){var r=2;return"string"!=typeof e&&(n=e,e="fx",r--),r>arguments.length?x.queue(this[0],e):n===t?this:this.each(function(){var t=x.queue(this,e,n);x._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&x.dequeue(this,e)})},dequeue:function(e){return this.each(function(){x.dequeue(this,e)})},delay:function(e,t){return e=x.fx?x.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,n){var r=setTimeout(t,e);n.stop=function(){clearTimeout(r)}})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,n){var r,i=1,o=x.Deferred(),a=this,s=this.length,l=function(){--i||o.resolveWith(a,[a])};"string"!=typeof e&&(n=e,e=t),e=e||"fx";while(s--)r=x._data(a[s],e+"queueHooks"),r&&r.empty&&(i++,r.empty.add(l));return l(),o.promise(n)}});var z,X,U=/[\t\r\n\f]/g,V=/\r/g,Y=/^(?:input|select|textarea|button|object)$/i,J=/^(?:a|area)$/i,G=/^(?:checked|selected)$/i,Q=x.support.getSetAttribute,K=x.support.input;x.fn.extend({attr:function(e,t){return x.access(this,x.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){x.removeAttr(this,e)})},prop:function(e,t){return x.access(this,x.prop,e,t,arguments.length>1)},removeProp:function(e){return e=x.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,o,a=0,s=this.length,l="string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).addClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):" ")){o=0;while(i=t[o++])0>r.indexOf(" "+i+" ")&&(r+=i+" ");n.className=x.trim(r)}return this},removeClass:function(e){var t,n,r,i,o,a=0,s=this.length,l=0===arguments.length||"string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).removeClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):"")){o=0;while(i=t[o++])while(r.indexOf(" "+i+" ")>=0)r=r.replace(" "+i+" "," ");n.className=e?x.trim(r):""}return this},toggleClass:function(e,t){var n=typeof e,r="boolean"==typeof t;return x.isFunction(e)?this.each(function(n){x(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if("string"===n){var o,a=0,s=x(this),l=t,u=e.match(T)||[];while(o=u[a++])l=r?l:!s.hasClass(o),s[l?"addClass":"removeClass"](o)}else(n===i||"boolean"===n)&&(this.className&&x._data(this,"__className__",this.className),this.className=this.className||e===!1?"":x._data(this,"__className__")||"")})},hasClass:function(e){var t=" "+e+" ",n=0,r=this.length;for(;r>n;n++)if(1===this[n].nodeType&&(" "+this[n].className+" ").replace(U," ").indexOf(t)>=0)return!0;return!1},val:function(e){var n,r,i,o=this[0];{if(arguments.length)return i=x.isFunction(e),this.each(function(n){var o;1===this.nodeType&&(o=i?e.call(this,n,x(this).val()):e,null==o?o="":"number"==typeof o?o+="":x.isArray(o)&&(o=x.map(o,function(e){return null==e?"":e+""})),r=x.valHooks[this.type]||x.valHooks[this.nodeName.toLowerCase()],r&&"set"in r&&r.set(this,o,"value")!==t||(this.value=o))});if(o)return r=x.valHooks[o.type]||x.valHooks[o.nodeName.toLowerCase()],r&&"get"in r&&(n=r.get(o,"value"))!==t?n:(n=o.value,"string"==typeof n?n.replace(V,""):null==n?"":n)}}}),x.extend({valHooks:{option:{get:function(e){var t=x.find.attr(e,"value");return null!=t?t:e.text}},select:{get:function(e){var t,n,r=e.options,i=e.selectedIndex,o="select-one"===e.type||0>i,a=o?null:[],s=o?i+1:r.length,l=0>i?s:o?i:0;for(;s>l;l++)if(n=r[l],!(!n.selected&&l!==i||(x.support.optDisabled?n.disabled:null!==n.getAttribute("disabled"))||n.parentNode.disabled&&x.nodeName(n.parentNode,"optgroup"))){if(t=x(n).val(),o)return t;a.push(t)}return a},set:function(e,t){var n,r,i=e.options,o=x.makeArray(t),a=i.length;while(a--)r=i[a],(r.selected=x.inArray(x(r).val(),o)>=0)&&(n=!0);return n||(e.selectedIndex=-1),o}}},attr:function(e,n,r){var o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return typeof e.getAttribute===i?x.prop(e,n,r):(1===s&&x.isXMLDoc(e)||(n=n.toLowerCase(),o=x.attrHooks[n]||(x.expr.match.bool.test(n)?X:z)),r===t?o&&"get"in o&&null!==(a=o.get(e,n))?a:(a=x.find.attr(e,n),null==a?t:a):null!==r?o&&"set"in o&&(a=o.set(e,r,n))!==t?a:(e.setAttribute(n,r+""),r):(x.removeAttr(e,n),t))},removeAttr:function(e,t){var n,r,i=0,o=t&&t.match(T);if(o&&1===e.nodeType)while(n=o[i++])r=x.propFix[n]||n,x.expr.match.bool.test(n)?K&&Q||!G.test(n)?e[r]=!1:e[x.camelCase("default-"+n)]=e[r]=!1:x.attr(e,n,""),e.removeAttribute(Q?n:r)},attrHooks:{type:{set:function(e,t){if(!x.support.radioValue&&"radio"===t&&x.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},propFix:{"for":"htmlFor","class":"className"},prop:function(e,n,r){var i,o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return a=1!==s||!x.isXMLDoc(e),a&&(n=x.propFix[n]||n,o=x.propHooks[n]),r!==t?o&&"set"in o&&(i=o.set(e,r,n))!==t?i:e[n]=r:o&&"get"in o&&null!==(i=o.get(e,n))?i:e[n]},propHooks:{tabIndex:{get:function(e){var t=x.find.attr(e,"tabindex");return t?parseInt(t,10):Y.test(e.nodeName)||J.test(e.nodeName)&&e.href?0:-1}}}}),X={set:function(e,t,n){return t===!1?x.removeAttr(e,n):K&&Q||!G.test(n)?e.setAttribute(!Q&&x.propFix[n]||n,n):e[x.camelCase("default-"+n)]=e[n]=!0,n}},x.each(x.expr.match.bool.source.match(/\w+/g),function(e,n){var r=x.expr.attrHandle[n]||x.find.attr;x.expr.attrHandle[n]=K&&Q||!G.test(n)?function(e,n,i){var o=x.expr.attrHandle[n],a=i?t:(x.expr.attrHandle[n]=t)!=r(e,n,i)?n.toLowerCase():null;return x.expr.attrHandle[n]=o,a}:function(e,n,r){return r?t:e[x.camelCase("default-"+n)]?n.toLowerCase():null}}),K&&Q||(x.attrHooks.value={set:function(e,n,r){return x.nodeName(e,"input")?(e.defaultValue=n,t):z&&z.set(e,n,r)}}),Q||(z={set:function(e,n,r){var i=e.getAttributeNode(r);return i||e.setAttributeNode(i=e.ownerDocument.createAttribute(r)),i.value=n+="","value"===r||n===e.getAttribute(r)?n:t}},x.expr.attrHandle.id=x.expr.attrHandle.name=x.expr.attrHandle.coords=function(e,n,r){var i;return r?t:(i=e.getAttributeNode(n))&&""!==i.value?i.value:null},x.valHooks.button={get:function(e,n){var r=e.getAttributeNode(n);return r&&r.specified?r.value:t},set:z.set},x.attrHooks.contenteditable={set:function(e,t,n){z.set(e,""===t?!1:t,n)}},x.each(["width","height"],function(e,n){x.attrHooks[n]={set:function(e,r){return""===r?(e.setAttribute(n,"auto"),r):t}}})),x.support.hrefNormalized||x.each(["href","src"],function(e,t){x.propHooks[t]={get:function(e){return e.getAttribute(t,4)}}}),x.support.style||(x.attrHooks.style={get:function(e){return e.style.cssText||t},set:function(e,t){return e.style.cssText=t+""}}),x.support.optSelected||(x.propHooks.selected={get:function(e){var t=e.parentNode;return t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex),null}}),x.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){x.propFix[this.toLowerCase()]=this}),x.support.enctype||(x.propFix.enctype="encoding"),x.each(["radio","checkbox"],function(){x.valHooks[this]={set:function(e,n){return x.isArray(n)?e.checked=x.inArray(x(e).val(),n)>=0:t}},x.support.checkOn||(x.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var Z=/^(?:input|select|textarea)$/i,et=/^key/,tt=/^(?:mouse|contextmenu)|click/,nt=/^(?:focusinfocus|focusoutblur)$/,rt=/^([^.]*)(?:\.(.+)|)$/;function it(){return!0}function ot(){return!1}function at(){try{return a.activeElement}catch(e){}}x.event={global:{},add:function(e,n,r,o,a){var s,l,u,c,p,f,d,h,g,m,y,v=x._data(e);if(v){r.handler&&(c=r,r=c.handler,a=c.selector),r.guid||(r.guid=x.guid++),(l=v.events)||(l=v.events={}),(f=v.handle)||(f=v.handle=function(e){return typeof x===i||e&&x.event.triggered===e.type?t:x.event.dispatch.apply(f.elem,arguments)},f.elem=e),n=(n||"").match(T)||[""],u=n.length;while(u--)s=rt.exec(n[u])||[],g=y=s[1],m=(s[2]||"").split(".").sort(),g&&(p=x.event.special[g]||{},g=(a?p.delegateType:p.bindType)||g,p=x.event.special[g]||{},d=x.extend({type:g,origType:y,data:o,handler:r,guid:r.guid,selector:a,needsContext:a&&x.expr.match.needsContext.test(a),namespace:m.join(".")},c),(h=l[g])||(h=l[g]=[],h.delegateCount=0,p.setup&&p.setup.call(e,o,m,f)!==!1||(e.addEventListener?e.addEventListener(g,f,!1):e.attachEvent&&e.attachEvent("on"+g,f))),p.add&&(p.add.call(e,d),d.handler.guid||(d.handler.guid=r.guid)),a?h.splice(h.delegateCount++,0,d):h.push(d),x.event.global[g]=!0);e=null}},remove:function(e,t,n,r,i){var o,a,s,l,u,c,p,f,d,h,g,m=x.hasData(e)&&x._data(e);if(m&&(c=m.events)){t=(t||"").match(T)||[""],u=t.length;while(u--)if(s=rt.exec(t[u])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d){p=x.event.special[d]||{},d=(r?p.delegateType:p.bindType)||d,f=c[d]||[],s=s[2]&&RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),l=o=f.length;while(o--)a=f[o],!i&&g!==a.origType||n&&n.guid!==a.guid||s&&!s.test(a.namespace)||r&&r!==a.selector&&("**"!==r||!a.selector)||(f.splice(o,1),a.selector&&f.delegateCount--,p.remove&&p.remove.call(e,a));l&&!f.length&&(p.teardown&&p.teardown.call(e,h,m.handle)!==!1||x.removeEvent(e,d,m.handle),delete c[d])}else for(d in c)x.event.remove(e,d+t[u],n,r,!0);x.isEmptyObject(c)&&(delete m.handle,x._removeData(e,"events"))}},trigger:function(n,r,i,o){var s,l,u,c,p,f,d,h=[i||a],g=v.call(n,"type")?n.type:n,m=v.call(n,"namespace")?n.namespace.split("."):[];if(u=f=i=i||a,3!==i.nodeType&&8!==i.nodeType&&!nt.test(g+x.event.triggered)&&(g.indexOf(".")>=0&&(m=g.split("."),g=m.shift(),m.sort()),l=0>g.indexOf(":")&&"on"+g,n=n[x.expando]?n:new x.Event(g,"object"==typeof n&&n),n.isTrigger=o?2:3,n.namespace=m.join("."),n.namespace_re=n.namespace?RegExp("(^|\\.)"+m.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,n.result=t,n.target||(n.target=i),r=null==r?[n]:x.makeArray(r,[n]),p=x.event.special[g]||{},o||!p.trigger||p.trigger.apply(i,r)!==!1)){if(!o&&!p.noBubble&&!x.isWindow(i)){for(c=p.delegateType||g,nt.test(c+g)||(u=u.parentNode);u;u=u.parentNode)h.push(u),f=u;f===(i.ownerDocument||a)&&h.push(f.defaultView||f.parentWindow||e)}d=0;while((u=h[d++])&&!n.isPropagationStopped())n.type=d>1?c:p.bindType||g,s=(x._data(u,"events")||{})[n.type]&&x._data(u,"handle"),s&&s.apply(u,r),s=l&&u[l],s&&x.acceptData(u)&&s.apply&&s.apply(u,r)===!1&&n.preventDefault();if(n.type=g,!o&&!n.isDefaultPrevented()&&(!p._default||p._default.apply(h.pop(),r)===!1)&&x.acceptData(i)&&l&&i[g]&&!x.isWindow(i)){f=i[l],f&&(i[l]=null),x.event.triggered=g;try{i[g]()}catch(y){}x.event.triggered=t,f&&(i[l]=f)}return n.result}},dispatch:function(e){e=x.event.fix(e);var n,r,i,o,a,s=[],l=g.call(arguments),u=(x._data(this,"events")||{})[e.type]||[],c=x.event.special[e.type]||{};if(l[0]=e,e.delegateTarget=this,!c.preDispatch||c.preDispatch.call(this,e)!==!1){s=x.event.handlers.call(this,e,u),n=0;while((o=s[n++])&&!e.isPropagationStopped()){e.currentTarget=o.elem,a=0;while((i=o.handlers[a++])&&!e.isImmediatePropagationStopped())(!e.namespace_re||e.namespace_re.test(i.namespace))&&(e.handleObj=i,e.data=i.data,r=((x.event.special[i.origType]||{}).handle||i.handler).apply(o.elem,l),r!==t&&(e.result=r)===!1&&(e.preventDefault(),e.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,e),e.result}},handlers:function(e,n){var r,i,o,a,s=[],l=n.delegateCount,u=e.target;if(l&&u.nodeType&&(!e.button||"click"!==e.type))for(;u!=this;u=u.parentNode||this)if(1===u.nodeType&&(u.disabled!==!0||"click"!==e.type)){for(o=[],a=0;l>a;a++)i=n[a],r=i.selector+" ",o[r]===t&&(o[r]=i.needsContext?x(r,this).index(u)>=0:x.find(r,this,null,[u]).length),o[r]&&o.push(i);o.length&&s.push({elem:u,handlers:o})}return n.length>l&&s.push({elem:this,handlers:n.slice(l)}),s},fix:function(e){if(e[x.expando])return e;var t,n,r,i=e.type,o=e,s=this.fixHooks[i];s||(this.fixHooks[i]=s=tt.test(i)?this.mouseHooks:et.test(i)?this.keyHooks:{}),r=s.props?this.props.concat(s.props):this.props,e=new x.Event(o),t=r.length;while(t--)n=r[t],e[n]=o[n];return e.target||(e.target=o.srcElement||a),3===e.target.nodeType&&(e.target=e.target.parentNode),e.metaKey=!!e.metaKey,s.filter?s.filter(e,o):e},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(e,t){return null==e.which&&(e.which=null!=t.charCode?t.charCode:t.keyCode),e}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(e,n){var r,i,o,s=n.button,l=n.fromElement;return null==e.pageX&&null!=n.clientX&&(i=e.target.ownerDocument||a,o=i.documentElement,r=i.body,e.pageX=n.clientX+(o&&o.scrollLeft||r&&r.scrollLeft||0)-(o&&o.clientLeft||r&&r.clientLeft||0),e.pageY=n.clientY+(o&&o.scrollTop||r&&r.scrollTop||0)-(o&&o.clientTop||r&&r.clientTop||0)),!e.relatedTarget&&l&&(e.relatedTarget=l===e.target?n.toElement:l),e.which||s===t||(e.which=1&s?1:2&s?3:4&s?2:0),e}},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==at()&&this.focus)try{return this.focus(),!1}catch(e){}},delegateType:"focusin"},blur:{trigger:function(){return this===at()&&this.blur?(this.blur(),!1):t},delegateType:"focusout"},click:{trigger:function(){return x.nodeName(this,"input")&&"checkbox"===this.type&&this.click?(this.click(),!1):t},_default:function(e){return x.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){e.result!==t&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n,r){var i=x.extend(new x.Event,n,{type:e,isSimulated:!0,originalEvent:{}});r?x.event.trigger(i,null,t):x.event.dispatch.call(t,i),i.isDefaultPrevented()&&n.preventDefault()}},x.removeEvent=a.removeEventListener?function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n,!1)}:function(e,t,n){var r="on"+t;e.detachEvent&&(typeof e[r]===i&&(e[r]=null),e.detachEvent(r,n))},x.Event=function(e,n){return this instanceof x.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||e.returnValue===!1||e.getPreventDefault&&e.getPreventDefault()?it:ot):this.type=e,n&&x.extend(this,n),this.timeStamp=e&&e.timeStamp||x.now(),this[x.expando]=!0,t):new x.Event(e,n)},x.Event.prototype={isDefaultPrevented:ot,isPropagationStopped:ot,isImmediatePropagationStopped:ot,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=it,e&&(e.preventDefault?e.preventDefault():e.returnValue=!1)},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=it,e&&(e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=it,this.stopPropagation()}},x.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(e,t){x.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return(!i||i!==r&&!x.contains(r,i))&&(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),x.support.submitBubbles||(x.event.special.submit={setup:function(){return x.nodeName(this,"form")?!1:(x.event.add(this,"click._submit keypress._submit",function(e){var n=e.target,r=x.nodeName(n,"input")||x.nodeName(n,"button")?n.form:t;r&&!x._data(r,"submitBubbles")&&(x.event.add(r,"submit._submit",function(e){e._submit_bubble=!0}),x._data(r,"submitBubbles",!0))}),t)},postDispatch:function(e){e._submit_bubble&&(delete e._submit_bubble,this.parentNode&&!e.isTrigger&&x.event.simulate("submit",this.parentNode,e,!0))},teardown:function(){return x.nodeName(this,"form")?!1:(x.event.remove(this,"._submit"),t)}}),x.support.changeBubbles||(x.event.special.change={setup:function(){return Z.test(this.nodeName)?(("checkbox"===this.type||"radio"===this.type)&&(x.event.add(this,"propertychange._change",function(e){"checked"===e.originalEvent.propertyName&&(this._just_changed=!0)}),x.event.add(this,"click._change",function(e){this._just_changed&&!e.isTrigger&&(this._just_changed=!1),x.event.simulate("change",this,e,!0)})),!1):(x.event.add(this,"beforeactivate._change",function(e){var t=e.target;Z.test(t.nodeName)&&!x._data(t,"changeBubbles")&&(x.event.add(t,"change._change",function(e){!this.parentNode||e.isSimulated||e.isTrigger||x.event.simulate("change",this.parentNode,e,!0)}),x._data(t,"changeBubbles",!0))}),t)},handle:function(e){var n=e.target;return this!==n||e.isSimulated||e.isTrigger||"radio"!==n.type&&"checkbox"!==n.type?e.handleObj.handler.apply(this,arguments):t},teardown:function(){return x.event.remove(this,"._change"),!Z.test(this.nodeName)}}),x.support.focusinBubbles||x.each({focus:"focusin",blur:"focusout"},function(e,t){var n=0,r=function(e){x.event.simulate(t,e.target,x.event.fix(e),!0)};x.event.special[t]={setup:function(){0===n++&&a.addEventListener(e,r,!0)},teardown:function(){0===--n&&a.removeEventListener(e,r,!0)}}}),x.fn.extend({on:function(e,n,r,i,o){var a,s;if("object"==typeof e){"string"!=typeof n&&(r=r||n,n=t);for(a in e)this.on(a,n,r,e[a],o);return this}if(null==r&&null==i?(i=n,r=n=t):null==i&&("string"==typeof n?(i=r,r=t):(i=r,r=n,n=t)),i===!1)i=ot;else if(!i)return this;return 1===o&&(s=i,i=function(e){return x().off(e),s.apply(this,arguments)},i.guid=s.guid||(s.guid=x.guid++)),this.each(function(){x.event.add(this,e,i,r,n)})},one:function(e,t,n,r){return this.on(e,t,n,r,1)},off:function(e,n,r){var i,o;if(e&&e.preventDefault&&e.handleObj)return i=e.handleObj,x(e.delegateTarget).off(i.namespace?i.origType+"."+i.namespace:i.origType,i.selector,i.handler),this;if("object"==typeof e){for(o in e)this.off(o,n,e[o]);return this}return(n===!1||"function"==typeof n)&&(r=n,n=t),r===!1&&(r=ot),this.each(function(){x.event.remove(this,e,r,n)})},trigger:function(e,t){return this.each(function(){x.event.trigger(e,t,this)})},triggerHandler:function(e,n){var r=this[0];return r?x.event.trigger(e,n,r,!0):t}});var st=/^.[^:#\[\.,]*$/,lt=/^(?:parents|prev(?:Until|All))/,ut=x.expr.match.needsContext,ct={children:!0,contents:!0,next:!0,prev:!0};x.fn.extend({find:function(e){var t,n=[],r=this,i=r.length;if("string"!=typeof e)return this.pushStack(x(e).filter(function(){for(t=0;i>t;t++)if(x.contains(r[t],this))return!0}));for(t=0;i>t;t++)x.find(e,r[t],n);return n=this.pushStack(i>1?x.unique(n):n),n.selector=this.selector?this.selector+" "+e:e,n},has:function(e){var t,n=x(e,this),r=n.length;return this.filter(function(){for(t=0;r>t;t++)if(x.contains(this,n[t]))return!0})},not:function(e){return this.pushStack(ft(this,e||[],!0))},filter:function(e){return this.pushStack(ft(this,e||[],!1))},is:function(e){return!!ft(this,"string"==typeof e&&ut.test(e)?x(e):e||[],!1).length},closest:function(e,t){var n,r=0,i=this.length,o=[],a=ut.test(e)||"string"!=typeof e?x(e,t||this.context):0;for(;i>r;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(11>n.nodeType&&(a?a.index(n)>-1:1===n.nodeType&&x.find.matchesSelector(n,e))){n=o.push(n);break}return this.pushStack(o.length>1?x.unique(o):o)},index:function(e){return e?"string"==typeof e?x.inArray(this[0],x(e)):x.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){var n="string"==typeof e?x(e,t):x.makeArray(e&&e.nodeType?[e]:e),r=x.merge(this.get(),n);return this.pushStack(x.unique(r))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}});function pt(e,t){do e=e[t];while(e&&1!==e.nodeType);return e}x.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return x.dir(e,"parentNode")},parentsUntil:function(e,t,n){return x.dir(e,"parentNode",n)},next:function(e){return pt(e,"nextSibling")},prev:function(e){return pt(e,"previousSibling")},nextAll:function(e){return x.dir(e,"nextSibling")},prevAll:function(e){return x.dir(e,"previousSibling")},nextUntil:function(e,t,n){return x.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return x.dir(e,"previousSibling",n)},siblings:function(e){return x.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return x.sibling(e.firstChild)},contents:function(e){return x.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:x.merge([],e.childNodes)}},function(e,t){x.fn[e]=function(n,r){var i=x.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=x.filter(r,i)),this.length>1&&(ct[e]||(i=x.unique(i)),lt.test(e)&&(i=i.reverse())),this.pushStack(i)}}),x.extend({filter:function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?x.find.matchesSelector(r,e)?[r]:[]:x.find.matches(e,x.grep(t,function(e){return 1===e.nodeType}))},dir:function(e,n,r){var i=[],o=e[n];while(o&&9!==o.nodeType&&(r===t||1!==o.nodeType||!x(o).is(r)))1===o.nodeType&&i.push(o),o=o[n];return i},sibling:function(e,t){var n=[];for(;e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n}});function ft(e,t,n){if(x.isFunction(t))return x.grep(e,function(e,r){return!!t.call(e,r,e)!==n});if(t.nodeType)return x.grep(e,function(e){return e===t!==n});if("string"==typeof t){if(st.test(t))return x.filter(t,e,n);t=x.filter(t,e)}return x.grep(e,function(e){return x.inArray(e,t)>=0!==n})}function dt(e){var t=ht.split("|"),n=e.createDocumentFragment();if(n.createElement)while(t.length)n.createElement(t.pop());return n}var ht="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",gt=/ jQuery\d+="(?:null|\d+)"/g,mt=RegExp("<(?:"+ht+")[\\s/>]","i"),yt=/^\s+/,vt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,bt=/<([\w:]+)/,xt=/\s*$/g,At={option:[1,""],legend:[1,"
","
"],area:[1,"",""],param:[1,"",""],thead:[1,"","
"],tr:[2,"","
"],col:[2,"","
"],td:[3,"","
"],_default:x.support.htmlSerialize?[0,"",""]:[1,"X
","
"]},jt=dt(a),Dt=jt.appendChild(a.createElement("div"));At.optgroup=At.option,At.tbody=At.tfoot=At.colgroup=At.caption=At.thead,At.th=At.td,x.fn.extend({text:function(e){return x.access(this,function(e){return e===t?x.text(this):this.empty().append((this[0]&&this[0].ownerDocument||a).createTextNode(e))},null,e,arguments.length)},append:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Lt(this,e);t.appendChild(e)}})},prepend:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Lt(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},remove:function(e,t){var n,r=e?x.filter(e,this):this,i=0;for(;null!=(n=r[i]);i++)t||1!==n.nodeType||x.cleanData(Ft(n)),n.parentNode&&(t&&x.contains(n.ownerDocument,n)&&_t(Ft(n,"script")),n.parentNode.removeChild(n));return this},empty:function(){var e,t=0;for(;null!=(e=this[t]);t++){1===e.nodeType&&x.cleanData(Ft(e,!1));while(e.firstChild)e.removeChild(e.firstChild);e.options&&x.nodeName(e,"select")&&(e.options.length=0)}return this},clone:function(e,t){return e=null==e?!1:e,t=null==t?e:t,this.map(function(){return x.clone(this,e,t)})},html:function(e){return x.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return 1===n.nodeType?n.innerHTML.replace(gt,""):t;if(!("string"!=typeof e||Tt.test(e)||!x.support.htmlSerialize&&mt.test(e)||!x.support.leadingWhitespace&&yt.test(e)||At[(bt.exec(e)||["",""])[1].toLowerCase()])){e=e.replace(vt,"<$1>");try{for(;i>r;r++)n=this[r]||{},1===n.nodeType&&(x.cleanData(Ft(n,!1)),n.innerHTML=e);n=0}catch(o){}}n&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=x.map(this,function(e){return[e.nextSibling,e.parentNode]}),t=0;return this.domManip(arguments,function(n){var r=e[t++],i=e[t++];i&&(r&&r.parentNode!==i&&(r=this.nextSibling),x(this).remove(),i.insertBefore(n,r))},!0),t?this:this.remove()},detach:function(e){return this.remove(e,!0)},domManip:function(e,t,n){e=d.apply([],e);var r,i,o,a,s,l,u=0,c=this.length,p=this,f=c-1,h=e[0],g=x.isFunction(h);if(g||!(1>=c||"string"!=typeof h||x.support.checkClone)&&Nt.test(h))return this.each(function(r){var i=p.eq(r);g&&(e[0]=h.call(this,r,i.html())),i.domManip(e,t,n)});if(c&&(l=x.buildFragment(e,this[0].ownerDocument,!1,!n&&this),r=l.firstChild,1===l.childNodes.length&&(l=r),r)){for(a=x.map(Ft(l,"script"),Ht),o=a.length;c>u;u++)i=l,u!==f&&(i=x.clone(i,!0,!0),o&&x.merge(a,Ft(i,"script"))),t.call(this[u],i,u);if(o)for(s=a[a.length-1].ownerDocument,x.map(a,qt),u=0;o>u;u++)i=a[u],kt.test(i.type||"")&&!x._data(i,"globalEval")&&x.contains(s,i)&&(i.src?x._evalUrl(i.src):x.globalEval((i.text||i.textContent||i.innerHTML||"").replace(St,"")));l=r=null}return this}});function Lt(e,t){return x.nodeName(e,"table")&&x.nodeName(1===t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function Ht(e){return e.type=(null!==x.find.attr(e,"type"))+"/"+e.type,e}function qt(e){var t=Et.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function _t(e,t){var n,r=0;for(;null!=(n=e[r]);r++)x._data(n,"globalEval",!t||x._data(t[r],"globalEval"))}function Mt(e,t){if(1===t.nodeType&&x.hasData(e)){var n,r,i,o=x._data(e),a=x._data(t,o),s=o.events;if(s){delete a.handle,a.events={};for(n in s)for(r=0,i=s[n].length;i>r;r++)x.event.add(t,n,s[n][r])}a.data&&(a.data=x.extend({},a.data))}}function Ot(e,t){var n,r,i;if(1===t.nodeType){if(n=t.nodeName.toLowerCase(),!x.support.noCloneEvent&&t[x.expando]){i=x._data(t);for(r in i.events)x.removeEvent(t,r,i.handle);t.removeAttribute(x.expando)}"script"===n&&t.text!==e.text?(Ht(t).text=e.text,qt(t)):"object"===n?(t.parentNode&&(t.outerHTML=e.outerHTML),x.support.html5Clone&&e.innerHTML&&!x.trim(t.innerHTML)&&(t.innerHTML=e.innerHTML)):"input"===n&&Ct.test(e.type)?(t.defaultChecked=t.checked=e.checked,t.value!==e.value&&(t.value=e.value)):"option"===n?t.defaultSelected=t.selected=e.defaultSelected:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}}x.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){x.fn[e]=function(e){var n,r=0,i=[],o=x(e),a=o.length-1;for(;a>=r;r++)n=r===a?this:this.clone(!0),x(o[r])[t](n),h.apply(i,n.get());return this.pushStack(i)}});function Ft(e,n){var r,o,a=0,s=typeof e.getElementsByTagName!==i?e.getElementsByTagName(n||"*"):typeof e.querySelectorAll!==i?e.querySelectorAll(n||"*"):t;if(!s)for(s=[],r=e.childNodes||e;null!=(o=r[a]);a++)!n||x.nodeName(o,n)?s.push(o):x.merge(s,Ft(o,n));return n===t||n&&x.nodeName(e,n)?x.merge([e],s):s}function Bt(e){Ct.test(e.type)&&(e.defaultChecked=e.checked)}x.extend({clone:function(e,t,n){var r,i,o,a,s,l=x.contains(e.ownerDocument,e);if(x.support.html5Clone||x.isXMLDoc(e)||!mt.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(Dt.innerHTML=e.outerHTML,Dt.removeChild(o=Dt.firstChild)),!(x.support.noCloneEvent&&x.support.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||x.isXMLDoc(e)))for(r=Ft(o),s=Ft(e),a=0;null!=(i=s[a]);++a)r[a]&&Ot(i,r[a]);if(t)if(n)for(s=s||Ft(e),r=r||Ft(o),a=0;null!=(i=s[a]);a++)Mt(i,r[a]);else Mt(e,o);return r=Ft(o,"script"),r.length>0&&_t(r,!l&&Ft(e,"script")),r=s=i=null,o},buildFragment:function(e,t,n,r){var i,o,a,s,l,u,c,p=e.length,f=dt(t),d=[],h=0;for(;p>h;h++)if(o=e[h],o||0===o)if("object"===x.type(o))x.merge(d,o.nodeType?[o]:o);else if(wt.test(o)){s=s||f.appendChild(t.createElement("div")),l=(bt.exec(o)||["",""])[1].toLowerCase(),c=At[l]||At._default,s.innerHTML=c[1]+o.replace(vt,"<$1>")+c[2],i=c[0];while(i--)s=s.lastChild;if(!x.support.leadingWhitespace&&yt.test(o)&&d.push(t.createTextNode(yt.exec(o)[0])),!x.support.tbody){o="table"!==l||xt.test(o)?""!==c[1]||xt.test(o)?0:s:s.firstChild,i=o&&o.childNodes.length;while(i--)x.nodeName(u=o.childNodes[i],"tbody")&&!u.childNodes.length&&o.removeChild(u)}x.merge(d,s.childNodes),s.textContent="";while(s.firstChild)s.removeChild(s.firstChild);s=f.lastChild}else d.push(t.createTextNode(o));s&&f.removeChild(s),x.support.appendChecked||x.grep(Ft(d,"input"),Bt),h=0;while(o=d[h++])if((!r||-1===x.inArray(o,r))&&(a=x.contains(o.ownerDocument,o),s=Ft(f.appendChild(o),"script"),a&&_t(s),n)){i=0;while(o=s[i++])kt.test(o.type||"")&&n.push(o)}return s=null,f},cleanData:function(e,t){var n,r,o,a,s=0,l=x.expando,u=x.cache,c=x.support.deleteExpando,f=x.event.special;for(;null!=(n=e[s]);s++)if((t||x.acceptData(n))&&(o=n[l],a=o&&u[o])){if(a.events)for(r in a.events)f[r]?x.event.remove(n,r):x.removeEvent(n,r,a.handle); +u[o]&&(delete u[o],c?delete n[l]:typeof n.removeAttribute!==i?n.removeAttribute(l):n[l]=null,p.push(o))}},_evalUrl:function(e){return x.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})}}),x.fn.extend({wrapAll:function(e){if(x.isFunction(e))return this.each(function(t){x(this).wrapAll(e.call(this,t))});if(this[0]){var t=x(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&1===e.firstChild.nodeType)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return x.isFunction(e)?this.each(function(t){x(this).wrapInner(e.call(this,t))}):this.each(function(){var t=x(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=x.isFunction(e);return this.each(function(n){x(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){x.nodeName(this,"body")||x(this).replaceWith(this.childNodes)}).end()}});var Pt,Rt,Wt,$t=/alpha\([^)]*\)/i,It=/opacity\s*=\s*([^)]*)/,zt=/^(top|right|bottom|left)$/,Xt=/^(none|table(?!-c[ea]).+)/,Ut=/^margin/,Vt=RegExp("^("+w+")(.*)$","i"),Yt=RegExp("^("+w+")(?!px)[a-z%]+$","i"),Jt=RegExp("^([+-])=("+w+")","i"),Gt={BODY:"block"},Qt={position:"absolute",visibility:"hidden",display:"block"},Kt={letterSpacing:0,fontWeight:400},Zt=["Top","Right","Bottom","Left"],en=["Webkit","O","Moz","ms"];function tn(e,t){if(t in e)return t;var n=t.charAt(0).toUpperCase()+t.slice(1),r=t,i=en.length;while(i--)if(t=en[i]+n,t in e)return t;return r}function nn(e,t){return e=t||e,"none"===x.css(e,"display")||!x.contains(e.ownerDocument,e)}function rn(e,t){var n,r,i,o=[],a=0,s=e.length;for(;s>a;a++)r=e[a],r.style&&(o[a]=x._data(r,"olddisplay"),n=r.style.display,t?(o[a]||"none"!==n||(r.style.display=""),""===r.style.display&&nn(r)&&(o[a]=x._data(r,"olddisplay",ln(r.nodeName)))):o[a]||(i=nn(r),(n&&"none"!==n||!i)&&x._data(r,"olddisplay",i?n:x.css(r,"display"))));for(a=0;s>a;a++)r=e[a],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?o[a]||"":"none"));return e}x.fn.extend({css:function(e,n){return x.access(this,function(e,n,r){var i,o,a={},s=0;if(x.isArray(n)){for(o=Rt(e),i=n.length;i>s;s++)a[n[s]]=x.css(e,n[s],!1,o);return a}return r!==t?x.style(e,n,r):x.css(e,n)},e,n,arguments.length>1)},show:function(){return rn(this,!0)},hide:function(){return rn(this)},toggle:function(e){var t="boolean"==typeof e;return this.each(function(){(t?e:nn(this))?x(this).show():x(this).hide()})}}),x.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Wt(e,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":x.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,a,s,l=x.camelCase(n),u=e.style;if(n=x.cssProps[l]||(x.cssProps[l]=tn(u,l)),s=x.cssHooks[n]||x.cssHooks[l],r===t)return s&&"get"in s&&(o=s.get(e,!1,i))!==t?o:u[n];if(a=typeof r,"string"===a&&(o=Jt.exec(r))&&(r=(o[1]+1)*o[2]+parseFloat(x.css(e,n)),a="number"),!(null==r||"number"===a&&isNaN(r)||("number"!==a||x.cssNumber[l]||(r+="px"),x.support.clearCloneStyle||""!==r||0!==n.indexOf("background")||(u[n]="inherit"),s&&"set"in s&&(r=s.set(e,r,i))===t)))try{u[n]=r}catch(c){}}},css:function(e,n,r,i){var o,a,s,l=x.camelCase(n);return n=x.cssProps[l]||(x.cssProps[l]=tn(e.style,l)),s=x.cssHooks[n]||x.cssHooks[l],s&&"get"in s&&(a=s.get(e,!0,r)),a===t&&(a=Wt(e,n,i)),"normal"===a&&n in Kt&&(a=Kt[n]),""===r||r?(o=parseFloat(a),r===!0||x.isNumeric(o)?o||0:a):a}}),e.getComputedStyle?(Rt=function(t){return e.getComputedStyle(t,null)},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s.getPropertyValue(n)||s[n]:t,u=e.style;return s&&(""!==l||x.contains(e.ownerDocument,e)||(l=x.style(e,n)),Yt.test(l)&&Ut.test(n)&&(i=u.width,o=u.minWidth,a=u.maxWidth,u.minWidth=u.maxWidth=u.width=l,l=s.width,u.width=i,u.minWidth=o,u.maxWidth=a)),l}):a.documentElement.currentStyle&&(Rt=function(e){return e.currentStyle},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s[n]:t,u=e.style;return null==l&&u&&u[n]&&(l=u[n]),Yt.test(l)&&!zt.test(n)&&(i=u.left,o=e.runtimeStyle,a=o&&o.left,a&&(o.left=e.currentStyle.left),u.left="fontSize"===n?"1em":l,l=u.pixelLeft+"px",u.left=i,a&&(o.left=a)),""===l?"auto":l});function on(e,t,n){var r=Vt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function an(e,t,n,r,i){var o=n===(r?"border":"content")?4:"width"===t?1:0,a=0;for(;4>o;o+=2)"margin"===n&&(a+=x.css(e,n+Zt[o],!0,i)),r?("content"===n&&(a-=x.css(e,"padding"+Zt[o],!0,i)),"margin"!==n&&(a-=x.css(e,"border"+Zt[o]+"Width",!0,i))):(a+=x.css(e,"padding"+Zt[o],!0,i),"padding"!==n&&(a+=x.css(e,"border"+Zt[o]+"Width",!0,i)));return a}function sn(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,o=Rt(e),a=x.support.boxSizing&&"border-box"===x.css(e,"boxSizing",!1,o);if(0>=i||null==i){if(i=Wt(e,t,o),(0>i||null==i)&&(i=e.style[t]),Yt.test(i))return i;r=a&&(x.support.boxSizingReliable||i===e.style[t]),i=parseFloat(i)||0}return i+an(e,t,n||(a?"border":"content"),r,o)+"px"}function ln(e){var t=a,n=Gt[e];return n||(n=un(e,t),"none"!==n&&n||(Pt=(Pt||x("', + error : '

The requested content cannot be loaded.
Please try again later.

', + closeBtn : '', + next : '', + prev : '' + }, + + // Properties for each animation type + // Opening fancyBox + openEffect : 'fade', // 'elastic', 'fade' or 'none' + openSpeed : 250, + openEasing : 'swing', + openOpacity : true, + openMethod : 'zoomIn', + + // Closing fancyBox + closeEffect : 'fade', // 'elastic', 'fade' or 'none' + closeSpeed : 250, + closeEasing : 'swing', + closeOpacity : true, + closeMethod : 'zoomOut', + + // Changing next gallery item + nextEffect : 'elastic', // 'elastic', 'fade' or 'none' + nextSpeed : 250, + nextEasing : 'swing', + nextMethod : 'changeIn', + + // Changing previous gallery item + prevEffect : 'elastic', // 'elastic', 'fade' or 'none' + prevSpeed : 250, + prevEasing : 'swing', + prevMethod : 'changeOut', + + // Enable default helpers + helpers : { + overlay : true, + title : true + }, + + // Callbacks + onCancel : $.noop, // If canceling + beforeLoad : $.noop, // Before loading + afterLoad : $.noop, // After loading + beforeShow : $.noop, // Before changing in current item + afterShow : $.noop, // After opening + beforeChange : $.noop, // Before changing gallery item + beforeClose : $.noop, // Before closing + afterClose : $.noop // After closing + }, + + //Current state + group : {}, // Selected group + opts : {}, // Group options + previous : null, // Previous element + coming : null, // Element being loaded + current : null, // Currently loaded element + isActive : false, // Is activated + isOpen : false, // Is currently open + isOpened : false, // Have been fully opened at least once + + wrap : null, + skin : null, + outer : null, + inner : null, + + player : { + timer : null, + isActive : false + }, + + // Loaders + ajaxLoad : null, + imgPreload : null, + + // Some collections + transitions : {}, + helpers : {}, + + /* + * Static methods + */ + + open: function (group, opts) { + if (!group) { + return; + } + + if (!$.isPlainObject(opts)) { + opts = {}; + } + + // Close if already active + if (false === F.close(true)) { + return; + } + + // Normalize group + if (!$.isArray(group)) { + group = isQuery(group) ? $(group).get() : [group]; + } + + // Recheck if the type of each element is `object` and set content type (image, ajax, etc) + $.each(group, function(i, element) { + var obj = {}, + href, + title, + content, + type, + rez, + hrefParts, + selector; + + if ($.type(element) === "object") { + // Check if is DOM element + if (element.nodeType) { + element = $(element); + } + + if (isQuery(element)) { + obj = { + href : element.data('fancybox-href') || element.attr('href'), + title : element.data('fancybox-title') || element.attr('title'), + isDom : true, + element : element + }; + + if ($.metadata) { + $.extend(true, obj, element.metadata()); + } + + } else { + obj = element; + } + } + + href = opts.href || obj.href || (isString(element) ? element : null); + title = opts.title !== undefined ? opts.title : obj.title || ''; + + content = opts.content || obj.content; + type = content ? 'html' : (opts.type || obj.type); + + if (!type && obj.isDom) { + type = element.data('fancybox-type'); + + if (!type) { + rez = element.prop('class').match(/fancybox\.(\w+)/); + type = rez ? rez[1] : null; + } + } + + if (isString(href)) { + // Try to guess the content type + if (!type) { + if (F.isImage(href)) { + type = 'image'; + + } else if (F.isSWF(href)) { + type = 'swf'; + + } else if (href.charAt(0) === '#') { + type = 'inline'; + + } else if (isString(element)) { + type = 'html'; + content = element; + } + } + + // Split url into two pieces with source url and content selector, e.g, + // "/mypage.html #my_id" will load "/mypage.html" and display element having id "my_id" + if (type === 'ajax') { + hrefParts = href.split(/\s+/, 2); + href = hrefParts.shift(); + selector = hrefParts.shift(); + } + } + + if (!content) { + if (type === 'inline') { + if (href) { + content = $( isString(href) ? href.replace(/.*(?=#[^\s]+$)/, '') : href ); //strip for ie7 + + } else if (obj.isDom) { + content = element; + } + + } else if (type === 'html') { + content = href; + + } else if (!type && !href && obj.isDom) { + type = 'inline'; + content = element; + } + } + + $.extend(obj, { + href : href, + type : type, + content : content, + title : title, + selector : selector + }); + + group[ i ] = obj; + }); + + // Extend the defaults + F.opts = $.extend(true, {}, F.defaults, opts); + + // All options are merged recursive except keys + if (opts.keys !== undefined) { + F.opts.keys = opts.keys ? $.extend({}, F.defaults.keys, opts.keys) : false; + } + + F.group = group; + + return F._start(F.opts.index); + }, + + // Cancel image loading or abort ajax request + cancel: function () { + var coming = F.coming; + + if (!coming || false === F.trigger('onCancel')) { + return; + } + + F.hideLoading(); + + if (F.ajaxLoad) { + F.ajaxLoad.abort(); + } + + F.ajaxLoad = null; + + if (F.imgPreload) { + F.imgPreload.onload = F.imgPreload.onerror = null; + } + + if (coming.wrap) { + coming.wrap.stop(true, true).trigger('onReset').remove(); + } + + F.coming = null; + + // If the first item has been canceled, then clear everything + if (!F.current) { + F._afterZoomOut( coming ); + } + }, + + // Start closing animation if is open; remove immediately if opening/closing + close: function (event) { + F.cancel(); + + if (false === F.trigger('beforeClose')) { + return; + } + + F.unbindEvents(); + + if (!F.isActive) { + return; + } + + if (!F.isOpen || event === true) { + $('.fancybox-wrap').stop(true).trigger('onReset').remove(); + + F._afterZoomOut(); + + } else { + F.isOpen = F.isOpened = false; + F.isClosing = true; + + $('.fancybox-item, .fancybox-nav').remove(); + + F.wrap.stop(true, true).removeClass('fancybox-opened'); + + F.transitions[ F.current.closeMethod ](); + } + }, + + // Manage slideshow: + // $.fancybox.play(); - toggle slideshow + // $.fancybox.play( true ); - start + // $.fancybox.play( false ); - stop + play: function ( action ) { + var clear = function () { + clearTimeout(F.player.timer); + }, + set = function () { + clear(); + + if (F.current && F.player.isActive) { + F.player.timer = setTimeout(F.next, F.current.playSpeed); + } + }, + stop = function () { + clear(); + + D.unbind('.player'); + + F.player.isActive = false; + + F.trigger('onPlayEnd'); + }, + start = function () { + if (F.current && (F.current.loop || F.current.index < F.group.length - 1)) { + F.player.isActive = true; + + D.bind({ + 'onCancel.player beforeClose.player' : stop, + 'onUpdate.player' : set, + 'beforeLoad.player' : clear + }); + + set(); + + F.trigger('onPlayStart'); + } + }; + + if (action === true || (!F.player.isActive && action !== false)) { + start(); + } else { + stop(); + } + }, + + // Navigate to next gallery item + next: function ( direction ) { + var current = F.current; + + if (current) { + if (!isString(direction)) { + direction = current.direction.next; + } + + F.jumpto(current.index + 1, direction, 'next'); + } + }, + + // Navigate to previous gallery item + prev: function ( direction ) { + var current = F.current; + + if (current) { + if (!isString(direction)) { + direction = current.direction.prev; + } + + F.jumpto(current.index - 1, direction, 'prev'); + } + }, + + // Navigate to gallery item by index + jumpto: function ( index, direction, router ) { + var current = F.current; + + if (!current) { + return; + } + + index = getScalar(index); + + F.direction = direction || current.direction[ (index >= current.index ? 'next' : 'prev') ]; + F.router = router || 'jumpto'; + + if (current.loop) { + if (index < 0) { + index = current.group.length + (index % current.group.length); + } + + index = index % current.group.length; + } + + if (current.group[ index ] !== undefined) { + F.cancel(); + + F._start(index); + } + }, + + // Center inside viewport and toggle position type to fixed or absolute if needed + reposition: function (e, onlyAbsolute) { + var current = F.current, + wrap = current ? current.wrap : null, + pos; + + if (wrap) { + pos = F._getPosition(onlyAbsolute); + + if (e && e.type === 'scroll') { + delete pos.position; + + wrap.stop(true, true).animate(pos, 200); + + } else { + wrap.css(pos); + + current.pos = $.extend({}, current.dim, pos); + } + } + }, + + update: function (e) { + var type = (e && e.type), + anyway = !type || type === 'orientationchange'; + + if (anyway) { + clearTimeout(didUpdate); + + didUpdate = null; + } + + if (!F.isOpen || didUpdate) { + return; + } + + didUpdate = setTimeout(function() { + var current = F.current; + + if (!current || F.isClosing) { + return; + } + + F.wrap.removeClass('fancybox-tmp'); + + if (anyway || type === 'load' || (type === 'resize' && current.autoResize)) { + F._setDimension(); + } + + if (!(type === 'scroll' && current.canShrink)) { + F.reposition(e); + } + + F.trigger('onUpdate'); + + didUpdate = null; + + }, (anyway && !isTouch ? 0 : 300)); + }, + + // Shrink content to fit inside viewport or restore if resized + toggle: function ( action ) { + if (F.isOpen) { + F.current.fitToView = $.type(action) === "boolean" ? action : !F.current.fitToView; + + // Help browser to restore document dimensions + if (isTouch) { + F.wrap.removeAttr('style').addClass('fancybox-tmp'); + + F.trigger('onUpdate'); + } + + F.update(); + } + }, + + hideLoading: function () { + D.unbind('.loading'); + + $('#fancybox-loading').remove(); + }, + + showLoading: function () { + var el, viewport; + + F.hideLoading(); + + el = $('
').click(F.cancel).appendTo('body'); + + // If user will press the escape-button, the request will be canceled + D.bind('keydown.loading', function(e) { + if ((e.which || e.keyCode) === 27) { + e.preventDefault(); + + F.cancel(); + } + }); + + if (!F.defaults.fixed) { + viewport = F.getViewport(); + + el.css({ + position : 'absolute', + top : (viewport.h * 0.5) + viewport.y, + left : (viewport.w * 0.5) + viewport.x + }); + } + }, + + getViewport: function () { + var locked = (F.current && F.current.locked) || false, + rez = { + x: W.scrollLeft(), + y: W.scrollTop() + }; + + if (locked) { + rez.w = locked[0].clientWidth; + rez.h = locked[0].clientHeight; + + } else { + // See http://bugs.jquery.com/ticket/6724 + rez.w = isTouch && window.innerWidth ? window.innerWidth : W.width(); + rez.h = isTouch && window.innerHeight ? window.innerHeight : W.height(); + } + + return rez; + }, + + // Unbind the keyboard / clicking actions + unbindEvents: function () { + if (F.wrap && isQuery(F.wrap)) { + F.wrap.unbind('.fb'); + } + + D.unbind('.fb'); + W.unbind('.fb'); + }, + + bindEvents: function () { + var current = F.current, + keys; + + if (!current) { + return; + } + + // Changing document height on iOS devices triggers a 'resize' event, + // that can change document height... repeating infinitely + W.bind('orientationchange.fb' + (isTouch ? '' : ' resize.fb') + (current.autoCenter && !current.locked ? ' scroll.fb' : ''), F.update); + + keys = current.keys; + + if (keys) { + D.bind('keydown.fb', function (e) { + var code = e.which || e.keyCode, + target = e.target || e.srcElement; + + // Skip esc key if loading, because showLoading will cancel preloading + if (code === 27 && F.coming) { + return false; + } + + // Ignore key combinations and key events within form elements + if (!e.ctrlKey && !e.altKey && !e.shiftKey && !e.metaKey && !(target && (target.type || $(target).is('[contenteditable]')))) { + $.each(keys, function(i, val) { + if (current.group.length > 1 && val[ code ] !== undefined) { + F[ i ]( val[ code ] ); + + e.preventDefault(); + return false; + } + + if ($.inArray(code, val) > -1) { + F[ i ] (); + + e.preventDefault(); + return false; + } + }); + } + }); + } + + if ($.fn.mousewheel && current.mouseWheel) { + F.wrap.bind('mousewheel.fb', function (e, delta, deltaX, deltaY) { + var target = e.target || null, + parent = $(target), + canScroll = false; + + while (parent.length) { + if (canScroll || parent.is('.fancybox-skin') || parent.is('.fancybox-wrap')) { + break; + } + + canScroll = isScrollable( parent[0] ); + parent = $(parent).parent(); + } + + if (delta !== 0 && !canScroll) { + if (F.group.length > 1 && !current.canShrink) { + if (deltaY > 0 || deltaX > 0) { + F.prev( deltaY > 0 ? 'down' : 'left' ); + + } else if (deltaY < 0 || deltaX < 0) { + F.next( deltaY < 0 ? 'up' : 'right' ); + } + + e.preventDefault(); + } + } + }); + } + }, + + trigger: function (event, o) { + var ret, obj = o || F.coming || F.current; + + if (!obj) { + return; + } + + if ($.isFunction( obj[event] )) { + ret = obj[event].apply(obj, Array.prototype.slice.call(arguments, 1)); + } + + if (ret === false) { + return false; + } + + if (obj.helpers) { + $.each(obj.helpers, function (helper, opts) { + if (opts && F.helpers[helper] && $.isFunction(F.helpers[helper][event])) { + F.helpers[helper][event]($.extend(true, {}, F.helpers[helper].defaults, opts), obj); + } + }); + } + + D.trigger(event); + }, + + isImage: function (str) { + return isString(str) && str.match(/(^data:image\/.*,)|(\.(jp(e|g|eg)|gif|png|bmp|webp|svg)((\?|#).*)?$)/i); + }, + + isSWF: function (str) { + return isString(str) && str.match(/\.(swf)((\?|#).*)?$/i); + }, + + _start: function (index) { + var coming = {}, + obj, + href, + type, + margin, + padding; + + index = getScalar( index ); + obj = F.group[ index ] || null; + + if (!obj) { + return false; + } + + coming = $.extend(true, {}, F.opts, obj); + + // Convert margin and padding properties to array - top, right, bottom, left + margin = coming.margin; + padding = coming.padding; + + if ($.type(margin) === 'number') { + coming.margin = [margin, margin, margin, margin]; + } + + if ($.type(padding) === 'number') { + coming.padding = [padding, padding, padding, padding]; + } + + // 'modal' propery is just a shortcut + if (coming.modal) { + $.extend(true, coming, { + closeBtn : false, + closeClick : false, + nextClick : false, + arrows : false, + mouseWheel : false, + keys : null, + helpers: { + overlay : { + closeClick : false + } + } + }); + } + + // 'autoSize' property is a shortcut, too + if (coming.autoSize) { + coming.autoWidth = coming.autoHeight = true; + } + + if (coming.width === 'auto') { + coming.autoWidth = true; + } + + if (coming.height === 'auto') { + coming.autoHeight = true; + } + + /* + * Add reference to the group, so it`s possible to access from callbacks, example: + * afterLoad : function() { + * this.title = 'Image ' + (this.index + 1) + ' of ' + this.group.length + (this.title ? ' - ' + this.title : ''); + * } + */ + + coming.group = F.group; + coming.index = index; + + // Give a chance for callback or helpers to update coming item (type, title, etc) + F.coming = coming; + + if (false === F.trigger('beforeLoad')) { + F.coming = null; + + return; + } + + type = coming.type; + href = coming.href; + + if (!type) { + F.coming = null; + + //If we can not determine content type then drop silently or display next/prev item if looping through gallery + if (F.current && F.router && F.router !== 'jumpto') { + F.current.index = index; + + return F[ F.router ]( F.direction ); + } + + return false; + } + + F.isActive = true; + + if (type === 'image' || type === 'swf') { + coming.autoHeight = coming.autoWidth = false; + coming.scrolling = 'visible'; + } + + if (type === 'image') { + coming.aspectRatio = true; + } + + if (type === 'iframe' && isTouch) { + coming.scrolling = 'scroll'; + } + + // Build the neccessary markup + coming.wrap = $(coming.tpl.wrap).addClass('fancybox-' + (isTouch ? 'mobile' : 'desktop') + ' fancybox-type-' + type + ' fancybox-tmp ' + coming.wrapCSS).appendTo( coming.parent || 'body' ); + + $.extend(coming, { + skin : $('.fancybox-skin', coming.wrap), + outer : $('.fancybox-outer', coming.wrap), + inner : $('.fancybox-inner', coming.wrap) + }); + + $.each(["Top", "Right", "Bottom", "Left"], function(i, v) { + coming.skin.css('padding' + v, getValue(coming.padding[ i ])); + }); + + F.trigger('onReady'); + + // Check before try to load; 'inline' and 'html' types need content, others - href + if (type === 'inline' || type === 'html') { + if (!coming.content || !coming.content.length) { + return F._error( 'content' ); + } + + } else if (!href) { + return F._error( 'href' ); + } + + if (type === 'image') { + F._loadImage(); + + } else if (type === 'ajax') { + F._loadAjax(); + + } else if (type === 'iframe') { + F._loadIframe(); + + } else { + F._afterLoad(); + } + }, + + _error: function ( type ) { + $.extend(F.coming, { + type : 'html', + autoWidth : true, + autoHeight : true, + minWidth : 0, + minHeight : 0, + scrolling : 'no', + hasError : type, + content : F.coming.tpl.error + }); + + F._afterLoad(); + }, + + _loadImage: function () { + // Reset preload image so it is later possible to check "complete" property + var img = F.imgPreload = new Image(); + + img.onload = function () { + this.onload = this.onerror = null; + + F.coming.width = this.width / F.opts.pixelRatio; + F.coming.height = this.height / F.opts.pixelRatio; + + F._afterLoad(); + }; + + img.onerror = function () { + this.onload = this.onerror = null; + + F._error( 'image' ); + }; + + img.src = F.coming.href; + + if (img.complete !== true) { + F.showLoading(); + } + }, + + _loadAjax: function () { + var coming = F.coming; + + F.showLoading(); + + F.ajaxLoad = $.ajax($.extend({}, coming.ajax, { + url: coming.href, + error: function (jqXHR, textStatus) { + if (F.coming && textStatus !== 'abort') { + F._error( 'ajax', jqXHR ); + + } else { + F.hideLoading(); + } + }, + success: function (data, textStatus) { + if (textStatus === 'success') { + coming.content = data; + + F._afterLoad(); + } + } + })); + }, + + _loadIframe: function() { + var coming = F.coming, + iframe = $(coming.tpl.iframe.replace(/\{rnd\}/g, new Date().getTime())) + .attr('scrolling', isTouch ? 'auto' : coming.iframe.scrolling) + .attr('src', coming.href); + + // This helps IE + $(coming.wrap).bind('onReset', function () { + try { + $(this).find('iframe').hide().attr('src', '//about:blank').end().empty(); + } catch (e) {} + }); + + if (coming.iframe.preload) { + F.showLoading(); + + iframe.one('load', function() { + $(this).data('ready', 1); + + // iOS will lose scrolling if we resize + if (!isTouch) { + $(this).bind('load.fb', F.update); + } + + // Without this trick: + // - iframe won't scroll on iOS devices + // - IE7 sometimes displays empty iframe + $(this).parents('.fancybox-wrap').width('100%').removeClass('fancybox-tmp').show(); + + F._afterLoad(); + }); + } + + coming.content = iframe.appendTo( coming.inner ); + + if (!coming.iframe.preload) { + F._afterLoad(); + } + }, + + _preloadImages: function() { + var group = F.group, + current = F.current, + len = group.length, + cnt = current.preload ? Math.min(current.preload, len - 1) : 0, + item, + i; + + for (i = 1; i <= cnt; i += 1) { + item = group[ (current.index + i ) % len ]; + + if (item.type === 'image' && item.href) { + new Image().src = item.href; + } + } + }, + + _afterLoad: function () { + var coming = F.coming, + previous = F.current, + placeholder = 'fancybox-placeholder', + current, + content, + type, + scrolling, + href, + embed; + + F.hideLoading(); + + if (!coming || F.isActive === false) { + return; + } + + if (false === F.trigger('afterLoad', coming, previous)) { + coming.wrap.stop(true).trigger('onReset').remove(); + + F.coming = null; + + return; + } + + if (previous) { + F.trigger('beforeChange', previous); + + previous.wrap.stop(true).removeClass('fancybox-opened') + .find('.fancybox-item, .fancybox-nav') + .remove(); + } + + F.unbindEvents(); + + current = coming; + content = coming.content; + type = coming.type; + scrolling = coming.scrolling; + + $.extend(F, { + wrap : current.wrap, + skin : current.skin, + outer : current.outer, + inner : current.inner, + current : current, + previous : previous + }); + + href = current.href; + + switch (type) { + case 'inline': + case 'ajax': + case 'html': + if (current.selector) { + content = $('
').html(content).find(current.selector); + + } else if (isQuery(content)) { + if (!content.data(placeholder)) { + content.data(placeholder, $('
').insertAfter( content ).hide() ); + } + + content = content.show().detach(); + + current.wrap.bind('onReset', function () { + if ($(this).find(content).length) { + content.hide().replaceAll( content.data(placeholder) ).data(placeholder, false); + } + }); + } + break; + + case 'image': + content = current.tpl.image.replace('{href}', href); + break; + + case 'swf': + content = ''; + embed = ''; + + $.each(current.swf, function(name, val) { + content += ''; + embed += ' ' + name + '="' + val + '"'; + }); + + content += ''; + break; + } + + if (!(isQuery(content) && content.parent().is(current.inner))) { + current.inner.append( content ); + } + + // Give a chance for helpers or callbacks to update elements + F.trigger('beforeShow'); + + // Set scrolling before calculating dimensions + current.inner.css('overflow', scrolling === 'yes' ? 'scroll' : (scrolling === 'no' ? 'hidden' : scrolling)); + + // Set initial dimensions and start position + F._setDimension(); + + F.reposition(); + + F.isOpen = false; + F.coming = null; + + F.bindEvents(); + + if (!F.isOpened) { + $('.fancybox-wrap').not( current.wrap ).stop(true).trigger('onReset').remove(); + + } else if (previous.prevMethod) { + F.transitions[ previous.prevMethod ](); + } + + F.transitions[ F.isOpened ? current.nextMethod : current.openMethod ](); + + F._preloadImages(); + }, + + _setDimension: function () { + var viewport = F.getViewport(), + steps = 0, + canShrink = false, + canExpand = false, + wrap = F.wrap, + skin = F.skin, + inner = F.inner, + current = F.current, + width = current.width, + height = current.height, + minWidth = current.minWidth, + minHeight = current.minHeight, + maxWidth = current.maxWidth, + maxHeight = current.maxHeight, + scrolling = current.scrolling, + scrollOut = current.scrollOutside ? current.scrollbarWidth : 0, + margin = current.margin, + wMargin = getScalar(margin[1] + margin[3]), + hMargin = getScalar(margin[0] + margin[2]), + wPadding, + hPadding, + wSpace, + hSpace, + origWidth, + origHeight, + origMaxWidth, + origMaxHeight, + ratio, + width_, + height_, + maxWidth_, + maxHeight_, + iframe, + body; + + // Reset dimensions so we could re-check actual size + wrap.add(skin).add(inner).width('auto').height('auto').removeClass('fancybox-tmp'); + + wPadding = getScalar(skin.outerWidth(true) - skin.width()); + hPadding = getScalar(skin.outerHeight(true) - skin.height()); + + // Any space between content and viewport (margin, padding, border, title) + wSpace = wMargin + wPadding; + hSpace = hMargin + hPadding; + + origWidth = isPercentage(width) ? (viewport.w - wSpace) * getScalar(width) / 100 : width; + origHeight = isPercentage(height) ? (viewport.h - hSpace) * getScalar(height) / 100 : height; + + if (current.type === 'iframe') { + iframe = current.content; + + if (current.autoHeight && iframe.data('ready') === 1) { + try { + if (iframe[0].contentWindow.document.location) { + inner.width( origWidth ).height(9999); + + body = iframe.contents().find('body'); + + if (scrollOut) { + body.css('overflow-x', 'hidden'); + } + + origHeight = body.outerHeight(true); + } + + } catch (e) {} + } + + } else if (current.autoWidth || current.autoHeight) { + inner.addClass( 'fancybox-tmp' ); + + // Set width or height in case we need to calculate only one dimension + if (!current.autoWidth) { + inner.width( origWidth ); + } + + if (!current.autoHeight) { + inner.height( origHeight ); + } + + if (current.autoWidth) { + origWidth = inner.width(); + } + + if (current.autoHeight) { + origHeight = inner.height(); + } + + inner.removeClass( 'fancybox-tmp' ); + } + + width = getScalar( origWidth ); + height = getScalar( origHeight ); + + ratio = origWidth / origHeight; + + // Calculations for the content + minWidth = getScalar(isPercentage(minWidth) ? getScalar(minWidth, 'w') - wSpace : minWidth); + maxWidth = getScalar(isPercentage(maxWidth) ? getScalar(maxWidth, 'w') - wSpace : maxWidth); + + minHeight = getScalar(isPercentage(minHeight) ? getScalar(minHeight, 'h') - hSpace : minHeight); + maxHeight = getScalar(isPercentage(maxHeight) ? getScalar(maxHeight, 'h') - hSpace : maxHeight); + + // These will be used to determine if wrap can fit in the viewport + origMaxWidth = maxWidth; + origMaxHeight = maxHeight; + + if (current.fitToView) { + maxWidth = Math.min(viewport.w - wSpace, maxWidth); + maxHeight = Math.min(viewport.h - hSpace, maxHeight); + } + + maxWidth_ = viewport.w - wMargin; + maxHeight_ = viewport.h - hMargin; + + if (current.aspectRatio) { + if (width > maxWidth) { + width = maxWidth; + height = getScalar(width / ratio); + } + + if (height > maxHeight) { + height = maxHeight; + width = getScalar(height * ratio); + } + + if (width < minWidth) { + width = minWidth; + height = getScalar(width / ratio); + } + + if (height < minHeight) { + height = minHeight; + width = getScalar(height * ratio); + } + + } else { + width = Math.max(minWidth, Math.min(width, maxWidth)); + + if (current.autoHeight && current.type !== 'iframe') { + inner.width( width ); + + height = inner.height(); + } + + height = Math.max(minHeight, Math.min(height, maxHeight)); + } + + // Try to fit inside viewport (including the title) + if (current.fitToView) { + inner.width( width ).height( height ); + + wrap.width( width + wPadding ); + + // Real wrap dimensions + width_ = wrap.width(); + height_ = wrap.height(); + + if (current.aspectRatio) { + while ((width_ > maxWidth_ || height_ > maxHeight_) && width > minWidth && height > minHeight) { + if (steps++ > 19) { + break; + } + + height = Math.max(minHeight, Math.min(maxHeight, height - 10)); + width = getScalar(height * ratio); + + if (width < minWidth) { + width = minWidth; + height = getScalar(width / ratio); + } + + if (width > maxWidth) { + width = maxWidth; + height = getScalar(width / ratio); + } + + inner.width( width ).height( height ); + + wrap.width( width + wPadding ); + + width_ = wrap.width(); + height_ = wrap.height(); + } + + } else { + width = Math.max(minWidth, Math.min(width, width - (width_ - maxWidth_))); + height = Math.max(minHeight, Math.min(height, height - (height_ - maxHeight_))); + } + } + + if (scrollOut && scrolling === 'auto' && height < origHeight && (width + wPadding + scrollOut) < maxWidth_) { + width += scrollOut; + } + + inner.width( width ).height( height ); + + wrap.width( width + wPadding ); + + width_ = wrap.width(); + height_ = wrap.height(); + + canShrink = (width_ > maxWidth_ || height_ > maxHeight_) && width > minWidth && height > minHeight; + canExpand = current.aspectRatio ? (width < origMaxWidth && height < origMaxHeight && width < origWidth && height < origHeight) : ((width < origMaxWidth || height < origMaxHeight) && (width < origWidth || height < origHeight)); + + $.extend(current, { + dim : { + width : getValue( width_ ), + height : getValue( height_ ) + }, + origWidth : origWidth, + origHeight : origHeight, + canShrink : canShrink, + canExpand : canExpand, + wPadding : wPadding, + hPadding : hPadding, + wrapSpace : height_ - skin.outerHeight(true), + skinSpace : skin.height() - height + }); + + if (!iframe && current.autoHeight && height > minHeight && height < maxHeight && !canExpand) { + inner.height('auto'); + } + }, + + _getPosition: function (onlyAbsolute) { + var current = F.current, + viewport = F.getViewport(), + margin = current.margin, + width = F.wrap.width() + margin[1] + margin[3], + height = F.wrap.height() + margin[0] + margin[2], + rez = { + position: 'absolute', + top : margin[0], + left : margin[3] + }; + + if (current.autoCenter && current.fixed && !onlyAbsolute && height <= viewport.h && width <= viewport.w) { + rez.position = 'fixed'; + + } else if (!current.locked) { + rez.top += viewport.y; + rez.left += viewport.x; + } + + rez.top = getValue(Math.max(rez.top, rez.top + ((viewport.h - height) * current.topRatio))); + rez.left = getValue(Math.max(rez.left, rez.left + ((viewport.w - width) * current.leftRatio))); + + return rez; + }, + + _afterZoomIn: function () { + var current = F.current; + + if (!current) { + return; + } + + F.isOpen = F.isOpened = true; + + F.wrap.css('overflow', 'visible').addClass('fancybox-opened'); + + F.update(); + + // Assign a click event + if ( current.closeClick || (current.nextClick && F.group.length > 1) ) { + F.inner.css('cursor', 'pointer').bind('click.fb', function(e) { + if (!$(e.target).is('a') && !$(e.target).parent().is('a')) { + e.preventDefault(); + + F[ current.closeClick ? 'close' : 'next' ](); + } + }); + } + + // Create a close button + if (current.closeBtn) { + $(current.tpl.closeBtn).appendTo(F.skin).bind('click.fb', function(e) { + e.preventDefault(); + + F.close(); + }); + } + + // Create navigation arrows + if (current.arrows && F.group.length > 1) { + if (current.loop || current.index > 0) { + $(current.tpl.prev).appendTo(F.outer).bind('click.fb', F.prev); + } + + if (current.loop || current.index < F.group.length - 1) { + $(current.tpl.next).appendTo(F.outer).bind('click.fb', F.next); + } + } + + F.trigger('afterShow'); + + // Stop the slideshow if this is the last item + if (!current.loop && current.index === current.group.length - 1) { + F.play( false ); + + } else if (F.opts.autoPlay && !F.player.isActive) { + F.opts.autoPlay = false; + + F.play(); + } + }, + + _afterZoomOut: function ( obj ) { + obj = obj || F.current; + + $('.fancybox-wrap').trigger('onReset').remove(); + + $.extend(F, { + group : {}, + opts : {}, + router : false, + current : null, + isActive : false, + isOpened : false, + isOpen : false, + isClosing : false, + wrap : null, + skin : null, + outer : null, + inner : null + }); + + F.trigger('afterClose', obj); + } + }); + + /* + * Default transitions + */ + + F.transitions = { + getOrigPosition: function () { + var current = F.current, + element = current.element, + orig = current.orig, + pos = {}, + width = 50, + height = 50, + hPadding = current.hPadding, + wPadding = current.wPadding, + viewport = F.getViewport(); + + if (!orig && current.isDom && element.is(':visible')) { + orig = element.find('img:first'); + + if (!orig.length) { + orig = element; + } + } + + if (isQuery(orig)) { + pos = orig.offset(); + + if (orig.is('img')) { + width = orig.outerWidth(); + height = orig.outerHeight(); + } + + } else { + pos.top = viewport.y + (viewport.h - height) * current.topRatio; + pos.left = viewport.x + (viewport.w - width) * current.leftRatio; + } + + if (F.wrap.css('position') === 'fixed' || current.locked) { + pos.top -= viewport.y; + pos.left -= viewport.x; + } + + pos = { + top : getValue(pos.top - hPadding * current.topRatio), + left : getValue(pos.left - wPadding * current.leftRatio), + width : getValue(width + wPadding), + height : getValue(height + hPadding) + }; + + return pos; + }, + + step: function (now, fx) { + var ratio, + padding, + value, + prop = fx.prop, + current = F.current, + wrapSpace = current.wrapSpace, + skinSpace = current.skinSpace; + + if (prop === 'width' || prop === 'height') { + ratio = fx.end === fx.start ? 1 : (now - fx.start) / (fx.end - fx.start); + + if (F.isClosing) { + ratio = 1 - ratio; + } + + padding = prop === 'width' ? current.wPadding : current.hPadding; + value = now - padding; + + F.skin[ prop ]( getScalar( prop === 'width' ? value : value - (wrapSpace * ratio) ) ); + F.inner[ prop ]( getScalar( prop === 'width' ? value : value - (wrapSpace * ratio) - (skinSpace * ratio) ) ); + } + }, + + zoomIn: function () { + var current = F.current, + startPos = current.pos, + effect = current.openEffect, + elastic = effect === 'elastic', + endPos = $.extend({opacity : 1}, startPos); + + // Remove "position" property that breaks older IE + delete endPos.position; + + if (elastic) { + startPos = this.getOrigPosition(); + + if (current.openOpacity) { + startPos.opacity = 0.1; + } + + } else if (effect === 'fade') { + startPos.opacity = 0.1; + } + + F.wrap.css(startPos).animate(endPos, { + duration : effect === 'none' ? 0 : current.openSpeed, + easing : current.openEasing, + step : elastic ? this.step : null, + complete : F._afterZoomIn + }); + }, + + zoomOut: function () { + var current = F.current, + effect = current.closeEffect, + elastic = effect === 'elastic', + endPos = {opacity : 0.1}; + + if (elastic) { + endPos = this.getOrigPosition(); + + if (current.closeOpacity) { + endPos.opacity = 0.1; + } + } + + F.wrap.animate(endPos, { + duration : effect === 'none' ? 0 : current.closeSpeed, + easing : current.closeEasing, + step : elastic ? this.step : null, + complete : F._afterZoomOut + }); + }, + + changeIn: function () { + var current = F.current, + effect = current.nextEffect, + startPos = current.pos, + endPos = { opacity : 1 }, + direction = F.direction, + distance = 200, + field; + + startPos.opacity = 0.1; + + if (effect === 'elastic') { + field = direction === 'down' || direction === 'up' ? 'top' : 'left'; + + if (direction === 'down' || direction === 'right') { + startPos[ field ] = getValue(getScalar(startPos[ field ]) - distance); + endPos[ field ] = '+=' + distance + 'px'; + + } else { + startPos[ field ] = getValue(getScalar(startPos[ field ]) + distance); + endPos[ field ] = '-=' + distance + 'px'; + } + } + + // Workaround for http://bugs.jquery.com/ticket/12273 + if (effect === 'none') { + F._afterZoomIn(); + + } else { + F.wrap.css(startPos).animate(endPos, { + duration : current.nextSpeed, + easing : current.nextEasing, + complete : F._afterZoomIn + }); + } + }, + + changeOut: function () { + var previous = F.previous, + effect = previous.prevEffect, + endPos = { opacity : 0.1 }, + direction = F.direction, + distance = 200; + + if (effect === 'elastic') { + endPos[ direction === 'down' || direction === 'up' ? 'top' : 'left' ] = ( direction === 'up' || direction === 'left' ? '-' : '+' ) + '=' + distance + 'px'; + } + + previous.wrap.animate(endPos, { + duration : effect === 'none' ? 0 : previous.prevSpeed, + easing : previous.prevEasing, + complete : function () { + $(this).trigger('onReset').remove(); + } + }); + } + }; + + /* + * Overlay helper + */ + + F.helpers.overlay = { + defaults : { + closeClick : true, // if true, fancyBox will be closed when user clicks on the overlay + speedOut : 200, // duration of fadeOut animation + showEarly : true, // indicates if should be opened immediately or wait until the content is ready + css : {}, // custom CSS properties + locked : !isTouch, // if true, the content will be locked into overlay + fixed : true // if false, the overlay CSS position property will not be set to "fixed" + }, + + overlay : null, // current handle + fixed : false, // indicates if the overlay has position "fixed" + el : $('html'), // element that contains "the lock" + + // Public methods + create : function(opts) { + opts = $.extend({}, this.defaults, opts); + + if (this.overlay) { + this.close(); + } + + this.overlay = $('
').appendTo( F.coming ? F.coming.parent : opts.parent ); + this.fixed = false; + + if (opts.fixed && F.defaults.fixed) { + this.overlay.addClass('fancybox-overlay-fixed'); + + this.fixed = true; + } + }, + + open : function(opts) { + var that = this; + + opts = $.extend({}, this.defaults, opts); + + if (this.overlay) { + this.overlay.unbind('.overlay').width('auto').height('auto'); + + } else { + this.create(opts); + } + + if (!this.fixed) { + W.bind('resize.overlay', $.proxy( this.update, this) ); + + this.update(); + } + + if (opts.closeClick) { + this.overlay.bind('click.overlay', function(e) { + if ($(e.target).hasClass('fancybox-overlay')) { + if (F.isActive) { + F.close(); + } else { + that.close(); + } + + return false; + } + }); + } + + this.overlay.css( opts.css ).show(); + }, + + close : function() { + var scrollV, scrollH; + + W.unbind('resize.overlay'); + + if (this.el.hasClass('fancybox-lock')) { + $('.fancybox-margin').removeClass('fancybox-margin'); + + scrollV = W.scrollTop(); + scrollH = W.scrollLeft(); + + this.el.removeClass('fancybox-lock'); + + W.scrollTop( scrollV ).scrollLeft( scrollH ); + } + + $('.fancybox-overlay').remove().hide(); + + $.extend(this, { + overlay : null, + fixed : false + }); + }, + + // Private, callbacks + + update : function () { + var width = '100%', offsetWidth; + + // Reset width/height so it will not mess + this.overlay.width(width).height('100%'); + + // jQuery does not return reliable result for IE + if (IE) { + offsetWidth = Math.max(document.documentElement.offsetWidth, document.body.offsetWidth); + + if (D.width() > offsetWidth) { + width = D.width(); + } + + } else if (D.width() > W.width()) { + width = D.width(); + } + + this.overlay.width(width).height(D.height()); + }, + + // This is where we can manipulate DOM, because later it would cause iframes to reload + onReady : function (opts, obj) { + var overlay = this.overlay; + + $('.fancybox-overlay').stop(true, true); + + if (!overlay) { + this.create(opts); + } + + if (opts.locked && this.fixed && obj.fixed) { + if (!overlay) { + this.margin = D.height() > W.height() ? $('html').css('margin-right').replace("px", "") : false; + } + + obj.locked = this.overlay.append( obj.wrap ); + obj.fixed = false; + } + + if (opts.showEarly === true) { + this.beforeShow.apply(this, arguments); + } + }, + + beforeShow : function(opts, obj) { + var scrollV, scrollH; + + if (obj.locked) { + if (this.margin !== false) { + $('*').filter(function(){ + return ($(this).css('position') === 'fixed' && !$(this).hasClass("fancybox-overlay") && !$(this).hasClass("fancybox-wrap") ); + }).addClass('fancybox-margin'); + + this.el.addClass('fancybox-margin'); + } + + scrollV = W.scrollTop(); + scrollH = W.scrollLeft(); + + this.el.addClass('fancybox-lock'); + + W.scrollTop( scrollV ).scrollLeft( scrollH ); + } + + this.open(opts); + }, + + onUpdate : function() { + if (!this.fixed) { + this.update(); + } + }, + + afterClose: function (opts) { + // Remove overlay if exists and fancyBox is not opening + // (e.g., it is not being open using afterClose callback) + //if (this.overlay && !F.isActive) { + if (this.overlay && !F.coming) { + this.overlay.fadeOut(opts.speedOut, $.proxy( this.close, this )); + } + } + }; + + /* + * Title helper + */ + + F.helpers.title = { + defaults : { + type : 'float', // 'float', 'inside', 'outside' or 'over', + position : 'bottom' // 'top' or 'bottom' + }, + + beforeShow: function (opts) { + var current = F.current, + text = current.title, + type = opts.type, + title, + target; + + if ($.isFunction(text)) { + text = text.call(current.element, current); + } + + if (!isString(text) || $.trim(text) === '') { + return; + } + + title = $('
' + text + '
'); + + switch (type) { + case 'inside': + target = F.skin; + break; + + case 'outside': + target = F.wrap; + break; + + case 'over': + target = F.inner; + break; + + default: // 'float' + target = F.skin; + + title.appendTo('body'); + + if (IE) { + title.width( title.width() ); + } + + title.wrapInner(''); + + //Increase bottom margin so this title will also fit into viewport + F.current.margin[2] += Math.abs( getScalar(title.css('margin-bottom')) ); + break; + } + + title[ (opts.position === 'top' ? 'prependTo' : 'appendTo') ](target); + } + }; + + // jQuery plugin initialization + $.fn.fancybox = function (options) { + var index, + that = $(this), + selector = this.selector || '', + run = function(e) { + var what = $(this).blur(), idx = index, relType, relVal; + + if (!(e.ctrlKey || e.altKey || e.shiftKey || e.metaKey) && !what.is('.fancybox-wrap')) { + relType = options.groupAttr || 'data-fancybox-group'; + relVal = what.attr(relType); + + if (!relVal) { + relType = 'rel'; + relVal = what.get(0)[ relType ]; + } + + if (relVal && relVal !== '' && relVal !== 'nofollow') { + what = selector.length ? $(selector) : that; + what = what.filter('[' + relType + '="' + relVal + '"]'); + idx = what.index(this); + } + + options.index = idx; + + // Stop an event from bubbling if everything is fine + if (F.open(what, options) !== false) { + e.preventDefault(); + } + } + }; + + options = options || {}; + index = options.index || 0; + + if (!selector || options.live === false) { + that.unbind('click.fb-start').bind('click.fb-start', run); + + } else { + D.undelegate(selector, 'click.fb-start').delegate(selector + ":not('.fancybox-item, .fancybox-nav')", 'click.fb-start', run); + } + + this.filter('[data-fancybox-start=1]').trigger('click'); + + return this; + }; + + // Tests that need a body at doc ready + D.ready(function() { + var w1, w2; + + if ( $.scrollbarWidth === undefined ) { + // http://benalman.com/projects/jquery-misc-plugins/#scrollbarwidth + $.scrollbarWidth = function() { + var parent = $('
').appendTo('body'), + child = parent.children(), + width = child.innerWidth() - child.height( 99 ).innerWidth(); + + parent.remove(); + + return width; + }; + } + + if ( $.support.fixedPosition === undefined ) { + $.support.fixedPosition = (function() { + var elem = $('
').appendTo('body'), + fixed = ( elem[0].offsetTop === 20 || elem[0].offsetTop === 15 ); + + elem.remove(); + + return fixed; + }()); + } + + $.extend(F.defaults, { + scrollbarWidth : $.scrollbarWidth(), + fixed : $.support.fixedPosition, + parent : $('body') + }); + + //Get real width of page scroll-bar + w1 = $(window).width(); + + H.addClass('fancybox-lock-test'); + + w2 = $(window).width(); + + H.removeClass('fancybox-lock-test'); + + $("").appendTo("head"); + }); + +}(window, document, jQuery)); \ No newline at end of file diff --git a/js/fancybox/source/jquery.fancybox.pack.js b/js/fancybox/source/jquery.fancybox.pack.js new file mode 100755 index 0000000..73f7578 --- /dev/null +++ b/js/fancybox/source/jquery.fancybox.pack.js @@ -0,0 +1,46 @@ +/*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */ +(function(r,G,f,v){var J=f("html"),n=f(r),p=f(G),b=f.fancybox=function(){b.open.apply(this,arguments)},I=navigator.userAgent.match(/msie/i),B=null,s=G.createTouch!==v,t=function(a){return a&&a.hasOwnProperty&&a instanceof f},q=function(a){return a&&"string"===f.type(a)},E=function(a){return q(a)&&0
',image:'',iframe:'",error:'

The requested content cannot be loaded.
Please try again later.

',closeBtn:'',next:'',prev:''},openEffect:"fade",openSpeed:250,openEasing:"swing",openOpacity:!0, +openMethod:"zoomIn",closeEffect:"fade",closeSpeed:250,closeEasing:"swing",closeOpacity:!0,closeMethod:"zoomOut",nextEffect:"elastic",nextSpeed:250,nextEasing:"swing",nextMethod:"changeIn",prevEffect:"elastic",prevSpeed:250,prevEasing:"swing",prevMethod:"changeOut",helpers:{overlay:!0,title:!0},onCancel:f.noop,beforeLoad:f.noop,afterLoad:f.noop,beforeShow:f.noop,afterShow:f.noop,beforeChange:f.noop,beforeClose:f.noop,afterClose:f.noop},group:{},opts:{},previous:null,coming:null,current:null,isActive:!1, +isOpen:!1,isOpened:!1,wrap:null,skin:null,outer:null,inner:null,player:{timer:null,isActive:!1},ajaxLoad:null,imgPreload:null,transitions:{},helpers:{},open:function(a,d){if(a&&(f.isPlainObject(d)||(d={}),!1!==b.close(!0)))return f.isArray(a)||(a=t(a)?f(a).get():[a]),f.each(a,function(e,c){var k={},g,h,j,m,l;"object"===f.type(c)&&(c.nodeType&&(c=f(c)),t(c)?(k={href:c.data("fancybox-href")||c.attr("href"),title:c.data("fancybox-title")||c.attr("title"),isDom:!0,element:c},f.metadata&&f.extend(!0,k, +c.metadata())):k=c);g=d.href||k.href||(q(c)?c:null);h=d.title!==v?d.title:k.title||"";m=(j=d.content||k.content)?"html":d.type||k.type;!m&&k.isDom&&(m=c.data("fancybox-type"),m||(m=(m=c.prop("class").match(/fancybox\.(\w+)/))?m[1]:null));q(g)&&(m||(b.isImage(g)?m="image":b.isSWF(g)?m="swf":"#"===g.charAt(0)?m="inline":q(c)&&(m="html",j=c)),"ajax"===m&&(l=g.split(/\s+/,2),g=l.shift(),l=l.shift()));j||("inline"===m?g?j=f(q(g)?g.replace(/.*(?=#[^\s]+$)/,""):g):k.isDom&&(j=c):"html"===m?j=g:!m&&(!g&& +k.isDom)&&(m="inline",j=c));f.extend(k,{href:g,type:m,content:j,title:h,selector:l});a[e]=k}),b.opts=f.extend(!0,{},b.defaults,d),d.keys!==v&&(b.opts.keys=d.keys?f.extend({},b.defaults.keys,d.keys):!1),b.group=a,b._start(b.opts.index)},cancel:function(){var a=b.coming;a&&!1!==b.trigger("onCancel")&&(b.hideLoading(),b.ajaxLoad&&b.ajaxLoad.abort(),b.ajaxLoad=null,b.imgPreload&&(b.imgPreload.onload=b.imgPreload.onerror=null),a.wrap&&a.wrap.stop(!0,!0).trigger("onReset").remove(),b.coming=null,b.current|| +b._afterZoomOut(a))},close:function(a){b.cancel();!1!==b.trigger("beforeClose")&&(b.unbindEvents(),b.isActive&&(!b.isOpen||!0===a?(f(".fancybox-wrap").stop(!0).trigger("onReset").remove(),b._afterZoomOut()):(b.isOpen=b.isOpened=!1,b.isClosing=!0,f(".fancybox-item, .fancybox-nav").remove(),b.wrap.stop(!0,!0).removeClass("fancybox-opened"),b.transitions[b.current.closeMethod]())))},play:function(a){var d=function(){clearTimeout(b.player.timer)},e=function(){d();b.current&&b.player.isActive&&(b.player.timer= +setTimeout(b.next,b.current.playSpeed))},c=function(){d();p.unbind(".player");b.player.isActive=!1;b.trigger("onPlayEnd")};if(!0===a||!b.player.isActive&&!1!==a){if(b.current&&(b.current.loop||b.current.index=c.index?"next":"prev"],b.router=e||"jumpto",c.loop&&(0>a&&(a=c.group.length+a%c.group.length),a%=c.group.length),c.group[a]!==v&&(b.cancel(),b._start(a)))},reposition:function(a,d){var e=b.current,c=e?e.wrap:null,k;c&&(k=b._getPosition(d),a&&"scroll"===a.type?(delete k.position,c.stop(!0,!0).animate(k,200)):(c.css(k),e.pos=f.extend({},e.dim,k)))},update:function(a){var d= +a&&a.type,e=!d||"orientationchange"===d;e&&(clearTimeout(B),B=null);b.isOpen&&!B&&(B=setTimeout(function(){var c=b.current;c&&!b.isClosing&&(b.wrap.removeClass("fancybox-tmp"),(e||"load"===d||"resize"===d&&c.autoResize)&&b._setDimension(),"scroll"===d&&c.canShrink||b.reposition(a),b.trigger("onUpdate"),B=null)},e&&!s?0:300))},toggle:function(a){b.isOpen&&(b.current.fitToView="boolean"===f.type(a)?a:!b.current.fitToView,s&&(b.wrap.removeAttr("style").addClass("fancybox-tmp"),b.trigger("onUpdate")), +b.update())},hideLoading:function(){p.unbind(".loading");f("#fancybox-loading").remove()},showLoading:function(){var a,d;b.hideLoading();a=f('
').click(b.cancel).appendTo("body");p.bind("keydown.loading",function(a){if(27===(a.which||a.keyCode))a.preventDefault(),b.cancel()});b.defaults.fixed||(d=b.getViewport(),a.css({position:"absolute",top:0.5*d.h+d.y,left:0.5*d.w+d.x}))},getViewport:function(){var a=b.current&&b.current.locked||!1,d={x:n.scrollLeft(), +y:n.scrollTop()};a?(d.w=a[0].clientWidth,d.h=a[0].clientHeight):(d.w=s&&r.innerWidth?r.innerWidth:n.width(),d.h=s&&r.innerHeight?r.innerHeight:n.height());return d},unbindEvents:function(){b.wrap&&t(b.wrap)&&b.wrap.unbind(".fb");p.unbind(".fb");n.unbind(".fb")},bindEvents:function(){var a=b.current,d;a&&(n.bind("orientationchange.fb"+(s?"":" resize.fb")+(a.autoCenter&&!a.locked?" scroll.fb":""),b.update),(d=a.keys)&&p.bind("keydown.fb",function(e){var c=e.which||e.keyCode,k=e.target||e.srcElement; +if(27===c&&b.coming)return!1;!e.ctrlKey&&(!e.altKey&&!e.shiftKey&&!e.metaKey&&(!k||!k.type&&!f(k).is("[contenteditable]")))&&f.each(d,function(d,k){if(1h[0].clientWidth||h[0].clientHeight&&h[0].scrollHeight>h[0].clientHeight),h=f(h).parent();if(0!==c&&!j&&1g||0>k)b.next(0>g?"up":"right");d.preventDefault()}}))},trigger:function(a,d){var e,c=d||b.coming||b.current;if(c){f.isFunction(c[a])&&(e=c[a].apply(c,Array.prototype.slice.call(arguments,1)));if(!1===e)return!1;c.helpers&&f.each(c.helpers,function(d,e){if(e&&b.helpers[d]&&f.isFunction(b.helpers[d][a]))b.helpers[d][a](f.extend(!0, +{},b.helpers[d].defaults,e),c)});p.trigger(a)}},isImage:function(a){return q(a)&&a.match(/(^data:image\/.*,)|(\.(jp(e|g|eg)|gif|png|bmp|webp|svg)((\?|#).*)?$)/i)},isSWF:function(a){return q(a)&&a.match(/\.(swf)((\?|#).*)?$/i)},_start:function(a){var d={},e,c;a=l(a);e=b.group[a]||null;if(!e)return!1;d=f.extend(!0,{},b.opts,e);e=d.margin;c=d.padding;"number"===f.type(e)&&(d.margin=[e,e,e,e]);"number"===f.type(c)&&(d.padding=[c,c,c,c]);d.modal&&f.extend(!0,d,{closeBtn:!1,closeClick:!1,nextClick:!1,arrows:!1, +mouseWheel:!1,keys:null,helpers:{overlay:{closeClick:!1}}});d.autoSize&&(d.autoWidth=d.autoHeight=!0);"auto"===d.width&&(d.autoWidth=!0);"auto"===d.height&&(d.autoHeight=!0);d.group=b.group;d.index=a;b.coming=d;if(!1===b.trigger("beforeLoad"))b.coming=null;else{c=d.type;e=d.href;if(!c)return b.coming=null,b.current&&b.router&&"jumpto"!==b.router?(b.current.index=a,b[b.router](b.direction)):!1;b.isActive=!0;if("image"===c||"swf"===c)d.autoHeight=d.autoWidth=!1,d.scrolling="visible";"image"===c&&(d.aspectRatio= +!0);"iframe"===c&&s&&(d.scrolling="scroll");d.wrap=f(d.tpl.wrap).addClass("fancybox-"+(s?"mobile":"desktop")+" fancybox-type-"+c+" fancybox-tmp "+d.wrapCSS).appendTo(d.parent||"body");f.extend(d,{skin:f(".fancybox-skin",d.wrap),outer:f(".fancybox-outer",d.wrap),inner:f(".fancybox-inner",d.wrap)});f.each(["Top","Right","Bottom","Left"],function(a,b){d.skin.css("padding"+b,w(d.padding[a]))});b.trigger("onReady");if("inline"===c||"html"===c){if(!d.content||!d.content.length)return b._error("content")}else if(!e)return b._error("href"); +"image"===c?b._loadImage():"ajax"===c?b._loadAjax():"iframe"===c?b._loadIframe():b._afterLoad()}},_error:function(a){f.extend(b.coming,{type:"html",autoWidth:!0,autoHeight:!0,minWidth:0,minHeight:0,scrolling:"no",hasError:a,content:b.coming.tpl.error});b._afterLoad()},_loadImage:function(){var a=b.imgPreload=new Image;a.onload=function(){this.onload=this.onerror=null;b.coming.width=this.width/b.opts.pixelRatio;b.coming.height=this.height/b.opts.pixelRatio;b._afterLoad()};a.onerror=function(){this.onload= +this.onerror=null;b._error("image")};a.src=b.coming.href;!0!==a.complete&&b.showLoading()},_loadAjax:function(){var a=b.coming;b.showLoading();b.ajaxLoad=f.ajax(f.extend({},a.ajax,{url:a.href,error:function(a,e){b.coming&&"abort"!==e?b._error("ajax",a):b.hideLoading()},success:function(d,e){"success"===e&&(a.content=d,b._afterLoad())}}))},_loadIframe:function(){var a=b.coming,d=f(a.tpl.iframe.replace(/\{rnd\}/g,(new Date).getTime())).attr("scrolling",s?"auto":a.iframe.scrolling).attr("src",a.href); +f(a.wrap).bind("onReset",function(){try{f(this).find("iframe").hide().attr("src","//about:blank").end().empty()}catch(a){}});a.iframe.preload&&(b.showLoading(),d.one("load",function(){f(this).data("ready",1);s||f(this).bind("load.fb",b.update);f(this).parents(".fancybox-wrap").width("100%").removeClass("fancybox-tmp").show();b._afterLoad()}));a.content=d.appendTo(a.inner);a.iframe.preload||b._afterLoad()},_preloadImages:function(){var a=b.group,d=b.current,e=a.length,c=d.preload?Math.min(d.preload, +e-1):0,f,g;for(g=1;g<=c;g+=1)f=a[(d.index+g)%e],"image"===f.type&&f.href&&((new Image).src=f.href)},_afterLoad:function(){var a=b.coming,d=b.current,e,c,k,g,h;b.hideLoading();if(a&&!1!==b.isActive)if(!1===b.trigger("afterLoad",a,d))a.wrap.stop(!0).trigger("onReset").remove(),b.coming=null;else{d&&(b.trigger("beforeChange",d),d.wrap.stop(!0).removeClass("fancybox-opened").find(".fancybox-item, .fancybox-nav").remove());b.unbindEvents();e=a.content;c=a.type;k=a.scrolling;f.extend(b,{wrap:a.wrap,skin:a.skin, +outer:a.outer,inner:a.inner,current:a,previous:d});g=a.href;switch(c){case "inline":case "ajax":case "html":a.selector?e=f("
").html(e).find(a.selector):t(e)&&(e.data("fancybox-placeholder")||e.data("fancybox-placeholder",f('
').insertAfter(e).hide()),e=e.show().detach(),a.wrap.bind("onReset",function(){f(this).find(e).length&&e.hide().replaceAll(e.data("fancybox-placeholder")).data("fancybox-placeholder",!1)}));break;case "image":e=a.tpl.image.replace("{href}", +g);break;case "swf":e='',h="",f.each(a.swf,function(a,b){e+='';h+=" "+a+'="'+b+'"'}),e+='"}(!t(e)||!e.parent().is(a.inner))&&a.inner.append(e);b.trigger("beforeShow");a.inner.css("overflow","yes"===k?"scroll": +"no"===k?"hidden":k);b._setDimension();b.reposition();b.isOpen=!1;b.coming=null;b.bindEvents();if(b.isOpened){if(d.prevMethod)b.transitions[d.prevMethod]()}else f(".fancybox-wrap").not(a.wrap).stop(!0).trigger("onReset").remove();b.transitions[b.isOpened?a.nextMethod:a.openMethod]();b._preloadImages()}},_setDimension:function(){var a=b.getViewport(),d=0,e=!1,c=!1,e=b.wrap,k=b.skin,g=b.inner,h=b.current,c=h.width,j=h.height,m=h.minWidth,u=h.minHeight,n=h.maxWidth,p=h.maxHeight,s=h.scrolling,q=h.scrollOutside? +h.scrollbarWidth:0,x=h.margin,y=l(x[1]+x[3]),r=l(x[0]+x[2]),v,z,t,C,A,F,B,D,H;e.add(k).add(g).width("auto").height("auto").removeClass("fancybox-tmp");x=l(k.outerWidth(!0)-k.width());v=l(k.outerHeight(!0)-k.height());z=y+x;t=r+v;C=E(c)?(a.w-z)*l(c)/100:c;A=E(j)?(a.h-t)*l(j)/100:j;if("iframe"===h.type){if(H=h.content,h.autoHeight&&1===H.data("ready"))try{H[0].contentWindow.document.location&&(g.width(C).height(9999),F=H.contents().find("body"),q&&F.css("overflow-x","hidden"),A=F.outerHeight(!0))}catch(G){}}else if(h.autoWidth|| +h.autoHeight)g.addClass("fancybox-tmp"),h.autoWidth||g.width(C),h.autoHeight||g.height(A),h.autoWidth&&(C=g.width()),h.autoHeight&&(A=g.height()),g.removeClass("fancybox-tmp");c=l(C);j=l(A);D=C/A;m=l(E(m)?l(m,"w")-z:m);n=l(E(n)?l(n,"w")-z:n);u=l(E(u)?l(u,"h")-t:u);p=l(E(p)?l(p,"h")-t:p);F=n;B=p;h.fitToView&&(n=Math.min(a.w-z,n),p=Math.min(a.h-t,p));z=a.w-y;r=a.h-r;h.aspectRatio?(c>n&&(c=n,j=l(c/D)),j>p&&(j=p,c=l(j*D)),cz||y>r)&&(c>m&&j>u)&&!(19n&&(c=n,j=l(c/D)),g.width(c).height(j),e.width(c+x),a=e.width(),y=e.height();else c=Math.max(m,Math.min(c,c-(a-z))),j=Math.max(u,Math.min(j,j-(y-r)));q&&("auto"===s&&jz||y>r)&&c>m&&j>u;c=h.aspectRatio?cu&&j
').appendTo(b.coming?b.coming.parent:a.parent);this.fixed=!1;a.fixed&&b.defaults.fixed&&(this.overlay.addClass("fancybox-overlay-fixed"),this.fixed=!0)},open:function(a){var d=this;a=f.extend({},this.defaults,a);this.overlay?this.overlay.unbind(".overlay").width("auto").height("auto"):this.create(a);this.fixed||(n.bind("resize.overlay",f.proxy(this.update,this)),this.update());a.closeClick&&this.overlay.bind("click.overlay",function(a){if(f(a.target).hasClass("fancybox-overlay"))return b.isActive? +b.close():d.close(),!1});this.overlay.css(a.css).show()},close:function(){var a,b;n.unbind("resize.overlay");this.el.hasClass("fancybox-lock")&&(f(".fancybox-margin").removeClass("fancybox-margin"),a=n.scrollTop(),b=n.scrollLeft(),this.el.removeClass("fancybox-lock"),n.scrollTop(a).scrollLeft(b));f(".fancybox-overlay").remove().hide();f.extend(this,{overlay:null,fixed:!1})},update:function(){var a="100%",b;this.overlay.width(a).height("100%");I?(b=Math.max(G.documentElement.offsetWidth,G.body.offsetWidth), +p.width()>b&&(a=p.width())):p.width()>n.width()&&(a=p.width());this.overlay.width(a).height(p.height())},onReady:function(a,b){var e=this.overlay;f(".fancybox-overlay").stop(!0,!0);e||this.create(a);a.locked&&(this.fixed&&b.fixed)&&(e||(this.margin=p.height()>n.height()?f("html").css("margin-right").replace("px",""):!1),b.locked=this.overlay.append(b.wrap),b.fixed=!1);!0===a.showEarly&&this.beforeShow.apply(this,arguments)},beforeShow:function(a,b){var e,c;b.locked&&(!1!==this.margin&&(f("*").filter(function(){return"fixed"=== +f(this).css("position")&&!f(this).hasClass("fancybox-overlay")&&!f(this).hasClass("fancybox-wrap")}).addClass("fancybox-margin"),this.el.addClass("fancybox-margin")),e=n.scrollTop(),c=n.scrollLeft(),this.el.addClass("fancybox-lock"),n.scrollTop(e).scrollLeft(c));this.open(a)},onUpdate:function(){this.fixed||this.update()},afterClose:function(a){this.overlay&&!b.coming&&this.overlay.fadeOut(a.speedOut,f.proxy(this.close,this))}};b.helpers.title={defaults:{type:"float",position:"bottom"},beforeShow:function(a){var d= +b.current,e=d.title,c=a.type;f.isFunction(e)&&(e=e.call(d.element,d));if(q(e)&&""!==f.trim(e)){d=f('
'+e+"
");switch(c){case "inside":c=b.skin;break;case "outside":c=b.wrap;break;case "over":c=b.inner;break;default:c=b.skin,d.appendTo("body"),I&&d.width(d.width()),d.wrapInner(''),b.current.margin[2]+=Math.abs(l(d.css("margin-bottom")))}d["top"===a.position?"prependTo":"appendTo"](c)}}};f.fn.fancybox=function(a){var d, +e=f(this),c=this.selector||"",k=function(g){var h=f(this).blur(),j=d,k,l;!g.ctrlKey&&(!g.altKey&&!g.shiftKey&&!g.metaKey)&&!h.is(".fancybox-wrap")&&(k=a.groupAttr||"data-fancybox-group",l=h.attr(k),l||(k="rel",l=h.get(0)[k]),l&&(""!==l&&"nofollow"!==l)&&(h=c.length?f(c):e,h=h.filter("["+k+'="'+l+'"]'),j=h.index(this)),a.index=j,!1!==b.open(h,a)&&g.preventDefault())};a=a||{};d=a.index||0;!c||!1===a.live?e.unbind("click.fb-start").bind("click.fb-start",k):p.undelegate(c,"click.fb-start").delegate(c+ +":not('.fancybox-item, .fancybox-nav')","click.fb-start",k);this.filter("[data-fancybox-start=1]").trigger("click");return this};p.ready(function(){var a,d;f.scrollbarWidth===v&&(f.scrollbarWidth=function(){var a=f('
').appendTo("body"),b=a.children(),b=b.innerWidth()-b.height(99).innerWidth();a.remove();return b});if(f.support.fixedPosition===v){a=f.support;d=f('
').appendTo("body");var e=20=== +d[0].offsetTop||15===d[0].offsetTop;d.remove();a.fixedPosition=e}f.extend(b.defaults,{scrollbarWidth:f.scrollbarWidth(),fixed:f.support.fixedPosition,parent:f("body")});a=f(r).width();J.addClass("fancybox-lock-test");d=f(r).width();J.removeClass("fancybox-lock-test");f("").appendTo("head")})})(window,document,jQuery); \ No newline at end of file diff --git a/js/fancybox/sprite.psd b/js/fancybox/sprite.psd new file mode 100644 index 0000000000000000000000000000000000000000..6f2032db60b78d7858a42f3ce7c8578dfd5639fc GIT binary patch literal 250491 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