diff --git a/.travis.yml b/.travis.yml index 525e52a2..7220d7cb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,10 +3,17 @@ python: 2.7 install: - "pip install -U pip" - "pip install git+https://github.com/lektor/lektor#egg=Lektor" -script: "lektor build && lektor deploy production" +script: + - "lektor build" + - "test \"$TRAVIS_PULL_REQUEST\" == \"false\" && test \"$TRAVIS_BRANCH\" == \"master\" && lektor deploy production" cache: directories: - $HOME/.cache/pip - $HOME/.cache/lektor/builds addons: ssh_known_hosts: flow.srv.pocoo.org + +notifications: + webhooks: + urls: + - https://webhooks.gitter.im/e/f0c538cdfc9883f81e34 diff --git a/Website.lektorproject b/Website.lektorproject index a5da2add..2e51c9c7 100644 --- a/Website.lektorproject +++ b/Website.lektorproject @@ -12,3 +12,7 @@ default = yes [packages] lektor-webpack-support = 0.1 lektor-disqus-comments = 0.1 +lektor-markdown-header-anchors = 0.1 +lektor-markdown-highlighter = 0.1 +lektor-markdown-admonition = 0.1 +lektor-atom = 0.1 diff --git a/assets/install.ps1 b/assets/install.ps1 index 15715997..bad93a77 100644 --- a/assets/install.ps1 +++ b/assets/install.ps1 @@ -10,7 +10,7 @@ from _winreg import OpenKey, CloseKey, QueryValueEx, SetValueEx, \ HKEY_CURRENT_USER, KEY_ALL_ACCESS, REG_EXPAND_SZ import ctypes from ctypes.wintypes import HWND, UINT, WPARAM, LPARAM, LPVOID - +import shutil VENV_URL = 'https://pypi.python.org/pypi/virtualenv/json' APPDATA = os.environ['LocalAppData'] @@ -22,12 +22,23 @@ LRESULT = LPARAM HWND_BROADCAST = 0xFFFF WM_SETTINGCHANGE = 0x1A -def find_location(): + +def get_location(): install_dir = os.path.join(APPDATA, APP) + return install_dir + +def find_location(): + install_dir = get_location() if os.path.exists(install_dir) and os.path.isdir(install_dir): return None, None return install_dir, os.path.join(install_dir, LIB) +def deletion_error(func, path, excinfo): + print 'Problem deleting {}'.format(path) + print 'Please try and delete {} manually'.format(path) + print 'Aborted!' + sys.exit() + def fail(message): print 'Error: %s' % message sys.exit(1) @@ -86,7 +97,21 @@ def main(): install_dir, lib_dir = find_location() if install_dir == None: - fail('Lektor seems to be installed already.') + print ' Lektor seems to be already installed at:' + print ' {}'.format(get_location()) + while 1: + input = raw_input( + 'Delete existing and reinstall? [Yn]' + ).lower().strip() + + if input in ('', 'y'): + shutil.rmtree(get_location(), onerror=deletion_error) + break + elif input == 'n': + print 'Aborted!' + sys.exit() + + install_dir, lib_dir = find_location() print ' Installing at: %s' % install_dir while 1: diff --git a/assets/install.sh b/assets/install.sh index 3f9a610c..1128cd4c 100644 --- a/assets/install.sh +++ b/assets/install.sh @@ -11,12 +11,16 @@ I() { set -u - if ! hash python 2> /dev/null; then + if hash python2 2> /dev/null; then + PY=python2 + elif hash python 2> /dev/null; then + PY=python + else echo "Error: To use this script you need to have Python installed" exit 1 fi - python - <<'EOF' + $PY - <<'EOF' if 1: import os @@ -99,7 +103,7 @@ if 1: os.makedirs(lib_dir) except OSError: pass - Popen(['./virtualenv.py', lib_dir], cwd=t).wait() + Popen([sys.executable, './virtualenv.py', lib_dir], cwd=t).wait() Popen([os.path.join(lib_dir, 'bin', 'pip'), 'install', '--upgrade', 'Lektor']).wait() os.symlink(os.path.join(lib_dir, 'bin', 'lektor'), diff --git a/assets/static/app.js b/assets/static/app.js index adadc2f0..d0dc7f82 100644 --- a/assets/static/app.js +++ b/assets/static/app.js @@ -1,4 +1,4 @@ -!function(t){function e(i){if(n[i])return n[i].exports;var o=n[i]={exports:{},id:i,loaded:!1};return t[i].call(o.exports,o,o.exports,e),o.loaded=!0,o.exports}var n={};return e.m=t,e.c=n,e.p="",e(0)}([function(t,e,n){(function(t){"use strict";function e(t){if(document.body.createTextRange){var e=document.body.createTextRange();e.moveToElementText(t),e.select()}else if(window.getSelection){var n=window.getSelection(),e=document.createRange();e.selectNodeContents(t),n.removeAllRanges(),n.addRange(e)}}function i(){var e=t(".download-btn");e.length<=0||(e.hide(),t.ajax({method:"GET",url:"https://api.github.com/repos/lektor/lektor/releases",crossDomain:!0}).then(function(t){r(e.toArray(),t)},function(){e.show()}))}function o(t){var e=null,n=null;if(navigator.platform.match(/^mac/i)&&(e=/\.dmg$/,n="For OSX 10.9 and later."),null!=e)for(var i=0;i').appendTo(e),o=t("a",e);s?(o.attr("href",s.url),n.append(t("").text(s.note+" ")),n.append(t("Other platforms").attr("href",r))):o.attr("href",r),o.append(t('').text(i)),t(e).fadeIn("slow")})}function s(){var n=t(".install-row pre");n.length>0&&n.on("dblclick",function(){e(this)})}function a(){var e=t(".google-custom-search");if(0!=e.length){var n="012722186170730423054:utwznhnrrmi",i=document.createElement("script");i.type="text/javascript",i.async=!0,i.src=("https:"==document.location.protocol?"https:":"http:")+"//cse.google.com/cse.js?cx="+n;var o=document.getElementsByTagName("script")[0];o.parentNode.insertBefore(i,o),t('\n \n ').appendTo(e),t('\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n ').appendTo(e);var r=c.parse(location.search);r.q&&t('input[name="q"]',e).val(r.q)}}function l(){navigator.appVersion.indexOf("Win")>=0&&t(".hide-for-windows").hide()}n(2);var c=n(15);t(function(){i(),s(),a(),l()})}).call(e,n(1))},function(t,e,n){var i,o;/*! +!function(t){function e(i){if(n[i])return n[i].exports;var o=n[i]={exports:{},id:i,loaded:!1};return t[i].call(o.exports,o,o.exports,e),o.loaded=!0,o.exports}var n={};return e.m=t,e.c=n,e.p="",e(0)}([function(t,e,n){(function(t){"use strict";function e(t){if(document.body.createTextRange){var e=document.body.createTextRange();e.moveToElementText(t),e.select()}else if(window.getSelection){var n=window.getSelection(),e=document.createRange();e.selectNodeContents(t),n.removeAllRanges(),n.addRange(e)}}function i(){var e=t(".badges li").hide();e.length>0&&window.setTimeout(function(){e.fadeIn(500)},1500)}function o(){var e=t(".download-btn");e.length<=0||(e.hide(),t.ajax({method:"GET",url:"https://api.github.com/repos/lektor/lektor/releases",crossDomain:!0}).then(function(t){s(e.toArray(),t)},function(){e.show()}))}function r(t){var e=null,n=null;if(navigator.platform.match(/^mac/i)&&(e=/\.dmg$/,n="For OSX 10.9 and later."),null!=e)for(var i=0;i').appendTo(e),r=t("a",e);s?(r.attr("href",s.url),n.append(t("").text(s.note+" ")),n.append(t("Other platforms").attr("href",o))):r.attr("href",o),r.append(t('').text(i)),t(e).fadeIn("slow")})}function a(){var n=t(".install-row pre");n.length>0&&n.on("dblclick",function(){e(this)})}function l(){var e=t(".google-custom-search");if(0!=e.length){var n="012722186170730423054:utwznhnrrmi",i=document.createElement("script");i.type="text/javascript",i.async=!0,i.src=("https:"==document.location.protocol?"https:":"http:")+"//cse.google.com/cse.js?cx="+n;var o=document.getElementsByTagName("script")[0];o.parentNode.insertBefore(i,o),t('\n \n ').appendTo(e),t('\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n ').appendTo(e);var r=u.parse(location.search);r.q&&t('input[name="q"]',e).val(r.q)}}function c(){navigator.appVersion.indexOf("Win")>=0&&t(".hide-for-windows").hide()}n(2);var u=n(15);t(function(){i(),o(),a(),l(),c()})}).call(e,n(1))},function(t,e,n){var i,o;/*! * jQuery JavaScript Library v2.1.4 * http://jquery.com/ * @@ -23,6 +23,6 @@ */ function(t){function e(t,e,n,i){var o,r,s,a,l,c,p,f,h,g;if((e?e.ownerDocument||e:W)!==O&&j(e),e=e||O,n=n||[],a=e.nodeType,"string"!=typeof t||!t||1!==a&&9!==a&&11!==a)return n;if(!i&&R){if(11!==a&&(o=yt.exec(t)))if(s=o[1]){if(9===a){if(r=e.getElementById(s),!r||!r.parentNode)return n;if(r.id===s)return n.push(r),n}else if(e.ownerDocument&&(r=e.ownerDocument.getElementById(s))&&q(e,r)&&r.id===s)return n.push(r),n}else{if(o[2])return J.apply(n,e.getElementsByTagName(t)),n;if((s=o[3])&&w.getElementsByClassName)return J.apply(n,e.getElementsByClassName(s)),n}if(w.qsa&&(!L||!L.test(t))){if(f=p=F,h=e,g=1!==a&&t,1===a&&"object"!==e.nodeName.toLowerCase()){for(c=k(t),(p=e.getAttribute("id"))?f=p.replace(xt,"\\$&"):e.setAttribute("id",f),f="[id='"+f+"'] ",l=c.length;l--;)c[l]=f+d(c[l]);h=bt.test(t)&&u(e.parentNode)||e,g=c.join(",")}if(g)try{return J.apply(n,h.querySelectorAll(g)),n}catch(m){}finally{p||e.removeAttribute("id")}}}return S(t.replace(lt,"$1"),e,n,i)}function n(){function t(n,i){return e.push(n+" ")>T.cacheLength&&delete t[e.shift()],t[n+" "]=i}var e=[];return t}function i(t){return t[F]=!0,t}function o(t){var e=O.createElement("div");try{return!!t(e)}catch(n){return!1}finally{e.parentNode&&e.parentNode.removeChild(e),e=null}}function r(t,e){for(var n=t.split("|"),i=t.length;i--;)T.attrHandle[n[i]]=e}function s(t,e){var n=e&&t,i=n&&1===t.nodeType&&1===e.nodeType&&(~e.sourceIndex||X)-(~t.sourceIndex||X);if(i)return i;if(n)for(;n=n.nextSibling;)if(n===e)return-1;return t?1:-1}function a(t){return function(e){var n=e.nodeName.toLowerCase();return"input"===n&&e.type===t}}function l(t){return function(e){var n=e.nodeName.toLowerCase();return("input"===n||"button"===n)&&e.type===t}}function c(t){return i(function(e){return e=+e,i(function(n,i){for(var o,r=t([],n.length,e),s=r.length;s--;)n[o=r[s]]&&(n[o]=!(i[o]=n[o]))})})}function u(t){return t&&"undefined"!=typeof t.getElementsByTagName&&t}function p(){}function d(t){for(var e=0,n=t.length,i="";n>e;e++)i+=t[e].value;return i}function f(t,e,n){var i=e.dir,o=n&&"parentNode"===i,r=U++;return e.first?function(e,n,r){for(;e=e[i];)if(1===e.nodeType||o)return t(e,n,r)}:function(e,n,s){var a,l,c=[M,r];if(s){for(;e=e[i];)if((1===e.nodeType||o)&&t(e,n,s))return!0}else for(;e=e[i];)if(1===e.nodeType||o){if(l=e[F]||(e[F]={}),(a=l[i])&&a[0]===M&&a[1]===r)return c[2]=a[2];if(l[i]=c,c[2]=t(e,n,s))return!0}}}function h(t){return t.length>1?function(e,n,i){for(var o=t.length;o--;)if(!t[o](e,n,i))return!1;return!0}:t[0]}function g(t,n,i){for(var o=0,r=n.length;r>o;o++)e(t,n[o],i);return i}function m(t,e,n,i,o){for(var r,s=[],a=0,l=t.length,c=null!=e;l>a;a++)(r=t[a])&&(!n||n(r,i,o))&&(s.push(r),c&&e.push(a));return s}function v(t,e,n,o,r,s){return o&&!o[F]&&(o=v(o)),r&&!r[F]&&(r=v(r,s)),i(function(i,s,a,l){var c,u,p,d=[],f=[],h=s.length,v=i||g(e||"*",a.nodeType?[a]:a,[]),y=!t||!i&&e?v:m(v,d,t,a,l),b=n?r||(i?t:h||o)?[]:s:y;if(n&&n(y,b,a,l),o)for(c=m(b,f),o(c,[],a,l),u=c.length;u--;)(p=c[u])&&(b[f[u]]=!(y[f[u]]=p));if(i){if(r||t){if(r){for(c=[],u=b.length;u--;)(p=b[u])&&c.push(y[u]=p);r(null,b=[],c,l)}for(u=b.length;u--;)(p=b[u])&&(c=r?tt(i,p):d[u])>-1&&(i[c]=!(s[c]=p))}}else b=m(b===s?b.splice(h,b.length):b),r?r(null,s,b,l):J.apply(s,b)})}function y(t){for(var e,n,i,o=t.length,r=T.relative[t[0].type],s=r||T.relative[" "],a=r?1:0,l=f(function(t){return t===e},s,!0),c=f(function(t){return tt(e,t)>-1},s,!0),u=[function(t,n,i){var o=!r&&(i||n!==N)||((e=n).nodeType?l(t,n,i):c(t,n,i));return e=null,o}];o>a;a++)if(n=T.relative[t[a].type])u=[f(h(u),n)];else{if(n=T.filter[t[a].type].apply(null,t[a].matches),n[F]){for(i=++a;o>i&&!T.relative[t[i].type];i++);return v(a>1&&h(u),a>1&&d(t.slice(0,a-1).concat({value:" "===t[a-2].type?"*":""})).replace(lt,"$1"),n,i>a&&y(t.slice(a,i)),o>i&&y(t=t.slice(i)),o>i&&d(t))}u.push(n)}return h(u)}function b(t,n){var o=n.length>0,r=t.length>0,s=function(i,s,a,l,c){var u,p,d,f=0,h="0",g=i&&[],v=[],y=N,b=i||r&&T.find.TAG("*",c),x=M+=null==y?1:Math.random()||.1,w=b.length;for(c&&(N=s!==O&&s);h!==w&&null!=(u=b[h]);h++){if(r&&u){for(p=0;d=t[p++];)if(d(u,s,a)){l.push(u);break}c&&(M=x)}o&&((u=!d&&u)&&f--,i&&g.push(u))}if(f+=h,o&&h!==f){for(p=0;d=n[p++];)d(g,v,s,a);if(i){if(f>0)for(;h--;)g[h]||v[h]||(v[h]=K.call(l));v=m(v)}J.apply(l,v),c&&!i&&v.length>0&&f+n.length>1&&e.uniqueSort(l)}return c&&(M=x,N=y),g};return o?i(s):s}var x,w,T,C,E,k,$,S,N,D,A,j,O,I,R,L,H,P,q,F="sizzle"+1*new Date,W=t.document,M=0,U=0,B=n(),_=n(),z=n(),V=function(t,e){return t===e&&(A=!0),0},X=1<<31,Y={}.hasOwnProperty,G=[],K=G.pop,Q=G.push,J=G.push,Z=G.slice,tt=function(t,e){for(var n=0,i=t.length;i>n;n++)if(t[n]===e)return n;return-1},et="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",nt="[\\x20\\t\\r\\n\\f]",it="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",ot=it.replace("w","w#"),rt="\\["+nt+"*("+it+")(?:"+nt+"*([*^$|!~]?=)"+nt+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+ot+"))|)"+nt+"*\\]",st=":("+it+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+rt+")*)|.*)\\)|)",at=new RegExp(nt+"+","g"),lt=new RegExp("^"+nt+"+|((?:^|[^\\\\])(?:\\\\.)*)"+nt+"+$","g"),ct=new RegExp("^"+nt+"*,"+nt+"*"),ut=new RegExp("^"+nt+"*([>+~]|"+nt+")"+nt+"*"),pt=new RegExp("="+nt+"*([^\\]'\"]*?)"+nt+"*\\]","g"),dt=new RegExp(st),ft=new RegExp("^"+ot+"$"),ht={ID:new RegExp("^#("+it+")"),CLASS:new RegExp("^\\.("+it+")"),TAG:new RegExp("^("+it.replace("w","w*")+")"),ATTR:new RegExp("^"+rt),PSEUDO:new RegExp("^"+st),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+nt+"*(even|odd|(([+-]|)(\\d*)n|)"+nt+"*(?:([+-]|)"+nt+"*(\\d+)|))"+nt+"*\\)|)","i"),bool:new RegExp("^(?:"+et+")$","i"),needsContext:new RegExp("^"+nt+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+nt+"*((?:-\\d)?\\d*)"+nt+"*\\)|)(?=[^-]|$)","i")},gt=/^(?:input|select|textarea|button)$/i,mt=/^h\d$/i,vt=/^[^{]+\{\s*\[native \w/,yt=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,bt=/[+~]/,xt=/'|\\/g,wt=new RegExp("\\\\([\\da-f]{1,6}"+nt+"?|("+nt+")|.)","ig"),Tt=function(t,e,n){var i="0x"+e-65536;return i!==i||n?e:0>i?String.fromCharCode(i+65536):String.fromCharCode(i>>10|55296,1023&i|56320)},Ct=function(){j()};try{J.apply(G=Z.call(W.childNodes),W.childNodes),G[W.childNodes.length].nodeType}catch(Et){J={apply:G.length?function(t,e){Q.apply(t,Z.call(e))}:function(t,e){for(var n=t.length,i=0;t[n++]=e[i++];);t.length=n-1}}}w=e.support={},E=e.isXML=function(t){var e=t&&(t.ownerDocument||t).documentElement;return e?"HTML"!==e.nodeName:!1},j=e.setDocument=function(t){var e,n,i=t?t.ownerDocument||t:W;return i!==O&&9===i.nodeType&&i.documentElement?(O=i,I=i.documentElement,n=i.defaultView,n&&n!==n.top&&(n.addEventListener?n.addEventListener("unload",Ct,!1):n.attachEvent&&n.attachEvent("onunload",Ct)),R=!E(i),w.attributes=o(function(t){return t.className="i",!t.getAttribute("className")}),w.getElementsByTagName=o(function(t){return t.appendChild(i.createComment("")),!t.getElementsByTagName("*").length}),w.getElementsByClassName=vt.test(i.getElementsByClassName),w.getById=o(function(t){return I.appendChild(t).id=F,!i.getElementsByName||!i.getElementsByName(F).length}),w.getById?(T.find.ID=function(t,e){if("undefined"!=typeof e.getElementById&&R){var n=e.getElementById(t);return n&&n.parentNode?[n]:[]}},T.filter.ID=function(t){var e=t.replace(wt,Tt);return function(t){return t.getAttribute("id")===e}}):(delete T.find.ID,T.filter.ID=function(t){var e=t.replace(wt,Tt);return function(t){var n="undefined"!=typeof t.getAttributeNode&&t.getAttributeNode("id");return n&&n.value===e}}),T.find.TAG=w.getElementsByTagName?function(t,e){return"undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t):w.qsa?e.querySelectorAll(t):void 0}:function(t,e){var n,i=[],o=0,r=e.getElementsByTagName(t);if("*"===t){for(;n=r[o++];)1===n.nodeType&&i.push(n);return i}return r},T.find.CLASS=w.getElementsByClassName&&function(t,e){return R?e.getElementsByClassName(t):void 0},H=[],L=[],(w.qsa=vt.test(i.querySelectorAll))&&(o(function(t){I.appendChild(t).innerHTML="",t.querySelectorAll("[msallowcapture^='']").length&&L.push("[*^$]="+nt+"*(?:''|\"\")"),t.querySelectorAll("[selected]").length||L.push("\\["+nt+"*(?:value|"+et+")"),t.querySelectorAll("[id~="+F+"-]").length||L.push("~="),t.querySelectorAll(":checked").length||L.push(":checked"),t.querySelectorAll("a#"+F+"+*").length||L.push(".#.+[+~]")}),o(function(t){var e=i.createElement("input");e.setAttribute("type","hidden"),t.appendChild(e).setAttribute("name","D"),t.querySelectorAll("[name=d]").length&&L.push("name"+nt+"*[*^$|!~]?="),t.querySelectorAll(":enabled").length||L.push(":enabled",":disabled"),t.querySelectorAll("*,:x"),L.push(",.*:")})),(w.matchesSelector=vt.test(P=I.matches||I.webkitMatchesSelector||I.mozMatchesSelector||I.oMatchesSelector||I.msMatchesSelector))&&o(function(t){w.disconnectedMatch=P.call(t,"div"),P.call(t,"[s!='']:x"),H.push("!=",st)}),L=L.length&&new RegExp(L.join("|")),H=H.length&&new RegExp(H.join("|")),e=vt.test(I.compareDocumentPosition),q=e||vt.test(I.contains)?function(t,e){var n=9===t.nodeType?t.documentElement:t,i=e&&e.parentNode;return t===i||!(!i||1!==i.nodeType||!(n.contains?n.contains(i):t.compareDocumentPosition&&16&t.compareDocumentPosition(i)))}:function(t,e){if(e)for(;e=e.parentNode;)if(e===t)return!0;return!1},V=e?function(t,e){if(t===e)return A=!0,0;var n=!t.compareDocumentPosition-!e.compareDocumentPosition;return n?n:(n=(t.ownerDocument||t)===(e.ownerDocument||e)?t.compareDocumentPosition(e):1,1&n||!w.sortDetached&&e.compareDocumentPosition(t)===n?t===i||t.ownerDocument===W&&q(W,t)?-1:e===i||e.ownerDocument===W&&q(W,e)?1:D?tt(D,t)-tt(D,e):0:4&n?-1:1)}:function(t,e){if(t===e)return A=!0,0;var n,o=0,r=t.parentNode,a=e.parentNode,l=[t],c=[e];if(!r||!a)return t===i?-1:e===i?1:r?-1:a?1:D?tt(D,t)-tt(D,e):0;if(r===a)return s(t,e);for(n=t;n=n.parentNode;)l.unshift(n);for(n=e;n=n.parentNode;)c.unshift(n);for(;l[o]===c[o];)o++;return o?s(l[o],c[o]):l[o]===W?-1:c[o]===W?1:0},i):O},e.matches=function(t,n){return e(t,null,null,n)},e.matchesSelector=function(t,n){if((t.ownerDocument||t)!==O&&j(t),n=n.replace(pt,"='$1']"),w.matchesSelector&&R&&(!H||!H.test(n))&&(!L||!L.test(n)))try{var i=P.call(t,n);if(i||w.disconnectedMatch||t.document&&11!==t.document.nodeType)return i}catch(o){}return e(n,O,null,[t]).length>0},e.contains=function(t,e){return(t.ownerDocument||t)!==O&&j(t),q(t,e)},e.attr=function(t,e){(t.ownerDocument||t)!==O&&j(t);var n=T.attrHandle[e.toLowerCase()],i=n&&Y.call(T.attrHandle,e.toLowerCase())?n(t,e,!R):void 0;return void 0!==i?i:w.attributes||!R?t.getAttribute(e):(i=t.getAttributeNode(e))&&i.specified?i.value:null},e.error=function(t){throw new Error("Syntax error, unrecognized expression: "+t)},e.uniqueSort=function(t){var e,n=[],i=0,o=0;if(A=!w.detectDuplicates,D=!w.sortStable&&t.slice(0),t.sort(V),A){for(;e=t[o++];)e===t[o]&&(i=n.push(o));for(;i--;)t.splice(n[i],1)}return D=null,t},C=e.getText=function(t){var e,n="",i=0,o=t.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof t.textContent)return t.textContent;for(t=t.firstChild;t;t=t.nextSibling)n+=C(t)}else if(3===o||4===o)return t.nodeValue}else for(;e=t[i++];)n+=C(e);return n},T=e.selectors={cacheLength:50,createPseudo:i,match:ht,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(t){return t[1]=t[1].replace(wt,Tt),t[3]=(t[3]||t[4]||t[5]||"").replace(wt,Tt),"~="===t[2]&&(t[3]=" "+t[3]+" "),t.slice(0,4)},CHILD:function(t){return t[1]=t[1].toLowerCase(),"nth"===t[1].slice(0,3)?(t[3]||e.error(t[0]),t[4]=+(t[4]?t[5]+(t[6]||1):2*("even"===t[3]||"odd"===t[3])),t[5]=+(t[7]+t[8]||"odd"===t[3])):t[3]&&e.error(t[0]),t},PSEUDO:function(t){var e,n=!t[6]&&t[2];return ht.CHILD.test(t[0])?null:(t[3]?t[2]=t[4]||t[5]||"":n&&dt.test(n)&&(e=k(n,!0))&&(e=n.indexOf(")",n.length-e)-n.length)&&(t[0]=t[0].slice(0,e),t[2]=n.slice(0,e)),t.slice(0,3))}},filter:{TAG:function(t){var e=t.replace(wt,Tt).toLowerCase();return"*"===t?function(){return!0}:function(t){return t.nodeName&&t.nodeName.toLowerCase()===e}},CLASS:function(t){var e=B[t+" "];return e||(e=new RegExp("(^|"+nt+")"+t+"("+nt+"|$)"))&&B(t,function(t){return e.test("string"==typeof t.className&&t.className||"undefined"!=typeof t.getAttribute&&t.getAttribute("class")||"")})},ATTR:function(t,n,i){return function(o){var r=e.attr(o,t);return null==r?"!="===n:n?(r+="","="===n?r===i:"!="===n?r!==i:"^="===n?i&&0===r.indexOf(i):"*="===n?i&&r.indexOf(i)>-1:"$="===n?i&&r.slice(-i.length)===i:"~="===n?(" "+r.replace(at," ")+" ").indexOf(i)>-1:"|="===n?r===i||r.slice(0,i.length+1)===i+"-":!1):!0}},CHILD:function(t,e,n,i,o){var r="nth"!==t.slice(0,3),s="last"!==t.slice(-4),a="of-type"===e;return 1===i&&0===o?function(t){return!!t.parentNode}:function(e,n,l){var c,u,p,d,f,h,g=r!==s?"nextSibling":"previousSibling",m=e.parentNode,v=a&&e.nodeName.toLowerCase(),y=!l&&!a;if(m){if(r){for(;g;){for(p=e;p=p[g];)if(a?p.nodeName.toLowerCase()===v:1===p.nodeType)return!1;h=g="only"===t&&!h&&"nextSibling"}return!0}if(h=[s?m.firstChild:m.lastChild],s&&y){for(u=m[F]||(m[F]={}),c=u[t]||[],f=c[0]===M&&c[1],d=c[0]===M&&c[2],p=f&&m.childNodes[f];p=++f&&p&&p[g]||(d=f=0)||h.pop();)if(1===p.nodeType&&++d&&p===e){u[t]=[M,f,d];break}}else if(y&&(c=(e[F]||(e[F]={}))[t])&&c[0]===M)d=c[1];else for(;(p=++f&&p&&p[g]||(d=f=0)||h.pop())&&((a?p.nodeName.toLowerCase()!==v:1!==p.nodeType)||!++d||(y&&((p[F]||(p[F]={}))[t]=[M,d]),p!==e)););return d-=o,d===i||d%i===0&&d/i>=0}}},PSEUDO:function(t,n){var o,r=T.pseudos[t]||T.setFilters[t.toLowerCase()]||e.error("unsupported pseudo: "+t);return r[F]?r(n):r.length>1?(o=[t,t,"",n],T.setFilters.hasOwnProperty(t.toLowerCase())?i(function(t,e){for(var i,o=r(t,n),s=o.length;s--;)i=tt(t,o[s]),t[i]=!(e[i]=o[s])}):function(t){return r(t,0,o)}):r}},pseudos:{not:i(function(t){var e=[],n=[],o=$(t.replace(lt,"$1"));return o[F]?i(function(t,e,n,i){for(var r,s=o(t,null,i,[]),a=t.length;a--;)(r=s[a])&&(t[a]=!(e[a]=r))}):function(t,i,r){return e[0]=t,o(e,null,r,n),e[0]=null,!n.pop()}}),has:i(function(t){return function(n){return e(t,n).length>0}}),contains:i(function(t){return t=t.replace(wt,Tt),function(e){return(e.textContent||e.innerText||C(e)).indexOf(t)>-1}}),lang:i(function(t){return ft.test(t||"")||e.error("unsupported lang: "+t),t=t.replace(wt,Tt).toLowerCase(),function(e){var n;do if(n=R?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return n=n.toLowerCase(),n===t||0===n.indexOf(t+"-");while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var n=t.location&&t.location.hash;return n&&n.slice(1)===e.id},root:function(t){return t===I},focus:function(t){return t===O.activeElement&&(!O.hasFocus||O.hasFocus())&&!!(t.type||t.href||~t.tabIndex)},enabled:function(t){return t.disabled===!1},disabled:function(t){return t.disabled===!0},checked:function(t){var e=t.nodeName.toLowerCase();return"input"===e&&!!t.checked||"option"===e&&!!t.selected},selected:function(t){return t.parentNode&&t.parentNode.selectedIndex,t.selected===!0},empty:function(t){for(t=t.firstChild;t;t=t.nextSibling)if(t.nodeType<6)return!1;return!0},parent:function(t){return!T.pseudos.empty(t)},header:function(t){return mt.test(t.nodeName)},input:function(t){return gt.test(t.nodeName)},button:function(t){var e=t.nodeName.toLowerCase();return"input"===e&&"button"===t.type||"button"===e},text:function(t){var e;return"input"===t.nodeName.toLowerCase()&&"text"===t.type&&(null==(e=t.getAttribute("type"))||"text"===e.toLowerCase())},first:c(function(){return[0]}),last:c(function(t,e){return[e-1]}),eq:c(function(t,e,n){return[0>n?n+e:n]}),even:c(function(t,e){for(var n=0;e>n;n+=2)t.push(n);return t}),odd:c(function(t,e){for(var n=1;e>n;n+=2)t.push(n);return t}),lt:c(function(t,e,n){for(var i=0>n?n+e:n;--i>=0;)t.push(i);return t}),gt:c(function(t,e,n){for(var i=0>n?n+e:n;++i2&&"ID"===(s=r[0]).type&&w.getById&&9===e.nodeType&&R&&T.relative[r[1].type]){if(e=(T.find.ID(s.matches[0].replace(wt,Tt),e)||[])[0],!e)return n;c&&(e=e.parentNode),t=t.slice(r.shift().value.length)}for(o=ht.needsContext.test(t)?0:r.length;o--&&(s=r[o],!T.relative[a=s.type]);)if((l=T.find[a])&&(i=l(s.matches[0].replace(wt,Tt),bt.test(r[0].type)&&u(e.parentNode)||e))){if(r.splice(o,1),t=i.length&&d(r),!t)return J.apply(n,i),n;break}}return(c||$(t,p))(i,e,!R,n,bt.test(t)&&u(e.parentNode)||e),n},w.sortStable=F.split("").sort(V).join("")===F,w.detectDuplicates=!!A,j(),w.sortDetached=o(function(t){return 1&t.compareDocumentPosition(O.createElement("div"))}),o(function(t){return t.innerHTML="","#"===t.firstChild.getAttribute("href")})||r("type|href|height|width",function(t,e,n){return n?void 0:t.getAttribute(e,"type"===e.toLowerCase()?1:2)}),w.attributes&&o(function(t){return t.innerHTML="",t.firstChild.setAttribute("value",""),""===t.firstChild.getAttribute("value")})||r("value",function(t,e,n){return n||"input"!==t.nodeName.toLowerCase()?void 0:t.defaultValue}),o(function(t){return null==t.getAttribute("disabled")})||r(et,function(t,e,n){var i;return n?void 0:t[e]===!0?e.toLowerCase():(i=t.getAttributeNode(e))&&i.specified?i.value:null}),e}(n);it.find=lt,it.expr=lt.selectors,it.expr[":"]=it.expr.pseudos,it.unique=lt.uniqueSort,it.text=lt.getText,it.isXMLDoc=lt.isXML,it.contains=lt.contains;var ct=it.expr.match.needsContext,ut=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,pt=/^.[^:#\[\.,]*$/;it.filter=function(t,e,n){var i=e[0];return n&&(t=":not("+t+")"),1===e.length&&1===i.nodeType?it.find.matchesSelector(i,t)?[i]:[]:it.find.matches(t,it.grep(e,function(t){return 1===t.nodeType}))},it.fn.extend({find:function(t){var e,n=this.length,i=[],o=this;if("string"!=typeof t)return this.pushStack(it(t).filter(function(){for(e=0;n>e;e++)if(it.contains(o[e],this))return!0}));for(e=0;n>e;e++)it.find(t,o[e],i);return i=this.pushStack(n>1?it.unique(i):i),i.selector=this.selector?this.selector+" "+t:t,i},filter:function(t){return this.pushStack(a(this,t||[],!1))},not:function(t){return this.pushStack(a(this,t||[],!0))},is:function(t){return!!a(this,"string"==typeof t&&ct.test(t)?it(t):t||[],!1).length}});var dt,ft=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,ht=it.fn.init=function(t,e){var n,i;if(!t)return this;if("string"==typeof t){if(n="<"===t[0]&&">"===t[t.length-1]&&t.length>=3?[null,t,null]:ft.exec(t),!n||!n[1]&&e)return!e||e.jquery?(e||dt).find(t):this.constructor(e).find(t);if(n[1]){if(e=e instanceof it?e[0]:e,it.merge(this,it.parseHTML(n[1],e&&e.nodeType?e.ownerDocument||e:et,!0)),ut.test(n[1])&&it.isPlainObject(e))for(n in e)it.isFunction(this[n])?this[n](e[n]):this.attr(n,e[n]);return this}return i=et.getElementById(n[2]),i&&i.parentNode&&(this.length=1,this[0]=i),this.context=et,this.selector=t,this}return t.nodeType?(this.context=this[0]=t,this.length=1,this):it.isFunction(t)?"undefined"!=typeof dt.ready?dt.ready(t):t(it):(void 0!==t.selector&&(this.selector=t.selector,this.context=t.context),it.makeArray(t,this))};ht.prototype=it.fn,dt=it(et);var gt=/^(?:parents|prev(?:Until|All))/,mt={children:!0,contents:!0,next:!0,prev:!0};it.extend({dir:function(t,e,n){for(var i=[],o=void 0!==n;(t=t[e])&&9!==t.nodeType;)if(1===t.nodeType){if(o&&it(t).is(n))break;i.push(t)}return i},sibling:function(t,e){for(var n=[];t;t=t.nextSibling)1===t.nodeType&&t!==e&&n.push(t);return n}}),it.fn.extend({has:function(t){var e=it(t,this),n=e.length;return this.filter(function(){for(var t=0;n>t;t++)if(it.contains(this,e[t]))return!0})},closest:function(t,e){for(var n,i=0,o=this.length,r=[],s=ct.test(t)||"string"!=typeof t?it(t,e||this.context):0;o>i;i++)for(n=this[i];n&&n!==e;n=n.parentNode)if(n.nodeType<11&&(s?s.index(n)>-1:1===n.nodeType&&it.find.matchesSelector(n,t))){r.push(n);break}return this.pushStack(r.length>1?it.unique(r):r)},index:function(t){return t?"string"==typeof t?K.call(it(t),this[0]):K.call(this,t.jquery?t[0]:t):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(t,e){return this.pushStack(it.unique(it.merge(this.get(),it(t,e))))},addBack:function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}}),it.each({parent:function(t){var e=t.parentNode;return e&&11!==e.nodeType?e:null},parents:function(t){return it.dir(t,"parentNode")},parentsUntil:function(t,e,n){return it.dir(t,"parentNode",n)},next:function(t){return l(t,"nextSibling")},prev:function(t){return l(t,"previousSibling")},nextAll:function(t){return it.dir(t,"nextSibling")},prevAll:function(t){return it.dir(t,"previousSibling")},nextUntil:function(t,e,n){return it.dir(t,"nextSibling",n)},prevUntil:function(t,e,n){return it.dir(t,"previousSibling",n)},siblings:function(t){return it.sibling((t.parentNode||{}).firstChild,t)},children:function(t){return it.sibling(t.firstChild)},contents:function(t){return t.contentDocument||it.merge([],t.childNodes)}},function(t,e){it.fn[t]=function(n,i){var o=it.map(this,e,n);return"Until"!==t.slice(-5)&&(i=n),i&&"string"==typeof i&&(o=it.filter(i,o)),this.length>1&&(mt[t]||it.unique(o),gt.test(t)&&o.reverse()),this.pushStack(o)}});var vt=/\S+/g,yt={};it.Callbacks=function(t){t="string"==typeof t?yt[t]||c(t):it.extend({},t);var e,n,i,o,r,s,a=[],l=!t.once&&[],u=function(c){for(e=t.memory&&c,n=!0,s=o||0,o=0,r=a.length,i=!0;a&&r>s;s++)if(a[s].apply(c[0],c[1])===!1&&t.stopOnFalse){e=!1;break}i=!1,a&&(l?l.length&&u(l.shift()):e?a=[]:p.disable())},p={add:function(){if(a){var n=a.length;!function s(e){it.each(e,function(e,n){var i=it.type(n);"function"===i?t.unique&&p.has(n)||a.push(n):n&&n.length&&"string"!==i&&s(n)})}(arguments),i?r=a.length:e&&(o=n,u(e))}return this},remove:function(){return a&&it.each(arguments,function(t,e){for(var n;(n=it.inArray(e,a,n))>-1;)a.splice(n,1),i&&(r>=n&&r--,s>=n&&s--)}),this},has:function(t){return t?it.inArray(t,a)>-1:!(!a||!a.length)},empty:function(){return a=[],r=0,this},disable:function(){return a=l=e=void 0,this},disabled:function(){return!a},lock:function(){return l=void 0,e||p.disable(),this},locked:function(){return!l},fireWith:function(t,e){return!a||n&&!l||(e=e||[],e=[t,e.slice?e.slice():e],i?l.push(e):u(e)),this},fire:function(){return p.fireWith(this,arguments),this},fired:function(){return!!n}};return p},it.extend({Deferred:function(t){var e=[["resolve","done",it.Callbacks("once memory"),"resolved"],["reject","fail",it.Callbacks("once memory"),"rejected"],["notify","progress",it.Callbacks("memory")]],n="pending",i={state:function(){return n},always:function(){return o.done(arguments).fail(arguments),this},then:function(){var t=arguments;return it.Deferred(function(n){it.each(e,function(e,r){var s=it.isFunction(t[e])&&t[e];o[r[1]](function(){var t=s&&s.apply(this,arguments);t&&it.isFunction(t.promise)?t.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[r[0]+"With"](this===i?n.promise():this,s?[t]:arguments)})}),t=null}).promise()},promise:function(t){return null!=t?it.extend(t,i):i}},o={};return i.pipe=i.then,it.each(e,function(t,r){var s=r[2],a=r[3];i[r[1]]=s.add,a&&s.add(function(){n=a},e[1^t][2].disable,e[2][2].lock),o[r[0]]=function(){return o[r[0]+"With"](this===o?i:this,arguments),this},o[r[0]+"With"]=s.fireWith}),i.promise(o),t&&t.call(o,o),o},when:function(t){var e,n,i,o=0,r=X.call(arguments),s=r.length,a=1!==s||t&&it.isFunction(t.promise)?s:0,l=1===a?t:it.Deferred(),c=function(t,n,i){return function(o){n[t]=this,i[t]=arguments.length>1?X.call(arguments):o,i===e?l.notifyWith(n,i):--a||l.resolveWith(n,i)}};if(s>1)for(e=new Array(s),n=new Array(s),i=new Array(s);s>o;o++)r[o]&&it.isFunction(r[o].promise)?r[o].promise().done(c(o,i,r)).fail(l.reject).progress(c(o,n,e)):--a;return a||l.resolveWith(i,r),l.promise()}});var bt;it.fn.ready=function(t){return it.ready.promise().done(t),this},it.extend({isReady:!1,readyWait:1,holdReady:function(t){t?it.readyWait++:it.ready(!0)},ready:function(t){(t===!0?--it.readyWait:it.isReady)||(it.isReady=!0,t!==!0&&--it.readyWait>0||(bt.resolveWith(et,[it]),it.fn.triggerHandler&&(it(et).triggerHandler("ready"),it(et).off("ready"))))}}),it.ready.promise=function(t){return bt||(bt=it.Deferred(),"complete"===et.readyState?setTimeout(it.ready):(et.addEventListener("DOMContentLoaded",u,!1),n.addEventListener("load",u,!1))),bt.promise(t)},it.ready.promise();var xt=it.access=function(t,e,n,i,o,r,s){var a=0,l=t.length,c=null==n;if("object"===it.type(n)){o=!0;for(a in n)it.access(t,e,a,n[a],!0,r,s)}else if(void 0!==i&&(o=!0,it.isFunction(i)||(s=!0),c&&(s?(e.call(t,i),e=null):(c=e,e=function(t,e,n){return c.call(it(t),n)})),e))for(;l>a;a++)e(t[a],n,s?i:i.call(t[a],a,e(t[a],n)));return o?t:c?e.call(t):l?e(t[0],n):r};it.acceptData=function(t){return 1===t.nodeType||9===t.nodeType||!+t.nodeType},p.uid=1,p.accepts=it.acceptData,p.prototype={key:function(t){if(!p.accepts(t))return 0;var e={},n=t[this.expando];if(!n){n=p.uid++;try{e[this.expando]={value:n},Object.defineProperties(t,e)}catch(i){e[this.expando]=n,it.extend(t,e)}}return this.cache[n]||(this.cache[n]={}),n},set:function(t,e,n){var i,o=this.key(t),r=this.cache[o];if("string"==typeof e)r[e]=n;else if(it.isEmptyObject(r))it.extend(this.cache[o],e);else for(i in e)r[i]=e[i];return r},get:function(t,e){var n=this.cache[this.key(t)];return void 0===e?n:n[e]},access:function(t,e,n){var i;return void 0===e||e&&"string"==typeof e&&void 0===n?(i=this.get(t,e),void 0!==i?i:this.get(t,it.camelCase(e))):(this.set(t,e,n),void 0!==n?n:e)},remove:function(t,e){var n,i,o,r=this.key(t),s=this.cache[r];if(void 0===e)this.cache[r]={};else{it.isArray(e)?i=e.concat(e.map(it.camelCase)):(o=it.camelCase(e),e in s?i=[e,o]:(i=o,i=i in s?[i]:i.match(vt)||[])),n=i.length;for(;n--;)delete s[i[n]]}},hasData:function(t){return!it.isEmptyObject(this.cache[t[this.expando]]||{})},discard:function(t){t[this.expando]&&delete this.cache[t[this.expando]]}};var wt=new p,Tt=new p,Ct=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Et=/([A-Z])/g;it.extend({hasData:function(t){return Tt.hasData(t)||wt.hasData(t)},data:function(t,e,n){return Tt.access(t,e,n)},removeData:function(t,e){Tt.remove(t,e)},_data:function(t,e,n){return wt.access(t,e,n)},_removeData:function(t,e){wt.remove(t,e)}}),it.fn.extend({data:function(t,e){var n,i,o,r=this[0],s=r&&r.attributes;if(void 0===t){if(this.length&&(o=Tt.get(r),1===r.nodeType&&!wt.get(r,"hasDataAttrs"))){for(n=s.length;n--;)s[n]&&(i=s[n].name,0===i.indexOf("data-")&&(i=it.camelCase(i.slice(5)),d(r,i,o[i])));wt.set(r,"hasDataAttrs",!0)}return o}return"object"==typeof t?this.each(function(){Tt.set(this,t)}):xt(this,function(e){var n,i=it.camelCase(t);if(r&&void 0===e){if(n=Tt.get(r,t),void 0!==n)return n;if(n=Tt.get(r,i),void 0!==n)return n;if(n=d(r,i,void 0),void 0!==n)return n}else this.each(function(){var n=Tt.get(this,i);Tt.set(this,i,e),-1!==t.indexOf("-")&&void 0!==n&&Tt.set(this,t,e)})},null,e,arguments.length>1,null,!0)},removeData:function(t){return this.each(function(){Tt.remove(this,t)})}}),it.extend({queue:function(t,e,n){var i;return t?(e=(e||"fx")+"queue",i=wt.get(t,e),n&&(!i||it.isArray(n)?i=wt.access(t,e,it.makeArray(n)):i.push(n)),i||[]):void 0},dequeue:function(t,e){e=e||"fx";var n=it.queue(t,e),i=n.length,o=n.shift(),r=it._queueHooks(t,e),s=function(){it.dequeue(t,e)};"inprogress"===o&&(o=n.shift(),i--),o&&("fx"===e&&n.unshift("inprogress"),delete r.stop,o.call(t,s,r)),!i&&r&&r.empty.fire()},_queueHooks:function(t,e){var n=e+"queueHooks";return wt.get(t,n)||wt.access(t,n,{empty:it.Callbacks("once memory").add(function(){wt.remove(t,[e+"queue",n])})})}}),it.fn.extend({queue:function(t,e){var n=2;return"string"!=typeof t&&(e=t,t="fx",n--),arguments.lengthx",tt.noCloneChecked=!!e.cloneNode(!0).lastChild.defaultValue}();var Dt="undefined";tt.focusinBubbles="onfocusin"in n;var At=/^key/,jt=/^(?:mouse|pointer|contextmenu)|click/,Ot=/^(?:focusinfocus|focusoutblur)$/,It=/^([^.]*)(?:\.(.+)|)$/;it.event={global:{},add:function(t,e,n,i,o){var r,s,a,l,c,u,p,d,f,h,g,m=wt.get(t);if(m)for(n.handler&&(r=n,n=r.handler,o=r.selector),n.guid||(n.guid=it.guid++),(l=m.events)||(l=m.events={}),(s=m.handle)||(s=m.handle=function(e){return typeof it!==Dt&&it.event.triggered!==e.type?it.event.dispatch.apply(t,arguments):void 0}),e=(e||"").match(vt)||[""],c=e.length;c--;)a=It.exec(e[c])||[],f=g=a[1],h=(a[2]||"").split(".").sort(),f&&(p=it.event.special[f]||{},f=(o?p.delegateType:p.bindType)||f,p=it.event.special[f]||{},u=it.extend({type:f,origType:g,data:i,handler:n,guid:n.guid,selector:o,needsContext:o&&it.expr.match.needsContext.test(o),namespace:h.join(".")},r),(d=l[f])||(d=l[f]=[],d.delegateCount=0,p.setup&&p.setup.call(t,i,h,s)!==!1||t.addEventListener&&t.addEventListener(f,s,!1)),p.add&&(p.add.call(t,u),u.handler.guid||(u.handler.guid=n.guid)),o?d.splice(d.delegateCount++,0,u):d.push(u),it.event.global[f]=!0)},remove:function(t,e,n,i,o){var r,s,a,l,c,u,p,d,f,h,g,m=wt.hasData(t)&&wt.get(t);if(m&&(l=m.events)){for(e=(e||"").match(vt)||[""],c=e.length;c--;)if(a=It.exec(e[c])||[],f=g=a[1],h=(a[2]||"").split(".").sort(),f){for(p=it.event.special[f]||{},f=(i?p.delegateType:p.bindType)||f,d=l[f]||[],a=a[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),s=r=d.length;r--;)u=d[r],!o&&g!==u.origType||n&&n.guid!==u.guid||a&&!a.test(u.namespace)||i&&i!==u.selector&&("**"!==i||!u.selector)||(d.splice(r,1),u.selector&&d.delegateCount--,p.remove&&p.remove.call(t,u));s&&!d.length&&(p.teardown&&p.teardown.call(t,h,m.handle)!==!1||it.removeEvent(t,f,m.handle),delete l[f])}else for(f in l)it.event.remove(t,f+e[c],n,i,!0);it.isEmptyObject(l)&&(delete m.handle,wt.remove(t,"events"))}},trigger:function(t,e,i,o){var r,s,a,l,c,u,p,d=[i||et],f=Z.call(t,"type")?t.type:t,h=Z.call(t,"namespace")?t.namespace.split("."):[];if(s=a=i=i||et,3!==i.nodeType&&8!==i.nodeType&&!Ot.test(f+it.event.triggered)&&(f.indexOf(".")>=0&&(h=f.split("."),f=h.shift(),h.sort()),c=f.indexOf(":")<0&&"on"+f,t=t[it.expando]?t:new it.Event(f,"object"==typeof t&&t), t.isTrigger=o?2:3,t.namespace=h.join("."),t.namespace_re=t.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=i),e=null==e?[t]:it.makeArray(e,[t]),p=it.event.special[f]||{},o||!p.trigger||p.trigger.apply(i,e)!==!1)){if(!o&&!p.noBubble&&!it.isWindow(i)){for(l=p.delegateType||f,Ot.test(l+f)||(s=s.parentNode);s;s=s.parentNode)d.push(s),a=s;a===(i.ownerDocument||et)&&d.push(a.defaultView||a.parentWindow||n)}for(r=0;(s=d[r++])&&!t.isPropagationStopped();)t.type=r>1?l:p.bindType||f,u=(wt.get(s,"events")||{})[t.type]&&wt.get(s,"handle"),u&&u.apply(s,e),u=c&&s[c],u&&u.apply&&it.acceptData(s)&&(t.result=u.apply(s,e),t.result===!1&&t.preventDefault());return t.type=f,o||t.isDefaultPrevented()||p._default&&p._default.apply(d.pop(),e)!==!1||!it.acceptData(i)||c&&it.isFunction(i[f])&&!it.isWindow(i)&&(a=i[c],a&&(i[c]=null),it.event.triggered=f,i[f](),it.event.triggered=void 0,a&&(i[c]=a)),t.result}},dispatch:function(t){t=it.event.fix(t);var e,n,i,o,r,s=[],a=X.call(arguments),l=(wt.get(this,"events")||{})[t.type]||[],c=it.event.special[t.type]||{};if(a[0]=t,t.delegateTarget=this,!c.preDispatch||c.preDispatch.call(this,t)!==!1){for(s=it.event.handlers.call(this,t,l),e=0;(o=s[e++])&&!t.isPropagationStopped();)for(t.currentTarget=o.elem,n=0;(r=o.handlers[n++])&&!t.isImmediatePropagationStopped();)(!t.namespace_re||t.namespace_re.test(r.namespace))&&(t.handleObj=r,t.data=r.data,i=((it.event.special[r.origType]||{}).handle||r.handler).apply(o.elem,a),void 0!==i&&(t.result=i)===!1&&(t.preventDefault(),t.stopPropagation()));return c.postDispatch&&c.postDispatch.call(this,t),t.result}},handlers:function(t,e){var n,i,o,r,s=[],a=e.delegateCount,l=t.target;if(a&&l.nodeType&&(!t.button||"click"!==t.type))for(;l!==this;l=l.parentNode||this)if(l.disabled!==!0||"click"!==t.type){for(i=[],n=0;a>n;n++)r=e[n],o=r.selector+" ",void 0===i[o]&&(i[o]=r.needsContext?it(o,this).index(l)>=0:it.find(o,this,null,[l]).length),i[o]&&i.push(r);i.length&&s.push({elem:l,handlers:i})}return a]*)\/>/gi,Lt=/<([\w:]+)/,Ht=/<|&#?\w+;/,Pt=/<(?:script|style|link)/i,qt=/checked\s*(?:[^=]|=\s*.checked.)/i,Ft=/^$|\/(?:java|ecma)script/i,Wt=/^true\/(.*)/,Mt=/^\s*\s*$/g,Ut={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};Ut.optgroup=Ut.option,Ut.tbody=Ut.tfoot=Ut.colgroup=Ut.caption=Ut.thead,Ut.th=Ut.td,it.extend({clone:function(t,e,n){var i,o,r,s,a=t.cloneNode(!0),l=it.contains(t.ownerDocument,t);if(!(tt.noCloneChecked||1!==t.nodeType&&11!==t.nodeType||it.isXMLDoc(t)))for(s=w(a),r=w(t),i=0,o=r.length;o>i;i++)T(r[i],s[i]);if(e)if(n)for(r=r||w(t),s=s||w(a),i=0,o=r.length;o>i;i++)x(r[i],s[i]);else x(t,a);return s=w(a,"script"),s.length>0&&b(s,!l&&w(t,"script")),a},buildFragment:function(t,e,n,i){for(var o,r,s,a,l,c,u=e.createDocumentFragment(),p=[],d=0,f=t.length;f>d;d++)if(o=t[d],o||0===o)if("object"===it.type(o))it.merge(p,o.nodeType?[o]:o);else if(Ht.test(o)){for(r=r||u.appendChild(e.createElement("div")),s=(Lt.exec(o)||["",""])[1].toLowerCase(),a=Ut[s]||Ut._default,r.innerHTML=a[1]+o.replace(Rt,"<$1>")+a[2],c=a[0];c--;)r=r.lastChild;it.merge(p,r.childNodes),r=u.firstChild,r.textContent=""}else p.push(e.createTextNode(o));for(u.textContent="",d=0;o=p[d++];)if((!i||-1===it.inArray(o,i))&&(l=it.contains(o.ownerDocument,o),r=w(u.appendChild(o),"script"),l&&b(r),n))for(c=0;o=r[c++];)Ft.test(o.type||"")&&n.push(o);return u},cleanData:function(t){for(var e,n,i,o,r=it.event.special,s=0;void 0!==(n=t[s]);s++){if(it.acceptData(n)&&(o=n[wt.expando],o&&(e=wt.cache[o]))){if(e.events)for(i in e.events)r[i]?it.event.remove(n,i):it.removeEvent(n,i,e.handle);wt.cache[o]&&delete wt.cache[o]}delete Tt.cache[n[Tt.expando]]}}}),it.fn.extend({text:function(t){return xt(this,function(t){return void 0===t?it.text(this):this.empty().each(function(){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&(this.textContent=t)})},null,t,arguments.length)},append:function(){return this.domManip(arguments,function(t){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var e=m(this,t);e.appendChild(t)}})},prepend:function(){return this.domManip(arguments,function(t){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var e=m(this,t);e.insertBefore(t,e.firstChild)}})},before:function(){return this.domManip(arguments,function(t){this.parentNode&&this.parentNode.insertBefore(t,this)})},after:function(){return this.domManip(arguments,function(t){this.parentNode&&this.parentNode.insertBefore(t,this.nextSibling)})},remove:function(t,e){for(var n,i=t?it.filter(t,this):this,o=0;null!=(n=i[o]);o++)e||1!==n.nodeType||it.cleanData(w(n)),n.parentNode&&(e&&it.contains(n.ownerDocument,n)&&b(w(n,"script")),n.parentNode.removeChild(n));return this},empty:function(){for(var t,e=0;null!=(t=this[e]);e++)1===t.nodeType&&(it.cleanData(w(t,!1)),t.textContent="");return this},clone:function(t,e){return t=null==t?!1:t,e=null==e?t:e,this.map(function(){return it.clone(this,t,e)})},html:function(t){return xt(this,function(t){var e=this[0]||{},n=0,i=this.length;if(void 0===t&&1===e.nodeType)return e.innerHTML;if("string"==typeof t&&!Pt.test(t)&&!Ut[(Lt.exec(t)||["",""])[1].toLowerCase()]){t=t.replace(Rt,"<$1>");try{for(;i>n;n++)e=this[n]||{},1===e.nodeType&&(it.cleanData(w(e,!1)),e.innerHTML=t);e=0}catch(o){}}e&&this.empty().append(t)},null,t,arguments.length)},replaceWith:function(){var t=arguments[0];return this.domManip(arguments,function(e){t=this.parentNode,it.cleanData(w(this)),t&&t.replaceChild(e,this)}),t&&(t.length||t.nodeType)?this:this.remove()},detach:function(t){return this.remove(t,!0)},domManip:function(t,e){t=Y.apply([],t);var n,i,o,r,s,a,l=0,c=this.length,u=this,p=c-1,d=t[0],f=it.isFunction(d);if(f||c>1&&"string"==typeof d&&!tt.checkClone&&qt.test(d))return this.each(function(n){var i=u.eq(n);f&&(t[0]=d.call(this,n,i.html())),i.domManip(t,e)});if(c&&(n=it.buildFragment(t,this[0].ownerDocument,!1,this),i=n.firstChild,1===n.childNodes.length&&(n=i),i)){for(o=it.map(w(n,"script"),v),r=o.length;c>l;l++)s=n,l!==p&&(s=it.clone(s,!0,!0),r&&it.merge(o,w(s,"script"))),e.call(this[l],s,l);if(r)for(a=o[o.length-1].ownerDocument,it.map(o,y),l=0;r>l;l++)s=o[l],Ft.test(s.type||"")&&!wt.access(s,"globalEval")&&it.contains(a,s)&&(s.src?it._evalUrl&&it._evalUrl(s.src):it.globalEval(s.textContent.replace(Mt,"")))}return this}}),it.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(t,e){it.fn[t]=function(t){for(var n,i=[],o=it(t),r=o.length-1,s=0;r>=s;s++)n=s===r?this:this.clone(!0),it(o[s])[e](n),G.apply(i,n.get());return this.pushStack(i)}});var Bt,_t={},zt=/^margin/,Vt=new RegExp("^("+kt+")(?!px)[a-z%]+$","i"),Xt=function(t){return t.ownerDocument.defaultView.opener?t.ownerDocument.defaultView.getComputedStyle(t,null):n.getComputedStyle(t,null)};!function(){function t(){s.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute",s.innerHTML="",o.appendChild(r);var t=n.getComputedStyle(s,null);e="1%"!==t.top,i="4px"===t.width,o.removeChild(r)}var e,i,o=et.documentElement,r=et.createElement("div"),s=et.createElement("div");s.style&&(s.style.backgroundClip="content-box",s.cloneNode(!0).style.backgroundClip="",tt.clearCloneStyle="content-box"===s.style.backgroundClip,r.style.cssText="border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;position:absolute",r.appendChild(s),n.getComputedStyle&&it.extend(tt,{pixelPosition:function(){return t(),e},boxSizingReliable:function(){return null==i&&t(),i},reliableMarginRight:function(){var t,e=s.appendChild(et.createElement("div"));return e.style.cssText=s.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",e.style.marginRight=e.style.width="0",s.style.width="1px",o.appendChild(r),t=!parseFloat(n.getComputedStyle(e,null).marginRight),o.removeChild(r),s.removeChild(e),t}}))}(),it.swap=function(t,e,n,i){var o,r,s={};for(r in e)s[r]=t.style[r],t.style[r]=e[r];o=n.apply(t,i||[]);for(r in e)t.style[r]=s[r];return o};var Yt=/^(none|table(?!-c[ea]).+)/,Gt=new RegExp("^("+kt+")(.*)$","i"),Kt=new RegExp("^([+-])=("+kt+")","i"),Qt={position:"absolute",visibility:"hidden",display:"block"},Jt={letterSpacing:"0",fontWeight:"400"},Zt=["Webkit","O","Moz","ms"];it.extend({cssHooks:{opacity:{get:function(t,e){if(e){var n=k(t,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":"cssFloat"},style:function(t,e,n,i){if(t&&3!==t.nodeType&&8!==t.nodeType&&t.style){var o,r,s,a=it.camelCase(e),l=t.style;return e=it.cssProps[a]||(it.cssProps[a]=S(l,a)),s=it.cssHooks[e]||it.cssHooks[a],void 0===n?s&&"get"in s&&void 0!==(o=s.get(t,!1,i))?o:l[e]:(r=typeof n,"string"===r&&(o=Kt.exec(n))&&(n=(o[1]+1)*o[2]+parseFloat(it.css(t,e)),r="number"),null!=n&&n===n&&("number"!==r||it.cssNumber[a]||(n+="px"),tt.clearCloneStyle||""!==n||0!==e.indexOf("background")||(l[e]="inherit"),s&&"set"in s&&void 0===(n=s.set(t,n,i))||(l[e]=n)),void 0)}},css:function(t,e,n,i){var o,r,s,a=it.camelCase(e);return e=it.cssProps[a]||(it.cssProps[a]=S(t.style,a)),s=it.cssHooks[e]||it.cssHooks[a],s&&"get"in s&&(o=s.get(t,!0,n)),void 0===o&&(o=k(t,e,i)),"normal"===o&&e in Jt&&(o=Jt[e]),""===n||n?(r=parseFloat(o),n===!0||it.isNumeric(r)?r||0:o):o}}),it.each(["height","width"],function(t,e){it.cssHooks[e]={get:function(t,n,i){return n?Yt.test(it.css(t,"display"))&&0===t.offsetWidth?it.swap(t,Qt,function(){return A(t,e,i)}):A(t,e,i):void 0},set:function(t,n,i){var o=i&&Xt(t);return N(t,n,i?D(t,e,i,"border-box"===it.css(t,"boxSizing",!1,o),o):0)}}}),it.cssHooks.marginRight=$(tt.reliableMarginRight,function(t,e){return e?it.swap(t,{display:"inline-block"},k,[t,"marginRight"]):void 0}),it.each({margin:"",padding:"",border:"Width"},function(t,e){it.cssHooks[t+e]={expand:function(n){for(var i=0,o={},r="string"==typeof n?n.split(" "):[n];4>i;i++)o[t+$t[i]+e]=r[i]||r[i-2]||r[0];return o}},zt.test(t)||(it.cssHooks[t+e].set=N)}),it.fn.extend({css:function(t,e){return xt(this,function(t,e,n){var i,o,r={},s=0;if(it.isArray(e)){for(i=Xt(t),o=e.length;o>s;s++)r[e[s]]=it.css(t,e[s],!1,i);return r}return void 0!==n?it.style(t,e,n):it.css(t,e)},t,e,arguments.length>1)},show:function(){return j(this,!0)},hide:function(){return j(this)},toggle:function(t){return"boolean"==typeof t?t?this.show():this.hide():this.each(function(){St(this)?it(this).show():it(this).hide()})}}),it.Tween=O,O.prototype={constructor:O,init:function(t,e,n,i,o,r){this.elem=t,this.prop=n,this.easing=o||"swing",this.options=e,this.start=this.now=this.cur(),this.end=i,this.unit=r||(it.cssNumber[n]?"":"px")},cur:function(){var t=O.propHooks[this.prop];return t&&t.get?t.get(this):O.propHooks._default.get(this)},run:function(t){var e,n=O.propHooks[this.prop];return this.options.duration?this.pos=e=it.easing[this.easing](t,this.options.duration*t,0,1,this.options.duration):this.pos=e=t,this.now=(this.end-this.start)*e+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):O.propHooks._default.set(this),this}},O.prototype.init.prototype=O.prototype,O.propHooks={_default:{get:function(t){var e;return null==t.elem[t.prop]||t.elem.style&&null!=t.elem.style[t.prop]?(e=it.css(t.elem,t.prop,""),e&&"auto"!==e?e:0):t.elem[t.prop]},set:function(t){it.fx.step[t.prop]?it.fx.step[t.prop](t):t.elem.style&&(null!=t.elem.style[it.cssProps[t.prop]]||it.cssHooks[t.prop])?it.style(t.elem,t.prop,t.now+t.unit):t.elem[t.prop]=t.now}}},O.propHooks.scrollTop=O.propHooks.scrollLeft={set:function(t){t.elem.nodeType&&t.elem.parentNode&&(t.elem[t.prop]=t.now)}},it.easing={linear:function(t){return t},swing:function(t){return.5-Math.cos(t*Math.PI)/2}},it.fx=O.prototype.init,it.fx.step={};var te,ee,ne=/^(?:toggle|show|hide)$/,ie=new RegExp("^(?:([+-])=|)("+kt+")([a-z%]*)$","i"),oe=/queueHooks$/,re=[H],se={"*":[function(t,e){var n=this.createTween(t,e),i=n.cur(),o=ie.exec(e),r=o&&o[3]||(it.cssNumber[t]?"":"px"),s=(it.cssNumber[t]||"px"!==r&&+i)&&ie.exec(it.css(n.elem,t)),a=1,l=20;if(s&&s[3]!==r){r=r||s[3],o=o||[],s=+i||1;do a=a||".5",s/=a,it.style(n.elem,t,s+r);while(a!==(a=n.cur()/i)&&1!==a&&--l)}return o&&(s=n.start=+s||+i||0,n.unit=r,n.end=o[1]?s+(o[1]+1)*o[2]:+o[2]),n}]};it.Animation=it.extend(q,{tweener:function(t,e){it.isFunction(t)?(e=t,t=["*"]):t=t.split(" ");for(var n,i=0,o=t.length;o>i;i++)n=t[i],se[n]=se[n]||[],se[n].unshift(e)},prefilter:function(t,e){e?re.unshift(t):re.push(t)}}),it.speed=function(t,e,n){var i=t&&"object"==typeof t?it.extend({},t):{complete:n||!n&&e||it.isFunction(t)&&t,duration:t,easing:n&&e||e&&!it.isFunction(e)&&e};return i.duration=it.fx.off?0:"number"==typeof i.duration?i.duration:i.duration in it.fx.speeds?it.fx.speeds[i.duration]:it.fx.speeds._default,(null==i.queue||i.queue===!0)&&(i.queue="fx"),i.old=i.complete,i.complete=function(){it.isFunction(i.old)&&i.old.call(this),i.queue&&it.dequeue(this,i.queue)},i},it.fn.extend({fadeTo:function(t,e,n,i){return this.filter(St).css("opacity",0).show().end().animate({opacity:e},t,n,i)},animate:function(t,e,n,i){var o=it.isEmptyObject(t),r=it.speed(e,n,i),s=function(){var e=q(this,it.extend({},t),r);(o||wt.get(this,"finish"))&&e.stop(!0)};return s.finish=s,o||r.queue===!1?this.each(s):this.queue(r.queue,s)},stop:function(t,e,n){var i=function(t){var e=t.stop;delete t.stop,e(n)};return"string"!=typeof t&&(n=e,e=t,t=void 0),e&&t!==!1&&this.queue(t||"fx",[]),this.each(function(){var e=!0,o=null!=t&&t+"queueHooks",r=it.timers,s=wt.get(this);if(o)s[o]&&s[o].stop&&i(s[o]);else for(o in s)s[o]&&s[o].stop&&oe.test(o)&&i(s[o]);for(o=r.length;o--;)r[o].elem!==this||null!=t&&r[o].queue!==t||(r[o].anim.stop(n),e=!1,r.splice(o,1));(e||!n)&&it.dequeue(this,t)})},finish:function(t){return t!==!1&&(t=t||"fx"),this.each(function(){var e,n=wt.get(this),i=n[t+"queue"],o=n[t+"queueHooks"],r=it.timers,s=i?i.length:0;for(n.finish=!0,it.queue(this,t,[]),o&&o.stop&&o.stop.call(this,!0),e=r.length;e--;)r[e].elem===this&&r[e].queue===t&&(r[e].anim.stop(!0),r.splice(e,1));for(e=0;s>e;e++)i[e]&&i[e].finish&&i[e].finish.call(this);delete n.finish})}}),it.each(["toggle","show","hide"],function(t,e){var n=it.fn[e];it.fn[e]=function(t,i,o){return null==t||"boolean"==typeof t?n.apply(this,arguments):this.animate(R(e,!0),t,i,o)}}),it.each({slideDown:R("show"),slideUp:R("hide"),slideToggle:R("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(t,e){it.fn[t]=function(t,n,i){return this.animate(e,t,n,i)}}),it.timers=[],it.fx.tick=function(){var t,e=0,n=it.timers;for(te=it.now();e1)},removeAttr:function(t){return this.each(function(){it.removeAttr(this,t)})}}),it.extend({attr:function(t,e,n){var i,o,r=t.nodeType;if(t&&3!==r&&8!==r&&2!==r)return typeof t.getAttribute===Dt?it.prop(t,e,n):(1===r&&it.isXMLDoc(t)||(e=e.toLowerCase(),i=it.attrHooks[e]||(it.expr.match.bool.test(e)?le:ae)),void 0===n?i&&"get"in i&&null!==(o=i.get(t,e))?o:(o=it.find.attr(t,e),null==o?void 0:o):null!==n?i&&"set"in i&&void 0!==(o=i.set(t,n,e))?o:(t.setAttribute(e,n+""),n):void it.removeAttr(t,e))},removeAttr:function(t,e){var n,i,o=0,r=e&&e.match(vt);if(r&&1===t.nodeType)for(;n=r[o++];)i=it.propFix[n]||n,it.expr.match.bool.test(n)&&(t[i]=!1),t.removeAttribute(n)},attrHooks:{type:{set:function(t,e){if(!tt.radioValue&&"radio"===e&&it.nodeName(t,"input")){var n=t.value;return t.setAttribute("type",e),n&&(t.value=n),e}}}}}),le={set:function(t,e,n){return e===!1?it.removeAttr(t,n):t.setAttribute(n,n),n}},it.each(it.expr.match.bool.source.match(/\w+/g),function(t,e){var n=ce[e]||it.find.attr;ce[e]=function(t,e,i){var o,r;return i||(r=ce[e],ce[e]=o,o=null!=n(t,e,i)?e.toLowerCase():null,ce[e]=r),o}});var ue=/^(?:input|select|textarea|button)$/i;it.fn.extend({prop:function(t,e){return xt(this,it.prop,t,e,arguments.length>1)},removeProp:function(t){return this.each(function(){delete this[it.propFix[t]||t]})}}),it.extend({propFix:{"for":"htmlFor","class":"className"},prop:function(t,e,n){var i,o,r,s=t.nodeType;if(t&&3!==s&&8!==s&&2!==s)return r=1!==s||!it.isXMLDoc(t),r&&(e=it.propFix[e]||e,o=it.propHooks[e]),void 0!==n?o&&"set"in o&&void 0!==(i=o.set(t,n,e))?i:t[e]=n:o&&"get"in o&&null!==(i=o.get(t,e))?i:t[e]},propHooks:{tabIndex:{get:function(t){return t.hasAttribute("tabindex")||ue.test(t.nodeName)||t.href?t.tabIndex:-1}}}}),tt.optSelected||(it.propHooks.selected={get:function(t){var e=t.parentNode;return e&&e.parentNode&&e.parentNode.selectedIndex,null}}),it.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){it.propFix[this.toLowerCase()]=this});var pe=/[\t\r\n\f]/g;it.fn.extend({addClass:function(t){var e,n,i,o,r,s,a="string"==typeof t&&t,l=0,c=this.length;if(it.isFunction(t))return this.each(function(e){it(this).addClass(t.call(this,e,this.className))});if(a)for(e=(t||"").match(vt)||[];c>l;l++)if(n=this[l],i=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(pe," "):" ")){for(r=0;o=e[r++];)i.indexOf(" "+o+" ")<0&&(i+=o+" ");s=it.trim(i),n.className!==s&&(n.className=s)}return this},removeClass:function(t){var e,n,i,o,r,s,a=0===arguments.length||"string"==typeof t&&t,l=0,c=this.length;if(it.isFunction(t))return this.each(function(e){it(this).removeClass(t.call(this,e,this.className))});if(a)for(e=(t||"").match(vt)||[];c>l;l++)if(n=this[l],i=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(pe," "):"")){for(r=0;o=e[r++];)for(;i.indexOf(" "+o+" ")>=0;)i=i.replace(" "+o+" "," ");s=t?it.trim(i):"",n.className!==s&&(n.className=s)}return this},toggleClass:function(t,e){var n=typeof t;return"boolean"==typeof e&&"string"===n?e?this.addClass(t):this.removeClass(t):it.isFunction(t)?this.each(function(n){it(this).toggleClass(t.call(this,n,this.className,e),e)}):this.each(function(){if("string"===n)for(var e,i=0,o=it(this),r=t.match(vt)||[];e=r[i++];)o.hasClass(e)?o.removeClass(e):o.addClass(e);else(n===Dt||"boolean"===n)&&(this.className&&wt.set(this,"__className__",this.className),this.className=this.className||t===!1?"":wt.get(this,"__className__")||"")})},hasClass:function(t){for(var e=" "+t+" ",n=0,i=this.length;i>n;n++)if(1===this[n].nodeType&&(" "+this[n].className+" ").replace(pe," ").indexOf(e)>=0)return!0;return!1}});var de=/\r/g;it.fn.extend({val:function(t){var e,n,i,o=this[0];{if(arguments.length)return i=it.isFunction(t),this.each(function(n){var o;1===this.nodeType&&(o=i?t.call(this,n,it(this).val()):t,null==o?o="":"number"==typeof o?o+="":it.isArray(o)&&(o=it.map(o,function(t){return null==t?"":t+""})),e=it.valHooks[this.type]||it.valHooks[this.nodeName.toLowerCase()],e&&"set"in e&&void 0!==e.set(this,o,"value")||(this.value=o))});if(o)return e=it.valHooks[o.type]||it.valHooks[o.nodeName.toLowerCase()],e&&"get"in e&&void 0!==(n=e.get(o,"value"))?n:(n=o.value,"string"==typeof n?n.replace(de,""):null==n?"":n)}}}),it.extend({valHooks:{option:{get:function(t){var e=it.find.attr(t,"value");return null!=e?e:it.trim(it.text(t))}},select:{get:function(t){for(var e,n,i=t.options,o=t.selectedIndex,r="select-one"===t.type||0>o,s=r?null:[],a=r?o+1:i.length,l=0>o?a:r?o:0;a>l;l++)if(n=i[l],(n.selected||l===o)&&(tt.optDisabled?!n.disabled:null===n.getAttribute("disabled"))&&(!n.parentNode.disabled||!it.nodeName(n.parentNode,"optgroup"))){if(e=it(n).val(),r)return e;s.push(e)}return s},set:function(t,e){for(var n,i,o=t.options,r=it.makeArray(e),s=o.length;s--;)i=o[s],(i.selected=it.inArray(i.value,r)>=0)&&(n=!0);return n||(t.selectedIndex=-1),r}}}}),it.each(["radio","checkbox"],function(){it.valHooks[this]={set:function(t,e){return it.isArray(e)?t.checked=it.inArray(it(t).val(),e)>=0:void 0}},tt.checkOn||(it.valHooks[this].get=function(t){return null===t.getAttribute("value")?"on":t.value})}),it.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(t,e){it.fn[e]=function(t,n){return arguments.length>0?this.on(e,null,t,n):this.trigger(e)}}),it.fn.extend({hover:function(t,e){return this.mouseenter(t).mouseleave(e||t)},bind:function(t,e,n){return this.on(t,null,e,n)},unbind:function(t,e){return this.off(t,null,e)},delegate:function(t,e,n,i){return this.on(e,t,n,i)},undelegate:function(t,e,n){return 1===arguments.length?this.off(t,"**"):this.off(e,t||"**",n)}});var fe=it.now(),he=/\?/;it.parseJSON=function(t){return JSON.parse(t+"")},it.parseXML=function(t){var e,n;if(!t||"string"!=typeof t)return null;try{n=new DOMParser,e=n.parseFromString(t,"text/xml")}catch(i){e=void 0}return(!e||e.getElementsByTagName("parsererror").length)&&it.error("Invalid XML: "+t),e};var ge=/#.*$/,me=/([?&])_=[^&]*/,ve=/^(.*?):[ \t]*([^\r\n]*)$/gm,ye=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,be=/^(?:GET|HEAD)$/,xe=/^\/\//,we=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,Te={},Ce={},Ee="*/".concat("*"),ke=n.location.href,$e=we.exec(ke.toLowerCase())||[];it.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:ke,type:"GET",isLocal:ye.test($e[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Ee,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":it.parseJSON,"text xml":it.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(t,e){return e?M(M(t,it.ajaxSettings),e):M(it.ajaxSettings,t)},ajaxPrefilter:F(Te),ajaxTransport:F(Ce),ajax:function(t,e){function n(t,e,n,s){var l,u,v,y,x,T=e;2!==b&&(b=2,a&&clearTimeout(a),i=void 0,r=s||"",w.readyState=t>0?4:0,l=t>=200&&300>t||304===t,n&&(y=U(p,w,n)),y=B(p,y,w,l),l?(p.ifModified&&(x=w.getResponseHeader("Last-Modified"),x&&(it.lastModified[o]=x),x=w.getResponseHeader("etag"),x&&(it.etag[o]=x)),204===t||"HEAD"===p.type?T="nocontent":304===t?T="notmodified":(T=y.state,u=y.data,v=y.error,l=!v)):(v=T,(t||!T)&&(T="error",0>t&&(t=0))),w.status=t,w.statusText=(e||T)+"",l?h.resolveWith(d,[u,T,w]):h.rejectWith(d,[w,T,v]),w.statusCode(m),m=void 0,c&&f.trigger(l?"ajaxSuccess":"ajaxError",[w,p,l?u:v]),g.fireWith(d,[w,T]),c&&(f.trigger("ajaxComplete",[w,p]),--it.active||it.event.trigger("ajaxStop")))}"object"==typeof t&&(e=t,t=void 0),e=e||{};var i,o,r,s,a,l,c,u,p=it.ajaxSetup({},e),d=p.context||p,f=p.context&&(d.nodeType||d.jquery)?it(d):it.event,h=it.Deferred(),g=it.Callbacks("once memory"),m=p.statusCode||{},v={},y={},b=0,x="canceled",w={readyState:0,getResponseHeader:function(t){var e;if(2===b){if(!s)for(s={};e=ve.exec(r);)s[e[1].toLowerCase()]=e[2];e=s[t.toLowerCase()]}return null==e?null:e},getAllResponseHeaders:function(){return 2===b?r:null},setRequestHeader:function(t,e){var n=t.toLowerCase();return b||(t=y[n]=y[n]||t,v[t]=e),this},overrideMimeType:function(t){return b||(p.mimeType=t),this},statusCode:function(t){var e;if(t)if(2>b)for(e in t)m[e]=[m[e],t[e]];else w.always(t[w.status]);return this},abort:function(t){var e=t||x;return i&&i.abort(e),n(0,e),this}};if(h.promise(w).complete=g.add,w.success=w.done,w.error=w.fail,p.url=((t||p.url||ke)+"").replace(ge,"").replace(xe,$e[1]+"//"),p.type=e.method||e.type||p.method||p.type,p.dataTypes=it.trim(p.dataType||"*").toLowerCase().match(vt)||[""],null==p.crossDomain&&(l=we.exec(p.url.toLowerCase()),p.crossDomain=!(!l||l[1]===$e[1]&&l[2]===$e[2]&&(l[3]||("http:"===l[1]?"80":"443"))===($e[3]||("http:"===$e[1]?"80":"443")))),p.data&&p.processData&&"string"!=typeof p.data&&(p.data=it.param(p.data,p.traditional)),W(Te,p,e,w),2===b)return w;c=it.event&&p.global,c&&0===it.active++&&it.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!be.test(p.type),o=p.url,p.hasContent||(p.data&&(o=p.url+=(he.test(o)?"&":"?")+p.data,delete p.data),p.cache===!1&&(p.url=me.test(o)?o.replace(me,"$1_="+fe++):o+(he.test(o)?"&":"?")+"_="+fe++)),p.ifModified&&(it.lastModified[o]&&w.setRequestHeader("If-Modified-Since",it.lastModified[o]),it.etag[o]&&w.setRequestHeader("If-None-Match",it.etag[o])),(p.data&&p.hasContent&&p.contentType!==!1||e.contentType)&&w.setRequestHeader("Content-Type",p.contentType),w.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.dataTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+Ee+"; q=0.01":""):p.accepts["*"]);for(u in p.headers)w.setRequestHeader(u,p.headers[u]);if(p.beforeSend&&(p.beforeSend.call(d,w,p)===!1||2===b))return w.abort();x="abort";for(u in{success:1,error:1,complete:1})w[u](p[u]);if(i=W(Ce,p,e,w)){w.readyState=1,c&&f.trigger("ajaxSend",[w,p]),p.async&&p.timeout>0&&(a=setTimeout(function(){w.abort("timeout")},p.timeout));try{b=1,i.send(v,n)}catch(T){if(!(2>b))throw T;n(-1,T)}}else n(-1,"No Transport");return w},getJSON:function(t,e,n){return it.get(t,e,n,"json")},getScript:function(t,e){return it.get(t,void 0,e,"script")}}),it.each(["get","post"],function(t,e){it[e]=function(t,n,i,o){return it.isFunction(n)&&(o=o||i,i=n,n=void 0),it.ajax({url:t,type:e,dataType:o,data:n,success:i})}}),it._evalUrl=function(t){return it.ajax({url:t,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})},it.fn.extend({wrapAll:function(t){var e;return it.isFunction(t)?this.each(function(e){it(this).wrapAll(t.call(this,e))}):(this[0]&&(e=it(t,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&e.insertBefore(this[0]),e.map(function(){for(var t=this;t.firstElementChild;)t=t.firstElementChild;return t}).append(this)),this)},wrapInner:function(t){return it.isFunction(t)?this.each(function(e){it(this).wrapInner(t.call(this,e))}):this.each(function(){var e=it(this),n=e.contents();n.length?n.wrapAll(t):e.append(t)})},wrap:function(t){var e=it.isFunction(t);return this.each(function(n){it(this).wrapAll(e?t.call(this,n):t); -})},unwrap:function(){return this.parent().each(function(){it.nodeName(this,"body")||it(this).replaceWith(this.childNodes)}).end()}}),it.expr.filters.hidden=function(t){return t.offsetWidth<=0&&t.offsetHeight<=0},it.expr.filters.visible=function(t){return!it.expr.filters.hidden(t)};var Se=/%20/g,Ne=/\[\]$/,De=/\r?\n/g,Ae=/^(?:submit|button|image|reset|file)$/i,je=/^(?:input|select|textarea|keygen)/i;it.param=function(t,e){var n,i=[],o=function(t,e){e=it.isFunction(e)?e():null==e?"":e,i[i.length]=encodeURIComponent(t)+"="+encodeURIComponent(e)};if(void 0===e&&(e=it.ajaxSettings&&it.ajaxSettings.traditional),it.isArray(t)||t.jquery&&!it.isPlainObject(t))it.each(t,function(){o(this.name,this.value)});else for(n in t)_(n,t[n],e,o);return i.join("&").replace(Se,"+")},it.fn.extend({serialize:function(){return it.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var t=it.prop(this,"elements");return t?it.makeArray(t):this}).filter(function(){var t=this.type;return this.name&&!it(this).is(":disabled")&&je.test(this.nodeName)&&!Ae.test(t)&&(this.checked||!Nt.test(t))}).map(function(t,e){var n=it(this).val();return null==n?null:it.isArray(n)?it.map(n,function(t){return{name:e.name,value:t.replace(De,"\r\n")}}):{name:e.name,value:n.replace(De,"\r\n")}}).get()}}),it.ajaxSettings.xhr=function(){try{return new XMLHttpRequest}catch(t){}};var Oe=0,Ie={},Re={0:200,1223:204},Le=it.ajaxSettings.xhr();n.attachEvent&&n.attachEvent("onunload",function(){for(var t in Ie)Ie[t]()}),tt.cors=!!Le&&"withCredentials"in Le,tt.ajax=Le=!!Le,it.ajaxTransport(function(t){var e;return tt.cors||Le&&!t.crossDomain?{send:function(n,i){var o,r=t.xhr(),s=++Oe;if(r.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(o in t.xhrFields)r[o]=t.xhrFields[o];t.mimeType&&r.overrideMimeType&&r.overrideMimeType(t.mimeType),t.crossDomain||n["X-Requested-With"]||(n["X-Requested-With"]="XMLHttpRequest");for(o in n)r.setRequestHeader(o,n[o]);e=function(t){return function(){e&&(delete Ie[s],e=r.onload=r.onerror=null,"abort"===t?r.abort():"error"===t?i(r.status,r.statusText):i(Re[r.status]||r.status,r.statusText,"string"==typeof r.responseText?{text:r.responseText}:void 0,r.getAllResponseHeaders()))}},r.onload=e(),r.onerror=e("error"),e=Ie[s]=e("abort");try{r.send(t.hasContent&&t.data||null)}catch(a){if(e)throw a}},abort:function(){e&&e()}}:void 0}),it.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(t){return it.globalEval(t),t}}}),it.ajaxPrefilter("script",function(t){void 0===t.cache&&(t.cache=!1),t.crossDomain&&(t.type="GET")}),it.ajaxTransport("script",function(t){if(t.crossDomain){var e,n;return{send:function(i,o){e=it(" + diff --git a/templates/macros/docs.html b/templates/macros/docs.html index b2c76c55..3b1b6fb9 100644 --- a/templates/macros/docs.html +++ b/templates/macros/docs.html @@ -11,7 +11,7 @@ {%- elif page.type == 'event' -%} - {%- elif page.type == 'type' -%} + {%- elif page.type == 'type' or page.type == 'sysfield' -%} {%- else -%} @@ -28,8 +28,8 @@

{% if page.type %}{{ get_doc_icon(page) }} {% endif %}{% if page.module %}{{ page.module }}.{% endif %}{{ page.title }}{% - if page.type == 'method' or page.type == 'function' or page.type == 'filter' - or page.type == 'event' + if (page.type == 'method' or page.type == 'function' or page.type == 'filter' + or page.type == 'event') or page.signature %} ({{ page.signature }}){% endif %}

{% else %}

{{ page.title }}

diff --git a/templates/poweredby.html b/templates/poweredby.html new file mode 100644 index 00000000..f12c6282 --- /dev/null +++ b/templates/poweredby.html @@ -0,0 +1,5 @@ +{% extends "layout.html" %} +{% block title %}Powered By{% endblock %} +{% block body %} +

Powered By

+{% endblock %} diff --git a/templates/showcase-site.html b/templates/showcase-site.html new file mode 100644 index 00000000..908ffb74 --- /dev/null +++ b/templates/showcase-site.html @@ -0,0 +1,49 @@ +{% extends "layout.html" %} +{% block title %}{{ this.name }}{% endblock %} +{% block outerbody %} +
+
+ +

{{ this.name }}

+
+
+
+ {{ this.description }} +
+
+
+
+
+
+ +
+
+
+{% endblock %} diff --git a/templates/showcase.html b/templates/showcase.html new file mode 100644 index 00000000..98710d22 --- /dev/null +++ b/templates/showcase.html @@ -0,0 +1,36 @@ +{% extends "layout.html" %} +{% block title %}Showcase{% endblock %} +{% block outerbody %} + {% set image = site.get('/showcase').attachments.images.first() %} + {% if image %} +
+ {% endif %} + {{ super() }} +{% endblock %} +{% block body %} +

Showcase

+

+ Want to see what Lektor is used for? This should give you a brief overview + of what projects are built on the basis of Lektor. We take good care of + ensuring this list stays up to date by carefully moderating it. +

+ Click any of the showcases to learn a bit more about how it uses Lektor. +

+

+ You want your own website on here? Fork + the Lektor Website Repository on GitHub to add your own project. Make sure to + add screenshots and a description about the project. +{% endblock %} diff --git a/webpack/js/app.js b/webpack/js/app.js index 8cb5aca9..aea3eac9 100644 --- a/webpack/js/app.js +++ b/webpack/js/app.js @@ -15,6 +15,15 @@ function selectText(text) { } } +function initBadges() { + let badges = $('.badges li').hide(); + if (badges.length > 0) { + window.setTimeout(function() { + badges.fadeIn(500); + }, 1500); + } +} + function initDownloadButton() { let buttons = $('.download-btn'); if (buttons.length <= 0) { @@ -143,6 +152,7 @@ function hideThingsForWindows() { } $(function() { + initBadges(); initDownloadButton(); initInstallRow(); initGoogleSearch(); diff --git a/webpack/scss/main.scss b/webpack/scss/main.scss index 48fef9d6..bdc3ba58 100644 --- a/webpack/scss/main.scss +++ b/webpack/scss/main.scss @@ -103,7 +103,7 @@ div.slideshow { height: auto; overflow: auto; background: lighten($gray, 55) url(../images/dark-curls.png); - box-shadow: inset 0 0 10px darken($lektor-header-bg, 5); + box-shadow: inset 0 0 10px fade-out(darken($lektor-header-bg, 5), 0.8); color: white; div.slideshow-inner { @@ -117,6 +117,10 @@ div.slideshow { background: transparent!important; } + .carousel-indicators li { + box-shadow: 0 0 4px $gray, 0 0 2px $gray; + } + div.slide { div.container { position: relative; @@ -151,6 +155,11 @@ div.slideshow { height: auto; width: 100%; } + + &.large { + width: 100%; + height: auto; + } } } } @@ -255,18 +264,48 @@ div.blog-post { } } -div.banner { +div.nav-prev { + float: left; +} + +div.nav-next { + float: right; +} + +div.page-banner { margin: 15px 0; background-size: cover; background-position: center center; + background-color: $lektor-header-bg; &:first-child { margin-top: 0; - box-shadow: 0 4px 10px fade-out($gray, 0.8); } - &.banner-dark { - background-color: $lektor-header-bg; + &.page-banner-500-tall { + height: 500px; + + @media (max-width: $screen-xs-max) { height: 400px; } + } + + &.page-banner-500 { + height: 500px; + + @media (max-width: $screen-md-max) { height: 300px; } + @media (max-width: $screen-sm-max) { height: 200px; } + } + + &.page-banner-300 { + height: 300px; + + @media (max-width: $screen-md-max) { height: 200px; } + @media (max-width: $screen-sm-max) { height: 120px; } + } + + &.page-banner-200 { + height: 200px; + + @media (max-width: $screen-sm-max) { height: 120px; } } } @@ -276,6 +315,7 @@ div.doc-styling { padding: 0!important; display: inline; background: transparent; + font-family: $font-family-base; } code.mod { color: $toner; @@ -291,11 +331,24 @@ div.doc-styling { } } - p.type-info { + ul.page-meta { + list-style: none; font-style: italic; - } - p.type-info + p.type-info { - margin-top: 0; + margin: 0; + padding: 0 0 0 30px; + line-height: 1.4; + + > li { + margin: 0; + padding: 0; + &:last-child { + margin-bottom: 10px; + } + + em { + background: #eee; + } + } } table { @@ -314,6 +367,10 @@ div.doc-styling { padding: 5px 10px; } + tr { + background: white; + } + tr:nth-child(odd) { background: #f8f8f8; } @@ -337,6 +394,7 @@ div.screenshot-frame { background: white url(../images/swirl.png); background-size: 256px 256px; border-radius: 10px; + img { width: 100%; border-radius: 5px; @@ -363,16 +421,36 @@ i.feature-circle { line-height: 52px; } -ul.badges { - text-align: right; - margin-top: 45px; - font-size: 0; - list-style: none; - padding: 0; +div.badges { + height: 30px; - li { - margin: 10px 0; + @media (max-width: $screen-xs-max) { + display: none; + } + + ul { + display: table; + height: 28px!important; + line-height: 28px!important; + margin: 0 auto; padding: 0; + list-style: none; + text-align: center; + vertical-align: top; + font-size: 0; + + li { + vertical-align: top; + display: table-cell; + margin: 0; + padding: 0 10px; + + img { + height: 28px; + margin: 0; + padding: 0; + } + } } } @@ -427,10 +505,9 @@ div.lektor-intro { height: 100%; //background: #3D2824; - img { - margin-left: -80px; - max-height: 300px; - max-width: 700px; + img.logo { + max-width: 550px; + margin: 30px 0 50px -15px; @media (max-width: $screen-md-max) { width: 100%; @@ -439,13 +516,14 @@ div.lektor-intro { } p { - text-shadow: 0 0 3px #3D3639; + text-shadow: 0 0 50px #2D282A, 0 0 30px #2D282A, 0 0 2px #2D282A; color: white; } a { color: white; font-weight: bold; + text-decoration: underline; } div.install-row { @@ -465,6 +543,10 @@ div.lektor-intro { left: 10px; right: 10px; } + + @media (max-width: $screen-sm-max) { + display: none; + } } } @@ -600,6 +682,117 @@ div.sourceviewer { } } +div.admonition { + margin: 15px 0; + background: white; + padding: 10px 15px; + padding-bottom: 0; + + &:before { + margin: -10px -15px 10px -15px; + padding: 10px 15px; + line-height: 1; + background: #ccc; + display: block; + content: ""; + font-weight: bold; + font-size: 13px; + } + + &.admonition-note { + &:before { + content: "Note"; + background: #8FC4E0; + } + border: 1px solid #8FC4E0; + } + + &.admonition-info { + &:before { + content: "Info"; + background: #E0C18F; + } + border: 1px solid #E0C18F; + } + + &.admonition-tip { + &:before { + content: "Tip"; + background: #9EB675; + } + border: 1px solid #9EB675; + } + + &.admonition-warning { + &:before { + content: "Warning"; + background: #E0AA8F; + } + border: 1px solid #E0AA8F; + } +} + +div.showcase { + div.project { + > a { + display: block; + padding: 10px; + margin: 15px 0; + background: lighten($gray, 20) url(../images/mesh.png); + background-size: 256px 256px; + text-decoration: none; + border-radius: 3px; + + h2 { + margin: 0 0 10px 0; + text-align: center; + padding: 0; + font-size: 24px; + color: white; + } + + img { + box-shadow: 0 0 6px #444; + } + + .frame { + background: white; + } + + &:hover { + box-shadow: inset 0 0 10px $gray; + + img { + opacity: 0.9; + box-shadow: 0 0 10px #444, 0 0 5px #444; + } + } + } + } +} + +div.showcase-site { + div.back-link { + margin: 15px 0 15px 10px; + text-align: left; + a { + &:before { + content: "« "; + } + } + } + + h1 { + text-align: center; + } + + p.site-link { + text-align: center; + margin: 15px 0 25px 0; + text-decoration: underline; + } +} + /* search */ div.doc-styling div.gsc-control-cse { font-family: $font-family-base!important; @@ -709,3 +902,29 @@ div.doc-styling div.gsc-control-cse { font-size: 13px; padding-top: 5px; } + +/* gitter */ +aside.gitter-chat-embed { + z-index: 10000; +} + +button.js-gitter-toggle-chat-button { + color: white; + border: none; + cursor: pointer; + position: fixed; + right: 10px; + bottom: 0; + background-color: $brand-primary; + font-family: $font-family-base; + font-weight: bold; + padding: 7px 20px; + text-transform: none; + letter-spacing: 0; + font-size: 15px; + + &:hover { + background-color: darken($brand-primary, 15); + text-decoration: none; + } +}