Plugin Directory

Changeset 2841487


Ignore:
Timestamp:
12/30/2022 11:41:32 AM (3 years ago)
Author:
pixelgrade
Message:

Security fixes

Location:
pixcodes/trunk
Files:
1 added
5 deleted
39 edited

Legend:

Unmodified
Added
Removed
  • pixcodes/trunk/js/select2/select2.js

    r1594325 r2841487  
    1 /*! Select2 4.0.3 | https://github.com/select2/select2/blob/master/LICENSE.md */!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):a("object"==typeof exports?require("jquery"):jQuery)}(function(a){var b=function(){if(a&&a.fn&&a.fn.select2&&a.fn.select2.amd)var b=a.fn.select2.amd;var b;return function(){if(!b||!b.requirejs){b?c=b:b={};var a,c,d;!function(b){function e(a,b){return u.call(a,b)}function f(a,b){var c,d,e,f,g,h,i,j,k,l,m,n=b&&b.split("/"),o=s.map,p=o&&o["*"]||{};if(a&&"."===a.charAt(0))if(b){for(a=a.split("/"),g=a.length-1,s.nodeIdCompat&&w.test(a[g])&&(a[g]=a[g].replace(w,"")),a=n.slice(0,n.length-1).concat(a),k=0;k<a.length;k+=1)if(m=a[k],"."===m)a.splice(k,1),k-=1;else if(".."===m){if(1===k&&(".."===a[2]||".."===a[0]))break;k>0&&(a.splice(k-1,2),k-=2)}a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((n||p)&&o){for(c=a.split("/"),k=c.length;k>0;k-=1){if(d=c.slice(0,k).join("/"),n)for(l=n.length;l>0;l-=1)if(e=o[n.slice(0,l).join("/")],e&&(e=e[d])){f=e,h=k;break}if(f)break;!i&&p&&p[d]&&(i=p[d],j=k)}!f&&i&&(f=i,h=j),f&&(c.splice(0,h,f),a=c.join("/"))}return a}function g(a,c){return function(){var d=v.call(arguments,0);return"string"!=typeof d[0]&&1===d.length&&d.push(null),n.apply(b,d.concat([a,c]))}}function h(a){return function(b){return f(b,a)}}function i(a){return function(b){q[a]=b}}function j(a){if(e(r,a)){var c=r[a];delete r[a],t[a]=!0,m.apply(b,c)}if(!e(q,a)&&!e(t,a))throw new Error("No "+a);return q[a]}function k(a){var b,c=a?a.indexOf("!"):-1;return c>-1&&(b=a.substring(0,c),a=a.substring(c+1,a.length)),[b,a]}function l(a){return function(){return s&&s.config&&s.config[a]||{}}}var m,n,o,p,q={},r={},s={},t={},u=Object.prototype.hasOwnProperty,v=[].slice,w=/\.js$/;o=function(a,b){var c,d=k(a),e=d[0];return a=d[1],e&&(e=f(e,b),c=j(e)),e?a=c&&c.normalize?c.normalize(a,h(b)):f(a,b):(a=f(a,b),d=k(a),e=d[0],a=d[1],e&&(c=j(e))),{f:e?e+"!"+a:a,n:a,pr:e,p:c}},p={require:function(a){return g(a)},exports:function(a){var b=q[a];return"undefined"!=typeof b?b:q[a]={}},module:function(a){return{id:a,uri:"",exports:q[a],config:l(a)}}},m=function(a,c,d,f){var h,k,l,m,n,s,u=[],v=typeof d;if(f=f||a,"undefined"===v||"function"===v){for(c=!c.length&&d.length?["require","exports","module"]:c,n=0;n<c.length;n+=1)if(m=o(c[n],f),k=m.f,"require"===k)u[n]=p.require(a);else if("exports"===k)u[n]=p.exports(a),s=!0;else if("module"===k)h=u[n]=p.module(a);else if(e(q,k)||e(r,k)||e(t,k))u[n]=j(k);else{if(!m.p)throw new Error(a+" missing "+k);m.p.load(m.n,g(f,!0),i(k),{}),u[n]=q[k]}l=d?d.apply(q[a],u):void 0,a&&(h&&h.exports!==b&&h.exports!==q[a]?q[a]=h.exports:l===b&&s||(q[a]=l))}else a&&(q[a]=d)},a=c=n=function(a,c,d,e,f){if("string"==typeof a)return p[a]?p[a](c):j(o(a,c).f);if(!a.splice){if(s=a,s.deps&&n(s.deps,s.callback),!c)return;c.splice?(a=c,c=d,d=null):a=b}return c=c||function(){},"function"==typeof d&&(d=e,e=f),e?m(b,a,c,d):setTimeout(function(){m(b,a,c,d)},4),n},n.config=function(a){return n(a)},a._defined=q,d=function(a,b,c){if("string"!=typeof a)throw new Error("See almond README: incorrect module build, no module name");b.splice||(c=b,b=[]),e(q,a)||e(r,a)||(r[a]=[a,b,c])},d.amd={jQuery:!0}}(),b.requirejs=a,b.require=c,b.define=d}}(),b.define("almond",function(){}),b.define("jquery",[],function(){var b=a||$;return null==b&&console&&console.error&&console.error("Select2: An instance of jQuery or a jQuery-compatible library was not found. Make sure that you are including jQuery before Select2 on your web page."),b}),b.define("select2/utils",["jquery"],function(a){function b(a){var b=a.prototype,c=[];for(var d in b){var e=b[d];"function"==typeof e&&"constructor"!==d&&c.push(d)}return c}var c={};c.Extend=function(a,b){function c(){this.constructor=a}var d={}.hasOwnProperty;for(var e in b)d.call(b,e)&&(a[e]=b[e]);return c.prototype=b.prototype,a.prototype=new c,a.__super__=b.prototype,a},c.Decorate=function(a,c){function d(){var b=Array.prototype.unshift,d=c.prototype.constructor.length,e=a.prototype.constructor;d>0&&(b.call(arguments,a.prototype.constructor),e=c.prototype.constructor),e.apply(this,arguments)}function e(){this.constructor=d}var f=b(c),g=b(a);c.displayName=a.displayName,d.prototype=new e;for(var h=0;h<g.length;h++){var i=g[h];d.prototype[i]=a.prototype[i]}for(var j=(function(a){var b=function(){};a in d.prototype&&(b=d.prototype[a]);var e=c.prototype[a];return function(){var a=Array.prototype.unshift;return a.call(arguments,b),e.apply(this,arguments)}}),k=0;k<f.length;k++){var l=f[k];d.prototype[l]=j(l)}return d};var d=function(){this.listeners={}};return d.prototype.on=function(a,b){this.listeners=this.listeners||{},a in this.listeners?this.listeners[a].push(b):this.listeners[a]=[b]},d.prototype.trigger=function(a){var b=Array.prototype.slice,c=b.call(arguments,1);this.listeners=this.listeners||{},null==c&&(c=[]),0===c.length&&c.push({}),c[0]._type=a,a in this.listeners&&this.invoke(this.listeners[a],b.call(arguments,1)),"*"in this.listeners&&this.invoke(this.listeners["*"],arguments)},d.prototype.invoke=function(a,b){for(var c=0,d=a.length;d>c;c++)a[c].apply(this,b)},c.Observable=d,c.generateChars=function(a){for(var b="",c=0;a>c;c++){var d=Math.floor(36*Math.random());b+=d.toString(36)}return b},c.bind=function(a,b){return function(){a.apply(b,arguments)}},c._convertData=function(a){for(var b in a){var c=b.split("-"),d=a;if(1!==c.length){for(var e=0;e<c.length;e++){var f=c[e];f=f.substring(0,1).toLowerCase()+f.substring(1),f in d||(d[f]={}),e==c.length-1&&(d[f]=a[b]),d=d[f]}delete a[b]}}return a},c.hasScroll=function(b,c){var d=a(c),e=c.style.overflowX,f=c.style.overflowY;return e!==f||"hidden"!==f&&"visible"!==f?"scroll"===e||"scroll"===f?!0:d.innerHeight()<c.scrollHeight||d.innerWidth()<c.scrollWidth:!1},c.escapeMarkup=function(a){var b={"\\":"&#92;","&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#47;"};return"string"!=typeof a?a:String(a).replace(/[&<>"'\/\\]/g,function(a){return b[a]})},c.appendMany=function(b,c){if("1.7"===a.fn.jquery.substr(0,3)){var d=a();a.map(c,function(a){d=d.add(a)}),c=d}b.append(c)},c}),b.define("select2/results",["jquery","./utils"],function(a,b){function c(a,b,d){this.$element=a,this.data=d,this.options=b,c.__super__.constructor.call(this)}return b.Extend(c,b.Observable),c.prototype.render=function(){var b=a('<ul class="select2-results__options" role="tree"></ul>');return this.options.get("multiple")&&b.attr("aria-multiselectable","true"),this.$results=b,b},c.prototype.clear=function(){this.$results.empty()},c.prototype.displayMessage=function(b){var c=this.options.get("escapeMarkup");this.clear(),this.hideLoading();var d=a('<li role="treeitem" aria-live="assertive" class="select2-results__option"></li>'),e=this.options.get("translations").get(b.message);d.append(c(e(b.args))),d[0].className+=" select2-results__message",this.$results.append(d)},c.prototype.hideMessages=function(){this.$results.find(".select2-results__message").remove()},c.prototype.append=function(a){this.hideLoading();var b=[];if(null==a.results||0===a.results.length)return void(0===this.$results.children().length&&this.trigger("results:message",{message:"noResults"}));a.results=this.sort(a.results);for(var c=0;c<a.results.length;c++){var d=a.results[c],e=this.option(d);b.push(e)}this.$results.append(b)},c.prototype.position=function(a,b){var c=b.find(".select2-results");c.append(a)},c.prototype.sort=function(a){var b=this.options.get("sorter");return b(a)},c.prototype.highlightFirstItem=function(){var a=this.$results.find(".select2-results__option[aria-selected]"),b=a.filter("[aria-selected=true]");b.length>0?b.first().trigger("mouseenter"):a.first().trigger("mouseenter"),this.ensureHighlightVisible()},c.prototype.setClasses=function(){var b=this;this.data.current(function(c){var d=a.map(c,function(a){return a.id.toString()}),e=b.$results.find(".select2-results__option[aria-selected]");e.each(function(){var b=a(this),c=a.data(this,"data"),e=""+c.id;null!=c.element&&c.element.selected||null==c.element&&a.inArray(e,d)>-1?b.attr("aria-selected","true"):b.attr("aria-selected","false")})})},c.prototype.showLoading=function(a){this.hideLoading();var b=this.options.get("translations").get("searching"),c={disabled:!0,loading:!0,text:b(a)},d=this.option(c);d.className+=" loading-results",this.$results.prepend(d)},c.prototype.hideLoading=function(){this.$results.find(".loading-results").remove()},c.prototype.option=function(b){var c=document.createElement("li");c.className="select2-results__option";var d={role:"treeitem","aria-selected":"false"};b.disabled&&(delete d["aria-selected"],d["aria-disabled"]="true"),null==b.id&&delete d["aria-selected"],null!=b._resultId&&(c.id=b._resultId),b.title&&(c.title=b.title),b.children&&(d.role="group",d["aria-label"]=b.text,delete d["aria-selected"]);for(var e in d){var f=d[e];c.setAttribute(e,f)}if(b.children){var g=a(c),h=document.createElement("strong");h.className="select2-results__group";a(h);this.template(b,h);for(var i=[],j=0;j<b.children.length;j++){var k=b.children[j],l=this.option(k);i.push(l)}var m=a("<ul></ul>",{"class":"select2-results__options select2-results__options--nested"});m.append(i),g.append(h),g.append(m)}else this.template(b,c);return a.data(c,"data",b),c},c.prototype.bind=function(b,c){var d=this,e=b.id+"-results";this.$results.attr("id",e),b.on("results:all",function(a){d.clear(),d.append(a.data),b.isOpen()&&(d.setClasses(),d.highlightFirstItem())}),b.on("results:append",function(a){d.append(a.data),b.isOpen()&&d.setClasses()}),b.on("query",function(a){d.hideMessages(),d.showLoading(a)}),b.on("select",function(){b.isOpen()&&(d.setClasses(),d.highlightFirstItem())}),b.on("unselect",function(){b.isOpen()&&(d.setClasses(),d.highlightFirstItem())}),b.on("open",function(){d.$results.attr("aria-expanded","true"),d.$results.attr("aria-hidden","false"),d.setClasses(),d.ensureHighlightVisible()}),b.on("close",function(){d.$results.attr("aria-expanded","false"),d.$results.attr("aria-hidden","true"),d.$results.removeAttr("aria-activedescendant")}),b.on("results:toggle",function(){var a=d.getHighlightedResults();0!==a.length&&a.trigger("mouseup")}),b.on("results:select",function(){var a=d.getHighlightedResults();if(0!==a.length){var b=a.data("data");"true"==a.attr("aria-selected")?d.trigger("close",{}):d.trigger("select",{data:b})}}),b.on("results:previous",function(){var a=d.getHighlightedResults(),b=d.$results.find("[aria-selected]"),c=b.index(a);if(0!==c){var e=c-1;0===a.length&&(e=0);var f=b.eq(e);f.trigger("mouseenter");var g=d.$results.offset().top,h=f.offset().top,i=d.$results.scrollTop()+(h-g);0===e?d.$results.scrollTop(0):0>h-g&&d.$results.scrollTop(i)}}),b.on("results:next",function(){var a=d.getHighlightedResults(),b=d.$results.find("[aria-selected]"),c=b.index(a),e=c+1;if(!(e>=b.length)){var f=b.eq(e);f.trigger("mouseenter");var g=d.$results.offset().top+d.$results.outerHeight(!1),h=f.offset().top+f.outerHeight(!1),i=d.$results.scrollTop()+h-g;0===e?d.$results.scrollTop(0):h>g&&d.$results.scrollTop(i)}}),b.on("results:focus",function(a){a.element.addClass("select2-results__option--highlighted")}),b.on("results:message",function(a){d.displayMessage(a)}),a.fn.mousewheel&&this.$results.on("mousewheel",function(a){var b=d.$results.scrollTop(),c=d.$results.get(0).scrollHeight-b+a.deltaY,e=a.deltaY>0&&b-a.deltaY<=0,f=a.deltaY<0&&c<=d.$results.height();e?(d.$results.scrollTop(0),a.preventDefault(),a.stopPropagation()):f&&(d.$results.scrollTop(d.$results.get(0).scrollHeight-d.$results.height()),a.preventDefault(),a.stopPropagation())}),this.$results.on("mouseup",".select2-results__option[aria-selected]",function(b){var c=a(this),e=c.data("data");return"true"===c.attr("aria-selected")?void(d.options.get("multiple")?d.trigger("unselect",{originalEvent:b,data:e}):d.trigger("close",{})):void d.trigger("select",{originalEvent:b,data:e})}),this.$results.on("mouseenter",".select2-results__option[aria-selected]",function(b){var c=a(this).data("data");d.getHighlightedResults().removeClass("select2-results__option--highlighted"),d.trigger("results:focus",{data:c,element:a(this)})})},c.prototype.getHighlightedResults=function(){var a=this.$results.find(".select2-results__option--highlighted");return a},c.prototype.destroy=function(){this.$results.remove()},c.prototype.ensureHighlightVisible=function(){var a=this.getHighlightedResults();if(0!==a.length){var b=this.$results.find("[aria-selected]"),c=b.index(a),d=this.$results.offset().top,e=a.offset().top,f=this.$results.scrollTop()+(e-d),g=e-d;f-=2*a.outerHeight(!1),2>=c?this.$results.scrollTop(0):(g>this.$results.outerHeight()||0>g)&&this.$results.scrollTop(f)}},c.prototype.template=function(b,c){var d=this.options.get("templateResult"),e=this.options.get("escapeMarkup"),f=d(b,c);null==f?c.style.display="none":"string"==typeof f?c.innerHTML=e(f):a(c).append(f)},c}),b.define("select2/keys",[],function(){var a={BACKSPACE:8,TAB:9,ENTER:13,SHIFT:16,CTRL:17,ALT:18,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,DELETE:46};return a}),b.define("select2/selection/base",["jquery","../utils","../keys"],function(a,b,c){function d(a,b){this.$element=a,this.options=b,d.__super__.constructor.call(this)}return b.Extend(d,b.Observable),d.prototype.render=function(){var b=a('<span class="select2-selection" role="combobox"  aria-haspopup="true" aria-expanded="false"></span>');return this._tabindex=0,null!=this.$element.data("old-tabindex")?this._tabindex=this.$element.data("old-tabindex"):null!=this.$element.attr("tabindex")&&(this._tabindex=this.$element.attr("tabindex")),b.attr("title",this.$element.attr("title")),b.attr("tabindex",this._tabindex),this.$selection=b,b},d.prototype.bind=function(a,b){var d=this,e=(a.id+"-container",a.id+"-results");this.container=a,this.$selection.on("focus",function(a){d.trigger("focus",a)}),this.$selection.on("blur",function(a){d._handleBlur(a)}),this.$selection.on("keydown",function(a){d.trigger("keypress",a),a.which===c.SPACE&&a.preventDefault()}),a.on("results:focus",function(a){d.$selection.attr("aria-activedescendant",a.data._resultId)}),a.on("selection:update",function(a){d.update(a.data)}),a.on("open",function(){d.$selection.attr("aria-expanded","true"),d.$selection.attr("aria-owns",e),d._attachCloseHandler(a)}),a.on("close",function(){d.$selection.attr("aria-expanded","false"),d.$selection.removeAttr("aria-activedescendant"),d.$selection.removeAttr("aria-owns"),d.$selection.focus(),d._detachCloseHandler(a)}),a.on("enable",function(){d.$selection.attr("tabindex",d._tabindex)}),a.on("disable",function(){d.$selection.attr("tabindex","-1")})},d.prototype._handleBlur=function(b){var c=this;window.setTimeout(function(){document.activeElement==c.$selection[0]||a.contains(c.$selection[0],document.activeElement)||c.trigger("blur",b)},1)},d.prototype._attachCloseHandler=function(b){a(document.body).on("mousedown.select2."+b.id,function(b){var c=a(b.target),d=c.closest(".select2"),e=a(".select2.select2-container--open");e.each(function(){var b=a(this);if(this!=d[0]){var c=b.data("element");c.select2("close")}})})},d.prototype._detachCloseHandler=function(b){a(document.body).off("mousedown.select2."+b.id)},d.prototype.position=function(a,b){var c=b.find(".selection");c.append(a)},d.prototype.destroy=function(){this._detachCloseHandler(this.container)},d.prototype.update=function(a){throw new Error("The `update` method must be defined in child classes.")},d}),b.define("select2/selection/single",["jquery","./base","../utils","../keys"],function(a,b,c,d){function e(){e.__super__.constructor.apply(this,arguments)}return c.Extend(e,b),e.prototype.render=function(){var a=e.__super__.render.call(this);return a.addClass("select2-selection--single"),a.html('<span class="select2-selection__rendered"></span><span class="select2-selection__arrow" role="presentation"><b role="presentation"></b></span>'),a},e.prototype.bind=function(a,b){var c=this;e.__super__.bind.apply(this,arguments);var d=a.id+"-container";this.$selection.find(".select2-selection__rendered").attr("id",d),this.$selection.attr("aria-labelledby",d),this.$selection.on("mousedown",function(a){1===a.which&&c.trigger("toggle",{originalEvent:a})}),this.$selection.on("focus",function(a){}),this.$selection.on("blur",function(a){}),a.on("focus",function(b){a.isOpen()||c.$selection.focus()}),a.on("selection:update",function(a){c.update(a.data)})},e.prototype.clear=function(){this.$selection.find(".select2-selection__rendered").empty()},e.prototype.display=function(a,b){var c=this.options.get("templateSelection"),d=this.options.get("escapeMarkup");return d(c(a,b))},e.prototype.selectionContainer=function(){return a("<span></span>")},e.prototype.update=function(a){if(0===a.length)return void this.clear();var b=a[0],c=this.$selection.find(".select2-selection__rendered"),d=this.display(b,c);c.empty().append(d),c.prop("title",b.title||b.text)},e}),b.define("select2/selection/multiple",["jquery","./base","../utils"],function(a,b,c){function d(a,b){d.__super__.constructor.apply(this,arguments)}return c.Extend(d,b),d.prototype.render=function(){var a=d.__super__.render.call(this);return a.addClass("select2-selection--multiple"),a.html('<ul class="select2-selection__rendered"></ul>'),a},d.prototype.bind=function(b,c){var e=this;d.__super__.bind.apply(this,arguments),this.$selection.on("click",function(a){e.trigger("toggle",{originalEvent:a})}),this.$selection.on("click",".select2-selection__choice__remove",function(b){if(!e.options.get("disabled")){var c=a(this),d=c.parent(),f=d.data("data");e.trigger("unselect",{originalEvent:b,data:f})}})},d.prototype.clear=function(){this.$selection.find(".select2-selection__rendered").empty()},d.prototype.display=function(a,b){var c=this.options.get("templateSelection"),d=this.options.get("escapeMarkup");return d(c(a,b))},d.prototype.selectionContainer=function(){var b=a('<li class="select2-selection__choice"><span class="select2-selection__choice__remove" role="presentation">&times;</span></li>');return b},d.prototype.update=function(a){if(this.clear(),0!==a.length){for(var b=[],d=0;d<a.length;d++){var e=a[d],f=this.selectionContainer(),g=this.display(e,f);f.append(g),f.prop("title",e.title||e.text),f.data("data",e),b.push(f)}var h=this.$selection.find(".select2-selection__rendered");c.appendMany(h,b)}},d}),b.define("select2/selection/placeholder",["../utils"],function(a){function b(a,b,c){this.placeholder=this.normalizePlaceholder(c.get("placeholder")),a.call(this,b,c)}return b.prototype.normalizePlaceholder=function(a,b){return"string"==typeof b&&(b={id:"",text:b}),b},b.prototype.createPlaceholder=function(a,b){var c=this.selectionContainer();return c.html(this.display(b)),c.addClass("select2-selection__placeholder").removeClass("select2-selection__choice"),c},b.prototype.update=function(a,b){var c=1==b.length&&b[0].id!=this.placeholder.id,d=b.length>1;if(d||c)return a.call(this,b);this.clear();var e=this.createPlaceholder(this.placeholder);this.$selection.find(".select2-selection__rendered").append(e)},b}),b.define("select2/selection/allowClear",["jquery","../keys"],function(a,b){function c(){}return c.prototype.bind=function(a,b,c){var d=this;a.call(this,b,c),null==this.placeholder&&this.options.get("debug")&&window.console&&console.error&&console.error("Select2: The `allowClear` option should be used in combination with the `placeholder` option."),this.$selection.on("mousedown",".select2-selection__clear",function(a){d._handleClear(a)}),b.on("keypress",function(a){d._handleKeyboardClear(a,b)})},c.prototype._handleClear=function(a,b){if(!this.options.get("disabled")){var c=this.$selection.find(".select2-selection__clear");if(0!==c.length){b.stopPropagation();for(var d=c.data("data"),e=0;e<d.length;e++){var f={data:d[e]};if(this.trigger("unselect",f),f.prevented)return}this.$element.val(this.placeholder.id).trigger("change"),this.trigger("toggle",{})}}},c.prototype._handleKeyboardClear=function(a,c,d){d.isOpen()||(c.which==b.DELETE||c.which==b.BACKSPACE)&&this._handleClear(c)},c.prototype.update=function(b,c){if(b.call(this,c),!(this.$selection.find(".select2-selection__placeholder").length>0||0===c.length)){var d=a('<span class="select2-selection__clear">&times;</span>');d.data("data",c),this.$selection.find(".select2-selection__rendered").prepend(d)}},c}),b.define("select2/selection/search",["jquery","../utils","../keys"],function(a,b,c){function d(a,b,c){a.call(this,b,c)}return d.prototype.render=function(b){var c=a('<li class="select2-search select2-search--inline"><input class="select2-search__field" type="search" tabindex="-1" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" role="textbox" aria-autocomplete="list" /></li>');this.$searchContainer=c,this.$search=c.find("input");var d=b.call(this);return this._transferTabIndex(),d},d.prototype.bind=function(a,b,d){var e=this;a.call(this,b,d),b.on("open",function(){e.$search.trigger("focus")}),b.on("close",function(){e.$search.val(""),e.$search.removeAttr("aria-activedescendant"),e.$search.trigger("focus")}),b.on("enable",function(){e.$search.prop("disabled",!1),e._transferTabIndex()}),b.on("disable",function(){e.$search.prop("disabled",!0)}),b.on("focus",function(a){e.$search.trigger("focus")}),b.on("results:focus",function(a){e.$search.attr("aria-activedescendant",a.id)}),this.$selection.on("focusin",".select2-search--inline",function(a){e.trigger("focus",a)}),this.$selection.on("focusout",".select2-search--inline",function(a){e._handleBlur(a)}),this.$selection.on("keydown",".select2-search--inline",function(a){a.stopPropagation(),e.trigger("keypress",a),e._keyUpPrevented=a.isDefaultPrevented();var b=a.which;if(b===c.BACKSPACE&&""===e.$search.val()){var d=e.$searchContainer.prev(".select2-selection__choice");if(d.length>0){var f=d.data("data");e.searchRemoveChoice(f),a.preventDefault()}}});var f=document.documentMode,g=f&&11>=f;this.$selection.on("input.searchcheck",".select2-search--inline",function(a){return g?void e.$selection.off("input.search input.searchcheck"):void e.$selection.off("keyup.search")}),this.$selection.on("keyup.search input.search",".select2-search--inline",function(a){if(g&&"input"===a.type)return void e.$selection.off("input.search input.searchcheck");var b=a.which;b!=c.SHIFT&&b!=c.CTRL&&b!=c.ALT&&b!=c.TAB&&e.handleSearch(a)})},d.prototype._transferTabIndex=function(a){this.$search.attr("tabindex",this.$selection.attr("tabindex")),this.$selection.attr("tabindex","-1")},d.prototype.createPlaceholder=function(a,b){this.$search.attr("placeholder",b.text)},d.prototype.update=function(a,b){var c=this.$search[0]==document.activeElement;this.$search.attr("placeholder",""),a.call(this,b),this.$selection.find(".select2-selection__rendered").append(this.$searchContainer),this.resizeSearch(),c&&this.$search.focus()},d.prototype.handleSearch=function(){if(this.resizeSearch(),!this._keyUpPrevented){var a=this.$search.val();this.trigger("query",{term:a})}this._keyUpPrevented=!1},d.prototype.searchRemoveChoice=function(a,b){this.trigger("unselect",{data:b}),this.$search.val(b.text),this.handleSearch()},d.prototype.resizeSearch=function(){this.$search.css("width","25px");var a="";if(""!==this.$search.attr("placeholder"))a=this.$selection.find(".select2-selection__rendered").innerWidth();else{var b=this.$search.val().length+1;a=.75*b+"em"}this.$search.css("width",a)},d}),b.define("select2/selection/eventRelay",["jquery"],function(a){function b(){}return b.prototype.bind=function(b,c,d){var e=this,f=["open","opening","close","closing","select","selecting","unselect","unselecting"],g=["opening","closing","selecting","unselecting"];b.call(this,c,d),c.on("*",function(b,c){if(-1!==a.inArray(b,f)){c=c||{};var d=a.Event("select2:"+b,{params:c});e.$element.trigger(d),-1!==a.inArray(b,g)&&(c.prevented=d.isDefaultPrevented())}})},b}),b.define("select2/translation",["jquery","require"],function(a,b){function c(a){this.dict=a||{}}return c.prototype.all=function(){return this.dict},c.prototype.get=function(a){return this.dict[a]},c.prototype.extend=function(b){this.dict=a.extend({},b.all(),this.dict)},c._cache={},c.loadPath=function(a){if(!(a in c._cache)){var d=b(a);c._cache[a]=d}return new c(c._cache[a])},c}),b.define("select2/diacritics",[],function(){var a={"Ⓐ":"A","A":"A","À":"A","Á":"A","Â":"A","Ầ":"A","Ấ":"A","Ẫ":"A","Ẩ":"A","Ã":"A","Ā":"A","Ă":"A","Ằ":"A","Ắ":"A","Ẵ":"A","Ẳ":"A","Ȧ":"A","Ǡ":"A","Ä":"A","Ǟ":"A","Ả":"A","Å":"A","Ǻ":"A","Ǎ":"A","Ȁ":"A","Ȃ":"A","Ạ":"A","Ậ":"A","Ặ":"A","Ḁ":"A","Ą":"A","Ⱥ":"A","Ɐ":"A","Ꜳ":"AA","Æ":"AE","Ǽ":"AE","Ǣ":"AE","Ꜵ":"AO","Ꜷ":"AU","Ꜹ":"AV","Ꜻ":"AV","Ꜽ":"AY","Ⓑ":"B","B":"B","Ḃ":"B","Ḅ":"B","Ḇ":"B","Ƀ":"B","Ƃ":"B","Ɓ":"B","Ⓒ":"C","C":"C","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","Ç":"C","Ḉ":"C","Ƈ":"C","Ȼ":"C","Ꜿ":"C","Ⓓ":"D","D":"D","Ḋ":"D","Ď":"D","Ḍ":"D","Ḑ":"D","Ḓ":"D","Ḏ":"D","Đ":"D","Ƌ":"D","Ɗ":"D","Ɖ":"D","Ꝺ":"D","DZ":"DZ","DŽ":"DZ","Dz":"Dz","Dž":"Dz","Ⓔ":"E","E":"E","È":"E","É":"E","Ê":"E","Ề":"E","Ế":"E","Ễ":"E","Ể":"E","Ẽ":"E","Ē":"E","Ḕ":"E","Ḗ":"E","Ĕ":"E","Ė":"E","Ë":"E","Ẻ":"E","Ě":"E","Ȅ":"E","Ȇ":"E","Ẹ":"E","Ệ":"E","Ȩ":"E","Ḝ":"E","Ę":"E","Ḙ":"E","Ḛ":"E","Ɛ":"E","Ǝ":"E","Ⓕ":"F","F":"F","Ḟ":"F","Ƒ":"F","Ꝼ":"F","Ⓖ":"G","G":"G","Ǵ":"G","Ĝ":"G","Ḡ":"G","Ğ":"G","Ġ":"G","Ǧ":"G","Ģ":"G","Ǥ":"G","Ɠ":"G","Ꞡ":"G","Ᵹ":"G","Ꝿ":"G","Ⓗ":"H","H":"H","Ĥ":"H","Ḣ":"H","Ḧ":"H","Ȟ":"H","Ḥ":"H","Ḩ":"H","Ḫ":"H","Ħ":"H","Ⱨ":"H","Ⱶ":"H","Ɥ":"H","Ⓘ":"I","I":"I","Ì":"I","Í":"I","Î":"I","Ĩ":"I","Ī":"I","Ĭ":"I","İ":"I","Ï":"I","Ḯ":"I","Ỉ":"I","Ǐ":"I","Ȉ":"I","Ȋ":"I","Ị":"I","Į":"I","Ḭ":"I","Ɨ":"I","Ⓙ":"J","J":"J","Ĵ":"J","Ɉ":"J","Ⓚ":"K","K":"K","Ḱ":"K","Ǩ":"K","Ḳ":"K","Ķ":"K","Ḵ":"K","Ƙ":"K","Ⱪ":"K","Ꝁ":"K","Ꝃ":"K","Ꝅ":"K","Ꞣ":"K","Ⓛ":"L","L":"L","Ŀ":"L","Ĺ":"L","Ľ":"L","Ḷ":"L","Ḹ":"L","Ļ":"L","Ḽ":"L","Ḻ":"L","Ł":"L","Ƚ":"L","Ɫ":"L","Ⱡ":"L","Ꝉ":"L","Ꝇ":"L","Ꞁ":"L","LJ":"LJ","Lj":"Lj","Ⓜ":"M","M":"M","Ḿ":"M","Ṁ":"M","Ṃ":"M","Ɱ":"M","Ɯ":"M","Ⓝ":"N","N":"N","Ǹ":"N","Ń":"N","Ñ":"N","Ṅ":"N","Ň":"N","Ṇ":"N","Ņ":"N","Ṋ":"N","Ṉ":"N","Ƞ":"N","Ɲ":"N","Ꞑ":"N","Ꞥ":"N","NJ":"NJ","Nj":"Nj","Ⓞ":"O","O":"O","Ò":"O","Ó":"O","Ô":"O","Ồ":"O","Ố":"O","Ỗ":"O","Ổ":"O","Õ":"O","Ṍ":"O","Ȭ":"O","Ṏ":"O","Ō":"O","Ṑ":"O","Ṓ":"O","Ŏ":"O","Ȯ":"O","Ȱ":"O","Ö":"O","Ȫ":"O","Ỏ":"O","Ő":"O","Ǒ":"O","Ȍ":"O","Ȏ":"O","Ơ":"O","Ờ":"O","Ớ":"O","Ỡ":"O","Ở":"O","Ợ":"O","Ọ":"O","Ộ":"O","Ǫ":"O","Ǭ":"O","Ø":"O","Ǿ":"O","Ɔ":"O","Ɵ":"O","Ꝋ":"O","Ꝍ":"O","Ƣ":"OI","Ꝏ":"OO","Ȣ":"OU","Ⓟ":"P","P":"P","Ṕ":"P","Ṗ":"P","Ƥ":"P","Ᵽ":"P","Ꝑ":"P","Ꝓ":"P","Ꝕ":"P","Ⓠ":"Q","Q":"Q","Ꝗ":"Q","Ꝙ":"Q","Ɋ":"Q","Ⓡ":"R","R":"R","Ŕ":"R","Ṙ":"R","Ř":"R","Ȑ":"R","Ȓ":"R","Ṛ":"R","Ṝ":"R","Ŗ":"R","Ṟ":"R","Ɍ":"R","Ɽ":"R","Ꝛ":"R","Ꞧ":"R","Ꞃ":"R","Ⓢ":"S","S":"S","ẞ":"S","Ś":"S","Ṥ":"S","Ŝ":"S","Ṡ":"S","Š":"S","Ṧ":"S","Ṣ":"S","Ṩ":"S","Ș":"S","Ş":"S","Ȿ":"S","Ꞩ":"S","Ꞅ":"S","Ⓣ":"T","T":"T","Ṫ":"T","Ť":"T","Ṭ":"T","Ț":"T","Ţ":"T","Ṱ":"T","Ṯ":"T","Ŧ":"T","Ƭ":"T","Ʈ":"T","Ⱦ":"T","Ꞇ":"T","Ꜩ":"TZ","Ⓤ":"U","U":"U","Ù":"U","Ú":"U","Û":"U","Ũ":"U","Ṹ":"U","Ū":"U","Ṻ":"U","Ŭ":"U","Ü":"U","Ǜ":"U","Ǘ":"U","Ǖ":"U","Ǚ":"U","Ủ":"U","Ů":"U","Ű":"U","Ǔ":"U","Ȕ":"U","Ȗ":"U","Ư":"U","Ừ":"U","Ứ":"U","Ữ":"U","Ử":"U","Ự":"U","Ụ":"U","Ṳ":"U","Ų":"U","Ṷ":"U","Ṵ":"U","Ʉ":"U","Ⓥ":"V","V":"V","Ṽ":"V","Ṿ":"V","Ʋ":"V","Ꝟ":"V","Ʌ":"V","Ꝡ":"VY","Ⓦ":"W","W":"W","Ẁ":"W","Ẃ":"W","Ŵ":"W","Ẇ":"W","Ẅ":"W","Ẉ":"W","Ⱳ":"W","Ⓧ":"X","X":"X","Ẋ":"X","Ẍ":"X","Ⓨ":"Y","Y":"Y","Ỳ":"Y","Ý":"Y","Ŷ":"Y","Ỹ":"Y","Ȳ":"Y","Ẏ":"Y","Ÿ":"Y","Ỷ":"Y","Ỵ":"Y","Ƴ":"Y","Ɏ":"Y","Ỿ":"Y","Ⓩ":"Z","Z":"Z","Ź":"Z","Ẑ":"Z","Ż":"Z","Ž":"Z","Ẓ":"Z","Ẕ":"Z","Ƶ":"Z","Ȥ":"Z","Ɀ":"Z","Ⱬ":"Z","Ꝣ":"Z","ⓐ":"a","a":"a","ẚ":"a","à":"a","á":"a","â":"a","ầ":"a","ấ":"a","ẫ":"a","ẩ":"a","ã":"a","ā":"a","ă":"a","ằ":"a","ắ":"a","ẵ":"a","ẳ":"a","ȧ":"a","ǡ":"a","ä":"a","ǟ":"a","ả":"a","å":"a","ǻ":"a","ǎ":"a","ȁ":"a","ȃ":"a","ạ":"a","ậ":"a","ặ":"a","ḁ":"a","ą":"a","ⱥ":"a","ɐ":"a","ꜳ":"aa","æ":"ae","ǽ":"ae","ǣ":"ae","ꜵ":"ao","ꜷ":"au","ꜹ":"av","ꜻ":"av","ꜽ":"ay","ⓑ":"b","b":"b","ḃ":"b","ḅ":"b","ḇ":"b","ƀ":"b","ƃ":"b","ɓ":"b","ⓒ":"c","c":"c","ć":"c","ĉ":"c","ċ":"c","č":"c","ç":"c","ḉ":"c","ƈ":"c","ȼ":"c","ꜿ":"c","ↄ":"c","ⓓ":"d","d":"d","ḋ":"d","ď":"d","ḍ":"d","ḑ":"d","ḓ":"d","ḏ":"d","đ":"d","ƌ":"d","ɖ":"d","ɗ":"d","ꝺ":"d","dz":"dz","dž":"dz","ⓔ":"e","e":"e","è":"e","é":"e","ê":"e","ề":"e","ế":"e","ễ":"e","ể":"e","ẽ":"e","ē":"e","ḕ":"e","ḗ":"e","ĕ":"e","ė":"e","ë":"e","ẻ":"e","ě":"e","ȅ":"e","ȇ":"e","ẹ":"e","ệ":"e","ȩ":"e","ḝ":"e","ę":"e","ḙ":"e","ḛ":"e","ɇ":"e","ɛ":"e","ǝ":"e","ⓕ":"f","f":"f","ḟ":"f","ƒ":"f","ꝼ":"f","ⓖ":"g","g":"g","ǵ":"g","ĝ":"g","ḡ":"g","ğ":"g","ġ":"g","ǧ":"g","ģ":"g","ǥ":"g","ɠ":"g","ꞡ":"g","ᵹ":"g","ꝿ":"g","ⓗ":"h","h":"h","ĥ":"h","ḣ":"h","ḧ":"h","ȟ":"h","ḥ":"h","ḩ":"h","ḫ":"h","ẖ":"h","ħ":"h","ⱨ":"h","ⱶ":"h","ɥ":"h","ƕ":"hv","ⓘ":"i","i":"i","ì":"i","í":"i","î":"i","ĩ":"i","ī":"i","ĭ":"i","ï":"i","ḯ":"i","ỉ":"i","ǐ":"i","ȉ":"i","ȋ":"i","ị":"i","į":"i","ḭ":"i","ɨ":"i","ı":"i","ⓙ":"j","j":"j","ĵ":"j","ǰ":"j","ɉ":"j","ⓚ":"k","k":"k","ḱ":"k","ǩ":"k","ḳ":"k","ķ":"k","ḵ":"k","ƙ":"k","ⱪ":"k","ꝁ":"k","ꝃ":"k","ꝅ":"k","ꞣ":"k","ⓛ":"l","l":"l","ŀ":"l","ĺ":"l","ľ":"l","ḷ":"l","ḹ":"l","ļ":"l","ḽ":"l","ḻ":"l","ſ":"l","ł":"l","ƚ":"l","ɫ":"l","ⱡ":"l","ꝉ":"l","ꞁ":"l","ꝇ":"l","lj":"lj","ⓜ":"m","m":"m","ḿ":"m","ṁ":"m","ṃ":"m","ɱ":"m","ɯ":"m","ⓝ":"n","n":"n","ǹ":"n","ń":"n","ñ":"n","ṅ":"n","ň":"n","ṇ":"n","ņ":"n","ṋ":"n","ṉ":"n","ƞ":"n","ɲ":"n","ʼn":"n","ꞑ":"n","ꞥ":"n","nj":"nj","ⓞ":"o","o":"o","ò":"o","ó":"o","ô":"o","ồ":"o","ố":"o","ỗ":"o","ổ":"o","õ":"o","ṍ":"o","ȭ":"o","ṏ":"o","ō":"o","ṑ":"o","ṓ":"o","ŏ":"o","ȯ":"o","ȱ":"o","ö":"o","ȫ":"o","ỏ":"o","ő":"o","ǒ":"o","ȍ":"o","ȏ":"o","ơ":"o","ờ":"o","ớ":"o","ỡ":"o","ở":"o","ợ":"o","ọ":"o","ộ":"o","ǫ":"o","ǭ":"o","ø":"o","ǿ":"o","ɔ":"o","ꝋ":"o","ꝍ":"o","ɵ":"o","ƣ":"oi","ȣ":"ou","ꝏ":"oo","ⓟ":"p","p":"p","ṕ":"p","ṗ":"p","ƥ":"p","ᵽ":"p","ꝑ":"p","ꝓ":"p","ꝕ":"p","ⓠ":"q","q":"q","ɋ":"q","ꝗ":"q","ꝙ":"q","ⓡ":"r","r":"r","ŕ":"r","ṙ":"r","ř":"r","ȑ":"r","ȓ":"r","ṛ":"r","ṝ":"r","ŗ":"r","ṟ":"r","ɍ":"r","ɽ":"r","ꝛ":"r","ꞧ":"r","ꞃ":"r","ⓢ":"s","s":"s","ß":"s","ś":"s","ṥ":"s","ŝ":"s","ṡ":"s","š":"s","ṧ":"s","ṣ":"s","ṩ":"s","ș":"s","ş":"s","ȿ":"s","ꞩ":"s","ꞅ":"s","ẛ":"s","ⓣ":"t","t":"t","ṫ":"t","ẗ":"t","ť":"t","ṭ":"t","ț":"t","ţ":"t","ṱ":"t","ṯ":"t","ŧ":"t","ƭ":"t","ʈ":"t","ⱦ":"t","ꞇ":"t","ꜩ":"tz","ⓤ":"u","u":"u","ù":"u","ú":"u","û":"u","ũ":"u","ṹ":"u","ū":"u","ṻ":"u","ŭ":"u","ü":"u","ǜ":"u","ǘ":"u","ǖ":"u","ǚ":"u","ủ":"u","ů":"u","ű":"u","ǔ":"u","ȕ":"u","ȗ":"u","ư":"u","ừ":"u","ứ":"u","ữ":"u","ử":"u","ự":"u","ụ":"u","ṳ":"u","ų":"u","ṷ":"u","ṵ":"u","ʉ":"u","ⓥ":"v","v":"v","ṽ":"v","ṿ":"v","ʋ":"v","ꝟ":"v","ʌ":"v","ꝡ":"vy","ⓦ":"w","w":"w","ẁ":"w","ẃ":"w","ŵ":"w","ẇ":"w","ẅ":"w","ẘ":"w","ẉ":"w","ⱳ":"w","ⓧ":"x","x":"x","ẋ":"x","ẍ":"x","ⓨ":"y","y":"y","ỳ":"y","ý":"y","ŷ":"y","ỹ":"y","ȳ":"y","ẏ":"y","ÿ":"y","ỷ":"y","ẙ":"y","ỵ":"y","ƴ":"y","ɏ":"y","ỿ":"y","ⓩ":"z","z":"z","ź":"z","ẑ":"z","ż":"z","ž":"z","ẓ":"z","ẕ":"z","ƶ":"z","ȥ":"z","ɀ":"z","ⱬ":"z","ꝣ":"z","Ά":"Α","Έ":"Ε","Ή":"Η","Ί":"Ι","Ϊ":"Ι","Ό":"Ο","Ύ":"Υ","Ϋ":"Υ","Ώ":"Ω","ά":"α","έ":"ε","ή":"η","ί":"ι","ϊ":"ι","ΐ":"ι","ό":"ο","ύ":"υ","ϋ":"υ","ΰ":"υ","ω":"ω","ς":"σ"};return a}),b.define("select2/data/base",["../utils"],function(a){function b(a,c){b.__super__.constructor.call(this)}return a.Extend(b,a.Observable),b.prototype.current=function(a){throw new Error("The `current` method must be defined in child classes.")},b.prototype.query=function(a,b){throw new Error("The `query` method must be defined in child classes.")},b.prototype.bind=function(a,b){},b.prototype.destroy=function(){},b.prototype.generateResultId=function(b,c){var d=b.id+"-result-";return d+=a.generateChars(4),d+=null!=c.id?"-"+c.id.toString():"-"+a.generateChars(4)},b}),b.define("select2/data/select",["./base","../utils","jquery"],function(a,b,c){function d(a,b){this.$element=a,this.options=b,d.__super__.constructor.call(this)}return b.Extend(d,a),d.prototype.current=function(a){var b=[],d=this;this.$element.find(":selected").each(function(){var a=c(this),e=d.item(a);b.push(e)}),a(b)},d.prototype.select=function(a){var b=this;if(a.selected=!0,c(a.element).is("option"))return a.element.selected=!0,void this.$element.trigger("change");
     1/*! Select2 4.0.3 | https://github.com/select2/select2/blob/master/LICENSE.md */!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):a("object"==typeof exports?require("jquery"):jQuery)}(function(a){var b=function(){if(a&&a.fn&&a.fn.select2&&a.fn.select2.amd)var b=a.fn.select2.amd;var b;return function(){if(!b||!b.requirejs){b?c=b:b={};var a,c,d;!function(b){function e(a,b){return u.call(a,b)}function f(a,b){var c,d,e,f,g,h,i,j,k,l,m,n=b&&b.split("/"),o=s.map,p=o&&o["*"]||{};if(a&&"."===a.charAt(0))if(b){for(a=a.split("/"),g=a.length-1,s.nodeIdCompat&&w.test(a[g])&&(a[g]=a[g].replace(w,"")),a=n.slice(0,n.length-1).concat(a),k=0;k<a.length;k+=1)if(m=a[k],"."===m)a.splice(k,1),k-=1;else if(".."===m){if(1===k&&(".."===a[2]||".."===a[0]))break;k>0&&(a.splice(k-1,2),k-=2)}a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((n||p)&&o){for(c=a.split("/"),k=c.length;k>0;k-=1){if(d=c.slice(0,k).join("/"),n)for(l=n.length;l>0;l-=1)if(e=o[n.slice(0,l).join("/")],e&&(e=e[d])){f=e,h=k;break}if(f)break;!i&&p&&p[d]&&(i=p[d],j=k)}!f&&i&&(f=i,h=j),f&&(c.splice(0,h,f),a=c.join("/"))}return a}function g(a,c){return function(){var d=v.call(arguments,0);return"string"!=typeof d[0]&&1===d.length&&d.push(null),n.apply(b,d.concat([a,c]))}}function h(a){return function(b){return f(b,a)}}function i(a){return function(b){q[a]=b}}function j(a){if(e(r,a)){var c=r[a];delete r[a],t[a]=!0,m.apply(b,c)}if(!e(q,a)&&!e(t,a))throw new Error("No "+a);return q[a]}function k(a){var b,c=a?a.indexOf("!"):-1;return c>-1&&(b=a.substring(0,c),a=a.substring(c+1,a.length)),[b,a]}function l(a){return function(){return s&&s.config&&s.config[a]||{}}}var m,n,o,p,q={},r={},s={},t={},u=Object.prototype.hasOwnProperty,v=[].slice,w=/\.js$/;o=function(a,b){var c,d=k(a),e=d[0];return a=d[1],e&&(e=f(e,b),c=j(e)),e?a=c&&c.normalize?c.normalize(a,h(b)):f(a,b):(a=f(a,b),d=k(a),e=d[0],a=d[1],e&&(c=j(e))),{f:e?e+"!"+a:a,n:a,pr:e,p:c}},p={require:function(a){return g(a)},exports:function(a){var b=q[a];return"undefined"!=typeof b?b:q[a]={}},module:function(a){return{id:a,uri:"",exports:q[a],config:l(a)}}},m=function(a,c,d,f){var h,k,l,m,n,s,u=[],v=typeof d;if(f=f||a,"undefined"===v||"function"===v){for(c=!c.length&&d.length?["require","exports","module"]:c,n=0;n<c.length;n+=1)if(m=o(c[n],f),k=m.f,"require"===k)u[n]=p.require(a);else if("exports"===k)u[n]=p.exports(a),s=!0;else if("module"===k)h=u[n]=p.module(a);else if(e(q,k)||e(r,k)||e(t,k))u[n]=j(k);else{if(!m.p)throw new Error(a+" missing "+k);m.p.load(m.n,g(f,!0),i(k),{}),u[n]=q[k]}l=d?d.apply(q[a],u):void 0,a&&(h&&h.exports!==b&&h.exports!==q[a]?q[a]=h.exports:l===b&&s||(q[a]=l))}else a&&(q[a]=d)},a=c=n=function(a,c,d,e,f){if("string"==typeof a)return p[a]?p[a](c):j(o(a,c).f);if(!a.splice){if(s=a,s.deps&&n(s.deps,s.callback),!c)return;c.splice?(a=c,c=d,d=null):a=b}return c=c||function(){},"function"==typeof d&&(d=e,e=f),e?m(b,a,c,d):setTimeout(function(){m(b,a,c,d)},4),n},n.config=function(a){return n(a)},a._defined=q,d=function(a,b,c){if("string"!=typeof a)throw new Error("See almond README: incorrect module build, no module name");b.splice||(c=b,b=[]),e(q,a)||e(r,a)||(r[a]=[a,b,c])},d.amd={jQuery:!0}}(),b.requirejs=a,b.require=c,b.define=d}}(),b.define("almond",function(){}),b.define("jquery",[],function(){var b=a||$;return null==b&&console&&console.error&&console.error("Select2: An instance of jQuery or a jQuery-compatible library was not found. Make sure that you are including jQuery before Select2 on your web page."),b}),b.define("select2/utils",["jquery"],function(a){function b(a){var b=a.prototype,c=[];for(var d in b){var e=b[d];"function"==typeof e&&"constructor"!==d&&c.push(d)}return c}var c={};c.Extend=function(a,b){function c(){this.constructor=a}var d={}.hasOwnProperty;for(var e in b)d.call(b,e)&&(a[e]=b[e]);return c.prototype=b.prototype,a.prototype=new c,a.__super__=b.prototype,a},c.Decorate=function(a,c){function d(){var b=Array.prototype.unshift,d=c.prototype.constructor.length,e=a.prototype.constructor;d>0&&(b.call(arguments,a.prototype.constructor),e=c.prototype.constructor),e.apply(this,arguments)}function e(){this.constructor=d}var f=b(c),g=b(a);c.displayName=a.displayName,d.prototype=new e;for(var h=0;h<g.length;h++){var i=g[h];d.prototype[i]=a.prototype[i]}for(var j=(function(a){var b=function(){};a in d.prototype&&(b=d.prototype[a]);var e=c.prototype[a];return function(){var a=Array.prototype.unshift;return a.call(arguments,b),e.apply(this,arguments)}}),k=0;k<f.length;k++){var l=f[k];d.prototype[l]=j(l)}return d};var d=function(){this.listeners={}};return d.prototype.on=function(a,b){this.listeners=this.listeners||{},a in this.listeners?this.listeners[a].push(b):this.listeners[a]=[b]},d.prototype.trigger=function(a){var b=Array.prototype.slice,c=b.call(arguments,1);this.listeners=this.listeners||{},null==c&&(c=[]),0===c.length&&c.push({}),c[0]._type=a,a in this.listeners&&this.invoke(this.listeners[a],b.call(arguments,1)),"*"in this.listeners&&this.invoke(this.listeners["*"],arguments)},d.prototype.invoke=function(a,b){for(var c=0,d=a.length;d>c;c++)a[c].apply(this,b)},c.Observable=d,c.generateChars=function(a){for(var b="",c=0;a>c;c++){var d=Math.floor(36*Math.random());b+=d.toString(36)}return b},c.bind=function(a,b){return function(){a.apply(b,arguments)}},c._convertData=function(a){for(var b in a){var c=b.split("-"),d=a;if(1!==c.length){for(var e=0;e<c.length;e++){var f=c[e];f=f.substring(0,1).toLowerCase()+f.substring(1),f in d||(d[f]={}),e==c.length-1&&(d[f]=a[b]),d=d[f]}delete a[b]}}return a},c.hasScroll=function(b,c){var d=a(c),e=c.style.overflowX,f=c.style.overflowY;return e!==f||"hidden"!==f&&"visible"!==f?"scroll"===e||"scroll"===f?!0:d.innerHeight()<c.scrollHeight||d.innerWidth()<c.scrollWidth:!1},c.escapeMarkup=function(a){var b={"\\":"&#92;","&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#47;"};return"string"!=typeof a?a:String(a).replace(/[&<>"'\/\\]/g,function(a){return b[a]})},c.appendMany=function(b,c){if("1.7"===a.fn.jquery.substr(0,3)){var d=a();a.map(c,function(a){d=d.add(a)}),c=d}b.append(c)},c}),b.define("select2/results",["jquery","./utils"],function(a,b){function c(a,b,d){this.$element=a,this.data=d,this.options=b,c.__super__.constructor.call(this)}return b.Extend(c,b.Observable),c.prototype.render=function(){var b=a('<ul class="select2-results__options" role="tree"></ul>');return this.options.get("multiple")&&b.attr("aria-multiselectable","true"),this.$results=b,b},c.prototype.clear=function(){this.$results.empty()},c.prototype.displayMessage=function(b){var c=this.options.get("escapeMarkup");this.clear(),this.hideLoading();var d=a('<li role="treeitem" aria-live="assertive" class="select2-results__option"></li>'),e=this.options.get("translations").get(b.message);d.append(c(e(b.args))),d[0].className+=" select2-results__message",this.$results.append(d)},c.prototype.hideMessages=function(){this.$results.find(".select2-results__message").remove()},c.prototype.append=function(a){this.hideLoading();var b=[];if(null==a.results||0===a.results.length)return void(0===this.$results.children().length&&this.trigger("results:message",{message:"noResults"}));a.results=this.sort(a.results);for(var c=0;c<a.results.length;c++){var d=a.results[c],e=this.option(d);b.push(e)}this.$results.append(b)},c.prototype.position=function(a,b){var c=b.find(".select2-results");c.append(a)},c.prototype.sort=function(a){var b=this.options.get("sorter");return b(a)},c.prototype.highlightFirstItem=function(){var a=this.$results.find(".select2-results__option[aria-selected]"),b=a.filter("[aria-selected=true]");b.length>0?b.first().trigger("mouseenter"):a.first().trigger("mouseenter"),this.ensureHighlightVisible()},c.prototype.setClasses=function(){var b=this;this.data.current(function(c){var d=a.map(c,function(a){return a.id.toString()}),e=b.$results.find(".select2-results__option[aria-selected]");e.each(function(){var b=a(this),c=a.data(this,"data"),e=""+c.id;null!=c.element&&c.element.selected||null==c.element&&a.inArray(e,d)>-1?b.attr("aria-selected","true"):b.attr("aria-selected","false")})})},c.prototype.showLoading=function(a){this.hideLoading();var b=this.options.get("translations").get("searching"),c={disabled:!0,loading:!0,text:b(a)},d=this.option(c);d.className+=" loading-results",this.$results.prepend(d)},c.prototype.hideLoading=function(){this.$results.find(".loading-results").remove()},c.prototype.option=function(b){var c=document.createElement("li");c.className="select2-results__option";var d={role:"treeitem","aria-selected":"false"};b.disabled&&(delete d["aria-selected"],d["aria-disabled"]="true"),null==b.id&&delete d["aria-selected"],null!=b._resultId&&(c.id=b._resultId),b.title&&(c.title=b.title),b.children&&(d.role="group",d["aria-label"]=b.text,delete d["aria-selected"]);for(var e in d){var f=d[e];c.setAttribute(e,f)}if(b.children){var g=a(c),h=document.createElement("strong");h.className="select2-results__group";a(h);this.template(b,h);for(var i=[],j=0;j<b.children.length;j++){var k=b.children[j],l=this.option(k);i.push(l)}var m=a("<ul></ul>",{"class":"select2-results__options select2-results__options--nested"});m.append(i),g.append(h),g.append(m)}else this.template(b,c);return a.data(c,"data",b),c},c.prototype.bind=function(b,c){var d=this,e=b.id+"-results";this.$results.attr("id",e),b.on("results:all",function(a){d.clear(),d.append(a.data),b.isOpen()&&(d.setClasses(),d.highlightFirstItem())}),b.on("results:append",function(a){d.append(a.data),b.isOpen()&&d.setClasses()}),b.on("query",function(a){d.hideMessages(),d.showLoading(a)}),b.on("select",function(){b.isOpen()&&(d.setClasses(),d.highlightFirstItem())}),b.on("unselect",function(){b.isOpen()&&(d.setClasses(),d.highlightFirstItem())}),b.on("open",function(){d.$results.attr("aria-expanded","true"),d.$results.attr("aria-hidden","false"),d.setClasses(),d.ensureHighlightVisible()}),b.on("close",function(){d.$results.attr("aria-expanded","false"),d.$results.attr("aria-hidden","true"),d.$results.removeAttr("aria-activedescendant")}),b.on("results:toggle",function(){var a=d.getHighlightedResults();0!==a.length&&a.trigger("mouseup")}),b.on("results:select",function(){var a=d.getHighlightedResults();if(0!==a.length){var b=a.data("data");"true"==a.attr("aria-selected")?d.trigger("close",{}):d.trigger("select",{data:b})}}),b.on("results:previous",function(){var a=d.getHighlightedResults(),b=d.$results.find("[aria-selected]"),c=b.index(a);if(0!==c){var e=c-1;0===a.length&&(e=0);var f=b.eq(e);f.trigger("mouseenter");var g=d.$results.offset().top,h=f.offset().top,i=d.$results.scrollTop()+(h-g);0===e?d.$results.scrollTop(0):0>h-g&&d.$results.scrollTop(i)}}),b.on("results:next",function(){var a=d.getHighlightedResults(),b=d.$results.find("[aria-selected]"),c=b.index(a),e=c+1;if(!(e>=b.length)){var f=b.eq(e);f.trigger("mouseenter");var g=d.$results.offset().top+d.$results.outerHeight(!1),h=f.offset().top+f.outerHeight(!1),i=d.$results.scrollTop()+h-g;0===e?d.$results.scrollTop(0):h>g&&d.$results.scrollTop(i)}}),b.on("results:focus",function(a){a.element.addClass("select2-results__option--highlighted")}),b.on("results:message",function(a){d.displayMessage(a)}),a.fn.mousewheel&&this.$results.on("mousewheel",function(a){var b=d.$results.scrollTop(),c=d.$results.get(0).scrollHeight-b+a.deltaY,e=a.deltaY>0&&b-a.deltaY<=0,f=a.deltaY<0&&c<=d.$results.height();e?(d.$results.scrollTop(0),a.preventDefault(),a.stopPropagation()):f&&(d.$results.scrollTop(d.$results.get(0).scrollHeight-d.$results.height()),a.preventDefault(),a.stopPropagation())}),this.$results.on("mouseup",".select2-results__option[aria-selected]",function(b){var c=a(this),e=c.data("data");return"true"===c.attr("aria-selected")?void(d.options.get("multiple")?d.trigger("unselect",{originalEvent:b,data:e}):d.trigger("close",{})):void d.trigger("select",{originalEvent:b,data:e})}),this.$results.on("mouseenter",".select2-results__option[aria-selected]",function(b){var c=a(this).data("data");d.getHighlightedResults().removeClass("select2-results__option--highlighted"),d.trigger("results:focus",{data:c,element:a(this)})})},c.prototype.getHighlightedResults=function(){var a=this.$results.find(".select2-results__option--highlighted");return a},c.prototype.destroy=function(){this.$results.remove()},c.prototype.ensureHighlightVisible=function(){var a=this.getHighlightedResults();if(0!==a.length){var b=this.$results.find("[aria-selected]"),c=b.index(a),d=this.$results.offset().top,e=a.offset().top,f=this.$results.scrollTop()+(e-d),g=e-d;f-=2*a.outerHeight(!1),2>=c?this.$results.scrollTop(0):(g>this.$results.outerHeight()||0>g)&&this.$results.scrollTop(f)}},c.prototype.template=function(b,c){var d=this.options.get("templateResult"),e=this.options.get("escapeMarkup"),f=d(b,c);null==f?c.style.display="none":"string"==typeof f?c.innerHTML=e(f):a(c).append(f)},c}),b.define("select2/keys",[],function(){var a={BACKSPACE:8,TAB:9,ENTER:13,SHIFT:16,CTRL:17,ALT:18,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,DELETE:46};return a}),b.define("select2/selection/base",["jquery","../utils","../keys"],function(a,b,c){function d(a,b){this.$element=a,this.options=b,d.__super__.constructor.call(this)}return b.Extend(d,b.Observable),d.prototype.render=function(){var b=a('<span class="select2-selection" role="combobox"  aria-haspopup="true" aria-expanded="false"></span>');return this._tabindex=0,null!=this.$element.data("old-tabindex")?this._tabindex=this.$element.data("old-tabindex"):null!=this.$element.attr("tabindex")&&(this._tabindex=this.$element.attr("tabindex")),b.attr("title",this.$element.attr("title")),b.attr("tabindex",this._tabindex),this.$selection=b,b},d.prototype.bind=function(a,b){var d=this,e=(a.id+"-container",a.id+"-results");this.container=a,this.$selection.on("focus",function(a){d.trigger("focus",a)}),this.$selection.on("blur",function(a){d._handleBlur(a)}),this.$selection.on("keydown",function(a){d.trigger("keypress",a),a.which===c.SPACE&&a.preventDefault()}),a.on("results:focus",function(a){d.$selection.attr("aria-activedescendant",a.data._resultId)}),a.on("selection:update",function(a){d.update(a.data)}),a.on("open",function(){d.$selection.attr("aria-expanded","true"),d.$selection.attr("aria-owns",e),d._attachCloseHandler(a)}),a.on("close",function(){d.$selection.attr("aria-expanded","false"),d.$selection.removeAttr("aria-activedescendant"),d.$selection.removeAttr("aria-owns"),d.$selection.focus(),d._detachCloseHandler(a)}),a.on("enable",function(){d.$selection.attr("tabindex",d._tabindex)}),a.on("disable",function(){d.$selection.attr("tabindex","-1")})},d.prototype._handleBlur=function(b){var c=this;window.setTimeout(function(){document.activeElement==c.$selection[0]||a.contains(c.$selection[0],document.activeElement)||c.trigger("blur",b)},1)},d.prototype._attachCloseHandler=function(b){a(document.body).on("mousedown.select2."+b.id,function(b){var c=a(b.target),d=c.closest(".select2"),e=a(".select2.select2-container--open");e.each(function(){var b=a(this);if(this!=d[0]){var c=b.data("element");c.select2("close")}})})},d.prototype._detachCloseHandler=function(b){a(document.body).off("mousedown.select2."+b.id)},d.prototype.position=function(a,b){var c=b.find(".selection");c.append(a)},d.prototype.destroy=function(){this._detachCloseHandler(this.container)},d.prototype.update=function(a){throw new Error("The `update` method must be defined in child classes.")},d}),b.define("select2/selection/single",["jquery","./base","../utils","../keys"],function(a,b,c,d){function e(){e.__super__.constructor.apply(this,arguments)}return c.Extend(e,b),e.prototype.render=function(){var a=e.__super__.render.call(this);return a.addClass("select2-selection--single"),a.html('<span class="select2-selection__rendered"></span><span class="select2-selection__arrow" role="presentation"><b role="presentation"></b></span>'),a},e.prototype.bind=function(a,b){var c=this;e.__super__.bind.apply(this,arguments);var d=a.id+"-container";this.$selection.find(".select2-selection__rendered").attr("id",d),this.$selection.attr("aria-labelledby",d),this.$selection.on("mousedown",function(a){1===a.which&&c.trigger("toggle",{originalEvent:a})}),this.$selection.on("focus",function(a){}),this.$selection.on("blur",function(a){}),a.on("focus",function(b){a.isOpen()||c.$selection.focus()}),a.on("selection:update",function(a){c.update(a.data)})},e.prototype.clear=function(){this.$selection.find(".select2-selection__rendered").empty()},e.prototype.display=function(a,b){var c=this.options.get("templateSelection"),d=this.options.get("escapeMarkup");return d(c(a,b))},e.prototype.selectionContainer=function(){return a("<span></span>")},e.prototype.update=function(a){if(0===a.length)return void this.clear();var b=a[0],c=this.$selection.find(".select2-selection__rendered"),d=this.display(b,c);c.empty().append(d),c.prop("title",b.title||b.text)},e}),b.define("select2/selection/multiple",["jquery","./base","../utils"],function(a,b,c){function d(a,b){d.__super__.constructor.apply(this,arguments)}return c.Extend(d,b),d.prototype.render=function(){var a=d.__super__.render.call(this);return a.addClass("select2-selection--multiple"),a.html('<ul class="select2-selection__rendered"></ul>'),a},d.prototype.bind=function(b,c){var e=this;d.__super__.bind.apply(this,arguments),this.$selection.on("click",function(a){e.trigger("toggle",{originalEvent:a})}),this.$selection.on("click",".select2-selection__choice__remove",function(b){if(!e.options.get("disabled")){var c=a(this),d=c.parent(),f=d.data("data");e.trigger("unselect",{originalEvent:b,data:f})}})},d.prototype.clear=function(){this.$selection.find(".select2-selection__rendered").empty()},d.prototype.display=function(a,b){var c=this.options.get("templateSelection"),d=this.options.get("escapeMarkup");return d(c(a,b))},d.prototype.selectionContainer=function(){var b=a('<li class="select2-selection__choice"><span class="select2-selection__choice__remove" role="presentation">&times;</span></li>');return b},d.prototype.update=function(a){if(this.clear(),0!==a.length){for(var b=[],d=0;d<a.length;d++){var e=a[d],f=this.selectionContainer(),g=this.display(e,f);f.append(g),f.prop("title",e.title||e.text),f.data("data",e),b.push(f)}var h=this.$selection.find(".select2-selection__rendered");c.appendMany(h,b)}},d}),b.define("select2/selection/placeholder",["../utils"],function(a){function b(a,b,c){this.placeholder=this.normalizePlaceholder(c.get("placeholder")),a.call(this,b,c)}return b.prototype.normalizePlaceholder=function(a,b){return"string"==typeof b&&(b={id:"",text:b}),b},b.prototype.createPlaceholder=function(a,b){var c=this.selectionContainer();return c.html(this.display(b)),c.addClass("select2-selection__placeholder").removeClass("select2-selection__choice"),c},b.prototype.update=function(a,b){var c=1==b.length&&b[0].id!=this.placeholder.id,d=b.length>1;if(d||c)return a.call(this,b);this.clear();var e=this.createPlaceholder(this.placeholder);this.$selection.find(".select2-selection__rendered").append(e)},b}),b.define("select2/selection/allowClear",["jquery","../keys"],function(a,b){function c(){}return c.prototype.bind=function(a,b,c){var d=this;a.call(this,b,c),null==this.placeholder&&this.options.get("debug")&&window.console&&console.error&&console.error("Select2: The `allowClear` option should be used in combination with the `placeholder` option."),this.$selection.on("mousedown",".select2-selection__clear",function(a){d._handleClear(a)}),b.on("keypress",function(a){d._handleKeyboardClear(a,b)})},c.prototype._handleClear=function(a,b){if(!this.options.get("disabled")){var c=this.$selection.find(".select2-selection__clear");if(0!==c.length){b.stopPropagation();for(var d=c.data("data"),e=0;e<d.length;e++){var f={data:d[e]};if(this.trigger("unselect",f),f.prevented)return}this.$element.val(this.placeholder.id).trigger("change"),this.trigger("toggle",{})}}},c.prototype._handleKeyboardClear=function(a,c,d){d.isOpen()||(c.which==b.DELETE||c.which==b.BACKSPACE)&&this._handleClear(c)},c.prototype.update=function(b,c){if(b.call(this,c),!(this.$selection.find(".select2-selection__placeholder").length>0||0===c.length)){var d=a('<span class="select2-selection__clear">&times;</span>');d.data("data",c),this.$selection.find(".select2-selection__rendered").prepend(d)}},c}),b.define("select2/selection/search",["jquery","../utils","../keys"],function(a,b,c){function d(a,b,c){a.call(this,b,c)}return d.prototype.render=function(b){var c=a('<li class="select2-search select2-search--inline"><input class="select2-search__field" type="search" tabindex="-1" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" role="textbox" aria-autocomplete="list" /></li>');this.$searchContainer=c,this.$search=c.find("input");var d=b.call(this);return this._transferTabIndex(),d},d.prototype.bind=function(a,b,d){var e=this;a.call(this,b,d),b.on("open",function(){e.$search.trigger("focus")}),b.on("close",function(){e.$search.val(""),e.$search.removeAttr("aria-activedescendant"),e.$search.trigger("focus")}),b.on("enable",function(){e.$search.prop("disabled",!1),e._transferTabIndex()}),b.on("disable",function(){e.$search.prop("disabled",!0)}),b.on("focus",function(a){e.$search.trigger("focus")}),b.on("results:focus",function(a){e.$search.attr("aria-activedescendant",a.id)}),this.$selection.on("focusin",".select2-search--inline",function(a){e.trigger("focus",a)}),this.$selection.on("focusout",".select2-search--inline",function(a){e._handleBlur(a)}),this.$selection.on("keydown",".select2-search--inline",function(a){a.stopPropagation(),e.trigger("keypress",a),e._keyUpPrevented=a.isDefaultPrevented();var b=a.which;if(b===c.BACKSPACE&&""===e.$search.val()){var d=e.$searchContainer.prev(".select2-selection__choice");if(d.length>0){var f=d.data("data");e.searchRemoveChoice(f),a.preventDefault()}}});var f=document.documentMode,g=f&&11>=f;this.$selection.on("input.searchcheck",".select2-search--inline",function(a){return g?void e.$selection.off("input.search input.searchcheck"):void e.$selection.off("keyup.search")}),this.$selection.on("keyup.search input.search",".select2-search--inline",function(a){if(g&&"input"===a.type)return void e.$selection.off("input.search input.searchcheck");var b=a.which;b!=c.SHIFT&&b!=c.CTRL&&b!=c.ALT&&b!=c.TAB&&e.handleSearch(a)})},d.prototype._transferTabIndex=function(a){this.$search.attr("tabindex",this.$selection.attr("tabindex")),this.$selection.attr("tabindex","-1")},d.prototype.createPlaceholder=function(a,b){this.$search.attr("placeholder",b.text)},d.prototype.update=function(a,b){var c=this.$search[0]==document.activeElement;this.$search.attr("placeholder",""),a.call(this,b),this.$selection.find(".select2-selection__rendered").append(this.$searchContainer),this.resizeSearch(),c&&this.$search.focus()},d.prototype.handleSearch=function(){if(this.resizeSearch(),!this._keyUpPrevented){var a=this.$search.val();this.trigger("query",{term:a})}this._keyUpPrevented=!1},d.prototype.searchRemoveChoice=function(a,b){this.trigger("unselect",{data:b}),this.$search.val(b.text),this.handleSearch()},d.prototype.resizeSearch=function(){this.$search.css("width","25px");var a="";if(""!==this.$search.attr("placeholder"))a=this.$selection.find(".select2-selection__rendered").innerWidth();else{var b=this.$search.val().length+1;a=.75*b+"em"}this.$search.css("width",a)},d}),b.define("select2/selection/eventRelay",["jquery"],function(a){function b(){}return b.prototype.bind=function(b,c,d){var e=this,f=["open","opening","close","closing","select","selecting","unselect","unselecting"],g=["opening","closing","selecting","unselecting"];b.call(this,c,d),c.on("*",function(b,c){if(-1!==a.inArray(b,f)){c=c||{};var d=a.Event("select2:"+b,{params:c});e.$element.trigger(d),-1!==a.inArray(b,g)&&(c.prevented=d.isDefaultPrevented())}})},b}),b.define("select2/translation",["jquery","require"],function(a,b){function c(a){this.dict=a||{}}return c.prototype.all=function(){return this.dict},c.prototype.get=function(a){return this.dict[a]},c.prototype.extend=function(b){this.dict=a.extend({},b.all(),this.dict)},c._cache={},c.loadPath=function(a){if(!(a in c._cache)){var d=b(a);c._cache[a]=d}return new c(c._cache[a])},c}),b.define("select2/diacritics",[],function(){var a={"Ⓐ":"A","A":"A","À":"A","Á":"A","Â":"A","Ầ":"A","Ấ":"A","Ẫ":"A","Ẩ":"A","Ã":"A","Ā":"A","Ă":"A","Ằ":"A","Ắ":"A","Ẵ":"A","Ẳ":"A","Ȧ":"A","Ǡ":"A","Ä":"A","Ǟ":"A","Ả":"A","Å":"A","Ǻ":"A","Ǎ":"A","Ȁ":"A","Ȃ":"A","Ạ":"A","Ậ":"A","Ặ":"A","Ḁ":"A","Ą":"A","Ⱥ":"A","Ɐ":"A","Ꜳ":"AA","Æ":"AE","Ǽ":"AE","Ǣ":"AE","Ꜵ":"AO","Ꜷ":"AU","Ꜹ":"AV","Ꜻ":"AV","Ꜽ":"AY","Ⓑ":"B","B":"B","Ḃ":"B","Ḅ":"B","Ḇ":"B","Ƀ":"B","Ƃ":"B","Ɓ":"B","Ⓒ":"C","C":"C","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","Ç":"C","Ḉ":"C","Ƈ":"C","Ȼ":"C","Ꜿ":"C","Ⓓ":"D","D":"D","Ḋ":"D","Ď":"D","Ḍ":"D","Ḑ":"D","Ḓ":"D","Ḏ":"D","Đ":"D","Ƌ":"D","Ɗ":"D","Ɖ":"D","Ꝺ":"D","DZ":"DZ","DŽ":"DZ","Dz":"Dz","Dž":"Dz","Ⓔ":"E","E":"E","È":"E","É":"E","Ê":"E","Ề":"E","Ế":"E","Ễ":"E","Ể":"E","Ẽ":"E","Ē":"E","Ḕ":"E","Ḗ":"E","Ĕ":"E","Ė":"E","Ë":"E","Ẻ":"E","Ě":"E","Ȅ":"E","Ȇ":"E","Ẹ":"E","Ệ":"E","Ȩ":"E","Ḝ":"E","Ę":"E","Ḙ":"E","Ḛ":"E","Ɛ":"E","Ǝ":"E","Ⓕ":"F","F":"F","Ḟ":"F","Ƒ":"F","Ꝼ":"F","Ⓖ":"G","G":"G","Ǵ":"G","Ĝ":"G","Ḡ":"G","Ğ":"G","Ġ":"G","Ǧ":"G","Ģ":"G","Ǥ":"G","Ɠ":"G","Ꞡ":"G","Ᵹ":"G","Ꝿ":"G","Ⓗ":"H","H":"H","Ĥ":"H","Ḣ":"H","Ḧ":"H","Ȟ":"H","Ḥ":"H","Ḩ":"H","Ḫ":"H","Ħ":"H","Ⱨ":"H","Ⱶ":"H","Ɥ":"H","Ⓘ":"I","I":"I","Ì":"I","Í":"I","Î":"I","Ĩ":"I","Ī":"I","Ĭ":"I","İ":"I","Ï":"I","Ḯ":"I","Ỉ":"I","Ǐ":"I","Ȉ":"I","Ȋ":"I","Ị":"I","Į":"I","Ḭ":"I","Ɨ":"I","Ⓙ":"J","J":"J","Ĵ":"J","Ɉ":"J","Ⓚ":"K","K":"K","Ḱ":"K","Ǩ":"K","Ḳ":"K","Ķ":"K","Ḵ":"K","Ƙ":"K","Ⱪ":"K","Ꝁ":"K","Ꝃ":"K","Ꝅ":"K","Ꞣ":"K","Ⓛ":"L","L":"L","Ŀ":"L","Ĺ":"L","Ľ":"L","Ḷ":"L","Ḹ":"L","Ļ":"L","Ḽ":"L","Ḻ":"L","Ł":"L","Ƚ":"L","Ɫ":"L","Ⱡ":"L","Ꝉ":"L","Ꝇ":"L","Ꞁ":"L","LJ":"LJ","Lj":"Lj","Ⓜ":"M","M":"M","Ḿ":"M","Ṁ":"M","Ṃ":"M","Ɱ":"M","Ɯ":"M","Ⓝ":"N","N":"N","Ǹ":"N","Ń":"N","Ñ":"N","Ṅ":"N","Ň":"N","Ṇ":"N","Ņ":"N","Ṋ":"N","Ṉ":"N","Ƞ":"N","Ɲ":"N","Ꞑ":"N","Ꞥ":"N","NJ":"NJ","Nj":"Nj","Ⓞ":"O","O":"O","Ò":"O","Ó":"O","Ô":"O","Ồ":"O","Ố":"O","Ỗ":"O","Ổ":"O","Õ":"O","Ṍ":"O","Ȭ":"O","Ṏ":"O","Ō":"O","Ṑ":"O","Ṓ":"O","Ŏ":"O","Ȯ":"O","Ȱ":"O","Ö":"O","Ȫ":"O","Ỏ":"O","Ő":"O","Ǒ":"O","Ȍ":"O","Ȏ":"O","Ơ":"O","Ờ":"O","Ớ":"O","Ỡ":"O","Ở":"O","Ợ":"O","Ọ":"O","Ộ":"O","Ǫ":"O","Ǭ":"O","Ø":"O","Ǿ":"O","Ɔ":"O","Ɵ":"O","Ꝋ":"O","Ꝍ":"O","Ƣ":"OI","Ꝏ":"OO","Ȣ":"OU","Ⓟ":"P","P":"P","Ṕ":"P","Ṗ":"P","Ƥ":"P","Ᵽ":"P","Ꝑ":"P","Ꝓ":"P","Ꝕ":"P","Ⓠ":"Q","Q":"Q","Ꝗ":"Q","Ꝙ":"Q","Ɋ":"Q","Ⓡ":"R","R":"R","Ŕ":"R","Ṙ":"R","Ř":"R","Ȑ":"R","Ȓ":"R","Ṛ":"R","Ṝ":"R","Ŗ":"R","Ṟ":"R","Ɍ":"R","Ɽ":"R","Ꝛ":"R","Ꞧ":"R","Ꞃ":"R","Ⓢ":"S","S":"S","ẞ":"S","Ś":"S","Ṥ":"S","Ŝ":"S","Ṡ":"S","Š":"S","Ṧ":"S","Ṣ":"S","Ṩ":"S","Ș":"S","Ş":"S","Ȿ":"S","Ꞩ":"S","Ꞅ":"S","Ⓣ":"T","T":"T","Ṫ":"T","Ť":"T","Ṭ":"T","Ț":"T","Ţ":"T","Ṱ":"T","Ṯ":"T","Ŧ":"T","Ƭ":"T","Ʈ":"T","Ⱦ":"T","Ꞇ":"T","Ꜩ":"TZ","Ⓤ":"U","U":"U","Ù":"U","Ú":"U","Û":"U","Ũ":"U","Ṹ":"U","Ū":"U","Ṻ":"U","Ŭ":"U","Ü":"U","Ǜ":"U","Ǘ":"U","Ǖ":"U","Ǚ":"U","Ủ":"U","Ů":"U","Ű":"U","Ǔ":"U","Ȕ":"U","Ȗ":"U","Ư":"U","Ừ":"U","Ứ":"U","Ữ":"U","Ử":"U","Ự":"U","Ụ":"U","Ṳ":"U","Ų":"U","Ṷ":"U","Ṵ":"U","Ʉ":"U","Ⓥ":"V","V":"V","Ṽ":"V","Ṿ":"V","Ʋ":"V","Ꝟ":"V","Ʌ":"V","Ꝡ":"VY","Ⓦ":"W","W":"W","Ẁ":"W","Ẃ":"W","Ŵ":"W","Ẇ":"W","Ẅ":"W","Ẉ":"W","Ⱳ":"W","Ⓧ":"X","X":"X","Ẋ":"X","Ẍ":"X","Ⓨ":"Y","Y":"Y","Ỳ":"Y","Ý":"Y","Ŷ":"Y","Ỹ":"Y","Ȳ":"Y","Ẏ":"Y","Ÿ":"Y","Ỷ":"Y","Ỵ":"Y","Ƴ":"Y","Ɏ":"Y","Ỿ":"Y","Ⓩ":"Z","Z":"Z","Ź":"Z","Ẑ":"Z","Ż":"Z","Ž":"Z","Ẓ":"Z","Ẕ":"Z","Ƶ":"Z","Ȥ":"Z","Ɀ":"Z","Ⱬ":"Z","Ꝣ":"Z","ⓐ":"a","a":"a","ẚ":"a","à":"a","á":"a","â":"a","ầ":"a","ấ":"a","ẫ":"a","ẩ":"a","ã":"a","ā":"a","ă":"a","ằ":"a","ắ":"a","ẵ":"a","ẳ":"a","ȧ":"a","ǡ":"a","ä":"a","ǟ":"a","ả":"a","å":"a","ǻ":"a","ǎ":"a","ȁ":"a","ȃ":"a","ạ":"a","ậ":"a","ặ":"a","ḁ":"a","ą":"a","ⱥ":"a","ɐ":"a","ꜳ":"aa","æ":"ae","ǽ":"ae","ǣ":"ae","ꜵ":"ao","ꜷ":"au","ꜹ":"av","ꜻ":"av","ꜽ":"ay","ⓑ":"b","b":"b","ḃ":"b","ḅ":"b","ḇ":"b","ƀ":"b","ƃ":"b","ɓ":"b","ⓒ":"c","c":"c","ć":"c","ĉ":"c","ċ":"c","č":"c","ç":"c","ḉ":"c","ƈ":"c","ȼ":"c","ꜿ":"c","ↄ":"c","ⓓ":"d","d":"d","ḋ":"d","ď":"d","ḍ":"d","ḑ":"d","ḓ":"d","ḏ":"d","đ":"d","ƌ":"d","ɖ":"d","ɗ":"d","ꝺ":"d","dz":"dz","dž":"dz","ⓔ":"e","e":"e","è":"e","é":"e","ê":"e","ề":"e","ế":"e","ễ":"e","ể":"e","ẽ":"e","ē":"e","ḕ":"e","ḗ":"e","ĕ":"e","ė":"e","ë":"e","ẻ":"e","ě":"e","ȅ":"e","ȇ":"e","ẹ":"e","ệ":"e","ȩ":"e","ḝ":"e","ę":"e","ḙ":"e","ḛ":"e","ɇ":"e","ɛ":"e","ǝ":"e","ⓕ":"f","f":"f","ḟ":"f","ƒ":"f","ꝼ":"f","ⓖ":"g","g":"g","ǵ":"g","ĝ":"g","ḡ":"g","ğ":"g","ġ":"g","ǧ":"g","ģ":"g","ǥ":"g","ɠ":"g","ꞡ":"g","ᵹ":"g","ꝿ":"g","ⓗ":"h","h":"h","ĥ":"h","ḣ":"h","ḧ":"h","ȟ":"h","ḥ":"h","ḩ":"h","ḫ":"h","ẖ":"h","ħ":"h","ⱨ":"h","ⱶ":"h","ɥ":"h","ƕ":"hv","ⓘ":"i","i":"i","ì":"i","í":"i","î":"i","ĩ":"i","ī":"i","ĭ":"i","ï":"i","ḯ":"i","ỉ":"i","ǐ":"i","ȉ":"i","ȋ":"i","ị":"i","į":"i","ḭ":"i","ɨ":"i","ı":"i","ⓙ":"j","j":"j","ĵ":"j","ǰ":"j","ɉ":"j","ⓚ":"k","k":"k","ḱ":"k","ǩ":"k","ḳ":"k","ķ":"k","ḵ":"k","ƙ":"k","ⱪ":"k","ꝁ":"k","ꝃ":"k","ꝅ":"k","ꞣ":"k","ⓛ":"l","l":"l","ŀ":"l","ĺ":"l","ľ":"l","ḷ":"l","ḹ":"l","ļ":"l","ḽ":"l","ḻ":"l","ſ":"l","ł":"l","ƚ":"l","ɫ":"l","ⱡ":"l","ꝉ":"l","ꞁ":"l","ꝇ":"l","lj":"lj","ⓜ":"m","m":"m","ḿ":"m","ṁ":"m","ṃ":"m","ɱ":"m","ɯ":"m","ⓝ":"n","n":"n","ǹ":"n","ń":"n","ñ":"n","ṅ":"n","ň":"n","ṇ":"n","ņ":"n","ṋ":"n","ṉ":"n","ƞ":"n","ɲ":"n","ʼn":"n","ꞑ":"n","ꞥ":"n","nj":"nj","ⓞ":"o","o":"o","ò":"o","ó":"o","ô":"o","ồ":"o","ố":"o","ỗ":"o","ổ":"o","õ":"o","ṍ":"o","ȭ":"o","ṏ":"o","ō":"o","ṑ":"o","ṓ":"o","ŏ":"o","ȯ":"o","ȱ":"o","ö":"o","ȫ":"o","ỏ":"o","ő":"o","ǒ":"o","ȍ":"o","ȏ":"o","ơ":"o","ờ":"o","ớ":"o","ỡ":"o","ở":"o","ợ":"o","ọ":"o","ộ":"o","ǫ":"o","ǭ":"o","ø":"o","ǿ":"o","ɔ":"o","ꝋ":"o","ꝍ":"o","ɵ":"o","ƣ":"oi","ȣ":"ou","ꝏ":"oo","ⓟ":"p","p":"p","ṕ":"p","ṗ":"p","ƥ":"p","ᵽ":"p","ꝑ":"p","ꝓ":"p","ꝕ":"p","ⓠ":"q","q":"q","ɋ":"q","ꝗ":"q","ꝙ":"q","ⓡ":"r","r":"r","ŕ":"r","ṙ":"r","ř":"r","ȑ":"r","ȓ":"r","ṛ":"r","ṝ":"r","ŗ":"r","ṟ":"r","ɍ":"r","ɽ":"r","ꝛ":"r","ꞧ":"r","ꞃ":"r","ⓢ":"s","s":"s","ß":"s","ś":"s","ṥ":"s","ŝ":"s","ṡ":"s","š":"s","ṧ":"s","ṣ":"s","ṩ":"s","ș":"s","ş":"s","ȿ":"s","ꞩ":"s","ꞅ":"s","ẛ":"s","ⓣ":"t","t":"t","ṫ":"t","ẗ":"t","ť":"t","ṭ":"t","ț":"t","ţ":"t","ṱ":"t","ṯ":"t","ŧ":"t","ƭ":"t","ʈ":"t","ⱦ":"t","ꞇ":"t","ꜩ":"tz","ⓤ":"u","u":"u","ù":"u","ú":"u","û":"u","ũ":"u","ṹ":"u","ū":"u","ṻ":"u","ŭ":"u","ü":"u","ǜ":"u","ǘ":"u","ǖ":"u","ǚ":"u","ủ":"u","ů":"u","ű":"u","ǔ":"u","ȕ":"u","ȗ":"u","ư":"u","ừ":"u","ứ":"u","ữ":"u","ử":"u","ự":"u","ụ":"u","ṳ":"u","ų":"u","ṷ":"u","ṵ":"u","ʉ":"u","ⓥ":"v","v":"v","ṽ":"v","ṿ":"v","ʋ":"v","ꝟ":"v","ʌ":"v","ꝡ":"vy","ⓦ":"w","w":"w","ẁ":"w","ẃ":"w","ŵ":"w","ẇ":"w","ẅ":"w","ẘ":"w","ẉ":"w","ⱳ":"w","ⓧ":"x","x":"x","ẋ":"x","ẍ":"x","ⓨ":"y","y":"y","ỳ":"y","ý":"y","ŷ":"y","ỹ":"y","ȳ":"y","ẏ":"y","ÿ":"y","ỷ":"y","ẙ":"y","ỵ":"y","ƴ":"y","ɏ":"y","ỿ":"y","ⓩ":"z","z":"z","ź":"z","ẑ":"z","ż":"z","ž":"z","ẓ":"z","ẕ":"z","ƶ":"z","ȥ":"z","ɀ":"z","ⱬ":"z","ꝣ":"z","Ά":"Α","Έ":"Ε","Ή":"Η","Ί":"Ι","Ϊ":"Ι","Ό":"Ο","Ύ":"Υ","Ϋ":"Υ","Ώ":"Ω","ά":"α","έ":"ε","ή":"η","ί":"ι","ϊ":"ι","ΐ":"ι","ό":"ο","ύ":"υ","ϋ":"υ","ΰ":"υ","ω":"ω","ς":"σ"};return a}),b.define("select2/data/base",["../utils"],function(a){function b(a,c){b.__super__.constructor.call(this)}return a.Extend(b,a.Observable),b.prototype.current=function(a){throw new Error("The `current` method must be defined in child classes.")},b.prototype.query=function(a,b){throw new Error("The `query` method must be defined in child classes.")},b.prototype.bind=function(a,b){},b.prototype.destroy=function(){},b.prototype.generateResultId=function(b,c){var d=b.id+"-result-";return d+=a.generateChars(4),d+=null!=c.id?"-"+c.id.toString():"-"+a.generateChars(4)},b}),b.define("select2/data/select",["./base","../utils","jquery"],function(a,b,c){function d(a,b){this.$element=a,this.options=b,d.__super__.constructor.call(this)}return b.Extend(d,a),d.prototype.current=function(a){var b=[],d=this;this.$element.find(":selected").each(function(){var a=c(this),e=d.item(a);b.push(e)}),a(b)},d.prototype.select=function(a){var b=this;if(a.selected=!0,c(a.element).is("option"))return a.element.selected=!0,void this.$element.trigger("change");
    22    if(this.$element.prop("multiple"))this.current(function(d){var e=[];a=[a],a.push.apply(a,d);for(var f=0;f<a.length;f++){var g=a[f].id;-1===c.inArray(g,e)&&e.push(g)}b.$element.val(e),b.$element.trigger("change")});else{var d=a.id;this.$element.val(d),this.$element.trigger("change")}},d.prototype.unselect=function(a){var b=this;if(this.$element.prop("multiple"))return a.selected=!1,c(a.element).is("option")?(a.element.selected=!1,void this.$element.trigger("change")):void this.current(function(d){for(var e=[],f=0;f<d.length;f++){var g=d[f].id;g!==a.id&&-1===c.inArray(g,e)&&e.push(g)}b.$element.val(e),b.$element.trigger("change")})},d.prototype.bind=function(a,b){var c=this;this.container=a,a.on("select",function(a){c.select(a.data)}),a.on("unselect",function(a){c.unselect(a.data)})},d.prototype.destroy=function(){this.$element.find("*").each(function(){c.removeData(this,"data")})},d.prototype.query=function(a,b){var d=[],e=this,f=this.$element.children();f.each(function(){var b=c(this);if(b.is("option")||b.is("optgroup")){var f=e.item(b),g=e.matches(a,f);null!==g&&d.push(g)}}),b({results:d})},d.prototype.addOptions=function(a){b.appendMany(this.$element,a)},d.prototype.option=function(a){var b;a.children?(b=document.createElement("optgroup"),b.label=a.text):(b=document.createElement("option"),void 0!==b.textContent?b.textContent=a.text:b.innerText=a.text),a.id&&(b.value=a.id),a.disabled&&(b.disabled=!0),a.selected&&(b.selected=!0),a.title&&(b.title=a.title);var d=c(b),e=this._normalizeItem(a);return e.element=b,c.data(b,"data",e),d},d.prototype.item=function(a){var b={};if(b=c.data(a[0],"data"),null!=b)return b;if(a.is("option"))b={id:a.val(),text:a.text(),disabled:a.prop("disabled"),selected:a.prop("selected"),title:a.prop("title")};else if(a.is("optgroup")){b={text:a.prop("label"),children:[],title:a.prop("title")};for(var d=a.children("option"),e=[],f=0;f<d.length;f++){var g=c(d[f]),h=this.item(g);e.push(h)}b.children=e}return b=this._normalizeItem(b),b.element=a[0],c.data(a[0],"data",b),b},d.prototype._normalizeItem=function(a){c.isPlainObject(a)||(a={id:a,text:a}),a=c.extend({},{text:""},a);var b={selected:!1,disabled:!1};return null!=a.id&&(a.id=a.id.toString()),null!=a.text&&(a.text=a.text.toString()),null==a._resultId&&a.id&&null!=this.container&&(a._resultId=this.generateResultId(this.container,a)),c.extend({},b,a)},d.prototype.matches=function(a,b){var c=this.options.get("matcher");return c(a,b)},d}),b.define("select2/data/array",["./select","../utils","jquery"],function(a,b,c){function d(a,b){var c=b.get("data")||[];d.__super__.constructor.call(this,a,b),this.addOptions(this.convertToOptions(c))}return b.Extend(d,a),d.prototype.select=function(a){var b=this.$element.find("option").filter(function(b,c){return c.value==a.id.toString()});0===b.length&&(b=this.option(a),this.addOptions(b)),d.__super__.select.call(this,a)},d.prototype.convertToOptions=function(a){function d(a){return function(){return c(this).val()==a.id}}for(var e=this,f=this.$element.find("option"),g=f.map(function(){return e.item(c(this)).id}).get(),h=[],i=0;i<a.length;i++){var j=this._normalizeItem(a[i]);if(c.inArray(j.id,g)>=0){var k=f.filter(d(j)),l=this.item(k),m=c.extend(!0,{},j,l),n=this.option(m);k.replaceWith(n)}else{var o=this.option(j);if(j.children){var p=this.convertToOptions(j.children);b.appendMany(o,p)}h.push(o)}}return h},d}),b.define("select2/data/ajax",["./array","../utils","jquery"],function(a,b,c){function d(a,b){this.ajaxOptions=this._applyDefaults(b.get("ajax")),null!=this.ajaxOptions.processResults&&(this.processResults=this.ajaxOptions.processResults),d.__super__.constructor.call(this,a,b)}return b.Extend(d,a),d.prototype._applyDefaults=function(a){var b={data:function(a){return c.extend({},a,{q:a.term})},transport:function(a,b,d){var e=c.ajax(a);return e.then(b),e.fail(d),e}};return c.extend({},b,a,!0)},d.prototype.processResults=function(a){return a},d.prototype.query=function(a,b){function d(){var d=f.transport(f,function(d){var f=e.processResults(d,a);e.options.get("debug")&&window.console&&console.error&&(f&&f.results&&c.isArray(f.results)||console.error("Select2: The AJAX results did not return an array in the `results` key of the response.")),b(f)},function(){d.status&&"0"===d.status||e.trigger("results:message",{message:"errorLoading"})});e._request=d}var e=this;null!=this._request&&(c.isFunction(this._request.abort)&&this._request.abort(),this._request=null);var f=c.extend({type:"GET"},this.ajaxOptions);"function"==typeof f.url&&(f.url=f.url.call(this.$element,a)),"function"==typeof f.data&&(f.data=f.data.call(this.$element,a)),this.ajaxOptions.delay&&null!=a.term?(this._queryTimeout&&window.clearTimeout(this._queryTimeout),this._queryTimeout=window.setTimeout(d,this.ajaxOptions.delay)):d()},d}),b.define("select2/data/tags",["jquery"],function(a){function b(b,c,d){var e=d.get("tags"),f=d.get("createTag");void 0!==f&&(this.createTag=f);var g=d.get("insertTag");if(void 0!==g&&(this.insertTag=g),b.call(this,c,d),a.isArray(e))for(var h=0;h<e.length;h++){var i=e[h],j=this._normalizeItem(i),k=this.option(j);this.$element.append(k)}}return b.prototype.query=function(a,b,c){function d(a,f){for(var g=a.results,h=0;h<g.length;h++){var i=g[h],j=null!=i.children&&!d({results:i.children},!0),k=i.text===b.term;if(k||j)return f?!1:(a.data=g,void c(a))}if(f)return!0;var l=e.createTag(b);if(null!=l){var m=e.option(l);m.attr("data-select2-tag",!0),e.addOptions([m]),e.insertTag(g,l)}a.results=g,c(a)}var e=this;return this._removeOldTags(),null==b.term||null!=b.page?void a.call(this,b,c):void a.call(this,b,d)},b.prototype.createTag=function(b,c){var d=a.trim(c.term);return""===d?null:{id:d,text:d}},b.prototype.insertTag=function(a,b,c){b.unshift(c)},b.prototype._removeOldTags=function(b){var c=(this._lastTag,this.$element.find("option[data-select2-tag]"));c.each(function(){this.selected||a(this).remove()})},b}),b.define("select2/data/tokenizer",["jquery"],function(a){function b(a,b,c){var d=c.get("tokenizer");void 0!==d&&(this.tokenizer=d),a.call(this,b,c)}return b.prototype.bind=function(a,b,c){a.call(this,b,c),this.$search=b.dropdown.$search||b.selection.$search||c.find(".select2-search__field")},b.prototype.query=function(b,c,d){function e(b){var c=g._normalizeItem(b),d=g.$element.find("option").filter(function(){return a(this).val()===c.id});if(!d.length){var e=g.option(c);e.attr("data-select2-tag",!0),g._removeOldTags(),g.addOptions([e])}f(c)}function f(a){g.trigger("select",{data:a})}var g=this;c.term=c.term||"";var h=this.tokenizer(c,this.options,e);h.term!==c.term&&(this.$search.length&&(this.$search.val(h.term),this.$search.focus()),c.term=h.term),b.call(this,c,d)},b.prototype.tokenizer=function(b,c,d,e){for(var f=d.get("tokenSeparators")||[],g=c.term,h=0,i=this.createTag||function(a){return{id:a.term,text:a.term}};h<g.length;){var j=g[h];if(-1!==a.inArray(j,f)){var k=g.substr(0,h),l=a.extend({},c,{term:k}),m=i(l);null!=m?(e(m),g=g.substr(h+1)||"",h=0):h++}else h++}return{term:g}},b}),b.define("select2/data/minimumInputLength",[],function(){function a(a,b,c){this.minimumInputLength=c.get("minimumInputLength"),a.call(this,b,c)}return a.prototype.query=function(a,b,c){return b.term=b.term||"",b.term.length<this.minimumInputLength?void this.trigger("results:message",{message:"inputTooShort",args:{minimum:this.minimumInputLength,input:b.term,params:b}}):void a.call(this,b,c)},a}),b.define("select2/data/maximumInputLength",[],function(){function a(a,b,c){this.maximumInputLength=c.get("maximumInputLength"),a.call(this,b,c)}return a.prototype.query=function(a,b,c){return b.term=b.term||"",this.maximumInputLength>0&&b.term.length>this.maximumInputLength?void this.trigger("results:message",{message:"inputTooLong",args:{maximum:this.maximumInputLength,input:b.term,params:b}}):void a.call(this,b,c)},a}),b.define("select2/data/maximumSelectionLength",[],function(){function a(a,b,c){this.maximumSelectionLength=c.get("maximumSelectionLength"),a.call(this,b,c)}return a.prototype.query=function(a,b,c){var d=this;this.current(function(e){var f=null!=e?e.length:0;return d.maximumSelectionLength>0&&f>=d.maximumSelectionLength?void d.trigger("results:message",{message:"maximumSelected",args:{maximum:d.maximumSelectionLength}}):void a.call(d,b,c)})},a}),b.define("select2/dropdown",["jquery","./utils"],function(a,b){function c(a,b){this.$element=a,this.options=b,c.__super__.constructor.call(this)}return b.Extend(c,b.Observable),c.prototype.render=function(){var b=a('<span class="select2-dropdown"><span class="select2-results"></span></span>');return b.attr("dir",this.options.get("dir")),this.$dropdown=b,b},c.prototype.bind=function(){},c.prototype.position=function(a,b){},c.prototype.destroy=function(){this.$dropdown.remove()},c}),b.define("select2/dropdown/search",["jquery","../utils"],function(a,b){function c(){}return c.prototype.render=function(b){var c=b.call(this),d=a('<span class="select2-search select2-search--dropdown"><input class="select2-search__field" type="search" tabindex="-1" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" role="textbox" /></span>');return this.$searchContainer=d,this.$search=d.find("input"),c.prepend(d),c},c.prototype.bind=function(b,c,d){var e=this;b.call(this,c,d),this.$search.on("keydown",function(a){e.trigger("keypress",a),e._keyUpPrevented=a.isDefaultPrevented()}),this.$search.on("input",function(b){a(this).off("keyup")}),this.$search.on("keyup input",function(a){e.handleSearch(a)}),c.on("open",function(){e.$search.attr("tabindex",0),e.$search.focus(),window.setTimeout(function(){e.$search.focus()},0)}),c.on("close",function(){e.$search.attr("tabindex",-1),e.$search.val("")}),c.on("focus",function(){c.isOpen()&&e.$search.focus()}),c.on("results:all",function(a){if(null==a.query.term||""===a.query.term){var b=e.showSearch(a);b?e.$searchContainer.removeClass("select2-search--hide"):e.$searchContainer.addClass("select2-search--hide")}})},c.prototype.handleSearch=function(a){if(!this._keyUpPrevented){var b=this.$search.val();this.trigger("query",{term:b})}this._keyUpPrevented=!1},c.prototype.showSearch=function(a,b){return!0},c}),b.define("select2/dropdown/hidePlaceholder",[],function(){function a(a,b,c,d){this.placeholder=this.normalizePlaceholder(c.get("placeholder")),a.call(this,b,c,d)}return a.prototype.append=function(a,b){b.results=this.removePlaceholder(b.results),a.call(this,b)},a.prototype.normalizePlaceholder=function(a,b){return"string"==typeof b&&(b={id:"",text:b}),b},a.prototype.removePlaceholder=function(a,b){for(var c=b.slice(0),d=b.length-1;d>=0;d--){var e=b[d];this.placeholder.id===e.id&&c.splice(d,1)}return c},a}),b.define("select2/dropdown/infiniteScroll",["jquery"],function(a){function b(a,b,c,d){this.lastParams={},a.call(this,b,c,d),this.$loadingMore=this.createLoadingMore(),this.loading=!1}return b.prototype.append=function(a,b){this.$loadingMore.remove(),this.loading=!1,a.call(this,b),this.showLoadingMore(b)&&this.$results.append(this.$loadingMore)},b.prototype.bind=function(b,c,d){var e=this;b.call(this,c,d),c.on("query",function(a){e.lastParams=a,e.loading=!0}),c.on("query:append",function(a){e.lastParams=a,e.loading=!0}),this.$results.on("scroll",function(){var b=a.contains(document.documentElement,e.$loadingMore[0]);if(!e.loading&&b){var c=e.$results.offset().top+e.$results.outerHeight(!1),d=e.$loadingMore.offset().top+e.$loadingMore.outerHeight(!1);c+50>=d&&e.loadMore()}})},b.prototype.loadMore=function(){this.loading=!0;var b=a.extend({},{page:1},this.lastParams);b.page++,this.trigger("query:append",b)},b.prototype.showLoadingMore=function(a,b){return b.pagination&&b.pagination.more},b.prototype.createLoadingMore=function(){var b=a('<li class="select2-results__option select2-results__option--load-more"role="treeitem" aria-disabled="true"></li>'),c=this.options.get("translations").get("loadingMore");return b.html(c(this.lastParams)),b},b}),b.define("select2/dropdown/attachBody",["jquery","../utils"],function(a,b){function c(b,c,d){this.$dropdownParent=d.get("dropdownParent")||a(document.body),b.call(this,c,d)}return c.prototype.bind=function(a,b,c){var d=this,e=!1;a.call(this,b,c),b.on("open",function(){d._showDropdown(),d._attachPositioningHandler(b),e||(e=!0,b.on("results:all",function(){d._positionDropdown(),d._resizeDropdown()}),b.on("results:append",function(){d._positionDropdown(),d._resizeDropdown()}))}),b.on("close",function(){d._hideDropdown(),d._detachPositioningHandler(b)}),this.$dropdownContainer.on("mousedown",function(a){a.stopPropagation()})},c.prototype.destroy=function(a){a.call(this),this.$dropdownContainer.remove()},c.prototype.position=function(a,b,c){b.attr("class",c.attr("class")),b.removeClass("select2"),b.addClass("select2-container--open"),b.css({position:"absolute",top:-999999}),this.$container=c},c.prototype.render=function(b){var c=a("<span></span>"),d=b.call(this);return c.append(d),this.$dropdownContainer=c,c},c.prototype._hideDropdown=function(a){this.$dropdownContainer.detach()},c.prototype._attachPositioningHandler=function(c,d){var e=this,f="scroll.select2."+d.id,g="resize.select2."+d.id,h="orientationchange.select2."+d.id,i=this.$container.parents().filter(b.hasScroll);i.each(function(){a(this).data("select2-scroll-position",{x:a(this).scrollLeft(),y:a(this).scrollTop()})}),i.on(f,function(b){var c=a(this).data("select2-scroll-position");a(this).scrollTop(c.y)}),a(window).on(f+" "+g+" "+h,function(a){e._positionDropdown(),e._resizeDropdown()})},c.prototype._detachPositioningHandler=function(c,d){var e="scroll.select2."+d.id,f="resize.select2."+d.id,g="orientationchange.select2."+d.id,h=this.$container.parents().filter(b.hasScroll);h.off(e),a(window).off(e+" "+f+" "+g)},c.prototype._positionDropdown=function(){var b=a(window),c=this.$dropdown.hasClass("select2-dropdown--above"),d=this.$dropdown.hasClass("select2-dropdown--below"),e=null,f=this.$container.offset();f.bottom=f.top+this.$container.outerHeight(!1);var g={height:this.$container.outerHeight(!1)};g.top=f.top,g.bottom=f.top+g.height;var h={height:this.$dropdown.outerHeight(!1)},i={top:b.scrollTop(),bottom:b.scrollTop()+b.height()},j=i.top<f.top-h.height,k=i.bottom>f.bottom+h.height,l={left:f.left,top:g.bottom},m=this.$dropdownParent;"static"===m.css("position")&&(m=m.offsetParent());var n=m.offset();l.top-=n.top,l.left-=n.left,c||d||(e="below"),k||!j||c?!j&&k&&c&&(e="below"):e="above",("above"==e||c&&"below"!==e)&&(l.top=g.top-n.top-h.height),null!=e&&(this.$dropdown.removeClass("select2-dropdown--below select2-dropdown--above").addClass("select2-dropdown--"+e),this.$container.removeClass("select2-container--below select2-container--above").addClass("select2-container--"+e)),this.$dropdownContainer.css(l)},c.prototype._resizeDropdown=function(){var a={width:this.$container.outerWidth(!1)+"px"};this.options.get("dropdownAutoWidth")&&(a.minWidth=a.width,a.position="relative",a.width="auto"),this.$dropdown.css(a)},c.prototype._showDropdown=function(a){this.$dropdownContainer.appendTo(this.$dropdownParent),this._positionDropdown(),this._resizeDropdown()},c}),b.define("select2/dropdown/minimumResultsForSearch",[],function(){function a(b){for(var c=0,d=0;d<b.length;d++){var e=b[d];e.children?c+=a(e.children):c++}return c}function b(a,b,c,d){this.minimumResultsForSearch=c.get("minimumResultsForSearch"),this.minimumResultsForSearch<0&&(this.minimumResultsForSearch=1/0),a.call(this,b,c,d)}return b.prototype.showSearch=function(b,c){return a(c.data.results)<this.minimumResultsForSearch?!1:b.call(this,c)},b}),b.define("select2/dropdown/selectOnClose",[],function(){function a(){}return a.prototype.bind=function(a,b,c){var d=this;a.call(this,b,c),b.on("close",function(a){d._handleSelectOnClose(a)})},a.prototype._handleSelectOnClose=function(a,b){if(b&&null!=b.originalSelect2Event){var c=b.originalSelect2Event;if("select"===c._type||"unselect"===c._type)return}var d=this.getHighlightedResults();if(!(d.length<1)){var e=d.data("data");null!=e.element&&e.element.selected||null==e.element&&e.selected||this.trigger("select",{data:e})}},a}),b.define("select2/dropdown/closeOnSelect",[],function(){function a(){}return a.prototype.bind=function(a,b,c){var d=this;a.call(this,b,c),b.on("select",function(a){d._selectTriggered(a)}),b.on("unselect",function(a){d._selectTriggered(a)})},a.prototype._selectTriggered=function(a,b){var c=b.originalEvent;c&&c.ctrlKey||this.trigger("close",{originalEvent:c,originalSelect2Event:b})},a}),b.define("select2/i18n/en",[],function(){return{errorLoading:function(){return"The results could not be loaded."},inputTooLong:function(a){var b=a.input.length-a.maximum,c="Please delete "+b+" character";return 1!=b&&(c+="s"),c},inputTooShort:function(a){var b=a.minimum-a.input.length,c="Please enter "+b+" or more characters";return c},loadingMore:function(){return"Loading more results…"},maximumSelected:function(a){var b="You can only select "+a.maximum+" item";return 1!=a.maximum&&(b+="s"),b},noResults:function(){return"No results found"},searching:function(){return"Searching…"}}}),b.define("select2/defaults",["jquery","require","./results","./selection/single","./selection/multiple","./selection/placeholder","./selection/allowClear","./selection/search","./selection/eventRelay","./utils","./translation","./diacritics","./data/select","./data/array","./data/ajax","./data/tags","./data/tokenizer","./data/minimumInputLength","./data/maximumInputLength","./data/maximumSelectionLength","./dropdown","./dropdown/search","./dropdown/hidePlaceholder","./dropdown/infiniteScroll","./dropdown/attachBody","./dropdown/minimumResultsForSearch","./dropdown/selectOnClose","./dropdown/closeOnSelect","./i18n/en"],function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C){function D(){this.reset()}D.prototype.apply=function(l){if(l=a.extend(!0,{},this.defaults,l),null==l.dataAdapter){if(null!=l.ajax?l.dataAdapter=o:null!=l.data?l.dataAdapter=n:l.dataAdapter=m,l.minimumInputLength>0&&(l.dataAdapter=j.Decorate(l.dataAdapter,r)),l.maximumInputLength>0&&(l.dataAdapter=j.Decorate(l.dataAdapter,s)),l.maximumSelectionLength>0&&(l.dataAdapter=j.Decorate(l.dataAdapter,t)),l.tags&&(l.dataAdapter=j.Decorate(l.dataAdapter,p)),(null!=l.tokenSeparators||null!=l.tokenizer)&&(l.dataAdapter=j.Decorate(l.dataAdapter,q)),null!=l.query){var C=b(l.amdBase+"compat/query");l.dataAdapter=j.Decorate(l.dataAdapter,C)}if(null!=l.initSelection){var D=b(l.amdBase+"compat/initSelection");l.dataAdapter=j.Decorate(l.dataAdapter,D)}}if(null==l.resultsAdapter&&(l.resultsAdapter=c,null!=l.ajax&&(l.resultsAdapter=j.Decorate(l.resultsAdapter,x)),null!=l.placeholder&&(l.resultsAdapter=j.Decorate(l.resultsAdapter,w)),l.selectOnClose&&(l.resultsAdapter=j.Decorate(l.resultsAdapter,A))),null==l.dropdownAdapter){if(l.multiple)l.dropdownAdapter=u;else{var E=j.Decorate(u,v);l.dropdownAdapter=E}if(0!==l.minimumResultsForSearch&&(l.dropdownAdapter=j.Decorate(l.dropdownAdapter,z)),l.closeOnSelect&&(l.dropdownAdapter=j.Decorate(l.dropdownAdapter,B)),null!=l.dropdownCssClass||null!=l.dropdownCss||null!=l.adaptDropdownCssClass){var F=b(l.amdBase+"compat/dropdownCss");l.dropdownAdapter=j.Decorate(l.dropdownAdapter,F)}l.dropdownAdapter=j.Decorate(l.dropdownAdapter,y)}if(null==l.selectionAdapter){if(l.multiple?l.selectionAdapter=e:l.selectionAdapter=d,null!=l.placeholder&&(l.selectionAdapter=j.Decorate(l.selectionAdapter,f)),l.allowClear&&(l.selectionAdapter=j.Decorate(l.selectionAdapter,g)),l.multiple&&(l.selectionAdapter=j.Decorate(l.selectionAdapter,h)),null!=l.containerCssClass||null!=l.containerCss||null!=l.adaptContainerCssClass){var G=b(l.amdBase+"compat/containerCss");l.selectionAdapter=j.Decorate(l.selectionAdapter,G)}l.selectionAdapter=j.Decorate(l.selectionAdapter,i)}if("string"==typeof l.language)if(l.language.indexOf("-")>0){var H=l.language.split("-"),I=H[0];l.language=[l.language,I]}else l.language=[l.language];if(a.isArray(l.language)){var J=new k;l.language.push("en");for(var K=l.language,L=0;L<K.length;L++){var M=K[L],N={};try{N=k.loadPath(M)}catch(O){try{M=this.defaults.amdLanguageBase+M,N=k.loadPath(M)}catch(P){l.debug&&window.console&&console.warn&&console.warn('Select2: The language file for "'+M+'" could not be automatically loaded. A fallback will be used instead.');continue}}J.extend(N)}l.translations=J}else{var Q=k.loadPath(this.defaults.amdLanguageBase+"en"),R=new k(l.language);R.extend(Q),l.translations=R}return l},D.prototype.reset=function(){function b(a){function b(a){return l[a]||a}return a.replace(/[^\u0000-\u007E]/g,b)}function c(d,e){if(""===a.trim(d.term))return e;if(e.children&&e.children.length>0){for(var f=a.extend(!0,{},e),g=e.children.length-1;g>=0;g--){var h=e.children[g],i=c(d,h);null==i&&f.children.splice(g,1)}return f.children.length>0?f:c(d,f)}var j=b(e.text).toUpperCase(),k=b(d.term).toUpperCase();return j.indexOf(k)>-1?e:null}this.defaults={amdBase:"./",amdLanguageBase:"./i18n/",closeOnSelect:!0,debug:!1,dropdownAutoWidth:!1,escapeMarkup:j.escapeMarkup,language:C,matcher:c,minimumInputLength:0,maximumInputLength:0,maximumSelectionLength:0,minimumResultsForSearch:0,selectOnClose:!1,sorter:function(a){return a},templateResult:function(a){return a.text},templateSelection:function(a){return a.text},theme:"default",width:"resolve"}},D.prototype.set=function(b,c){var d=a.camelCase(b),e={};e[d]=c;var f=j._convertData(e);a.extend(this.defaults,f)};var E=new D;return E}),b.define("select2/options",["require","jquery","./defaults","./utils"],function(a,b,c,d){function e(b,e){if(this.options=b,null!=e&&this.fromElement(e),this.options=c.apply(this.options),e&&e.is("input")){var f=a(this.get("amdBase")+"compat/inputData");this.options.dataAdapter=d.Decorate(this.options.dataAdapter,f)}}return e.prototype.fromElement=function(a){var c=["select2"];null==this.options.multiple&&(this.options.multiple=a.prop("multiple")),null==this.options.disabled&&(this.options.disabled=a.prop("disabled")),null==this.options.language&&(a.prop("lang")?this.options.language=a.prop("lang").toLowerCase():a.closest("[lang]").prop("lang")&&(this.options.language=a.closest("[lang]").prop("lang"))),null==this.options.dir&&(a.prop("dir")?this.options.dir=a.prop("dir"):a.closest("[dir]").prop("dir")?this.options.dir=a.closest("[dir]").prop("dir"):this.options.dir="ltr"),a.prop("disabled",this.options.disabled),a.prop("multiple",this.options.multiple),a.data("select2Tags")&&(this.options.debug&&window.console&&console.warn&&console.warn('Select2: The `data-select2-tags` attribute has been changed to use the `data-data` and `data-tags="true"` attributes and will be removed in future versions of Select2.'),a.data("data",a.data("select2Tags")),a.data("tags",!0)),a.data("ajaxUrl")&&(this.options.debug&&window.console&&console.warn&&console.warn("Select2: The `data-ajax-url` attribute has been changed to `data-ajax--url` and support for the old attribute will be removed in future versions of Select2."),a.attr("ajax--url",a.data("ajaxUrl")),a.data("ajax--url",a.data("ajaxUrl")));var e={};e=b.fn.jquery&&"1."==b.fn.jquery.substr(0,2)&&a[0].dataset?b.extend(!0,{},a[0].dataset,a.data()):a.data();var f=b.extend(!0,{},e);f=d._convertData(f);for(var g in f)b.inArray(g,c)>-1||(b.isPlainObject(this.options[g])?b.extend(this.options[g],f[g]):this.options[g]=f[g]);return this},e.prototype.get=function(a){return this.options[a]},e.prototype.set=function(a,b){this.options[a]=b},e}),b.define("select2/core",["jquery","./options","./utils","./keys"],function(a,b,c,d){var e=function(a,c){null!=a.data("select2")&&a.data("select2").destroy(),this.$element=a,this.id=this._generateId(a),c=c||{},this.options=new b(c,a),e.__super__.constructor.call(this);var d=a.attr("tabindex")||0;a.data("old-tabindex",d),a.attr("tabindex","-1");var f=this.options.get("dataAdapter");this.dataAdapter=new f(a,this.options);var g=this.render();this._placeContainer(g);var h=this.options.get("selectionAdapter");this.selection=new h(a,this.options),this.$selection=this.selection.render(),this.selection.position(this.$selection,g);var i=this.options.get("dropdownAdapter");this.dropdown=new i(a,this.options),this.$dropdown=this.dropdown.render(),this.dropdown.position(this.$dropdown,g);var j=this.options.get("resultsAdapter");this.results=new j(a,this.options,this.dataAdapter),this.$results=this.results.render(),this.results.position(this.$results,this.$dropdown);var k=this;this._bindAdapters(),this._registerDomEvents(),this._registerDataEvents(),this._registerSelectionEvents(),this._registerDropdownEvents(),this._registerResultsEvents(),this._registerEvents(),this.dataAdapter.current(function(a){k.trigger("selection:update",{data:a})}),a.addClass("select2-hidden-accessible"),a.attr("aria-hidden","true"),this._syncAttributes(),a.data("select2",this)};return c.Extend(e,c.Observable),e.prototype._generateId=function(a){var b="";return b=null!=a.attr("id")?a.attr("id"):null!=a.attr("name")?a.attr("name")+"-"+c.generateChars(2):c.generateChars(4),b=b.replace(/(:|\.|\[|\]|,)/g,""),b="select2-"+b},e.prototype._placeContainer=function(a){a.insertAfter(this.$element);var b=this._resolveWidth(this.$element,this.options.get("width"));null!=b&&a.css("width",b)},e.prototype._resolveWidth=function(a,b){var c=/^width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/i;if("resolve"==b){var d=this._resolveWidth(a,"style");return null!=d?d:this._resolveWidth(a,"element")}if("element"==b){var e=a.outerWidth(!1);return 0>=e?"auto":e+"px"}if("style"==b){var f=a.attr("style");if("string"!=typeof f)return null;for(var g=f.split(";"),h=0,i=g.length;i>h;h+=1){var j=g[h].replace(/\s/g,""),k=j.match(c);if(null!==k&&k.length>=1)return k[1]}return null}return b},e.prototype._bindAdapters=function(){this.dataAdapter.bind(this,this.$container),this.selection.bind(this,this.$container),this.dropdown.bind(this,this.$container),this.results.bind(this,this.$container)},e.prototype._registerDomEvents=function(){var b=this;this.$element.on("change.select2",function(){b.dataAdapter.current(function(a){b.trigger("selection:update",{data:a})})}),this.$element.on("focus.select2",function(a){b.trigger("focus",a)}),this._syncA=c.bind(this._syncAttributes,this),this._syncS=c.bind(this._syncSubtree,this),this.$element[0].attachEvent&&this.$element[0].attachEvent("onpropertychange",this._syncA);var d=window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver;null!=d?(this._observer=new d(function(c){a.each(c,b._syncA),a.each(c,b._syncS)}),this._observer.observe(this.$element[0],{attributes:!0,childList:!0,subtree:!1})):this.$element[0].addEventListener&&(this.$element[0].addEventListener("DOMAttrModified",b._syncA,!1),this.$element[0].addEventListener("DOMNodeInserted",b._syncS,!1),this.$element[0].addEventListener("DOMNodeRemoved",b._syncS,!1))},e.prototype._registerDataEvents=function(){var a=this;this.dataAdapter.on("*",function(b,c){a.trigger(b,c)})},e.prototype._registerSelectionEvents=function(){var b=this,c=["toggle","focus"];this.selection.on("toggle",function(){b.toggleDropdown()}),this.selection.on("focus",function(a){b.focus(a)}),this.selection.on("*",function(d,e){-1===a.inArray(d,c)&&b.trigger(d,e)})},e.prototype._registerDropdownEvents=function(){var a=this;this.dropdown.on("*",function(b,c){a.trigger(b,c)})},e.prototype._registerResultsEvents=function(){var a=this;this.results.on("*",function(b,c){a.trigger(b,c)})},e.prototype._registerEvents=function(){var a=this;this.on("open",function(){a.$container.addClass("select2-container--open")}),this.on("close",function(){a.$container.removeClass("select2-container--open")}),this.on("enable",function(){a.$container.removeClass("select2-container--disabled")}),this.on("disable",function(){a.$container.addClass("select2-container--disabled")}),this.on("blur",function(){a.$container.removeClass("select2-container--focus")}),this.on("query",function(b){a.isOpen()||a.trigger("open",{}),this.dataAdapter.query(b,function(c){a.trigger("results:all",{data:c,query:b})})}),this.on("query:append",function(b){this.dataAdapter.query(b,function(c){a.trigger("results:append",{data:c,query:b})})}),this.on("keypress",function(b){var c=b.which;a.isOpen()?c===d.ESC||c===d.TAB||c===d.UP&&b.altKey?(a.close(),b.preventDefault()):c===d.ENTER?(a.trigger("results:select",{}),b.preventDefault()):c===d.SPACE&&b.ctrlKey?(a.trigger("results:toggle",{}),b.preventDefault()):c===d.UP?(a.trigger("results:previous",{}),b.preventDefault()):c===d.DOWN&&(a.trigger("results:next",{}),b.preventDefault()):(c===d.ENTER||c===d.SPACE||c===d.DOWN&&b.altKey)&&(a.open(),b.preventDefault())})},e.prototype._syncAttributes=function(){this.options.set("disabled",this.$element.prop("disabled")),this.options.get("disabled")?(this.isOpen()&&this.close(),this.trigger("disable",{})):this.trigger("enable",{})},e.prototype._syncSubtree=function(a,b){var c=!1,d=this;if(!a||!a.target||"OPTION"===a.target.nodeName||"OPTGROUP"===a.target.nodeName){if(b)if(b.addedNodes&&b.addedNodes.length>0)for(var e=0;e<b.addedNodes.length;e++){var f=b.addedNodes[e];f.selected&&(c=!0)}else b.removedNodes&&b.removedNodes.length>0&&(c=!0);else c=!0;c&&this.dataAdapter.current(function(a){d.trigger("selection:update",{data:a})})}},e.prototype.trigger=function(a,b){var c=e.__super__.trigger,d={open:"opening",close:"closing",select:"selecting",unselect:"unselecting"};if(void 0===b&&(b={}),a in d){var f=d[a],g={prevented:!1,name:a,args:b};if(c.call(this,f,g),g.prevented)return void(b.prevented=!0)}c.call(this,a,b)},e.prototype.toggleDropdown=function(){this.options.get("disabled")||(this.isOpen()?this.close():this.open())},e.prototype.open=function(){this.isOpen()||this.trigger("query",{})},e.prototype.close=function(){this.isOpen()&&this.trigger("close",{})},e.prototype.isOpen=function(){return this.$container.hasClass("select2-container--open")},e.prototype.hasFocus=function(){return this.$container.hasClass("select2-container--focus")},e.prototype.focus=function(a){this.hasFocus()||(this.$container.addClass("select2-container--focus"),this.trigger("focus",{}))},e.prototype.enable=function(a){this.options.get("debug")&&window.console&&console.warn&&console.warn('Select2: The `select2("enable")` method has been deprecated and will be removed in later Select2 versions. Use $element.prop("disabled") instead.'),(null==a||0===a.length)&&(a=[!0]);var b=!a[0];this.$element.prop("disabled",b)},e.prototype.data=function(){this.options.get("debug")&&arguments.length>0&&window.console&&console.warn&&console.warn('Select2: Data can no longer be set using `select2("data")`. You should consider setting the value instead using `$element.val()`.');var a=[];return this.dataAdapter.current(function(b){a=b}),a},e.prototype.val=function(b){if(this.options.get("debug")&&window.console&&console.warn&&console.warn('Select2: The `select2("val")` method has been deprecated and will be removed in later Select2 versions. Use $element.val() instead.'),null==b||0===b.length)return this.$element.val();var c=b[0];a.isArray(c)&&(c=a.map(c,function(a){return a.toString()})),this.$element.val(c).trigger("change")},e.prototype.destroy=function(){this.$container.remove(),this.$element[0].detachEvent&&this.$element[0].detachEvent("onpropertychange",this._syncA),null!=this._observer?(this._observer.disconnect(),this._observer=null):this.$element[0].removeEventListener&&(this.$element[0].removeEventListener("DOMAttrModified",this._syncA,!1),this.$element[0].removeEventListener("DOMNodeInserted",this._syncS,!1),this.$element[0].removeEventListener("DOMNodeRemoved",this._syncS,!1)),this._syncA=null,this._syncS=null,this.$element.off(".select2"),this.$element.attr("tabindex",this.$element.data("old-tabindex")),this.$element.removeClass("select2-hidden-accessible"),this.$element.attr("aria-hidden","false"),this.$element.removeData("select2"),this.dataAdapter.destroy(),this.selection.destroy(),this.dropdown.destroy(),this.results.destroy(),this.dataAdapter=null,this.selection=null,this.dropdown=null,this.results=null;
    33},e.prototype.render=function(){var b=a('<span class="select2 select2-container"><span class="selection"></span><span class="dropdown-wrapper" aria-hidden="true"></span></span>');return b.attr("dir",this.options.get("dir")),this.$container=b,this.$container.addClass("select2-container--"+this.options.get("theme")),b.data("element",this.$element),b},e}),b.define("jquery-mousewheel",["jquery"],function(a){return a}),b.define("jquery.select2",["jquery","jquery-mousewheel","./select2/core","./select2/defaults"],function(a,b,c,d){if(null==a.fn.select2){var e=["open","close","destroy"];a.fn.select2=function(b){if(b=b||{},"object"==typeof b)return this.each(function(){var d=a.extend(!0,{},b);new c(a(this),d)}),this;if("string"==typeof b){var d,f=Array.prototype.slice.call(arguments,1);return this.each(function(){var c=a(this).data("select2");null==c&&window.console&&console.error&&console.error("The select2('"+b+"') method was called on an element that is not using Select2."),d=c[b].apply(c,f)}),a.inArray(b,e)>-1?this:d}throw new Error("Invalid arguments for Select2: "+b)}}return null==a.fn.select2.defaults&&(a.fn.select2.defaults=d),c}),{define:b.define,require:b.require}}(),c=b.require("jquery.select2");return a.fn.select2.amd=b,c});
  • pixcodes/trunk/pixcodes.php

    r2542620 r2841487  
    44Plugin URI: https://pixelgrade.com
    55Description: WordPress shortcodes plugin everywhere. Loaded with shortcodes, awesomeness and more.
    6 Version: 2.3.6
    7 Author: PixelGrade
     6Version: 2.3.7
     7Author: Pixelgrade
    88Author URI: https://pixelgrade.com
    9 Author Email: contact@pixelgrade.com
     9Author Email: hello@pixelgrade.com
    1010*/
    1111
  • pixcodes/trunk/readme.txt

    r2542620 r2841487  
    33Tags: shortcodes, insert, columns, sliders, tabs, buttons
    44Requires at least: 4.9.0
    5 Tested up to: 5.7.2
    6 Requires PHP: 5.2.4
    7 Stable tag: 2.3.6
     5Tested up to: 6.1.1
     6Requires PHP: 5.6.40
     7Stable tag: 2.3.7
    88License: GPLv2 or later
    99License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    3131== Changelog ==
    3232
     33= 2.3.7 =
     34* Security fixes and enhancements.
     35* Improve compatibility with WordPress 6.1.1.
     36
    3337= 2.3.6 =
    3438* Improve compatibility with WordPress 5.7.2.
  • pixcodes/trunk/shortcodes/WpGradeShortcode_Arrow.php

    r1094158 r2841487  
    1010        $this->self_closed = true;
    1111        $this->direct      = true;
    12         $this->name        = __( "Arrow", 'pixcodes_txtd' );
    13         $this->code        = "arrow";
    14         $this->icon        = "icon-arrow-right";
     12        $this->name        = __( 'Arrow', 'pixcodes_txtd' );
     13        $this->code        = 'arrow';
     14        $this->icon        = 'icon-arrow-right';
    1515
    1616        add_shortcode( 'arrow', array( $this, 'add_shortcode' ) );
  • pixcodes/trunk/shortcodes/WpGradeShortcode_AverageScore.php

    r1094158 r2841487  
    99    public function __construct( $settings = array() ) {
    1010        $this->self_closed = true;
    11         $this->name        = __( "Average score", 'pixcodes_txtd' );
    12         $this->code        = "average_score";
    13         $this->icon        = "icon-tasks";
     11        $this->name        = esc_html__( 'Average score', 'pixcodes_txtd' );
     12        $this->code        = 'average_score';
     13        $this->icon        = 'icon-tasks';
    1414        $this->direct      = true;
    1515        //      $this->one_line = true;
  • pixcodes/trunk/shortcodes/WpGradeShortcode_Button.php

    r1094158 r2841487  
    99    public function __construct( $settings = array() ) {
    1010        $this->self_closed = false;
    11         $this->name        = __( "Button", 'pixcodes_txtd' );
    12         $this->code        = "button";
    13         $this->icon        = "icon-bookmark";
     11        $this->name        = esc_html__( 'Button', 'pixcodes_txtd' );
     12        $this->code        = 'button';
     13        $this->icon        = 'icon-bookmark';
    1414        $this->direct      = false;
    1515        $this->one_line    = true;
     
    1818            'label'     => array(
    1919                'type'        => 'text',
    20                 'name'        => __( 'Label Text', 'pixcodes_txtd' ),
     20                'name'        => esc_html__( 'Label Text', 'pixcodes_txtd' ),
    2121                'admin_class' => 'span6',
    2222                'is_content'  => true,
     
    2424            'link'      => array(
    2525                'type'        => 'text',
    26                 'name'        => __( 'Link URL', 'pixcodes_txtd' ),
     26                'name'        => esc_html__( 'Link URL', 'pixcodes_txtd' ),
    2727                'admin_class' => 'span5 push1'
    2828            ),
    2929            'size'      => array(
    3030                'type'        => 'select',
    31                 'name'        => __( 'Button Size', 'pixcodes_txtd' ),
     31                'name'        => esc_html__( 'Button Size', 'pixcodes_txtd' ),
    3232                'options'     => array(
    33                     ''      => __( '-- Select Size --', 'pixcodes_txtd' ),
    34                     'small' => __( 'Small', 'pixcodes_txtd' ),
    35                     'large' => __( 'Large', 'pixcodes_txtd' ),
    36                     'huge'  => __( 'Huge', 'pixcodes_txtd' )
     33                    ''      => esc_html__( '-- Select Size --', 'pixcodes_txtd' ),
     34                    'small' => esc_html__( 'Small', 'pixcodes_txtd' ),
     35                    'large' => esc_html__( 'Large', 'pixcodes_txtd' ),
     36                    'huge'  => esc_html__( 'Huge', 'pixcodes_txtd' )
    3737                ),
    3838                'admin_class' => 'span6'
     
    4040            'text_size' => array(
    4141                'type'        => 'select',
    42                 'name'        => __( 'Text Size', 'pixcodes_txtd' ),
     42                'name'        => esc_html__( 'Text Size', 'pixcodes_txtd' ),
    4343                'options'     => array(
    44                     ''      => __( '-- Select Size --', 'pixcodes_txtd' ),
    45                     'gamma' => __( 'Small', 'pixcodes_txtd' ),
    46                     'beta'  => __( 'Large', 'pixcodes_txtd' ),
    47                     'alpha' => __( 'Huge', 'pixcodes_txtd' )
     44                    ''      => esc_html__( '-- Select Size --', 'pixcodes_txtd' ),
     45                    'gamma' => esc_html__( 'Small', 'pixcodes_txtd' ),
     46                    'beta'  => esc_html__( 'Large', 'pixcodes_txtd' ),
     47                    'alpha' => esc_html__( 'Huge', 'pixcodes_txtd' )
    4848                ),
    4949                'admin_class' => 'span5 push1'
     
    5151            'class'     => array(
    5252                'type'        => 'text',
    53                 'name'        => __( 'Class', 'pixcodes_txtd' ),
     53                'name'        => esc_html__( 'Class', 'pixcodes_txtd' ),
    5454                'admin_class' => 'span3'
    5555            ),
    5656            'id'        => array(
    5757                'type'        => 'text',
    58                 'name'        => __( 'ID', 'pixcodes_txtd' ),
     58                'name'        => esc_html__( 'ID', 'pixcodes_txtd' ),
    5959                'admin_class' => 'span2 push1'
    6060            ),
    6161            'newtab'    => array(
    6262                'type'        => 'switch',
    63                 'name'        => __( 'Open in a new tab?', 'pixcodes_txtd' ),
     63                'name'        => esc_html__( 'Open in a new tab?', 'pixcodes_txtd' ),
    6464                'admin_class' => 'span5 push2'
    6565            ),
  • pixcodes/trunk/shortcodes/WpGradeShortcode_Circle.php

    r1094158 r2841487  
    99    public function __construct( $settings = array() ) {
    1010        $this->self_closed = true;
    11         $this->name        = __( "Circle Knob", 'pixcodes_txtd' );
    12         $this->code        = "circle";
    13         $this->icon        = "icon-circle-blank";
     11        $this->name        = esc_html__( 'Circle Knob', 'pixcodes_txtd' );
     12        $this->code        = 'circle';
     13        $this->icon        = 'icon-circle-blank';
    1414        $this->direct      = false;
    1515
     
    1717            'title'  => array(
    1818                'type'        => 'text',
    19                 'name'        => __( 'Title (inside of circle knob)', 'pixcodes_txtd' ),
     19                'name'        => esc_html__( 'Title (inside of circle knob)', 'pixcodes_txtd' ),
    2020                'admin_class' => 'span4'
    2121            ),
    2222            'color'  => array(
    2323                'type'        => 'text',
    24                 'name'        => __( 'Color (knob color in HEX format)', 'pixcodes_txtd' ),
     24                'name'        => esc_html__( 'Color (knob color in HEX format)', 'pixcodes_txtd' ),
    2525                'admin_class' => 'span7 push1'
    2626            ),
    2727            'value'  => array(
    2828                'type'        => 'text',
    29                 'name'        => __( 'Value (0 to 100)', 'pixcodes_txtd' ),
     29                'name'        => esc_html__( 'Value (0 to 100)', 'pixcodes_txtd' ),
    3030                'admin_class' => 'span4'
    3131            ),
    3232            'offset' => array(
    3333                'type'        => 'text',
    34                 'name'        => __( 'Offset Angle (starting angle in degrees - default=0)', 'pixcodes_txtd' ),
     34                'name'        => esc_html__( 'Offset Angle (starting angle in degrees - default=0)', 'pixcodes_txtd' ),
    3535                'admin_class' => 'span7 push1'
    3636            ),
  • pixcodes/trunk/shortcodes/WpGradeShortcode_Columns.php

    r1094158 r2841487  
    77    public function __construct($settings = array()) {
    88
    9         $this->backend_assets["js"] = array(
     9        $this->backend_assets['js'] = array(
    1010            'columns' => array(
    1111                'name' => 'columns',
     
    1919
    2020        $this->self_closed = false;
    21         $this->name = "Columns";
    22         $this->code = "columns";
    23         $this->icon = "icon-th-list";
     21        $this->name = 'Columns';
     22        $this->code = 'columns';
     23        $this->icon = 'icon-th-list';
    2424        $this->direct = false;
    2525
     
    9393
    9494        $is_narrow = false;
    95         $classes = explode(" ", $class);
     95        $classes = explode( ' ', $class);
    9696        foreach ($classes as $my_class):
    97             if ($my_class == "narrow") $is_narrow = true;
     97            if ( $my_class == 'narrow' ) $is_narrow = true;
    9898        endforeach;
    9999
     
    101101         * Template localization between plugin and theme
    102102         */
    103         $located = locate_template("templates/shortcodes/row.php", false, false);
     103        $located = locate_template( 'templates/shortcodes/row.php', false, false);
    104104        if(!$located) {
    105105            $located = dirname(__FILE__).'/templates/row.php';
     
    123123         * Template localization between plugin and theme
    124124         */
    125         $located = locate_template("templates/shortcodes/col.php", false, false);
     125        $located = locate_template( 'templates/shortcodes/col.php', false, false);
    126126        if(!$located) {
    127127            $located = dirname(__FILE__).'/templates/col.php';
  • pixcodes/trunk/shortcodes/WpGradeShortcode_Heading.php

    r1094158 r2841487  
    99    public function __construct( $settings = array() ) {
    1010        $this->self_closed = true;
    11         $this->name        = "Heading";
    12         $this->code        = "heading";
    13         $this->icon        = "icon-header";
     11        $this->name        = 'Heading';
     12        $this->code        = 'heading';
     13        $this->icon        = 'icon-header';
    1414        $this->direct      = false;
    1515
  • pixcodes/trunk/shortcodes/WpGradeShortcode_Icon.php

    r1094158 r2841487  
    77    public function __construct($settings = array()) {
    88        $this->self_closed = true;
    9         $this->name = "Icon";
    10         $this->code = "icon";
    11         $this->icon = "icon-magic";
     9        $this->name = 'Icon';
     10        $this->code = 'icon';
     11        $this->icon = 'icon-magic';
    1212        $this->direct = false;
    1313
    14         $this->backend_assets["js"] = array(
    15             "icons" => array(
     14        $this->backend_assets['js'] = array(
     15            'icons' => array(
    1616                'name' => 'icons',
    1717                'path' => 'js/shortcodes/backend_icons.js',
     
    4848              'icons' => array(
    4949                  //Entypo
    50                   "e-plus",     
    51                   "e-minus",   
    52                   "e-tripadvisor",     
    53                   "e-fivehundredpx",     
    54                   "e-digg",
    55                   "e-cc-1",
    56                   "e-dribbble-1",
    57                   "e-youtube",
    58                   "e-googleplay",
    59                   "e-soundcloud-1",
    60                   "e-appnet",
    61                   "e-info",
    62                   "e-left-thin",
    63                   "e-up-thin",
    64                   "e-right-thin",
    65                   "e-down-thin",
    66                   "e-level-up",
    67                   "e-level-down",
    68                   "e-switch",
    69                   "e-infinity",
    70                   "e-plus-squared",
    71                   "e-minus-squared",
    72                   "e-home",
    73                   "e-keyboard",
    74                   "e-erase",
    75                   "e-pause",
    76                   "e-fast-forward",
    77                   "e-fast-backward",
    78                   "e-to-end",
    79                   "e-to-start",
    80                   "e-hourglass",
    81                   "e-stop-1",
    82                   "e-up-dir",
    83                   "e-play",
    84                   "e-right-dir",
    85                   "e-down-dir",
    86                   "e-left-dir",
    87                   "e-adjust",
    88                   "e-cloud",
    89                   "e-star",
    90                   "e-star-empty",
    91                   "e-cup",
    92                   "e-menu",
    93                   "e-moon",
    94                   "e-heart-empty",
    95                   "e-heart",
    96                   "e-note",
    97                   "e-note-beamed",
    98                   "e-layout",
    99                   "e-flag",
    100                   "e-tools",
    101                   "e-cog",
    102                   "e-attention",
    103                   "e-flash",
    104                   "e-record",
    105                   "e-cloud-thunder",
    106                   "e-tape",
    107                   "e-flight",
    108                   "e-mail",
    109                   "e-pencil",
    110                   "e-feather",
    111                   "e-check",
    112                   "e-cancel",
    113                   "e-cancel-circled",
    114                   "e-cancel-squared",
    115                   "e-help",
    116                   "e-quote",
    117                   "e-plus-circled",
    118                   "e-minus-circled",
    119                   "e-right",
    120                   "e-direction",
    121                   "e-forward",
    122                   "e-ccw",
    123                   "e-cw",
    124                   "e-left",
    125                   "e-up",
    126                   "e-down",
    127                   "e-list-add",
    128                   "e-list",
    129                   "e-deviantart",
    130                   "e-left-bold",
    131                   "e-right-bold",
    132                   "e-up-bold",
    133                   "e-down-bold",
    134                   "e-user-add",
    135                   "e-help-circled",
    136                   "e-info-circled",
    137                   "e-eye",
    138                   "e-tag",
    139                   "e-upload-cloud",
    140                   "e-reply",
    141                   "e-reply-all",
    142                   "e-code",
    143                   "e-export",
    144                   "e-print",
    145                   "e-retweet",
    146                   "e-comment",
    147                   "e-chat",
    148                   "e-vcard",
    149                   "e-address",
    150                   "e-location",
    151                   "e-map",
    152                   "e-compass",
    153                   "e-trash",
    154                   "e-doc",
    155                   "e-doc-text-inv",
    156                   "e-docs",
    157                   "e-doc-landscape",
    158                   "e-archive",
    159                   "e-rss",
    160                   "e-share",
    161                   "e-basket",
    162                   "e-shareable",
    163                   "e-login",
    164                   "e-logout",
    165                   "e-volume",
    166                   "e-resize-full",
    167                   "e-resize-small",
    168                   "e-popup",
    169                   "e-publish",
    170                   "e-window",
    171                   "e-arrow-combo",
    172                   "e-chart-pie",
    173                   "e-language",
    174                   "e-air",
    175                   "e-database",
    176                   "e-drive",
    177                   "e-bucket",
    178                   "e-thermometer",
    179                   "e-down-circled",
    180                   "e-left-circled",
    181                   "e-right-circled",
    182                   "e-up-circled",
    183                   "e-down-open",
    184                   "e-left-open",
    185                   "e-right-open",
    186                   "e-up-open",
    187                   "e-down-open-mini",
    188                   "e-left-open-mini",
    189                   "e-right-open-mini",
    190                   "e-up-open-mini",
    191                   "e-down-open-big",
    192                   "e-left-open-big",
    193                   "e-right-open-big",
    194                   "e-up-open-big",
    195                   "e-progress-0",
    196                   "e-progress-1",
    197                   "e-progress-2",
    198                   "e-progress-3",
    199                   "e-back-in-time",
    200                   "e-network",
    201                   "e-inbox",
    202                   "e-install",
    203                   "e-lifebuoy",
    204                   "e-mouse",
    205                   "e-dot",
    206                   "e-dot-2",
    207                   "e-dot-3",
    208                   "e-suitcase",
    209                   "e-flow-cascade",
    210                   "e-flow-branch",
    211                   "e-flow-tree",
    212                   "e-flow-line",
    213                   "e-flow-parallel",
    214                   "e-brush",
    215                   "e-paper-plane",
    216                   "e-magnet",
    217                   "e-gauge",
    218                   "e-traffic-cone",
    219                   "e-cc",
    220                   "e-cc-by",
    221                   "e-cc-nc",
    222                   "e-cc-nc-eu",
    223                   "e-cc-nc-jp",
    224                   "e-cc-sa",
    225                   "e-cc-nd",
    226                   "e-cc-pd",
    227                   "e-cc-zero",
    228                   "e-cc-share",
    229                   "e-cc-remix",
    230                   "e-github",
    231                   "e-github-circled",
    232                   "e-flickr",
    233                   "e-flickr-circled",
    234                   "e-vimeo",
    235                   "e-vimeo-circled",
    236                   "e-twitter",
    237                   "e-twitter-circled",
    238                   "e-facebook",
    239                   "e-facebook-circled",
    240                   "e-facebook-squared",
    241                   "e-gplus",
    242                   "e-gplus-circled",
    243                   "e-pinterest",
    244                   "e-pinterest-circled",
    245                   "e-tumblr",
    246                   "e-tumblr-circled",
    247                   "e-linkedin",
    248                   "e-linkedin-circled",
    249                   "e-dribbble",
    250                   "e-dribbble-circled",
    251                   "e-stumbleupon",
    252                   "e-stumbleupon-circled",
    253                   "e-lastfm",
    254                   "e-lastfm-circled",
    255                   "e-rdio",
    256                   "e-rdio-circled",
    257                   "e-spotify",
    258                   "e-spotify-circled",
    259                   "e-qq",
    260                   "e-instagram",
    261                   "e-dropbox",
    262                   "e-evernote",
    263                   "e-flattr",
    264                   "e-skype",
    265                   "e-skype-circled",
    266                   "e-renren",
    267                   "e-sina-weibo",
    268                   "e-paypal",
    269                   "e-picasa",
    270                   "e-soundcloud",
    271                   "e-mixi",
    272                   "e-behance",
    273                   "e-google-circles",
    274                   "e-vkontakte",
    275                   "e-smashing",
    276                   "e-db-shape",
    277                   "e-sweden",
    278                   "e-logo-db",
    279                   "e-picture",
    280                   "e-globe",
    281                   "e-leaf",
    282                   "e-graduation-cap",
    283                   "e-mic",
    284                   "e-palette",
    285                   "e-ticket",
    286                   "e-video",
    287                   "e-target",
    288                   "e-music",
    289                   "e-trophy",
    290                   "e-thumbs-up",
    291                   "e-thumbs-down",
    292                   "e-bag",
    293                   "e-user",
    294                   "e-users",
    295                   "e-lamp",
    296                   "e-alert",
    297                   "e-water",
    298                   "e-droplet",
    299                   "e-credit-card",
    300                   "e-monitor",
    301                   "e-briefcase",
    302                   "e-floppy",
    303                   "e-cd",
    304                   "e-folder",
    305                   "e-doc-text",
    306                   "e-calendar",
    307                   "e-chart-line",
    308                   "e-chart-bar",
    309                   "e-clipboard",
    310                   "e-attach",
    311                   "e-bookmarks",
    312                   "e-book",
    313                   "e-book-open",
    314                   "e-phone",
    315                   "e-megaphone",
    316                   "e-upload",
    317                   "e-download",
    318                   "e-box",
    319                   "e-newspaper",
    320                   "e-mobile",
    321                   "e-signal",
    322                   "e-camera",
    323                   "e-shuffle",
    324                   "e-loop",
    325                   "e-arrows-ccw",
    326                   "e-light-down",
    327                   "e-light-up",
    328                   "e-mute",
    329                   "e-sound",
    330                   "e-battery",
    331                   "e-search",
    332                   "e-key",
    333                   "e-lock",
    334                   "e-lock-open",
    335                   "e-bell",
    336                   "e-bookmark",
    337                   "e-link",
    338                   "e-back",
    339                   "e-flashlight",
    340                   "e-chart-area",
    341                   "e-clock",
    342                   "e-rocket",
    343                   "e-block",
     50                  'e-plus',
     51                  'e-minus',
     52                  'e-tripadvisor',
     53                  'e-fivehundredpx',
     54                  'e-digg',
     55                  'e-cc-1',
     56                  'e-dribbble-1',
     57                  'e-youtube',
     58                  'e-googleplay',
     59                  'e-soundcloud-1',
     60                  'e-appnet',
     61                  'e-info',
     62                  'e-left-thin',
     63                  'e-up-thin',
     64                  'e-right-thin',
     65                  'e-down-thin',
     66                  'e-level-up',
     67                  'e-level-down',
     68                  'e-switch',
     69                  'e-infinity',
     70                  'e-plus-squared',
     71                  'e-minus-squared',
     72                  'e-home',
     73                  'e-keyboard',
     74                  'e-erase',
     75                  'e-pause',
     76                  'e-fast-forward',
     77                  'e-fast-backward',
     78                  'e-to-end',
     79                  'e-to-start',
     80                  'e-hourglass',
     81                  'e-stop-1',
     82                  'e-up-dir',
     83                  'e-play',
     84                  'e-right-dir',
     85                  'e-down-dir',
     86                  'e-left-dir',
     87                  'e-adjust',
     88                  'e-cloud',
     89                  'e-star',
     90                  'e-star-empty',
     91                  'e-cup',
     92                  'e-menu',
     93                  'e-moon',
     94                  'e-heart-empty',
     95                  'e-heart',
     96                  'e-note',
     97                  'e-note-beamed',
     98                  'e-layout',
     99                  'e-flag',
     100                  'e-tools',
     101                  'e-cog',
     102                  'e-attention',
     103                  'e-flash',
     104                  'e-record',
     105                  'e-cloud-thunder',
     106                  'e-tape',
     107                  'e-flight',
     108                  'e-mail',
     109                  'e-pencil',
     110                  'e-feather',
     111                  'e-check',
     112                  'e-cancel',
     113                  'e-cancel-circled',
     114                  'e-cancel-squared',
     115                  'e-help',
     116                  'e-quote',
     117                  'e-plus-circled',
     118                  'e-minus-circled',
     119                  'e-right',
     120                  'e-direction',
     121                  'e-forward',
     122                  'e-ccw',
     123                  'e-cw',
     124                  'e-left',
     125                  'e-up',
     126                  'e-down',
     127                  'e-list-add',
     128                  'e-list',
     129                  'e-deviantart',
     130                  'e-left-bold',
     131                  'e-right-bold',
     132                  'e-up-bold',
     133                  'e-down-bold',
     134                  'e-user-add',
     135                  'e-help-circled',
     136                  'e-info-circled',
     137                  'e-eye',
     138                  'e-tag',
     139                  'e-upload-cloud',
     140                  'e-reply',
     141                  'e-reply-all',
     142                  'e-code',
     143                  'e-export',
     144                  'e-print',
     145                  'e-retweet',
     146                  'e-comment',
     147                  'e-chat',
     148                  'e-vcard',
     149                  'e-address',
     150                  'e-location',
     151                  'e-map',
     152                  'e-compass',
     153                  'e-trash',
     154                  'e-doc',
     155                  'e-doc-text-inv',
     156                  'e-docs',
     157                  'e-doc-landscape',
     158                  'e-archive',
     159                  'e-rss',
     160                  'e-share',
     161                  'e-basket',
     162                  'e-shareable',
     163                  'e-login',
     164                  'e-logout',
     165                  'e-volume',
     166                  'e-resize-full',
     167                  'e-resize-small',
     168                  'e-popup',
     169                  'e-publish',
     170                  'e-window',
     171                  'e-arrow-combo',
     172                  'e-chart-pie',
     173                  'e-language',
     174                  'e-air',
     175                  'e-database',
     176                  'e-drive',
     177                  'e-bucket',
     178                  'e-thermometer',
     179                  'e-down-circled',
     180                  'e-left-circled',
     181                  'e-right-circled',
     182                  'e-up-circled',
     183                  'e-down-open',
     184                  'e-left-open',
     185                  'e-right-open',
     186                  'e-up-open',
     187                  'e-down-open-mini',
     188                  'e-left-open-mini',
     189                  'e-right-open-mini',
     190                  'e-up-open-mini',
     191                  'e-down-open-big',
     192                  'e-left-open-big',
     193                  'e-right-open-big',
     194                  'e-up-open-big',
     195                  'e-progress-0',
     196                  'e-progress-1',
     197                  'e-progress-2',
     198                  'e-progress-3',
     199                  'e-back-in-time',
     200                  'e-network',
     201                  'e-inbox',
     202                  'e-install',
     203                  'e-lifebuoy',
     204                  'e-mouse',
     205                  'e-dot',
     206                  'e-dot-2',
     207                  'e-dot-3',
     208                  'e-suitcase',
     209                  'e-flow-cascade',
     210                  'e-flow-branch',
     211                  'e-flow-tree',
     212                  'e-flow-line',
     213                  'e-flow-parallel',
     214                  'e-brush',
     215                  'e-paper-plane',
     216                  'e-magnet',
     217                  'e-gauge',
     218                  'e-traffic-cone',
     219                  'e-cc',
     220                  'e-cc-by',
     221                  'e-cc-nc',
     222                  'e-cc-nc-eu',
     223                  'e-cc-nc-jp',
     224                  'e-cc-sa',
     225                  'e-cc-nd',
     226                  'e-cc-pd',
     227                  'e-cc-zero',
     228                  'e-cc-share',
     229                  'e-cc-remix',
     230                  'e-github',
     231                  'e-github-circled',
     232                  'e-flickr',
     233                  'e-flickr-circled',
     234                  'e-vimeo',
     235                  'e-vimeo-circled',
     236                  'e-twitter',
     237                  'e-twitter-circled',
     238                  'e-facebook',
     239                  'e-facebook-circled',
     240                  'e-facebook-squared',
     241                  'e-gplus',
     242                  'e-gplus-circled',
     243                  'e-pinterest',
     244                  'e-pinterest-circled',
     245                  'e-tumblr',
     246                  'e-tumblr-circled',
     247                  'e-linkedin',
     248                  'e-linkedin-circled',
     249                  'e-dribbble',
     250                  'e-dribbble-circled',
     251                  'e-stumbleupon',
     252                  'e-stumbleupon-circled',
     253                  'e-lastfm',
     254                  'e-lastfm-circled',
     255                  'e-rdio',
     256                  'e-rdio-circled',
     257                  'e-spotify',
     258                  'e-spotify-circled',
     259                  'e-qq',
     260                  'e-instagram',
     261                  'e-dropbox',
     262                  'e-evernote',
     263                  'e-flattr',
     264                  'e-skype',
     265                  'e-skype-circled',
     266                  'e-renren',
     267                  'e-sina-weibo',
     268                  'e-paypal',
     269                  'e-picasa',
     270                  'e-soundcloud',
     271                  'e-mixi',
     272                  'e-behance',
     273                  'e-google-circles',
     274                  'e-vkontakte',
     275                  'e-smashing',
     276                  'e-db-shape',
     277                  'e-sweden',
     278                  'e-logo-db',
     279                  'e-picture',
     280                  'e-globe',
     281                  'e-leaf',
     282                  'e-graduation-cap',
     283                  'e-mic',
     284                  'e-palette',
     285                  'e-ticket',
     286                  'e-video',
     287                  'e-target',
     288                  'e-music',
     289                  'e-trophy',
     290                  'e-thumbs-up',
     291                  'e-thumbs-down',
     292                  'e-bag',
     293                  'e-user',
     294                  'e-users',
     295                  'e-lamp',
     296                  'e-alert',
     297                  'e-water',
     298                  'e-droplet',
     299                  'e-credit-card',
     300                  'e-monitor',
     301                  'e-briefcase',
     302                  'e-floppy',
     303                  'e-cd',
     304                  'e-folder',
     305                  'e-doc-text',
     306                  'e-calendar',
     307                  'e-chart-line',
     308                  'e-chart-bar',
     309                  'e-clipboard',
     310                  'e-attach',
     311                  'e-bookmarks',
     312                  'e-book',
     313                  'e-book-open',
     314                  'e-phone',
     315                  'e-megaphone',
     316                  'e-upload',
     317                  'e-download',
     318                  'e-box',
     319                  'e-newspaper',
     320                  'e-mobile',
     321                  'e-signal',
     322                  'e-camera',
     323                  'e-shuffle',
     324                  'e-loop',
     325                  'e-arrows-ccw',
     326                  'e-light-down',
     327                  'e-light-up',
     328                  'e-mute',
     329                  'e-sound',
     330                  'e-battery',
     331                  'e-search',
     332                  'e-key',
     333                  'e-lock',
     334                  'e-lock-open',
     335                  'e-bell',
     336                  'e-bookmark',
     337                  'e-link',
     338                  'e-back',
     339                  'e-flashlight',
     340                  'e-chart-area',
     341                  'e-clock',
     342                  'e-rocket',
     343                  'e-block',
    344344                  //Font Awesome
    345                   "glass",
    346                   "music",
    347                   "search",
    348                   "envelope-o",
    349                   "heart",
    350                   "star",
    351                   "star-o",
    352                   "user",
    353                   "film",
    354                   "th-large",
    355                   "th",
    356                   "th-list",
    357                   "check",
    358                   "times",
    359                   "search-plus",
    360                   "search-minus",
    361                   "power-off",
    362                   "signal",
    363                   "gear",
    364                   "cog",
    365                   "trash-o",
    366                   "home",
    367                   "file-o",
    368                   "clock-o",
    369                   "road",
    370                   "download",
    371                   "arrow-circle-o-down",
    372                   "arrow-circle-o-up",
    373                   "inbox",
    374                   "play-circle-o",
    375                   "rotate-right",
    376                   "repeat",
    377                   "refresh",
    378                   "list-alt",
    379                   "lock",
    380                   "flag",
    381                   "headphones",
    382                   "volume-off",
    383                   "volume-down",
    384                   "volume-up",
    385                   "qrcode",
    386                   "barcode",
    387                   "tag",
    388                   "tags",
    389                   "book",
    390                   "bookmark",
    391                   "print",
    392                   "camera",
    393                   "font",
    394                   "bold",
    395                   "italic",
    396                   "text-height",
    397                   "text-width",
    398                   "align-left",
    399                   "align-center",
    400                   "align-right",
    401                   "align-justify",
    402                   "list",
    403                   "dedent",
    404                   "outdent",
    405                   "indent",
    406                   "video-camera",
    407                   "picture-o",
    408                   "pencil",
    409                   "map-marker",
    410                   "adjust",
    411                   "tint",
    412                   "edit",
    413                   "pencil-square-o",
    414                   "share-square-o",
    415                   "check-square-o",
    416                   "arrows",
    417                   "step-backward",
    418                   "fast-backward",
    419                   "backward",
    420                   "play",
    421                   "pause",
    422                   "stop",
    423                   "forward",
    424                   "fast-forward",
    425                   "step-forward",
    426                   "eject",
    427                   "chevron-left",
    428                   "chevron-right",
    429                   "plus-circle",
    430                   "minus-circle",
    431                   "times-circle",
    432                   "check-circle",
    433                   "question-circle",
    434                   "info-circle",
    435                   "crosshairs",
    436                   "times-circle-o",
    437                   "check-circle-o",
    438                   "ban",
    439                   "arrow-left",
    440                   "arrow-right",
    441                   "arrow-up",
    442                   "arrow-down",
    443                   "mail-forward",
    444                   "share",
    445                   "expand",
    446                   "compress",
    447                   "plus",
    448                   "minus",
    449                   "asterisk",
    450                   "exclamation-circle",
    451                   "gift",
    452                   "leaf",
    453                   "fire",
    454                   "eye",
    455                   "eye-slash",
    456                   "warning",
    457                   "exclamation-triangle",
    458                   "plane",
    459                   "calendar",
    460                   "random",
    461                   "comment",
    462                   "magnet",
    463                   "chevron-up",
    464                   "chevron-down",
    465                   "retweet",
    466                   "shopping-cart",
    467                   "folder",
    468                   "folder-open",
    469                   "arrows-v",
    470                   "arrows-h",
    471                   "bar-chart-o",
    472                   "twitter-square",
    473                   "facebook-square",
    474                   "camera-retro",
    475                   "key",
    476                   "gears",
    477                   "cogs",
    478                   "comments",
    479                   "thumbs-o-up",
    480                   "thumbs-o-down",
    481                   "star-half",
    482                   "heart-o",
    483                   "sign-out",
    484                   "linkedin-square",
    485                   "thumb-tack",
    486                   "external-link",
    487                   "sign-in",
    488                   "trophy",
    489                   "github-square",
    490                   "upload",
    491                   "lemon-o",
    492                   "phone",
    493                   "square-o",
    494                   "bookmark-o",
    495                   "phone-square",
    496                   "twitter",
    497                   "facebook",
    498                   "github",
    499                   "unlock",
    500                   "credit-card",
    501                   "rss",
    502                   "hdd-o",
    503                   "bullhorn",
    504                   "bell",
    505                   "certificate",
    506                   "hand-o-right",
    507                   "hand-o-left",
    508                   "hand-o-up",
    509                   "hand-o-down",
    510                   "arrow-circle-left",
    511                   "arrow-circle-right",
    512                   "arrow-circle-up",
    513                   "arrow-circle-down",
    514                   "globe",
    515                   "wrench",
    516                   "tasks",
    517                   "filter",
    518                   "briefcase",
    519                   "arrows-alt",
    520                   "group",
    521                   "users",
    522                   "chain",
    523                   "link",
    524                   "cloud",
    525                   "flask",
    526                   "cut",
    527                   "scissors",
    528                   "copy",
    529                   "files-o",
    530                   "paperclip",
    531                   "save",
    532                   "floppy-o",
    533                   "square",
    534                   "bars",
    535                   "list-ul",
    536                   "list-ol",
    537                   "strikethrough",
    538                   "underline",
    539                   "table",
    540                   "magic",
    541                   "truck",
    542                   "pinterest",
    543                   "pinterest-square",
    544                   "google-plus-square",
    545                   "google-plus",
    546                   "money",
    547                   "caret-down",
    548                   "caret-up",
    549                   "caret-left",
    550                   "caret-right",
    551                   "columns",
    552                   "unsorted",
    553                   "sort",
    554                   "sort-down",
    555                   "sort-asc",
    556                   "sort-up",
    557                   "sort-desc",
    558                   "envelope",
    559                   "linkedin",
    560                   "rotate-left",
    561                   "undo",
    562                   "legal",
    563                   "gavel",
    564                   "dashboard",
    565                   "tachometer",
    566                   "comment-o",
    567                   "comments-o",
    568                   "flash",
    569                   "bolt",
    570                   "sitemap",
    571                   "umbrella",
    572                   "paste",
    573                   "clipboard",
    574                   "lightbulb-o",
    575                   "exchange",
    576                   "cloud-download",
    577                   "cloud-upload",
    578                   "user-md",
    579                   "stethoscope",
    580                   "suitcase",
    581                   "bell-o",
    582                   "coffee",
    583                   "cutlery",
    584                   "file-text-o",
    585                   "building-o",
    586                   "hospital-o",
    587                   "ambulance",
    588                   "medkit",
    589                   "fighter-jet",
    590                   "beer",
    591                   "h-square",
    592                   "plus-square",
    593                   "angle-double-left",
    594                   "angle-double-right",
    595                   "angle-double-up",
    596                   "angle-double-down",
    597                   "angle-left",
    598                   "angle-right",
    599                   "angle-up",
    600                   "angle-down",
    601                   "desktop",
    602                   "laptop",
    603                   "tablet",
    604                   "mobile-phone",
    605                   "mobile",
    606                   "circle-o",
    607                   "quote-left",
    608                   "quote-right",
    609                   "spinner",
    610                   "circle",
    611                   "mail-reply",
    612                   "reply",
    613                   "github-alt",
    614                   "folder-o",
    615                   "folder-open-o",
    616                   "smile-o",
    617                   "frown-o",
    618                   "meh-o",
    619                   "gamepad",
    620                   "keyboard-o",
    621                   "flag-o",
    622                   "flag-checkered",
    623                   "terminal",
    624                   "code",
    625                   "reply-all",
    626                   "mail-reply-all",
    627                   "star-half-empty",
    628                   "star-half-full",
    629                   "star-half-o",
    630                   "location-arrow",
    631                   "crop",
    632                   "code-fork",
    633                   "unlink",
    634                   "chain-broken",
    635                   "question",
    636                   "info",
    637                   "exclamation",
    638                   "superscript",
    639                   "subscript",
    640                   "eraser",
    641                   "puzzle-piece",
    642                   "microphone",
    643                   "microphone-slash",
    644                   "shield",
    645                   "calendar-o",
    646                   "fire-extinguisher",
    647                   "rocket",
    648                   "maxcdn",
    649                   "chevron-circle-left",
    650                   "chevron-circle-right",
    651                   "chevron-circle-up",
    652                   "chevron-circle-down",
    653                   "html5",
    654                   "css3",
    655                   "anchor",
    656                   "unlock-alt",
    657                   "bullseye",
    658                   "ellipsis-h",
    659                   "ellipsis-v",
    660                   "rss-square",
    661                   "play-circle",
    662                   "ticket",
    663                   "minus-square",
    664                   "minus-square-o",
    665                   "level-up",
    666                   "level-down",
    667                   "check-square",
    668                   "pencil-square",
    669                   "external-link-square",
    670                   "share-square",
    671                   "compass",
    672                   "toggle-down",
    673                   "caret-square-o-down",
    674                   "toggle-up",
    675                   "caret-square-o-up",
    676                   "toggle-right",
    677                   "caret-square-o-right",
    678                   "euro",
    679                   "eur",
    680                   "gbp",
    681                   "dollar",
    682                   "usd",
    683                   "rupee",
    684                   "inr",
    685                   "cny",
    686                   "rmb",
    687                   "yen",
    688                   "jpy",
    689                   "ruble",
    690                   "rouble",
    691                   "rub",
    692                   "won",
    693                   "krw",
    694                   "bitcoin",
    695                   "btc",
    696                   "file",
    697                   "file-text",
    698                   "sort-alpha-asc",
    699                   "sort-alpha-desc",
    700                   "sort-amount-asc",
    701                   "sort-amount-desc",
    702                   "sort-numeric-asc",
    703                   "sort-numeric-desc",
    704                   "thumbs-up",
    705                   "thumbs-down",
    706                   "youtube-square",
    707                   "youtube",
    708                   "xing",
    709                   "xing-square",
    710                   "youtube-play",
    711                   "dropbox",
    712                   "stack-overflow",
    713                   "instagram",
    714                   "flickr",
    715                   "adn",
    716                   "bitbucket",
    717                   "bitbucket-square",
    718                   "tumblr",
    719                   "tumblr-square",
    720                   "long-arrow-down",
    721                   "long-arrow-up",
    722                   "long-arrow-left",
    723                   "long-arrow-right",
    724                   "apple",
    725                   "windows",
    726                   "android",
    727                   "linux",
    728                   "dribbble",
    729                   "skype",
    730                   "foursquare",
    731                   "trello",
    732                   "female",
    733                   "male",
    734                   "gittip",
    735                   "sun-o",
    736                   "moon-o",
    737                   "archive",
    738                   "bug",
    739                   "vk",
    740                   "weibo",
    741                   "renren",
    742                   "pagelines",
    743                   "stack-exchange",
    744                   "arrow-circle-o-right",
    745                   "arrow-circle-o-left",
    746                   "toggle-left",
    747                   "caret-square-o-left",
    748                   "dot-circle-o",
    749                   "wheelchair",
    750                   "vimeo-square",
    751                   "turkish-lira",
    752                   "try",
    753                   "plus-square-o",
     345                  'glass',
     346                  'music',
     347                  'search',
     348                  'envelope-o',
     349                  'heart',
     350                  'star',
     351                  'star-o',
     352                  'user',
     353                  'film',
     354                  'th-large',
     355                  'th',
     356                  'th-list',
     357                  'check',
     358                  'times',
     359                  'search-plus',
     360                  'search-minus',
     361                  'power-off',
     362                  'signal',
     363                  'gear',
     364                  'cog',
     365                  'trash-o',
     366                  'home',
     367                  'file-o',
     368                  'clock-o',
     369                  'road',
     370                  'download',
     371                  'arrow-circle-o-down',
     372                  'arrow-circle-o-up',
     373                  'inbox',
     374                  'play-circle-o',
     375                  'rotate-right',
     376                  'repeat',
     377                  'refresh',
     378                  'list-alt',
     379                  'lock',
     380                  'flag',
     381                  'headphones',
     382                  'volume-off',
     383                  'volume-down',
     384                  'volume-up',
     385                  'qrcode',
     386                  'barcode',
     387                  'tag',
     388                  'tags',
     389                  'book',
     390                  'bookmark',
     391                  'print',
     392                  'camera',
     393                  'font',
     394                  'bold',
     395                  'italic',
     396                  'text-height',
     397                  'text-width',
     398                  'align-left',
     399                  'align-center',
     400                  'align-right',
     401                  'align-justify',
     402                  'list',
     403                  'dedent',
     404                  'outdent',
     405                  'indent',
     406                  'video-camera',
     407                  'picture-o',
     408                  'pencil',
     409                  'map-marker',
     410                  'adjust',
     411                  'tint',
     412                  'edit',
     413                  'pencil-square-o',
     414                  'share-square-o',
     415                  'check-square-o',
     416                  'arrows',
     417                  'step-backward',
     418                  'fast-backward',
     419                  'backward',
     420                  'play',
     421                  'pause',
     422                  'stop',
     423                  'forward',
     424                  'fast-forward',
     425                  'step-forward',
     426                  'eject',
     427                  'chevron-left',
     428                  'chevron-right',
     429                  'plus-circle',
     430                  'minus-circle',
     431                  'times-circle',
     432                  'check-circle',
     433                  'question-circle',
     434                  'info-circle',
     435                  'crosshairs',
     436                  'times-circle-o',
     437                  'check-circle-o',
     438                  'ban',
     439                  'arrow-left',
     440                  'arrow-right',
     441                  'arrow-up',
     442                  'arrow-down',
     443                  'mail-forward',
     444                  'share',
     445                  'expand',
     446                  'compress',
     447                  'plus',
     448                  'minus',
     449                  'asterisk',
     450                  'exclamation-circle',
     451                  'gift',
     452                  'leaf',
     453                  'fire',
     454                  'eye',
     455                  'eye-slash',
     456                  'warning',
     457                  'exclamation-triangle',
     458                  'plane',
     459                  'calendar',
     460                  'random',
     461                  'comment',
     462                  'magnet',
     463                  'chevron-up',
     464                  'chevron-down',
     465                  'retweet',
     466                  'shopping-cart',
     467                  'folder',
     468                  'folder-open',
     469                  'arrows-v',
     470                  'arrows-h',
     471                  'bar-chart-o',
     472                  'twitter-square',
     473                  'facebook-square',
     474                  'camera-retro',
     475                  'key',
     476                  'gears',
     477                  'cogs',
     478                  'comments',
     479                  'thumbs-o-up',
     480                  'thumbs-o-down',
     481                  'star-half',
     482                  'heart-o',
     483                  'sign-out',
     484                  'linkedin-square',
     485                  'thumb-tack',
     486                  'external-link',
     487                  'sign-in',
     488                  'trophy',
     489                  'github-square',
     490                  'upload',
     491                  'lemon-o',
     492                  'phone',
     493                  'square-o',
     494                  'bookmark-o',
     495                  'phone-square',
     496                  'twitter',
     497                  'facebook',
     498                  'github',
     499                  'unlock',
     500                  'credit-card',
     501                  'rss',
     502                  'hdd-o',
     503                  'bullhorn',
     504                  'bell',
     505                  'certificate',
     506                  'hand-o-right',
     507                  'hand-o-left',
     508                  'hand-o-up',
     509                  'hand-o-down',
     510                  'arrow-circle-left',
     511                  'arrow-circle-right',
     512                  'arrow-circle-up',
     513                  'arrow-circle-down',
     514                  'globe',
     515                  'wrench',
     516                  'tasks',
     517                  'filter',
     518                  'briefcase',
     519                  'arrows-alt',
     520                  'group',
     521                  'users',
     522                  'chain',
     523                  'link',
     524                  'cloud',
     525                  'flask',
     526                  'cut',
     527                  'scissors',
     528                  'copy',
     529                  'files-o',
     530                  'paperclip',
     531                  'save',
     532                  'floppy-o',
     533                  'square',
     534                  'bars',
     535                  'list-ul',
     536                  'list-ol',
     537                  'strikethrough',
     538                  'underline',
     539                  'table',
     540                  'magic',
     541                  'truck',
     542                  'pinterest',
     543                  'pinterest-square',
     544                  'google-plus-square',
     545                  'google-plus',
     546                  'money',
     547                  'caret-down',
     548                  'caret-up',
     549                  'caret-left',
     550                  'caret-right',
     551                  'columns',
     552                  'unsorted',
     553                  'sort',
     554                  'sort-down',
     555                  'sort-asc',
     556                  'sort-up',
     557                  'sort-desc',
     558                  'envelope',
     559                  'linkedin',
     560                  'rotate-left',
     561                  'undo',
     562                  'legal',
     563                  'gavel',
     564                  'dashboard',
     565                  'tachometer',
     566                  'comment-o',
     567                  'comments-o',
     568                  'flash',
     569                  'bolt',
     570                  'sitemap',
     571                  'umbrella',
     572                  'paste',
     573                  'clipboard',
     574                  'lightbulb-o',
     575                  'exchange',
     576                  'cloud-download',
     577                  'cloud-upload',
     578                  'user-md',
     579                  'stethoscope',
     580                  'suitcase',
     581                  'bell-o',
     582                  'coffee',
     583                  'cutlery',
     584                  'file-text-o',
     585                  'building-o',
     586                  'hospital-o',
     587                  'ambulance',
     588                  'medkit',
     589                  'fighter-jet',
     590                  'beer',
     591                  'h-square',
     592                  'plus-square',
     593                  'angle-double-left',
     594                  'angle-double-right',
     595                  'angle-double-up',
     596                  'angle-double-down',
     597                  'angle-left',
     598                  'angle-right',
     599                  'angle-up',
     600                  'angle-down',
     601                  'desktop',
     602                  'laptop',
     603                  'tablet',
     604                  'mobile-phone',
     605                  'mobile',
     606                  'circle-o',
     607                  'quote-left',
     608                  'quote-right',
     609                  'spinner',
     610                  'circle',
     611                  'mail-reply',
     612                  'reply',
     613                  'github-alt',
     614                  'folder-o',
     615                  'folder-open-o',
     616                  'smile-o',
     617                  'frown-o',
     618                  'meh-o',
     619                  'gamepad',
     620                  'keyboard-o',
     621                  'flag-o',
     622                  'flag-checkered',
     623                  'terminal',
     624                  'code',
     625                  'reply-all',
     626                  'mail-reply-all',
     627                  'star-half-empty',
     628                  'star-half-full',
     629                  'star-half-o',
     630                  'location-arrow',
     631                  'crop',
     632                  'code-fork',
     633                  'unlink',
     634                  'chain-broken',
     635                  'question',
     636                  'info',
     637                  'exclamation',
     638                  'superscript',
     639                  'subscript',
     640                  'eraser',
     641                  'puzzle-piece',
     642                  'microphone',
     643                  'microphone-slash',
     644                  'shield',
     645                  'calendar-o',
     646                  'fire-extinguisher',
     647                  'rocket',
     648                  'maxcdn',
     649                  'chevron-circle-left',
     650                  'chevron-circle-right',
     651                  'chevron-circle-up',
     652                  'chevron-circle-down',
     653                  'html5',
     654                  'css3',
     655                  'anchor',
     656                  'unlock-alt',
     657                  'bullseye',
     658                  'ellipsis-h',
     659                  'ellipsis-v',
     660                  'rss-square',
     661                  'play-circle',
     662                  'ticket',
     663                  'minus-square',
     664                  'minus-square-o',
     665                  'level-up',
     666                  'level-down',
     667                  'check-square',
     668                  'pencil-square',
     669                  'external-link-square',
     670                  'share-square',
     671                  'compass',
     672                  'toggle-down',
     673                  'caret-square-o-down',
     674                  'toggle-up',
     675                  'caret-square-o-up',
     676                  'toggle-right',
     677                  'caret-square-o-right',
     678                  'euro',
     679                  'eur',
     680                  'gbp',
     681                  'dollar',
     682                  'usd',
     683                  'rupee',
     684                  'inr',
     685                  'cny',
     686                  'rmb',
     687                  'yen',
     688                  'jpy',
     689                  'ruble',
     690                  'rouble',
     691                  'rub',
     692                  'won',
     693                  'krw',
     694                  'bitcoin',
     695                  'btc',
     696                  'file',
     697                  'file-text',
     698                  'sort-alpha-asc',
     699                  'sort-alpha-desc',
     700                  'sort-amount-asc',
     701                  'sort-amount-desc',
     702                  'sort-numeric-asc',
     703                  'sort-numeric-desc',
     704                  'thumbs-up',
     705                  'thumbs-down',
     706                  'youtube-square',
     707                  'youtube',
     708                  'xing',
     709                  'xing-square',
     710                  'youtube-play',
     711                  'dropbox',
     712                  'stack-overflow',
     713                  'instagram',
     714                  'flickr',
     715                  'adn',
     716                  'bitbucket',
     717                  'bitbucket-square',
     718                  'tumblr',
     719                  'tumblr-square',
     720                  'long-arrow-down',
     721                  'long-arrow-up',
     722                  'long-arrow-left',
     723                  'long-arrow-right',
     724                  'apple',
     725                  'windows',
     726                  'android',
     727                  'linux',
     728                  'dribbble',
     729                  'skype',
     730                  'foursquare',
     731                  'trello',
     732                  'female',
     733                  'male',
     734                  'gittip',
     735                  'sun-o',
     736                  'moon-o',
     737                  'archive',
     738                  'bug',
     739                  'vk',
     740                  'weibo',
     741                  'renren',
     742                  'pagelines',
     743                  'stack-exchange',
     744                  'arrow-circle-o-right',
     745                  'arrow-circle-o-left',
     746                  'toggle-left',
     747                  'caret-square-o-left',
     748                  'dot-circle-o',
     749                  'wheelchair',
     750                  'vimeo-square',
     751                  'turkish-lira',
     752                  'try',
     753                  'plus-square-o',
    754754
    755755                  //new icons added in FA 4.1.0
    756756
    757                   "space-shuttle",
    758                   "slack",
    759                   "envelope-square",
    760                   "wordpress",
    761                   "openid",
    762                   "institution",
    763                   "bank",
    764                   "university",
    765                   "mortar-board",
    766                   "graduation-cap",
    767                   "yahoo",
    768                   "google",
    769                   "reddit",
    770                   "reddit-square",
    771                   "stumbleupon-circle",
    772                   "stumbleupon",
    773                   "delicious",
    774                   "digg",
    775                   "pied-piper-square",
    776                   "pied-piper",
    777                   "pied-piper-alt",
    778                   "drupal",
    779                   "joomla",
    780                   "language",
    781                   "fax",
    782                   "building",
    783                   "child",
    784                   "paw",
    785                   "spoon",
    786                   "cube",
    787                   "cubes",
    788                   "behance",
    789                   "behance-square",
    790                   "steam",
    791                   "steam-square",
    792                   "recycle",
    793                   "automobile",
    794                   "car",
    795                   "cab",
    796                   "taxi",
    797                   "tree",
    798                   "spotify",
    799                   "deviantart",
    800                   "soundcloud",
    801                   "database",
    802                   "file-pdf-o",
    803                   "file-word-o",
    804                   "file-excel-o",
    805                   "file-powerpoint-o",
    806                   "file-photo-o",
    807                   "file-picture-o",
    808                   "file-image-o",
    809                   "file-zip-o",
    810                   "file-archive-o",
    811                   "file-sound-o",
    812                   "file-audio-o",
    813                   "file-movie-o",
    814                   "file-video-o",
    815                   "file-code-o",
    816                   "vine",
    817                   "codepen",
    818                   "jsfiddle",
    819                   "life-bouy",
    820                   "life-saver",
    821                   "support",
    822                   "life-ring",
    823                   "circle-o-notch",
    824                   "ra",
    825                   "rebel",
    826                   "ge",
    827                   "empire",
    828                   "git-square",
    829                   "git",
    830                   "hacker-news",
    831                   "tencent-weibo",
    832                   "qq",
    833                   "wechat",
    834                   "weixin",
    835                   "send",
    836                   "paper-plane",
    837                   "send-o",
    838                   "paper-plane-o",
    839                   "history",
    840                   "circle-thin",
    841                   "header",
    842                   "paragraph",
    843                   "sliders",
    844                   "share-alt",
    845                   "share-alt-square",
    846                   "bomb",
     757                  'space-shuttle',
     758                  'slack',
     759                  'envelope-square',
     760                  'wordpress',
     761                  'openid',
     762                  'institution',
     763                  'bank',
     764                  'university',
     765                  'mortar-board',
     766                  'graduation-cap',
     767                  'yahoo',
     768                  'google',
     769                  'reddit',
     770                  'reddit-square',
     771                  'stumbleupon-circle',
     772                  'stumbleupon',
     773                  'delicious',
     774                  'digg',
     775                  'pied-piper-square',
     776                  'pied-piper',
     777                  'pied-piper-alt',
     778                  'drupal',
     779                  'joomla',
     780                  'language',
     781                  'fax',
     782                  'building',
     783                  'child',
     784                  'paw',
     785                  'spoon',
     786                  'cube',
     787                  'cubes',
     788                  'behance',
     789                  'behance-square',
     790                  'steam',
     791                  'steam-square',
     792                  'recycle',
     793                  'automobile',
     794                  'car',
     795                  'cab',
     796                  'taxi',
     797                  'tree',
     798                  'spotify',
     799                  'deviantart',
     800                  'soundcloud',
     801                  'database',
     802                  'file-pdf-o',
     803                  'file-word-o',
     804                  'file-excel-o',
     805                  'file-powerpoint-o',
     806                  'file-photo-o',
     807                  'file-picture-o',
     808                  'file-image-o',
     809                  'file-zip-o',
     810                  'file-archive-o',
     811                  'file-sound-o',
     812                  'file-audio-o',
     813                  'file-movie-o',
     814                  'file-video-o',
     815                  'file-code-o',
     816                  'vine',
     817                  'codepen',
     818                  'jsfiddle',
     819                  'life-bouy',
     820                  'life-saver',
     821                  'support',
     822                  'life-ring',
     823                  'circle-o-notch',
     824                  'ra',
     825                  'rebel',
     826                  'ge',
     827                  'empire',
     828                  'git-square',
     829                  'git',
     830                  'hacker-news',
     831                  'tencent-weibo',
     832                  'qq',
     833                  'wechat',
     834                  'weixin',
     835                  'send',
     836                  'paper-plane',
     837                  'send-o',
     838                  'paper-plane-o',
     839                  'history',
     840                  'circle-thin',
     841                  'header',
     842                  'paragraph',
     843                  'sliders',
     844                  'share-alt',
     845                  'share-alt-square',
     846                  'bomb',
    847847                )
    848848            )
     
    868868        $classes = explode(',',$class);
    869869        $class = implode(' ', $classes);
    870        
     870
    871871        // make sure that there is no icon- in front
    872872        $prefix = 'icon-';
  • pixcodes/trunk/shortcodes/WpGradeShortcode_InfoBox.php

    r1094158 r2841487  
    99        $this->self_closed = false;
    1010        $this->direct = false;
    11         $this->name = "InfoBox";
    12         $this->code = "infobox";
    13         $this->icon = "icon-info";
     11        $this->name = 'InfoBox';
     12        $this->code = 'infobox';
     13        $this->icon = 'icon-info';
    1414
    1515        $this->params = array(
  • pixcodes/trunk/shortcodes/WpGradeShortcode_OpenTableReservations.php

    r2036815 r2841487  
    1111        $this->self_closed = true;
    1212        $this->direct      = false;
    13         $this->name        = "OpenTable Reservations";
    14         $this->code        = "otreservations";
    15         $this->icon        = "icon-group";
     13        $this->name        = 'OpenTable Reservations';
     14        $this->code        = 'otreservations';
     15        $this->icon        = 'icon-group';
    1616
    1717        $this->params = array(
     
    5555
    5656        // frontend assets needs to be loaded after the add_shortcode function
    57         $this->frontend_assets["js"] = array(
     57        $this->frontend_assets['js'] = array(
    5858            'columns' => array(
    5959                'name' => 'frontend_otreservations',
  • pixcodes/trunk/shortcodes/WpGradeShortcode_PixFields.php

    r1094158 r2841487  
    1515        $this->self_closed = true;
    1616        $this->direct      = true;
    17         $this->name        = "PixFields";
    18         $this->code        = "pixfields";
    19         $this->icon        = "icon-list-alt";
     17        $this->name        = 'PixFields';
     18        $this->code        = 'pixfields';
     19        $this->icon        = 'icon-list-alt';
    2020
    2121        add_shortcode( 'pixfields', array( $this, 'add_shortcode' ) );
  • pixcodes/trunk/shortcodes/WpGradeShortcode_Portfolio.php

    r1094158 r2841487  
    99        $this->self_closed = true;
    1010        $this->direct = false;
    11         $this->name = "Portfolio";
    12         $this->code = "portfolio";
    13         $this->icon = "icon-qrcode";
     11        $this->name = 'Portfolio';
     12        $this->code = 'portfolio';
     13        $this->icon = 'icon-qrcode';
    1414
    1515        // prepare categories
  • pixcodes/trunk/shortcodes/WpGradeShortcode_ProgressBar.php

    r1094158 r2841487  
    77    public function __construct($settings = array()) {
    88        $this->self_closed = true;
    9         $this->name = "Progress Bar";
    10         $this->code = "bar";
    11         $this->icon = "icon-tasks";
     9        $this->name = 'Progress Bar';
     10        $this->code = 'bar';
     11        $this->icon = 'icon-tasks';
    1212        $this->direct = false;
    1313
  • pixcodes/trunk/shortcodes/WpGradeShortcode_Quote.php

    r1094158 r2841487  
    77    public function __construct($settings = array()) {
    88        $this->self_closed = false;
    9         $this->name = "Quote";
    10         $this->code = "quote";
    11         $this->icon = "icon-quote-right";
     9        $this->name = 'Quote';
     10        $this->code = 'quote';
     11        $this->icon = 'icon-quote-right';
    1212        $this->direct = false;
    1313
     
    2424                'options' => array('small' => 'Small', 'medium' => 'Medium', 'big' => 'Big'),
    2525                'admin_class' => 'span-12'
    26             ),           
     26            ),
    2727            'author' => array(
    2828                'type' => 'text',
     
    4040                'name' => 'Author title',
    4141                'admin_class' => 'span-12',
    42             ),           
     42            ),
    4343        );
    4444
  • pixcodes/trunk/shortcodes/WpGradeShortcode_RestaurantMenu.php

    r1094158 r2841487  
    99        $this->self_closed = false;
    1010        $this->direct = false;
    11         $this->name = "Restaurant Menu";
    12         $this->code = "restaurantmenu";
    13         $this->icon = "icon-list-alt";
     11        $this->name = 'Restaurant Menu';
     12        $this->code = 'restaurantmenu';
     13        $this->icon = 'icon-list-alt';
    1414
    1515        $this->params = array(
  • pixcodes/trunk/shortcodes/WpGradeShortcode_Separator.php

    r1094158 r2841487  
    99    public function __construct( $settings = array() ) {
    1010        $this->self_closed = true;
    11         $this->name        = "Separator";
    12         $this->code        = "hr";
    13         $this->icon        = "icon-fire";
     11        $this->name        = 'Separator';
     12        $this->code        = 'hr';
     13        $this->icon        = 'icon-fire';
    1414        $this->direct      = false;
    1515
  • pixcodes/trunk/shortcodes/WpGradeShortcode_Slider.php

    r1094158 r2841487  
    77    public function __construct($settings = array()) {
    88
    9         $this->backend_assets["js"] = array(
     9        $this->backend_assets['js'] = array(
    1010            'slider' => array(
    1111                'name' => 'slider',
     
    2020        $this->self_closed = false;
    2121        $this->direct = false;
    22         $this->name = "Slider";
    23         $this->code = "slider";
    24         $this->icon = "icon-code";
     22        $this->name = 'Slider';
     23        $this->code = 'slider';
     24        $this->icon = 'icon-code';
    2525
    2626        $this->params = array(
     
    4040                'options' => array('move' => 'Move/Drag', 'fade' => 'Fade'),
    4141                'admin_class' => 'span10 push2'
    42             ),           
     42            ),
    4343//            'autoheight' => array(
    4444//                'type' => 'switch',
     
    109109         * Template localization between plugin and theme
    110110         */
    111         $located = locate_template("templates/shortcodes/slide.php", false, false);
     111        $located = locate_template( 'templates/shortcodes/slide.php', false, false);
    112112        if(!$located) {
    113113            $located = dirname(__FILE__).'/templates/slide.php';
  • pixcodes/trunk/shortcodes/WpGradeShortcode_Tabs.php

    r1094158 r2841487  
    77    public function __construct($settings = array()) {
    88
    9         $this->backend_assets["js"] = array(
     9        $this->backend_assets['js'] = array(
    1010            'tabs' => array(
    1111                'name' => 'tabs',
     
    2020        $this->self_closed = false;
    2121        $this->direct = false;
    22         $this->name = "Tabs";
    23         $this->code = "tabs";
    24         $this->icon = "icon-folder";
     22        $this->name = 'Tabs';
     23        $this->code = 'tabs';
     24        $this->icon = 'icon-folder';
    2525
    2626        $this->params = array(
     
    3636        add_shortcode('tabs', array( $this, 'add_tabs_shortcode') );
    3737        add_shortcode('tab', array( $this, 'add_tab_shortcode') );
    38 
    39         // frontend assets needs to be loaded after the add_shortcode function
    40 //        $this->frontend_assets["js"] = array(
    41 //            'tabs' => array(
    42 //                'name' => 'frontend_tabs',
    43 //                'path' => 'js/shortcodes/frontend_tabs.js',
    44 //                'deps'=> array( 'jquery' )
    45 //            )
    46 //        );
    47 //        add_action('wp_footer', array($this, 'load_frontend_assets'));
    48 
    4938    }
    5039
    5140    public function add_tabs_shortcode( $atts, $content ) {
    52 
    53 //         extract( shortcode_atts( array(
    54 //             'number' => '-1',
    55 //         ), $atts ) );
    5641
    5742        // prepare the icons first
     
    8772         * Template localization between plugin and theme
    8873         */
    89         $located = locate_template("templates/shortcodes/tab.php", false, false);
     74        $located = locate_template( 'templates/shortcodes/tab.php', false, false);
    9075        if(!$located) {
    9176            $located = dirname(__FILE__).'/templates/tab.php';
  • pixcodes/trunk/shortcodes/WpGradeShortcode_TeamMember.php

    r1094158 r2841487  
    77    public function __construct($settings = array()) {
    88        $this->self_closed = false;
    9         $this->name = "Team Member";
    10         $this->code = "team-member";
    11         $this->icon = "icon-user";
     9        $this->name = 'Team Member';
     10        $this->code = 'team-member';
     11        $this->icon = 'icon-user';
    1212        $this->direct = false;
    1313
  • pixcodes/trunk/shortcodes/WpGradeShortcode_Testimonials.php

    r1094158 r2841487  
    1212        $this->direct      = false;
    1313        $this->meta_prefix = get_option( 'wpgrade_metaboxes_prefix' );
    14         $this->name        = "Testimonials";
    15         $this->code        = "testimonials";
    16         $this->icon        = "icon-group";
     14        $this->name        = 'Testimonials';
     15        $this->code        = 'testimonials';
     16        $this->icon        = 'icon-group';
    1717
    1818        $this->params = array(
     
    6565
    6666        // frontend assets needs to be loaded after the add_shortcode function
    67         $this->frontend_assets["js"] = array(
     67        $this->frontend_assets['js'] = array(
    6868            'columns' => array(
    6969                'name' => 'frontend_testimonials',
  • pixcodes/trunk/shortcodes/WpGradeShortcode_TwitterFeed.php

    r1094158 r2841487  
    11<?php
    22
    3 if (!defined('ABSPATH')) die('-1');
     3if ( ! defined( 'ABSPATH' ) ) {
     4    die( '-1' );
     5}
    46
    5 class WpGradeShortcode_TwitterFeed extends  WpGradeShortcode {
     7class WpGradeShortcode_TwitterFeed extends WpGradeShortcode {
    68
    7     public function __construct($settings = array()) {
     9    public function __construct( $settings = array() ) {
    810
    9         $this->self_closed = true;
    10         $this->direct = false;
    11         $this->name = "TwitterFeed";
    12         $this->code = "twitterfeed";
    13         $this->icon = "icon-group";
     11        $this->self_closed = true;
     12        $this->direct      = false;
     13        $this->name        = 'TwitterFeed';
     14        $this->code        = 'twitterfeed';
     15        $this->icon        = 'icon-group';
    1416
    15         $this->params = array(
    16             'username' => array(
    17                 'type' => 'text',
    18                 'name' => 'Twitter Username',
    19                 'admin_class' => 'span6'
    20             ),
    21             'count' => array(
    22                 'type' => 'text',
    23                 'name' => 'Number of Tweets',
    24                 'admin_class' => 'span5 push1'
    25             ),
    26             'class' => array(
    27                 'type' => 'text',
    28                 'name' => 'Class',
    29                 'admin_class' => 'span6'
    30             ),
    31         );
     17        $this->params = array(
     18            'username' => array(
     19                'type'        => 'text',
     20                'name'        => 'Twitter Username',
     21                'admin_class' => 'span6',
     22            ),
     23            'count'    => array(
     24                'type'        => 'text',
     25                'name'        => 'Number of Tweets',
     26                'admin_class' => 'span5 push1',
     27            ),
     28            'class'    => array(
     29                'type'        => 'text',
     30                'name'        => 'Class',
     31                'admin_class' => 'span6',
     32            ),
     33        );
    3234
    33         // allow the theme or other plugins to "hook" into this shortcode's params
    34         $this->params = apply_filters('pixcodes_filter_params_for_' . strtolower($this->name), $this->params);
     35        // allow the theme or other plugins to "hook" into this shortcode's params
     36        $this->params = apply_filters( 'pixcodes_filter_params_for_' . strtolower( $this->name ), $this->params );
    3537
    36         add_shortcode('twitterfeed', array( $this, 'add_shortcode') );
     38        add_shortcode( 'twitterfeed', array( $this, 'add_shortcode' ) );
    3739
    38         // frontend assets needs to be loaded after the add_shortcode function
    39         $this->frontend_assets["js"] = array(
    40             'columns' => array(
    41                 'name' => 'frontend_twitterfeed',
    42                 'path' => 'js/shortcodes/frontend_twitterfeed.js',
    43                 'deps'=> array( 'jquery' )
    44             )
    45         );
    46         add_action('wp_footer', array($this, 'load_frontend_assets'));
    47     }
     40        // frontend assets needs to be loaded after the add_shortcode function
     41        $this->frontend_assets['js'] = array(
     42            'columns' => array(
     43                'name' => 'frontend_twitterfeed',
     44                'path' => 'js/shortcodes/frontend_twitterfeed.js',
     45                'deps' => array( 'jquery' ),
     46            ),
     47        );
     48        add_action( 'wp_footer', array( $this, 'load_frontend_assets' ) );
     49    }
    4850
    49     public function add_shortcode($atts){
    50        
     51    public function add_shortcode( $atts ) {
     52
    5153        extract( shortcode_atts( array(
    52             'username' => '',
    53             'count' => '',
    54             'class' => '',
    55         ), $atts ) );
     54            'username' => '',
     55            'count'    => '',
     56            'class'    => '',
     57        ), $atts ) );
    5658
    57         $this->load_frontend_scripts = true;
     59        $this->load_frontend_scripts = true;
    5860
    59         /**
    60          * Template localization between plugin and theme
    61          */
    62         $located = locate_template("templates/shortcodes/{$this->code}.php", false, false);
    63         if(!$located) {
    64             $located = dirname(__FILE__).'/templates/'.$this->code.'.php';
    65         }
    66         // load it
    67         ob_start();
    68         require $located;
    69         return ob_get_clean();
    70     }
    71    
    72     public function get_parsed_tweet ($tweet) {
     61        /**
     62         * Template localization between plugin and theme
     63         */
     64        $located = locate_template( "templates/shortcodes/{$this->code}.php", false, false );
     65        if ( ! $located ) {
     66            $located = dirname( __FILE__ ) . '/templates/' . $this->code . '.php';
     67        }
     68        // load it
     69        ob_start();
     70        require $located;
     71
     72        return ob_get_clean();
     73    }
     74
     75    public function get_parsed_tweet( $tweet ) {
    7376        // check if any entites exist and if so, replace then with hyperlinked versions
    7477        $tweet_text = $tweet['text'];
    75         if (!empty($tweet['entities']['urls']) || !empty($tweet['entities']['hashtags']) || !empty($tweet['entities']['user_mentions'])) {
    76                 foreach ($tweet['entities']['urls'] as $url) {
    77                         $find = $url['url'];
    78                         $replace = '<a href="'.$find.'" target="_blank" rel="nofollow">'.$find.'</a>';
    79                         $tweet_text = str_replace($find,$replace,$tweet_text);
    80                 }
     78        if ( ! empty( $tweet['entities']['urls'] ) || ! empty( $tweet['entities']['hashtags'] ) || ! empty( $tweet['entities']['user_mentions'] ) ) {
     79            foreach ( $tweet['entities']['urls'] as $url ) {
     80                $find      = $url['url'];
     81                $replace    = '<a href="' . esc_url( $find ) . '" target="_blank" rel="nofollow">' . esc_url( $find ) . '</a>';
     82                $tweet_text = str_replace( $find, $replace, $tweet_text );
     83            }
    8184
    82                 foreach ($tweet['entities']['hashtags'] as $hashtag) {
    83                         $find = '#'.$hashtag['text'];
    84                         $replace = '<a href="http://twitter.com/#!/search/%23'.$hashtag['text'].'" target="_blank" rel="nofollow">'.$find.'</a>';
    85                         $tweet_text = str_replace($find,$replace,$tweet_text);
    86                 }
     85            foreach ( $tweet['entities']['hashtags'] as $hashtag ) {
     86                $find       = '#' . $hashtag['text'];
     87                $replace    = '<a href="http://twitter.com/#!/search/%23' . esc_url( $hashtag['text'] ) . '" target="_blank" rel="nofollow">' . esc_html( $find ) . '</a>';
     88                $tweet_text = str_replace( $find, $replace, $tweet_text );
     89            }
    8790
    88                 foreach ($tweet['entities']['user_mentions'] as $user_mention) {
    89                         $find = "@".$user_mention['screen_name'];
    90                         $replace = '<a href="http://twitter.com/'.$user_mention['screen_name'].'" target="_blank" rel="nofollow">'.$find.'</a>';
    91                         $tweet_text = str_ireplace($find,$replace,$tweet_text);
    92                 }
     91            foreach ( $tweet['entities']['user_mentions'] as $user_mention ) {
     92                $find       = '@' . $user_mention['screen_name'];
     93                $replace    = '<a href="http://twitter.com/' . esc_url( $user_mention['screen_name'] ) . '" target="_blank" rel="nofollow">' . esc_html( $find ) . '</a>';
     94                $tweet_text = str_ireplace( $find, $replace, $tweet_text );
     95            }
    9396        }
    94        
     97
    9598        return $tweet_text;
    9699    }
    97    
     100
    98101    public function convert_twitter_date( $time ) {
    99102        $date = strtotime( $time );
     103
    100104        //return util::human_time_diff($date);
    101         return gbs_relative_time($date);
     105        return gbs_relative_time( $date );
    102106    }
    103    
    104     public function gbs_relative_time( $timestamp ){
    105                      
     107
     108    public function gbs_relative_time( $timestamp ) {
     109
    106110        $difference = current_time( 'timestamp' ) - $timestamp;
    107111
    108         if ( $difference >= 60*60*24*365 ){        // if more than a year ago
    109             $int = intval( $difference / ( 60*60*24*365 ) );
    110             $r = sprintf( _n( '%d year ago', '%d years ago', $int, wpGrade_txtd ), $int );
    111         } elseif ( $difference >= 60*60*24*7*5 ){  // if more than five weeks ago
    112             $int = intval( $difference / ( 60*60*24*30 ) );
    113             $r = sprintf( _n( '%d month ago', '%d months ago', $int, wpGrade_txtd ), $int );
    114         } elseif ( $difference >= 60*60*24*7 ){        // if more than a week ago
    115             $int = intval( $difference / ( 60*60*24*7 ) );
    116             $r = sprintf( _n( '%d week ago', '%d weeks ago', $int, wpGrade_txtd ), $int );
    117         } elseif ( $difference >= 60*60*24){      // if more than a day ago
    118             $int = intval( $difference / ( 60*60*24 ) );
    119             $r = sprintf( _n( '%d day ago', '%d days ago', $int, wpGrade_txtd ), $int );
    120         } elseif ( $difference >= 60*60 ){         // if more than an hour ago
    121             $int = intval( $difference / ( 60*60 ) );
    122             $r = sprintf( _n( '%d hour ago', '%d hours ago', $int, wpGrade_txtd ), $int );
    123         } elseif ( $difference >= 60 ){            // if more than a minute ago
     112        if ( $difference >= 60 * 60 * 24 * 365 ) {        // if more than a year ago
     113            $int = intval( $difference / ( 60 * 60 * 24 * 365 ) );
     114            $r   = sprintf( _n( '%d year ago', '%d years ago', $int, 'pixcodes_txtd' ), $int );
     115        } elseif ( $difference >= 60 * 60 * 24 * 7 * 5 ) {  // if more than five weeks ago
     116            $int = intval( $difference / ( 60 * 60 * 24 * 30 ) );
     117            $r   = sprintf( _n( '%d month ago', '%d months ago', $int, 'pixcodes_txtd' ), $int );
     118        } elseif ( $difference >= 60 * 60 * 24 * 7 ) {        // if more than a week ago
     119            $int = intval( $difference / ( 60 * 60 * 24 * 7 ) );
     120            $r   = sprintf( _n( '%d week ago', '%d weeks ago', $int, 'pixcodes_txtd' ), $int );
     121        } elseif ( $difference >= 60 * 60 * 24 ) {      // if more than a day ago
     122            $int = intval( $difference / ( 60 * 60 * 24 ) );
     123            $r   = sprintf( _n( '%d day ago', '%d days ago', $int, 'pixcodes_txtd' ), $int );
     124        } elseif ( $difference >= 60 * 60 ) {         // if more than an hour ago
     125            $int = intval( $difference / ( 60 * 60 ) );
     126            $r   = sprintf( _n( '%d hour ago', '%d hours ago', $int, 'pixcodes_txtd' ), $int );
     127        } elseif ( $difference >= 60 ) {            // if more than a minute ago
    124128            $int = intval( $difference / ( 60 ) );
    125             $r = sprintf( _n( '%d minute ago', '%d minutes ago', $int, wpGrade_txtd ), $int );
     129            $r   = sprintf( _n( '%d minute ago', '%d minutes ago', $int, 'pixcodes_txtd' ), $int );
    126130        } else {                                // if less than a minute ago
    127             $r = __( 'moments ago', wpGrade_txtd );
     131            $r = __( 'moments ago', 'pixcodes_txtd' );
    128132        }
    129133
  • pixcodes/trunk/shortcodes/templates/average_score.php

    r1094158 r2841487  
    1 <?php
    2 
    3 ?>
    41<div class="score-box  score-box--inside">
    52    <div class="score__average-wrapper">
    6         <div class="score__average <?php echo get_field('note') ? 'average--with-desc' : '' ?>">
     3        <div class="score__average <?php echo get_field( 'note' ) ? 'average--with-desc' : '' ?>">
    74            <?php
    8             echo '<div class="score__note" itemprop="rating" >'.bucket::get_average_score().'</div>';
    9             if (get_field('note')) {
    10                 echo '<div class="score__desc">'.get_field('note').'</div>';
     5            echo '<div class="score__note" itemprop="rating" >' . bucket::get_average_score() . '</div>';
     6            if ( get_field( 'note' ) ) {
     7                echo '<div class="score__desc">' . wp_kses_post( get_field( 'note' ) ) . '</div>';
    118            } ?>
    12             <meta itemprop="worst" content = "1">
    13             <meta itemprop="best" content = "10">
     9            <meta itemprop="worst" content="1">
     10            <meta itemprop="best" content="10">
    1411        </div>
    1512    </div>
  • pixcodes/trunk/shortcodes/templates/bar.php

    r1094158 r2841487  
    11<div class="pixcode  pixcode--progressbar  progressbar">
    2     <?php if ($title): ?>
    3         <div class="progressbar__title"><?php echo $title; ?></div>
    4     <?php endif; ?>
     2    <?php if ( $title ) { ?>
     3        <div class="progressbar__title"><?php echo wp_kses_post( $title ); ?></div>
     4    <?php } ?>
    55    <div class="progressbar__bar">
    6         <div class="progressbar__progress" data-value="<?php echo $progress ?>">
    7             <div class="progressbar__tooltip"><?php echo $progress ?></div>
     6        <div class="progressbar__progress" data-value="<?php echo esc_attr( $progress ) ?>">
     7            <div class="progressbar__tooltip"><?php echo esc_attr( $progress ) ?></div>
    88        </div>
    9         <?php if ($markers == 'on') for ($i = 1; $i<=4; $i++): ?>
    10             <div class="progressbar__marker" style="width: <?php echo $i*20 ?>%"></div>
    11         <?php endfor; ?>
     9        <?php
     10        if ( $markers == 'on' ) {
     11            for ( $i = 1; $i <= 4; $i ++ ) { ?>
     12                <div class="progressbar__marker" style="width: <?php echo esc_attr( $i * 20 ) ?>%"></div>
     13            <?php }
     14        } ?>
    1215    </div>
    1316</div>
  • pixcodes/trunk/shortcodes/templates/button.php

    r1094158 r2841487  
    11<?php
    22
    3     // create id attribute
    4     $id = !empty($id) ? 'id="'.$id.'"' : '';
     3// create id attribute
     4$id = ! empty( $id ) ? 'id="' . esc_attr( $id ) . '"' : '';
    55
    6     // get needed classes
    7     $classes = 'pixcode  pixcode--btn  btn';
    8     $classes.= !empty($size) ? '  btn--'.$size : '';
    9     $classes.= !empty($text_size) ? '  btn--'.$text_size : '';
    10     $classes.= !empty($class) ? '  '.$class : '';
    11     // create class attribute
    12     $classes = $classes !== '' ? 'class="'.$classes.'"' : '';
     6// get needed classes
     7$classes = 'pixcode  pixcode--btn  btn';
     8$classes .= ! empty( $size ) ? '  btn--' . esc_attr( $size ) : '';
     9$classes .= ! empty( $text_size ) ? '  btn--' . esc_attr( $text_size ) : '';
     10$classes .= ! empty( $class ) ? '  ' . esc_attr( $class ) : '';
     11// create class attribute
     12$classes = $classes !== '' ? 'class="' . esc_attr( $classes ) . '"' : '';
    1313
    14     // create href attribute
    15     $href = !empty($link) ? 'href="'.$link.'"' : '';
     14// create href attribute
     15$href = ! empty( $link ) ? 'href="' . esc_url( $link ) . '"' : '';
    1616
    17     // get content
    18     $content = !empty($content) ? $this->get_clean_content($content) : '';
     17// get content
     18$content = ! empty( $content ) ? $this->get_clean_content( $content ) : '';
    1919
    20     // get target
    21     $target = !empty($newtab) ? 'target="_blank"' : '';
     20// get target
     21$target = ! empty( $newtab ) ? 'target="_blank"' : '';
    2222
    23 echo '<a '.$id.' '.$classes.' '.$href.' '.$target.'>'.$content.'</a>';
     23echo '<a ' . $id . ' ' . $classes . ' ' . $href . ' ' . $target . '>' . wp_kses_post( $content ) . '</a>';
  • pixcodes/trunk/shortcodes/templates/col.php

    r1094158 r2841487  
    11<?php
    22$output = '';
    3 $output .= '<div class="col-12  hand-span-'.$size. ' ' .$class.'">'.PHP_EOL;
    4 $output .= $this->get_clean_content( $content ).PHP_EOL;
    5 $output .= '</div>'.PHP_EOL;
     3$output .= '<div class="col-12  hand-span-' . esc_attr( $size ) . ' ' . esc_attr( $class ) . '">' . PHP_EOL;
     4$output .= wp_kses_post( $this->get_clean_content( $content ) ) . PHP_EOL;
     5$output .= '</div>' . PHP_EOL;
    66echo $output;
  • pixcodes/trunk/shortcodes/templates/heading.php

    r1094158 r2841487  
    1515echo '<hgroup ' . $classes . '>
    1616    <h2 class="headline__secondary">' . $subtitle . '</h2>
    17     <h1 class="headline__primary">' . $title . '</h1>
     17    <h1 class="headline__primary">' . wp_kses_post( $title ) . '</h1>
    1818</hgroup>';
  • pixcodes/trunk/shortcodes/templates/hr.php

    r1094158 r2841487  
    33// get needed classes
    44$classes = 'pixcode  pixcode--separator  separator';
    5 $classes .= ! empty( $style ) ? ' separator--' . $style : '';
     5$classes .= ! empty( $style ) ? ' separator--' . esc_attr( $style ) : '';
    66// create class attribute
    77$classes = $classes !== '' ? 'class="' . $classes . '"' : '';
  • pixcodes/trunk/shortcodes/templates/icon.php

    r1208243 r2841487  
    11<?php
    22
    3 $output = '<i class="pixcode  pixcode--icon  icon-' . $name . '  ' . $type . '  ' . $size . '  ' . $class . '"></i>';
     3$output = '<i class="pixcode  pixcode--icon  icon-' . esc_attr( $name ) . '  ' . esc_attr( $type ) . '  ' . esc_attr( $size ) . '  ' . esc_attr( $class ) . '"></i>';
    44
    55if ( ! empty( $link ) ) {
    6     $link = ' href="' . esc_attr( $link ) . '" ';
     6    $link = ' href="' . esc_url( $link ) . '" ';
    77
    88    if ( ! empty( $link_target_blank ) ) {
  • pixcodes/trunk/shortcodes/templates/otreservations.php

    r2036815 r2841487  
    1 <?php if(!empty($disable_weekends)){
    2     $class = $class . " disable-weekends";
     1<?php if ( ! empty( $disable_weekends ) ) {
     2    $class = $class . ' disable-weekends';
    33} ?>
    4 <div class="pixcode  pixcode--otreservations  otreservations  <?php echo $class ?>">
     4<div class="pixcode  pixcode--otreservations  otreservations  <?php echo esc_attr( $class ) ?>">
    55    <div class="otreservation-title-wrapper">
    6         <h4 class="otreservations-title"><?php echo $title ?></h4>
    7         <span class="otreservations-subtitle"><?php _e( 'Powered by OpenTable', 'pixcodes' ) ?></span>
     6        <h4 class="otreservations-title"><?php echo wp_kses_post( $title ) ?></h4>
     7        <span class="otreservations-subtitle"><?php esc_html_e( 'Powered by OpenTable', 'pixcodes' ) ?></span>
    88    </div>
    9     <?php if (!empty($rid) && intval($rid)) : ?>
    10     <form method="get" class="otw-widget-form" action="http://www.opentable.<?php echo $domain_ext;?>/restaurant-search.aspx" target="_blank">
    11         <div class="otw-wrapper">
    12             <div class="otw-date-li otw-input-wrap">
    13                 <label for="date-otreservations"><?php echo (!empty($labels) ? __( 'Date', 'pixcodes' ) : '<i class="icon-calendar"></i>') ?></label>
    14                 <input id="date-otreservations" name="startDate" class="otw-reservation-date" type="text" value="" autocomplete="off">
    15             </div>
    16             <div class="otw-time-wrap otw-input-wrap">
    17                 <label for="time-otreservations"><?php echo (!empty($labels) ? __( 'Time', 'pixcodes' ) : '<i class="icon-clock-o"></i>') ?></label>
    18                 <select id="time-otreservations" name="ResTime" class="otw-reservation-time selectpicker">
    19                     <?php
    20                     //Time Loop
    21                     $inc = 30 * 60;
    22                     $start = ( strtotime( '6AM' ) ); // 6  AM
    23                     $end = ( strtotime( '11:59PM' ) ); // 10 PM
     9    <?php if ( ! empty( $rid ) && intval( $rid ) ) : ?>
     10        <form method="get" class="otw-widget-form"
     11              action="http://www.opentable.<?php echo esc_attr( $domain_ext ); ?>/restaurant-search.aspx"
     12              target="_blank">
     13            <div class="otw-wrapper">
     14                <div class="otw-date-li otw-input-wrap">
     15                    <label for="date-otreservations"><?php echo( ! empty( $labels ) ? esc_html__( 'Date', 'pixcodes' ) : '<i class="icon-calendar"></i>' ) ?></label>
     16                    <input id="date-otreservations" name="startDate" class="otw-reservation-date" type="text" value=""
     17                           autocomplete="off">
     18                </div>
     19                <div class="otw-time-wrap otw-input-wrap">
     20                    <label for="time-otreservations"><?php echo( ! empty( $labels ) ? esc_html__( 'Time', 'pixcodes' ) : '<i class="icon-clock-o"></i>' ) ?></label>
     21                    <select id="time-otreservations" name="ResTime" class="otw-reservation-time selectpicker">
     22                        <?php
     23                        //Time Loop
     24                        $inc   = 30 * 60;
     25                        $start = ( strtotime( '6AM' ) ); // 6  AM
     26                        $end   = ( strtotime( '11:59PM' ) ); // 10 PM
    2427
    2528
    26                     for ( $i = $start; $i <= $end; $i += $inc ) {
    27                         // to the standart format
    28                         $time      = date( 'g:i a', $i );
    29                         $timeValue = date( 'g:ia', $i );
    30                         $default   = "7:00pm";
    31                         echo "<option value=\"$timeValue\" " . ( ( $timeValue == $default ) ? ' selected="selected" ' : "" ) . ">$time</option>" . PHP_EOL;
    32                     }
     29                        for ( $i = $start; $i <= $end; $i += $inc ) {
     30                            // to the standard format
     31                            $time      = date( 'g:i a', $i );
     32                            $timeValue = date( 'g:ia', $i );
     33                            $default   = '7:00pm';
     34                            echo '<option value="' . esc_attr( $timeValue ) . '" ' . ( ( $timeValue == $default ) ? ' selected="selected" ' : '' ) . '>' . esc_html( $time ) . '</option>' . PHP_EOL;
     35                        }
    3336
    34                     ?>
    35                 </select>
     37                        ?>
     38                    </select>
    3639
     40                </div>
     41                <div class="otw-party-size-wrap otw-input-wrap">
     42                    <label for="party-otreservations"><?php echo( ! empty( $labels ) ? esc_html__( 'Party Size', 'pixcodes' ) : '<i class="icon-user"></i>' ) ?></label>
     43                    <select id="party-otreservations" name="partySize" class="otw-party-size-select selectpicker">
     44                        <option value="1"><?php esc_html_e( '1 Person', 'pixcodes_txtd' ); ?></option>
     45                        <option value="2" selected="selected"><?php esc_html_e( '2 People', 'pixcodes_txtd' ); ?></option>
     46                        <option value="3"><?php esc_html_e( '3 People', 'pixcodes_txtd' ); ?></option>
     47                        <option value="4"><?php esc_html_e( '4 People', 'pixcodes_txtd' ); ?></option>
     48                        <option value="5"><?php esc_html_e( '5 People', 'pixcodes_txtd' ); ?></option>
     49                        <option value="6"><?php esc_html_e( '6 People', 'pixcodes_txtd' ); ?></option>
     50                        <option value="7"><?php esc_html_e( '7 People', 'pixcodes_txtd' ); ?></option>
     51                        <option value="8"><?php esc_html_e( '8 People', 'pixcodes_txtd' ); ?></option>
     52                        <option value="9"><?php esc_html_e( '9 People', 'pixcodes_txtd' ); ?></option>
     53                        <option value="10"><?php esc_html_e( '10 People', 'pixcodes_txtd' ); ?></option>
     54                    </select>
     55
     56                </div>
     57
     58                <div class="otw-button-wrap">
     59                    <input type="submit" class="otreservations-submit"
     60                           value="<?php esc_html_e( 'Find a Table', 'pixcodes' ); ?>"/>
     61                </div>
     62                <input type="hidden" name="RestaurantID" class="RestaurantID" value="<?php echo esc_attr( $rid ); ?>">
     63                <input type="hidden" name="rid" class="rid" value="<?php echo esc_attr( $rid ); ?>">
     64                <input type="hidden" name="GeoID" class="GeoID" value="15">
     65                <input type="hidden" name="txtDateFormat" class="txtDateFormat"
     66                       value="<?php echo ! empty( $date_format ) ? esc_attr( $date_format ) : 'MM/DD/YYYY'; ?>">
     67                <input type="hidden" name="RestaurantReferralID" class="RestaurantReferralID"
     68                       value="<?php echo esc_attr( $rid ); ?>">
    3769            </div>
    38             <div class="otw-party-size-wrap otw-input-wrap">
    39                 <label for="party-otreservations"><?php echo (!empty($labels) ? __( 'Party Size', 'pixcodes' ) : '<i class="icon-user"></i>') ?></label>
    40                 <select id="party-otreservations" name="partySize" class="otw-party-size-select selectpicker">
    41                     <option value="1"><?php _e('1 Person', 'pixcodes_txtd'); ?></option>
    42                     <option value="2" selected="selected"><?php _e('2 People', 'pixcodes_txtd'); ?></option>
    43                     <option value="3"><?php _e('3 People', 'pixcodes_txtd'); ?></option>
    44                     <option value="4"><?php _e('4 People', 'pixcodes_txtd'); ?></option>
    45                     <option value="5"><?php _e('5 People', 'pixcodes_txtd'); ?></option>
    46                     <option value="6"><?php _e('6 People', 'pixcodes_txtd'); ?></option>
    47                     <option value="7"><?php _e('7 People', 'pixcodes_txtd'); ?></option>
    48                     <option value="8"><?php _e('8 People', 'pixcodes_txtd'); ?></option>
    49                     <option value="9"><?php _e('9 People', 'pixcodes_txtd'); ?></option>
    50                     <option value="10"><?php _e('10 People', 'pixcodes_txtd'); ?></option>
    51                 </select>
    52 
    53             </div>
    54 
    55             <div class="otw-button-wrap">
    56                 <input type="submit" class="otreservations-submit" value="<?php _e( 'Find a Table', 'pixcodes' ); ?>" />
    57             </div>
    58             <input type="hidden" name="RestaurantID" class="RestaurantID" value="<?php echo $rid; ?>">
    59             <input type="hidden" name="rid" class="rid" value="<?php echo $rid; ?>">
    60             <input type="hidden" name="GeoID" class="GeoID" value="15">
    61             <input type="hidden" name="txtDateFormat" class="txtDateFormat" value="<?php echo ! empty( $date_format ) ? $date_format : "MM/DD/YYYY"; ?>">
    62             <input type="hidden" name="RestaurantReferralID" class="RestaurantReferralID" value="<?php echo $rid; ?>">
    63         </div>
    64     </form>
     70        </form>
    6571    <?php else : ?>
    66         <span class="otreservations-error"><?php _e('You need to provide us with a valid numeric OpenTable restaurant ID.', 'pixcodes') ?></span>
     72        <span class="otreservations-error"><?php esc_html_e( 'You need to provide us with a valid numeric OpenTable restaurant ID.', 'pixcodes' ) ?></span>
    6773    <?php endif; ?>
    6874</div>
  • pixcodes/trunk/shortcodes/templates/quote.php

    r1094158 r2841487  
    11<?php
    2     // get needed classes
    3     $classes = 'pixcode  pixcode--testimonial  testimonial';
    4     $classes.= !empty($text_size) ? ' testimonial--'.$text_size.'-text' : '';
    5     // create class attribute
    6     $classes = $classes !== '' ? 'class="'.$classes.'"' : '';
     2// get needed classes
     3$classes = 'pixcode  pixcode--testimonial  testimonial';
     4$classes .= ! empty( $text_size ) ? ' testimonial--' . esc_attr( $text_size ) . '-text' : '';
     5// create class attribute
     6$classes = $classes !== '' ? 'class="' . esc_attr( $classes ) . '"' : '';
    77
    88?>
    99<blockquote <?php echo $classes; ?>>
    10     <div class="testimonial__content"><?php echo $this->get_clean_content($content); ?></div>
     10    <div class="testimonial__content"><?php echo wp_kses_post( $this->get_clean_content( $content ) ); ?></div>
    1111
    12     <?php if(!empty($author)) : ?>
     12    <?php if ( ! empty( $author ) ) {
     13        if ( ! empty( $link ) ) { ?>
     14            <a href="<?php echo esc_url( $link ); ?>">
     15        <?php } ?>
    1316
    14         <?php if(!empty($link)) : ?>
    15             <a href="<?php echo $link; ?>">
    16         <?php endif ?>
     17        <div class="testimonial__author-name"><?php echo esc_html( $author ); ?></div>
    1718
    18             <div class="testimonial__author-name"><?php echo $author; ?></div>
    19        
    20         <?php if(!empty($link)) : ?>
    21             </a>
    22         <?php endif ?>
     19        <?php if ( ! empty( $link ) ) { ?>
     20            </a>
     21        <?php }
    2322
    24         <?php if(!empty($author_title)) : ?>
    25             <div class="testimonial__author-title"><?php echo $author_title; ?></div>
    26         <?php endif; ?>
    27 
    28     <?php endif; ?>
     23        if ( ! empty( $author_title ) ) { ?>
     24            <div class="testimonial__author-title"><?php echo esc_html( $author_title ); ?></div>
     25        <?php }
     26    } ?>
    2927</blockquote>
  • pixcodes/trunk/shortcodes/templates/restaurantmenu.php

    r1178200 r2841487  
    3232//some special styles
    3333$menu_style_class = '';
    34 if (isset($type) && !empty($type)) {
     34if ( isset( $type ) && ! empty( $type ) ) {
    3535    $menu_style_class = 'menu-list__' . $type;
    3636}
    3737
    3838//remove <p> - we just need the </p>s to split by
    39 $menu = str_replace( "<p>", "", $menu );
     39$menu = str_replace( '<p>', '', $menu );
    4040
    4141/**
     
    5050
    5151//open the wrapper and let the show begin
    52 $output .= '<div class="menu-list ' . $menu_style_class . '">' . PHP_EOL;
     52$output .= '<div class="menu-list ' . esc_attr( $menu_style_class ) . '">' . PHP_EOL;
    5353
    5454//remember if we have outputted the open tag
    55 $opened_list            = false;
    56 $opened_product         = false;
    57 $opened_product_highlight = false;
     55$opened_list                    = false;
     56$opened_product                 = false;
     57$opened_product_highlight       = false;
    5858$opened_product_highlight_title = '';
    59 $opened_description     = false;
    60 $number_of_descriptions = 0;
     59$opened_description             = false;
     60$number_of_descriptions         = 0;
    6161
    6262//first lets clean the lines of empty characters
     
    9595        //since we have found a product we need to make sure that the product list is started
    9696        if ( false === $opened_list ) {
    97             $output .= '<ul class="menu-list__items">' . PHP_EOL;
     97            $output      .= '<ul class="menu-list__items">' . PHP_EOL;
    9898            $opened_list = true;
    9999        }
     
    102102        if ( true === $opened_product ) {
    103103            //if there was a highlight title we need to close the wrapper
    104             if (true === $opened_product_highlight) {
     104            if ( true === $opened_product_highlight ) {
    105105                $output .= '</div>' . PHP_EOL;
    106106
     
    116116
    117117        //we have a new product so we better open a new wrapper
    118         $output .= '<li class="menu-list__item">' . PHP_EOL;
     118        $output         .= '<li class="menu-list__item">' . PHP_EOL;
    119119        $opened_product = true;
    120120
    121121        //know lets check if we have a highlight
    122         if ($opened_product_highlight_title !== '') {
     122        if ( $opened_product_highlight_title !== '' ) {
    123123            $output .= '<div class="menu-list__item-highlight-wrapper">' . PHP_EOL;
    124             $output .= '<span class="menu-list__item-highlight-title">' . $opened_product_highlight_title . '</span>' . PHP_EOL;
    125 
    126             $opened_product_highlight = true;
     124            $output .= '<span class="menu-list__item-highlight-title">' . wp_kses_data( $opened_product_highlight_title ) . '</span>' . PHP_EOL;
     125
     126            $opened_product_highlight       = true;
    127127            $opened_product_highlight_title = ''; // since we outputed it make it empty
    128128        }
     
    130130        // we need to do some look-ahead to see if we have a product with subproducts - multiple description-price groups
    131131        $number_of_descriptions = 0;
    132         $number_of_prices = 0;
    133         $idx = $key + 1;
     132        $number_of_prices       = 0;
     133        $idx                    = $key + 1;
    134134        while ( $idx < count( $lines ) && 0 !== strpos( $lines[ $idx ], TITLE_MARKER ) && 0 !== strpos( $lines[ $idx ], SECTION_MARKER ) ) {
    135135            if ( 0 === strpos( $lines[ $idx ], DESCRIPTION_MARKER ) ) {
     
    137137            }
    138138
    139             if ( 0 === strpos( $lines[ $idx ], PRICE_MARKER ) ) {
    140                 $number_of_prices ++;
    141             }
     139            if ( 0 === strpos( $lines[ $idx ], PRICE_MARKER ) ) {
     140                $number_of_prices ++;
     141            }
    142142
    143143            $idx ++;
    144144        }
    145145
    146         $output .= '<h4 class="menu-list__item-title">';
    147 
    148         //now output the title without the first 2 characters
    149 
    150         //check if there is a description at most and at least a price => show the dots
    151         if( $number_of_descriptions < 2 && $number_of_prices > 0  && isset($type) && $type == 'dotted' ) {
    152             $output .= '<span class="item_title">' . substr( $line, 2 ) . '</span><span class="dots"></span>';
    153         } else {
    154             $output .= substr( $line, 2 );
    155         }
    156 
    157         $output .= '</h4>' . PHP_EOL;
     146        $output .= '<h4 class="menu-list__item-title">';
     147
     148        //now output the title without the first 2 characters
     149
     150        //check if there is a description at most and at least a price => show the dots
     151        if ( $number_of_descriptions < 2 && $number_of_prices > 0 && isset( $type ) && $type == 'dotted' ) {
     152            $output .= '<span class="item_title">' . wp_kses_data( substr( $line, 2 ) ) . '</span><span class="dots"></span>';
     153        } else {
     154            $output .= wp_kses_data( substr( $line, 2 ) );
     155        }
     156
     157        $output .= '</h4>' . PHP_EOL;
    158158
    159159        continue;
     
    164164        //first close any opened description
    165165        if ( true === $opened_description ) {
    166             $output .= '</p>' . PHP_EOL;
     166            $output             .= '</p>' . PHP_EOL;
    167167            $opened_description = false;
    168168        }
    169169        //output the description without the first 2 characters
    170         $output .= '<p class="menu-list__item-desc"><span class="desc__content">' . substr( $line, 2 ) . '</span>';
     170        $output             .= '<p class="menu-list__item-desc"><span class="desc__content">' . wp_kses_post( substr( $line, 2 ) ) . '</span>';
    171171        $opened_description = true;
    172172
    173173        if ( $number_of_descriptions < 2 ) {
    174174            //we can safely close the description paragraph as the price will align with the product title not the description
    175             $output .= '</p>' . PHP_EOL;
     175            $output             .= '</p>' . PHP_EOL;
    176176            $opened_description = false;
    177177        }
     
    183183    if ( 0 === strpos( $line, PRICE_MARKER ) ) {
    184184        //output the price without the first 2 characters
    185         if ( isset($type) && $type == 'dotted' ) $output .= '<span class="dots"></span>';
    186         $output .= '<span class="menu-list__item-price">' . substr( $line, 2 ) . '</span>';
     185        if ( isset( $type ) && $type == 'dotted' ) {
     186            $output .= '<span class="dots"></span>';
     187        }
     188        $output .= '<span class="menu-list__item-price">' . wp_kses_data( substr( $line, 2 ) ) . '</span>';
    187189        //close any opened description
    188190        if ( true === $opened_description ) {
    189             $output .= '</p>' . PHP_EOL;
     191            $output             .= '</p>' . PHP_EOL;
    190192            $opened_description = false;
    191193        }
     
    198200        //first we need to know if there are any lists, products or descriptions opened and close them
    199201        if ( true === $opened_description ) {
    200             $output .= '</p>' . PHP_EOL;
     202            $output             .= '</p>' . PHP_EOL;
    201203            $opened_description = false;
    202204        }
     
    205207        if ( true === $opened_product ) {
    206208            //if there was a highlight title we need to close the wrapper
    207             if (true === $opened_product_highlight) {
     209            if ( true === $opened_product_highlight ) {
    208210                $output .= '</div>' . PHP_EOL;
    209211
    210212                //empty it so everybody knows we no longer have a highlight
    211213                $opened_product_highlight_title = '';
    212                 $opened_product_highlight = false;
    213             }
    214 
    215             $output .= '</li>' . PHP_EOL;
     214                $opened_product_highlight       = false;
     215            }
     216
     217            $output         .= '</li>' . PHP_EOL;
    216218            $opened_product = false;
    217219        }
    218220
    219221        if ( true === $opened_list ) {
    220             $output .= '</ul>' . PHP_EOL;
     222            $output      .= '</ul>' . PHP_EOL;
    221223            $opened_list = false;
    222224        }
    223225
    224226        //now output the section title without the first character
    225         $output .= '<h2 class="menu-list__title">' . substr( $line, 1 ) . '</h2>' . PHP_EOL;
     227        $output .= '<h2 class="menu-list__title">' . wp_kses_data( substr( $line, 1 ) ) . '</h2>' . PHP_EOL;
    226228
    227229        continue;
     
    232234//close any previously opened descriptions
    233235if ( true === $opened_description ) {
    234     $output .= '</p>' . PHP_EOL;
     236    $output             .= '</p>' . PHP_EOL;
    235237    $opened_description = false;
    236238}
     
    239241if ( true === $opened_product ) {
    240242    //if there was a highlight title we need to close the wrapper
    241     if (true === $opened_product_highlight) {
     243    if ( true === $opened_product_highlight ) {
    242244        $output .= '</div>' . PHP_EOL;
    243245
    244246        //empty it so everybody knows we no longer have a highlight
    245247        $opened_product_highlight_title = '';
    246         $opened_product_highlight = false;
    247     }
    248 
    249     $output .= '</li>' . PHP_EOL;
     248        $opened_product_highlight       = false;
     249    }
     250
     251    $output         .= '</li>' . PHP_EOL;
    250252    $opened_product = false;
    251253}
    252254
    253255if ( true === $opened_list ) {
    254     $output .= '</ul>' . PHP_EOL;
     256    $output      .= '</ul>' . PHP_EOL;
    255257    $opened_list = false;
    256258}
  • pixcodes/trunk/shortcodes/templates/row.php

    r1094158 r2841487  
    11<?php
    22$output = '';
    3 $output .= '<div class="pixcode  pixcode--row  row  '.$class.'">'.PHP_EOL;
    4 $output .= $this->get_clean_content( $content ).PHP_EOL;
    5 $output .= '</div>'.PHP_EOL;
     3$output .= '<div class="pixcode  pixcode--row  row  ' . esc_attr( $class ) . '">' . PHP_EOL;
     4$output .= wp_kses_post( $this->get_clean_content( $content ) ) . PHP_EOL;
     5$output .= '</div>' . PHP_EOL;
    66echo $output;
  • pixcodes/trunk/shortcodes/templates/slider.php

    r1094158 r2841487  
    11<?php
    2 $return_string = '<div class="pixslider js-pixslider" ' . $navigation_style .' data-slidertransition="' . $custom_slider_transition . '">';
     2$return_string = '<div class="pixslider js-pixslider" ' . esc_html( $navigation_style ) . ' data-slidertransition="' . esc_html( $custom_slider_transition ) . '">';
    33
    4 $return_string .= do_shortcode($content);
     4$return_string .= do_shortcode( $content );
    55
    66$return_string .= '</div>';
  • pixcodes/trunk/shortcodes/templates/tab.php

    r1094158 r2841487  
    1 <title><?php echo do_shortcode( $title ); ?></title>
    2 <icon><?php echo $icon ?></icon>
    3 <body><?php echo do_shortcode( $content ); ?></body>
     1<title><?php echo wp_kses_data( do_shortcode( $title ) ); ?></title>
     2<icon><?php echo esc_html( $icon ) ?></icon>
     3<body><?php echo wp_kses_post( do_shortcode( $content ) ); ?></body>
  • pixcodes/trunk/shortcodes/templates/tabs.php

    r1094158 r2841487  
    11<?php $fade = 'fade '; ?>
    22<div class="pixcode  pixcode--tabs">
    3     <ul class="pixcode--tabs__nav  nav  nav-tabs">
    4         <?php
    5         preg_match_all( '#<title>(.*?)</title>#', $this->get_clean_content( $content ), $titles );
    6         $ui_tabs_keys = array();
    7         if ( !empty($titles) && isset($titles[1]) ) {
    8             foreach ( $titles[1] as $key => $title ) {
    9                 $ui_tabs_keys[$key] = uniqid( 'ui-tab-'.$key ); ?>
    10                 <li class="<?php if ($key == 0) { echo 'active'; } ?>">
    11                     <?php echo '<a href="#'.$ui_tabs_keys[$key].'" data-toggle="tab">';
    12                         if (!empty($icons[$key]) ) {
    13                             echo '<i class="pixcode pixcode--icon '. $icons[$key] .'"></i>';
    14                         }
    15                         echo $title;
    16                     echo '</a>'; ?>
    17                 </li>
    18             <?php }
    19         } ?>
    20     </ul>
    21     <div class="pixcode--tabs__content  tab-content">
    22         <?php
    23         if (!empty($contents) && isset($contents[1])) {
    24             foreach ($contents[1] as $key => $value) { ?>
    25                 <div class="tab-pane <?php if ($key == 0) { echo 'active'; } ?>" id="<?php echo $ui_tabs_keys[$key]; ?>">
    26                     <?php echo $this->get_clean_content($value) ?>
    27                 </div>
    28             <?php }
    29         } ?>
    30     </div>
    31     <hr class="separator  separator--striped">
     3    <ul class="pixcode--tabs__nav  nav  nav-tabs">
     4        <?php
     5        preg_match_all( '#<title>(.*?)</title>#', $this->get_clean_content( $content ), $titles );
     6        $ui_tabs_keys = array();
     7        if ( ! empty( $titles ) && isset( $titles[1] ) ) {
     8            foreach ( $titles[1] as $key => $title ) {
     9                $ui_tabs_keys[ $key ] = uniqid( 'ui-tab-' . $key ); ?>
     10                <li class="<?php if ( $key == 0 ) {
     11                    echo 'active';
     12                } ?>">
     13                    <?php echo '<a href="#' . esc_attr( $ui_tabs_keys[ $key ] ) . '" data-toggle="tab">';
     14                    if ( ! empty( $icons[ $key ] ) ) {
     15                        echo '<i class="pixcode pixcode--icon ' . esc_attr( $icons[ $key ] ) . '"></i>';
     16                    }
     17                    echo wp_kses_data( $title );
     18                    echo '</a>'; ?>
     19                </li>
     20            <?php }
     21        } ?>
     22    </ul>
     23    <div class="pixcode--tabs__content  tab-content">
     24        <?php
     25        if ( ! empty( $contents ) && isset( $contents[1] ) ) {
     26            foreach ( $contents[1] as $key => $value ) { ?>
     27                <div class="tab-pane <?php if ( $key == 0 ) {
     28                    echo 'active';
     29                } ?>" id="<?php echo esc_attr( $ui_tabs_keys[ $key ] ); ?>">
     30                    <?php echo wp_kses_post( $this->get_clean_content( $value ) ) ?>
     31                </div>
     32            <?php }
     33        } ?>
     34    </div>
     35    <hr class="separator  separator--striped">
    3236</div>
  • pixcodes/trunk/shortcodes/templates/team-member.php

    r1094158 r2841487  
    1 <div class="pixcode  pixcode--team-member  team-member  <?php echo $class ?>">
     1<div class="pixcode  pixcode--team-member  team-member  <?php echo esc_attr( $class ) ?>">
    22
    3     <?php if ( !empty($image) ) : ?>
     3    <?php if ( ! empty( $image ) ) : ?>
    44
    55        <div class="team-member__image">
    66
    7             <?php if ( !empty($imagelink) ) : ?>
     7            <?php if ( ! empty( $imagelink ) ) : ?>
    88
    9                 <a href="<?php echo $imagelink ?>" class="team-member__image__link" title="More about <?php echo !empty($name) ? $name : ''; ?>">
    10                     <div class="team-member__image__container">
    11                         <img src="<?php echo $image; ?>" alt="<?php echo !empty($name) ? $name : ''; ?>">
    12                     </div>
    13                     <div class="team-member__profile">
    14                         <div class="team-member__profile__table">
     9                <a href="<?php echo esc_url( $imagelink ) ?>" class="team-member__image__link"
     10                   title="More about <?php echo ! empty( $name ) ? esc_attr( $name ) : ''; ?>">
     11                    <div class="team-member__image__container">
     12                        <img src="<?php echo esc_url( $image ); ?>" alt="<?php echo ! empty( $name ) ? esc_attr( $name ) : ''; ?>">
     13                    </div>
     14                    <div class="team-member__profile">
     15                        <div class="team-member__profile__table">
    1516                            <span class="team-member__profile__cell">
    1617                               <i class="shc big icon-link"></i>
    1718                            </span>
    18                         </div>
    19                     </div>
    20                 </a>
     19                        </div>
     20                    </div>
     21                </a>
    2122
    22             <?php else: ?>
     23            <?php else: ?>
    2324
    24                 <div class="team-member__image__link">
    25                     <div class="team-member__image__container">
    26                         <img src="<?php echo $image; ?>" alt="<?php echo !empty($name) ? $name : ''; ?>">
    27                     </div>
    28                 </div>
     25                <div class="team-member__image__link">
     26                    <div class="team-member__image__container">
     27                        <img src="<?php echo esc_url( $image ); ?>" alt="<?php echo ! empty( $name ) ? esc_attr( $name ) : ''; ?>">
     28                    </div>
     29                </div>
    2930
    30             <?php endif; ?>
     31            <?php endif; ?>
    3132
    32         </div>
    33     <?php endif; ?>
     33        </div>
     34    <?php endif; ?>
    3435
    35     <div class="team-member__header">
    36         <?php if ( !empty($name) ) : ?>
    37            <h5 class="team-member__name"><?php echo $name; ?></h5>
    38         <?php endif; ?>
    39         <?php if ( !empty($title) ) : ?>
    40             <h6 class="team-member__position"><?php echo $title; ?></h6>
    41         <?php endif;?>
    42     </div>
     36    <div class="team-member__header">
     37        <?php if ( ! empty( $name ) ) : ?>
     38            <h5 class="team-member__name"><?php echo esc_html( $name ); ?></h5>
     39        <?php endif; ?>
     40        <?php if ( ! empty( $title ) ) : ?>
     41            <h6 class="team-member__position"><?php echo esc_html( $title ); ?></h6>
     42        <?php endif; ?>
     43    </div>
    4344
    44     <div class="team-member__description">
    45         <?php echo $this->get_clean_content($content); ?>
    46     </div>
     45    <div class="team-member__description">
     46        <?php echo wp_kses_post( $this->get_clean_content( $content ) ); ?>
     47    </div>
    4748
    48     <hr class="separator separator--striped"/>
     49    <hr class="separator separator--striped"/>
    4950
    50     <div class="team-member__footer">
    51         <ul class="team-member__social-links-list">
    52             <?php if ( !empty($social_twitter) ) : ?>
    53                 <li class="team-member__social-link">
    54                     <a class="team-member__social-link__link" href="<?php echo $social_twitter; ?>" target="_blank">
    55                         <i class="shc  shc--icon  icon-twitter"></i>
    56                     </a>
    57                 </li>
    58             <?php endif; ?>
    59             <?php if ( !empty($social_facebook) ) : ?>
    60                 <li class="team-member__social-link">
    61                     <a class="team-member__social-link__link" href="<?php echo $social_facebook; ?>" target="_blank">
    62                         <i class="shc  shc--icon  icon-facebook"></i>
    63                     </a>
    64                 </li>
    65             <?php endif; ?>
    66             <?php if ( !empty($social_linkedin) ) : ?>
    67                 <li class="team-member__social-link">
    68                     <a class="team-member__social-link__link" href="<?php echo $social_linkedin; ?>" target="_blank">
    69                         <i class="shc  shc--icon  icon-linkedin"></i>
    70                     </a>
    71                 </li>
    72             <?php endif; ?>
    73             <?php if ( !empty($social_pinterest) ) : ?>
    74                 <li class="team-member__social-link">
    75                     <a class="team-member__social-link__link" href="<?php echo $social_pinterest; ?>" target="_blank">
    76                         <i class="shc  shc--icon  icon-pinterest"></i>
    77                     </a>
    78                 </li>
    79             <?php endif; ?>
    80         </ul>
    81     </div>
     51    <div class="team-member__footer">
     52        <ul class="team-member__social-links-list">
     53            <?php if ( ! empty( $social_twitter ) ) : ?>
     54                <li class="team-member__social-link">
     55                    <a class="team-member__social-link__link" href="<?php echo esc_url( $social_twitter ); ?>" target="_blank">
     56                        <i class="shc  shc--icon  icon-twitter"></i>
     57                    </a>
     58                </li>
     59            <?php endif; ?>
     60            <?php if ( ! empty( $social_facebook ) ) : ?>
     61                <li class="team-member__social-link">
     62                    <a class="team-member__social-link__link" href="<?php echo esc_attr( $social_facebook ); ?>" target="_blank">
     63                        <i class="shc  shc--icon  icon-facebook"></i>
     64                    </a>
     65                </li>
     66            <?php endif; ?>
     67            <?php if ( ! empty( $social_linkedin ) ) : ?>
     68                <li class="team-member__social-link">
     69                    <a class="team-member__social-link__link" href="<?php echo esc_attr( $social_linkedin ); ?>" target="_blank">
     70                        <i class="shc  shc--icon  icon-linkedin"></i>
     71                    </a>
     72                </li>
     73            <?php endif; ?>
     74            <?php if ( ! empty( $social_pinterest ) ) : ?>
     75                <li class="team-member__social-link">
     76                    <a class="team-member__social-link__link" href="<?php echo esc_attr( $social_pinterest ); ?>" target="_blank">
     77                        <i class="shc  shc--icon  icon-pinterest"></i>
     78                    </a>
     79                </li>
     80            <?php endif; ?>
     81        </ul>
     82    </div>
    8283</div>
  • pixcodes/trunk/shortcodes/templates/testimonials.php

    r1094158 r2841487  
    22
    33$query_args = array(
    4     'post_type' => 'testimonial',
    5     'posts_per_page' => -1,
    6     'orderby' => $orderby,
    7     'order' => $order
     4    'post_type'      => 'testimonial',
     5    'posts_per_page' => - 1,
     6    'orderby'        => esc_attr( $orderby ),
     7    'order'          => esc_attr( $order ),
    88);
     9$query = new WP_Query( $query_args );
    910
    10 // if ( !empty( $include ) ) {
    11 //     $include_array = explode( ',', $include );
    12 //     $query_args['posts__in'] = $include_array;
    13 // }
    14 // if ( !empty( $exclude ) ) {
    15 //     $exclude_array = explode( ',', $exclude );
    16 //     $query_args['post__not_in'] = $exclude_array;
    17 // }
    18 
    19 $query = new WP_Query($query_args);
    20 
    21 if ( $query-> have_posts() ) : ?>
     11if ( $query->have_posts() ) : ?>
    2212    <div class="testimonials_slide">
    2313        <ul class="slides">
     
    2515                <li class="slide">
    2616                    <?php
    27                     $author_name = get_post_meta(get_the_ID(), WPGRADE_PREFIX. 'author_name', true);
    28                     $author_function = get_post_meta(get_the_ID(), WPGRADE_PREFIX. 'author_function', true);
    29                     $author_link = get_post_meta(get_the_ID(), WPGRADE_PREFIX. 'author_link', true);
     17                    $author_name     = get_post_meta( get_the_ID(), WPGRADE_PREFIX . 'author_name', true );
     18                    $author_function = get_post_meta( get_the_ID(), WPGRADE_PREFIX . 'author_function', true );
     19                    $author_link     = get_post_meta( get_the_ID(), WPGRADE_PREFIX . 'author_link', true );
    3020                    ?>
    3121                    <blockquote>
     
    3323                        <div class="testimonial_author">
    3424
    35                             <?php if(!empty($author_link)) { ?>
    36                             <a href="<?php echo $author_link; ?>" target="_blank">
     25                            <?php if ( ! empty( $author_link ) ) { ?>
     26                            <a href="<?php echo esc_url( $author_link ); ?>" target="_blank">
    3727                                <?php }
    38                                 if ( !empty($author_name)) { ?>
    39                                     <span class="author_name"><?php echo $author_name; ?></span>
     28                                if ( ! empty( $author_name ) ) { ?>
     29                                    <span class="author_name"><?php echo esc_html( $author_name ); ?></span>
    4030                                <?php }
    41                                 if ( !empty($author_function) ) {?>
    42                                     , <span class="author_function"><?php echo $author_function; ?></span>
     31                                if ( ! empty( $author_function ) ) { ?>
     32                                    , <span class="author_function"><?php echo esc_html( $author_function ); ?></span>
    4333                                <?php }
    44                                 if(!empty($author_link)) { ?>
     34                                if ( ! empty( $author_link ) ) { ?>
    4535                            </a>
    4636                        <?php } ?>
     
    4939                    </blockquote>
    5040                </li>
    51             <?php endwhile;?>
     41            <?php endwhile; ?>
    5242        </ul>
    5343    </div>
    54 <?php endif; wp_reset_query();
     44<?php endif;
     45wp_reset_query();
Note: See TracChangeset for help on using the changeset viewer.