From 15861544fc8916cb97d51577d0c922636ea8fa7b Mon Sep 17 00:00:00 2001 From: Johannes Raggam Date: Sat, 27 Jan 2018 18:11:22 +0100 Subject: [PATCH 1/6] Refactor for usage with npm instead of bower. --- .bowerrc | 3 - .nix/bower.nix | 113 ------------------------- CHANGES.rst | 31 +++++++ bower.json | 63 -------------- mockup/Gruntfile.js | 5 +- mockup/index.html | 13 +-- mockup/js/config.js | 8 +- mockup/js/grunt.js | 4 - mockup/node_modules | 1 - mockup/patterns/filemanager/pattern.js | 67 +++++++++------ package.json | 61 ++++++++++--- 11 files changed, 129 insertions(+), 240 deletions(-) delete mode 100644 .bowerrc delete mode 100644 .nix/bower.nix delete mode 100644 bower.json delete mode 120000 mockup/node_modules diff --git a/.bowerrc b/.bowerrc deleted file mode 100644 index efb8c79d79..0000000000 --- a/.bowerrc +++ /dev/null @@ -1,3 +0,0 @@ -{ - "directory" : "mockup/bower_components" -} diff --git a/.nix/bower.nix b/.nix/bower.nix deleted file mode 100644 index 7fba1391cc..0000000000 --- a/.nix/bower.nix +++ /dev/null @@ -1,113 +0,0 @@ -{ }: [ - { name = "console-polyfill"; - version = "0.1.1"; - target = "0.1.1"; - outputHash = "1ql54f9mwzn0kmgy01bsdfgx04hs3a6vzk9yjzckfaikigad5czv"; - } - { name = "jquery.cookie"; - version = "1.4.0"; - target = "1.4.0"; - outputHash = "1ad2k90b1f4fjazs6jzma4gxpqmwbzra36hrnchjp223hnasv263"; - } - { name = "requirejs-text"; - version = "2.0.10"; - target = "2.0.10"; - outputHash = "0s83zzk9syh568fjlzfdzmbb2csx1nmkcbvcjimi1achl0v7sk4q"; - } - { name = "mockup-core"; - version = "1.2.1"; - target = "1.2.1"; - outputHash = "0hp0bxligqqlbxmnzdsgpfwsv6mksl1hx0w369rsn6c1wx2b1idx"; - } - { name = "jquery-form"; - version = "3.46.0"; - target = "3.46.0"; - outputHash = "11bnyx8ig3bc4vwskd99zxzbnzayh18vdkaklmjiwkg8jbcxix40"; - } - { name = "sinonjs"; - version = "1.9.0"; - target = "1.9.0"; - outputHash = "1s9hn5x3vzxs41mhgfagbj0m6s8x53598y4h1za1nr9z6ymvig3l"; - } - { name = "expect"; - version = "0.3.1"; - target = "0.3.1"; - outputHash = "0b32higq1g005i066gk6anyv1yrb450rbhaw9cfrrqpw9wxlgcfm"; - } - { name = "dropzone"; - version = "3.8.4"; - target = "3.8.4"; - outputHash = "1hbr2bhm9250xk3apvbinns0aiw02wxh4idzlgb8jcngb42w1r6k"; - } - { name = "es5-shim"; - version = "2.3.0"; - target = "2.3.0"; - outputHash = "021mwrjnrhf64sx7nqmi1q52ypm10njp9m3pd0mvf9h139v98x9y"; - } - { name = "select2"; - version = "3.4.5"; - target = "3.4.5"; - outputHash = "1aibpwlnj5d10s7m7a7fci9jnv5nq1bq881fk952a8xz3p33mmd1"; - } - { name = "jqtree"; - version = "0.20.0"; - target = "0.20.0"; - outputHash = "11xb3f510ngi27rp54xzhg5n6zdpib3cq0w27njjdkhy0259j7sg"; - } - { name = "backbone.paginator"; - version = "0.8.1"; - target = "0.8.1"; - outputHash = "1caknrjn4iz1yg11g3ilma8l6mjgpgc9pzmwa4vz3r5gf1pcb2ds"; - } - { name = "jquery"; - version = "1.8.3"; - target = "1.8.3"; - outputHash = "1frlqnm1rhwwbvcp4i5ysb1adxbcsb90kh369nw3drgi9ky9x0sy"; - } - { name = "moment"; - version = "2.5.1"; - target = "2.5.1"; - outputHash = "0bibpc7xjn8b9irm49679hzcadp5vacas9r5gdhz92h2bznv01nb"; - } - { name = "react"; - version = "0.9.0"; - target = "0.9.0"; - outputHash = "180m4lj68hjh6hvirb1pvws61ljhry30pyvbhhadzl1zn3jf90h7"; - } - { name = "marked"; - version = "0.3.2"; - target = "0.3.2"; - outputHash = "1s17a069bdfr9gxnmk7nvlb0yivnklq047lw2zjsdasmdb77kd2l"; - } - { name = "lodash"; - version = "2.4.1"; - target = "2.4.1"; - outputHash = "08jmf5hq8r055cq8c3flkg1ycmpdrrgi6s9070lddk6jljaqa2ha"; - } - { name = "bootstrap"; - version = "3.1.1"; - target = "3.1.1"; - outputHash = "1n7ngrymiv5pbivw36wmryahs0j132i6hzy25jwqhs9k36qr16xb"; - } - { name = "pickadate"; - version = "3.4.0"; - target = "3.4.0"; - outputHash = "1f15vw4crj6zjyqx47n1ncjldh8alzdkf04jn0m8xplzz3sfl48i"; - } - { name = "backbone"; - version = "1.1.2"; - target = "1.1.2"; - outputHash = "1h5yy2lbwd8ik6cyi234hv4i0cy1dijlh6s65kqi0asq1qzi18bs"; - } - { name = "underscore"; - version = "1.6.0"; - target = ">=1.5.0"; - outputHash = "0sdqbyqx56awpd481plp9x16ii9ws0kmi3kmpinj4nzlqv8p9jrv"; - } - { name = "ace-builds"; - version = "1.1.3"; - target = "1.1.3"; - outputHash = "0n5cbasg4f09scpkb38gvb70xsvl0x27dj2pxl8iknaqqfhia137"; - } -] - diff --git a/CHANGES.rst b/CHANGES.rst index 2d1b8f6792..22332dfecd 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -2,6 +2,37 @@ Changelog ========= 2.7.6 (Unreleased) +3.0 (unreleased) +---------------- + +Breaking changes: + +* Refactor for usage with ``npm`` instead of ``bower``. + [thet] + +* Remove obsolete dependencies: + - console-polyfill + - es5-shim + - selectivizr + - js-shortcuts + - marked + - react + - JSXTransformer + [thet] + +* Remove support for IE < 9. + [thet] + +New features: + +* add items here + +Bug fixes: + +* add items here + + +2.6.3 (Unreleased) ------------------ Breaking changes: diff --git a/bower.json b/bower.json deleted file mode 100644 index 07da0f87e4..0000000000 --- a/bower.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "name": "mockup", - "description": "A collection of client side patterns for faster and easier web development", - "dependencies": { - "ace-builds": "1.2.6", - "backbone": "1.1.2", - "backbone.paginator": "0.8.1", - "bootstrap": "3.3.6", - "console-polyfill": "0.2.2", - "datatables.net": "1.10.16", - "datatables.net-bs": "1.10.16", - "datatables.net-autofill": "2.2.2", - "datatables.net-autofill-bs": "2.2.2", - "datatables.net-buttons": "1.4.2", - "datatables.net-buttons-bs": "1.4.2", - "datatables.net-colreorder": "1.4.1", - "datatables.net-colreorder-bs": "1.4.1", - "datatables.net-fixedcolumns": "3.2.3", - "datatables.net-fixedcolumns-bs": "3.2.3", - "datatables.net-fixedheader": "3.1.3", - "datatables.net-fixedheader-bs": "3.1.3", - "datatables.net-keytable": "2.3.2", - "datatables.net-keytable-bs": "2.3.2", - "datatables.net-responsive": "2.2.0", - "datatables.net-responsive-bs": "2.2.0", - "datatables.net-rowreorder": "1.2.3", - "datatables.net-rowreorder-bs": "1.2.3", - "datatables.net-scroller": "1.4.3", - "datatables.net-scroller-bs": "1.4.3", - "datatables.net-select": "1.2.3", - "datatables.net-select-bs": "1.2.3", - "dropzone": "4.3.0", - "es5-shim": "4.5.9", - "jqtree": "1.4.1", - "jquery": "1.11.3", - "jquery-form": "3.51", - "jquery.cookie": "1.4.1", - "jquery.recurrenceinput.js": "v1.5.2", - "logging": "", - "marked": "0.3.5", - "moment": "2.10.6", - "patternslib": "2.0.13", - "pickadate": "3.5.6", - "react": "0.10.0", - "requirejs-text": "2.0.15", - "select2": "3.5.4", - "selectivizr": "1.0.2", - "tinymce-builded": "4.7.13", - "js-shortcuts": "^1.0.1", - "cs-jqtree-contextmenu": "^0.1.0" - }, - "devDependencies": { - "expect": "0.3.1", - "sinonjs": "1.17.1" - }, - "resolutions": { - "bootstrap": "3.3.6", - "jquery": "1.11.3", - "jquery-form": "3.51", - "select2": "3.5.4", - "moment": "2.10.6" - } -} diff --git a/mockup/Gruntfile.js b/mockup/Gruntfile.js index 645fca93c3..5fd0a86b58 100644 --- a/mockup/Gruntfile.js +++ b/mockup/Gruntfile.js @@ -65,9 +65,8 @@ module.exports = function(grunt) { //}, 'docs-legacy-js': { path: 'docs/dev/index.html', - pattern: - '\n \n ', - replacement: '' + pattern: '', + replacement: '\n' }, 'docs-catalogurl': { path: 'docs/dev/index.html', diff --git a/mockup/index.html b/mockup/index.html index 2fdd8c54c5..56607d009b 100644 --- a/mockup/index.html +++ b/mockup/index.html @@ -1,23 +1,12 @@ - - - - + - Mockup - - - + + + + + + + + + From 34074309ff052c98473e17805063095f685d5f4b Mon Sep 17 00:00:00 2001 From: Johannes Raggam Date: Tue, 2 Oct 2018 18:38:25 +0200 Subject: [PATCH 5/6] Add plone-patterns-toolbar pattern from CMFPlone. --- CHANGES.rst | 3 +- mockup/js/config.js | 1 + mockup/patterns/toolbar/.gitignore | 2 - mockup/patterns/toolbar/.jshintrc | 31 --- mockup/patterns/toolbar/Gruntfile.js | 40 --- mockup/patterns/toolbar/README.md | 23 -- mockup/patterns/toolbar/bower.json | 17 -- mockup/patterns/toolbar/bowerbuster.json | 1 - mockup/patterns/toolbar/buster.js | 25 -- mockup/patterns/toolbar/config.js | 18 -- mockup/patterns/toolbar/jspak.js | 26 -- mockup/patterns/toolbar/package.json | 15 -- .../toolbar/{src/toolbar.js => pattern.js} | 24 ++ ...oolbar.plone.less => pattern.toolbar.less} | 0 mockup/patterns/toolbar/plone-toolbarlogo.svg | 19 -- mockup/patterns/toolbar/test/test-toolbar.js | 12 - mockup/patterns/toolbar/toolbar-demo.html | 239 ------------------ .../toolbar/{src/css => }/variables.less | 0 mockup/tests/pattern-toolbar-test.js | 40 +++ 19 files changed, 67 insertions(+), 469 deletions(-) delete mode 100644 mockup/patterns/toolbar/.gitignore delete mode 100644 mockup/patterns/toolbar/.jshintrc delete mode 100644 mockup/patterns/toolbar/Gruntfile.js delete mode 100644 mockup/patterns/toolbar/README.md delete mode 100644 mockup/patterns/toolbar/bower.json delete mode 100644 mockup/patterns/toolbar/bowerbuster.json delete mode 100644 mockup/patterns/toolbar/buster.js delete mode 100644 mockup/patterns/toolbar/config.js delete mode 100644 mockup/patterns/toolbar/jspak.js delete mode 100644 mockup/patterns/toolbar/package.json rename mockup/patterns/toolbar/{src/toolbar.js => pattern.js} (96%) rename mockup/patterns/toolbar/{src/css/toolbar.plone.less => pattern.toolbar.less} (100%) delete mode 100644 mockup/patterns/toolbar/plone-toolbarlogo.svg delete mode 100644 mockup/patterns/toolbar/test/test-toolbar.js delete mode 100644 mockup/patterns/toolbar/toolbar-demo.html rename mockup/patterns/toolbar/{src/css => }/variables.less (100%) create mode 100644 mockup/tests/pattern-toolbar-test.js diff --git a/CHANGES.rst b/CHANGES.rst index e490479e7e..4e8d0115a2 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -35,7 +35,8 @@ Breaking changes: New features: -* add items here +* Add ``plone-patterns-toolbar`` pattern from CMFPlone. + [thet] Bug fixes: diff --git a/mockup/js/config.js b/mockup/js/config.js index 70e9a3f89f..96bdc91163 100644 --- a/mockup/js/config.js +++ b/mockup/js/config.js @@ -122,6 +122,7 @@ 'mockup-patterns-passwordstrength': 'patterns/passwordstrength/pattern', 'mockup-patterns-passwordstrength-url': 'patterns/passwordstrength', 'mockup-patterns-livesearch': 'patterns/livesearch/pattern', + 'plone-patterns-toolbar': 'patterns/toolbar/pattern', 'mockup-router': 'js/router', 'mockup-ui-url': 'js/ui', 'mockup-utils': 'js/utils', diff --git a/mockup/patterns/toolbar/.gitignore b/mockup/patterns/toolbar/.gitignore deleted file mode 100644 index 3907b5565d..0000000000 --- a/mockup/patterns/toolbar/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -components -node_modules diff --git a/mockup/patterns/toolbar/.jshintrc b/mockup/patterns/toolbar/.jshintrc deleted file mode 100644 index 86ea3b8033..0000000000 --- a/mockup/patterns/toolbar/.jshintrc +++ /dev/null @@ -1,31 +0,0 @@ -{ - "bitwise": true, - "browser": true, - "curly": true, - "eqeqeq": true, - "evil": true, - "immed": true, - "latedef": true, - "newcap": true, - "noarg": true, - "noempty": true, - "nomen": false, - "nonew": true, - "plusplus": true, - "strict": true, - "trailing": true, - "undef": true, - "globals": { - "afterEach": true, - "beforeEach": true, - "console": true, - "define": false, - "describe": true, - "document": false, - "it": true, - "require": false, - "requirejs": true, - "tinymce": true, - "window": false - } -} diff --git a/mockup/patterns/toolbar/Gruntfile.js b/mockup/patterns/toolbar/Gruntfile.js deleted file mode 100644 index 415e93e05d..0000000000 --- a/mockup/patterns/toolbar/Gruntfile.js +++ /dev/null @@ -1,40 +0,0 @@ -module.exports = function(grunt) { - - // Project configuration. - grunt.initConfig({ - pkg: grunt.file.readJSON('package.json'), - bower: { - target: { - rjsConfig: 'config.js' - } - }, - requirejs: { - compile: { - options: { - name: 'core', - mainConfigFile: 'config.js', - out: "jspak.js" - } - } - }, - bowerbuster: { - path: 'bowerbuster.json' - }, - buster: { - test: { - config: 'buster.js' - }, - server: { - port: 1111 - } - } - }); - - grunt.loadNpmTasks('grunt-requirejs'); - grunt.loadNpmTasks('grunt-bower-requirejs'); - grunt.loadNpmTasks('grunt-bower-busterjs'); - grunt.loadNpmTasks('grunt-buster'); - - grunt.registerTask('default', ['bower', 'requirejs']); - grunt.registerTask('test', ['bower', 'bowerbuster', 'buster']); -}; diff --git a/mockup/patterns/toolbar/README.md b/mockup/patterns/toolbar/README.md deleted file mode 100644 index 7f6593d613..0000000000 --- a/mockup/patterns/toolbar/README.md +++ /dev/null @@ -1,23 +0,0 @@ -# jspak - -A sample project where we hook up Bower to RequireJS and Bower to -Buster.JS, using Grunt. - -You need to have nodejs, npm, bower, grunt, buster and PhantomJS -installed. - -Installation: - - $ npm install - -Install client-side dependencies: - - $ bower install - -Run the tests with buster (and PhantomJS): - - $ grunt test - -For more about the background, see this blog post: - -http://blog.startifact.com/posts/overwhelmed-by-javascript-dependencies.html diff --git a/mockup/patterns/toolbar/bower.json b/mockup/patterns/toolbar/bower.json deleted file mode 100644 index 682bdff049..0000000000 --- a/mockup/patterns/toolbar/bower.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "jspak", - "version": "0.1.0", - "ignore": [ - "**/.*", - "node_modules", - "components" - ], - "dependencies": { - "jquery": "~2.0.0", - "requirejs": "", - "patternslib": "2.0.13" - }, - "resolutions": { - "jquery": "~2.0.0", - } -} diff --git a/mockup/patterns/toolbar/bowerbuster.json b/mockup/patterns/toolbar/bowerbuster.json deleted file mode 100644 index 4332b034b9..0000000000 --- a/mockup/patterns/toolbar/bowerbuster.json +++ /dev/null @@ -1 +0,0 @@ -["components/backbone/backbone.js",["components/bootstrap/dist/css/bootstrap.css","components/bootstrap/dist/js/bootstrap.js","components/bootstrap/dist/fonts/glyphicons-halflings-regular.eot","components/bootstrap/dist/fonts/glyphicons-halflings-regular.svg","components/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf","components/bootstrap/dist/fonts/glyphicons-halflings-regular.woff"],"components/console-polyfill/index.js","components/es5-shim","components/jquery/jquery.js","components/lodash/dist/lodash.compat.js","components/marked/lib/marked.js","components/react/react.js","components/requirejs-text","components/selectivizr","components/underscore/underscore.js"] diff --git a/mockup/patterns/toolbar/buster.js b/mockup/patterns/toolbar/buster.js deleted file mode 100644 index 47a6736a87..0000000000 --- a/mockup/patterns/toolbar/buster.js +++ /dev/null @@ -1,25 +0,0 @@ -var config = module.exports; - -var fs = require('fs'); - -var sources = JSON.parse(fs.readFileSync('bowerbuster.json', 'utf8')); -sources.push('src/**/*.js'); - -config.core = { - rootPath: ".", - environment: "browser", - libs: [ - 'components/requirejs/require.js', - 'config.js' - ], - sources: sources, - tests: [ - "test/**/*.js" - ], - extensions: [require('buster-amd')], - "buster-amd": { - pathMapper: function(path) { - return path.replace(/\.js$/, "").replace(/^\//, "../"); - } - } -}; diff --git a/mockup/patterns/toolbar/config.js b/mockup/patterns/toolbar/config.js deleted file mode 100644 index 78ba2ad1f8..0000000000 --- a/mockup/patterns/toolbar/config.js +++ /dev/null @@ -1,18 +0,0 @@ -require.config({ - baseUrl: 'src', - paths: { - backbone: '../components/backbone/backbone', - bootstrap: '../components/bootstrap/dist/js/bootstrap', - 'console-polyfill': '../components/console-polyfill/index', - jquery: '../components/jquery/jquery', - lodash: '../components/lodash/dist/lodash.compat', - marked: '../components/marked/lib/marked', - react: '../components/react/react', - 'requirejs-text': '../components/requirejs-text/text', - selectivizr: '../components/selectivizr/selectivizr', - underscore: '../components/underscore/underscore', - 'pat-registry': '../components/patternslib/src/core/registry', - 'pat-base': '../components/patternslib/src/core/base', - 'plone-patterns-toolbar': 'toolbar' - } -}); diff --git a/mockup/patterns/toolbar/jspak.js b/mockup/patterns/toolbar/jspak.js deleted file mode 100644 index afdec513cf..0000000000 --- a/mockup/patterns/toolbar/jspak.js +++ /dev/null @@ -1,26 +0,0 @@ -/*! - * jQuery JavaScript Library v2.0.0 - * http://jquery.com/ - * - * Includes Sizzle.js - * http://sizzlejs.com/ - * - * Copyright 2005, 2013 jQuery Foundation, Inc. and other contributors - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2013-04-18 - */ - -/*! - * Sizzle CSS Selector Engine v1.9.2-pre - * http://sizzlejs.com/ - * - * Copyright 2013 jQuery Foundation, Inc. and other contributors - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2013-04-16 - */ - -(function(window,undefined){function isArraylike(e){var t=e.length,n=jQuery.type(e);return jQuery.isWindow(e)?!1:e.nodeType===1&&t?!0:n==="array"||n!=="function"&&(t===0||typeof t=="number"&&t>0&&t-1 in e)}function createOptions(e){var t=optionsCache[e]={};return jQuery.each(e.match(core_rnotwhite)||[],function(e,n){t[n]=!0}),t}function Data(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=jQuery.expando+Math.random()}function dataAttr(e,t,n){var r;if(n===undefined&&e.nodeType===1){r="data-"+t.replace(rmultiDash,"-$1").toLowerCase(),n=e.getAttribute(r);if(typeof n=="string"){try{n=n==="true"?!0:n==="false"?!1:n==="null"?null:+n+""===n?+n:rbrace.test(n)?JSON.parse(n):n}catch(i){}data_user.set(e,t,n)}else n=undefined}return n}function returnTrue(){return!0}function returnFalse(){return!1}function safeActiveElement(){try{return document.activeElement}catch(e){}}function sibling(e,t){while((e=e[t])&&e.nodeType!==1);return e}function winnow(e,t,n){if(jQuery.isFunction(t))return jQuery.grep(e,function(e,r){return!!t.call(e,r,e)!==n});if(t.nodeType)return jQuery.grep(e,function(e){return e===t!==n});if(typeof t=="string"){if(isSimple.test(t))return jQuery.filter(t,e,n);t=jQuery.filter(t,e)}return jQuery.grep(e,function(e){return core_indexOf.call(t,e)>=0!==n})}function manipulationTarget(e,t){return jQuery.nodeName(e,"table")&&jQuery.nodeName(t.nodeType===1?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function disableScript(e){return e.type=(e.getAttribute("type")!==null)+"/"+e.type,e}function restoreScript(e){var t=rscriptTypeMasked.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function setGlobalEval(e,t){var n=e.length,r=0;for(;r").css("cssText","display:block !important")).appendTo(t.documentElement),t=(iframe[0].contentWindow||iframe[0].contentDocument).document,t.write(""),t.close(),n=actualDisplay(e,t),iframe.detach();elemdisplay[e]=n}return n}function actualDisplay(e,t){var n=jQuery(t.createElement(e)).appendTo(t.body),r=jQuery.css(n[0],"display");return n.remove(),r}function buildParams(e,t,n,r){var i;if(jQuery.isArray(t))jQuery.each(t,function(t,i){n||rbracket.test(e)?r(e,i):buildParams(e+"["+(typeof i=="object"?t:"")+"]",i,n,r)});else if(!n&&jQuery.type(t)==="object")for(i in t)buildParams(e+"["+i+"]",t[i],n,r);else r(e,t)}function addToPrefiltersOrTransports(e){return function(t,n){typeof t!="string"&&(n=t,t="*");var r,i=0,s=t.toLowerCase().match(core_rnotwhite)||[];if(jQuery.isFunction(n))while(r=s[i++])r[0]==="+"?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function inspectPrefiltersOrTransports(e,t,n,r){function o(u){var a;return i[u]=!0,jQuery.each(e[u]||[],function(e,u){var f=u(t,n,r);if(typeof f=="string"&&!s&&!i[f])return t.dataTypes.unshift(f),o(f),!1;if(s)return!(a=f)}),a}var i={},s=e===transports;return o(t.dataTypes[0])||!i["*"]&&o("*")}function ajaxExtend(e,t){var n,r,i=jQuery.ajaxSettings.flatOptions||{};for(n in t)t[n]!==undefined&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&jQuery.extend(!0,e,r),e}function ajaxHandleResponses(e,t,n){var r,i,s,o,u=e.contents,a=e.dataTypes;while(a[0]==="*")a.shift(),r===undefined&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in u)if(u[i]&&u[i].test(r)){a.unshift(i);break}if(a[0]in n)s=a[0];else{for(i in n){if(!a[0]||e.converters[i+" "+a[0]]){s=i;break}o||(o=i)}s=s||o}if(s)return s!==a[0]&&a.unshift(s),n[s]}function ajaxConvert(e,t,n,r){var i,s,o,u,a,f={},l=e.dataTypes.slice();if(l[1])for(o in e.converters)f[o.toLowerCase()]=e.converters[o];s=l.shift();while(s){e.responseFields[s]&&(n[e.responseFields[s]]=t),!a&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),a=s,s=l.shift();if(s)if(s==="*")s=a;else if(a!=="*"&&a!==s){o=f[a+" "+s]||f["* "+s];if(!o)for(i in f){u=i.split(" ");if(u[1]===s){o=f[a+" "+u[0]]||f["* "+u[0]];if(o){o===!0?o=f[i]:f[i]!==!0&&(s=u[0],l.unshift(u[1]));break}}}if(o!==!0)if(o&&e["throws"])t=o(t);else try{t=o(t)}catch(c){return{state:"parsererror",error:o?c:"No conversion from "+a+" to "+s}}}}return{state:"success",data:t}}function createFxNow(){return setTimeout(function(){fxNow=undefined}),fxNow=jQuery.now()}function createTweens(e,t){jQuery.each(t,function(t,n){var r=(tweeners[t]||[]).concat(tweeners["*"]),i=0,s=r.length;for(;i)[^>]*|#([\w-]*))$/,rsingleTag=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,rmsPrefix=/^-ms-/,rdashAlpha=/-([\da-z])/gi,fcamelCase=function(e,t){return t.toUpperCase()},completed=function(){document.removeEventListener("DOMContentLoaded",completed,!1),window.removeEventListener("load",completed,!1),jQuery.ready()};jQuery.fn=jQuery.prototype={jquery:core_version,constructor:jQuery,init:function(e,t,n){var r,i;if(!e)return this;if(typeof e=="string"){e.charAt(0)==="<"&&e.charAt(e.length-1)===">"&&e.length>=3?r=[null,e,null]:r=rquickExpr.exec(e);if(r&&(r[1]||!t)){if(r[1]){t=t instanceof jQuery?t[0]:t,jQuery.merge(this,jQuery.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:document,!0));if(rsingleTag.test(r[1])&&jQuery.isPlainObject(t))for(r in t)jQuery.isFunction(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return i=document.getElementById(r[2]),i&&i.parentNode&&(this.length=1,this[0]=i),this.context=document,this.selector=e,this}return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e)}return e.nodeType?(this.context=this[0]=e,this.length=1,this):jQuery.isFunction(e)?n.ready(e):(e.selector!==undefined&&(this.selector=e.selector,this.context=e.context),jQuery.makeArray(e,this))},selector:"",length:0,toArray:function(){return core_slice.call(this)},get:function(e){return e==null?this.toArray():e<0?this[this.length+e]:this[e]},pushStack:function(e){var t=jQuery.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return jQuery.each(this,e,t)},ready:function(e){return jQuery.ready.promise().done(e),this},slice:function(){return this.pushStack(core_slice.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n0)return;readyList.resolveWith(document,[jQuery]),jQuery.fn.trigger&&jQuery(document).trigger("ready").off("ready")},isFunction:function(e){return jQuery.type(e)==="function"},isArray:Array.isArray,isWindow:function(e){return e!=null&&e===e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return e==null?String(e):typeof e=="object"||typeof e=="function"?class2type[core_toString.call(e)]||"object":typeof e},isPlainObject:function(e){if(jQuery.type(e)!=="object"||e.nodeType||jQuery.isWindow(e))return!1;try{if(e.constructor&&!core_hasOwn.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(t){return!1}return!0},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw new Error(e)},parseHTML:function(e,t,n){if(!e||typeof e!="string")return null;typeof t=="boolean"&&(n=t,t=!1),t=t||document;var r=rsingleTag.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=jQuery.buildFragment([e],t,i),i&&jQuery(i).remove(),jQuery.merge([],r.childNodes))},parseJSON:JSON.parse,parseXML:function(e){var t,n;if(!e||typeof e!="string")return null;try{n=new DOMParser,t=n.parseFromString(e,"text/xml")}catch(r){t=undefined}return(!t||t.getElementsByTagName("parsererror").length)&&jQuery.error("Invalid XML: "+e),t},noop:function(){},globalEval:function(code){var script,indirect=eval;code=jQuery.trim(code),code&&(code.indexOf("use strict")===1?(script=document.createElement("script"),script.text=code,document.head.appendChild(script).parentNode.removeChild(script)):indirect(code))},camelCase:function(e){return e.replace(rmsPrefix,"ms-").replace(rdashAlpha,fcamelCase)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t,n){var r,i=0,s=e.length,o=isArraylike(e);if(n)if(o)for(;ii.cacheLength&&delete e[t.shift()],e[n]=r}}function ot(e){return e[y]=!0,e}function ut(e){var t=c.createElement("div");try{return!!e(t)}catch(n){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function at(e,t,n,r){var i,s,o,u,a,f,h,v,m,E;(t?t.ownerDocument||t:b)!==c&&l(t),t=t||c,n=n||[];if(!e||typeof e!="string")return n;if((u=t.nodeType)!==1&&u!==9)return[];if(p&&!r){if(i=G.exec(e))if(o=i[1]){if(u===9){s=t.getElementById(o);if(!s||!s.parentNode)return n;if(s.id===o)return n.push(s),n}else if(t.ownerDocument&&(s=t.ownerDocument.getElementById(o))&&g(t,s)&&s.id===o)return n.push(s),n}else{if(i[2])return D.apply(n,t.getElementsByTagName(e)),n;if((o=i[3])&&w.getElementsByClassName&&t.getElementsByClassName)return D.apply(n,t.getElementsByClassName(o)),n}if(w.qsa&&(!d||!d.test(e))){v=h=y,m=t,E=u===9&&e;if(u===1&&t.nodeName.toLowerCase()!=="object"){f=vt(e),(h=t.getAttribute("id"))?v=h.replace(et,"\\$&"):t.setAttribute("id",v),v="[id='"+v+"'] ",a=f.length;while(a--)f[a]=v+mt(f[a]);m=X.test(e)&&t.parentNode||t,E=f.join(",")}if(E)try{return D.apply(n,m.querySelectorAll(E)),n}catch(S){}finally{h||t.removeAttribute("id")}}}return Tt(e.replace(U,"$1"),t,n,r)}function ft(e,t){var n=t&&e,r=n&&(~t.sourceIndex||A)-(~e.sourceIndex||A);if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function lt(e,n,r){var i;return r?t:(i=e.getAttributeNode(n))&&i.specified?i.value:e[n]===!0?n.toLowerCase():null}function ct(e,n,r){var i;return r?t:i=e.getAttribute(n,n.toLowerCase()==="type"?1:2)}function ht(e){return function(t){var n=t.nodeName.toLowerCase();return n==="input"&&t.type===e}}function pt(e){return function(t){var n=t.nodeName.toLowerCase();return(n==="input"||n==="button")&&t.type===e}}function dt(e){return ot(function(t){return t=+t,ot(function(n,r){var i,s=e([],n.length,t),o=s.length;while(o--)n[i=s[o]]&&(n[i]=!(r[i]=n[i]))})})}function vt(e,t){var n,r,s,o,u,a,f,l=T[e+" "];if(l)return t?0:l.slice(0);u=e,a=[],f=i.preFilter;while(u){if(!n||(r=z.exec(u)))r&&(u=u.slice(r[0].length)||u),a.push(s=[]);n=!1;if(r=W.exec(u))n=r.shift(),s.push({value:n,type:r[0].replace(U," ")}),u=u.slice(n.length);for(o in i.filter)(r=K[o].exec(u))&&(!f[o]||(r=f[o](r)))&&(n=r.shift(),s.push({value:n,type:o,matches:r}),u=u.slice(n.length));if(!n)break}return t?u.length:u?at.error(e):T(e,a).slice(0)}function mt(e){var t=0,n=e.length,r="";for(;t1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function bt(e,t,n,r,i){var s,o=[],u=0,a=e.length,f=t!=null;for(;u-1&&(s[f]=!(o[f]=c))}}else g=bt(g===o?g.splice(d,g.length):g),i?i(null,o,g,a):D.apply(o,g)})}function Et(e){var t,n,r,s=e.length,o=i.relative[e[0].type],u=o||i.relative[" "],f=o?1:0,l=gt(function(e){return e===t},u,!0),c=gt(function(e){return H.call(t,e)>-1},u,!0),h=[function(e,n,r){return!o&&(r||n!==a)||((t=n).nodeType?l(e,n,r):c(e,n,r))}];for(;f1&&yt(h),f>1&&mt(e.slice(0,f-1)).replace(U,"$1"),n,f0,o=e.length>0,u=function(u,f,l,h,p){var d,v,m,g=[],y=0,b="0",w=u&&[],S=p!=null,x=a,T=u||o&&i.find.TAG("*",p&&f.parentNode||f),N=E+=x==null?1:Math.random()||.1;S&&(a=f!==c&&f,r=n);for(;(d=T[b])!=null;b++){if(o&&d){v=0;while(m=e[v++])if(m(d,f,l)){h.push(d);break}S&&(E=N,r=++n)}s&&((d=!m&&d)&&y--,u&&w.push(d))}y+=b;if(s&&b!==y){v=0;while(m=t[v++])m(w,g,f,l);if(u){if(y>0)while(b--)!w[b]&&!g[b]&&(g[b]=M.call(h));g=bt(g)}D.apply(h,g),S&&!u&&g.length>0&&y+t.length>1&&at.uniqueSort(h)}return S&&(E=N,a=x),w};return s?ot(u):u}function xt(e,t,n){var r=0,i=t.length;for(;r2&&(a=o[0]).type==="ID"&&t.nodeType===9&&p&&i.relative[o[1].type]){t=(i.find.ID(a.matches[0].replace(tt,nt),t)||[])[0];if(!t)return n;e=e.slice(o.shift().value.length)}s=K.needsContext.test(e)?0:o.length;while(s--){a=o[s];if(i.relative[f=a.type])break;if(l=i.find[f])if(r=l(a.matches[0].replace(tt,nt),X.test(o[0].type)&&t.parentNode||t)){o.splice(s,1),e=r.length&&mt(o);if(!e)return D.apply(n,r),n;break}}}return u(e,c)(r,t,!p,n,X.test(e)),n}function Nt(){}var n,r,i,s,o,u,a,f,l,c,h,p,d,v,m,g,y="sizzle"+ -(new Date),b=e.document,w={},E=0,S=0,x=st(),T=st(),N=st(),C=!1,k=function(){return 0},L=typeof t,A=1<<31,O=[],M=O.pop,_=O.push,D=O.push,P=O.slice,H=O.indexOf||function(e){var t=0,n=this.length;for(;t+~]|"+j+")"+j+"*"),X=new RegExp(j+"*[+~]"),V=new RegExp("="+j+"*([^\\]'\"]*)"+j+"*\\]","g"),$=new RegExp(R),J=new RegExp("^"+I+"$"),K={ID:new RegExp("^#("+F+")"),CLASS:new RegExp("^\\.("+F+")"),TAG:new RegExp("^("+F.replace("w","w*")+")"),ATTR:new RegExp("^"+q),PSEUDO:new RegExp("^"+R),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+j+"*(even|odd|(([+-]|)(\\d*)n|)"+j+"*(?:([+-]|)"+j+"*(\\d+)|))"+j+"*\\)|)","i"),"boolean":new RegExp("^(?:"+B+")$","i"),needsContext:new RegExp("^"+j+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+j+"*((?:-\\d)?\\d*)"+j+"*\\)|)(?=[^-]|$)","i")},Q=/^[^{]+\{\s*\[native \w/,G=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,Y=/^(?:input|select|textarea|button)$/i,Z=/^h\d$/i,et=/'|\\/g,tt=/\\([\da-fA-F]{1,6}[\x20\t\r\n\f]?|.)/g,nt=function(e,t){var n="0x"+t-65536;return n!==n?t:n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,n&1023|56320)};try{D.apply(O=P.call(b.childNodes),b.childNodes),O[b.childNodes.length].nodeType}catch(rt){D={apply:O.length?function(e,t){_.apply(e,P.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}o=at.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?t.nodeName!=="HTML":!1},l=at.setDocument=function(e){var n=e?e.ownerDocument||e:b;if(n===c||n.nodeType!==9||!n.documentElement)return c;c=n,h=n.documentElement,p=!o(n),w.getElementsByTagName=ut(function(e){return e.appendChild(n.createComment("")),!e.getElementsByTagName("*").length}),w.attributes=ut(function(e){return e.className="i",!e.getAttribute("className")}),w.getElementsByClassName=ut(function(e){return e.innerHTML="
",e.firstChild.className="i",e.getElementsByClassName("i").length===2}),w.sortDetached=ut(function(e){return e.compareDocumentPosition(c.createElement("div"))&1}),w.getById=ut(function(e){return h.appendChild(e).id=y,!n.getElementsByName||!n.getElementsByName(y).length}),w.getById?(i.find.ID=function(e,t){if(typeof t.getElementById!==L&&p){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},i.filter.ID=function(e){var t=e.replace(tt,nt);return function(e){return e.getAttribute("id")===t}}):(i.find.ID=function(e,n){if(typeof n.getElementById!==L&&p){var r=n.getElementById(e);return r?r.id===e||typeof r.getAttributeNode!==L&&r.getAttributeNode("id").value===e?[r]:t:[]}},i.filter.ID=function(e){var t=e.replace(tt,nt);return function(e){var n=typeof e.getAttributeNode!==L&&e.getAttributeNode("id");return n&&n.value===t}}),i.find.TAG=w.getElementsByTagName?function(e,t){if(typeof t.getElementsByTagName!==L)return t.getElementsByTagName(e)}:function(e,t){var n,r=[],i=0,s=t.getElementsByTagName(e);if(e==="*"){while(n=s[i++])n.nodeType===1&&r.push(n);return r}return s},i.find.CLASS=w.getElementsByClassName&&function(e,t){if(typeof t.getElementsByClassName!==L&&p)return t.getElementsByClassName(e)},v=[],d=[];if(w.qsa=it(n.querySelectorAll))ut(function(e){e.innerHTML="",e.querySelectorAll("[selected]").length||d.push("\\["+j+"*(?:value|"+B+")"),e.querySelectorAll(":checked").length||d.push(":checked")}),ut(function(e){var t=c.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("t",""),e.querySelectorAll("[t^='']").length&&d.push("[*^$]="+j+"*(?:''|\"\")"),e.querySelectorAll(":enabled").length||d.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),d.push(",.*:")});return(w.matchesSelector=it(m=h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&ut(function(e){w.disconnectedMatch=m.call(e,"div"),m.call(e,"[s!='']:x"),v.push("!=",R)}),d=d.length&&new RegExp(d.join("|")),v=v.length&&new RegExp(v.join("|")),g=it(h.contains)||h.compareDocumentPosition?function(e,t){var n=e.nodeType===9?e.documentElement:e,r=t&&t.parentNode;return e===r||!!r&&r.nodeType===1&&!!(n.contains?n.contains(r):e.compareDocumentPosition&&e.compareDocumentPosition(r)&16)}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},k=h.compareDocumentPosition?function(e,t){if(e===t)return C=!0,0;var r=t.compareDocumentPosition&&e.compareDocumentPosition&&e.compareDocumentPosition(t);if(r)return r&1||!w.sortDetached&&t.compareDocumentPosition(e)===r?e===n||g(b,e)?-1:t===n||g(b,t)?1:f?H.call(f,e)-H.call(f,t):0:r&4?-1:1;return e.compareDocumentPosition?-1:1}:function(e,t){var r,i=0,s=e.parentNode,o=t.parentNode,u=[e],a=[t];if(e===t)return C=!0,0;if(!s||!o)return e===n?-1:t===n?1:s?-1:o?1:f?H.call(f,e)-H.call(f,t):0;if(s===o)return ft(e,t);r=e;while(r=r.parentNode)u.unshift(r);r=t;while(r=r.parentNode)a.unshift(r);while(u[i]===a[i])i++;return i?ft(u[i],a[i]):u[i]===b?-1:a[i]===b?1:0},c},at.matches=function(e,t){return at(e,null,null,t)},at.matchesSelector=function(e,t){(e.ownerDocument||e)!==c&&l(e),t=t.replace(V,"='$1']");if(w.matchesSelector&&p&&(!v||!v.test(t))&&(!d||!d.test(t)))try{var n=m.call(e,t);if(n||w.disconnectedMatch||e.document&&e.document.nodeType!==11)return n}catch(r){}return at(t,c,null,[e]).length>0},at.contains=function(e,t){return(e.ownerDocument||e)!==c&&l(e),g(e,t)},at.attr=function(e,n){(e.ownerDocument||e)!==c&&l(e);var r=i.attrHandle[n.toLowerCase()],s=r&&r(e,n,!p);return s===t?w.attributes||!p?e.getAttribute(n):(s=e.getAttributeNode(n))&&s.specified?s.value:null:s},at.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},at.uniqueSort=function(e){var t,n=[],r=0,i=0;C=!w.detectDuplicates,f=!w.sortStable&&e.slice(0),e.sort(k);if(C){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return e},s=at.getText=function(e){var t,n="",r=0,i=e.nodeType;if(!i)for(;t=e[r];r++)n+=s(t);else if(i===1||i===9||i===11){if(typeof e.textContent=="string")return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=s(e)}else if(i===3||i===4)return e.nodeValue;return n},i=at.selectors={cacheLength:50,createPseudo:ot,match:K,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(tt,nt),e[3]=(e[4]||e[5]||"").replace(tt,nt),e[2]==="~="&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),e[1].slice(0,3)==="nth"?(e[3]||at.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*(e[3]==="even"||e[3]==="odd")),e[5]=+(e[7]+e[8]||e[3]==="odd")):e[3]&&at.error(e[0]),e},PSEUDO:function(e){var t,n=!e[5]&&e[2];return K.CHILD.test(e[0])?null:(e[4]?e[2]=e[4]:n&&$.test(n)&&(t=vt(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(tt,nt).toLowerCase();return e==="*"?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=x[e+" "];return t||(t=new RegExp("(^|"+j+")"+e+"("+j+"|$)"))&&x(e,function(e){return t.test(typeof e.className=="string"&&e.className||typeof e.getAttribute!==L&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=at.attr(r,e);return i==null?t==="!=":t?(i+="",t==="="?i===n:t==="!="?i!==n:t==="^="?n&&i.indexOf(n)===0: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 s=e.slice(0,3)!=="nth",o=e.slice(-4)!=="last",u=t==="of-type";return r===1&&i===0?function(e){return!!e.parentNode}:function(t,n,a){var f,l,c,h,p,d,v=s!==o?"nextSibling":"previousSibling",m=t.parentNode,g=u&&t.nodeName.toLowerCase(),b=!a&&!u;if(m){if(s){while(v){c=t;while(c=c[v])if(u?c.nodeName.toLowerCase()===g:c.nodeType===1)return!1;d=v=e==="only"&&!d&&"nextSibling"}return!0}d=[o?m.firstChild:m.lastChild];if(o&&b){l=m[y]||(m[y]={}),f=l[e]||[],p=f[0]===E&&f[1],h=f[0]===E&&f[2],c=p&&m.childNodes[p];while(c=++p&&c&&c[v]||(h=p=0)||d.pop())if(c.nodeType===1&&++h&&c===t){l[e]=[E,p,h];break}}else if(b&&(f=(t[y]||(t[y]={}))[e])&&f[0]===E)h=f[1];else while(c=++p&&c&&c[v]||(h=p=0)||d.pop())if((u?c.nodeName.toLowerCase()===g:c.nodeType===1)&&++h){b&&((c[y]||(c[y]={}))[e]=[E,h]);if(c===t)break}return h-=i,h===r||h%r===0&&h/r>=0}}},PSEUDO:function(e,t){var n,r=i.pseudos[e]||i.setFilters[e.toLowerCase()]||at.error("unsupported pseudo: "+e);return r[y]?r(t):r.length>1?(n=[e,e,"",t],i.setFilters.hasOwnProperty(e.toLowerCase())?ot(function(e,n){var i,s=r(e,t),o=s.length;while(o--)i=H.call(e,s[o]),e[i]=!(n[i]=s[o])}):function(e){return r(e,0,n)}):r}},pseudos:{not:ot(function(e){var t=[],n=[],r=u(e.replace(U,"$1"));return r[y]?ot(function(e,t,n,i){var s,o=r(e,null,i,[]),u=e.length;while(u--)if(s=o[u])e[u]=!(t[u]=s)}):function(e,i,s){return t[0]=e,r(t,null,s,n),!n.pop()}}),has:ot(function(e){return function(t){return at(e,t).length>0}}),contains:ot(function(e){return function(t){return(t.textContent||t.innerText||s(t)).indexOf(e)>-1}}),lang:ot(function(e){return J.test(e||"")||at.error("unsupported lang: "+e),e=e.replace(tt,nt).toLowerCase(),function(t){var n;do if(n=p?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===e||n.indexOf(e+"-")===0;while((t=t.parentNode)&&t.nodeType===1);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===h},focus:function(e){return e===c.activeElement&&(!c.hasFocus||c.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 t==="input"&&!!e.checked||t==="option"&&!!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>"@"||e.nodeType===3||e.nodeType===4)return!1;return!0},parent:function(e){return!i.pseudos.empty(e)},header:function(e){return Z.test(e.nodeName)},input:function(e){return Y.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return t==="input"&&e.type==="button"||t==="button"},text:function(e){var t;return e.nodeName.toLowerCase()==="input"&&e.type==="text"&&((t=e.getAttribute("type"))==null||t.toLowerCase()===e.type)},first:dt(function(){return[0]}),last:dt(function(e,t){return[t-1]}),eq:dt(function(e,t,n){return[n<0?n+t:n]}),even:dt(function(e,t){var n=0;for(;n=0;)e.push(r);return e}),gt:dt(function(e,t,n){var r=n<0?n+t:n;for(;++r";if(e.firstChild.getAttribute("href")!=="#"){var t="type|href|height|width".split("|"),n=t.length;while(n--)i.attrHandle[t[n]]=ct}}),ut(function(e){if(e.getAttribute("disabled")!=null){var t=B.split("|"),n=t.length;while(n--)i.attrHandle[t[n]]=lt}}),jQuery.find=at,jQuery.expr=at.selectors,jQuery.expr[":"]=jQuery.expr.pseudos,jQuery.unique=at.uniqueSort,jQuery.text=at.getText,jQuery.isXMLDoc=at.isXML,jQuery.contains=at.contains}(window);var optionsCache={};jQuery.Callbacks=function(e){e=typeof e=="string"?optionsCache[e]||createOptions(e):jQuery.extend({},e);var t,n,r,i,s,o,u=[],a=!e.once&&[],f=function(c){t=e.memory&&c,n=!0,o=i||0,i=0,s=u.length,r=!0;for(;u&&o-1)u.splice(n,1),r&&(n<=s&&s--,n<=o&&o--)}),this},has:function(e){return e?jQuery.inArray(e,u)>-1:!!u&&!!u.length},empty:function(){return u=[],s=0,this},disable:function(){return u=a=t=undefined,this},disabled:function(){return!u},lock:function(){return a=undefined,t||l.disable(),this},locked:function(){return!a},fireWith:function(e,t){return t=t||[],t=[e,t.slice?t.slice():t],u&&(!n||a)&&(r?a.push(t):f(t)),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!n}};return l},jQuery.extend({Deferred:function(e){var t=[["resolve","done",jQuery.Callbacks("once memory"),"resolved"],["reject","fail",jQuery.Callbacks("once memory"),"rejected"],["notify","progress",jQuery.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return jQuery.Deferred(function(n){jQuery.each(t,function(t,s){var o=s[0],u=jQuery.isFunction(e[t])&&e[t];i[s[1]](function(){var e=u&&u.apply(this,arguments);e&&jQuery.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[o+"With"](this===r?n.promise():this,u?[e]:arguments)})}),e=null}).promise()},promise:function(e){return e!=null?jQuery.extend(e,r):r}},i={};return r.pipe=r.then,jQuery.each(t,function(e,s){var o=s[2],u=s[3];r[s[1]]=o.add,u&&o.add(function(){n=u},t[e^1][2].disable,t[2][2].lock),i[s[0]]=function(){return i[s[0]+"With"](this===i?r:this,arguments),this},i[s[0]+"With"]=o.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=core_slice.call(arguments),r=n.length,i=r!==1||e&&jQuery.isFunction(e.promise)?r:0,s=i===1?e:jQuery.Deferred(),o=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?core_slice.call(arguments):r,n===u?s.notifyWith(t,n):--i||s.resolveWith(t,n)}},u,a,f;if(r>1){u=new Array(r),a=new Array(r),f=new Array(r);for(;t1,null,!0)},removeData:function(e){return this.each(function(){data_user.remove(this,e)})}}),jQuery.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=data_priv.get(e,t),n&&(!r||jQuery.isArray(n)?r=data_priv.access(e,t,jQuery.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=jQuery.queue(e,t),r=n.length,i=n.shift(),s=jQuery._queueHooks(e,t),o=function(){jQuery.dequeue(e,t)};i==="inprogress"&&(i=n.shift(),r--),s.cur=i,i&&(t==="fx"&&n.unshift("inprogress"),delete s.stop,i.call(e,o,s)),!r&&s&&s.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return data_priv.get(e,n)||data_priv.access(e,n,{empty:jQuery.Callbacks("once memory").add(function(){data_priv.remove(e,[t+"queue",n])})})}}),jQuery.fn.extend({queue:function(e,t){var n=2;return typeof e!="string"&&(t=e,e="fx",n--),arguments.length1)},removeAttr:function(e){return this.each(function(){jQuery.removeAttr(this,e)})},prop:function(e,t){return jQuery.access(this,jQuery.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[jQuery.propFix[e]||e]})},addClass:function(e){var t,n,r,i,s,o=0,u=this.length,a=typeof e=="string"&&e;if(jQuery.isFunction(e))return this.each(function(t){jQuery(this).addClass(e.call(this,t,this.className))});if(a){t=(e||"").match(core_rnotwhite)||[];for(;o=0)r=r.replace(" "+i+" "," ");n.className=e?jQuery.trim(r):""}}}return this},toggleClass:function(e,t){var n=typeof e,r=typeof t=="boolean";return jQuery.isFunction(e)?this.each(function(n){jQuery(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if(n==="string"){var i,s=0,o=jQuery(this),u=t,a=e.match(core_rnotwhite)||[];while(i=a[s++])u=r?u:!o.hasClass(i),o[u?"addClass":"removeClass"](i)}else if(n===core_strundefined||n==="boolean")this.className&&data_priv.set(this,"__className__",this.className),this.className=this.className||e===!1?"":data_priv.get(this,"__className__")||""})},hasClass:function(e){var t=" "+e+" ",n=0,r=this.length;for(;n=0)return!0;return!1},val:function(e){var t,n,r,i=this[0];if(!arguments.length){if(i)return t=jQuery.valHooks[i.type]||jQuery.valHooks[i.nodeName.toLowerCase()],t&&"get"in t&&(n=t.get(i,"value"))!==undefined?n:(n=i.value,typeof n=="string"?n.replace(rreturn,""):n==null?"":n);return}return r=jQuery.isFunction(e),this.each(function(n){var i,s=jQuery(this);if(this.nodeType!==1)return;r?i=e.call(this,n,s.val()):i=e,i==null?i="":typeof i=="number"?i+="":jQuery.isArray(i)&&(i=jQuery.map(i,function(e){return e==null?"":e+""})),t=jQuery.valHooks[this.type]||jQuery.valHooks[this.nodeName.toLowerCase()];if(!t||!("set"in t)||t.set(this,i,"value")===undefined)this.value=i})}}),jQuery.extend({valHooks:{option:{get:function(e){var t=e.attributes.value;return!t||t.specified?e.value:e.text}},select:{get:function(e){var t,n,r=e.options,i=e.selectedIndex,s=e.type==="select-one"||i<0,o=s?null:[],u=s?i+1:r.length,a=i<0?u:s?i:0;for(;a=0)n=!0}return n||(e.selectedIndex=-1),s}}},attr:function(e,t,n){var r,i,s=e.nodeType;if(!e||s===3||s===8||s===2)return;if(typeof e.getAttribute===core_strundefined)return jQuery.prop(e,t,n);if(s!==1||!jQuery.isXMLDoc(e))t=t.toLowerCase(),r=jQuery.attrHooks[t]||(jQuery.expr.match.boolean.test(t)?boolHook:nodeHook);if(n===undefined)return r&&"get"in r&&(i=r.get(e,t))!==null?i:(i=jQuery.find.attr(e,t),i==null?undefined:i);if(n!==null)return r&&"set"in r&&(i=r.set(e,n,t))!==undefined?i:(e.setAttribute(t,n+""),n);jQuery.removeAttr(e,t)},removeAttr:function(e,t){var n,r,i=0,s=t&&t.match(core_rnotwhite);if(s&&e.nodeType===1)while(n=s[i++])r=jQuery.propFix[n]||n,jQuery.expr.match.boolean.test(n)&&(e[r]=!1),e.removeAttribute(n)},attrHooks:{type:{set:function(e,t){if(!jQuery.support.radioValue&&t==="radio"&&jQuery.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,t,n){var r,i,s,o=e.nodeType;if(!e||o===3||o===8||o===2)return;return s=o!==1||!jQuery.isXMLDoc(e),s&&(t=jQuery.propFix[t]||t,i=jQuery.propHooks[t]),n!==undefined?i&&"set"in i&&(r=i.set(e,n,t))!==undefined?r:e[t]=n:i&&"get"in i&&(r=i.get(e,t))!==null?r:e[t]},propHooks:{tabIndex:{get:function(e){return e.hasAttribute("tabindex")||rfocusable.test(e.nodeName)||e.href?e.tabIndex:-1}}}}),boolHook={set:function(e,t,n){return t===!1?jQuery.removeAttr(e,n):e.setAttribute(n,n),n}},jQuery.each(jQuery.expr.match.boolean.source.match(/\w+/g),function(e,t){var n=jQuery.expr.attrHandle[t]||jQuery.find.attr;jQuery.expr.attrHandle[t]=function(e,t,r){var i=jQuery.expr.attrHandle[t],s=r?undefined:(jQuery.expr.attrHandle[t]=undefined)!=n(e,t,r)?t.toLowerCase():null;return jQuery.expr.attrHandle[t]=i,s}}),jQuery.support.optSelected||(jQuery.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null}}),jQuery.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){jQuery.propFix[this.toLowerCase()]=this}),jQuery.each(["radio","checkbox"],function(){jQuery.valHooks[this]={set:function(e,t){if(jQuery.isArray(t))return e.checked=jQuery.inArray(jQuery(e).val(),t)>=0}},jQuery.support.checkOn||(jQuery.valHooks[this].get=function(e){return e.getAttribute("value")===null?"on":e.value})});var rkeyEvent=/^key/,rmouseEvent=/^(?:mouse|contextmenu)|click/,rfocusMorph=/^(?:focusinfocus|focusoutblur)$/,rtypenamespace=/^([^.]*)(?:\.(.+)|)$/;jQuery.event={global:{},add:function(e,t,n,r,i){var s,o,u,a,f,l,c,h,p,d,v,m=data_priv.get(e);if(!m)return;n.handler&&(s=n,n=s.handler,i=s.selector),n.guid||(n.guid=jQuery.guid++),(a=m.events)||(a=m.events={}),(o=m.handle)||(o=m.handle=function(e){return typeof jQuery===core_strundefined||!!e&&jQuery.event.triggered===e.type?undefined:jQuery.event.dispatch.apply(o.elem,arguments)},o.elem=e),t=(t||"").match(core_rnotwhite)||[""],f=t.length;while(f--){u=rtypenamespace.exec(t[f])||[],p=v=u[1],d=(u[2]||"").split(".").sort();if(!p)continue;c=jQuery.event.special[p]||{},p=(i?c.delegateType:c.bindType)||p,c=jQuery.event.special[p]||{},l=jQuery.extend({type:p,origType:v,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&jQuery.expr.match.needsContext.test(i),namespace:d.join(".")},s),(h=a[p])||(h=a[p]=[],h.delegateCount=0,(!c.setup||c.setup.call(e,r,d,o)===!1)&&e.addEventListener&&e.addEventListener(p,o,!1)),c.add&&(c.add.call(e,l),l.handler.guid||(l.handler.guid=n.guid)),i?h.splice(h.delegateCount++,0,l):h.push(l),jQuery.event.global[p]=!0}e=null},remove:function(e,t,n,r,i){var s,o,u,a,f,l,c,h,p,d,v,m=data_priv.hasData(e)&&data_priv.get(e);if(!m||!(a=m.events))return;t=(t||"").match(core_rnotwhite)||[""],f=t.length;while(f--){u=rtypenamespace.exec(t[f])||[],p=v=u[1],d=(u[2]||"").split(".").sort();if(!p){for(p in a)jQuery.event.remove(e,p+t[f],n,r,!0);continue}c=jQuery.event.special[p]||{},p=(r?c.delegateType:c.bindType)||p,h=a[p]||[],u=u[2]&&new RegExp("(^|\\.)"+d.join("\\.(?:.*\\.|)")+"(\\.|$)"),o=s=h.length;while(s--)l=h[s],(i||v===l.origType)&&(!n||n.guid===l.guid)&&(!u||u.test(l.namespace))&&(!r||r===l.selector||r==="**"&&l.selector)&&(h.splice(s,1),l.selector&&h.delegateCount--,c.remove&&c.remove.call(e,l));o&&!h.length&&((!c.teardown||c.teardown.call(e,d,m.handle)===!1)&&jQuery.removeEvent(e,p,m.handle),delete a[p])}jQuery.isEmptyObject(a)&&(delete m.handle,data_priv.remove(e,"events"))},trigger:function(e,t,n,r){var i,s,o,u,a,f,l,c=[n||document],h=core_hasOwn.call(e,"type")?e.type:e,p=core_hasOwn.call(e,"namespace")?e.namespace.split("."):[];s=o=n=n||document;if(n.nodeType===3||n.nodeType===8)return;if(rfocusMorph.test(h+jQuery.event.triggered))return;h.indexOf(".")>=0&&(p=h.split("."),h=p.shift(),p.sort()),a=h.indexOf(":")<0&&"on"+h,e=e[jQuery.expando]?e:new jQuery.Event(h,typeof e=="object"&&e),e.isTrigger=r?2:3,e.namespace=p.join("."),e.namespace_re=e.namespace?new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=undefined,e.target||(e.target=n),t=t==null?[e]:jQuery.makeArray(t,[e]),l=jQuery.event.special[h]||{};if(!r&&l.trigger&&l.trigger.apply(n,t)===!1)return;if(!r&&!l.noBubble&&!jQuery.isWindow(n)){u=l.delegateType||h,rfocusMorph.test(u+h)||(s=s.parentNode);for(;s;s=s.parentNode)c.push(s),o=s;o===(n.ownerDocument||document)&&c.push(o.defaultView||o.parentWindow||window)}i=0;while((s=c[i++])&&!e.isPropagationStopped())e.type=i>1?u:l.bindType||h,f=(data_priv.get(s,"events")||{})[e.type]&&data_priv.get(s,"handle"),f&&f.apply(s,t),f=a&&s[a],f&&jQuery.acceptData(s)&&f.apply&&f.apply(s,t)===!1&&e.preventDefault();return e.type=h,!r&&!e.isDefaultPrevented()&&(!l._default||l._default.apply(c.pop(),t)===!1)&&jQuery.acceptData(n)&&a&&jQuery.isFunction(n[h])&&!jQuery.isWindow(n)&&(o=n[a],o&&(n[a]=null),jQuery.event.triggered=h,n[h](),jQuery.event.triggered=undefined,o&&(n[a]=o)),e.result},dispatch:function(e){e=jQuery.event.fix(e);var t,n,r,i,s,o=[],u=core_slice.call(arguments),a=(data_priv.get(this,"events")||{})[e.type]||[],f=jQuery.event.special[e.type]||{};u[0]=e,e.delegateTarget=this;if(f.preDispatch&&f.preDispatch.call(this,e)===!1)return;o=jQuery.event.handlers.call(this,e,a),t=0;while((i=o[t++])&&!e.isPropagationStopped()){e.currentTarget=i.elem,n=0;while((s=i.handlers[n++])&&!e.isImmediatePropagationStopped())if(!e.namespace_re||e.namespace_re.test(s.namespace))e.handleObj=s,e.data=s.data,r=((jQuery.event.special[s.origType]||{}).handle||s.handler).apply(i.elem,u),r!==undefined&&(e.result=r)===!1&&(e.preventDefault(),e.stopPropagation())}return f.postDispatch&&f.postDispatch.call(this,e),e.result},handlers:function(e,t){var n,r,i,s,o=[],u=t.delegateCount,a=e.target;if(u&&a.nodeType&&(!e.button||e.type!=="click"))for(;a!==this;a=a.parentNode||this)if(a.disabled!==!0||e.type!=="click"){r=[];for(n=0;n=0:jQuery.find(i,this,null,[a]).length),r[i]&&r.push(s);r.length&&o.push({elem:a,handlers:r})}return u1?jQuery.unique(n):n),n.selector=(this.selector?this.selector+" ":"")+e,n},has:function(e){var t=jQuery(e,this),n=t.length;return this.filter(function(){var e=0;for(;e=0:jQuery.filter(e,this).length>0:this.filter(e).length>0)},closest:function(e,t){var n,r=0,i=this.length,s=[],o=rneedsContext.test(e)||typeof e!="string"?jQuery(e,t||this.context):0;for(;r-1:n.nodeType===1&&jQuery.find.matchesSelector(n,e))){n=s.push(n);break}return this.pushStack(s.length>1?jQuery.unique(s):s)},index:function(e){return e?typeof e=="string"?core_indexOf.call(jQuery(e),this[0]):core_indexOf.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){var n=typeof e=="string"?jQuery(e,t):jQuery.makeArray(e&&e.nodeType?[e]:e),r=jQuery.merge(this.get(),n);return this.pushStack(jQuery.unique(r))},addBack:function(e){return this.add(e==null?this.prevObject:this.prevObject.filter(e))}}),jQuery.each({parent:function(e){var t=e.parentNode;return t&&t.nodeType!==11?t:null},parents:function(e){return jQuery.dir(e,"parentNode")},parentsUntil:function(e,t,n){return jQuery.dir(e,"parentNode",n)},next:function(e){return sibling(e,"nextSibling")},prev:function(e){return sibling(e,"previousSibling")},nextAll:function(e){return jQuery.dir(e,"nextSibling")},prevAll:function(e){return jQuery.dir(e,"previousSibling")},nextUntil:function(e,t,n){return jQuery.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return jQuery.dir(e,"previousSibling",n)},siblings:function(e){return jQuery.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return jQuery.sibling(e.firstChild)},contents:function(e){return jQuery.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:jQuery.merge([],e.childNodes)}},function(e,t){jQuery.fn[e]=function(n,r){var i=jQuery.map(this,t,n);return e.slice(-5)!=="Until"&&(r=n),r&&typeof r=="string"&&(i=jQuery.filter(r,i)),this.length>1&&(guaranteedUnique[e]||jQuery.unique(i),e[0]==="p"&&i.reverse()),this.pushStack(i)}}),jQuery.extend({filter:function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),t.length===1&&r.nodeType===1?jQuery.find.matchesSelector(r,e)?[r]:[]:jQuery.find.matches(e,jQuery.grep(t,function(e){return e.nodeType===1}))},dir:function(e,t,n){var r=[],i=n!==undefined;while((e=e[t])&&e.nodeType!==9)if(e.nodeType===1){if(i&&jQuery(e).is(n))break;r.push(e)}return r},sibling:function(e,t){var n=[];for(;e;e=e.nextSibling)e.nodeType===1&&e!==t&&n.push(e);return n}});var rxhtmlTag=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,rtagName=/<([\w:]+)/,rhtml=/<|&#?\w+;/,rnoInnerhtml=/<(?:script|style|link)/i,manipulation_rcheckableType=/^(?:checkbox|radio)$/i,rchecked=/checked\s*(?:[^=]|=\s*.checked.)/i,rscriptType=/^$|\/(?:java|ecma)script/i,rscriptTypeMasked=/^true\/(.*)/,rcleanScript=/^\s*\s*$/g,wrapMap={option:[1,""],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};wrapMap.optgroup=wrapMap.option,wrapMap.tbody=wrapMap.tfoot=wrapMap.colgroup=wrapMap.caption=wrapMap.col=wrapMap.thead,wrapMap.th=wrapMap.td,jQuery.fn.extend({text:function(e){return jQuery.access(this,function(e){return e===undefined?jQuery.text(this):this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(e))},null,e,arguments.length)},append:function(){return this.domManip(arguments,function(e){if(this.nodeType===1||this.nodeType===11||this.nodeType===9){var t=manipulationTarget(this,e);t.appendChild(e)}})},prepend:function(){return this.domManip(arguments,function(e){if(this.nodeType===1||this.nodeType===11||this.nodeType===9){var t=manipulationTarget(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?jQuery.filter(e,this):this,i=0;for(;(n=r[i])!=null;i++)!t&&n.nodeType===1&&jQuery.cleanData(getAll(n)),n.parentNode&&(t&&jQuery.contains(n.ownerDocument,n)&&setGlobalEval(getAll(n,"script")),n.parentNode.removeChild(n));return this},empty:function(){var e,t=0;for(;(e=this[t])!=null;t++)e.nodeType===1&&(jQuery.cleanData(getAll(e,!1)),e.textContent="");return this},clone:function(e,t){return e=e==null?!1:e,t=t==null?e:t,this.map(function(){return jQuery.clone(this,e,t)})},html:function(e){return jQuery.access(this,function(e){var t=this[0]||{},n=0,r=this.length;if(e===undefined&&t.nodeType===1)return t.innerHTML;if(typeof e=="string"&&!rnoInnerhtml.test(e)&&!wrapMap[(rtagName.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(rxhtmlTag,"<$1>");try{for(;n0&&setGlobalEval(o,!a&&getAll(e,"script")),u},buildFragment:function(e,t,n,r){var i,s,o,u,a,f,l=0,c=e.length,h=t.createDocumentFragment(),p=[];for(;l")+u[2],f=u[0];while(f--)s=s.firstChild;jQuery.merge(p,s.childNodes),s=h.firstChild,s.textContent=""}}h.textContent="",l=0;while(i=p[l++]){if(r&&jQuery.inArray(i,r)!==-1)continue;a=jQuery.contains(i.ownerDocument,i),s=getAll(h.appendChild(i),"script"),a&&setGlobalEval(s);if(n){f=0;while(i=s[f++])rscriptType.test(i.type||"")&&n.push(i)}}return h},cleanData:function(e){var t,n,r,i=e.length,s=0,o=jQuery.event.special;for(;s1)},show:function(){return showHide(this,!0)},hide:function(){return showHide(this)},toggle:function(e){var t=typeof e=="boolean";return this.each(function(){(t?e:isHidden(this))?jQuery(this).show():jQuery(this).hide()})}}),jQuery.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=curCSS(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":"cssFloat"},style:function(e,t,n,r){if(!e||e.nodeType===3||e.nodeType===8||!e.style)return;var i,s,o,u=jQuery.camelCase(t),a=e.style;t=jQuery.cssProps[u]||(jQuery.cssProps[u]=vendorPropName(a,u)),o=jQuery.cssHooks[t]||jQuery.cssHooks[u];if(n===undefined)return o&&"get"in o&&(i=o.get(e,!1,r))!==undefined?i:a[t];s=typeof n,s==="string"&&(i=rrelNum.exec(n))&&(n=(i[1]+1)*i[2]+parseFloat(jQuery.css(e,t)),s="number");if(n==null||s==="number"&&isNaN(n))return;s==="number"&&!jQuery.cssNumber[u]&&(n+="px"),!jQuery.support.clearCloneStyle&&n===""&&t.indexOf("background")===0&&(a[t]="inherit");if(!o||!("set"in o)||(n=o.set(e,n,r))!==undefined)a[t]=n},css:function(e,t,n,r){var i,s,o,u=jQuery.camelCase(t);return t=jQuery.cssProps[u]||(jQuery.cssProps[u]=vendorPropName(e.style,u)),o=jQuery.cssHooks[t]||jQuery.cssHooks[u],o&&"get"in o&&(i=o.get(e,!0,n)),i===undefined&&(i=curCSS(e,t,r)),i==="normal"&&t in cssNormalTransform&&(i=cssNormalTransform[t]),n===""||n?(s=parseFloat(i),n===!0||jQuery.isNumeric(s)?s||0:i):i}}),curCSS=function(e,t,n){var r,i,s,o=n||getStyles(e),u=o?o.getPropertyValue(t)||o[t]:undefined,a=e.style;return o&&(u===""&&!jQuery.contains(e.ownerDocument,e)&&(u=jQuery.style(e,t)),rnumnonpx.test(u)&&rmargin.test(t)&&(r=a.width,i=a.minWidth,s=a.maxWidth,a.minWidth=a.maxWidth=a.width=u,u=o.width,a.width=r,a.minWidth=i,a.maxWidth=s)),u},jQuery.each(["height","width"],function(e,t){jQuery.cssHooks[t]={get:function(e,n,r){if(n)return e.offsetWidth===0&&rdisplayswap.test(jQuery.css(e,"display"))?jQuery.swap(e,cssShow,function(){return getWidthOrHeight(e,t,r)}):getWidthOrHeight(e,t,r)},set:function(e,n,r){var i=r&&getStyles(e);return setPositiveNumber(e,n,r?augmentWidthOrHeight(e,t,r,jQuery.support.boxSizing&&jQuery.css(e,"boxSizing",!1,i)==="border-box",i):0)}}}),jQuery(function(){jQuery.support.reliableMarginRight||(jQuery.cssHooks.marginRight={get:function(e,t){if(t)return jQuery.swap(e,{display:"inline-block"},curCSS,[e,"marginRight"])}}),!jQuery.support.pixelPosition&&jQuery.fn.position&&jQuery.each(["top","left"],function(e,t){jQuery.cssHooks[t]={get:function(e,n){if(n)return n=curCSS(e,t),rnumnonpx.test(n)?jQuery(e).position()[t]+"px":n}}})}),jQuery.expr&&jQuery.expr.filters&&(jQuery.expr.filters.hidden=function(e){return e.offsetWidth<=0&&e.offsetHeight<=0},jQuery.expr.filters.visible=function(e){return!jQuery.expr.filters.hidden(e)}),jQuery.each({margin:"",padding:"",border:"Width"},function(e,t){jQuery.cssHooks[e+t]={expand:function(n){var r=0,i={},s=typeof n=="string"?n.split(" "):[n];for(;r<4;r++)i[e+cssExpand[r]+t]=s[r]||s[r-2]||s[0];return i}},rmargin.test(e)||(jQuery.cssHooks[e+t].set=setPositiveNumber)});var r20=/%20/g,rbracket=/\[\]$/,rCRLF=/\r?\n/g,rsubmitterTypes=/^(?:submit|button|image|reset|file)$/i,rsubmittable=/^(?:input|select|textarea|keygen)/i;jQuery.fn.extend({serialize:function(){return jQuery.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=jQuery.prop(this,"elements");return e?jQuery.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!jQuery(this).is(":disabled")&&rsubmittable.test(this.nodeName)&&!rsubmitterTypes.test(e)&&(this.checked||!manipulation_rcheckableType.test(e))}).map(function(e,t){var n=jQuery(this).val();return n==null?null:jQuery.isArray(n)?jQuery.map(n,function(e){return{name:t.name,value:e.replace(rCRLF,"\r\n")}}):{name:t.name,value:n.replace(rCRLF,"\r\n")}}).get()}}),jQuery.param=function(e,t){var n,r=[],i=function(e,t){t=jQuery.isFunction(t)?t():t==null?"":t,r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};t===undefined&&(t=jQuery.ajaxSettings&&jQuery.ajaxSettings.traditional);if(jQuery.isArray(e)||e.jquery&&!jQuery.isPlainObject(e))jQuery.each(e,function(){i(this.name,this.value)});else for(n in e)buildParams(n,e[n],t,i);return r.join("&").replace(r20,"+")},jQuery.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(e,t){jQuery.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),jQuery.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)},bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return arguments.length===1?this.off(e,"**"):this.off(t,e||"**",n)}});var ajaxLocParts,ajaxLocation,ajax_nonce=jQuery.now(),ajax_rquery=/\?/,rhash=/#.*$/,rts=/([?&])_=[^&]*/,rheaders=/^(.*?):[ \t]*([^\r\n]*)$/mg,rlocalProtocol=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,rnoContent=/^(?:GET|HEAD)$/,rprotocol=/^\/\//,rurl=/^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,_load=jQuery.fn.load,prefilters={},transports={},allTypes="*/".concat("*");try{ajaxLocation=location.href}catch(e){ajaxLocation=document.createElement("a"),ajaxLocation.href="",ajaxLocation=ajaxLocation.href}ajaxLocParts=rurl.exec(ajaxLocation.toLowerCase())||[],jQuery.fn.load=function(e,t,n){if(typeof e!="string"&&_load)return _load.apply(this,arguments);var r,i,s,o=this,u=e.indexOf(" ");return u>=0&&(r=e.slice(u),e=e.slice(0,u)),jQuery.isFunction(t)?(n=t,t=undefined):t&&typeof t=="object"&&(i="POST"),o.length>0&&jQuery.ajax({url:e,type:i,dataType:"html",data:t}).done(function(e){s=arguments,o.html(r?jQuery("
").append(jQuery.parseHTML(e)).find(r):e)}).complete(n&&function(e,t){o.each(n,s||[e.responseText,t,e])}),this},jQuery.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){jQuery.fn[t]=function(e){return this.on(t,e)}}),jQuery.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:ajaxLocation,type:"GET",isLocal:rlocalProtocol.test(ajaxLocParts[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":allTypes,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":jQuery.parseJSON,"text xml":jQuery.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?ajaxExtend(ajaxExtend(e,jQuery.ajaxSettings),t):ajaxExtend(jQuery.ajaxSettings,e)},ajaxPrefilter:addToPrefiltersOrTransports(prefilters),ajaxTransport:addToPrefiltersOrTransports(transports),ajax:function(e,t){function S(e,t,s,u){var f,m,g,b,E,S=t;if(y===2)return;y=2,o&&clearTimeout(o),n=undefined,i=u||"",w.readyState=e>0?4:0,f=e>=200&&e<300||e===304,s&&(b=ajaxHandleResponses(l,w,s)),b=ajaxConvert(l,b,w,f);if(f)l.ifModified&&(E=w.getResponseHeader("Last-Modified"),E&&(jQuery.lastModified[r]=E),E=w.getResponseHeader("etag"),E&&(jQuery.etag[r]=E)),e===204?S="nocontent":e===304?S="notmodified":(S=b.state,m=b.data,g=b.error,f=!g);else{g=S;if(e||!S)S="error",e<0&&(e=0)}w.status=e,w.statusText=(t||S)+"",f?p.resolveWith(c,[m,S,w]):p.rejectWith(c,[w,S,g]),w.statusCode(v),v=undefined,a&&h.trigger(f?"ajaxSuccess":"ajaxError",[w,l,f?m:g]),d.fireWith(c,[w,S]),a&&(h.trigger("ajaxComplete",[w,l]),--jQuery.active||jQuery.event.trigger("ajaxStop"))}typeof e=="object"&&(t=e,e=undefined),t=t||{};var n,r,i,s,o,u,a,f,l=jQuery.ajaxSetup({},t),c=l.context||l,h=l.context&&(c.nodeType||c.jquery)?jQuery(c):jQuery.event,p=jQuery.Deferred(),d=jQuery.Callbacks("once memory"),v=l.statusCode||{},m={},g={},y=0,b="canceled",w={readyState:0,getResponseHeader:function(e){var t;if(y===2){if(!s){s={};while(t=rheaders.exec(i))s[t[1].toLowerCase()]=t[2]}t=s[e.toLowerCase()]}return t==null?null:t},getAllResponseHeaders:function(){return y===2?i:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return y||(e=g[n]=g[n]||e,m[e]=t),this},overrideMimeType:function(e){return y||(l.mimeType=e),this},statusCode:function(e){var t;if(e)if(y<2)for(t in e)v[t]=[v[t],e[t]];else w.always(e[w.status]);return this},abort:function(e){var t=e||b;return n&&n.abort(t),S(0,t),this}};p.promise(w).complete=d.add,w.success=w.done,w.error=w.fail,l.url=((e||l.url||ajaxLocation)+"").replace(rhash,"").replace(rprotocol,ajaxLocParts[1]+"//"),l.type=t.method||t.type||l.method||l.type,l.dataTypes=jQuery.trim(l.dataType||"*").toLowerCase().match(core_rnotwhite)||[""],l.crossDomain==null&&(u=rurl.exec(l.url.toLowerCase()),l.crossDomain=!(!u||u[1]===ajaxLocParts[1]&&u[2]===ajaxLocParts[2]&&(u[3]||(u[1]==="http:"?"80":"443"))===(ajaxLocParts[3]||(ajaxLocParts[1]==="http:"?"80":"443")))),l.data&&l.processData&&typeof l.data!="string"&&(l.data=jQuery.param(l.data,l.traditional)),inspectPrefiltersOrTransports(prefilters,l,t,w);if(y===2)return w;a=l.global,a&&jQuery.active++===0&&jQuery.event.trigger("ajaxStart"),l.type=l.type.toUpperCase(),l.hasContent=!rnoContent.test(l.type),r=l.url,l.hasContent||(l.data&&(r=l.url+=(ajax_rquery.test(r)?"&":"?")+l.data,delete l.data),l.cache===!1&&(l.url=rts.test(r)?r.replace(rts,"$1_="+ajax_nonce++):r+(ajax_rquery.test(r)?"&":"?")+"_="+ajax_nonce++)),l.ifModified&&(jQuery.lastModified[r]&&w.setRequestHeader("If-Modified-Since",jQuery.lastModified[r]),jQuery.etag[r]&&w.setRequestHeader("If-None-Match",jQuery.etag[r])),(l.data&&l.hasContent&&l.contentType!==!1||t.contentType)&&w.setRequestHeader("Content-Type",l.contentType),w.setRequestHeader("Accept",l.dataTypes[0]&&l.accepts[l.dataTypes[0]]?l.accepts[l.dataTypes[0]]+(l.dataTypes[0]!=="*"?", "+allTypes+"; q=0.01":""):l.accepts["*"]);for(f in l.headers)w.setRequestHeader(f,l.headers[f]);if(!l.beforeSend||l.beforeSend.call(c,w,l)!==!1&&y!==2){b="abort";for(f in{success:1,error:1,complete:1})w[f](l[f]);n=inspectPrefiltersOrTransports(transports,l,t,w);if(!n)S(-1,"No Transport");else{w.readyState=1,a&&h.trigger("ajaxSend",[w,l]),l.async&&l.timeout>0&&(o=setTimeout(function(){w.abort("timeout")},l.timeout));try{y=1,n.send(m,S)}catch(E){if(!(y<2))throw E;S(-1,E)}}return w}return w.abort()},getJSON:function(e,t,n){return jQuery.get(e,t,n,"json")},getScript:function(e,t){return jQuery.get(e,undefined,t,"script")}}),jQuery.each(["get","post"],function(e,t){jQuery[t]=function(e,n,r,i){return jQuery.isFunction(n)&&(i=i||r,r=n,n=undefined),jQuery.ajax({url:e,type:t,dataType:i,data:n,success:r})}}),jQuery.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return jQuery.globalEval(e),e}}}),jQuery.ajaxPrefilter("script",function(e){e.cache===undefined&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),jQuery.ajaxTransport("script",function(e){if(e.crossDomain){var t,n;return{send:function(r,i){t=jQuery(" - - - - - - - - - diff --git a/mockup/patterns/toolbar/src/css/variables.less b/mockup/patterns/toolbar/variables.less similarity index 100% rename from mockup/patterns/toolbar/src/css/variables.less rename to mockup/patterns/toolbar/variables.less diff --git a/mockup/tests/pattern-toolbar-test.js b/mockup/tests/pattern-toolbar-test.js new file mode 100644 index 0000000000..f0f2941484 --- /dev/null +++ b/mockup/tests/pattern-toolbar-test.js @@ -0,0 +1,40 @@ +define([ + 'expect', + 'jquery', + 'pat-registry', + 'plone-patterns-toolbar' +], function(expect, $, registry, Toolbar) { + 'use strict'; + + window.mocha.setup('bdd'); + $.fx.off = true; + + /* ========================== + TEST: Plone Toolbar + ========================== */ + + describe('Plone Toolbar', function() { + beforeEach(function() { + this.$el = $('' + + '
' + + '
' + + '
').appendTo($('body')); + }); + + afterEach(function() { + $('body').empty(); + this.$el.remove(); + this.pattern = null; + }); + + it('Initializes', function() { + registry.scan(this.$el); + // check if toolbar was initialized. + expect(this.$el.find('.pat-toolbar.initialized').length).to.equal(1); + // TODO: more and better tests. + }); + + }); + +}); + From 7e2fbb901e2c74caa25d9ab12081e3fab551ad08 Mon Sep 17 00:00:00 2001 From: Johannes Raggam Date: Wed, 3 Oct 2018 17:33:28 +0200 Subject: [PATCH 6/6] Add mixins where there were missing. --- mockup/patterns/pickadate/pattern.pickadate.less | 1 + mockup/patterns/upload/less/pattern.upload.less | 2 ++ 2 files changed, 3 insertions(+) diff --git a/mockup/patterns/pickadate/pattern.pickadate.less b/mockup/patterns/pickadate/pattern.pickadate.less index 3756fdff02..b05510cfc3 100644 --- a/mockup/patterns/pickadate/pattern.pickadate.less +++ b/mockup/patterns/pickadate/pattern.pickadate.less @@ -1,6 +1,7 @@ @import (less) "@{bowerPath}/pickadate/lib/themes/classic.css"; @import (less) "@{bowerPath}/pickadate/lib/themes/classic.date.css"; @import (less) "@{bowerPath}/pickadate/lib/themes/classic.time.css"; +@import (reference) '@{bowerPath}/bootstrap/less/mixins.less'; @import (reference) '@{bowerPath}/bootstrap/less/buttons.less'; diff --git a/mockup/patterns/upload/less/pattern.upload.less b/mockup/patterns/upload/less/pattern.upload.less index 31282eb86a..ef0cda9661 100644 --- a/mockup/patterns/upload/less/pattern.upload.less +++ b/mockup/patterns/upload/less/pattern.upload.less @@ -1,4 +1,6 @@ @import (less) "@{bowerPath}/dropzone/dist/dropzone.css"; +@import (reference) "@{bowerPath}/bootstrap/less/variables.less"; +@import (reference) "@{bowerPath}/bootstrap/less/mixins.less"; @import (reference) "@{bowerPath}/bootstrap/less/progress-bars.less"; @import (reference) "@{bowerPath}/bootstrap/less/scaffolding.less";