From 0095e41b4661c9b0dd9dd63083d8b03f617c1490 Mon Sep 17 00:00:00 2001 From: Harry Bomrah Date: Fri, 25 Jul 2014 20:05:06 +0800 Subject: [PATCH] changed orbit bar for backend ... added preview to layouts for widgets and index ... also fixed alot of bugs.. --- app/assets/images/select2/select2-spinner.gif | Bin 0 -> 1849 bytes app/assets/images/select2/select2.png | Bin 0 -> 613 bytes app/assets/images/select2/select2x2.png | Bin 0 -> 845 bytes app/assets/javascripts/lib/items/items.js.erb | 92 +- app/assets/javascripts/select2/select2.js | 3508 +++++++++++++++++ app/assets/javascripts/select2/select2.min.js | 23 + app/assets/javascripts/validator.js | 2 +- .../lib/orbit_bar/orbit-bar.scss.erb | 2 +- .../stylesheets/select2/select2.css.erb | 704 ++++ app/controllers/application_controller.rb | 4 + app/controllers/page_parts_controller.rb | 73 +- app/controllers/pages_controller.rb | 39 +- .../modules/announcement/info.json | 21 + .../modules/announcement/thumbs/1.png | Bin 0 -> 125636 bytes .../widgets/breadcrumb_widget/info.json | 9 + .../widgets/breadcrumb_widget/thumbs/1.png | Bin 0 -> 125636 bytes app/views/admin/items/index.html.erb | 3 + app/views/layouts/_left_menu.html.erb | 31 - app/views/layouts/_orbit_bar_backend.html.erb | 6 - app/views/layouts/_right_menu.html.erb | 89 - app/views/layouts/back_end.html.erb | 2 +- app/views/layouts/basic_back_end.html.erb | 2 +- app/views/layouts/structure.html.erb | 2 +- app/views/page_parts/_widget_form.html.erb | 19 + app/views/page_parts/edit.html.erb | 6 +- app/views/page_parts/edit_sub_part.html.erb | 6 +- app/views/page_parts/new.html.erb | 6 +- app/views/pages/_form.html.erb | 21 +- config/initializers/template.rb | 2 + 29 files changed, 4430 insertions(+), 242 deletions(-) create mode 100755 app/assets/images/select2/select2-spinner.gif create mode 100755 app/assets/images/select2/select2.png create mode 100755 app/assets/images/select2/select2x2.png create mode 100755 app/assets/javascripts/select2/select2.js create mode 100755 app/assets/javascripts/select2/select2.min.js create mode 100755 app/assets/stylesheets/select2/select2.css.erb create mode 100644 app/templates/orbit_bootstrap/modules/announcement/info.json create mode 100644 app/templates/orbit_bootstrap/modules/announcement/thumbs/1.png create mode 100644 app/templates/orbit_bootstrap/widgets/breadcrumb_widget/info.json create mode 100644 app/templates/orbit_bootstrap/widgets/breadcrumb_widget/thumbs/1.png delete mode 100644 app/views/layouts/_left_menu.html.erb delete mode 100644 app/views/layouts/_orbit_bar_backend.html.erb delete mode 100644 app/views/layouts/_right_menu.html.erb diff --git a/app/assets/images/select2/select2-spinner.gif b/app/assets/images/select2/select2-spinner.gif new file mode 100755 index 0000000000000000000000000000000000000000..5b33f7e54f4e55b6b8774d86d96895db9af044b4 GIT binary patch literal 1849 zcma*odr(tX9tZI2z31lM+(&YVk%mZ}5P~KlG2s=WSbGzm0!x7^P##Mnh7t-jP!X0Q zk_SQ}Po-L1tlDK;6l?(>v)e5ZBQx4|Y-Q?nr@Px3?9h(3ZWr3^tj=`TP57gKr87N$ zp2wWee1GRRCwo_xahnw)5cxNPJbCg2L6DV|6`#+yw6v6!mDS$f9-JvFD^n;GQ&UrZ zzh5jCkByB101O60U0q#p_1BM>Cv-vP?&s4@g_((4_1L=L$(a91)0=J91Gas#R{McE znYG^9*0A5YZ>#;~+Wkn(W5B0^yELIYLP!K}mB~<)AM@1&nqekynuaEGqPrzoH|KodRXJy)%+w_fu3nE5>@Bd_b zqC$EQ;{c`T&?EsNO|igL9gC7Ygxv?aQUEXMq?~>wg{EyW;VcJ37CUF#HjrT=KQO_* zS>M9yydXk18D(+QDJ1>r);Lav_uYKp$T?4vr{Q$lTo&pKv^?(>L-)G2*lwH!Ah7k? z7oH<8h-(KTKt5V6$8gF)C7Io&P5=SjTh)=zV=E2EUhQZP##L8S{d%UK>>+y82>+FV+#^BzW7u3F)Bb>=lYQ%%j`F>ASe zo*cw@V#u6T`A2He;70mR(V&iV&-7{qP~=SRf&jm9-T{*ZeZ}$rd0#6c&fLG^xJcf5 z+p<`wJYgW+_s*V{uI$nMB;%8`S_3>PfGOj3Rq}@Cx^+j?rk92fANSFDBYnOqQ>Vdj z)(|$AhP4t&Lb=Gvo2#3Gl%9<=Gv`Mz?Po@P4iLF!x}GUWJICDlFk-hS^Whyh7x~VH z@0vD1>HYD4&e+~yzS*-sFR{9`{QEEZO1zg7>R&7cHts-6j!xHVdA8eI+ZlVzd%`es zJT@$#GX(gvCJ1oJN%yLBK}{V=V;seo;!w|Yte!W1%5qLNFWqvZW>h&IiH+oPT=b@E zPhGzv5=(Un*X>v`>%8h_nj^NdYcE6NHS_ifkCV$*D)Tqrbu`s;<=t<4 zAHNqNV?6(g<1PY-w@#I-WYFViz?9TrkMr)u0g`O`u|>T;k|2sV*YF^punvT;$SuTy{j3Gv)yqD!R_CF>yR)MzmmYS5v+~R zXAdD%ng9?df;wd8GxR#%3O+gz};Vo;)sK%Bj-q>Oq%R7JU-KD?vYu>#2UjaDo z&8$>5xW~?KPD_#XFToU1hIb*VOMidUr6iYiO0N|i-7s`T8!cFT`rN!^1Pt78J93i6 z5HI1wIM$94m{3SLDvISDe6$ZG1;eq_D9RTaaC>=cO{@Bs>$IlPCPJJ$h$)-3vzNUQ6OsN#_zWxey!_9%hxwH2_dEJi=yY|1c7nDm2_Lm!Cof8-R_+9UkS zcBE(o47yE)oMR(Q=dp1a2wTX5KvvGyLqlWTa7V&!A*|w|)ax~1_~aJ0=_Lilg*0iQk7#ZD EAHN$8j{pDw literal 0 HcmV?d00001 diff --git a/app/assets/images/select2/select2.png b/app/assets/images/select2/select2.png new file mode 100755 index 0000000000000000000000000000000000000000..1d804ffb99699b9e030f1010314de0970b5a000d GIT binary patch literal 613 zcmV-r0-F7aP)#WY!I$JQV$)A5aAS1BM||2XVJl=+L1^1S1H% zM-&lx?NZpUrHhn>fk<>POqf2sh40}xxGZfc+t+#Eb(qHy9_3*1(U%t9t)QDnI#YAL(|ACV(>)>6WD-t!8tutHkdb^#3`HzoJG3A2@T`% zA|K@o*b!`R#(7)PWrMFn2))Ca3MR4(zaT`Zr61*kZK5NPnZwQszxh$fyv3?&4c>$q z2m=+yc0dRXRAsPDxF6sD;@rK4JGdR_``1S~o6Xi@2&aR6hcSrEp9HVRzEqVDqBn<1%hR=D4e1f^ra^A|34Cjc=Gny{F(o#MrvPYgZuTJOz(n)-F<| zj()qR;C={)N<0RRvDZ^@6ND+W*}gh-Lip(MDt!(zMSO)!j2j+*hxgzC-e3$@(O2p* zu;+gddm(cZwXTCLx*Ky4THOa*^b^F`woveIeCK^0aR|TJ00000NkvXXu0mjfA#WC6 literal 0 HcmV?d00001 diff --git a/app/assets/images/select2/select2x2.png b/app/assets/images/select2/select2x2.png new file mode 100755 index 0000000000000000000000000000000000000000..4bdd5c961d452c49dfa0789c2c7ffb82c238fc24 GIT binary patch literal 845 zcmV-T1G4;yP)upQ6WKflyv?C|ADVW!U!t`EpA+x zB)5#EjWk-_X77YJZtQo`E0SF)^1bZr%)B7Cd`*OK*r z5WG-7e-R9G9^69ksDt29&oyHqxPSt|-S>xi3%PTd+GjY+BGF|nWC(7D-sd(kxqd9~ zS@2YF5vB+>dP8+$l^{oO3-lEWiGA*QIU)Wds#9M6RZ9N zcQ4y4)xqQOxD=vwu%7cz1nY#$lT&y8HCmkWgpwQP#3dhnYj9|2aS_R}IUF_^6s#$= zTm%~>A#oM?KIg$kh=<`gJkeoHa2LrulVy$Yx+N_0R3$4I!R*0677f(FKqm`2_o4~W z0h}fQZ`lC^1A+m;fM7uI(R1`S0KtG@KrkQ}5DW+&@cTnDVIow56KciMk7a899t0bC zC1KI{TsMe5NAR%GD_5`B-@ad4k~K3SO%H z_M31|`HV?E6)u$E3c&*<*n20+V@mRCop>R5;DWuZCmjSo7p@R&OYl^@G"), - select = $(""); + select = $(""), + do_select = false; $.each(data.layouts,function(i,layout){ - select.append(""); + if(typeof layout.length == "number"){ + select.append(""); + }else if(typeof layout.length == "undefined"){ + do_select = true; + select.append(""); + } }) controlDiv.html(select); layouts_list.html(controlDiv); + if(do_select){ + select.select2({ + formatResult: function(el){ + var $element = $(el.element), + image = $element.data("image"); + return "" + el.text; + }, + minimumResultsForSearch: -1, + width : 250 + }); + } }else{ layouts_list.parent().find("label.control-label").text(""); layouts_list.empty(); @@ -258,74 +275,15 @@ function customOpenSlide() { $iFrame = $openSlide.filter('.view-page.open-slide'); $noiFrame.pageslide({ W: 314, - openFn: function(pageslide, element) { - element.addClass('active') - .closest('.item-menu') - .css('display', 'inline-block') - .closest('.navbar-inner') - .addClass('active'); - }, - closeFn: function(pageslide, element) { - $('.item-menu').removeAttr('style'); - element.removeClass('active') - .closest('.navbar-inner') - .removeClass('active'); - }, - loadComplete: function(pageslide, element) { - $openSlide.removeClass('active'); - $('.navbar-inner').removeClass('active'); - $('.item-menu').removeAttr('style'); - element.addClass('active') - .closest('.item-menu') - .css('display', 'inline-block') - .closest('.navbar-inner') - .addClass('active'); - _type = element.hasClass('page') ? 'page' : 'link'; - var _id = element.data('id'), - _parent = element.data('parent'), - _edit = element.hasClass('edit') ? true : false; - $('#pageslide .parent').val(_parent); - if(_id !== 'new') { - $('#pageslide form').attr({ - // 'action': $('#pageslide form').attr('action') + '/' + _id, - // 'id': 'edit_' + _type + '_' + _id, - // 'method': 'put' - }); - setForm(element.data('form')); - } else { - $('#pageslide form').prop('method', 'post') - }; - _type == 'page' ? pageSetting(element.data('id'), _edit, pageslide) : linkSetting(element.data('id'), _edit, pageslide); - } + openFn: function(pageslide, element) {}, + closeFn: function(pageslide, element) {}, + loadComplete: function(pageslide, element) {} }); $iFrame.pageslide({ W: $pageslideW, iframe: true, - openFn: function(pageslide, element) { - element.addClass('active') - .closest('.item-menu') - .css('display', 'inline-block') - .closest('.navbar-inner') - .addClass('active'); - }, - closeFn: function(pageslide, element) { - $('.item-menu').removeAttr('style'); - element.removeClass('active') - .closest('.navbar-inner') - .removeClass('active'); - $('#main-wrap').css('width', 'auto') - }, - loadComplete: function(pageslide, element) { - $openSlide.removeClass('active'); - $('.navbar-inner').removeClass('active'); - $('.item-menu').removeAttr('style'); - element.addClass('active') - .closest('.item-menu') - .css('display', 'inline-block') - .closest('.navbar-inner') - .addClass('active'); - pageslide.find('.content').css('padding', 0); - // iFrameContent() - } + openFn: function(pageslide, element) {}, + closeFn: function(pageslide, element) {}, + loadComplete: function(pageslide, element) {} }); } diff --git a/app/assets/javascripts/select2/select2.js b/app/assets/javascripts/select2/select2.js new file mode 100755 index 0000000..7116cd7 --- /dev/null +++ b/app/assets/javascripts/select2/select2.js @@ -0,0 +1,3508 @@ +/* +Copyright 2012 Igor Vaynberg + +Version: 3.5.1 Timestamp: Tue Jul 22 18:58:56 EDT 2014 + +This software is licensed under the Apache License, Version 2.0 (the "Apache License") or the GNU +General Public License version 2 (the "GPL License"). You may choose either license to govern your +use of this software only upon the condition that you accept all of the terms of either the Apache +License or the GPL License. + +You may obtain a copy of the Apache License and the GPL License at: + + http://www.apache.org/licenses/LICENSE-2.0 + http://www.gnu.org/licenses/gpl-2.0.html + +Unless required by applicable law or agreed to in writing, software distributed under the +Apache License or the GPL License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR +CONDITIONS OF ANY KIND, either express or implied. See the Apache License and the GPL License for +the specific language governing permissions and limitations under the Apache License and the GPL License. +*/ +(function ($) { + if(typeof $.fn.each2 == "undefined") { + $.extend($.fn, { + /* + * 4-10 times faster .each replacement + * use it carefully, as it overrides jQuery context of element on each iteration + */ + each2 : function (c) { + var j = $([0]), i = -1, l = this.length; + while ( + ++i < l + && (j.context = j[0] = this[i]) + && c.call(j[0], i, j) !== false //"this"=DOM, i=index, j=jQuery object + ); + return this; + } + }); + } +})(jQuery); + +(function ($, undefined) { + "use strict"; + /*global document, window, jQuery, console */ + + if (window.Select2 !== undefined) { + return; + } + + var KEY, AbstractSelect2, SingleSelect2, MultiSelect2, nextUid, sizer, + lastMousePosition={x:0,y:0}, $document, scrollBarDimensions, + + KEY = { + TAB: 9, + ENTER: 13, + ESC: 27, + SPACE: 32, + LEFT: 37, + UP: 38, + RIGHT: 39, + DOWN: 40, + SHIFT: 16, + CTRL: 17, + ALT: 18, + PAGE_UP: 33, + PAGE_DOWN: 34, + HOME: 36, + END: 35, + BACKSPACE: 8, + DELETE: 46, + isArrow: function (k) { + k = k.which ? k.which : k; + switch (k) { + case KEY.LEFT: + case KEY.RIGHT: + case KEY.UP: + case KEY.DOWN: + return true; + } + return false; + }, + isControl: function (e) { + var k = e.which; + switch (k) { + case KEY.SHIFT: + case KEY.CTRL: + case KEY.ALT: + return true; + } + + if (e.metaKey) return true; + + return false; + }, + isFunctionKey: function (k) { + k = k.which ? k.which : k; + return k >= 112 && k <= 123; + } + }, + MEASURE_SCROLLBAR_TEMPLATE = "
", + + DIACRITICS = {"\u24B6":"A","\uFF21":"A","\u00C0":"A","\u00C1":"A","\u00C2":"A","\u1EA6":"A","\u1EA4":"A","\u1EAA":"A","\u1EA8":"A","\u00C3":"A","\u0100":"A","\u0102":"A","\u1EB0":"A","\u1EAE":"A","\u1EB4":"A","\u1EB2":"A","\u0226":"A","\u01E0":"A","\u00C4":"A","\u01DE":"A","\u1EA2":"A","\u00C5":"A","\u01FA":"A","\u01CD":"A","\u0200":"A","\u0202":"A","\u1EA0":"A","\u1EAC":"A","\u1EB6":"A","\u1E00":"A","\u0104":"A","\u023A":"A","\u2C6F":"A","\uA732":"AA","\u00C6":"AE","\u01FC":"AE","\u01E2":"AE","\uA734":"AO","\uA736":"AU","\uA738":"AV","\uA73A":"AV","\uA73C":"AY","\u24B7":"B","\uFF22":"B","\u1E02":"B","\u1E04":"B","\u1E06":"B","\u0243":"B","\u0182":"B","\u0181":"B","\u24B8":"C","\uFF23":"C","\u0106":"C","\u0108":"C","\u010A":"C","\u010C":"C","\u00C7":"C","\u1E08":"C","\u0187":"C","\u023B":"C","\uA73E":"C","\u24B9":"D","\uFF24":"D","\u1E0A":"D","\u010E":"D","\u1E0C":"D","\u1E10":"D","\u1E12":"D","\u1E0E":"D","\u0110":"D","\u018B":"D","\u018A":"D","\u0189":"D","\uA779":"D","\u01F1":"DZ","\u01C4":"DZ","\u01F2":"Dz","\u01C5":"Dz","\u24BA":"E","\uFF25":"E","\u00C8":"E","\u00C9":"E","\u00CA":"E","\u1EC0":"E","\u1EBE":"E","\u1EC4":"E","\u1EC2":"E","\u1EBC":"E","\u0112":"E","\u1E14":"E","\u1E16":"E","\u0114":"E","\u0116":"E","\u00CB":"E","\u1EBA":"E","\u011A":"E","\u0204":"E","\u0206":"E","\u1EB8":"E","\u1EC6":"E","\u0228":"E","\u1E1C":"E","\u0118":"E","\u1E18":"E","\u1E1A":"E","\u0190":"E","\u018E":"E","\u24BB":"F","\uFF26":"F","\u1E1E":"F","\u0191":"F","\uA77B":"F","\u24BC":"G","\uFF27":"G","\u01F4":"G","\u011C":"G","\u1E20":"G","\u011E":"G","\u0120":"G","\u01E6":"G","\u0122":"G","\u01E4":"G","\u0193":"G","\uA7A0":"G","\uA77D":"G","\uA77E":"G","\u24BD":"H","\uFF28":"H","\u0124":"H","\u1E22":"H","\u1E26":"H","\u021E":"H","\u1E24":"H","\u1E28":"H","\u1E2A":"H","\u0126":"H","\u2C67":"H","\u2C75":"H","\uA78D":"H","\u24BE":"I","\uFF29":"I","\u00CC":"I","\u00CD":"I","\u00CE":"I","\u0128":"I","\u012A":"I","\u012C":"I","\u0130":"I","\u00CF":"I","\u1E2E":"I","\u1EC8":"I","\u01CF":"I","\u0208":"I","\u020A":"I","\u1ECA":"I","\u012E":"I","\u1E2C":"I","\u0197":"I","\u24BF":"J","\uFF2A":"J","\u0134":"J","\u0248":"J","\u24C0":"K","\uFF2B":"K","\u1E30":"K","\u01E8":"K","\u1E32":"K","\u0136":"K","\u1E34":"K","\u0198":"K","\u2C69":"K","\uA740":"K","\uA742":"K","\uA744":"K","\uA7A2":"K","\u24C1":"L","\uFF2C":"L","\u013F":"L","\u0139":"L","\u013D":"L","\u1E36":"L","\u1E38":"L","\u013B":"L","\u1E3C":"L","\u1E3A":"L","\u0141":"L","\u023D":"L","\u2C62":"L","\u2C60":"L","\uA748":"L","\uA746":"L","\uA780":"L","\u01C7":"LJ","\u01C8":"Lj","\u24C2":"M","\uFF2D":"M","\u1E3E":"M","\u1E40":"M","\u1E42":"M","\u2C6E":"M","\u019C":"M","\u24C3":"N","\uFF2E":"N","\u01F8":"N","\u0143":"N","\u00D1":"N","\u1E44":"N","\u0147":"N","\u1E46":"N","\u0145":"N","\u1E4A":"N","\u1E48":"N","\u0220":"N","\u019D":"N","\uA790":"N","\uA7A4":"N","\u01CA":"NJ","\u01CB":"Nj","\u24C4":"O","\uFF2F":"O","\u00D2":"O","\u00D3":"O","\u00D4":"O","\u1ED2":"O","\u1ED0":"O","\u1ED6":"O","\u1ED4":"O","\u00D5":"O","\u1E4C":"O","\u022C":"O","\u1E4E":"O","\u014C":"O","\u1E50":"O","\u1E52":"O","\u014E":"O","\u022E":"O","\u0230":"O","\u00D6":"O","\u022A":"O","\u1ECE":"O","\u0150":"O","\u01D1":"O","\u020C":"O","\u020E":"O","\u01A0":"O","\u1EDC":"O","\u1EDA":"O","\u1EE0":"O","\u1EDE":"O","\u1EE2":"O","\u1ECC":"O","\u1ED8":"O","\u01EA":"O","\u01EC":"O","\u00D8":"O","\u01FE":"O","\u0186":"O","\u019F":"O","\uA74A":"O","\uA74C":"O","\u01A2":"OI","\uA74E":"OO","\u0222":"OU","\u24C5":"P","\uFF30":"P","\u1E54":"P","\u1E56":"P","\u01A4":"P","\u2C63":"P","\uA750":"P","\uA752":"P","\uA754":"P","\u24C6":"Q","\uFF31":"Q","\uA756":"Q","\uA758":"Q","\u024A":"Q","\u24C7":"R","\uFF32":"R","\u0154":"R","\u1E58":"R","\u0158":"R","\u0210":"R","\u0212":"R","\u1E5A":"R","\u1E5C":"R","\u0156":"R","\u1E5E":"R","\u024C":"R","\u2C64":"R","\uA75A":"R","\uA7A6":"R","\uA782":"R","\u24C8":"S","\uFF33":"S","\u1E9E":"S","\u015A":"S","\u1E64":"S","\u015C":"S","\u1E60":"S","\u0160":"S","\u1E66":"S","\u1E62":"S","\u1E68":"S","\u0218":"S","\u015E":"S","\u2C7E":"S","\uA7A8":"S","\uA784":"S","\u24C9":"T","\uFF34":"T","\u1E6A":"T","\u0164":"T","\u1E6C":"T","\u021A":"T","\u0162":"T","\u1E70":"T","\u1E6E":"T","\u0166":"T","\u01AC":"T","\u01AE":"T","\u023E":"T","\uA786":"T","\uA728":"TZ","\u24CA":"U","\uFF35":"U","\u00D9":"U","\u00DA":"U","\u00DB":"U","\u0168":"U","\u1E78":"U","\u016A":"U","\u1E7A":"U","\u016C":"U","\u00DC":"U","\u01DB":"U","\u01D7":"U","\u01D5":"U","\u01D9":"U","\u1EE6":"U","\u016E":"U","\u0170":"U","\u01D3":"U","\u0214":"U","\u0216":"U","\u01AF":"U","\u1EEA":"U","\u1EE8":"U","\u1EEE":"U","\u1EEC":"U","\u1EF0":"U","\u1EE4":"U","\u1E72":"U","\u0172":"U","\u1E76":"U","\u1E74":"U","\u0244":"U","\u24CB":"V","\uFF36":"V","\u1E7C":"V","\u1E7E":"V","\u01B2":"V","\uA75E":"V","\u0245":"V","\uA760":"VY","\u24CC":"W","\uFF37":"W","\u1E80":"W","\u1E82":"W","\u0174":"W","\u1E86":"W","\u1E84":"W","\u1E88":"W","\u2C72":"W","\u24CD":"X","\uFF38":"X","\u1E8A":"X","\u1E8C":"X","\u24CE":"Y","\uFF39":"Y","\u1EF2":"Y","\u00DD":"Y","\u0176":"Y","\u1EF8":"Y","\u0232":"Y","\u1E8E":"Y","\u0178":"Y","\u1EF6":"Y","\u1EF4":"Y","\u01B3":"Y","\u024E":"Y","\u1EFE":"Y","\u24CF":"Z","\uFF3A":"Z","\u0179":"Z","\u1E90":"Z","\u017B":"Z","\u017D":"Z","\u1E92":"Z","\u1E94":"Z","\u01B5":"Z","\u0224":"Z","\u2C7F":"Z","\u2C6B":"Z","\uA762":"Z","\u24D0":"a","\uFF41":"a","\u1E9A":"a","\u00E0":"a","\u00E1":"a","\u00E2":"a","\u1EA7":"a","\u1EA5":"a","\u1EAB":"a","\u1EA9":"a","\u00E3":"a","\u0101":"a","\u0103":"a","\u1EB1":"a","\u1EAF":"a","\u1EB5":"a","\u1EB3":"a","\u0227":"a","\u01E1":"a","\u00E4":"a","\u01DF":"a","\u1EA3":"a","\u00E5":"a","\u01FB":"a","\u01CE":"a","\u0201":"a","\u0203":"a","\u1EA1":"a","\u1EAD":"a","\u1EB7":"a","\u1E01":"a","\u0105":"a","\u2C65":"a","\u0250":"a","\uA733":"aa","\u00E6":"ae","\u01FD":"ae","\u01E3":"ae","\uA735":"ao","\uA737":"au","\uA739":"av","\uA73B":"av","\uA73D":"ay","\u24D1":"b","\uFF42":"b","\u1E03":"b","\u1E05":"b","\u1E07":"b","\u0180":"b","\u0183":"b","\u0253":"b","\u24D2":"c","\uFF43":"c","\u0107":"c","\u0109":"c","\u010B":"c","\u010D":"c","\u00E7":"c","\u1E09":"c","\u0188":"c","\u023C":"c","\uA73F":"c","\u2184":"c","\u24D3":"d","\uFF44":"d","\u1E0B":"d","\u010F":"d","\u1E0D":"d","\u1E11":"d","\u1E13":"d","\u1E0F":"d","\u0111":"d","\u018C":"d","\u0256":"d","\u0257":"d","\uA77A":"d","\u01F3":"dz","\u01C6":"dz","\u24D4":"e","\uFF45":"e","\u00E8":"e","\u00E9":"e","\u00EA":"e","\u1EC1":"e","\u1EBF":"e","\u1EC5":"e","\u1EC3":"e","\u1EBD":"e","\u0113":"e","\u1E15":"e","\u1E17":"e","\u0115":"e","\u0117":"e","\u00EB":"e","\u1EBB":"e","\u011B":"e","\u0205":"e","\u0207":"e","\u1EB9":"e","\u1EC7":"e","\u0229":"e","\u1E1D":"e","\u0119":"e","\u1E19":"e","\u1E1B":"e","\u0247":"e","\u025B":"e","\u01DD":"e","\u24D5":"f","\uFF46":"f","\u1E1F":"f","\u0192":"f","\uA77C":"f","\u24D6":"g","\uFF47":"g","\u01F5":"g","\u011D":"g","\u1E21":"g","\u011F":"g","\u0121":"g","\u01E7":"g","\u0123":"g","\u01E5":"g","\u0260":"g","\uA7A1":"g","\u1D79":"g","\uA77F":"g","\u24D7":"h","\uFF48":"h","\u0125":"h","\u1E23":"h","\u1E27":"h","\u021F":"h","\u1E25":"h","\u1E29":"h","\u1E2B":"h","\u1E96":"h","\u0127":"h","\u2C68":"h","\u2C76":"h","\u0265":"h","\u0195":"hv","\u24D8":"i","\uFF49":"i","\u00EC":"i","\u00ED":"i","\u00EE":"i","\u0129":"i","\u012B":"i","\u012D":"i","\u00EF":"i","\u1E2F":"i","\u1EC9":"i","\u01D0":"i","\u0209":"i","\u020B":"i","\u1ECB":"i","\u012F":"i","\u1E2D":"i","\u0268":"i","\u0131":"i","\u24D9":"j","\uFF4A":"j","\u0135":"j","\u01F0":"j","\u0249":"j","\u24DA":"k","\uFF4B":"k","\u1E31":"k","\u01E9":"k","\u1E33":"k","\u0137":"k","\u1E35":"k","\u0199":"k","\u2C6A":"k","\uA741":"k","\uA743":"k","\uA745":"k","\uA7A3":"k","\u24DB":"l","\uFF4C":"l","\u0140":"l","\u013A":"l","\u013E":"l","\u1E37":"l","\u1E39":"l","\u013C":"l","\u1E3D":"l","\u1E3B":"l","\u017F":"l","\u0142":"l","\u019A":"l","\u026B":"l","\u2C61":"l","\uA749":"l","\uA781":"l","\uA747":"l","\u01C9":"lj","\u24DC":"m","\uFF4D":"m","\u1E3F":"m","\u1E41":"m","\u1E43":"m","\u0271":"m","\u026F":"m","\u24DD":"n","\uFF4E":"n","\u01F9":"n","\u0144":"n","\u00F1":"n","\u1E45":"n","\u0148":"n","\u1E47":"n","\u0146":"n","\u1E4B":"n","\u1E49":"n","\u019E":"n","\u0272":"n","\u0149":"n","\uA791":"n","\uA7A5":"n","\u01CC":"nj","\u24DE":"o","\uFF4F":"o","\u00F2":"o","\u00F3":"o","\u00F4":"o","\u1ED3":"o","\u1ED1":"o","\u1ED7":"o","\u1ED5":"o","\u00F5":"o","\u1E4D":"o","\u022D":"o","\u1E4F":"o","\u014D":"o","\u1E51":"o","\u1E53":"o","\u014F":"o","\u022F":"o","\u0231":"o","\u00F6":"o","\u022B":"o","\u1ECF":"o","\u0151":"o","\u01D2":"o","\u020D":"o","\u020F":"o","\u01A1":"o","\u1EDD":"o","\u1EDB":"o","\u1EE1":"o","\u1EDF":"o","\u1EE3":"o","\u1ECD":"o","\u1ED9":"o","\u01EB":"o","\u01ED":"o","\u00F8":"o","\u01FF":"o","\u0254":"o","\uA74B":"o","\uA74D":"o","\u0275":"o","\u01A3":"oi","\u0223":"ou","\uA74F":"oo","\u24DF":"p","\uFF50":"p","\u1E55":"p","\u1E57":"p","\u01A5":"p","\u1D7D":"p","\uA751":"p","\uA753":"p","\uA755":"p","\u24E0":"q","\uFF51":"q","\u024B":"q","\uA757":"q","\uA759":"q","\u24E1":"r","\uFF52":"r","\u0155":"r","\u1E59":"r","\u0159":"r","\u0211":"r","\u0213":"r","\u1E5B":"r","\u1E5D":"r","\u0157":"r","\u1E5F":"r","\u024D":"r","\u027D":"r","\uA75B":"r","\uA7A7":"r","\uA783":"r","\u24E2":"s","\uFF53":"s","\u00DF":"s","\u015B":"s","\u1E65":"s","\u015D":"s","\u1E61":"s","\u0161":"s","\u1E67":"s","\u1E63":"s","\u1E69":"s","\u0219":"s","\u015F":"s","\u023F":"s","\uA7A9":"s","\uA785":"s","\u1E9B":"s","\u24E3":"t","\uFF54":"t","\u1E6B":"t","\u1E97":"t","\u0165":"t","\u1E6D":"t","\u021B":"t","\u0163":"t","\u1E71":"t","\u1E6F":"t","\u0167":"t","\u01AD":"t","\u0288":"t","\u2C66":"t","\uA787":"t","\uA729":"tz","\u24E4":"u","\uFF55":"u","\u00F9":"u","\u00FA":"u","\u00FB":"u","\u0169":"u","\u1E79":"u","\u016B":"u","\u1E7B":"u","\u016D":"u","\u00FC":"u","\u01DC":"u","\u01D8":"u","\u01D6":"u","\u01DA":"u","\u1EE7":"u","\u016F":"u","\u0171":"u","\u01D4":"u","\u0215":"u","\u0217":"u","\u01B0":"u","\u1EEB":"u","\u1EE9":"u","\u1EEF":"u","\u1EED":"u","\u1EF1":"u","\u1EE5":"u","\u1E73":"u","\u0173":"u","\u1E77":"u","\u1E75":"u","\u0289":"u","\u24E5":"v","\uFF56":"v","\u1E7D":"v","\u1E7F":"v","\u028B":"v","\uA75F":"v","\u028C":"v","\uA761":"vy","\u24E6":"w","\uFF57":"w","\u1E81":"w","\u1E83":"w","\u0175":"w","\u1E87":"w","\u1E85":"w","\u1E98":"w","\u1E89":"w","\u2C73":"w","\u24E7":"x","\uFF58":"x","\u1E8B":"x","\u1E8D":"x","\u24E8":"y","\uFF59":"y","\u1EF3":"y","\u00FD":"y","\u0177":"y","\u1EF9":"y","\u0233":"y","\u1E8F":"y","\u00FF":"y","\u1EF7":"y","\u1E99":"y","\u1EF5":"y","\u01B4":"y","\u024F":"y","\u1EFF":"y","\u24E9":"z","\uFF5A":"z","\u017A":"z","\u1E91":"z","\u017C":"z","\u017E":"z","\u1E93":"z","\u1E95":"z","\u01B6":"z","\u0225":"z","\u0240":"z","\u2C6C":"z","\uA763":"z","\u0386":"\u0391","\u0388":"\u0395","\u0389":"\u0397","\u038A":"\u0399","\u03AA":"\u0399","\u038C":"\u039F","\u038E":"\u03A5","\u03AB":"\u03A5","\u038F":"\u03A9","\u03AC":"\u03B1","\u03AD":"\u03B5","\u03AE":"\u03B7","\u03AF":"\u03B9","\u03CA":"\u03B9","\u0390":"\u03B9","\u03CC":"\u03BF","\u03CD":"\u03C5","\u03CB":"\u03C5","\u03B0":"\u03C5","\u03C9":"\u03C9","\u03C2":"\u03C3"}; + + $document = $(document); + + nextUid=(function() { var counter=1; return function() { return counter++; }; }()); + + + function reinsertElement(element) { + var placeholder = $(document.createTextNode('')); + + element.before(placeholder); + placeholder.before(element); + placeholder.remove(); + } + + function stripDiacritics(str) { + // Used 'uni range + named function' from http://jsperf.com/diacritics/18 + function match(a) { + return DIACRITICS[a] || a; + } + + return str.replace(/[^\u0000-\u007E]/g, match); + } + + function indexOf(value, array) { + var i = 0, l = array.length; + for (; i < l; i = i + 1) { + if (equal(value, array[i])) return i; + } + return -1; + } + + function measureScrollbar () { + var $template = $( MEASURE_SCROLLBAR_TEMPLATE ); + $template.appendTo('body'); + + var dim = { + width: $template.width() - $template[0].clientWidth, + height: $template.height() - $template[0].clientHeight + }; + $template.remove(); + + return dim; + } + + /** + * Compares equality of a and b + * @param a + * @param b + */ + function equal(a, b) { + if (a === b) return true; + if (a === undefined || b === undefined) return false; + if (a === null || b === null) return false; + // Check whether 'a' or 'b' is a string (primitive or object). + // The concatenation of an empty string (+'') converts its argument to a string's primitive. + if (a.constructor === String) return a+'' === b+''; // a+'' - in case 'a' is a String object + if (b.constructor === String) return b+'' === a+''; // b+'' - in case 'b' is a String object + return false; + } + + /** + * Splits the string into an array of values, trimming each value. An empty array is returned for nulls or empty + * strings + * @param string + * @param separator + */ + function splitVal(string, separator) { + var val, i, l; + if (string === null || string.length < 1) return []; + val = string.split(separator); + for (i = 0, l = val.length; i < l; i = i + 1) val[i] = $.trim(val[i]); + return val; + } + + function getSideBorderPadding(element) { + return element.outerWidth(false) - element.width(); + } + + function installKeyUpChangeEvent(element) { + var key="keyup-change-value"; + element.on("keydown", function () { + if ($.data(element, key) === undefined) { + $.data(element, key, element.val()); + } + }); + element.on("keyup", function () { + var val= $.data(element, key); + if (val !== undefined && element.val() !== val) { + $.removeData(element, key); + element.trigger("keyup-change"); + } + }); + } + + + /** + * filters mouse events so an event is fired only if the mouse moved. + * + * filters out mouse events that occur when mouse is stationary but + * the elements under the pointer are scrolled. + */ + function installFilteredMouseMove(element) { + element.on("mousemove", function (e) { + var lastpos = lastMousePosition; + if (lastpos === undefined || lastpos.x !== e.pageX || lastpos.y !== e.pageY) { + $(e.target).trigger("mousemove-filtered", e); + } + }); + } + + /** + * Debounces a function. Returns a function that calls the original fn function only if no invocations have been made + * within the last quietMillis milliseconds. + * + * @param quietMillis number of milliseconds to wait before invoking fn + * @param fn function to be debounced + * @param ctx object to be used as this reference within fn + * @return debounced version of fn + */ + function debounce(quietMillis, fn, ctx) { + ctx = ctx || undefined; + var timeout; + return function () { + var args = arguments; + window.clearTimeout(timeout); + timeout = window.setTimeout(function() { + fn.apply(ctx, args); + }, quietMillis); + }; + } + + function installDebouncedScroll(threshold, element) { + var notify = debounce(threshold, function (e) { element.trigger("scroll-debounced", e);}); + element.on("scroll", function (e) { + if (indexOf(e.target, element.get()) >= 0) notify(e); + }); + } + + function focus($el) { + if ($el[0] === document.activeElement) return; + + /* set the focus in a 0 timeout - that way the focus is set after the processing + of the current event has finished - which seems like the only reliable way + to set focus */ + window.setTimeout(function() { + var el=$el[0], pos=$el.val().length, range; + + $el.focus(); + + /* make sure el received focus so we do not error out when trying to manipulate the caret. + sometimes modals or others listeners may steal it after its set */ + var isVisible = (el.offsetWidth > 0 || el.offsetHeight > 0); + if (isVisible && el === document.activeElement) { + + /* after the focus is set move the caret to the end, necessary when we val() + just before setting focus */ + if(el.setSelectionRange) + { + el.setSelectionRange(pos, pos); + } + else if (el.createTextRange) { + range = el.createTextRange(); + range.collapse(false); + range.select(); + } + } + }, 0); + } + + function getCursorInfo(el) { + el = $(el)[0]; + var offset = 0; + var length = 0; + if ('selectionStart' in el) { + offset = el.selectionStart; + length = el.selectionEnd - offset; + } else if ('selection' in document) { + el.focus(); + var sel = document.selection.createRange(); + length = document.selection.createRange().text.length; + sel.moveStart('character', -el.value.length); + offset = sel.text.length - length; + } + return { offset: offset, length: length }; + } + + function killEvent(event) { + event.preventDefault(); + event.stopPropagation(); + } + function killEventImmediately(event) { + event.preventDefault(); + event.stopImmediatePropagation(); + } + + function measureTextWidth(e) { + if (!sizer){ + var style = e[0].currentStyle || window.getComputedStyle(e[0], null); + sizer = $(document.createElement("div")).css({ + position: "absolute", + left: "-10000px", + top: "-10000px", + display: "none", + fontSize: style.fontSize, + fontFamily: style.fontFamily, + fontStyle: style.fontStyle, + fontWeight: style.fontWeight, + letterSpacing: style.letterSpacing, + textTransform: style.textTransform, + whiteSpace: "nowrap" + }); + sizer.attr("class","select2-sizer"); + $("body").append(sizer); + } + sizer.text(e.val()); + return sizer.width(); + } + + function syncCssClasses(dest, src, adapter) { + var classes, replacements = [], adapted; + + classes = $.trim(dest.attr("class")); + + if (classes) { + classes = '' + classes; // for IE which returns object + + $(classes.split(/\s+/)).each2(function() { + if (this.indexOf("select2-") === 0) { + replacements.push(this); + } + }); + } + + classes = $.trim(src.attr("class")); + + if (classes) { + classes = '' + classes; // for IE which returns object + + $(classes.split(/\s+/)).each2(function() { + if (this.indexOf("select2-") !== 0) { + adapted = adapter(this); + + if (adapted) { + replacements.push(adapted); + } + } + }); + } + + dest.attr("class", replacements.join(" ")); + } + + + function markMatch(text, term, markup, escapeMarkup) { + var match=stripDiacritics(text.toUpperCase()).indexOf(stripDiacritics(term.toUpperCase())), + tl=term.length; + + if (match<0) { + markup.push(escapeMarkup(text)); + return; + } + + markup.push(escapeMarkup(text.substring(0, match))); + markup.push(""); + markup.push(escapeMarkup(text.substring(match, match + tl))); + markup.push(""); + markup.push(escapeMarkup(text.substring(match + tl, text.length))); + } + + function defaultEscapeMarkup(markup) { + var replace_map = { + '\\': '\', + '&': '&', + '<': '<', + '>': '>', + '"': '"', + "'": ''', + "/": '/' + }; + + return String(markup).replace(/[&<>"'\/\\]/g, function (match) { + return replace_map[match]; + }); + } + + /** + * Produces an ajax-based query function + * + * @param options object containing configuration parameters + * @param options.params parameter map for the transport ajax call, can contain such options as cache, jsonpCallback, etc. see $.ajax + * @param options.transport function that will be used to execute the ajax request. must be compatible with parameters supported by $.ajax + * @param options.url url for the data + * @param options.data a function(searchTerm, pageNumber, context) that should return an object containing query string parameters for the above url. + * @param options.dataType request data type: ajax, jsonp, other datatypes supported by jQuery's $.ajax function or the transport function if specified + * @param options.quietMillis (optional) milliseconds to wait before making the ajaxRequest, helps debounce the ajax function if invoked too often + * @param options.results a function(remoteData, pageNumber, query) that converts data returned form the remote request to the format expected by Select2. + * The expected format is an object containing the following keys: + * results array of objects that will be used as choices + * more (optional) boolean indicating whether there are more results available + * Example: {results:[{id:1, text:'Red'},{id:2, text:'Blue'}], more:true} + */ + function ajax(options) { + var timeout, // current scheduled but not yet executed request + handler = null, + quietMillis = options.quietMillis || 100, + ajaxUrl = options.url, + self = this; + + return function (query) { + window.clearTimeout(timeout); + timeout = window.setTimeout(function () { + var data = options.data, // ajax data function + url = ajaxUrl, // ajax url string or function + transport = options.transport || $.fn.select2.ajaxDefaults.transport, + // deprecated - to be removed in 4.0 - use params instead + deprecated = { + type: options.type || 'GET', // set type of request (GET or POST) + cache: options.cache || false, + jsonpCallback: options.jsonpCallback||undefined, + dataType: options.dataType||"json" + }, + params = $.extend({}, $.fn.select2.ajaxDefaults.params, deprecated); + + data = data ? data.call(self, query.term, query.page, query.context) : null; + url = (typeof url === 'function') ? url.call(self, query.term, query.page, query.context) : url; + + if (handler && typeof handler.abort === "function") { handler.abort(); } + + if (options.params) { + if ($.isFunction(options.params)) { + $.extend(params, options.params.call(self)); + } else { + $.extend(params, options.params); + } + } + + $.extend(params, { + url: url, + dataType: options.dataType, + data: data, + success: function (data) { + // TODO - replace query.page with query so users have access to term, page, etc. + // added query as third paramter to keep backwards compatibility + var results = options.results(data, query.page, query); + query.callback(results); + }, + error: function(jqXHR, textStatus, errorThrown){ + var results = { + hasError: true, + jqXHR: jqXHR, + textStatus: textStatus, + errorThrown: errorThrown, + }; + + query.callback(results); + } + }); + handler = transport.call(self, params); + }, quietMillis); + }; + } + + /** + * Produces a query function that works with a local array + * + * @param options object containing configuration parameters. The options parameter can either be an array or an + * object. + * + * If the array form is used it is assumed that it contains objects with 'id' and 'text' keys. + * + * If the object form is used it is assumed that it contains 'data' and 'text' keys. The 'data' key should contain + * an array of objects that will be used as choices. These objects must contain at least an 'id' key. The 'text' + * key can either be a String in which case it is expected that each element in the 'data' array has a key with the + * value of 'text' which will be used to match choices. Alternatively, text can be a function(item) that can extract + * the text. + */ + function local(options) { + var data = options, // data elements + dataText, + tmp, + text = function (item) { return ""+item.text; }; // function used to retrieve the text portion of a data item that is matched against the search + + if ($.isArray(data)) { + tmp = data; + data = { results: tmp }; + } + + if ($.isFunction(data) === false) { + tmp = data; + data = function() { return tmp; }; + } + + var dataItem = data(); + if (dataItem.text) { + text = dataItem.text; + // if text is not a function we assume it to be a key name + if (!$.isFunction(text)) { + dataText = dataItem.text; // we need to store this in a separate variable because in the next step data gets reset and data.text is no longer available + text = function (item) { return item[dataText]; }; + } + } + + return function (query) { + var t = query.term, filtered = { results: [] }, process; + if (t === "") { + query.callback(data()); + return; + } + + process = function(datum, collection) { + var group, attr; + datum = datum[0]; + if (datum.children) { + group = {}; + for (attr in datum) { + if (datum.hasOwnProperty(attr)) group[attr]=datum[attr]; + } + group.children=[]; + $(datum.children).each2(function(i, childDatum) { process(childDatum, group.children); }); + if (group.children.length || query.matcher(t, text(group), datum)) { + collection.push(group); + } + } else { + if (query.matcher(t, text(datum), datum)) { + collection.push(datum); + } + } + }; + + $(data().results).each2(function(i, datum) { process(datum, filtered.results); }); + query.callback(filtered); + }; + } + + // TODO javadoc + function tags(data) { + var isFunc = $.isFunction(data); + return function (query) { + var t = query.term, filtered = {results: []}; + var result = isFunc ? data(query) : data; + if ($.isArray(result)) { + $(result).each(function () { + var isObject = this.text !== undefined, + text = isObject ? this.text : this; + if (t === "" || query.matcher(t, text)) { + filtered.results.push(isObject ? this : {id: this, text: this}); + } + }); + query.callback(filtered); + } + }; + } + + /** + * Checks if the formatter function should be used. + * + * Throws an error if it is not a function. Returns true if it should be used, + * false if no formatting should be performed. + * + * @param formatter + */ + function checkFormatter(formatter, formatterName) { + if ($.isFunction(formatter)) return true; + if (!formatter) return false; + if (typeof(formatter) === 'string') return true; + throw new Error(formatterName +" must be a string, function, or falsy value"); + } + + /** + * Returns a given value + * If given a function, returns its output + * + * @param val string|function + * @param context value of "this" to be passed to function + * @returns {*} + */ + function evaluate(val, context) { + if ($.isFunction(val)) { + var args = Array.prototype.slice.call(arguments, 2); + return val.apply(context, args); + } + return val; + } + + function countResults(results) { + var count = 0; + $.each(results, function(i, item) { + if (item.children) { + count += countResults(item.children); + } else { + count++; + } + }); + return count; + } + + /** + * Default tokenizer. This function uses breaks the input on substring match of any string from the + * opts.tokenSeparators array and uses opts.createSearchChoice to create the choice object. Both of those + * two options have to be defined in order for the tokenizer to work. + * + * @param input text user has typed so far or pasted into the search field + * @param selection currently selected choices + * @param selectCallback function(choice) callback tho add the choice to selection + * @param opts select2's opts + * @return undefined/null to leave the current input unchanged, or a string to change the input to the returned value + */ + function defaultTokenizer(input, selection, selectCallback, opts) { + var original = input, // store the original so we can compare and know if we need to tell the search to update its text + dupe = false, // check for whether a token we extracted represents a duplicate selected choice + token, // token + index, // position at which the separator was found + i, l, // looping variables + separator; // the matched separator + + if (!opts.createSearchChoice || !opts.tokenSeparators || opts.tokenSeparators.length < 1) return undefined; + + while (true) { + index = -1; + + for (i = 0, l = opts.tokenSeparators.length; i < l; i++) { + separator = opts.tokenSeparators[i]; + index = input.indexOf(separator); + if (index >= 0) break; + } + + if (index < 0) break; // did not find any token separator in the input string, bail + + token = input.substring(0, index); + input = input.substring(index + separator.length); + + if (token.length > 0) { + token = opts.createSearchChoice.call(this, token, selection); + if (token !== undefined && token !== null && opts.id(token) !== undefined && opts.id(token) !== null) { + dupe = false; + for (i = 0, l = selection.length; i < l; i++) { + if (equal(opts.id(token), opts.id(selection[i]))) { + dupe = true; break; + } + } + + if (!dupe) selectCallback(token); + } + } + } + + if (original!==input) return input; + } + + function cleanupJQueryElements() { + var self = this; + + $.each(arguments, function (i, element) { + self[element].remove(); + self[element] = null; + }); + } + + /** + * Creates a new class + * + * @param superClass + * @param methods + */ + function clazz(SuperClass, methods) { + var constructor = function () {}; + constructor.prototype = new SuperClass; + constructor.prototype.constructor = constructor; + constructor.prototype.parent = SuperClass.prototype; + constructor.prototype = $.extend(constructor.prototype, methods); + return constructor; + } + + AbstractSelect2 = clazz(Object, { + + // abstract + bind: function (func) { + var self = this; + return function () { + func.apply(self, arguments); + }; + }, + + // abstract + init: function (opts) { + var results, search, resultsSelector = ".select2-results"; + + // prepare options + this.opts = opts = this.prepareOpts(opts); + + this.id=opts.id; + + // destroy if called on an existing component + if (opts.element.data("select2") !== undefined && + opts.element.data("select2") !== null) { + opts.element.data("select2").destroy(); + } + + this.container = this.createContainer(); + + this.liveRegion = $("", { + role: "status", + "aria-live": "polite" + }) + .addClass("select2-hidden-accessible") + .appendTo(document.body); + + this.containerId="s2id_"+(opts.element.attr("id") || "autogen"+nextUid()); + this.containerEventName= this.containerId + .replace(/([.])/g, '_') + .replace(/([;&,\-\.\+\*\~':"\!\^#$%@\[\]\(\)=>\|])/g, '\\$1'); + this.container.attr("id", this.containerId); + + this.container.attr("title", opts.element.attr("title")); + + this.body = $("body"); + + syncCssClasses(this.container, this.opts.element, this.opts.adaptContainerCssClass); + + this.container.attr("style", opts.element.attr("style")); + this.container.css(evaluate(opts.containerCss, this.opts.element)); + this.container.addClass(evaluate(opts.containerCssClass, this.opts.element)); + + this.elementTabIndex = this.opts.element.attr("tabindex"); + + // swap container for the element + this.opts.element + .data("select2", this) + .attr("tabindex", "-1") + .before(this.container) + .on("click.select2", killEvent); // do not leak click events + + this.container.data("select2", this); + + this.dropdown = this.container.find(".select2-drop"); + + syncCssClasses(this.dropdown, this.opts.element, this.opts.adaptDropdownCssClass); + + this.dropdown.addClass(evaluate(opts.dropdownCssClass, this.opts.element)); + this.dropdown.data("select2", this); + this.dropdown.on("click", killEvent); + + this.results = results = this.container.find(resultsSelector); + this.search = search = this.container.find("input.select2-input"); + + this.queryCount = 0; + this.resultsPage = 0; + this.context = null; + + // initialize the container + this.initContainer(); + + this.container.on("click", killEvent); + + installFilteredMouseMove(this.results); + + this.dropdown.on("mousemove-filtered", resultsSelector, this.bind(this.highlightUnderEvent)); + this.dropdown.on("touchstart touchmove touchend", resultsSelector, this.bind(function (event) { + this._touchEvent = true; + this.highlightUnderEvent(event); + })); + this.dropdown.on("touchmove", resultsSelector, this.bind(this.touchMoved)); + this.dropdown.on("touchstart touchend", resultsSelector, this.bind(this.clearTouchMoved)); + + // Waiting for a click event on touch devices to select option and hide dropdown + // otherwise click will be triggered on an underlying element + this.dropdown.on('click', this.bind(function (event) { + if (this._touchEvent) { + this._touchEvent = false; + this.selectHighlighted(); + } + })); + + installDebouncedScroll(80, this.results); + this.dropdown.on("scroll-debounced", resultsSelector, this.bind(this.loadMoreIfNeeded)); + + // do not propagate change event from the search field out of the component + $(this.container).on("change", ".select2-input", function(e) {e.stopPropagation();}); + $(this.dropdown).on("change", ".select2-input", function(e) {e.stopPropagation();}); + + // if jquery.mousewheel plugin is installed we can prevent out-of-bounds scrolling of results via mousewheel + if ($.fn.mousewheel) { + results.mousewheel(function (e, delta, deltaX, deltaY) { + var top = results.scrollTop(); + if (deltaY > 0 && top - deltaY <= 0) { + results.scrollTop(0); + killEvent(e); + } else if (deltaY < 0 && results.get(0).scrollHeight - results.scrollTop() + deltaY <= results.height()) { + results.scrollTop(results.get(0).scrollHeight - results.height()); + killEvent(e); + } + }); + } + + installKeyUpChangeEvent(search); + search.on("keyup-change input paste", this.bind(this.updateResults)); + search.on("focus", function () { search.addClass("select2-focused"); }); + search.on("blur", function () { search.removeClass("select2-focused");}); + + this.dropdown.on("mouseup", resultsSelector, this.bind(function (e) { + if ($(e.target).closest(".select2-result-selectable").length > 0) { + this.highlightUnderEvent(e); + this.selectHighlighted(e); + } + })); + + // trap all mouse events from leaving the dropdown. sometimes there may be a modal that is listening + // for mouse events outside of itself so it can close itself. since the dropdown is now outside the select2's + // dom it will trigger the popup close, which is not what we want + // focusin can cause focus wars between modals and select2 since the dropdown is outside the modal. + this.dropdown.on("click mouseup mousedown touchstart touchend focusin", function (e) { e.stopPropagation(); }); + + this.nextSearchTerm = undefined; + + if ($.isFunction(this.opts.initSelection)) { + // initialize selection based on the current value of the source element + this.initSelection(); + + // if the user has provided a function that can set selection based on the value of the source element + // we monitor the change event on the element and trigger it, allowing for two way synchronization + this.monitorSource(); + } + + if (opts.maximumInputLength !== null) { + this.search.attr("maxlength", opts.maximumInputLength); + } + + var disabled = opts.element.prop("disabled"); + if (disabled === undefined) disabled = false; + this.enable(!disabled); + + var readonly = opts.element.prop("readonly"); + if (readonly === undefined) readonly = false; + this.readonly(readonly); + + // Calculate size of scrollbar + scrollBarDimensions = scrollBarDimensions || measureScrollbar(); + + this.autofocus = opts.element.prop("autofocus"); + opts.element.prop("autofocus", false); + if (this.autofocus) this.focus(); + + this.search.attr("placeholder", opts.searchInputPlaceholder); + }, + + // abstract + destroy: function () { + var element=this.opts.element, select2 = element.data("select2"), self = this; + + this.close(); + + if (element.length && element[0].detachEvent) { + element.each(function () { + this.detachEvent("onpropertychange", self._sync); + }); + } + if (this.propertyObserver) { + this.propertyObserver.disconnect(); + this.propertyObserver = null; + } + this._sync = null; + + if (select2 !== undefined) { + select2.container.remove(); + select2.liveRegion.remove(); + select2.dropdown.remove(); + element + .removeClass("select2-offscreen") + .removeData("select2") + .off(".select2") + .prop("autofocus", this.autofocus || false); + if (this.elementTabIndex) { + element.attr({tabindex: this.elementTabIndex}); + } else { + element.removeAttr("tabindex"); + } + element.show(); + } + + cleanupJQueryElements.call(this, + "container", + "liveRegion", + "dropdown", + "results", + "search" + ); + }, + + // abstract + optionToData: function(element) { + if (element.is("option")) { + return { + id:element.prop("value"), + text:element.text(), + element: element.get(), + css: element.attr("class"), + disabled: element.prop("disabled"), + locked: equal(element.attr("locked"), "locked") || equal(element.data("locked"), true) + }; + } else if (element.is("optgroup")) { + return { + text:element.attr("label"), + children:[], + element: element.get(), + css: element.attr("class") + }; + } + }, + + // abstract + prepareOpts: function (opts) { + var element, select, idKey, ajaxUrl, self = this; + + element = opts.element; + + if (element.get(0).tagName.toLowerCase() === "select") { + this.select = select = opts.element; + } + + if (select) { + // these options are not allowed when attached to a select because they are picked up off the element itself + $.each(["id", "multiple", "ajax", "query", "createSearchChoice", "initSelection", "data", "tags"], function () { + if (this in opts) { + throw new Error("Option '" + this + "' is not allowed for Select2 when attached to a ", + "
", + " ", + "
    ", + "
", + "
"].join("")); + return container; + }, + + // single + enableInterface: function() { + if (this.parent.enableInterface.apply(this, arguments)) { + this.focusser.prop("disabled", !this.isInterfaceEnabled()); + } + }, + + // single + opening: function () { + var el, range, len; + + if (this.opts.minimumResultsForSearch >= 0) { + this.showSearch(true); + } + + this.parent.opening.apply(this, arguments); + + if (this.showSearchInput !== false) { + // IE appends focusser.val() at the end of field :/ so we manually insert it at the beginning using a range + // all other browsers handle this just fine + + this.search.val(this.focusser.val()); + } + if (this.opts.shouldFocusInput(this)) { + this.search.focus(); + // move the cursor to the end after focussing, otherwise it will be at the beginning and + // new text will appear *before* focusser.val() + el = this.search.get(0); + if (el.createTextRange) { + range = el.createTextRange(); + range.collapse(false); + range.select(); + } else if (el.setSelectionRange) { + len = this.search.val().length; + el.setSelectionRange(len, len); + } + } + + // initializes search's value with nextSearchTerm (if defined by user) + // ignore nextSearchTerm if the dropdown is opened by the user pressing a letter + if(this.search.val() === "") { + if(this.nextSearchTerm != undefined){ + this.search.val(this.nextSearchTerm); + this.search.select(); + } + } + + this.focusser.prop("disabled", true).val(""); + this.updateResults(true); + this.opts.element.trigger($.Event("select2-open")); + }, + + // single + close: function () { + if (!this.opened()) return; + this.parent.close.apply(this, arguments); + + this.focusser.prop("disabled", false); + + if (this.opts.shouldFocusInput(this)) { + this.focusser.focus(); + } + }, + + // single + focus: function () { + if (this.opened()) { + this.close(); + } else { + this.focusser.prop("disabled", false); + if (this.opts.shouldFocusInput(this)) { + this.focusser.focus(); + } + } + }, + + // single + isFocused: function () { + return this.container.hasClass("select2-container-active"); + }, + + // single + cancel: function () { + this.parent.cancel.apply(this, arguments); + this.focusser.prop("disabled", false); + + if (this.opts.shouldFocusInput(this)) { + this.focusser.focus(); + } + }, + + // single + destroy: function() { + $("label[for='" + this.focusser.attr('id') + "']") + .attr('for', this.opts.element.attr("id")); + this.parent.destroy.apply(this, arguments); + + cleanupJQueryElements.call(this, + "selection", + "focusser" + ); + }, + + // single + initContainer: function () { + + var selection, + container = this.container, + dropdown = this.dropdown, + idSuffix = nextUid(), + elementLabel; + + if (this.opts.minimumResultsForSearch < 0) { + this.showSearch(false); + } else { + this.showSearch(true); + } + + this.selection = selection = container.find(".select2-choice"); + + this.focusser = container.find(".select2-focusser"); + + // add aria associations + selection.find(".select2-chosen").attr("id", "select2-chosen-"+idSuffix); + this.focusser.attr("aria-labelledby", "select2-chosen-"+idSuffix); + this.results.attr("id", "select2-results-"+idSuffix); + this.search.attr("aria-owns", "select2-results-"+idSuffix); + + // rewrite labels from original element to focusser + this.focusser.attr("id", "s2id_autogen"+idSuffix); + + elementLabel = $("label[for='" + this.opts.element.attr("id") + "']"); + + this.focusser.prev() + .text(elementLabel.text()) + .attr('for', this.focusser.attr('id')); + + // Ensure the original element retains an accessible name + var originalTitle = this.opts.element.attr("title"); + this.opts.element.attr("title", (originalTitle || elementLabel.text())); + + this.focusser.attr("tabindex", this.elementTabIndex); + + // write label for search field using the label from the focusser element + this.search.attr("id", this.focusser.attr('id') + '_search'); + + this.search.prev() + .text($("label[for='" + this.focusser.attr('id') + "']").text()) + .attr('for', this.search.attr('id')); + + this.search.on("keydown", this.bind(function (e) { + if (!this.isInterfaceEnabled()) return; + + // filter 229 keyCodes (input method editor is processing key input) + if (229 == e.keyCode) return; + + if (e.which === KEY.PAGE_UP || e.which === KEY.PAGE_DOWN) { + // prevent the page from scrolling + killEvent(e); + return; + } + + switch (e.which) { + case KEY.UP: + case KEY.DOWN: + this.moveHighlight((e.which === KEY.UP) ? -1 : 1); + killEvent(e); + return; + case KEY.ENTER: + this.selectHighlighted(); + killEvent(e); + return; + case KEY.TAB: + this.selectHighlighted({noFocus: true}); + return; + case KEY.ESC: + this.cancel(e); + killEvent(e); + return; + } + })); + + this.search.on("blur", this.bind(function(e) { + // a workaround for chrome to keep the search field focussed when the scroll bar is used to scroll the dropdown. + // without this the search field loses focus which is annoying + if (document.activeElement === this.body.get(0)) { + window.setTimeout(this.bind(function() { + if (this.opened()) { + this.search.focus(); + } + }), 0); + } + })); + + this.focusser.on("keydown", this.bind(function (e) { + if (!this.isInterfaceEnabled()) return; + + if (e.which === KEY.TAB || KEY.isControl(e) || KEY.isFunctionKey(e) || e.which === KEY.ESC) { + return; + } + + if (this.opts.openOnEnter === false && e.which === KEY.ENTER) { + killEvent(e); + return; + } + + if (e.which == KEY.DOWN || e.which == KEY.UP + || (e.which == KEY.ENTER && this.opts.openOnEnter)) { + + if (e.altKey || e.ctrlKey || e.shiftKey || e.metaKey) return; + + this.open(); + killEvent(e); + return; + } + + if (e.which == KEY.DELETE || e.which == KEY.BACKSPACE) { + if (this.opts.allowClear) { + this.clear(); + } + killEvent(e); + return; + } + })); + + + installKeyUpChangeEvent(this.focusser); + this.focusser.on("keyup-change input", this.bind(function(e) { + if (this.opts.minimumResultsForSearch >= 0) { + e.stopPropagation(); + if (this.opened()) return; + this.open(); + } + })); + + selection.on("mousedown touchstart", "abbr", this.bind(function (e) { + if (!this.isInterfaceEnabled()) return; + this.clear(); + killEventImmediately(e); + this.close(); + this.selection.focus(); + })); + + selection.on("mousedown touchstart", this.bind(function (e) { + // Prevent IE from generating a click event on the body + reinsertElement(selection); + + if (!this.container.hasClass("select2-container-active")) { + this.opts.element.trigger($.Event("select2-focus")); + } + + if (this.opened()) { + this.close(); + } else if (this.isInterfaceEnabled()) { + this.open(); + } + + killEvent(e); + })); + + dropdown.on("mousedown touchstart", this.bind(function() { + if (this.opts.shouldFocusInput(this)) { + this.search.focus(); + } + })); + + selection.on("focus", this.bind(function(e) { + killEvent(e); + })); + + this.focusser.on("focus", this.bind(function(){ + if (!this.container.hasClass("select2-container-active")) { + this.opts.element.trigger($.Event("select2-focus")); + } + this.container.addClass("select2-container-active"); + })).on("blur", this.bind(function() { + if (!this.opened()) { + this.container.removeClass("select2-container-active"); + this.opts.element.trigger($.Event("select2-blur")); + } + })); + this.search.on("focus", this.bind(function(){ + if (!this.container.hasClass("select2-container-active")) { + this.opts.element.trigger($.Event("select2-focus")); + } + this.container.addClass("select2-container-active"); + })); + + this.initContainerWidth(); + this.opts.element.addClass("select2-offscreen"); + this.setPlaceholder(); + + }, + + // single + clear: function(triggerChange) { + var data=this.selection.data("select2-data"); + if (data) { // guard against queued quick consecutive clicks + var evt = $.Event("select2-clearing"); + this.opts.element.trigger(evt); + if (evt.isDefaultPrevented()) { + return; + } + var placeholderOption = this.getPlaceholderOption(); + this.opts.element.val(placeholderOption ? placeholderOption.val() : ""); + this.selection.find(".select2-chosen").empty(); + this.selection.removeData("select2-data"); + this.setPlaceholder(); + + if (triggerChange !== false){ + this.opts.element.trigger({ type: "select2-removed", val: this.id(data), choice: data }); + this.triggerChange({removed:data}); + } + } + }, + + /** + * Sets selection based on source element's value + */ + // single + initSelection: function () { + var selected; + if (this.isPlaceholderOptionSelected()) { + this.updateSelection(null); + this.close(); + this.setPlaceholder(); + } else { + var self = this; + this.opts.initSelection.call(null, this.opts.element, function(selected){ + if (selected !== undefined && selected !== null) { + self.updateSelection(selected); + self.close(); + self.setPlaceholder(); + self.nextSearchTerm = self.opts.nextSearchTerm(selected, self.search.val()); + } + }); + } + }, + + isPlaceholderOptionSelected: function() { + var placeholderOption; + if (this.getPlaceholder() === undefined) return false; // no placeholder specified so no option should be considered + return ((placeholderOption = this.getPlaceholderOption()) !== undefined && placeholderOption.prop("selected")) + || (this.opts.element.val() === "") + || (this.opts.element.val() === undefined) + || (this.opts.element.val() === null); + }, + + // single + prepareOpts: function () { + var opts = this.parent.prepareOpts.apply(this, arguments), + self=this; + + if (opts.element.get(0).tagName.toLowerCase() === "select") { + // install the selection initializer + opts.initSelection = function (element, callback) { + var selected = element.find("option").filter(function() { return this.selected && !this.disabled }); + // a single select box always has a value, no need to null check 'selected' + callback(self.optionToData(selected)); + }; + } else if ("data" in opts) { + // install default initSelection when applied to hidden input and data is local + opts.initSelection = opts.initSelection || function (element, callback) { + var id = element.val(); + //search in data by id, storing the actual matching item + var match = null; + opts.query({ + matcher: function(term, text, el){ + var is_match = equal(id, opts.id(el)); + if (is_match) { + match = el; + } + return is_match; + }, + callback: !$.isFunction(callback) ? $.noop : function() { + callback(match); + } + }); + }; + } + + return opts; + }, + + // single + getPlaceholder: function() { + // if a placeholder is specified on a single select without a valid placeholder option ignore it + if (this.select) { + if (this.getPlaceholderOption() === undefined) { + return undefined; + } + } + + return this.parent.getPlaceholder.apply(this, arguments); + }, + + // single + setPlaceholder: function () { + var placeholder = this.getPlaceholder(); + + if (this.isPlaceholderOptionSelected() && placeholder !== undefined) { + + // check for a placeholder option if attached to a select + if (this.select && this.getPlaceholderOption() === undefined) return; + + this.selection.find(".select2-chosen").html(this.opts.escapeMarkup(placeholder)); + + this.selection.addClass("select2-default"); + + this.container.removeClass("select2-allowclear"); + } + }, + + // single + postprocessResults: function (data, initial, noHighlightUpdate) { + var selected = 0, self = this, showSearchInput = true; + + // find the selected element in the result list + + this.findHighlightableChoices().each2(function (i, elm) { + if (equal(self.id(elm.data("select2-data")), self.opts.element.val())) { + selected = i; + return false; + } + }); + + // and highlight it + if (noHighlightUpdate !== false) { + if (initial === true && selected >= 0) { + this.highlight(selected); + } else { + this.highlight(0); + } + } + + // hide the search box if this is the first we got the results and there are enough of them for search + + if (initial === true) { + var min = this.opts.minimumResultsForSearch; + if (min >= 0) { + this.showSearch(countResults(data.results) >= min); + } + } + }, + + // single + showSearch: function(showSearchInput) { + if (this.showSearchInput === showSearchInput) return; + + this.showSearchInput = showSearchInput; + + this.dropdown.find(".select2-search").toggleClass("select2-search-hidden", !showSearchInput); + this.dropdown.find(".select2-search").toggleClass("select2-offscreen", !showSearchInput); + //add "select2-with-searchbox" to the container if search box is shown + $(this.dropdown, this.container).toggleClass("select2-with-searchbox", showSearchInput); + }, + + // single + onSelect: function (data, options) { + + if (!this.triggerSelect(data)) { return; } + + var old = this.opts.element.val(), + oldData = this.data(); + + this.opts.element.val(this.id(data)); + this.updateSelection(data); + + this.opts.element.trigger({ type: "select2-selected", val: this.id(data), choice: data }); + + this.nextSearchTerm = this.opts.nextSearchTerm(data, this.search.val()); + this.close(); + + if ((!options || !options.noFocus) && this.opts.shouldFocusInput(this)) { + this.focusser.focus(); + } + + if (!equal(old, this.id(data))) { + this.triggerChange({ added: data, removed: oldData }); + } + }, + + // single + updateSelection: function (data) { + + var container=this.selection.find(".select2-chosen"), formatted, cssClass; + + this.selection.data("select2-data", data); + + container.empty(); + if (data !== null) { + formatted=this.opts.formatSelection(data, container, this.opts.escapeMarkup); + } + if (formatted !== undefined) { + container.append(formatted); + } + cssClass=this.opts.formatSelectionCssClass(data, container); + if (cssClass !== undefined) { + container.addClass(cssClass); + } + + this.selection.removeClass("select2-default"); + + if (this.opts.allowClear && this.getPlaceholder() !== undefined) { + this.container.addClass("select2-allowclear"); + } + }, + + // single + val: function () { + var val, + triggerChange = false, + data = null, + self = this, + oldData = this.data(); + + if (arguments.length === 0) { + return this.opts.element.val(); + } + + val = arguments[0]; + + if (arguments.length > 1) { + triggerChange = arguments[1]; + } + + if (this.select) { + this.select + .val(val) + .find("option").filter(function() { return this.selected }).each2(function (i, elm) { + data = self.optionToData(elm); + return false; + }); + this.updateSelection(data); + this.setPlaceholder(); + if (triggerChange) { + this.triggerChange({added: data, removed:oldData}); + } + } else { + // val is an id. !val is true for [undefined,null,'',0] - 0 is legal + if (!val && val !== 0) { + this.clear(triggerChange); + return; + } + if (this.opts.initSelection === undefined) { + throw new Error("cannot call val() if initSelection() is not defined"); + } + this.opts.element.val(val); + this.opts.initSelection(this.opts.element, function(data){ + self.opts.element.val(!data ? "" : self.id(data)); + self.updateSelection(data); + self.setPlaceholder(); + if (triggerChange) { + self.triggerChange({added: data, removed:oldData}); + } + }); + } + }, + + // single + clearSearch: function () { + this.search.val(""); + this.focusser.val(""); + }, + + // single + data: function(value) { + var data, + triggerChange = false; + + if (arguments.length === 0) { + data = this.selection.data("select2-data"); + if (data == undefined) data = null; + return data; + } else { + if (arguments.length > 1) { + triggerChange = arguments[1]; + } + if (!value) { + this.clear(triggerChange); + } else { + data = this.data(); + this.opts.element.val(!value ? "" : this.id(value)); + this.updateSelection(value); + if (triggerChange) { + this.triggerChange({added: value, removed:data}); + } + } + } + } + }); + + MultiSelect2 = clazz(AbstractSelect2, { + + // multi + createContainer: function () { + var container = $(document.createElement("div")).attr({ + "class": "select2-container select2-container-multi" + }).html([ + "
    ", + "
  • ", + " ", + " ", + "
  • ", + "
", + "
", + "
    ", + "
", + "
"].join("")); + return container; + }, + + // multi + prepareOpts: function () { + var opts = this.parent.prepareOpts.apply(this, arguments), + self=this; + + // TODO validate placeholder is a string if specified + + if (opts.element.get(0).tagName.toLowerCase() === "select") { + // install the selection initializer + opts.initSelection = function (element, callback) { + + var data = []; + + element.find("option").filter(function() { return this.selected && !this.disabled }).each2(function (i, elm) { + data.push(self.optionToData(elm)); + }); + callback(data); + }; + } else if ("data" in opts) { + // install default initSelection when applied to hidden input and data is local + opts.initSelection = opts.initSelection || function (element, callback) { + var ids = splitVal(element.val(), opts.separator); + //search in data by array of ids, storing matching items in a list + var matches = []; + opts.query({ + matcher: function(term, text, el){ + var is_match = $.grep(ids, function(id) { + return equal(id, opts.id(el)); + }).length; + if (is_match) { + matches.push(el); + } + return is_match; + }, + callback: !$.isFunction(callback) ? $.noop : function() { + // reorder matches based on the order they appear in the ids array because right now + // they are in the order in which they appear in data array + var ordered = []; + for (var i = 0; i < ids.length; i++) { + var id = ids[i]; + for (var j = 0; j < matches.length; j++) { + var match = matches[j]; + if (equal(id, opts.id(match))) { + ordered.push(match); + matches.splice(j, 1); + break; + } + } + } + callback(ordered); + } + }); + }; + } + + return opts; + }, + + // multi + selectChoice: function (choice) { + + var selected = this.container.find(".select2-search-choice-focus"); + if (selected.length && choice && choice[0] == selected[0]) { + + } else { + if (selected.length) { + this.opts.element.trigger("choice-deselected", selected); + } + selected.removeClass("select2-search-choice-focus"); + if (choice && choice.length) { + this.close(); + choice.addClass("select2-search-choice-focus"); + this.opts.element.trigger("choice-selected", choice); + } + } + }, + + // multi + destroy: function() { + $("label[for='" + this.search.attr('id') + "']") + .attr('for', this.opts.element.attr("id")); + this.parent.destroy.apply(this, arguments); + + cleanupJQueryElements.call(this, + "searchContainer", + "selection" + ); + }, + + // multi + initContainer: function () { + + var selector = ".select2-choices", selection; + + this.searchContainer = this.container.find(".select2-search-field"); + this.selection = selection = this.container.find(selector); + + var _this = this; + this.selection.on("click", ".select2-search-choice:not(.select2-locked)", function (e) { + //killEvent(e); + _this.search[0].focus(); + _this.selectChoice($(this)); + }); + + // rewrite labels from original element to focusser + this.search.attr("id", "s2id_autogen"+nextUid()); + + this.search.prev() + .text($("label[for='" + this.opts.element.attr("id") + "']").text()) + .attr('for', this.search.attr('id')); + + this.search.on("input paste", this.bind(function() { + if (this.search.attr('placeholder') && this.search.val().length == 0) return; + if (!this.isInterfaceEnabled()) return; + if (!this.opened()) { + this.open(); + } + })); + + this.search.attr("tabindex", this.elementTabIndex); + + this.keydowns = 0; + this.search.on("keydown", this.bind(function (e) { + if (!this.isInterfaceEnabled()) return; + + ++this.keydowns; + var selected = selection.find(".select2-search-choice-focus"); + var prev = selected.prev(".select2-search-choice:not(.select2-locked)"); + var next = selected.next(".select2-search-choice:not(.select2-locked)"); + var pos = getCursorInfo(this.search); + + if (selected.length && + (e.which == KEY.LEFT || e.which == KEY.RIGHT || e.which == KEY.BACKSPACE || e.which == KEY.DELETE || e.which == KEY.ENTER)) { + var selectedChoice = selected; + if (e.which == KEY.LEFT && prev.length) { + selectedChoice = prev; + } + else if (e.which == KEY.RIGHT) { + selectedChoice = next.length ? next : null; + } + else if (e.which === KEY.BACKSPACE) { + if (this.unselect(selected.first())) { + this.search.width(10); + selectedChoice = prev.length ? prev : next; + } + } else if (e.which == KEY.DELETE) { + if (this.unselect(selected.first())) { + this.search.width(10); + selectedChoice = next.length ? next : null; + } + } else if (e.which == KEY.ENTER) { + selectedChoice = null; + } + + this.selectChoice(selectedChoice); + killEvent(e); + if (!selectedChoice || !selectedChoice.length) { + this.open(); + } + return; + } else if (((e.which === KEY.BACKSPACE && this.keydowns == 1) + || e.which == KEY.LEFT) && (pos.offset == 0 && !pos.length)) { + + this.selectChoice(selection.find(".select2-search-choice:not(.select2-locked)").last()); + killEvent(e); + return; + } else { + this.selectChoice(null); + } + + if (this.opened()) { + switch (e.which) { + case KEY.UP: + case KEY.DOWN: + this.moveHighlight((e.which === KEY.UP) ? -1 : 1); + killEvent(e); + return; + case KEY.ENTER: + this.selectHighlighted(); + killEvent(e); + return; + case KEY.TAB: + this.selectHighlighted({noFocus:true}); + this.close(); + return; + case KEY.ESC: + this.cancel(e); + killEvent(e); + return; + } + } + + if (e.which === KEY.TAB || KEY.isControl(e) || KEY.isFunctionKey(e) + || e.which === KEY.BACKSPACE || e.which === KEY.ESC) { + return; + } + + if (e.which === KEY.ENTER) { + if (this.opts.openOnEnter === false) { + return; + } else if (e.altKey || e.ctrlKey || e.shiftKey || e.metaKey) { + return; + } + } + + this.open(); + + if (e.which === KEY.PAGE_UP || e.which === KEY.PAGE_DOWN) { + // prevent the page from scrolling + killEvent(e); + } + + if (e.which === KEY.ENTER) { + // prevent form from being submitted + killEvent(e); + } + + })); + + this.search.on("keyup", this.bind(function (e) { + this.keydowns = 0; + this.resizeSearch(); + }) + ); + + this.search.on("blur", this.bind(function(e) { + this.container.removeClass("select2-container-active"); + this.search.removeClass("select2-focused"); + this.selectChoice(null); + if (!this.opened()) this.clearSearch(); + e.stopImmediatePropagation(); + this.opts.element.trigger($.Event("select2-blur")); + })); + + this.container.on("click", selector, this.bind(function (e) { + if (!this.isInterfaceEnabled()) return; + if ($(e.target).closest(".select2-search-choice").length > 0) { + // clicked inside a select2 search choice, do not open + return; + } + this.selectChoice(null); + this.clearPlaceholder(); + if (!this.container.hasClass("select2-container-active")) { + this.opts.element.trigger($.Event("select2-focus")); + } + this.open(); + this.focusSearch(); + e.preventDefault(); + })); + + this.container.on("focus", selector, this.bind(function () { + if (!this.isInterfaceEnabled()) return; + if (!this.container.hasClass("select2-container-active")) { + this.opts.element.trigger($.Event("select2-focus")); + } + this.container.addClass("select2-container-active"); + this.dropdown.addClass("select2-drop-active"); + this.clearPlaceholder(); + })); + + this.initContainerWidth(); + this.opts.element.addClass("select2-offscreen"); + + // set the placeholder if necessary + this.clearSearch(); + }, + + // multi + enableInterface: function() { + if (this.parent.enableInterface.apply(this, arguments)) { + this.search.prop("disabled", !this.isInterfaceEnabled()); + } + }, + + // multi + initSelection: function () { + var data; + if (this.opts.element.val() === "" && this.opts.element.text() === "") { + this.updateSelection([]); + this.close(); + // set the placeholder if necessary + this.clearSearch(); + } + if (this.select || this.opts.element.val() !== "") { + var self = this; + this.opts.initSelection.call(null, this.opts.element, function(data){ + if (data !== undefined && data !== null) { + self.updateSelection(data); + self.close(); + // set the placeholder if necessary + self.clearSearch(); + } + }); + } + }, + + // multi + clearSearch: function () { + var placeholder = this.getPlaceholder(), + maxWidth = this.getMaxSearchWidth(); + + if (placeholder !== undefined && this.getVal().length === 0 && this.search.hasClass("select2-focused") === false) { + this.search.val(placeholder).addClass("select2-default"); + // stretch the search box to full width of the container so as much of the placeholder is visible as possible + // we could call this.resizeSearch(), but we do not because that requires a sizer and we do not want to create one so early because of a firefox bug, see #944 + this.search.width(maxWidth > 0 ? maxWidth : this.container.css("width")); + } else { + this.search.val("").width(10); + } + }, + + // multi + clearPlaceholder: function () { + if (this.search.hasClass("select2-default")) { + this.search.val("").removeClass("select2-default"); + } + }, + + // multi + opening: function () { + this.clearPlaceholder(); // should be done before super so placeholder is not used to search + this.resizeSearch(); + + this.parent.opening.apply(this, arguments); + + this.focusSearch(); + + // initializes search's value with nextSearchTerm (if defined by user) + // ignore nextSearchTerm if the dropdown is opened by the user pressing a letter + if(this.search.val() === "") { + if(this.nextSearchTerm != undefined){ + this.search.val(this.nextSearchTerm); + this.search.select(); + } + } + + this.updateResults(true); + if (this.opts.shouldFocusInput(this)) { + this.search.focus(); + } + this.opts.element.trigger($.Event("select2-open")); + }, + + // multi + close: function () { + if (!this.opened()) return; + this.parent.close.apply(this, arguments); + }, + + // multi + focus: function () { + this.close(); + this.search.focus(); + }, + + // multi + isFocused: function () { + return this.search.hasClass("select2-focused"); + }, + + // multi + updateSelection: function (data) { + var ids = [], filtered = [], self = this; + + // filter out duplicates + $(data).each(function () { + if (indexOf(self.id(this), ids) < 0) { + ids.push(self.id(this)); + filtered.push(this); + } + }); + data = filtered; + + this.selection.find(".select2-search-choice").remove(); + $(data).each(function () { + self.addSelectedChoice(this); + }); + self.postprocessResults(); + }, + + // multi + tokenize: function() { + var input = this.search.val(); + input = this.opts.tokenizer.call(this, input, this.data(), this.bind(this.onSelect), this.opts); + if (input != null && input != undefined) { + this.search.val(input); + if (input.length > 0) { + this.open(); + } + } + + }, + + // multi + onSelect: function (data, options) { + + if (!this.triggerSelect(data) || data.text === "") { return; } + + this.addSelectedChoice(data); + + this.opts.element.trigger({ type: "selected", val: this.id(data), choice: data }); + + // keep track of the search's value before it gets cleared + this.nextSearchTerm = this.opts.nextSearchTerm(data, this.search.val()); + + this.clearSearch(); + this.updateResults(); + + if (this.select || !this.opts.closeOnSelect) this.postprocessResults(data, false, this.opts.closeOnSelect===true); + + if (this.opts.closeOnSelect) { + this.close(); + this.search.width(10); + } else { + if (this.countSelectableResults()>0) { + this.search.width(10); + this.resizeSearch(); + if (this.getMaximumSelectionSize() > 0 && this.val().length >= this.getMaximumSelectionSize()) { + // if we reached max selection size repaint the results so choices + // are replaced with the max selection reached message + this.updateResults(true); + } else { + // initializes search's value with nextSearchTerm and update search result + if(this.nextSearchTerm != undefined){ + this.search.val(this.nextSearchTerm); + this.updateResults(); + this.search.select(); + } + } + this.positionDropdown(); + } else { + // if nothing left to select close + this.close(); + this.search.width(10); + } + } + + // since its not possible to select an element that has already been + // added we do not need to check if this is a new element before firing change + this.triggerChange({ added: data }); + + if (!options || !options.noFocus) + this.focusSearch(); + }, + + // multi + cancel: function () { + this.close(); + this.focusSearch(); + }, + + addSelectedChoice: function (data) { + var enableChoice = !data.locked, + enabledItem = $( + "
  • " + + "
    " + + " " + + "
  • "), + disabledItem = $( + "
  • " + + "
    " + + "
  • "); + var choice = enableChoice ? enabledItem : disabledItem, + id = this.id(data), + val = this.getVal(), + formatted, + cssClass; + + formatted=this.opts.formatSelection(data, choice.find("div"), this.opts.escapeMarkup); + if (formatted != undefined) { + choice.find("div").replaceWith("
    "+formatted+"
    "); + } + cssClass=this.opts.formatSelectionCssClass(data, choice.find("div")); + if (cssClass != undefined) { + choice.addClass(cssClass); + } + + if(enableChoice){ + choice.find(".select2-search-choice-close") + .on("mousedown", killEvent) + .on("click dblclick", this.bind(function (e) { + if (!this.isInterfaceEnabled()) return; + + this.unselect($(e.target)); + this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus"); + killEvent(e); + this.close(); + this.focusSearch(); + })).on("focus", this.bind(function () { + if (!this.isInterfaceEnabled()) return; + this.container.addClass("select2-container-active"); + this.dropdown.addClass("select2-drop-active"); + })); + } + + choice.data("select2-data", data); + choice.insertBefore(this.searchContainer); + + val.push(id); + this.setVal(val); + }, + + // multi + unselect: function (selected) { + var val = this.getVal(), + data, + index; + selected = selected.closest(".select2-search-choice"); + + if (selected.length === 0) { + throw "Invalid argument: " + selected + ". Must be .select2-search-choice"; + } + + data = selected.data("select2-data"); + + if (!data) { + // prevent a race condition when the 'x' is clicked really fast repeatedly the event can be queued + // and invoked on an element already removed + return; + } + + var evt = $.Event("select2-removing"); + evt.val = this.id(data); + evt.choice = data; + this.opts.element.trigger(evt); + + if (evt.isDefaultPrevented()) { + return false; + } + + while((index = indexOf(this.id(data), val)) >= 0) { + val.splice(index, 1); + this.setVal(val); + if (this.select) this.postprocessResults(); + } + + selected.remove(); + + this.opts.element.trigger({ type: "select2-removed", val: this.id(data), choice: data }); + this.triggerChange({ removed: data }); + + return true; + }, + + // multi + postprocessResults: function (data, initial, noHighlightUpdate) { + var val = this.getVal(), + choices = this.results.find(".select2-result"), + compound = this.results.find(".select2-result-with-children"), + self = this; + + choices.each2(function (i, choice) { + var id = self.id(choice.data("select2-data")); + if (indexOf(id, val) >= 0) { + choice.addClass("select2-selected"); + // mark all children of the selected parent as selected + choice.find(".select2-result-selectable").addClass("select2-selected"); + } + }); + + compound.each2(function(i, choice) { + // hide an optgroup if it doesn't have any selectable children + if (!choice.is('.select2-result-selectable') + && choice.find(".select2-result-selectable:not(.select2-selected)").length === 0) { + choice.addClass("select2-selected"); + } + }); + + if (this.highlight() == -1 && noHighlightUpdate !== false){ + self.highlight(0); + } + + //If all results are chosen render formatNoMatches + if(!this.opts.createSearchChoice && !choices.filter('.select2-result:not(.select2-selected)').length > 0){ + if(!data || data && !data.more && this.results.find(".select2-no-results").length === 0) { + if (checkFormatter(self.opts.formatNoMatches, "formatNoMatches")) { + this.results.append("
  • " + evaluate(self.opts.formatNoMatches, self.opts.element, self.search.val()) + "
  • "); + } + } + } + + }, + + // multi + getMaxSearchWidth: function() { + return this.selection.width() - getSideBorderPadding(this.search); + }, + + // multi + resizeSearch: function () { + var minimumWidth, left, maxWidth, containerLeft, searchWidth, + sideBorderPadding = getSideBorderPadding(this.search); + + minimumWidth = measureTextWidth(this.search) + 10; + + left = this.search.offset().left; + + maxWidth = this.selection.width(); + containerLeft = this.selection.offset().left; + + searchWidth = maxWidth - (left - containerLeft) - sideBorderPadding; + + if (searchWidth < minimumWidth) { + searchWidth = maxWidth - sideBorderPadding; + } + + if (searchWidth < 40) { + searchWidth = maxWidth - sideBorderPadding; + } + + if (searchWidth <= 0) { + searchWidth = minimumWidth; + } + + this.search.width(Math.floor(searchWidth)); + }, + + // multi + getVal: function () { + var val; + if (this.select) { + val = this.select.val(); + return val === null ? [] : val; + } else { + val = this.opts.element.val(); + return splitVal(val, this.opts.separator); + } + }, + + // multi + setVal: function (val) { + var unique; + if (this.select) { + this.select.val(val); + } else { + unique = []; + // filter out duplicates + $(val).each(function () { + if (indexOf(this, unique) < 0) unique.push(this); + }); + this.opts.element.val(unique.length === 0 ? "" : unique.join(this.opts.separator)); + } + }, + + // multi + buildChangeDetails: function (old, current) { + var current = current.slice(0), + old = old.slice(0); + + // remove intersection from each array + for (var i = 0; i < current.length; i++) { + for (var j = 0; j < old.length; j++) { + if (equal(this.opts.id(current[i]), this.opts.id(old[j]))) { + current.splice(i, 1); + if(i>0){ + i--; + } + old.splice(j, 1); + j--; + } + } + } + + return {added: current, removed: old}; + }, + + + // multi + val: function (val, triggerChange) { + var oldData, self=this; + + if (arguments.length === 0) { + return this.getVal(); + } + + oldData=this.data(); + if (!oldData.length) oldData=[]; + + // val is an id. !val is true for [undefined,null,'',0] - 0 is legal + if (!val && val !== 0) { + this.opts.element.val(""); + this.updateSelection([]); + this.clearSearch(); + if (triggerChange) { + this.triggerChange({added: this.data(), removed: oldData}); + } + return; + } + + // val is a list of ids + this.setVal(val); + + if (this.select) { + this.opts.initSelection(this.select, this.bind(this.updateSelection)); + if (triggerChange) { + this.triggerChange(this.buildChangeDetails(oldData, this.data())); + } + } else { + if (this.opts.initSelection === undefined) { + throw new Error("val() cannot be called if initSelection() is not defined"); + } + + this.opts.initSelection(this.opts.element, function(data){ + var ids=$.map(data, self.id); + self.setVal(ids); + self.updateSelection(data); + self.clearSearch(); + if (triggerChange) { + self.triggerChange(self.buildChangeDetails(oldData, self.data())); + } + }); + } + this.clearSearch(); + }, + + // multi + onSortStart: function() { + if (this.select) { + throw new Error("Sorting of elements is not supported when attached to instead."); + } + + // collapse search field into 0 width so its container can be collapsed as well + this.search.width(0); + // hide the container + this.searchContainer.hide(); + }, + + // multi + onSortEnd:function() { + + var val=[], self=this; + + // show search and move it to the end of the list + this.searchContainer.show(); + // make sure the search container is the last item in the list + this.searchContainer.appendTo(this.searchContainer.parent()); + // since we collapsed the width in dragStarted, we resize it here + this.resizeSearch(); + + // update selection + this.selection.find(".select2-search-choice").each(function() { + val.push(self.opts.id($(this).data("select2-data"))); + }); + this.setVal(val); + this.triggerChange(); + }, + + // multi + data: function(values, triggerChange) { + var self=this, ids, old; + if (arguments.length === 0) { + return this.selection + .children(".select2-search-choice") + .map(function() { return $(this).data("select2-data"); }) + .get(); + } else { + old = this.data(); + if (!values) { values = []; } + ids = $.map(values, function(e) { return self.opts.id(e); }); + this.setVal(ids); + this.updateSelection(values); + this.clearSearch(); + if (triggerChange) { + this.triggerChange(this.buildChangeDetails(old, this.data())); + } + } + } + }); + + $.fn.select2 = function () { + + var args = Array.prototype.slice.call(arguments, 0), + opts, + select2, + method, value, multiple, + allowedMethods = ["val", "destroy", "opened", "open", "close", "focus", "isFocused", "container", "dropdown", "onSortStart", "onSortEnd", "enable", "disable", "readonly", "positionDropdown", "data", "search"], + valueMethods = ["opened", "isFocused", "container", "dropdown"], + propertyMethods = ["val", "data"], + methodsMap = { search: "externalSearch" }; + + this.each(function () { + if (args.length === 0 || typeof(args[0]) === "object") { + opts = args.length === 0 ? {} : $.extend({}, args[0]); + opts.element = $(this); + + if (opts.element.get(0).tagName.toLowerCase() === "select") { + multiple = opts.element.prop("multiple"); + } else { + multiple = opts.multiple || false; + if ("tags" in opts) {opts.multiple = multiple = true;} + } + + select2 = multiple ? new window.Select2["class"].multi() : new window.Select2["class"].single(); + select2.init(opts); + } else if (typeof(args[0]) === "string") { + + if (indexOf(args[0], allowedMethods) < 0) { + throw "Unknown method: " + args[0]; + } + + value = undefined; + select2 = $(this).data("select2"); + if (select2 === undefined) return; + + method=args[0]; + + if (method === "container") { + value = select2.container; + } else if (method === "dropdown") { + value = select2.dropdown; + } else { + if (methodsMap[method]) method = methodsMap[method]; + + value = select2[method].apply(select2, args.slice(1)); + } + if (indexOf(args[0], valueMethods) >= 0 + || (indexOf(args[0], propertyMethods) >= 0 && args.length == 1)) { + return false; // abort the iteration, ready to return first matched value + } + } else { + throw "Invalid arguments to select2 plugin: " + args; + } + }); + return (value === undefined) ? this : value; + }; + + // plugin defaults, accessible to users + $.fn.select2.defaults = { + width: "copy", + loadMorePadding: 0, + closeOnSelect: true, + openOnEnter: true, + containerCss: {}, + dropdownCss: {}, + containerCssClass: "", + dropdownCssClass: "", + formatResult: function(result, container, query, escapeMarkup) { + var markup=[]; + markMatch(result.text, query.term, markup, escapeMarkup); + return markup.join(""); + }, + formatSelection: function (data, container, escapeMarkup) { + return data ? escapeMarkup(data.text) : undefined; + }, + sortResults: function (results, container, query) { + return results; + }, + formatResultCssClass: function(data) {return data.css;}, + formatSelectionCssClass: function(data, container) {return undefined;}, + minimumResultsForSearch: 0, + minimumInputLength: 0, + maximumInputLength: null, + maximumSelectionSize: 0, + id: function (e) { return e == undefined ? null : e.id; }, + matcher: function(term, text) { + return stripDiacritics(''+text).toUpperCase().indexOf(stripDiacritics(''+term).toUpperCase()) >= 0; + }, + separator: ",", + tokenSeparators: [], + tokenizer: defaultTokenizer, + escapeMarkup: defaultEscapeMarkup, + blurOnChange: false, + selectOnBlur: false, + adaptContainerCssClass: function(c) { return c; }, + adaptDropdownCssClass: function(c) { return null; }, + nextSearchTerm: function(selectedObject, currentSearchTerm) { return undefined; }, + searchInputPlaceholder: '', + createSearchChoicePosition: 'top', + shouldFocusInput: function (instance) { + // Attempt to detect touch devices + var supportsTouchEvents = (('ontouchstart' in window) || + (navigator.msMaxTouchPoints > 0)); + + // Only devices which support touch events should be special cased + if (!supportsTouchEvents) { + return true; + } + + // Never focus the input if search is disabled + if (instance.opts.minimumResultsForSearch < 0) { + return false; + } + + return true; + } + }; + + $.fn.select2.locales = []; + + $.fn.select2.locales['en'] = { + formatMatches: function (matches) { if (matches === 1) { return "One result is available, press enter to select it."; } return matches + " results are available, use up and down arrow keys to navigate."; }, + formatNoMatches: function () { return "No matches found"; }, + formatAjaxError: function (jqXHR, textStatus, errorThrown) { return "Loading failed"; }, + formatInputTooShort: function (input, min) { var n = min - input.length; return "Please enter " + n + " or more character" + (n == 1 ? "" : "s"); }, + formatInputTooLong: function (input, max) { var n = input.length - max; return "Please delete " + n + " character" + (n == 1 ? "" : "s"); }, + formatSelectionTooBig: function (limit) { return "You can only select " + limit + " item" + (limit == 1 ? "" : "s"); }, + formatLoadMore: function (pageNumber) { return "Loading more results…"; }, + formatSearching: function () { return "Searching…"; }, + }; + + $.extend($.fn.select2.defaults, $.fn.select2.locales['en']); + + $.fn.select2.ajaxDefaults = { + transport: $.ajax, + params: { + type: "GET", + cache: false, + dataType: "json" + } + }; + + // exports + window.Select2 = { + query: { + ajax: ajax, + local: local, + tags: tags + }, util: { + debounce: debounce, + markMatch: markMatch, + escapeMarkup: defaultEscapeMarkup, + stripDiacritics: stripDiacritics + }, "class": { + "abstract": AbstractSelect2, + "single": SingleSelect2, + "multi": MultiSelect2 + } + }; + +}(jQuery)); diff --git a/app/assets/javascripts/select2/select2.min.js b/app/assets/javascripts/select2/select2.min.js new file mode 100755 index 0000000..1d3ee49 --- /dev/null +++ b/app/assets/javascripts/select2/select2.min.js @@ -0,0 +1,23 @@ +/* +Copyright 2014 Igor Vaynberg + +Version: 3.5.1 Timestamp: Tue Jul 22 18:58:56 EDT 2014 + +This software is licensed under the Apache License, Version 2.0 (the "Apache License") or the GNU +General Public License version 2 (the "GPL License"). You may choose either license to govern your +use of this software only upon the condition that you accept all of the terms of either the Apache +License or the GPL License. + +You may obtain a copy of the Apache License and the GPL License at: + +http://www.apache.org/licenses/LICENSE-2.0 +http://www.gnu.org/licenses/gpl-2.0.html + +Unless required by applicable law or agreed to in writing, software distributed under the Apache License +or the GPL Licesnse is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, +either express or implied. See the Apache License and the GPL License for the specific language governing +permissions and limitations under the Apache License and the GPL License. +*/ +!function(a){"undefined"==typeof a.fn.each2&&a.extend(a.fn,{each2:function(b){for(var c=a([0]),d=-1,e=this.length;++dc;c+=1)if(r(a,b[c]))return c;return-1}function q(){var b=a(l);b.appendTo("body");var c={width:b.width()-b[0].clientWidth,height:b.height()-b[0].clientHeight};return b.remove(),c}function r(a,c){return a===c?!0:a===b||c===b?!1:null===a||null===c?!1:a.constructor===String?a+""==c+"":c.constructor===String?c+""==a+"":!1}function s(b,c){var d,e,f;if(null===b||b.length<1)return[];for(d=b.split(c),e=0,f=d.length;f>e;e+=1)d[e]=a.trim(d[e]);return d}function t(a){return a.outerWidth(!1)-a.width()}function u(c){var d="keyup-change-value";c.on("keydown",function(){a.data(c,d)===b&&a.data(c,d,c.val())}),c.on("keyup",function(){var e=a.data(c,d);e!==b&&c.val()!==e&&(a.removeData(c,d),c.trigger("keyup-change"))})}function v(c){c.on("mousemove",function(c){var d=i;(d===b||d.x!==c.pageX||d.y!==c.pageY)&&a(c.target).trigger("mousemove-filtered",c)})}function w(a,c,d){d=d||b;var e;return function(){var b=arguments;window.clearTimeout(e),e=window.setTimeout(function(){c.apply(d,b)},a)}}function x(a,b){var c=w(a,function(a){b.trigger("scroll-debounced",a)});b.on("scroll",function(a){p(a.target,b.get())>=0&&c(a)})}function y(a){a[0]!==document.activeElement&&window.setTimeout(function(){var d,b=a[0],c=a.val().length;a.focus();var e=b.offsetWidth>0||b.offsetHeight>0;e&&b===document.activeElement&&(b.setSelectionRange?b.setSelectionRange(c,c):b.createTextRange&&(d=b.createTextRange(),d.collapse(!1),d.select()))},0)}function z(b){b=a(b)[0];var c=0,d=0;if("selectionStart"in b)c=b.selectionStart,d=b.selectionEnd-c;else if("selection"in document){b.focus();var e=document.selection.createRange();d=document.selection.createRange().text.length,e.moveStart("character",-b.value.length),c=e.text.length-d}return{offset:c,length:d}}function A(a){a.preventDefault(),a.stopPropagation()}function B(a){a.preventDefault(),a.stopImmediatePropagation()}function C(b){if(!h){var c=b[0].currentStyle||window.getComputedStyle(b[0],null);h=a(document.createElement("div")).css({position:"absolute",left:"-10000px",top:"-10000px",display:"none",fontSize:c.fontSize,fontFamily:c.fontFamily,fontStyle:c.fontStyle,fontWeight:c.fontWeight,letterSpacing:c.letterSpacing,textTransform:c.textTransform,whiteSpace:"nowrap"}),h.attr("class","select2-sizer"),a("body").append(h)}return h.text(b.val()),h.width()}function D(b,c,d){var e,g,f=[];e=a.trim(b.attr("class")),e&&(e=""+e,a(e.split(/\s+/)).each2(function(){0===this.indexOf("select2-")&&f.push(this)})),e=a.trim(c.attr("class")),e&&(e=""+e,a(e.split(/\s+/)).each2(function(){0!==this.indexOf("select2-")&&(g=d(this),g&&f.push(g))})),b.attr("class",f.join(" "))}function E(a,b,c,d){var e=o(a.toUpperCase()).indexOf(o(b.toUpperCase())),f=b.length;return 0>e?(c.push(d(a)),void 0):(c.push(d(a.substring(0,e))),c.push(""),c.push(d(a.substring(e,e+f))),c.push(""),c.push(d(a.substring(e+f,a.length))),void 0)}function F(a){var b={"\\":"\","&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};return String(a).replace(/[&<>"'\/\\]/g,function(a){return b[a]})}function G(c){var d,e=null,f=c.quietMillis||100,g=c.url,h=this;return function(i){window.clearTimeout(d),d=window.setTimeout(function(){var d=c.data,f=g,j=c.transport||a.fn.select2.ajaxDefaults.transport,k={type:c.type||"GET",cache:c.cache||!1,jsonpCallback:c.jsonpCallback||b,dataType:c.dataType||"json"},l=a.extend({},a.fn.select2.ajaxDefaults.params,k);d=d?d.call(h,i.term,i.page,i.context):null,f="function"==typeof f?f.call(h,i.term,i.page,i.context):f,e&&"function"==typeof e.abort&&e.abort(),c.params&&(a.isFunction(c.params)?a.extend(l,c.params.call(h)):a.extend(l,c.params)),a.extend(l,{url:f,dataType:c.dataType,data:d,success:function(a){var b=c.results(a,i.page,i);i.callback(b)},error:function(a,b,c){var d={hasError:!0,jqXHR:a,textStatus:b,errorThrown:c};i.callback(d)}}),e=j.call(h,l)},f)}}function H(b){var d,e,c=b,f=function(a){return""+a.text};a.isArray(c)&&(e=c,c={results:e}),a.isFunction(c)===!1&&(e=c,c=function(){return e});var g=c();return g.text&&(f=g.text,a.isFunction(f)||(d=g.text,f=function(a){return a[d]})),function(b){var g,d=b.term,e={results:[]};return""===d?(b.callback(c()),void 0):(g=function(c,e){var h,i;if(c=c[0],c.children){h={};for(i in c)c.hasOwnProperty(i)&&(h[i]=c[i]);h.children=[],a(c.children).each2(function(a,b){g(b,h.children)}),(h.children.length||b.matcher(d,f(h),c))&&e.push(h)}else b.matcher(d,f(c),c)&&e.push(c)},a(c().results).each2(function(a,b){g(b,e.results)}),b.callback(e),void 0)}}function I(c){var d=a.isFunction(c);return function(e){var f=e.term,g={results:[]},h=d?c(e):c;a.isArray(h)&&(a(h).each(function(){var a=this.text!==b,c=a?this.text:this;(""===f||e.matcher(f,c))&&g.results.push(a?this:{id:this,text:this})}),e.callback(g))}}function J(b,c){if(a.isFunction(b))return!0;if(!b)return!1;if("string"==typeof b)return!0;throw new Error(c+" must be a string, function, or falsy value")}function K(b,c){if(a.isFunction(b)){var d=Array.prototype.slice.call(arguments,2);return b.apply(c,d)}return b}function L(b){var c=0;return a.each(b,function(a,b){b.children?c+=L(b.children):c++}),c}function M(a,c,d,e){var h,i,j,k,l,f=a,g=!1;if(!e.createSearchChoice||!e.tokenSeparators||e.tokenSeparators.length<1)return b;for(;;){for(i=-1,j=0,k=e.tokenSeparators.length;k>j&&(l=e.tokenSeparators[j],i=a.indexOf(l),!(i>=0));j++);if(0>i)break;if(h=a.substring(0,i),a=a.substring(i+l.length),h.length>0&&(h=e.createSearchChoice.call(this,h,c),h!==b&&null!==h&&e.id(h)!==b&&null!==e.id(h))){for(g=!1,j=0,k=c.length;k>j;j++)if(r(e.id(h),e.id(c[j]))){g=!0;break}g||d(h)}}return f!==a?a:void 0}function N(){var b=this;a.each(arguments,function(a,c){b[c].remove(),b[c]=null})}function O(b,c){var d=function(){};return d.prototype=new b,d.prototype.constructor=d,d.prototype.parent=b.prototype,d.prototype=a.extend(d.prototype,c),d}if(window.Select2===b){var c,d,e,f,g,h,j,k,i={x:0,y:0},c={TAB:9,ENTER:13,ESC:27,SPACE:32,LEFT:37,UP:38,RIGHT:39,DOWN:40,SHIFT:16,CTRL:17,ALT:18,PAGE_UP:33,PAGE_DOWN:34,HOME:36,END:35,BACKSPACE:8,DELETE:46,isArrow:function(a){switch(a=a.which?a.which:a){case c.LEFT:case c.RIGHT:case c.UP:case c.DOWN:return!0}return!1},isControl:function(a){var b=a.which;switch(b){case c.SHIFT:case c.CTRL:case c.ALT:return!0}return a.metaKey?!0:!1},isFunctionKey:function(a){return a=a.which?a.which:a,a>=112&&123>=a}},l="
    ",m={"\u24b6":"A","\uff21":"A","\xc0":"A","\xc1":"A","\xc2":"A","\u1ea6":"A","\u1ea4":"A","\u1eaa":"A","\u1ea8":"A","\xc3":"A","\u0100":"A","\u0102":"A","\u1eb0":"A","\u1eae":"A","\u1eb4":"A","\u1eb2":"A","\u0226":"A","\u01e0":"A","\xc4":"A","\u01de":"A","\u1ea2":"A","\xc5":"A","\u01fa":"A","\u01cd":"A","\u0200":"A","\u0202":"A","\u1ea0":"A","\u1eac":"A","\u1eb6":"A","\u1e00":"A","\u0104":"A","\u023a":"A","\u2c6f":"A","\ua732":"AA","\xc6":"AE","\u01fc":"AE","\u01e2":"AE","\ua734":"AO","\ua736":"AU","\ua738":"AV","\ua73a":"AV","\ua73c":"AY","\u24b7":"B","\uff22":"B","\u1e02":"B","\u1e04":"B","\u1e06":"B","\u0243":"B","\u0182":"B","\u0181":"B","\u24b8":"C","\uff23":"C","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\xc7":"C","\u1e08":"C","\u0187":"C","\u023b":"C","\ua73e":"C","\u24b9":"D","\uff24":"D","\u1e0a":"D","\u010e":"D","\u1e0c":"D","\u1e10":"D","\u1e12":"D","\u1e0e":"D","\u0110":"D","\u018b":"D","\u018a":"D","\u0189":"D","\ua779":"D","\u01f1":"DZ","\u01c4":"DZ","\u01f2":"Dz","\u01c5":"Dz","\u24ba":"E","\uff25":"E","\xc8":"E","\xc9":"E","\xca":"E","\u1ec0":"E","\u1ebe":"E","\u1ec4":"E","\u1ec2":"E","\u1ebc":"E","\u0112":"E","\u1e14":"E","\u1e16":"E","\u0114":"E","\u0116":"E","\xcb":"E","\u1eba":"E","\u011a":"E","\u0204":"E","\u0206":"E","\u1eb8":"E","\u1ec6":"E","\u0228":"E","\u1e1c":"E","\u0118":"E","\u1e18":"E","\u1e1a":"E","\u0190":"E","\u018e":"E","\u24bb":"F","\uff26":"F","\u1e1e":"F","\u0191":"F","\ua77b":"F","\u24bc":"G","\uff27":"G","\u01f4":"G","\u011c":"G","\u1e20":"G","\u011e":"G","\u0120":"G","\u01e6":"G","\u0122":"G","\u01e4":"G","\u0193":"G","\ua7a0":"G","\ua77d":"G","\ua77e":"G","\u24bd":"H","\uff28":"H","\u0124":"H","\u1e22":"H","\u1e26":"H","\u021e":"H","\u1e24":"H","\u1e28":"H","\u1e2a":"H","\u0126":"H","\u2c67":"H","\u2c75":"H","\ua78d":"H","\u24be":"I","\uff29":"I","\xcc":"I","\xcd":"I","\xce":"I","\u0128":"I","\u012a":"I","\u012c":"I","\u0130":"I","\xcf":"I","\u1e2e":"I","\u1ec8":"I","\u01cf":"I","\u0208":"I","\u020a":"I","\u1eca":"I","\u012e":"I","\u1e2c":"I","\u0197":"I","\u24bf":"J","\uff2a":"J","\u0134":"J","\u0248":"J","\u24c0":"K","\uff2b":"K","\u1e30":"K","\u01e8":"K","\u1e32":"K","\u0136":"K","\u1e34":"K","\u0198":"K","\u2c69":"K","\ua740":"K","\ua742":"K","\ua744":"K","\ua7a2":"K","\u24c1":"L","\uff2c":"L","\u013f":"L","\u0139":"L","\u013d":"L","\u1e36":"L","\u1e38":"L","\u013b":"L","\u1e3c":"L","\u1e3a":"L","\u0141":"L","\u023d":"L","\u2c62":"L","\u2c60":"L","\ua748":"L","\ua746":"L","\ua780":"L","\u01c7":"LJ","\u01c8":"Lj","\u24c2":"M","\uff2d":"M","\u1e3e":"M","\u1e40":"M","\u1e42":"M","\u2c6e":"M","\u019c":"M","\u24c3":"N","\uff2e":"N","\u01f8":"N","\u0143":"N","\xd1":"N","\u1e44":"N","\u0147":"N","\u1e46":"N","\u0145":"N","\u1e4a":"N","\u1e48":"N","\u0220":"N","\u019d":"N","\ua790":"N","\ua7a4":"N","\u01ca":"NJ","\u01cb":"Nj","\u24c4":"O","\uff2f":"O","\xd2":"O","\xd3":"O","\xd4":"O","\u1ed2":"O","\u1ed0":"O","\u1ed6":"O","\u1ed4":"O","\xd5":"O","\u1e4c":"O","\u022c":"O","\u1e4e":"O","\u014c":"O","\u1e50":"O","\u1e52":"O","\u014e":"O","\u022e":"O","\u0230":"O","\xd6":"O","\u022a":"O","\u1ece":"O","\u0150":"O","\u01d1":"O","\u020c":"O","\u020e":"O","\u01a0":"O","\u1edc":"O","\u1eda":"O","\u1ee0":"O","\u1ede":"O","\u1ee2":"O","\u1ecc":"O","\u1ed8":"O","\u01ea":"O","\u01ec":"O","\xd8":"O","\u01fe":"O","\u0186":"O","\u019f":"O","\ua74a":"O","\ua74c":"O","\u01a2":"OI","\ua74e":"OO","\u0222":"OU","\u24c5":"P","\uff30":"P","\u1e54":"P","\u1e56":"P","\u01a4":"P","\u2c63":"P","\ua750":"P","\ua752":"P","\ua754":"P","\u24c6":"Q","\uff31":"Q","\ua756":"Q","\ua758":"Q","\u024a":"Q","\u24c7":"R","\uff32":"R","\u0154":"R","\u1e58":"R","\u0158":"R","\u0210":"R","\u0212":"R","\u1e5a":"R","\u1e5c":"R","\u0156":"R","\u1e5e":"R","\u024c":"R","\u2c64":"R","\ua75a":"R","\ua7a6":"R","\ua782":"R","\u24c8":"S","\uff33":"S","\u1e9e":"S","\u015a":"S","\u1e64":"S","\u015c":"S","\u1e60":"S","\u0160":"S","\u1e66":"S","\u1e62":"S","\u1e68":"S","\u0218":"S","\u015e":"S","\u2c7e":"S","\ua7a8":"S","\ua784":"S","\u24c9":"T","\uff34":"T","\u1e6a":"T","\u0164":"T","\u1e6c":"T","\u021a":"T","\u0162":"T","\u1e70":"T","\u1e6e":"T","\u0166":"T","\u01ac":"T","\u01ae":"T","\u023e":"T","\ua786":"T","\ua728":"TZ","\u24ca":"U","\uff35":"U","\xd9":"U","\xda":"U","\xdb":"U","\u0168":"U","\u1e78":"U","\u016a":"U","\u1e7a":"U","\u016c":"U","\xdc":"U","\u01db":"U","\u01d7":"U","\u01d5":"U","\u01d9":"U","\u1ee6":"U","\u016e":"U","\u0170":"U","\u01d3":"U","\u0214":"U","\u0216":"U","\u01af":"U","\u1eea":"U","\u1ee8":"U","\u1eee":"U","\u1eec":"U","\u1ef0":"U","\u1ee4":"U","\u1e72":"U","\u0172":"U","\u1e76":"U","\u1e74":"U","\u0244":"U","\u24cb":"V","\uff36":"V","\u1e7c":"V","\u1e7e":"V","\u01b2":"V","\ua75e":"V","\u0245":"V","\ua760":"VY","\u24cc":"W","\uff37":"W","\u1e80":"W","\u1e82":"W","\u0174":"W","\u1e86":"W","\u1e84":"W","\u1e88":"W","\u2c72":"W","\u24cd":"X","\uff38":"X","\u1e8a":"X","\u1e8c":"X","\u24ce":"Y","\uff39":"Y","\u1ef2":"Y","\xdd":"Y","\u0176":"Y","\u1ef8":"Y","\u0232":"Y","\u1e8e":"Y","\u0178":"Y","\u1ef6":"Y","\u1ef4":"Y","\u01b3":"Y","\u024e":"Y","\u1efe":"Y","\u24cf":"Z","\uff3a":"Z","\u0179":"Z","\u1e90":"Z","\u017b":"Z","\u017d":"Z","\u1e92":"Z","\u1e94":"Z","\u01b5":"Z","\u0224":"Z","\u2c7f":"Z","\u2c6b":"Z","\ua762":"Z","\u24d0":"a","\uff41":"a","\u1e9a":"a","\xe0":"a","\xe1":"a","\xe2":"a","\u1ea7":"a","\u1ea5":"a","\u1eab":"a","\u1ea9":"a","\xe3":"a","\u0101":"a","\u0103":"a","\u1eb1":"a","\u1eaf":"a","\u1eb5":"a","\u1eb3":"a","\u0227":"a","\u01e1":"a","\xe4":"a","\u01df":"a","\u1ea3":"a","\xe5":"a","\u01fb":"a","\u01ce":"a","\u0201":"a","\u0203":"a","\u1ea1":"a","\u1ead":"a","\u1eb7":"a","\u1e01":"a","\u0105":"a","\u2c65":"a","\u0250":"a","\ua733":"aa","\xe6":"ae","\u01fd":"ae","\u01e3":"ae","\ua735":"ao","\ua737":"au","\ua739":"av","\ua73b":"av","\ua73d":"ay","\u24d1":"b","\uff42":"b","\u1e03":"b","\u1e05":"b","\u1e07":"b","\u0180":"b","\u0183":"b","\u0253":"b","\u24d2":"c","\uff43":"c","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\xe7":"c","\u1e09":"c","\u0188":"c","\u023c":"c","\ua73f":"c","\u2184":"c","\u24d3":"d","\uff44":"d","\u1e0b":"d","\u010f":"d","\u1e0d":"d","\u1e11":"d","\u1e13":"d","\u1e0f":"d","\u0111":"d","\u018c":"d","\u0256":"d","\u0257":"d","\ua77a":"d","\u01f3":"dz","\u01c6":"dz","\u24d4":"e","\uff45":"e","\xe8":"e","\xe9":"e","\xea":"e","\u1ec1":"e","\u1ebf":"e","\u1ec5":"e","\u1ec3":"e","\u1ebd":"e","\u0113":"e","\u1e15":"e","\u1e17":"e","\u0115":"e","\u0117":"e","\xeb":"e","\u1ebb":"e","\u011b":"e","\u0205":"e","\u0207":"e","\u1eb9":"e","\u1ec7":"e","\u0229":"e","\u1e1d":"e","\u0119":"e","\u1e19":"e","\u1e1b":"e","\u0247":"e","\u025b":"e","\u01dd":"e","\u24d5":"f","\uff46":"f","\u1e1f":"f","\u0192":"f","\ua77c":"f","\u24d6":"g","\uff47":"g","\u01f5":"g","\u011d":"g","\u1e21":"g","\u011f":"g","\u0121":"g","\u01e7":"g","\u0123":"g","\u01e5":"g","\u0260":"g","\ua7a1":"g","\u1d79":"g","\ua77f":"g","\u24d7":"h","\uff48":"h","\u0125":"h","\u1e23":"h","\u1e27":"h","\u021f":"h","\u1e25":"h","\u1e29":"h","\u1e2b":"h","\u1e96":"h","\u0127":"h","\u2c68":"h","\u2c76":"h","\u0265":"h","\u0195":"hv","\u24d8":"i","\uff49":"i","\xec":"i","\xed":"i","\xee":"i","\u0129":"i","\u012b":"i","\u012d":"i","\xef":"i","\u1e2f":"i","\u1ec9":"i","\u01d0":"i","\u0209":"i","\u020b":"i","\u1ecb":"i","\u012f":"i","\u1e2d":"i","\u0268":"i","\u0131":"i","\u24d9":"j","\uff4a":"j","\u0135":"j","\u01f0":"j","\u0249":"j","\u24da":"k","\uff4b":"k","\u1e31":"k","\u01e9":"k","\u1e33":"k","\u0137":"k","\u1e35":"k","\u0199":"k","\u2c6a":"k","\ua741":"k","\ua743":"k","\ua745":"k","\ua7a3":"k","\u24db":"l","\uff4c":"l","\u0140":"l","\u013a":"l","\u013e":"l","\u1e37":"l","\u1e39":"l","\u013c":"l","\u1e3d":"l","\u1e3b":"l","\u017f":"l","\u0142":"l","\u019a":"l","\u026b":"l","\u2c61":"l","\ua749":"l","\ua781":"l","\ua747":"l","\u01c9":"lj","\u24dc":"m","\uff4d":"m","\u1e3f":"m","\u1e41":"m","\u1e43":"m","\u0271":"m","\u026f":"m","\u24dd":"n","\uff4e":"n","\u01f9":"n","\u0144":"n","\xf1":"n","\u1e45":"n","\u0148":"n","\u1e47":"n","\u0146":"n","\u1e4b":"n","\u1e49":"n","\u019e":"n","\u0272":"n","\u0149":"n","\ua791":"n","\ua7a5":"n","\u01cc":"nj","\u24de":"o","\uff4f":"o","\xf2":"o","\xf3":"o","\xf4":"o","\u1ed3":"o","\u1ed1":"o","\u1ed7":"o","\u1ed5":"o","\xf5":"o","\u1e4d":"o","\u022d":"o","\u1e4f":"o","\u014d":"o","\u1e51":"o","\u1e53":"o","\u014f":"o","\u022f":"o","\u0231":"o","\xf6":"o","\u022b":"o","\u1ecf":"o","\u0151":"o","\u01d2":"o","\u020d":"o","\u020f":"o","\u01a1":"o","\u1edd":"o","\u1edb":"o","\u1ee1":"o","\u1edf":"o","\u1ee3":"o","\u1ecd":"o","\u1ed9":"o","\u01eb":"o","\u01ed":"o","\xf8":"o","\u01ff":"o","\u0254":"o","\ua74b":"o","\ua74d":"o","\u0275":"o","\u01a3":"oi","\u0223":"ou","\ua74f":"oo","\u24df":"p","\uff50":"p","\u1e55":"p","\u1e57":"p","\u01a5":"p","\u1d7d":"p","\ua751":"p","\ua753":"p","\ua755":"p","\u24e0":"q","\uff51":"q","\u024b":"q","\ua757":"q","\ua759":"q","\u24e1":"r","\uff52":"r","\u0155":"r","\u1e59":"r","\u0159":"r","\u0211":"r","\u0213":"r","\u1e5b":"r","\u1e5d":"r","\u0157":"r","\u1e5f":"r","\u024d":"r","\u027d":"r","\ua75b":"r","\ua7a7":"r","\ua783":"r","\u24e2":"s","\uff53":"s","\xdf":"s","\u015b":"s","\u1e65":"s","\u015d":"s","\u1e61":"s","\u0161":"s","\u1e67":"s","\u1e63":"s","\u1e69":"s","\u0219":"s","\u015f":"s","\u023f":"s","\ua7a9":"s","\ua785":"s","\u1e9b":"s","\u24e3":"t","\uff54":"t","\u1e6b":"t","\u1e97":"t","\u0165":"t","\u1e6d":"t","\u021b":"t","\u0163":"t","\u1e71":"t","\u1e6f":"t","\u0167":"t","\u01ad":"t","\u0288":"t","\u2c66":"t","\ua787":"t","\ua729":"tz","\u24e4":"u","\uff55":"u","\xf9":"u","\xfa":"u","\xfb":"u","\u0169":"u","\u1e79":"u","\u016b":"u","\u1e7b":"u","\u016d":"u","\xfc":"u","\u01dc":"u","\u01d8":"u","\u01d6":"u","\u01da":"u","\u1ee7":"u","\u016f":"u","\u0171":"u","\u01d4":"u","\u0215":"u","\u0217":"u","\u01b0":"u","\u1eeb":"u","\u1ee9":"u","\u1eef":"u","\u1eed":"u","\u1ef1":"u","\u1ee5":"u","\u1e73":"u","\u0173":"u","\u1e77":"u","\u1e75":"u","\u0289":"u","\u24e5":"v","\uff56":"v","\u1e7d":"v","\u1e7f":"v","\u028b":"v","\ua75f":"v","\u028c":"v","\ua761":"vy","\u24e6":"w","\uff57":"w","\u1e81":"w","\u1e83":"w","\u0175":"w","\u1e87":"w","\u1e85":"w","\u1e98":"w","\u1e89":"w","\u2c73":"w","\u24e7":"x","\uff58":"x","\u1e8b":"x","\u1e8d":"x","\u24e8":"y","\uff59":"y","\u1ef3":"y","\xfd":"y","\u0177":"y","\u1ef9":"y","\u0233":"y","\u1e8f":"y","\xff":"y","\u1ef7":"y","\u1e99":"y","\u1ef5":"y","\u01b4":"y","\u024f":"y","\u1eff":"y","\u24e9":"z","\uff5a":"z","\u017a":"z","\u1e91":"z","\u017c":"z","\u017e":"z","\u1e93":"z","\u1e95":"z","\u01b6":"z","\u0225":"z","\u0240":"z","\u2c6c":"z","\ua763":"z","\u0386":"\u0391","\u0388":"\u0395","\u0389":"\u0397","\u038a":"\u0399","\u03aa":"\u0399","\u038c":"\u039f","\u038e":"\u03a5","\u03ab":"\u03a5","\u038f":"\u03a9","\u03ac":"\u03b1","\u03ad":"\u03b5","\u03ae":"\u03b7","\u03af":"\u03b9","\u03ca":"\u03b9","\u0390":"\u03b9","\u03cc":"\u03bf","\u03cd":"\u03c5","\u03cb":"\u03c5","\u03b0":"\u03c5","\u03c9":"\u03c9","\u03c2":"\u03c3"};j=a(document),g=function(){var a=1;return function(){return a++}}(),d=O(Object,{bind:function(a){var b=this;return function(){a.apply(b,arguments)}},init:function(c){var d,e,f=".select2-results";this.opts=c=this.prepareOpts(c),this.id=c.id,c.element.data("select2")!==b&&null!==c.element.data("select2")&&c.element.data("select2").destroy(),this.container=this.createContainer(),this.liveRegion=a("",{role:"status","aria-live":"polite"}).addClass("select2-hidden-accessible").appendTo(document.body),this.containerId="s2id_"+(c.element.attr("id")||"autogen"+g()),this.containerEventName=this.containerId.replace(/([.])/g,"_").replace(/([;&,\-\.\+\*\~':"\!\^#$%@\[\]\(\)=>\|])/g,"\\$1"),this.container.attr("id",this.containerId),this.container.attr("title",c.element.attr("title")),this.body=a("body"),D(this.container,this.opts.element,this.opts.adaptContainerCssClass),this.container.attr("style",c.element.attr("style")),this.container.css(K(c.containerCss,this.opts.element)),this.container.addClass(K(c.containerCssClass,this.opts.element)),this.elementTabIndex=this.opts.element.attr("tabindex"),this.opts.element.data("select2",this).attr("tabindex","-1").before(this.container).on("click.select2",A),this.container.data("select2",this),this.dropdown=this.container.find(".select2-drop"),D(this.dropdown,this.opts.element,this.opts.adaptDropdownCssClass),this.dropdown.addClass(K(c.dropdownCssClass,this.opts.element)),this.dropdown.data("select2",this),this.dropdown.on("click",A),this.results=d=this.container.find(f),this.search=e=this.container.find("input.select2-input"),this.queryCount=0,this.resultsPage=0,this.context=null,this.initContainer(),this.container.on("click",A),v(this.results),this.dropdown.on("mousemove-filtered",f,this.bind(this.highlightUnderEvent)),this.dropdown.on("touchstart touchmove touchend",f,this.bind(function(a){this._touchEvent=!0,this.highlightUnderEvent(a)})),this.dropdown.on("touchmove",f,this.bind(this.touchMoved)),this.dropdown.on("touchstart touchend",f,this.bind(this.clearTouchMoved)),this.dropdown.on("click",this.bind(function(){this._touchEvent&&(this._touchEvent=!1,this.selectHighlighted())})),x(80,this.results),this.dropdown.on("scroll-debounced",f,this.bind(this.loadMoreIfNeeded)),a(this.container).on("change",".select2-input",function(a){a.stopPropagation()}),a(this.dropdown).on("change",".select2-input",function(a){a.stopPropagation()}),a.fn.mousewheel&&d.mousewheel(function(a,b,c,e){var f=d.scrollTop();e>0&&0>=f-e?(d.scrollTop(0),A(a)):0>e&&d.get(0).scrollHeight-d.scrollTop()+e<=d.height()&&(d.scrollTop(d.get(0).scrollHeight-d.height()),A(a))}),u(e),e.on("keyup-change input paste",this.bind(this.updateResults)),e.on("focus",function(){e.addClass("select2-focused")}),e.on("blur",function(){e.removeClass("select2-focused")}),this.dropdown.on("mouseup",f,this.bind(function(b){a(b.target).closest(".select2-result-selectable").length>0&&(this.highlightUnderEvent(b),this.selectHighlighted(b))})),this.dropdown.on("click mouseup mousedown touchstart touchend focusin",function(a){a.stopPropagation()}),this.nextSearchTerm=b,a.isFunction(this.opts.initSelection)&&(this.initSelection(),this.monitorSource()),null!==c.maximumInputLength&&this.search.attr("maxlength",c.maximumInputLength);var h=c.element.prop("disabled");h===b&&(h=!1),this.enable(!h);var i=c.element.prop("readonly");i===b&&(i=!1),this.readonly(i),k=k||q(),this.autofocus=c.element.prop("autofocus"),c.element.prop("autofocus",!1),this.autofocus&&this.focus(),this.search.attr("placeholder",c.searchInputPlaceholder)},destroy:function(){var a=this.opts.element,c=a.data("select2"),d=this;this.close(),a.length&&a[0].detachEvent&&a.each(function(){this.detachEvent("onpropertychange",d._sync)}),this.propertyObserver&&(this.propertyObserver.disconnect(),this.propertyObserver=null),this._sync=null,c!==b&&(c.container.remove(),c.liveRegion.remove(),c.dropdown.remove(),a.removeClass("select2-offscreen").removeData("select2").off(".select2").prop("autofocus",this.autofocus||!1),this.elementTabIndex?a.attr({tabindex:this.elementTabIndex}):a.removeAttr("tabindex"),a.show()),N.call(this,"container","liveRegion","dropdown","results","search")},optionToData:function(a){return a.is("option")?{id:a.prop("value"),text:a.text(),element:a.get(),css:a.attr("class"),disabled:a.prop("disabled"),locked:r(a.attr("locked"),"locked")||r(a.data("locked"),!0)}:a.is("optgroup")?{text:a.attr("label"),children:[],element:a.get(),css:a.attr("class")}:void 0},prepareOpts:function(c){var d,e,f,h,i=this;if(d=c.element,"select"===d.get(0).tagName.toLowerCase()&&(this.select=e=c.element),e&&a.each(["id","multiple","ajax","query","createSearchChoice","initSelection","data","tags"],function(){if(this in c)throw new Error("Option '"+this+"' is not allowed for Select2 when attached to a ","
    "," ","
      ","
    ","
    "].join(""));return b},enableInterface:function(){this.parent.enableInterface.apply(this,arguments)&&this.focusser.prop("disabled",!this.isInterfaceEnabled())},opening:function(){var c,d,e;this.opts.minimumResultsForSearch>=0&&this.showSearch(!0),this.parent.opening.apply(this,arguments),this.showSearchInput!==!1&&this.search.val(this.focusser.val()),this.opts.shouldFocusInput(this)&&(this.search.focus(),c=this.search.get(0),c.createTextRange?(d=c.createTextRange(),d.collapse(!1),d.select()):c.setSelectionRange&&(e=this.search.val().length,c.setSelectionRange(e,e))),""===this.search.val()&&this.nextSearchTerm!=b&&(this.search.val(this.nextSearchTerm),this.search.select()),this.focusser.prop("disabled",!0).val(""),this.updateResults(!0),this.opts.element.trigger(a.Event("select2-open"))},close:function(){this.opened()&&(this.parent.close.apply(this,arguments),this.focusser.prop("disabled",!1),this.opts.shouldFocusInput(this)&&this.focusser.focus())},focus:function(){this.opened()?this.close():(this.focusser.prop("disabled",!1),this.opts.shouldFocusInput(this)&&this.focusser.focus())},isFocused:function(){return this.container.hasClass("select2-container-active")},cancel:function(){this.parent.cancel.apply(this,arguments),this.focusser.prop("disabled",!1),this.opts.shouldFocusInput(this)&&this.focusser.focus()},destroy:function(){a("label[for='"+this.focusser.attr("id")+"']").attr("for",this.opts.element.attr("id")),this.parent.destroy.apply(this,arguments),N.call(this,"selection","focusser")},initContainer:function(){var b,h,d=this.container,e=this.dropdown,f=g();this.opts.minimumResultsForSearch<0?this.showSearch(!1):this.showSearch(!0),this.selection=b=d.find(".select2-choice"),this.focusser=d.find(".select2-focusser"),b.find(".select2-chosen").attr("id","select2-chosen-"+f),this.focusser.attr("aria-labelledby","select2-chosen-"+f),this.results.attr("id","select2-results-"+f),this.search.attr("aria-owns","select2-results-"+f),this.focusser.attr("id","s2id_autogen"+f),h=a("label[for='"+this.opts.element.attr("id")+"']"),this.focusser.prev().text(h.text()).attr("for",this.focusser.attr("id"));var i=this.opts.element.attr("title");this.opts.element.attr("title",i||h.text()),this.focusser.attr("tabindex",this.elementTabIndex),this.search.attr("id",this.focusser.attr("id")+"_search"),this.search.prev().text(a("label[for='"+this.focusser.attr("id")+"']").text()).attr("for",this.search.attr("id")),this.search.on("keydown",this.bind(function(a){if(this.isInterfaceEnabled()&&229!=a.keyCode){if(a.which===c.PAGE_UP||a.which===c.PAGE_DOWN)return A(a),void 0;switch(a.which){case c.UP:case c.DOWN:return this.moveHighlight(a.which===c.UP?-1:1),A(a),void 0;case c.ENTER:return this.selectHighlighted(),A(a),void 0;case c.TAB:return this.selectHighlighted({noFocus:!0}),void 0;case c.ESC:return this.cancel(a),A(a),void 0}}})),this.search.on("blur",this.bind(function(){document.activeElement===this.body.get(0)&&window.setTimeout(this.bind(function(){this.opened()&&this.search.focus()}),0)})),this.focusser.on("keydown",this.bind(function(a){if(this.isInterfaceEnabled()&&a.which!==c.TAB&&!c.isControl(a)&&!c.isFunctionKey(a)&&a.which!==c.ESC){if(this.opts.openOnEnter===!1&&a.which===c.ENTER)return A(a),void 0;if(a.which==c.DOWN||a.which==c.UP||a.which==c.ENTER&&this.opts.openOnEnter){if(a.altKey||a.ctrlKey||a.shiftKey||a.metaKey)return;return this.open(),A(a),void 0}return a.which==c.DELETE||a.which==c.BACKSPACE?(this.opts.allowClear&&this.clear(),A(a),void 0):void 0}})),u(this.focusser),this.focusser.on("keyup-change input",this.bind(function(a){if(this.opts.minimumResultsForSearch>=0){if(a.stopPropagation(),this.opened())return;this.open()}})),b.on("mousedown touchstart","abbr",this.bind(function(a){this.isInterfaceEnabled()&&(this.clear(),B(a),this.close(),this.selection.focus())})),b.on("mousedown touchstart",this.bind(function(c){n(b),this.container.hasClass("select2-container-active")||this.opts.element.trigger(a.Event("select2-focus")),this.opened()?this.close():this.isInterfaceEnabled()&&this.open(),A(c)})),e.on("mousedown touchstart",this.bind(function(){this.opts.shouldFocusInput(this)&&this.search.focus()})),b.on("focus",this.bind(function(a){A(a)})),this.focusser.on("focus",this.bind(function(){this.container.hasClass("select2-container-active")||this.opts.element.trigger(a.Event("select2-focus")),this.container.addClass("select2-container-active")})).on("blur",this.bind(function(){this.opened()||(this.container.removeClass("select2-container-active"),this.opts.element.trigger(a.Event("select2-blur")))})),this.search.on("focus",this.bind(function(){this.container.hasClass("select2-container-active")||this.opts.element.trigger(a.Event("select2-focus")),this.container.addClass("select2-container-active")})),this.initContainerWidth(),this.opts.element.addClass("select2-offscreen"),this.setPlaceholder()},clear:function(b){var c=this.selection.data("select2-data");if(c){var d=a.Event("select2-clearing");if(this.opts.element.trigger(d),d.isDefaultPrevented())return;var e=this.getPlaceholderOption();this.opts.element.val(e?e.val():""),this.selection.find(".select2-chosen").empty(),this.selection.removeData("select2-data"),this.setPlaceholder(),b!==!1&&(this.opts.element.trigger({type:"select2-removed",val:this.id(c),choice:c}),this.triggerChange({removed:c}))}},initSelection:function(){if(this.isPlaceholderOptionSelected())this.updateSelection(null),this.close(),this.setPlaceholder();else{var c=this;this.opts.initSelection.call(null,this.opts.element,function(a){a!==b&&null!==a&&(c.updateSelection(a),c.close(),c.setPlaceholder(),c.nextSearchTerm=c.opts.nextSearchTerm(a,c.search.val()))})}},isPlaceholderOptionSelected:function(){var a;return this.getPlaceholder()===b?!1:(a=this.getPlaceholderOption())!==b&&a.prop("selected")||""===this.opts.element.val()||this.opts.element.val()===b||null===this.opts.element.val()},prepareOpts:function(){var b=this.parent.prepareOpts.apply(this,arguments),c=this;return"select"===b.element.get(0).tagName.toLowerCase()?b.initSelection=function(a,b){var d=a.find("option").filter(function(){return this.selected&&!this.disabled});b(c.optionToData(d))}:"data"in b&&(b.initSelection=b.initSelection||function(c,d){var e=c.val(),f=null;b.query({matcher:function(a,c,d){var g=r(e,b.id(d));return g&&(f=d),g},callback:a.isFunction(d)?function(){d(f)}:a.noop})}),b},getPlaceholder:function(){return this.select&&this.getPlaceholderOption()===b?b:this.parent.getPlaceholder.apply(this,arguments)},setPlaceholder:function(){var a=this.getPlaceholder();if(this.isPlaceholderOptionSelected()&&a!==b){if(this.select&&this.getPlaceholderOption()===b)return;this.selection.find(".select2-chosen").html(this.opts.escapeMarkup(a)),this.selection.addClass("select2-default"),this.container.removeClass("select2-allowclear")}},postprocessResults:function(a,b,c){var d=0,e=this;if(this.findHighlightableChoices().each2(function(a,b){return r(e.id(b.data("select2-data")),e.opts.element.val())?(d=a,!1):void 0}),c!==!1&&(b===!0&&d>=0?this.highlight(d):this.highlight(0)),b===!0){var g=this.opts.minimumResultsForSearch;g>=0&&this.showSearch(L(a.results)>=g)}},showSearch:function(b){this.showSearchInput!==b&&(this.showSearchInput=b,this.dropdown.find(".select2-search").toggleClass("select2-search-hidden",!b),this.dropdown.find(".select2-search").toggleClass("select2-offscreen",!b),a(this.dropdown,this.container).toggleClass("select2-with-searchbox",b))},onSelect:function(a,b){if(this.triggerSelect(a)){var c=this.opts.element.val(),d=this.data();this.opts.element.val(this.id(a)),this.updateSelection(a),this.opts.element.trigger({type:"select2-selected",val:this.id(a),choice:a}),this.nextSearchTerm=this.opts.nextSearchTerm(a,this.search.val()),this.close(),b&&b.noFocus||!this.opts.shouldFocusInput(this)||this.focusser.focus(),r(c,this.id(a))||this.triggerChange({added:a,removed:d})}},updateSelection:function(a){var d,e,c=this.selection.find(".select2-chosen");this.selection.data("select2-data",a),c.empty(),null!==a&&(d=this.opts.formatSelection(a,c,this.opts.escapeMarkup)),d!==b&&c.append(d),e=this.opts.formatSelectionCssClass(a,c),e!==b&&c.addClass(e),this.selection.removeClass("select2-default"),this.opts.allowClear&&this.getPlaceholder()!==b&&this.container.addClass("select2-allowclear")},val:function(){var a,c=!1,d=null,e=this,f=this.data();if(0===arguments.length)return this.opts.element.val();if(a=arguments[0],arguments.length>1&&(c=arguments[1]),this.select)this.select.val(a).find("option").filter(function(){return this.selected}).each2(function(a,b){return d=e.optionToData(b),!1}),this.updateSelection(d),this.setPlaceholder(),c&&this.triggerChange({added:d,removed:f});else{if(!a&&0!==a)return this.clear(c),void 0;if(this.opts.initSelection===b)throw new Error("cannot call val() if initSelection() is not defined");this.opts.element.val(a),this.opts.initSelection(this.opts.element,function(a){e.opts.element.val(a?e.id(a):""),e.updateSelection(a),e.setPlaceholder(),c&&e.triggerChange({added:a,removed:f})})}},clearSearch:function(){this.search.val(""),this.focusser.val("")},data:function(a){var c,d=!1;return 0===arguments.length?(c=this.selection.data("select2-data"),c==b&&(c=null),c):(arguments.length>1&&(d=arguments[1]),a?(c=this.data(),this.opts.element.val(a?this.id(a):""),this.updateSelection(a),d&&this.triggerChange({added:a,removed:c})):this.clear(d),void 0)}}),f=O(d,{createContainer:function(){var b=a(document.createElement("div")).attr({"class":"select2-container select2-container-multi"}).html(["
      ","
    • "," "," ","
    • ","
    ","
    ","
      ","
    ","
    "].join(""));return b},prepareOpts:function(){var b=this.parent.prepareOpts.apply(this,arguments),c=this;return"select"===b.element.get(0).tagName.toLowerCase()?b.initSelection=function(a,b){var d=[];a.find("option").filter(function(){return this.selected&&!this.disabled}).each2(function(a,b){d.push(c.optionToData(b))}),b(d)}:"data"in b&&(b.initSelection=b.initSelection||function(c,d){var e=s(c.val(),b.separator),f=[];b.query({matcher:function(c,d,g){var h=a.grep(e,function(a){return r(a,b.id(g))}).length;return h&&f.push(g),h},callback:a.isFunction(d)?function(){for(var a=[],c=0;c0||(this.selectChoice(null),this.clearPlaceholder(),this.container.hasClass("select2-container-active")||this.opts.element.trigger(a.Event("select2-focus")),this.open(),this.focusSearch(),b.preventDefault()))})),this.container.on("focus",b,this.bind(function(){this.isInterfaceEnabled()&&(this.container.hasClass("select2-container-active")||this.opts.element.trigger(a.Event("select2-focus")),this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active"),this.clearPlaceholder())})),this.initContainerWidth(),this.opts.element.addClass("select2-offscreen"),this.clearSearch()},enableInterface:function(){this.parent.enableInterface.apply(this,arguments)&&this.search.prop("disabled",!this.isInterfaceEnabled())},initSelection:function(){if(""===this.opts.element.val()&&""===this.opts.element.text()&&(this.updateSelection([]),this.close(),this.clearSearch()),this.select||""!==this.opts.element.val()){var c=this;this.opts.initSelection.call(null,this.opts.element,function(a){a!==b&&null!==a&&(c.updateSelection(a),c.close(),c.clearSearch())})}},clearSearch:function(){var a=this.getPlaceholder(),c=this.getMaxSearchWidth();a!==b&&0===this.getVal().length&&this.search.hasClass("select2-focused")===!1?(this.search.val(a).addClass("select2-default"),this.search.width(c>0?c:this.container.css("width"))):this.search.val("").width(10)},clearPlaceholder:function(){this.search.hasClass("select2-default")&&this.search.val("").removeClass("select2-default")},opening:function(){this.clearPlaceholder(),this.resizeSearch(),this.parent.opening.apply(this,arguments),this.focusSearch(),""===this.search.val()&&this.nextSearchTerm!=b&&(this.search.val(this.nextSearchTerm),this.search.select()),this.updateResults(!0),this.opts.shouldFocusInput(this)&&this.search.focus(),this.opts.element.trigger(a.Event("select2-open"))},close:function(){this.opened()&&this.parent.close.apply(this,arguments)},focus:function(){this.close(),this.search.focus()},isFocused:function(){return this.search.hasClass("select2-focused")},updateSelection:function(b){var c=[],d=[],e=this;a(b).each(function(){p(e.id(this),c)<0&&(c.push(e.id(this)),d.push(this))}),b=d,this.selection.find(".select2-search-choice").remove(),a(b).each(function(){e.addSelectedChoice(this)}),e.postprocessResults()},tokenize:function(){var a=this.search.val();a=this.opts.tokenizer.call(this,a,this.data(),this.bind(this.onSelect),this.opts),null!=a&&a!=b&&(this.search.val(a),a.length>0&&this.open())},onSelect:function(a,c){this.triggerSelect(a)&&""!==a.text&&(this.addSelectedChoice(a),this.opts.element.trigger({type:"selected",val:this.id(a),choice:a}),this.nextSearchTerm=this.opts.nextSearchTerm(a,this.search.val()),this.clearSearch(),this.updateResults(),(this.select||!this.opts.closeOnSelect)&&this.postprocessResults(a,!1,this.opts.closeOnSelect===!0),this.opts.closeOnSelect?(this.close(),this.search.width(10)):this.countSelectableResults()>0?(this.search.width(10),this.resizeSearch(),this.getMaximumSelectionSize()>0&&this.val().length>=this.getMaximumSelectionSize()?this.updateResults(!0):this.nextSearchTerm!=b&&(this.search.val(this.nextSearchTerm),this.updateResults(),this.search.select()),this.positionDropdown()):(this.close(),this.search.width(10)),this.triggerChange({added:a}),c&&c.noFocus||this.focusSearch())},cancel:function(){this.close(),this.focusSearch()},addSelectedChoice:function(c){var j,k,d=!c.locked,e=a("
  • "),f=a("
  • "),g=d?e:f,h=this.id(c),i=this.getVal();j=this.opts.formatSelection(c,g.find("div"),this.opts.escapeMarkup),j!=b&&g.find("div").replaceWith("
    "+j+"
    "),k=this.opts.formatSelectionCssClass(c,g.find("div")),k!=b&&g.addClass(k),d&&g.find(".select2-search-choice-close").on("mousedown",A).on("click dblclick",this.bind(function(b){this.isInterfaceEnabled()&&(this.unselect(a(b.target)),this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus"),A(b),this.close(),this.focusSearch())})).on("focus",this.bind(function(){this.isInterfaceEnabled()&&(this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active"))})),g.data("select2-data",c),g.insertBefore(this.searchContainer),i.push(h),this.setVal(i)},unselect:function(b){var d,e,c=this.getVal();if(b=b.closest(".select2-search-choice"),0===b.length)throw"Invalid argument: "+b+". Must be .select2-search-choice";if(d=b.data("select2-data")){var f=a.Event("select2-removing");if(f.val=this.id(d),f.choice=d,this.opts.element.trigger(f),f.isDefaultPrevented())return!1;for(;(e=p(this.id(d),c))>=0;)c.splice(e,1),this.setVal(c),this.select&&this.postprocessResults();return b.remove(),this.opts.element.trigger({type:"select2-removed",val:this.id(d),choice:d}),this.triggerChange({removed:d}),!0}},postprocessResults:function(a,b,c){var d=this.getVal(),e=this.results.find(".select2-result"),f=this.results.find(".select2-result-with-children"),g=this;e.each2(function(a,b){var c=g.id(b.data("select2-data"));p(c,d)>=0&&(b.addClass("select2-selected"),b.find(".select2-result-selectable").addClass("select2-selected"))}),f.each2(function(a,b){b.is(".select2-result-selectable")||0!==b.find(".select2-result-selectable:not(.select2-selected)").length||b.addClass("select2-selected")}),-1==this.highlight()&&c!==!1&&g.highlight(0),!this.opts.createSearchChoice&&!e.filter(".select2-result:not(.select2-selected)").length>0&&(!a||a&&!a.more&&0===this.results.find(".select2-no-results").length)&&J(g.opts.formatNoMatches,"formatNoMatches")&&this.results.append("
  • "+K(g.opts.formatNoMatches,g.opts.element,g.search.val())+"
  • ")},getMaxSearchWidth:function(){return this.selection.width()-t(this.search)},resizeSearch:function(){var a,b,c,d,e,f=t(this.search);a=C(this.search)+10,b=this.search.offset().left,c=this.selection.width(),d=this.selection.offset().left,e=c-(b-d)-f,a>e&&(e=c-f),40>e&&(e=c-f),0>=e&&(e=a),this.search.width(Math.floor(e))},getVal:function(){var a;return this.select?(a=this.select.val(),null===a?[]:a):(a=this.opts.element.val(),s(a,this.opts.separator))},setVal:function(b){var c;this.select?this.select.val(b):(c=[],a(b).each(function(){p(this,c)<0&&c.push(this)}),this.opts.element.val(0===c.length?"":c.join(this.opts.separator)))},buildChangeDetails:function(a,b){for(var b=b.slice(0),a=a.slice(0),c=0;c0&&c--,a.splice(d,1),d--);return{added:b,removed:a}},val:function(c,d){var e,f=this;if(0===arguments.length)return this.getVal();if(e=this.data(),e.length||(e=[]),!c&&0!==c)return this.opts.element.val(""),this.updateSelection([]),this.clearSearch(),d&&this.triggerChange({added:this.data(),removed:e}),void 0;if(this.setVal(c),this.select)this.opts.initSelection(this.select,this.bind(this.updateSelection)),d&&this.triggerChange(this.buildChangeDetails(e,this.data()));else{if(this.opts.initSelection===b)throw new Error("val() cannot be called if initSelection() is not defined");this.opts.initSelection(this.opts.element,function(b){var c=a.map(b,f.id);f.setVal(c),f.updateSelection(b),f.clearSearch(),d&&f.triggerChange(f.buildChangeDetails(e,f.data()))})}this.clearSearch()},onSortStart:function(){if(this.select)throw new Error("Sorting of elements is not supported when attached to instead.");this.search.width(0),this.searchContainer.hide()},onSortEnd:function(){var b=[],c=this;this.searchContainer.show(),this.searchContainer.appendTo(this.searchContainer.parent()),this.resizeSearch(),this.selection.find(".select2-search-choice").each(function(){b.push(c.opts.id(a(this).data("select2-data")))}),this.setVal(b),this.triggerChange()},data:function(b,c){var e,f,d=this;return 0===arguments.length?this.selection.children(".select2-search-choice").map(function(){return a(this).data("select2-data")}).get():(f=this.data(),b||(b=[]),e=a.map(b,function(a){return d.opts.id(a)}),this.setVal(e),this.updateSelection(b),this.clearSearch(),c&&this.triggerChange(this.buildChangeDetails(f,this.data())),void 0)}}),a.fn.select2=function(){var d,e,f,g,h,c=Array.prototype.slice.call(arguments,0),i=["val","destroy","opened","open","close","focus","isFocused","container","dropdown","onSortStart","onSortEnd","enable","disable","readonly","positionDropdown","data","search"],j=["opened","isFocused","container","dropdown"],k=["val","data"],l={search:"externalSearch"};return this.each(function(){if(0===c.length||"object"==typeof c[0])d=0===c.length?{}:a.extend({},c[0]),d.element=a(this),"select"===d.element.get(0).tagName.toLowerCase()?h=d.element.prop("multiple"):(h=d.multiple||!1,"tags"in d&&(d.multiple=h=!0)),e=h?new window.Select2["class"].multi:new window.Select2["class"].single,e.init(d);else{if("string"!=typeof c[0])throw"Invalid arguments to select2 plugin: "+c;if(p(c[0],i)<0)throw"Unknown method: "+c[0];if(g=b,e=a(this).data("select2"),e===b)return;if(f=c[0],"container"===f?g=e.container:"dropdown"===f?g=e.dropdown:(l[f]&&(f=l[f]),g=e[f].apply(e,c.slice(1))),p(c[0],j)>=0||p(c[0],k)>=0&&1==c.length)return!1}}),g===b?this:g},a.fn.select2.defaults={width:"copy",loadMorePadding:0,closeOnSelect:!0,openOnEnter:!0,containerCss:{},dropdownCss:{},containerCssClass:"",dropdownCssClass:"",formatResult:function(a,b,c,d){var e=[];return E(a.text,c.term,e,d),e.join("")},formatSelection:function(a,c,d){return a?d(a.text):b},sortResults:function(a){return a},formatResultCssClass:function(a){return a.css},formatSelectionCssClass:function(){return b},minimumResultsForSearch:0,minimumInputLength:0,maximumInputLength:null,maximumSelectionSize:0,id:function(a){return a==b?null:a.id},matcher:function(a,b){return o(""+b).toUpperCase().indexOf(o(""+a).toUpperCase())>=0},separator:",",tokenSeparators:[],tokenizer:M,escapeMarkup:F,blurOnChange:!1,selectOnBlur:!1,adaptContainerCssClass:function(a){return a},adaptDropdownCssClass:function(){return null},nextSearchTerm:function(){return b},searchInputPlaceholder:"",createSearchChoicePosition:"top",shouldFocusInput:function(a){var b="ontouchstart"in window||navigator.msMaxTouchPoints>0;return b?a.opts.minimumResultsForSearch<0?!1:!0:!0}},a.fn.select2.locales=[],a.fn.select2.locales.en={formatMatches:function(a){return 1===a?"One result is available, press enter to select it.":a+" results are available, use up and down arrow keys to navigate." +},formatNoMatches:function(){return"No matches found"},formatAjaxError:function(){return"Loading failed"},formatInputTooShort:function(a,b){var c=b-a.length;return"Please enter "+c+" or more character"+(1==c?"":"s")},formatInputTooLong:function(a,b){var c=a.length-b;return"Please delete "+c+" character"+(1==c?"":"s")},formatSelectionTooBig:function(a){return"You can only select "+a+" item"+(1==a?"":"s")},formatLoadMore:function(){return"Loading more results\u2026"},formatSearching:function(){return"Searching\u2026"}},a.extend(a.fn.select2.defaults,a.fn.select2.locales.en),a.fn.select2.ajaxDefaults={transport:a.ajax,params:{type:"GET",cache:!1,dataType:"json"}},window.Select2={query:{ajax:G,local:H,tags:I},util:{debounce:w,markMatch:E,escapeMarkup:F,stripDiacritics:o},"class":{"abstract":d,single:e,multi:f}}}}(jQuery); \ No newline at end of file diff --git a/app/assets/javascripts/validator.js b/app/assets/javascripts/validator.js index 528948f..2cd0f65 100644 --- a/app/assets/javascripts/validator.js +++ b/app/assets/javascripts/validator.js @@ -60,7 +60,7 @@ var FormValidator = function(form){ } } }) - if(fv.form.find("div.validator_error_class").length){ + if(failed_elements.length){ var offset = failed_elements[0].offset().top - fv.form.offset().top + fv.form.scrollTop(); fv.form.parent().animate({scrollTop:offset-50}, '300', 'swing'); return false; diff --git a/app/assets/stylesheets/lib/orbit_bar/orbit-bar.scss.erb b/app/assets/stylesheets/lib/orbit_bar/orbit-bar.scss.erb index bae6438..384cbd5 100644 --- a/app/assets/stylesheets/lib/orbit_bar/orbit-bar.scss.erb +++ b/app/assets/stylesheets/lib/orbit_bar/orbit-bar.scss.erb @@ -45,7 +45,7 @@ $orbit-bar-bgc-lighter: lighten($orbit-bar-bgc, 20%) !default; left: 0; font-family: 'Chivo'; font-size: 16px; - z-index: 999; + z-index: 1060; -webkit-box-sizing: initial; -moz-box-sizing: initial; box-sizing: initial; diff --git a/app/assets/stylesheets/select2/select2.css.erb b/app/assets/stylesheets/select2/select2.css.erb new file mode 100755 index 0000000..b0a4fa0 --- /dev/null +++ b/app/assets/stylesheets/select2/select2.css.erb @@ -0,0 +1,704 @@ +/* +Version: 3.5.1 Timestamp: Tue Jul 22 18:58:56 EDT 2014 +*/ +.select2-container { + margin: 0; + position: relative; + display: inline-block; + /* inline-block for ie7 */ + zoom: 1; + *display: inline; + vertical-align: middle; +} + +.select2-container, +.select2-drop, +.select2-search, +.select2-search input { + /* + Force border-box so that % widths fit the parent + container without overlap because of margin/padding. + More Info : http://www.quirksmode.org/css/box.html + */ + -webkit-box-sizing: border-box; /* webkit */ + -moz-box-sizing: border-box; /* firefox */ + box-sizing: border-box; /* css3 */ +} + +.select2-container .select2-choice { + display: block; + height: 26px; + padding: 0 0 0 8px; + overflow: hidden; + position: relative; + + border: 1px solid #aaa; + white-space: nowrap; + line-height: 26px; + color: #444; + text-decoration: none; + + border-radius: 4px; + + background-clip: padding-box; + + -webkit-touch-callout: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + + background-color: #fff; + background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #eee), color-stop(0.5, #fff)); + background-image: -webkit-linear-gradient(center bottom, #eee 0%, #fff 50%); + background-image: -moz-linear-gradient(center bottom, #eee 0%, #fff 50%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#ffffff', endColorstr = '#eeeeee', GradientType = 0); + background-image: linear-gradient(to top, #eee 0%, #fff 50%); +} + +html[dir="rtl"] .select2-container .select2-choice { + padding: 0 8px 0 0; +} + +.select2-container.select2-drop-above .select2-choice { + border-bottom-color: #aaa; + + border-radius: 0 0 4px 4px; + + background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #eee), color-stop(0.9, #fff)); + background-image: -webkit-linear-gradient(center bottom, #eee 0%, #fff 90%); + background-image: -moz-linear-gradient(center bottom, #eee 0%, #fff 90%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eeeeee', GradientType=0); + background-image: linear-gradient(to bottom, #eee 0%, #fff 90%); +} + +.select2-container.select2-allowclear .select2-choice .select2-chosen { + margin-right: 42px; +} + +.select2-container .select2-choice > .select2-chosen { + margin-right: 26px; + display: block; + overflow: hidden; + + white-space: nowrap; + + text-overflow: ellipsis; + float: none; + width: auto; +} + +html[dir="rtl"] .select2-container .select2-choice > .select2-chosen { + margin-left: 26px; + margin-right: 0; +} + +.select2-container .select2-choice abbr { + display: none; + width: 12px; + height: 12px; + position: absolute; + right: 24px; + top: 8px; + + font-size: 1px; + text-decoration: none; + + border: 0; + background: url('<%= asset_path "select2/select2.png" %>)') right top no-repeat; + cursor: pointer; + outline: 0; +} + +.select2-container.select2-allowclear .select2-choice abbr { + display: inline-block; +} + +.select2-container .select2-choice abbr:hover { + background-position: right -11px; + cursor: pointer; +} + +.select2-drop-mask { + border: 0; + margin: 0; + padding: 0; + position: fixed; + left: 0; + top: 0; + min-height: 100%; + min-width: 100%; + height: auto; + width: auto; + opacity: 0; + z-index: 9998; + /* styles required for IE to work */ + background-color: #fff; + filter: alpha(opacity=0); +} + +.select2-drop { + width: 100%; + margin-top: -1px; + position: absolute; + z-index: 9999; + top: 100%; + + background: #fff; + color: #000; + border: 1px solid #aaa; + border-top: 0; + + border-radius: 0 0 4px 4px; + + -webkit-box-shadow: 0 4px 5px rgba(0, 0, 0, .15); + box-shadow: 0 4px 5px rgba(0, 0, 0, .15); +} + +.select2-drop.select2-drop-above { + margin-top: 1px; + border-top: 1px solid #aaa; + border-bottom: 0; + + border-radius: 4px 4px 0 0; + + -webkit-box-shadow: 0 -4px 5px rgba(0, 0, 0, .15); + box-shadow: 0 -4px 5px rgba(0, 0, 0, .15); +} + +.select2-drop-active { + border: 1px solid #5897fb; + border-top: none; +} + +.select2-drop.select2-drop-above.select2-drop-active { + border-top: 1px solid #5897fb; +} + +.select2-drop-auto-width { + border-top: 1px solid #aaa; + width: auto; +} + +.select2-drop-auto-width .select2-search { + padding-top: 4px; +} + +.select2-container .select2-choice .select2-arrow { + display: inline-block; + width: 18px; + height: 100%; + position: absolute; + right: 0; + top: 0; + + border-left: 1px solid #aaa; + border-radius: 0 4px 4px 0; + + background-clip: padding-box; + + background: #ccc; + background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #ccc), color-stop(0.6, #eee)); + background-image: -webkit-linear-gradient(center bottom, #ccc 0%, #eee 60%); + background-image: -moz-linear-gradient(center bottom, #ccc 0%, #eee 60%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#eeeeee', endColorstr = '#cccccc', GradientType = 0); + background-image: linear-gradient(to top, #ccc 0%, #eee 60%); +} + +html[dir="rtl"] .select2-container .select2-choice .select2-arrow { + left: 0; + right: auto; + + border-left: none; + border-right: 1px solid #aaa; + border-radius: 4px 0 0 4px; +} + +.select2-container .select2-choice .select2-arrow b { + display: block; + width: 100%; + height: 100%; + background: url('<%= asset_path "select2/select2.png" %>') no-repeat 0 1px; +} + +html[dir="rtl"] .select2-container .select2-choice .select2-arrow b { + background-position: 2px 1px; +} + +.select2-search { + display: inline-block; + width: 100%; + min-height: 26px; + margin: 0; + padding-left: 4px; + padding-right: 4px; + + position: relative; + z-index: 10000; + + white-space: nowrap; +} + +.select2-search input { + width: 100%; + height: auto !important; + min-height: 26px; + padding: 4px 20px 4px 5px; + margin: 0; + + outline: 0; + font-family: sans-serif; + font-size: 1em; + + border: 1px solid #aaa; + border-radius: 0; + + -webkit-box-shadow: none; + box-shadow: none; + + background: #fff url('<%= asset_path "select2/select2.png" %>') no-repeat 100% -22px; + background: url('<%= asset_path "select2/select2.png" %>') no-repeat 100% -22px, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, #fff), color-stop(0.99, #eee)); + background: url('<%= asset_path "select2/select2.png" %>') no-repeat 100% -22px, -webkit-linear-gradient(center bottom, #fff 85%, #eee 99%); + background: url('<%= asset_path "select2/select2.png" %>') no-repeat 100% -22px, -moz-linear-gradient(center bottom, #fff 85%, #eee 99%); + background: url('<%= asset_path "select2/select2.png" %>') no-repeat 100% -22px, linear-gradient(to bottom, #fff 85%, #eee 99%) 0 0; +} + +html[dir="rtl"] .select2-search input { + padding: 4px 5px 4px 20px; + + background: #fff url('<%= asset_path "select2/select2.png" %>') no-repeat -37px -22px; + background: url('<%= asset_path "select2/select2.png" %>') no-repeat -37px -22px, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, #fff), color-stop(0.99, #eee)); + background: url('<%= asset_path "select2/select2.png" %>') no-repeat -37px -22px, -webkit-linear-gradient(center bottom, #fff 85%, #eee 99%); + background: url('<%= asset_path "select2/select2.png" %>') no-repeat -37px -22px, -moz-linear-gradient(center bottom, #fff 85%, #eee 99%); + background: url('<%= asset_path "select2/select2.png" %>') no-repeat -37px -22px, linear-gradient(to bottom, #fff 85%, #eee 99%) 0 0; +} + +.select2-drop.select2-drop-above .select2-search input { + margin-top: 4px; +} + +.select2-search input.select2-active { + background: #fff url('<%= asset_path "select2/select2-spinner.gif" %>') no-repeat 100%; + background: url('<%= asset_path "select2/select2-spinner.gif" %>') no-repeat 100%, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, #fff), color-stop(0.99, #eee)); + background: url('<%= asset_path "select2/select2-spinner.gif" %>') no-repeat 100%, -webkit-linear-gradient(center bottom, #fff 85%, #eee 99%); + background: url('<%= asset_path "select2/select2-spinner.gif" %>') no-repeat 100%, -moz-linear-gradient(center bottom, #fff 85%, #eee 99%); + background: url('<%= asset_path "select2/select2-spinner.gif" %>') no-repeat 100%, linear-gradient(to bottom, #fff 85%, #eee 99%) 0 0; +} + +.select2-container-active .select2-choice, +.select2-container-active .select2-choices { + border: 1px solid #5897fb; + outline: none; + + -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, .3); + box-shadow: 0 0 5px rgba(0, 0, 0, .3); +} + +.select2-dropdown-open .select2-choice { + border-bottom-color: transparent; + -webkit-box-shadow: 0 1px 0 #fff inset; + box-shadow: 0 1px 0 #fff inset; + + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; + + background-color: #eee; + background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #fff), color-stop(0.5, #eee)); + background-image: -webkit-linear-gradient(center bottom, #fff 0%, #eee 50%); + background-image: -moz-linear-gradient(center bottom, #fff 0%, #eee 50%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#ffffff', GradientType=0); + background-image: linear-gradient(to top, #fff 0%, #eee 50%); +} + +.select2-dropdown-open.select2-drop-above .select2-choice, +.select2-dropdown-open.select2-drop-above .select2-choices { + border: 1px solid #5897fb; + border-top-color: transparent; + + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(0.5, #eee)); + background-image: -webkit-linear-gradient(center top, #fff 0%, #eee 50%); + background-image: -moz-linear-gradient(center top, #fff 0%, #eee 50%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#ffffff', GradientType=0); + background-image: linear-gradient(to bottom, #fff 0%, #eee 50%); +} + +.select2-dropdown-open .select2-choice .select2-arrow { + background: transparent; + border-left: none; + filter: none; +} +html[dir="rtl"] .select2-dropdown-open .select2-choice .select2-arrow { + border-right: none; +} + +.select2-dropdown-open .select2-choice .select2-arrow b { + background-position: -18px 1px; +} + +html[dir="rtl"] .select2-dropdown-open .select2-choice .select2-arrow b { + background-position: -16px 1px; +} + +.select2-hidden-accessible { + border: 0; + clip: rect(0 0 0 0); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; +} + +/* results */ +.select2-results { + max-height: 200px; + padding: 0 0 0 4px; + margin: 4px 4px 4px 0; + position: relative; + overflow-x: hidden; + overflow-y: auto; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} + +html[dir="rtl"] .select2-results { + padding: 0 4px 0 0; + margin: 4px 0 4px 4px; +} + +.select2-results ul.select2-result-sub { + margin: 0; + padding-left: 0; +} + +.select2-results li { + list-style: none; + display: list-item; + background-image: none; +} + +.select2-results li.select2-result-with-children > .select2-result-label { + font-weight: bold; +} + +.select2-results .select2-result-label { + padding: 3px 7px 4px; + margin: 0; + cursor: pointer; + + min-height: 1em; + + -webkit-touch-callout: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.select2-results-dept-1 .select2-result-label { padding-left: 20px } +.select2-results-dept-2 .select2-result-label { padding-left: 40px } +.select2-results-dept-3 .select2-result-label { padding-left: 60px } +.select2-results-dept-4 .select2-result-label { padding-left: 80px } +.select2-results-dept-5 .select2-result-label { padding-left: 100px } +.select2-results-dept-6 .select2-result-label { padding-left: 110px } +.select2-results-dept-7 .select2-result-label { padding-left: 120px } + +.select2-results .select2-highlighted { + background: #3875d7; + color: #fff; +} + +.select2-results li em { + background: #feffde; + font-style: normal; +} + +.select2-results .select2-highlighted em { + background: transparent; +} + +.select2-results .select2-highlighted ul { + background: #fff; + color: #000; +} + +.select2-results .select2-no-results, +.select2-results .select2-searching, +.select2-results .select2-ajax-error, +.select2-results .select2-selection-limit { + background: #f4f4f4; + display: list-item; + padding-left: 5px; +} + +/* +disabled look for disabled choices in the results dropdown +*/ +.select2-results .select2-disabled.select2-highlighted { + color: #666; + background: #f4f4f4; + display: list-item; + cursor: default; +} +.select2-results .select2-disabled { + background: #f4f4f4; + display: list-item; + cursor: default; +} + +.select2-results .select2-selected { + display: none; +} + +.select2-more-results.select2-active { + background: #f4f4f4 url('<%= asset_path "select2/select2-spinner.gif" %>') no-repeat 100%; +} + +.select2-results .select2-ajax-error { + background: rgba(255, 50, 50, .2); +} + +.select2-more-results { + background: #f4f4f4; + display: list-item; +} + +/* disabled styles */ + +.select2-container.select2-container-disabled .select2-choice { + background-color: #f4f4f4; + background-image: none; + border: 1px solid #ddd; + cursor: default; +} + +.select2-container.select2-container-disabled .select2-choice .select2-arrow { + background-color: #f4f4f4; + background-image: none; + border-left: 0; +} + +.select2-container.select2-container-disabled .select2-choice abbr { + display: none; +} + + +/* multiselect */ + +.select2-container-multi .select2-choices { + height: auto !important; + height: 1%; + margin: 0; + padding: 0 5px 0 0; + position: relative; + + border: 1px solid #aaa; + cursor: text; + overflow: hidden; + + background-color: #fff; + background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(1%, #eee), color-stop(15%, #fff)); + background-image: -webkit-linear-gradient(top, #eee 1%, #fff 15%); + background-image: -moz-linear-gradient(top, #eee 1%, #fff 15%); + background-image: linear-gradient(to bottom, #eee 1%, #fff 15%); +} + +html[dir="rtl"] .select2-container-multi .select2-choices { + padding: 0 0 0 5px; +} + +.select2-locked { + padding: 3px 5px 3px 5px !important; +} + +.select2-container-multi .select2-choices { + min-height: 26px; +} + +.select2-container-multi.select2-container-active .select2-choices { + border: 1px solid #5897fb; + outline: none; + + -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, .3); + box-shadow: 0 0 5px rgba(0, 0, 0, .3); +} +.select2-container-multi .select2-choices li { + float: left; + list-style: none; +} +html[dir="rtl"] .select2-container-multi .select2-choices li +{ + float: right; +} +.select2-container-multi .select2-choices .select2-search-field { + margin: 0; + padding: 0; + white-space: nowrap; +} + +.select2-container-multi .select2-choices .select2-search-field input { + padding: 5px; + margin: 1px 0; + + font-family: sans-serif; + font-size: 100%; + color: #666; + outline: 0; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + background: transparent !important; +} + +.select2-container-multi .select2-choices .select2-search-field input.select2-active { + background: #fff url('<%= asset_path "select2/select2-spinner.gif" %>') no-repeat 100% !important; +} + +.select2-default { + color: #999 !important; +} + +.select2-container-multi .select2-choices .select2-search-choice { + padding: 3px 5px 3px 18px; + margin: 3px 0 3px 5px; + position: relative; + + line-height: 13px; + color: #333; + cursor: default; + border: 1px solid #aaaaaa; + + border-radius: 3px; + + -webkit-box-shadow: 0 0 2px #fff inset, 0 1px 0 rgba(0, 0, 0, 0.05); + box-shadow: 0 0 2px #fff inset, 0 1px 0 rgba(0, 0, 0, 0.05); + + background-clip: padding-box; + + -webkit-touch-callout: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + + background-color: #e4e4e4; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#f4f4f4', GradientType=0); + background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eee)); + background-image: -webkit-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%); + background-image: -moz-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%); + background-image: linear-gradient(to top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%); +} +html[dir="rtl"] .select2-container-multi .select2-choices .select2-search-choice +{ + margin: 3px 5px 3px 0; + padding: 3px 18px 3px 5px; +} +.select2-container-multi .select2-choices .select2-search-choice .select2-chosen { + cursor: default; +} +.select2-container-multi .select2-choices .select2-search-choice-focus { + background: #d4d4d4; +} + +.select2-search-choice-close { + display: block; + width: 12px; + height: 13px; + position: absolute; + right: 3px; + top: 4px; + + font-size: 1px; + outline: none; + background: url('<%= asset_path "select2/select2.png" %>') right top no-repeat; +} +html[dir="rtl"] .select2-search-choice-close { + right: auto; + left: 3px; +} + +.select2-container-multi .select2-search-choice-close { + left: 3px; +} + +html[dir="rtl"] .select2-container-multi .select2-search-choice-close { + left: auto; + right: 2px; +} + +.select2-container-multi .select2-choices .select2-search-choice .select2-search-choice-close:hover { + background-position: right -11px; +} +.select2-container-multi .select2-choices .select2-search-choice-focus .select2-search-choice-close { + background-position: right -11px; +} + +/* disabled styles */ +.select2-container-multi.select2-container-disabled .select2-choices { + background-color: #f4f4f4; + background-image: none; + border: 1px solid #ddd; + cursor: default; +} + +.select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice { + padding: 3px 5px 3px 5px; + border: 1px solid #ddd; + background-image: none; + background-color: #f4f4f4; +} + +.select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice .select2-search-choice-close { display: none; + background: none; +} +/* end multiselect */ + + +.select2-result-selectable .select2-match, +.select2-result-unselectable .select2-match { + text-decoration: underline; +} + +.select2-offscreen, .select2-offscreen:focus { + clip: rect(0 0 0 0) !important; + width: 1px !important; + height: 1px !important; + border: 0 !important; + margin: 0 !important; + padding: 0 !important; + overflow: hidden !important; + position: absolute !important; + outline: 0 !important; + left: 0px !important; + top: 0px !important; +} + +.select2-display-none { + display: none; +} + +.select2-measure-scrollbar { + position: absolute; + top: -10000px; + left: -10000px; + width: 100px; + height: 100px; + overflow: scroll; +} + +/* Retina-ize icons */ + +@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-resolution: 2dppx) { + .select2-search input, + .select2-search-choice-close, + .select2-container .select2-choice abbr, + .select2-container .select2-choice .select2-arrow b { + background-image: url('<%= asset_path "select2/select2x2.png" %>') !important; + background-repeat: no-repeat !important; + background-size: 60px 40px !important; + } + + .select2-search input { + background-position: 100% -21px !important; + } +} diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 9abb5fe..6a443d3 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -62,6 +62,10 @@ class ApplicationController < ActionController::Base path = request.path.split('/') is_mobile_path = ( (path[1].eql?("mobile") or path[2].eql?("mobile")) or params[:mobile].eql?("1") ) + if params[:editmode] == "on" + $temp_mobile = session[:mobile] + end + if params[:mobile].eql?("0") session[:desktop] = true session[:mobile] = false diff --git a/app/controllers/page_parts_controller.rb b/app/controllers/page_parts_controller.rb index 2b4c06f..450820e 100644 --- a/app/controllers/page_parts_controller.rb +++ b/app/controllers/page_parts_controller.rb @@ -36,20 +36,9 @@ class PagePartsController < ApplicationController @modules = ModuleApp.widget_enabled @modules = @modules.concat(OrbitWidget.all) if @kind == "module_widget" - @widget_types = [] module_name = @subpart.module - Dir.glob("#{Rails.root}/app/templates/#{@key}/modules/#{module_name.downcase}/*").each do |w| - next if File.ftype(w).eql?("directory") - w = File.basename(w, ".*") - w = File.basename(w, ".*") - @widget_types << w.gsub("_","") if w != "index" && w != "show" - end - Dir.glob("#{Rails.root}/app/templates/#{@key}/widgets/#{module_name.downcase}/*").each do |w| - next if File.ftype(w).eql?("directory") - w = File.basename(w, ".*") - w = File.basename(w, ".*") - @widget_types << w.gsub("_","") if w != "index" && w != "show" - end + @widget_types = get_widget_files(module_name) + app = ModuleApp.find_by_key(module_name) rescue nil app = OrbitWidget.find_by_key(module_name) if app.nil? @categories = app.categories rescue [] @@ -106,19 +95,8 @@ class PagePartsController < ApplicationController module_name = params[:module] part = part_model.where(:part_id => params[:part_id], :page_id => params[:page_id]).first @select_number = part.sub_parts.count rescue 0 - @widget_types = [] - Dir.glob("#{Rails.root}/app/templates/#{@key}/modules/#{module_name.downcase}/*").each do |w| - next if File.ftype(w).eql?("directory") - w = File.basename(w, ".*") - w = File.basename(w, ".*") - @widget_types << w.gsub("_","") if w != "index" && w != "show" - end - Dir.glob("#{Rails.root}/app/templates/#{@key}/widgets/#{module_name.downcase}/*").each do |w| - next if File.ftype(w).eql?("directory") - w = File.basename(w, ".*") - w = File.basename(w, ".*") - @widget_types << w.gsub("_","") if w != "index" && w != "show" - end + @widget_types = get_widget_files(module_name) + module_name = module_name.downcase.singularize app = ModuleApp.find_by_key(module_name) rescue nil app = OrbitWidget.find_by_key(module_name) if app.nil? @@ -172,6 +150,49 @@ class PagePartsController < ApplicationController private + def get_widget_files(module_name) + temp = [] + f = File.join("#{Rails.root}/app/templates/#{@key}/modules/#{module_name.downcase}/info.json") + if File.exists?f + info = File.read(f) + hash = JSON.parse(info) rescue {} + widgets = hash["widgets"] || [] + widgets.each do |w| + w["thumbnail"] = "/assets/#{module_name.downcase}/thumbs/#{w["thumbnail"]}" + temp << w + end + end + if temp.empty? + Dir.glob("#{Rails.root}/app/templates/#{@key}/modules/#{module_name.downcase}/*").each do |w| + next if File.ftype(w).eql?("directory") + w = File.basename(w, ".*") + w = File.basename(w, ".*") + temp << w.gsub("_","") if w[0,1] == "_" + end + end + if temp.empty? + f = File.join("#{Rails.root}/app/templates/#{@key}/widgets/#{module_name.downcase}/info.json") + if File.exists?f + info = File.read(f) + hash = JSON.parse(info) rescue {} + widgets = hash["widgets"] || [] + widgets.each do |w| + w["thumbnail"] = "/assets/#{module_name.downcase}/thumbs/#{w["thumbnail"]}" + temp << w + end + end + end + if temp.empty? + Dir.glob("#{Rails.root}/app/templates/#{@key}/widgets/#{module_name.downcase}/*").each do |w| + next if File.ftype(w).eql?("directory") + w = File.basename(w, ".*") + w = File.basename(w, ".*") + temp << w.gsub("_","") if w[0,1] == "_" + end + end + temp + end + def part_params params.require(:page_part).permit! end diff --git a/app/controllers/pages_controller.rb b/app/controllers/pages_controller.rb index 24527c5..27e8c46 100644 --- a/app/controllers/pages_controller.rb +++ b/app/controllers/pages_controller.rb @@ -235,12 +235,24 @@ class PagesController < ApplicationController def get_layouts(module_app) layout_types = [] - Dir.glob("#{Rails.root}/app/templates/#{@key}/modules/#{module_app}/*").each do |w| - next if File.ftype(w).eql?("directory") - w = File.basename(w, ".*") - w = File.basename(w, ".*") - if w[0,1] != "_" && w[0,1] != "s" - layout_types << w + f = File.join("#{Rails.root}/app/templates/#{@key}/modules/#{module_app}/info.json") + if File.exists?f + info = File.read(f) + hash = JSON.parse(info) rescue {} + frontends = hash["frontend"] || [] + frontends.each do |frontend| + frontend["thumbnail"] = "/assets/#{module_app}/thumbs/#{frontend["thumbnail"]}" + layout_types << frontend + end + end + if layout_types.empty? + Dir.glob("#{Rails.root}/app/templates/#{@key}/modules/#{module_app}/*").each do |w| + next if File.ftype(w).eql?("directory") + w = File.basename(w, ".*") + w = File.basename(w, ".*") + if w[0,1] != "_" && w[0,1] != "s" && w != "info" + layout_types << w + end end end layout_types @@ -312,10 +324,10 @@ class PagesController < ApplicationController pps.each do |pp| number = pp.attributes["data-pp"].value if pp.inner_html == "" - pp.inner_html = " " + pp.inner_html = " " else inner_html = pp.inner_html - pp.inner_html = inner_html + " " + pp.inner_html = inner_html + " " end end end @@ -332,6 +344,9 @@ class PagesController < ApplicationController final_html_for_render = render_to_string(original_view) rescue "
    " end final_html_for_render = change_to_language(final_html_for_render) + if @editmode + session[:mobile] = $temp_mobile + end final_html_for_render end @@ -408,17 +423,13 @@ class PagesController < ApplicationController end def set_edit_mode + @dataApi = nil + @editmode = false if !current_user.nil? and current_user.is_admin? if params[:editmode] == "on" @editmode = true @dataApi = "edit" - else - @dataApi = nil - @editmode = false end - else - @dataApi = nil - @editmode = false end end diff --git a/app/templates/orbit_bootstrap/modules/announcement/info.json b/app/templates/orbit_bootstrap/modules/announcement/info.json new file mode 100644 index 0000000..ea0dd06 --- /dev/null +++ b/app/templates/orbit_bootstrap/modules/announcement/info.json @@ -0,0 +1,21 @@ +{ + "frontend": [ + { + "filename" : "index", + "name" : "Index with image", + "thumbnail" : "1.png" + }, + { + "filename" : "index1", + "name" : "Index without image", + "thumbnail" : "1.png" + } + ], + "widgets" : [ + { + "filename" : "widget", + "name" : "Widget with image", + "thumbnail" : "1.png" + } + ] +} \ No newline at end of file diff --git a/app/templates/orbit_bootstrap/modules/announcement/thumbs/1.png b/app/templates/orbit_bootstrap/modules/announcement/thumbs/1.png new file mode 100644 index 0000000000000000000000000000000000000000..2d2aa1997c7945d74d928abc805b1acfe061770d GIT binary patch literal 125636 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 z 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 Q;{X5v07*qoM6N<$f|)&i`~Uy| literal 0 HcmV?d00001 diff --git a/app/templates/orbit_bootstrap/widgets/breadcrumb_widget/info.json b/app/templates/orbit_bootstrap/widgets/breadcrumb_widget/info.json new file mode 100644 index 0000000..4738be3 --- /dev/null +++ b/app/templates/orbit_bootstrap/widgets/breadcrumb_widget/info.json @@ -0,0 +1,9 @@ +{ + "widgets" : [ + { + "filename" : "widget1", + "name" : "Widget with image", + "thumbnail" : "1.png" + } + ] +} \ No newline at end of file diff --git a/app/templates/orbit_bootstrap/widgets/breadcrumb_widget/thumbs/1.png b/app/templates/orbit_bootstrap/widgets/breadcrumb_widget/thumbs/1.png new file mode 100644 index 0000000000000000000000000000000000000000..2d2aa1997c7945d74d928abc805b1acfe061770d GIT binary patch literal 125636 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 z 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 Q;{X5v07*qoM6N<$f|)&i`~Uy| literal 0 HcmV?d00001 diff --git a/app/views/admin/items/index.html.erb b/app/views/admin/items/index.html.erb index 099bf10..62d7f19 100644 --- a/app/views/admin/items/index.html.erb +++ b/app/views/admin/items/index.html.erb @@ -1,4 +1,7 @@ +<%= stylesheet_link_tag "select2/select2" %> <%= javascript_include_tag 'validator' %> +<%= javascript_include_tag "select2/select2.min" %> + <% node = Page.root %> <% unless node.nil? %>

      diff --git a/app/views/layouts/_left_menu.html.erb b/app/views/layouts/_left_menu.html.erb deleted file mode 100644 index 22a5691..0000000 --- a/app/views/layouts/_left_menu.html.erb +++ /dev/null @@ -1,31 +0,0 @@ - \ No newline at end of file diff --git a/app/views/layouts/_orbit_bar_backend.html.erb b/app/views/layouts/_orbit_bar_backend.html.erb deleted file mode 100644 index 6ff0fa0..0000000 --- a/app/views/layouts/_orbit_bar_backend.html.erb +++ /dev/null @@ -1,6 +0,0 @@ - \ No newline at end of file diff --git a/app/views/layouts/_right_menu.html.erb b/app/views/layouts/_right_menu.html.erb deleted file mode 100644 index ea51725..0000000 --- a/app/views/layouts/_right_menu.html.erb +++ /dev/null @@ -1,89 +0,0 @@ - \ No newline at end of file diff --git a/app/views/layouts/back_end.html.erb b/app/views/layouts/back_end.html.erb index d990943..ccfef71 100644 --- a/app/views/layouts/back_end.html.erb +++ b/app/views/layouts/back_end.html.erb @@ -14,7 +14,7 @@ <%= csrf_meta_tags %> - <%= render 'layouts/orbit_bar_backend' %> + <%= render_orbit_bar %> <%= render 'layouts/side_bar' %>
      diff --git a/app/views/layouts/basic_back_end.html.erb b/app/views/layouts/basic_back_end.html.erb index 045fd0b..9c3caa8 100644 --- a/app/views/layouts/basic_back_end.html.erb +++ b/app/views/layouts/basic_back_end.html.erb @@ -14,7 +14,7 @@ <%= csrf_meta_tag %> - <%= render 'layouts/orbit_bar_backend' %> + <%= render_orbit_bar %> <%= render 'layouts/side_bar' %> <%= yield %> diff --git a/app/views/layouts/structure.html.erb b/app/views/layouts/structure.html.erb index 3821dd9..9f92c0c 100644 --- a/app/views/layouts/structure.html.erb +++ b/app/views/layouts/structure.html.erb @@ -12,7 +12,7 @@ <%= csrf_meta_tag %> - <%= render 'layouts/orbit_bar_backend' unless @no_orbit_bar %> + <%= render_orbit_bar unless @no_orbit_bar %> <%= render 'shared/side_bar' unless @no_side_bar %>
      diff --git a/app/views/page_parts/_widget_form.html.erb b/app/views/page_parts/_widget_form.html.erb index fa8f2ba..dfe9edb 100644 --- a/app/views/page_parts/_widget_form.html.erb +++ b/app/views/page_parts/_widget_form.html.erb @@ -1,7 +1,26 @@
      + <% if @widget_types.first.kind_of?(Hash) %> + + + <% else %> <%= select_tag("page_part[sub_parts_attributes][#{@select_number}][widget_type]",options_for_select(@widget_types, (@subpart.widget_type rescue nil))) %> + <% end %>
      diff --git a/app/views/page_parts/edit.html.erb b/app/views/page_parts/edit.html.erb index fad1bd0..379c361 100644 --- a/app/views/page_parts/edit.html.erb +++ b/app/views/page_parts/edit.html.erb @@ -1,3 +1,6 @@ +<%= stylesheet_link_tag "select2/select2" %> +<%= javascript_include_tag 'validator' %> +<%= javascript_include_tag "select2/select2.min" %> <% content_for :page_specific_css do %> <%= stylesheet_link_tag "lib/main-forms" %> <% end %> @@ -26,7 +29,8 @@ } }) $("form").on("ajax:success",function(){ - var url = "/<%= I18n.locale.to_s %><%= Page.find(params[:page_id]).url %>?editmode=on<%= OrbitHelper.is_mobile_view ? '&mobile_view=1'.html_safe : '' %>"; + <% url = Page.find(params[:page_id]).url %> + var url = "/<%= I18n.locale.to_s if url != '/' %><%= url if url != '/' %>?editmode=on<%= OrbitHelper.is_mobile_view ? '&mobile_view=1'.html_safe : '' %>"; window.location.href = url; }) \ No newline at end of file diff --git a/app/views/page_parts/edit_sub_part.html.erb b/app/views/page_parts/edit_sub_part.html.erb index 6aa1e70..350d773 100644 --- a/app/views/page_parts/edit_sub_part.html.erb +++ b/app/views/page_parts/edit_sub_part.html.erb @@ -1,3 +1,6 @@ +<%= stylesheet_link_tag "select2/select2" %> +<%= javascript_include_tag 'validator' %> +<%= javascript_include_tag "select2/select2.min" %> <% content_for :page_specific_css do %> <%= stylesheet_link_tag "lib/main-forms" %> <% end %> @@ -26,7 +29,8 @@ } }) $("form").on("ajax:success",function(){ - var url = "/<%= I18n.locale.to_s %><%= Page.find(params[:page_id]).url %>?editmode=on<%= OrbitHelper.is_mobile_view ? '&mobile_view=1'.html_safe : '' %>"; + <% url = Page.find(params[:page_id]).url %> + var url = "/<%= I18n.locale.to_s if url != '/' %><%= url if url != '/' %>?editmode=on<%= OrbitHelper.is_mobile_view ? '&mobile_view=1'.html_safe : '' %>"; window.location.href = url; }) \ No newline at end of file diff --git a/app/views/page_parts/new.html.erb b/app/views/page_parts/new.html.erb index 3cb77dd..c883a69 100644 --- a/app/views/page_parts/new.html.erb +++ b/app/views/page_parts/new.html.erb @@ -1,3 +1,6 @@ +<%= stylesheet_link_tag "select2/select2" %> +<%= javascript_include_tag 'validator' %> +<%= javascript_include_tag "select2/select2.min" %> <% content_for :page_specific_css do %> <%= stylesheet_link_tag "lib/main-forms" %> <% end %> @@ -26,7 +29,8 @@ } }) $("form").on("ajax:success",function(){ - var url = "/<%= I18n.locale.to_s %><%= Page.find(params[:page_id]).url %>?editmode=on<%= OrbitHelper.is_mobile_view ? '&mobile_view=1'.html_safe : '' %>"; + <% url = Page.find(params[:page_id]).url %> + var url = "/<%= I18n.locale.to_s if url != '/' %><%= url if url != '/' %>?editmode=on<%= OrbitHelper.is_mobile_view ? '&mobile_view=1'.html_safe : '' %>"; window.location.href = url; }) \ No newline at end of file diff --git a/app/views/pages/_form.html.erb b/app/views/pages/_form.html.erb index e0f5d2e..69498fc 100644 --- a/app/views/pages/_form.html.erb +++ b/app/views/pages/_form.html.erb @@ -106,7 +106,26 @@
      <% if params[:action] == "edit" && !@layout_types.blank? %>
      - <%= f.select(:layout, @layout_types) %> + <% if @layout_types.first.kind_of?(Hash) %> + + + <% else %> + <%= f.select(:layout, @layout_types) %> + <% end %>
      <% end %>
      diff --git a/config/initializers/template.rb b/config/initializers/template.rb index 476859e..f69d679 100644 --- a/config/initializers/template.rb +++ b/config/initializers/template.rb @@ -8,6 +8,8 @@ Dir.glob("#{Rails.root}/app/templates/#{template}").each do |path| Rails.application.config.assets.paths << "#{path}/assets/javascripts" Rails.application.config.assets.paths << "#{path}/assets/images" Rails.application.config.assets.paths << "#{path}/assets/fonts" + Rails.application.config.assets.paths << "#{path}/modules" + Rails.application.config.assets.paths << "#{path}/widgets" end Dir.glob("#{Rails.root}/app/templates/mobile/orbit_mobile").each do |path|