From 1531f92c77446d4c0ab31bfe216e972aa7f69dfc Mon Sep 17 00:00:00 2001 From: ArturBaybulatov Date: Mon, 6 Jun 2016 15:01:25 +0300 Subject: [PATCH] Update --- archilance/views.py | 2 +- .../bootstrap-select/css/bootstrap-select.css | 288 +++ .../css/bootstrap-select.css.map | 1 + .../css/bootstrap-select.min.css | 6 + .../bootstrap-select/js/bootstrap-select.js | 1843 +++++++++++++++++ .../js/bootstrap-select.js.map | 1 + .../js/bootstrap-select.min.js | 9 + .../js/i18n/defaults-ar_AR.js | 49 + .../js/i18n/defaults-ar_AR.min.js | 12 + .../js/i18n/defaults-bg_BG.js | 44 + .../js/i18n/defaults-bg_BG.min.js | 7 + .../js/i18n/defaults-cro_CRO.js | 44 + .../js/i18n/defaults-cro_CRO.min.js | 7 + .../js/i18n/defaults-cs_CZ.js | 35 + .../js/i18n/defaults-cs_CZ.min.js | 7 + .../js/i18n/defaults-da_DK.js | 44 + .../js/i18n/defaults-da_DK.min.js | 7 + .../js/i18n/defaults-de_DE.js | 35 + .../js/i18n/defaults-de_DE.min.js | 7 + .../js/i18n/defaults-en_US.js | 44 + .../js/i18n/defaults-en_US.min.js | 7 + .../js/i18n/defaults-es_CL.js | 35 + .../js/i18n/defaults-es_CL.min.js | 7 + .../bootstrap-select/js/i18n/defaults-eu.js | 35 + .../js/i18n/defaults-eu.min.js | 7 + .../js/i18n/defaults-fa_IR.js | 37 + .../js/i18n/defaults-fa_IR.min.js | 7 + .../js/i18n/defaults-fi_FI.js | 44 + .../js/i18n/defaults-fi_FI.min.js | 7 + .../js/i18n/defaults-fr_FR.js | 44 + .../js/i18n/defaults-fr_FR.min.js | 7 + .../js/i18n/defaults-hu_HU.js | 44 + .../js/i18n/defaults-hu_HU.min.js | 7 + .../js/i18n/defaults-id_ID.js | 37 + .../js/i18n/defaults-id_ID.min.js | 7 + .../js/i18n/defaults-it_IT.js | 35 + .../js/i18n/defaults-it_IT.min.js | 7 + .../js/i18n/defaults-ko_KR.js | 44 + .../js/i18n/defaults-ko_KR.min.js | 7 + .../js/i18n/defaults-lt_LT.js | 44 + .../js/i18n/defaults-lt_LT.min.js | 7 + .../js/i18n/defaults-nb_NO.js | 44 + .../js/i18n/defaults-nb_NO.min.js | 7 + .../js/i18n/defaults-nl_NL.js | 35 + .../js/i18n/defaults-nl_NL.min.js | 7 + .../js/i18n/defaults-pl_PL.js | 37 + .../js/i18n/defaults-pl_PL.min.js | 7 + .../js/i18n/defaults-pt_BR.js | 35 + .../js/i18n/defaults-pt_BR.min.js | 7 + .../js/i18n/defaults-pt_PT.js | 35 + .../js/i18n/defaults-pt_PT.min.js | 7 + .../js/i18n/defaults-ro_RO.js | 35 + .../js/i18n/defaults-ro_RO.min.js | 7 + .../js/i18n/defaults-ru_RU.js | 36 + .../js/i18n/defaults-ru_RU.min.js | 7 + .../js/i18n/defaults-sk_SK.js | 37 + .../js/i18n/defaults-sk_SK.min.js | 7 + .../js/i18n/defaults-sl_SI.js | 44 + .../js/i18n/defaults-sl_SI.min.js | 7 + .../js/i18n/defaults-sv_SE.js | 44 + .../js/i18n/defaults-sv_SE.min.js | 7 + .../js/i18n/defaults-tr_TR.js | 44 + .../js/i18n/defaults-tr_TR.min.js | 7 + .../js/i18n/defaults-ua_UA.js | 35 + .../js/i18n/defaults-ua_UA.min.js | 7 + .../js/i18n/defaults-zh_CN.js | 35 + .../js/i18n/defaults-zh_CN.min.js | 7 + .../js/i18n/defaults-zh_TW.js | 37 + .../js/i18n/defaults-zh_TW.min.js | 7 + data.xlsx | Bin 62191 -> 0 bytes projects/models.py | 2 +- projects/templates/projects/comparison.html | 3 +- .../templates/projects/portfolio_form.html | 2 +- .../templates/projects/project_detail.html | 4 +- .../templates/projects/project_detail1.html | 279 --- projects/templates/projects/project_form.html | 4 +- projects/templates/projects/project_list.html | 2 +- .../specialization_detail.html | 2 +- .../specializations/specialization_list.html | 2 +- templates/_layout.html | 25 - templates/archilance/home.html | 1 - templates/base.html | 133 -- templates/{base2.html => home.html} | 27 +- templates/main.html | 84 - templates/partials/base.html | 34 + templates/registration/login.html | 4 +- templates/registration/registration_form.html | 3 +- test.py | 5 - users/templates/users/contractor.html | 2 +- users/templates/users/contractor_list.html | 2 +- users/templates/users/customer.html | 2 +- users/templates/users/login.html | 4 +- users/templates/users/users_info_list.html | 4 +- users/templates/users/users_list.html | 4 +- 94 files changed, 3661 insertions(+), 572 deletions(-) create mode 100644 assets/lib/bootstrap-select/css/bootstrap-select.css create mode 100644 assets/lib/bootstrap-select/css/bootstrap-select.css.map create mode 100644 assets/lib/bootstrap-select/css/bootstrap-select.min.css create mode 100644 assets/lib/bootstrap-select/js/bootstrap-select.js create mode 100644 assets/lib/bootstrap-select/js/bootstrap-select.js.map create mode 100644 assets/lib/bootstrap-select/js/bootstrap-select.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-ar_AR.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-ar_AR.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-bg_BG.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-bg_BG.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-cro_CRO.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-cro_CRO.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-cs_CZ.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-cs_CZ.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-da_DK.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-da_DK.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-de_DE.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-de_DE.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-en_US.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-en_US.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-es_CL.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-es_CL.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-eu.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-eu.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-fa_IR.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-fa_IR.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-fi_FI.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-fi_FI.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-fr_FR.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-fr_FR.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-hu_HU.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-hu_HU.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-id_ID.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-id_ID.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-it_IT.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-it_IT.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-ko_KR.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-ko_KR.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-lt_LT.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-lt_LT.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-nb_NO.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-nb_NO.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-nl_NL.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-nl_NL.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-pl_PL.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-pl_PL.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-pt_BR.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-pt_BR.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-pt_PT.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-pt_PT.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-ro_RO.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-ro_RO.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-ru_RU.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-ru_RU.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-sk_SK.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-sk_SK.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-sl_SI.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-sl_SI.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-sv_SE.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-sv_SE.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-tr_TR.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-tr_TR.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-ua_UA.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-ua_UA.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-zh_CN.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-zh_CN.min.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-zh_TW.js create mode 100644 assets/lib/bootstrap-select/js/i18n/defaults-zh_TW.min.js delete mode 100644 data.xlsx delete mode 100644 projects/templates/projects/project_detail1.html delete mode 100644 templates/_layout.html delete mode 100644 templates/archilance/home.html delete mode 100644 templates/base.html rename templates/{base2.html => home.html} (75%) delete mode 100644 templates/main.html create mode 100644 templates/partials/base.html delete mode 100644 test.py diff --git a/archilance/views.py b/archilance/views.py index 3b1fbb4..28aedad 100644 --- a/archilance/views.py +++ b/archilance/views.py @@ -1,4 +1,4 @@ from django.views.generic import TemplateView class HomeTemplateView(TemplateView): - template_name = "archilance/home.html" \ No newline at end of file + template_name = 'home.html' diff --git a/assets/lib/bootstrap-select/css/bootstrap-select.css b/assets/lib/bootstrap-select/css/bootstrap-select.css new file mode 100644 index 0000000..e6c996c --- /dev/null +++ b/assets/lib/bootstrap-select/css/bootstrap-select.css @@ -0,0 +1,288 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +select.bs-select-hidden, +select.selectpicker { + display: none !important; +} +.bootstrap-select { + width: 220px \0; + /*IE9 and below*/ +} +.bootstrap-select > .dropdown-toggle { + width: 100%; + padding-right: 25px; + z-index: 1; +} +.bootstrap-select > .dropdown-toggle.bs-placeholder, +.bootstrap-select > .dropdown-toggle.bs-placeholder:hover, +.bootstrap-select > .dropdown-toggle.bs-placeholder:focus, +.bootstrap-select > .dropdown-toggle.bs-placeholder:active { + color: #999; +} +.bootstrap-select > select { + position: absolute !important; + bottom: 0; + left: 50%; + display: block !important; + width: 0.5px !important; + height: 100% !important; + padding: 0 !important; + opacity: 0 !important; + border: none; +} +.bootstrap-select > select.mobile-device { + top: 0; + left: 0; + display: block !important; + width: 100% !important; + z-index: 2; +} +.has-error .bootstrap-select .dropdown-toggle, +.error .bootstrap-select .dropdown-toggle { + border-color: #b94a48; +} +.bootstrap-select.fit-width { + width: auto !important; +} +.bootstrap-select:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) { + width: 220px; +} +.bootstrap-select .dropdown-toggle:focus { + outline: thin dotted #333333 !important; + outline: 5px auto -webkit-focus-ring-color !important; + outline-offset: -2px; +} +.bootstrap-select.form-control { + margin-bottom: 0; + padding: 0; + border: none; +} +.bootstrap-select.form-control:not([class*="col-"]) { + width: 100%; +} +.bootstrap-select.form-control.input-group-btn { + z-index: auto; +} +.bootstrap-select.btn-group:not(.input-group-btn), +.bootstrap-select.btn-group[class*="col-"] { + float: none; + display: inline-block; + margin-left: 0; +} +.bootstrap-select.btn-group.dropdown-menu-right, +.bootstrap-select.btn-group[class*="col-"].dropdown-menu-right, +.row .bootstrap-select.btn-group[class*="col-"].dropdown-menu-right { + float: right; +} +.form-inline .bootstrap-select.btn-group, +.form-horizontal .bootstrap-select.btn-group, +.form-group .bootstrap-select.btn-group { + margin-bottom: 0; +} +.form-group-lg .bootstrap-select.btn-group.form-control, +.form-group-sm .bootstrap-select.btn-group.form-control { + padding: 0; +} +.form-inline .bootstrap-select.btn-group .form-control { + width: 100%; +} +.bootstrap-select.btn-group.disabled, +.bootstrap-select.btn-group > .disabled { + cursor: not-allowed; +} +.bootstrap-select.btn-group.disabled:focus, +.bootstrap-select.btn-group > .disabled:focus { + outline: none !important; +} +.bootstrap-select.btn-group.bs-container { + position: absolute; +} +.bootstrap-select.btn-group.bs-container .dropdown-menu { + z-index: 1060; +} +.bootstrap-select.btn-group .dropdown-toggle .filter-option { + display: inline-block; + overflow: hidden; + width: 100%; + text-align: left; +} +.bootstrap-select.btn-group .dropdown-toggle .caret { + position: absolute; + top: 50%; + right: 12px; + margin-top: -2px; + vertical-align: middle; +} +.bootstrap-select.btn-group[class*="col-"] .dropdown-toggle { + width: 100%; +} +.bootstrap-select.btn-group .dropdown-menu { + min-width: 100%; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.bootstrap-select.btn-group .dropdown-menu.inner { + position: static; + float: none; + border: 0; + padding: 0; + margin: 0; + border-radius: 0; + -webkit-box-shadow: none; + box-shadow: none; +} +.bootstrap-select.btn-group .dropdown-menu li { + position: relative; +} +.bootstrap-select.btn-group .dropdown-menu li.active small { + color: #fff; +} +.bootstrap-select.btn-group .dropdown-menu li.disabled a { + cursor: not-allowed; +} +.bootstrap-select.btn-group .dropdown-menu li a { + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} +.bootstrap-select.btn-group .dropdown-menu li a.opt { + position: relative; + padding-left: 2.25em; +} +.bootstrap-select.btn-group .dropdown-menu li a span.check-mark { + display: none; +} +.bootstrap-select.btn-group .dropdown-menu li a span.text { + display: inline-block; +} +.bootstrap-select.btn-group .dropdown-menu li small { + padding-left: 0.5em; +} +.bootstrap-select.btn-group .dropdown-menu .notify { + position: absolute; + bottom: 5px; + width: 96%; + margin: 0 2%; + min-height: 26px; + padding: 3px 5px; + background: #f5f5f5; + border: 1px solid #e3e3e3; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); + pointer-events: none; + opacity: 0.9; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.bootstrap-select.btn-group .no-results { + padding: 3px; + background: #f5f5f5; + margin: 0 5px; + white-space: nowrap; +} +.bootstrap-select.btn-group.fit-width .dropdown-toggle .filter-option { + position: static; +} +.bootstrap-select.btn-group.fit-width .dropdown-toggle .caret { + position: static; + top: auto; + margin-top: -1px; +} +.bootstrap-select.btn-group.show-tick .dropdown-menu li.selected a span.check-mark { + position: absolute; + display: inline-block; + right: 15px; + margin-top: 5px; +} +.bootstrap-select.btn-group.show-tick .dropdown-menu li a span.text { + margin-right: 34px; +} +.bootstrap-select.show-menu-arrow.open > .dropdown-toggle { + z-index: 1061; +} +.bootstrap-select.show-menu-arrow .dropdown-toggle:before { + content: ''; + border-left: 7px solid transparent; + border-right: 7px solid transparent; + border-bottom: 7px solid rgba(204, 204, 204, 0.2); + position: absolute; + bottom: -4px; + left: 9px; + display: none; +} +.bootstrap-select.show-menu-arrow .dropdown-toggle:after { + content: ''; + border-left: 6px solid transparent; + border-right: 6px solid transparent; + border-bottom: 6px solid white; + position: absolute; + bottom: -4px; + left: 10px; + display: none; +} +.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle:before { + bottom: auto; + top: -3px; + border-top: 7px solid rgba(204, 204, 204, 0.2); + border-bottom: 0; +} +.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle:after { + bottom: auto; + top: -3px; + border-top: 6px solid white; + border-bottom: 0; +} +.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle:before { + right: 12px; + left: auto; +} +.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle:after { + right: 13px; + left: auto; +} +.bootstrap-select.show-menu-arrow.open > .dropdown-toggle:before, +.bootstrap-select.show-menu-arrow.open > .dropdown-toggle:after { + display: block; +} +.bs-searchbox, +.bs-actionsbox, +.bs-donebutton { + padding: 4px 8px; +} +.bs-actionsbox { + width: 100%; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.bs-actionsbox .btn-group button { + width: 50%; +} +.bs-donebutton { + float: left; + width: 100%; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.bs-donebutton .btn-group button { + width: 100%; +} +.bs-searchbox + .bs-actionsbox { + padding: 0 8px 4px; +} +.bs-searchbox .form-control { + margin-bottom: 0; + width: 100%; + float: none; +} +/*# sourceMappingURL=bootstrap-select.css.map */ \ No newline at end of file diff --git a/assets/lib/bootstrap-select/css/bootstrap-select.css.map b/assets/lib/bootstrap-select/css/bootstrap-select.css.map new file mode 100644 index 0000000..ceb5d33 --- /dev/null +++ b/assets/lib/bootstrap-select/css/bootstrap-select.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["less/bootstrap-select.less","bootstrap-select.css"],"names":[],"mappings":"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","file":"bootstrap-select.css","sourcesContent":["@import \"variables\";\n\n// Mixins\n.cursor-disabled() {\n cursor: not-allowed;\n}\n\n// Rules\nselect.bs-select-hidden,\nselect.selectpicker {\n display: none !important;\n}\n\n.bootstrap-select {\n width: 220px \\0; /*IE9 and below*/\n\n // The selectpicker button\n > .dropdown-toggle {\n width: 100%;\n padding-right: 25px;\n z-index: 1;\n\n &.bs-placeholder,\n &.bs-placeholder:hover,\n &.bs-placeholder:focus,\n &.bs-placeholder:active { color: @input-color-placeholder; }\n }\n\n > select {\n position: absolute !important;\n bottom: 0;\n left: 50%;\n display: block !important;\n width: 0.5px !important;\n height: 100% !important;\n padding: 0 !important;\n opacity: 0 !important;\n border: none;\n\n &.mobile-device {\n top: 0;\n left: 0;\n display: block !important;\n width: 100% !important;\n z-index: 2;\n }\n }\n\n // Error display\n .has-error & .dropdown-toggle,\n .error & .dropdown-toggle {\n border-color: @color-red-error;\n }\n\n &.fit-width {\n width: auto !important;\n }\n\n &:not([class*=\"col-\"]):not([class*=\"form-control\"]):not(.input-group-btn) {\n width: @width-default;\n }\n\n .dropdown-toggle:focus {\n outline: thin dotted #333333 !important;\n outline: 5px auto -webkit-focus-ring-color !important;\n outline-offset: -2px;\n }\n}\n\n.bootstrap-select.form-control {\n margin-bottom: 0;\n padding: 0;\n border: none;\n\n &:not([class*=\"col-\"]) {\n width: 100%;\n }\n\n &.input-group-btn {\n z-index: auto;\n }\n}\n\n// The selectpicker components\n.bootstrap-select.btn-group {\n &:not(.input-group-btn),\n &[class*=\"col-\"] {\n float: none;\n display: inline-block;\n margin-left: 0;\n }\n\n // Forces the pull to the right, if necessary\n &,\n &[class*=\"col-\"],\n .row &[class*=\"col-\"] {\n &.dropdown-menu-right {\n float: right;\n }\n }\n\n .form-inline &,\n .form-horizontal &,\n .form-group & {\n margin-bottom: 0;\n }\n\n .form-group-lg &.form-control,\n .form-group-sm &.form-control {\n padding: 0;\n }\n\n // Set the width of the live search (and any other form control within an inline form)\n // see https://github.com/silviomoreto/bootstrap-select/issues/685\n .form-inline & .form-control {\n width: 100%;\n }\n\n &.disabled,\n > .disabled {\n .cursor-disabled();\n\n &:focus {\n outline: none !important;\n }\n }\n\n &.bs-container {\n position: absolute;\n \n .dropdown-menu {\n z-index: @zindex-select-dropdown;\n }\n }\n\n // The selectpicker button\n .dropdown-toggle {\n .filter-option {\n display: inline-block;\n overflow: hidden;\n width: 100%;\n text-align: left;\n }\n\n .caret {\n position: absolute;\n top: 50%;\n right: 12px;\n margin-top: -2px;\n vertical-align: middle;\n }\n }\n\n &[class*=\"col-\"] .dropdown-toggle {\n width: 100%;\n }\n\n // The selectpicker dropdown\n .dropdown-menu {\n min-width: 100%;\n box-sizing: border-box;\n\n &.inner {\n position: static;\n float: none;\n border: 0;\n padding: 0;\n margin: 0;\n border-radius: 0;\n box-shadow: none;\n }\n\n li {\n position: relative;\n\n &.active small {\n color: #fff;\n }\n\n &.disabled a {\n .cursor-disabled();\n }\n\n a {\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n\n &.opt {\n position: relative;\n padding-left: 2.25em;\n }\n\n span.check-mark {\n display: none;\n }\n\n span.text {\n display: inline-block;\n }\n }\n\n small {\n padding-left: 0.5em;\n }\n }\n\n .notify {\n position: absolute;\n bottom: 5px;\n width: 96%;\n margin: 0 2%;\n min-height: 26px;\n padding: 3px 5px;\n background: rgb(245, 245, 245);\n border: 1px solid rgb(227, 227, 227);\n box-shadow: inset 0 1px 1px fade(rgb(0, 0, 0), 5%);\n pointer-events: none;\n opacity: 0.9;\n box-sizing: border-box;\n }\n }\n\n .no-results {\n padding: 3px;\n background: #f5f5f5;\n margin: 0 5px;\n white-space: nowrap;\n }\n\n &.fit-width .dropdown-toggle {\n .filter-option {\n position: static;\n }\n\n .caret {\n position: static;\n top: auto;\n margin-top: -1px;\n }\n }\n\n &.show-tick .dropdown-menu li {\n &.selected a span.check-mark {\n position: absolute;\n display: inline-block;\n right: 15px;\n margin-top: 5px;\n }\n\n a span.text {\n margin-right: 34px;\n }\n }\n}\n\n.bootstrap-select.show-menu-arrow {\n &.open > .dropdown-toggle {\n z-index: (@zindex-select-dropdown + 1);\n }\n\n .dropdown-toggle {\n &:before {\n content: '';\n border-left: 7px solid transparent;\n border-right: 7px solid transparent;\n border-bottom: 7px solid @color-grey-arrow;\n position: absolute;\n bottom: -4px;\n left: 9px;\n display: none;\n }\n\n &:after {\n content: '';\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-bottom: 6px solid white;\n position: absolute;\n bottom: -4px;\n left: 10px;\n display: none;\n }\n }\n\n &.dropup .dropdown-toggle {\n &:before {\n bottom: auto;\n top: -3px;\n border-top: 7px solid @color-grey-arrow;\n border-bottom: 0;\n }\n\n &:after {\n bottom: auto;\n top: -3px;\n border-top: 6px solid white;\n border-bottom: 0;\n }\n }\n\n &.pull-right .dropdown-toggle {\n &:before {\n right: 12px;\n left: auto;\n }\n\n &:after {\n right: 13px;\n left: auto;\n }\n }\n\n &.open > .dropdown-toggle {\n &:before,\n &:after {\n display: block;\n }\n }\n}\n\n.bs-searchbox,\n.bs-actionsbox,\n.bs-donebutton {\n padding: 4px 8px;\n}\n\n.bs-actionsbox {\n width: 100%;\n box-sizing: border-box;\n\n & .btn-group button {\n width: 50%;\n }\n}\n\n.bs-donebutton {\n float: left;\n width: 100%;\n box-sizing: border-box;\n\n & .btn-group button {\n width: 100%;\n }\n}\n\n.bs-searchbox {\n & + .bs-actionsbox {\n padding: 0 8px 4px;\n }\n\n & .form-control {\n margin-bottom: 0;\n width: 100%;\n float: none;\n }\n}\n","select.bs-select-hidden,\nselect.selectpicker {\n display: none !important;\n}\n.bootstrap-select {\n width: 220px \\0;\n /*IE9 and below*/\n}\n.bootstrap-select > .dropdown-toggle {\n width: 100%;\n padding-right: 25px;\n z-index: 1;\n}\n.bootstrap-select > .dropdown-toggle.bs-placeholder,\n.bootstrap-select > .dropdown-toggle.bs-placeholder:hover,\n.bootstrap-select > .dropdown-toggle.bs-placeholder:focus,\n.bootstrap-select > .dropdown-toggle.bs-placeholder:active {\n color: #999;\n}\n.bootstrap-select > select {\n position: absolute !important;\n bottom: 0;\n left: 50%;\n display: block !important;\n width: 0.5px !important;\n height: 100% !important;\n padding: 0 !important;\n opacity: 0 !important;\n border: none;\n}\n.bootstrap-select > select.mobile-device {\n top: 0;\n left: 0;\n display: block !important;\n width: 100% !important;\n z-index: 2;\n}\n.has-error .bootstrap-select .dropdown-toggle,\n.error .bootstrap-select .dropdown-toggle {\n border-color: #b94a48;\n}\n.bootstrap-select.fit-width {\n width: auto !important;\n}\n.bootstrap-select:not([class*=\"col-\"]):not([class*=\"form-control\"]):not(.input-group-btn) {\n width: 220px;\n}\n.bootstrap-select .dropdown-toggle:focus {\n outline: thin dotted #333333 !important;\n outline: 5px auto -webkit-focus-ring-color !important;\n outline-offset: -2px;\n}\n.bootstrap-select.form-control {\n margin-bottom: 0;\n padding: 0;\n border: none;\n}\n.bootstrap-select.form-control:not([class*=\"col-\"]) {\n width: 100%;\n}\n.bootstrap-select.form-control.input-group-btn {\n z-index: auto;\n}\n.bootstrap-select.btn-group:not(.input-group-btn),\n.bootstrap-select.btn-group[class*=\"col-\"] {\n float: none;\n display: inline-block;\n margin-left: 0;\n}\n.bootstrap-select.btn-group.dropdown-menu-right,\n.bootstrap-select.btn-group[class*=\"col-\"].dropdown-menu-right,\n.row .bootstrap-select.btn-group[class*=\"col-\"].dropdown-menu-right {\n float: right;\n}\n.form-inline .bootstrap-select.btn-group,\n.form-horizontal .bootstrap-select.btn-group,\n.form-group .bootstrap-select.btn-group {\n margin-bottom: 0;\n}\n.form-group-lg .bootstrap-select.btn-group.form-control,\n.form-group-sm .bootstrap-select.btn-group.form-control {\n padding: 0;\n}\n.form-inline .bootstrap-select.btn-group .form-control {\n width: 100%;\n}\n.bootstrap-select.btn-group.disabled,\n.bootstrap-select.btn-group > .disabled {\n cursor: not-allowed;\n}\n.bootstrap-select.btn-group.disabled:focus,\n.bootstrap-select.btn-group > .disabled:focus {\n outline: none !important;\n}\n.bootstrap-select.btn-group.bs-container {\n position: absolute;\n}\n.bootstrap-select.btn-group.bs-container .dropdown-menu {\n z-index: 1060;\n}\n.bootstrap-select.btn-group .dropdown-toggle .filter-option {\n display: inline-block;\n overflow: hidden;\n width: 100%;\n text-align: left;\n}\n.bootstrap-select.btn-group .dropdown-toggle .caret {\n position: absolute;\n top: 50%;\n right: 12px;\n margin-top: -2px;\n vertical-align: middle;\n}\n.bootstrap-select.btn-group[class*=\"col-\"] .dropdown-toggle {\n width: 100%;\n}\n.bootstrap-select.btn-group .dropdown-menu {\n min-width: 100%;\n box-sizing: border-box;\n}\n.bootstrap-select.btn-group .dropdown-menu.inner {\n position: static;\n float: none;\n border: 0;\n padding: 0;\n margin: 0;\n border-radius: 0;\n box-shadow: none;\n}\n.bootstrap-select.btn-group .dropdown-menu li {\n position: relative;\n}\n.bootstrap-select.btn-group .dropdown-menu li.active small {\n color: #fff;\n}\n.bootstrap-select.btn-group .dropdown-menu li.disabled a {\n cursor: not-allowed;\n}\n.bootstrap-select.btn-group .dropdown-menu li a {\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n.bootstrap-select.btn-group .dropdown-menu li a.opt {\n position: relative;\n padding-left: 2.25em;\n}\n.bootstrap-select.btn-group .dropdown-menu li a span.check-mark {\n display: none;\n}\n.bootstrap-select.btn-group .dropdown-menu li a span.text {\n display: inline-block;\n}\n.bootstrap-select.btn-group .dropdown-menu li small {\n padding-left: 0.5em;\n}\n.bootstrap-select.btn-group .dropdown-menu .notify {\n position: absolute;\n bottom: 5px;\n width: 96%;\n margin: 0 2%;\n min-height: 26px;\n padding: 3px 5px;\n background: #f5f5f5;\n border: 1px solid #e3e3e3;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n pointer-events: none;\n opacity: 0.9;\n box-sizing: border-box;\n}\n.bootstrap-select.btn-group .no-results {\n padding: 3px;\n background: #f5f5f5;\n margin: 0 5px;\n white-space: nowrap;\n}\n.bootstrap-select.btn-group.fit-width .dropdown-toggle .filter-option {\n position: static;\n}\n.bootstrap-select.btn-group.fit-width .dropdown-toggle .caret {\n position: static;\n top: auto;\n margin-top: -1px;\n}\n.bootstrap-select.btn-group.show-tick .dropdown-menu li.selected a span.check-mark {\n position: absolute;\n display: inline-block;\n right: 15px;\n margin-top: 5px;\n}\n.bootstrap-select.btn-group.show-tick .dropdown-menu li a span.text {\n margin-right: 34px;\n}\n.bootstrap-select.show-menu-arrow.open > .dropdown-toggle {\n z-index: 1061;\n}\n.bootstrap-select.show-menu-arrow .dropdown-toggle:before {\n content: '';\n border-left: 7px solid transparent;\n border-right: 7px solid transparent;\n border-bottom: 7px solid rgba(204, 204, 204, 0.2);\n position: absolute;\n bottom: -4px;\n left: 9px;\n display: none;\n}\n.bootstrap-select.show-menu-arrow .dropdown-toggle:after {\n content: '';\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-bottom: 6px solid white;\n position: absolute;\n bottom: -4px;\n left: 10px;\n display: none;\n}\n.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle:before {\n bottom: auto;\n top: -3px;\n border-top: 7px solid rgba(204, 204, 204, 0.2);\n border-bottom: 0;\n}\n.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle:after {\n bottom: auto;\n top: -3px;\n border-top: 6px solid white;\n border-bottom: 0;\n}\n.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle:before {\n right: 12px;\n left: auto;\n}\n.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle:after {\n right: 13px;\n left: auto;\n}\n.bootstrap-select.show-menu-arrow.open > .dropdown-toggle:before,\n.bootstrap-select.show-menu-arrow.open > .dropdown-toggle:after {\n display: block;\n}\n.bs-searchbox,\n.bs-actionsbox,\n.bs-donebutton {\n padding: 4px 8px;\n}\n.bs-actionsbox {\n width: 100%;\n box-sizing: border-box;\n}\n.bs-actionsbox .btn-group button {\n width: 50%;\n}\n.bs-donebutton {\n float: left;\n width: 100%;\n box-sizing: border-box;\n}\n.bs-donebutton .btn-group button {\n width: 100%;\n}\n.bs-searchbox + .bs-actionsbox {\n padding: 0 8px 4px;\n}\n.bs-searchbox .form-control {\n margin-bottom: 0;\n width: 100%;\n float: none;\n}\n/*# sourceMappingURL=bootstrap-select.css.map */"]} \ No newline at end of file diff --git a/assets/lib/bootstrap-select/css/bootstrap-select.min.css b/assets/lib/bootstrap-select/css/bootstrap-select.min.css new file mode 100644 index 0000000..a331532 --- /dev/null +++ b/assets/lib/bootstrap-select/css/bootstrap-select.min.css @@ -0,0 +1,6 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */select.bs-select-hidden,select.selectpicker{display:none!important}.bootstrap-select{width:220px\9}.bootstrap-select>.dropdown-toggle{width:100%;padding-right:25px;z-index:1}.bootstrap-select>.dropdown-toggle.bs-placeholder,.bootstrap-select>.dropdown-toggle.bs-placeholder:active,.bootstrap-select>.dropdown-toggle.bs-placeholder:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder:hover{color:#999}.bootstrap-select>select{position:absolute!important;bottom:0;left:50%;display:block!important;width:.5px!important;height:100%!important;padding:0!important;opacity:0!important;border:none}.bootstrap-select>select.mobile-device{top:0;left:0;display:block!important;width:100%!important;z-index:2}.error .bootstrap-select .dropdown-toggle,.has-error .bootstrap-select .dropdown-toggle{border-color:#b94a48}.bootstrap-select.fit-width{width:auto!important}.bootstrap-select:not([class*=col-]):not([class*=form-control]):not(.input-group-btn){width:220px}.bootstrap-select .dropdown-toggle:focus{outline:thin dotted #333!important;outline:5px auto -webkit-focus-ring-color!important;outline-offset:-2px}.bootstrap-select.form-control{margin-bottom:0;padding:0;border:none}.bootstrap-select.form-control:not([class*=col-]){width:100%}.bootstrap-select.form-control.input-group-btn{z-index:auto}.bootstrap-select.btn-group:not(.input-group-btn),.bootstrap-select.btn-group[class*=col-]{float:none;display:inline-block;margin-left:0}.bootstrap-select.btn-group.dropdown-menu-right,.bootstrap-select.btn-group[class*=col-].dropdown-menu-right,.row .bootstrap-select.btn-group[class*=col-].dropdown-menu-right{float:right}.form-group .bootstrap-select.btn-group,.form-horizontal .bootstrap-select.btn-group,.form-inline .bootstrap-select.btn-group{margin-bottom:0}.form-group-lg .bootstrap-select.btn-group.form-control,.form-group-sm .bootstrap-select.btn-group.form-control{padding:0}.form-inline .bootstrap-select.btn-group .form-control{width:100%}.bootstrap-select.btn-group.disabled,.bootstrap-select.btn-group>.disabled{cursor:not-allowed}.bootstrap-select.btn-group.disabled:focus,.bootstrap-select.btn-group>.disabled:focus{outline:0!important}.bootstrap-select.btn-group.bs-container{position:absolute}.bootstrap-select.btn-group.bs-container .dropdown-menu{z-index:1060}.bootstrap-select.btn-group .dropdown-toggle .filter-option{display:inline-block;overflow:hidden;width:100%;text-align:left}.bootstrap-select.btn-group .dropdown-toggle .caret{position:absolute;top:50%;right:12px;margin-top:-2px;vertical-align:middle}.bootstrap-select.btn-group[class*=col-] .dropdown-toggle{width:100%}.bootstrap-select.btn-group .dropdown-menu{min-width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bootstrap-select.btn-group .dropdown-menu.inner{position:static;float:none;border:0;padding:0;margin:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.bootstrap-select.btn-group .dropdown-menu li{position:relative}.bootstrap-select.btn-group .dropdown-menu li.active small{color:#fff}.bootstrap-select.btn-group .dropdown-menu li.disabled a{cursor:not-allowed}.bootstrap-select.btn-group .dropdown-menu li a{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.bootstrap-select.btn-group .dropdown-menu li a.opt{position:relative;padding-left:2.25em}.bootstrap-select.btn-group .dropdown-menu li a span.check-mark{display:none}.bootstrap-select.btn-group .dropdown-menu li a span.text{display:inline-block}.bootstrap-select.btn-group .dropdown-menu li small{padding-left:.5em}.bootstrap-select.btn-group .dropdown-menu .notify{position:absolute;bottom:5px;width:96%;margin:0 2%;min-height:26px;padding:3px 5px;background:#f5f5f5;border:1px solid #e3e3e3;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05);pointer-events:none;opacity:.9;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bootstrap-select.btn-group .no-results{padding:3px;background:#f5f5f5;margin:0 5px;white-space:nowrap}.bootstrap-select.btn-group.fit-width .dropdown-toggle .filter-option{position:static}.bootstrap-select.btn-group.fit-width .dropdown-toggle .caret{position:static;top:auto;margin-top:-1px}.bootstrap-select.btn-group.show-tick .dropdown-menu li.selected a span.check-mark{position:absolute;display:inline-block;right:15px;margin-top:5px}.bootstrap-select.btn-group.show-tick .dropdown-menu li a span.text{margin-right:34px}.bootstrap-select.show-menu-arrow.open>.dropdown-toggle{z-index:1061}.bootstrap-select.show-menu-arrow .dropdown-toggle:before{content:'';border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid rgba(204,204,204,.2);position:absolute;bottom:-4px;left:9px;display:none}.bootstrap-select.show-menu-arrow .dropdown-toggle:after{content:'';border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;position:absolute;bottom:-4px;left:10px;display:none}.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle:before{bottom:auto;top:-3px;border-top:7px solid rgba(204,204,204,.2);border-bottom:0}.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle:after{bottom:auto;top:-3px;border-top:6px solid #fff;border-bottom:0}.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle:before{right:12px;left:auto}.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle:after{right:13px;left:auto}.bootstrap-select.show-menu-arrow.open>.dropdown-toggle:after,.bootstrap-select.show-menu-arrow.open>.dropdown-toggle:before{display:block}.bs-actionsbox,.bs-donebutton,.bs-searchbox{padding:4px 8px}.bs-actionsbox{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bs-actionsbox .btn-group button{width:50%}.bs-donebutton{float:left;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bs-donebutton .btn-group button{width:100%}.bs-searchbox+.bs-actionsbox{padding:0 8px 4px}.bs-searchbox .form-control{margin-bottom:0;width:100%;float:none} \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/bootstrap-select.js b/assets/lib/bootstrap-select/js/bootstrap-select.js new file mode 100644 index 0000000..253a54b --- /dev/null +++ b/assets/lib/bootstrap-select/js/bootstrap-select.js @@ -0,0 +1,1843 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + 'use strict'; + + // + if (!String.prototype.includes) { + (function () { + 'use strict'; // needed to support `apply`/`call` with `undefined`/`null` + var toString = {}.toString; + var defineProperty = (function () { + // IE 8 only supports `Object.defineProperty` on DOM elements + try { + var object = {}; + var $defineProperty = Object.defineProperty; + var result = $defineProperty(object, object, object) && $defineProperty; + } catch (error) { + } + return result; + }()); + var indexOf = ''.indexOf; + var includes = function (search) { + if (this == null) { + throw new TypeError(); + } + var string = String(this); + if (search && toString.call(search) == '[object RegExp]') { + throw new TypeError(); + } + var stringLength = string.length; + var searchString = String(search); + var searchLength = searchString.length; + var position = arguments.length > 1 ? arguments[1] : undefined; + // `ToInteger` + var pos = position ? Number(position) : 0; + if (pos != pos) { // better `isNaN` + pos = 0; + } + var start = Math.min(Math.max(pos, 0), stringLength); + // Avoid the `indexOf` call if no match is possible + if (searchLength + start > stringLength) { + return false; + } + return indexOf.call(string, searchString, pos) != -1; + }; + if (defineProperty) { + defineProperty(String.prototype, 'includes', { + 'value': includes, + 'configurable': true, + 'writable': true + }); + } else { + String.prototype.includes = includes; + } + }()); + } + + if (!String.prototype.startsWith) { + (function () { + 'use strict'; // needed to support `apply`/`call` with `undefined`/`null` + var defineProperty = (function () { + // IE 8 only supports `Object.defineProperty` on DOM elements + try { + var object = {}; + var $defineProperty = Object.defineProperty; + var result = $defineProperty(object, object, object) && $defineProperty; + } catch (error) { + } + return result; + }()); + var toString = {}.toString; + var startsWith = function (search) { + if (this == null) { + throw new TypeError(); + } + var string = String(this); + if (search && toString.call(search) == '[object RegExp]') { + throw new TypeError(); + } + var stringLength = string.length; + var searchString = String(search); + var searchLength = searchString.length; + var position = arguments.length > 1 ? arguments[1] : undefined; + // `ToInteger` + var pos = position ? Number(position) : 0; + if (pos != pos) { // better `isNaN` + pos = 0; + } + var start = Math.min(Math.max(pos, 0), stringLength); + // Avoid the `indexOf` call if no match is possible + if (searchLength + start > stringLength) { + return false; + } + var index = -1; + while (++index < searchLength) { + if (string.charCodeAt(start + index) != searchString.charCodeAt(index)) { + return false; + } + } + return true; + }; + if (defineProperty) { + defineProperty(String.prototype, 'startsWith', { + 'value': startsWith, + 'configurable': true, + 'writable': true + }); + } else { + String.prototype.startsWith = startsWith; + } + }()); + } + + if (!Object.keys) { + Object.keys = function ( + o, // object + k, // key + r // result array + ){ + // initialize object and result + r=[]; + // iterate over object keys + for (k in o) + // fill result array with non-prototypical keys + r.hasOwnProperty.call(o, k) && r.push(k); + // return result + return r; + }; + } + + $.fn.triggerNative = function (eventName) { + var el = this[0], + event; + + if (el.dispatchEvent) { + if (typeof Event === 'function') { + // For modern browsers + event = new Event(eventName, { + bubbles: true + }); + } else { + // For IE since it doesn't support Event constructor + event = document.createEvent('Event'); + event.initEvent(eventName, true, false); + } + + el.dispatchEvent(event); + } else { + if (el.fireEvent) { + event = document.createEventObject(); + event.eventType = eventName; + el.fireEvent('on' + eventName, event); + } + + this.trigger(eventName); + } + }; + // + + // Case insensitive contains search + $.expr[':'].icontains = function (obj, index, meta) { + var $obj = $(obj); + var haystack = ($obj.data('tokens') || $obj.text()).toString().toUpperCase(); + return haystack.includes(meta[3].toUpperCase()); + }; + + // Case insensitive begins search + $.expr[':'].ibegins = function (obj, index, meta) { + var $obj = $(obj); + var haystack = ($obj.data('tokens') || $obj.text()).toString().toUpperCase(); + return haystack.startsWith(meta[3].toUpperCase()); + }; + + // Case and accent insensitive contains search + $.expr[':'].aicontains = function (obj, index, meta) { + var $obj = $(obj); + var haystack = ($obj.data('tokens') || $obj.data('normalizedText') || $obj.text()).toString().toUpperCase(); + return haystack.includes(meta[3].toUpperCase()); + }; + + // Case and accent insensitive begins search + $.expr[':'].aibegins = function (obj, index, meta) { + var $obj = $(obj); + var haystack = ($obj.data('tokens') || $obj.data('normalizedText') || $obj.text()).toString().toUpperCase(); + return haystack.startsWith(meta[3].toUpperCase()); + }; + + /** + * Remove all diatrics from the given text. + * @access private + * @param {String} text + * @returns {String} + */ + function normalizeToBase(text) { + var rExps = [ + {re: /[\xC0-\xC6]/g, ch: "A"}, + {re: /[\xE0-\xE6]/g, ch: "a"}, + {re: /[\xC8-\xCB]/g, ch: "E"}, + {re: /[\xE8-\xEB]/g, ch: "e"}, + {re: /[\xCC-\xCF]/g, ch: "I"}, + {re: /[\xEC-\xEF]/g, ch: "i"}, + {re: /[\xD2-\xD6]/g, ch: "O"}, + {re: /[\xF2-\xF6]/g, ch: "o"}, + {re: /[\xD9-\xDC]/g, ch: "U"}, + {re: /[\xF9-\xFC]/g, ch: "u"}, + {re: /[\xC7-\xE7]/g, ch: "c"}, + {re: /[\xD1]/g, ch: "N"}, + {re: /[\xF1]/g, ch: "n"} + ]; + $.each(rExps, function () { + text = text.replace(this.re, this.ch); + }); + return text; + } + + + function htmlEscape(html) { + var escapeMap = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + "'": ''', + '`': '`' + }; + var source = '(?:' + Object.keys(escapeMap).join('|') + ')', + testRegexp = new RegExp(source), + replaceRegexp = new RegExp(source, 'g'), + string = html == null ? '' : '' + html; + return testRegexp.test(string) ? string.replace(replaceRegexp, function (match) { + return escapeMap[match]; + }) : string; + } + + var Selectpicker = function (element, options, e) { + if (e) { + e.stopPropagation(); + e.preventDefault(); + } + + this.$element = $(element); + this.$newElement = null; + this.$button = null; + this.$menu = null; + this.$lis = null; + this.options = options; + + // If we have no title yet, try to pull it from the html title attribute (jQuery doesnt' pick it up as it's not a + // data-attribute) + if (this.options.title === null) { + this.options.title = this.$element.attr('title'); + } + + //Expose public methods + this.val = Selectpicker.prototype.val; + this.render = Selectpicker.prototype.render; + this.refresh = Selectpicker.prototype.refresh; + this.setStyle = Selectpicker.prototype.setStyle; + this.selectAll = Selectpicker.prototype.selectAll; + this.deselectAll = Selectpicker.prototype.deselectAll; + this.destroy = Selectpicker.prototype.destroy; + this.remove = Selectpicker.prototype.remove; + this.show = Selectpicker.prototype.show; + this.hide = Selectpicker.prototype.hide; + + this.init(); + }; + + Selectpicker.VERSION = '1.10.0'; + + // part of this is duplicated in i18n/defaults-en_US.js. Make sure to update both. + Selectpicker.DEFAULTS = { + noneSelectedText: 'Nothing selected', + noneResultsText: 'No results matched {0}', + countSelectedText: function (numSelected, numTotal) { + return (numSelected == 1) ? "{0} item selected" : "{0} items selected"; + }, + maxOptionsText: function (numAll, numGroup) { + return [ + (numAll == 1) ? 'Limit reached ({n} item max)' : 'Limit reached ({n} items max)', + (numGroup == 1) ? 'Group limit reached ({n} item max)' : 'Group limit reached ({n} items max)' + ]; + }, + selectAllText: 'Select All', + deselectAllText: 'Deselect All', + doneButton: false, + doneButtonText: 'Close', + multipleSeparator: ', ', + styleBase: 'btn', + style: 'btn-default', + size: 'auto', + title: null, + selectedTextFormat: 'values', + width: false, + container: false, + hideDisabled: false, + showSubtext: false, + showIcon: true, + showContent: true, + dropupAuto: true, + header: false, + liveSearch: false, + liveSearchPlaceholder: null, + liveSearchNormalize: false, + liveSearchStyle: 'contains', + actionsBox: false, + iconBase: 'glyphicon', + tickIcon: 'glyphicon-ok', + showTick: false, + template: { + caret: '' + }, + maxOptions: false, + mobile: false, + selectOnTab: false, + dropdownAlignRight: false + }; + + Selectpicker.prototype = { + + constructor: Selectpicker, + + init: function () { + var that = this, + id = this.$element.attr('id'); + + this.$element.addClass('bs-select-hidden'); + + // store originalIndex (key) and newIndex (value) in this.liObj for fast accessibility + // allows us to do this.$lis.eq(that.liObj[index]) instead of this.$lis.filter('[data-original-index="' + index + '"]') + this.liObj = {}; + this.multiple = this.$element.prop('multiple'); + this.autofocus = this.$element.prop('autofocus'); + this.$newElement = this.createView(); + this.$element + .after(this.$newElement) + .appendTo(this.$newElement); + this.$button = this.$newElement.children('button'); + this.$menu = this.$newElement.children('.dropdown-menu'); + this.$menuInner = this.$menu.children('.inner'); + this.$searchbox = this.$menu.find('input'); + + this.$element.removeClass('bs-select-hidden'); + + if (this.options.dropdownAlignRight === true) this.$menu.addClass('dropdown-menu-right'); + + if (typeof id !== 'undefined') { + this.$button.attr('data-id', id); + $('label[for="' + id + '"]').click(function (e) { + e.preventDefault(); + that.$button.focus(); + }); + } + + this.checkDisabled(); + this.clickListener(); + if (this.options.liveSearch) this.liveSearchListener(); + this.render(); + this.setStyle(); + this.setWidth(); + if (this.options.container) this.selectPosition(); + this.$menu.data('this', this); + this.$newElement.data('this', this); + if (this.options.mobile) this.mobile(); + + this.$newElement.on({ + 'hide.bs.dropdown': function (e) { + that.$element.trigger('hide.bs.select', e); + }, + 'hidden.bs.dropdown': function (e) { + that.$element.trigger('hidden.bs.select', e); + }, + 'show.bs.dropdown': function (e) { + that.$element.trigger('show.bs.select', e); + }, + 'shown.bs.dropdown': function (e) { + that.$element.trigger('shown.bs.select', e); + } + }); + + if (that.$element[0].hasAttribute('required')) { + this.$element.on('invalid', function () { + that.$button + .addClass('bs-invalid') + .focus(); + + that.$element.on({ + 'focus.bs.select': function () { + that.$button.focus(); + that.$element.off('focus.bs.select'); + }, + 'shown.bs.select': function () { + that.$element + .val(that.$element.val()) // set the value to hide the validation message in Chrome when menu is opened + .off('shown.bs.select'); + }, + 'rendered.bs.select': function () { + // if select is no longer invalid, remove the bs-invalid class + if (this.validity.valid) that.$button.removeClass('bs-invalid'); + that.$element.off('rendered.bs.select'); + } + }); + }); + } + + setTimeout(function () { + that.$element.trigger('loaded.bs.select'); + }); + }, + + createDropdown: function () { + // Options + // If we are multiple or showTick option is set, then add the show-tick class + var showTick = (this.multiple || this.options.showTick) ? ' show-tick' : '', + inputGroup = this.$element.parent().hasClass('input-group') ? ' input-group-btn' : '', + autofocus = this.autofocus ? ' autofocus' : ''; + // Elements + var header = this.options.header ? '
' + this.options.header + '
' : ''; + var searchbox = this.options.liveSearch ? + '' + : ''; + var actionsbox = this.multiple && this.options.actionsBox ? + '
' + + '
' + + '' + + '' + + '
' + + '
' + : ''; + var donebutton = this.multiple && this.options.doneButton ? + '
' + + '
' + + '' + + '
' + + '
' + : ''; + var drop = + '
' + + '' + + '' + + '
'; + + return $(drop); + }, + + createView: function () { + var $drop = this.createDropdown(), + li = this.createLi(); + + $drop.find('ul')[0].innerHTML = li; + return $drop; + }, + + reloadLi: function () { + //Remove all children. + this.destroyLi(); + //Re build + var li = this.createLi(); + this.$menuInner[0].innerHTML = li; + }, + + destroyLi: function () { + this.$menu.find('li').remove(); + }, + + createLi: function () { + var that = this, + _li = [], + optID = 0, + titleOption = document.createElement('option'), + liIndex = -1; // increment liIndex whenever a new
  • element is created to ensure liObj is correct + + // Helper functions + /** + * @param content + * @param [index] + * @param [classes] + * @param [optgroup] + * @returns {string} + */ + var generateLI = function (content, index, classes, optgroup) { + return '' + content + '
  • '; + }; + + /** + * @param text + * @param [classes] + * @param [inline] + * @param [tokens] + * @returns {string} + */ + var generateA = function (text, classes, inline, tokens) { + return '' + text + + '' + + ''; + }; + + if (this.options.title && !this.multiple) { + // this option doesn't create a new
  • element, but does add a new option, so liIndex is decreased + // since liObj is recalculated on every refresh, liIndex needs to be decreased even if the titleOption is already appended + liIndex--; + + if (!this.$element.find('.bs-title-option').length) { + // Use native JS to prepend option (faster) + var element = this.$element[0]; + titleOption.className = 'bs-title-option'; + titleOption.appendChild(document.createTextNode(this.options.title)); + titleOption.value = ''; + element.insertBefore(titleOption, element.firstChild); + // Check if selected attribute is already set on an option. If not, select the titleOption option. + // attr gets the 'default' selected option (from markup), prop gets the 'current' selected option + // the selected item may have been changed by user or programmatically before the bootstrap select plugin runs + var $opt = $(element.options[element.selectedIndex]); + if ($opt.attr('selected') === undefined && $opt.prop('selected') === false) { + titleOption.selected = true; + } + } + } + + this.$element.find('option').each(function (index) { + var $this = $(this); + + liIndex++; + + if ($this.hasClass('bs-title-option')) return; + + // Get the class and text for the option + var optionClass = this.className || '', + inline = this.style.cssText, + text = $this.data('content') ? $this.data('content') : $this.html(), + tokens = $this.data('tokens') ? $this.data('tokens') : null, + subtext = typeof $this.data('subtext') !== 'undefined' ? '' + $this.data('subtext') + '' : '', + icon = typeof $this.data('icon') !== 'undefined' ? ' ' : '', + $parent = $this.parent(), + isOptgroup = $parent[0].tagName === 'OPTGROUP', + isOptgroupDisabled = isOptgroup && $parent[0].disabled, + isDisabled = this.disabled || isOptgroupDisabled; + + if (icon !== '' && isDisabled) { + icon = '' + icon + ''; + } + + if (that.options.hideDisabled && (isDisabled && !isOptgroup || isOptgroupDisabled)) { + liIndex--; + return; + } + + if (!$this.data('content')) { + // Prepend any icon and append any subtext to the main text. + text = icon + '' + text + subtext + ''; + } + + if (isOptgroup && $this.data('divider') !== true) { + if (that.options.hideDisabled && isDisabled) { + if ($parent.data('allOptionsDisabled') === undefined) { + var $options = $parent.children(); + $parent.data('allOptionsDisabled', $options.filter(':disabled').length === $options.length); + } + + if ($parent.data('allOptionsDisabled')) { + liIndex--; + return; + } + } + + var optGroupClass = ' ' + $parent[0].className || ''; + + if ($this.index() === 0) { // Is it the first option of the optgroup? + optID += 1; + + // Get the opt group label + var label = $parent[0].label, + labelSubtext = typeof $parent.data('subtext') !== 'undefined' ? '' + $parent.data('subtext') + '' : '', + labelIcon = $parent.data('icon') ? ' ' : ''; + + label = labelIcon + '' + label + labelSubtext + ''; + + if (index !== 0 && _li.length > 0) { // Is it NOT the first option of the select && are there elements in the dropdown? + liIndex++; + _li.push(generateLI('', null, 'divider', optID + 'div')); + } + liIndex++; + _li.push(generateLI(label, null, 'dropdown-header' + optGroupClass, optID)); + } + + if (that.options.hideDisabled && isDisabled) { + liIndex--; + return; + } + + _li.push(generateLI(generateA(text, 'opt ' + optionClass + optGroupClass, inline, tokens), index, '', optID)); + } else if ($this.data('divider') === true) { + _li.push(generateLI('', index, 'divider')); + } else if ($this.data('hidden') === true) { + _li.push(generateLI(generateA(text, optionClass, inline, tokens), index, 'hidden is-hidden')); + } else { + var showDivider = this.previousElementSibling && this.previousElementSibling.tagName === 'OPTGROUP'; + + // if previous element is not an optgroup and hideDisabled is true + if (!showDivider && that.options.hideDisabled) { + // get previous elements + var $prev = $(this).prevAll(); + + for (var i = 0; i < $prev.length; i++) { + // find the first element in the previous elements that is an optgroup + if ($prev[i].tagName === 'OPTGROUP') { + var optGroupDistance = 0; + + // loop through the options in between the current option and the optgroup + // and check if they are hidden or disabled + for (var d = 0; d < i; d++) { + var prevOption = $prev[d]; + if (prevOption.disabled || $(prevOption).data('hidden') === true) optGroupDistance++; + } + + // if all of the options between the current option and the optgroup are hidden or disabled, show the divider + if (optGroupDistance === i) showDivider = true; + + break; + } + } + } + + if (showDivider) { + liIndex++; + _li.push(generateLI('', null, 'divider', optID + 'div')); + } + _li.push(generateLI(generateA(text, optionClass, inline, tokens), index)); + } + + that.liObj[index] = liIndex; + }); + + //If we are not multiple, we don't have a selected item, and we don't have a title, select the first element so something is set in the button + if (!this.multiple && this.$element.find('option:selected').length === 0 && !this.options.title) { + this.$element.find('option').eq(0).prop('selected', true).attr('selected', 'selected'); + } + + return _li.join(''); + }, + + findLis: function () { + if (this.$lis == null) this.$lis = this.$menu.find('li'); + return this.$lis; + }, + + /** + * @param [updateLi] defaults to true + */ + render: function (updateLi) { + var that = this, + notDisabled; + + //Update the LI to match the SELECT + if (updateLi !== false) { + this.$element.find('option').each(function (index) { + var $lis = that.findLis().eq(that.liObj[index]); + + that.setDisabled(index, this.disabled || this.parentNode.tagName === 'OPTGROUP' && this.parentNode.disabled, $lis); + that.setSelected(index, this.selected, $lis); + }); + + this.togglePlaceholder(); + } + + this.tabIndex(); + + var selectedItems = this.$element.find('option').map(function () { + if (this.selected) { + if (that.options.hideDisabled && (this.disabled || this.parentNode.tagName === 'OPTGROUP' && this.parentNode.disabled)) return; + + var $this = $(this), + icon = $this.data('icon') && that.options.showIcon ? ' ' : '', + subtext; + + if (that.options.showSubtext && $this.data('subtext') && !that.multiple) { + subtext = ' ' + $this.data('subtext') + ''; + } else { + subtext = ''; + } + if (typeof $this.attr('title') !== 'undefined') { + return $this.attr('title'); + } else if ($this.data('content') && that.options.showContent) { + return $this.data('content'); + } else { + return icon + $this.html() + subtext; + } + } + }).toArray(); + + //Fixes issue in IE10 occurring when no default option is selected and at least one option is disabled + //Convert all the values into a comma delimited string + var title = !this.multiple ? selectedItems[0] : selectedItems.join(this.options.multipleSeparator); + + //If this is multi select, and the selectText type is count, the show 1 of 2 selected etc.. + if (this.multiple && this.options.selectedTextFormat.indexOf('count') > -1) { + var max = this.options.selectedTextFormat.split('>'); + if ((max.length > 1 && selectedItems.length > max[1]) || (max.length == 1 && selectedItems.length >= 2)) { + notDisabled = this.options.hideDisabled ? ', [disabled]' : ''; + var totalCount = this.$element.find('option').not('[data-divider="true"], [data-hidden="true"]' + notDisabled).length, + tr8nText = (typeof this.options.countSelectedText === 'function') ? this.options.countSelectedText(selectedItems.length, totalCount) : this.options.countSelectedText; + title = tr8nText.replace('{0}', selectedItems.length.toString()).replace('{1}', totalCount.toString()); + } + } + + if (this.options.title == undefined) { + this.options.title = this.$element.attr('title'); + } + + if (this.options.selectedTextFormat == 'static') { + title = this.options.title; + } + + //If we dont have a title, then use the default, or if nothing is set at all, use the not selected text + if (!title) { + title = typeof this.options.title !== 'undefined' ? this.options.title : this.options.noneSelectedText; + } + + //strip all html-tags and trim the result + this.$button.attr('title', $.trim(title.replace(/<[^>]*>?/g, ''))); + this.$button.children('.filter-option').html(title); + + this.$element.trigger('rendered.bs.select'); + }, + + /** + * @param [style] + * @param [status] + */ + setStyle: function (style, status) { + if (this.$element.attr('class')) { + this.$newElement.addClass(this.$element.attr('class').replace(/selectpicker|mobile-device|bs-select-hidden|validate\[.*\]/gi, '')); + } + + var buttonClass = style ? style : this.options.style; + + if (status == 'add') { + this.$button.addClass(buttonClass); + } else if (status == 'remove') { + this.$button.removeClass(buttonClass); + } else { + this.$button.removeClass(this.options.style); + this.$button.addClass(buttonClass); + } + }, + + liHeight: function (refresh) { + if (!refresh && (this.options.size === false || this.sizeInfo)) return; + + var newElement = document.createElement('div'), + menu = document.createElement('div'), + menuInner = document.createElement('ul'), + divider = document.createElement('li'), + li = document.createElement('li'), + a = document.createElement('a'), + text = document.createElement('span'), + header = this.options.header && this.$menu.find('.popover-title').length > 0 ? this.$menu.find('.popover-title')[0].cloneNode(true) : null, + search = this.options.liveSearch ? document.createElement('div') : null, + actions = this.options.actionsBox && this.multiple && this.$menu.find('.bs-actionsbox').length > 0 ? this.$menu.find('.bs-actionsbox')[0].cloneNode(true) : null, + doneButton = this.options.doneButton && this.multiple && this.$menu.find('.bs-donebutton').length > 0 ? this.$menu.find('.bs-donebutton')[0].cloneNode(true) : null; + + text.className = 'text'; + newElement.className = this.$menu[0].parentNode.className + ' open'; + menu.className = 'dropdown-menu open'; + menuInner.className = 'dropdown-menu inner'; + divider.className = 'divider'; + + text.appendChild(document.createTextNode('Inner text')); + a.appendChild(text); + li.appendChild(a); + menuInner.appendChild(li); + menuInner.appendChild(divider); + if (header) menu.appendChild(header); + if (search) { + // create a span instead of input as creating an input element is slower + var input = document.createElement('span'); + search.className = 'bs-searchbox'; + input.className = 'form-control'; + search.appendChild(input); + menu.appendChild(search); + } + if (actions) menu.appendChild(actions); + menu.appendChild(menuInner); + if (doneButton) menu.appendChild(doneButton); + newElement.appendChild(menu); + + document.body.appendChild(newElement); + + var liHeight = a.offsetHeight, + headerHeight = header ? header.offsetHeight : 0, + searchHeight = search ? search.offsetHeight : 0, + actionsHeight = actions ? actions.offsetHeight : 0, + doneButtonHeight = doneButton ? doneButton.offsetHeight : 0, + dividerHeight = $(divider).outerHeight(true), + // fall back to jQuery if getComputedStyle is not supported + menuStyle = typeof getComputedStyle === 'function' ? getComputedStyle(menu) : false, + $menu = menuStyle ? null : $(menu), + menuPadding = { + vert: parseInt(menuStyle ? menuStyle.paddingTop : $menu.css('paddingTop')) + + parseInt(menuStyle ? menuStyle.paddingBottom : $menu.css('paddingBottom')) + + parseInt(menuStyle ? menuStyle.borderTopWidth : $menu.css('borderTopWidth')) + + parseInt(menuStyle ? menuStyle.borderBottomWidth : $menu.css('borderBottomWidth')), + horiz: parseInt(menuStyle ? menuStyle.paddingLeft : $menu.css('paddingLeft')) + + parseInt(menuStyle ? menuStyle.paddingRight : $menu.css('paddingRight')) + + parseInt(menuStyle ? menuStyle.borderLeftWidth : $menu.css('borderLeftWidth')) + + parseInt(menuStyle ? menuStyle.borderRightWidth : $menu.css('borderRightWidth')) + }, + menuExtras = { + vert: menuPadding.vert + + parseInt(menuStyle ? menuStyle.marginTop : $menu.css('marginTop')) + + parseInt(menuStyle ? menuStyle.marginBottom : $menu.css('marginBottom')) + 2, + horiz: menuPadding.horiz + + parseInt(menuStyle ? menuStyle.marginLeft : $menu.css('marginLeft')) + + parseInt(menuStyle ? menuStyle.marginRight : $menu.css('marginRight')) + 2 + } + + document.body.removeChild(newElement); + + this.sizeInfo = { + liHeight: liHeight, + headerHeight: headerHeight, + searchHeight: searchHeight, + actionsHeight: actionsHeight, + doneButtonHeight: doneButtonHeight, + dividerHeight: dividerHeight, + menuPadding: menuPadding, + menuExtras: menuExtras + }; + }, + + setSize: function () { + this.findLis(); + this.liHeight(); + + if (this.options.header) this.$menu.css('padding-top', 0); + if (this.options.size === false) return; + + var that = this, + $menu = this.$menu, + $menuInner = this.$menuInner, + $window = $(window), + selectHeight = this.$newElement[0].offsetHeight, + selectWidth = this.$newElement[0].offsetWidth, + liHeight = this.sizeInfo['liHeight'], + headerHeight = this.sizeInfo['headerHeight'], + searchHeight = this.sizeInfo['searchHeight'], + actionsHeight = this.sizeInfo['actionsHeight'], + doneButtonHeight = this.sizeInfo['doneButtonHeight'], + divHeight = this.sizeInfo['dividerHeight'], + menuPadding = this.sizeInfo['menuPadding'], + menuExtras = this.sizeInfo['menuExtras'], + notDisabled = this.options.hideDisabled ? '.disabled' : '', + menuHeight, + menuWidth, + getHeight, + getWidth, + selectOffsetTop, + selectOffsetBot, + selectOffsetLeft, + selectOffsetRight, + getPos = function() { + var pos = that.$newElement.offset(); + selectOffsetTop = pos.top - $window.scrollTop(); + selectOffsetBot = $window.height() - selectOffsetTop - selectHeight; + selectOffsetLeft = pos.left - $window.scrollLeft(); + selectOffsetRight = $window.width() - selectOffsetLeft - selectWidth; + }; + + getPos(); + + if (this.options.size === 'auto') { + var getSize = function () { + var minHeight, + hasClass = function (className, include) { + return function (element) { + if (include) { + return (element.classList ? element.classList.contains(className) : $(element).hasClass(className)); + } else { + return !(element.classList ? element.classList.contains(className) : $(element).hasClass(className)); + } + }; + }, + lis = that.$menuInner[0].getElementsByTagName('li'), + lisVisible = Array.prototype.filter ? Array.prototype.filter.call(lis, hasClass('hidden', false)) : that.$lis.not('.hidden'), + optGroup = Array.prototype.filter ? Array.prototype.filter.call(lisVisible, hasClass('dropdown-header', true)) : lisVisible.filter('.dropdown-header'); + + getPos(); + menuHeight = selectOffsetBot - menuExtras.vert; + menuWidth = selectOffsetRight - menuExtras.horiz; + + if (that.options.container) { + if (!$menu.data('height')) $menu.data('height', $menu.height()); + getHeight = $menu.data('height'); + + if (!$menu.data('width')) $menu.data('width', $menu.width()); + getWidth = $menu.data('width'); + } else { + getHeight = $menu.height(); + getWidth = $menu.width(); + } + + if (that.options.dropupAuto) { + that.$newElement.toggleClass('dropup', selectOffsetTop > selectOffsetBot && (menuHeight - menuExtras.vert) < getHeight); + } + + if (that.$newElement.hasClass('dropup')) { + menuHeight = selectOffsetTop - menuExtras.vert; + } + + if (that.options.dropdownAlignRight === 'auto') { + $menu.toggleClass('dropdown-menu-right', selectOffsetLeft > selectOffsetRight && (menuWidth - menuExtras.horiz) < (getWidth - selectWidth)); + } + + if ((lisVisible.length + optGroup.length) > 3) { + minHeight = liHeight * 3 + menuExtras.vert - 2; + } else { + minHeight = 0; + } + + $menu.css({ + 'max-height': menuHeight + 'px', + 'overflow': 'hidden', + 'min-height': minHeight + headerHeight + searchHeight + actionsHeight + doneButtonHeight + 'px' + }); + $menuInner.css({ + 'max-height': menuHeight - headerHeight - searchHeight - actionsHeight - doneButtonHeight - menuPadding.vert + 'px', + 'overflow-y': 'auto', + 'min-height': Math.max(minHeight - menuPadding.vert, 0) + 'px' + }); + }; + getSize(); + this.$searchbox.off('input.getSize propertychange.getSize').on('input.getSize propertychange.getSize', getSize); + $window.off('resize.getSize scroll.getSize').on('resize.getSize scroll.getSize', getSize); + } else if (this.options.size && this.options.size != 'auto' && this.$lis.not(notDisabled).length > this.options.size) { + var optIndex = this.$lis.not('.divider').not(notDisabled).children().slice(0, this.options.size).last().parent().index(), + divLength = this.$lis.slice(0, optIndex + 1).filter('.divider').length; + menuHeight = liHeight * this.options.size + divLength * divHeight + menuPadding.vert; + + if (that.options.container) { + if (!$menu.data('height')) $menu.data('height', $menu.height()); + getHeight = $menu.data('height'); + } else { + getHeight = $menu.height(); + } + + if (that.options.dropupAuto) { + //noinspection JSUnusedAssignment + this.$newElement.toggleClass('dropup', selectOffsetTop > selectOffsetBot && (menuHeight - menuExtras.vert) < getHeight); + } + $menu.css({ + 'max-height': menuHeight + headerHeight + searchHeight + actionsHeight + doneButtonHeight + 'px', + 'overflow': 'hidden', + 'min-height': '' + }); + $menuInner.css({ + 'max-height': menuHeight - menuPadding.vert + 'px', + 'overflow-y': 'auto', + 'min-height': '' + }); + } + }, + + setWidth: function () { + if (this.options.width === 'auto') { + this.$menu.css('min-width', '0'); + + // Get correct width if element is hidden + var $selectClone = this.$menu.parent().clone().appendTo('body'), + $selectClone2 = this.options.container ? this.$newElement.clone().appendTo('body') : $selectClone, + ulWidth = $selectClone.children('.dropdown-menu').outerWidth(), + btnWidth = $selectClone2.css('width', 'auto').children('button').outerWidth(); + + $selectClone.remove(); + $selectClone2.remove(); + + // Set width to whatever's larger, button title or longest option + this.$newElement.css('width', Math.max(ulWidth, btnWidth) + 'px'); + } else if (this.options.width === 'fit') { + // Remove inline min-width so width can be changed from 'auto' + this.$menu.css('min-width', ''); + this.$newElement.css('width', '').addClass('fit-width'); + } else if (this.options.width) { + // Remove inline min-width so width can be changed from 'auto' + this.$menu.css('min-width', ''); + this.$newElement.css('width', this.options.width); + } else { + // Remove inline min-width/width so width can be changed + this.$menu.css('min-width', ''); + this.$newElement.css('width', ''); + } + // Remove fit-width class if width is changed programmatically + if (this.$newElement.hasClass('fit-width') && this.options.width !== 'fit') { + this.$newElement.removeClass('fit-width'); + } + }, + + selectPosition: function () { + this.$bsContainer = $('
    '); + + var that = this, + pos, + actualHeight, + getPlacement = function ($element) { + that.$bsContainer.addClass($element.attr('class').replace(/form-control|fit-width/gi, '')).toggleClass('dropup', $element.hasClass('dropup')); + pos = $element.offset(); + actualHeight = $element.hasClass('dropup') ? 0 : $element[0].offsetHeight; + that.$bsContainer.css({ + 'top': pos.top + actualHeight, + 'left': pos.left, + 'width': $element[0].offsetWidth + }); + }; + + this.$button.on('click', function () { + var $this = $(this); + + if (that.isDisabled()) { + return; + } + + getPlacement(that.$newElement); + + that.$bsContainer + .appendTo(that.options.container) + .toggleClass('open', !$this.hasClass('open')) + .append(that.$menu); + }); + + $(window).on('resize scroll', function () { + getPlacement(that.$newElement); + }); + + this.$element.on('hide.bs.select', function () { + that.$menu.data('height', that.$menu.height()); + that.$bsContainer.detach(); + }); + }, + + /** + * @param {number} index - the index of the option that is being changed + * @param {boolean} selected - true if the option is being selected, false if being deselected + * @param {JQuery} $lis - the 'li' element that is being modified + */ + setSelected: function (index, selected, $lis) { + if (!$lis) { + this.togglePlaceholder(); // check if setSelected is being called by changing the value of the select + $lis = this.findLis().eq(this.liObj[index]); + } + + $lis.toggleClass('selected', selected); + }, + + /** + * @param {number} index - the index of the option that is being disabled + * @param {boolean} disabled - true if the option is being disabled, false if being enabled + * @param {JQuery} $lis - the 'li' element that is being modified + */ + setDisabled: function (index, disabled, $lis) { + if (!$lis) { + $lis = this.findLis().eq(this.liObj[index]); + } + + if (disabled) { + $lis.addClass('disabled').children('a').attr('href', '#').attr('tabindex', -1); + } else { + $lis.removeClass('disabled').children('a').removeAttr('href').attr('tabindex', 0); + } + }, + + isDisabled: function () { + return this.$element[0].disabled; + }, + + checkDisabled: function () { + var that = this; + + if (this.isDisabled()) { + this.$newElement.addClass('disabled'); + this.$button.addClass('disabled').attr('tabindex', -1); + } else { + if (this.$button.hasClass('disabled')) { + this.$newElement.removeClass('disabled'); + this.$button.removeClass('disabled'); + } + + if (this.$button.attr('tabindex') == -1 && !this.$element.data('tabindex')) { + this.$button.removeAttr('tabindex'); + } + } + + this.$button.click(function () { + return !that.isDisabled(); + }); + }, + + togglePlaceholder: function () { + var value = this.$element.val(); + this.$button.toggleClass('bs-placeholder', value === null || value === ''); + }, + + tabIndex: function () { + if (this.$element.data('tabindex') !== this.$element.attr('tabindex') && + (this.$element.attr('tabindex') !== -98 && this.$element.attr('tabindex') !== '-98')) { + this.$element.data('tabindex', this.$element.attr('tabindex')); + this.$button.attr('tabindex', this.$element.data('tabindex')); + } + + this.$element.attr('tabindex', -98); + }, + + clickListener: function () { + var that = this, + $document = $(document); + + this.$newElement.on('touchstart.dropdown', '.dropdown-menu', function (e) { + e.stopPropagation(); + }); + + $document.data('spaceSelect', false); + + this.$button.on('keyup', function (e) { + if (/(32)/.test(e.keyCode.toString(10)) && $document.data('spaceSelect')) { + e.preventDefault(); + $document.data('spaceSelect', false); + } + }); + + this.$button.on('click', function () { + that.setSize(); + }); + + this.$element.on('shown.bs.select', function () { + if (!that.options.liveSearch && !that.multiple) { + that.$menuInner.find('.selected a').focus(); + } else if (!that.multiple) { + var selectedIndex = that.liObj[that.$element[0].selectedIndex]; + + if (typeof selectedIndex !== 'number' || that.options.size === false) return; + + // scroll to selected option + var offset = that.$lis.eq(selectedIndex)[0].offsetTop - that.$menuInner[0].offsetTop; + offset = offset - that.$menuInner[0].offsetHeight/2 + that.sizeInfo.liHeight/2; + that.$menuInner[0].scrollTop = offset; + } + }); + + this.$menuInner.on('click', 'li a', function (e) { + var $this = $(this), + clickedIndex = $this.parent().data('originalIndex'), + prevValue = that.$element.val(), + prevIndex = that.$element.prop('selectedIndex'), + triggerChange = true; + + // Don't close on multi choice menu + if (that.multiple && that.options.maxOptions !== 1) { + e.stopPropagation(); + } + + e.preventDefault(); + + //Don't run if we have been disabled + if (!that.isDisabled() && !$this.parent().hasClass('disabled')) { + var $options = that.$element.find('option'), + $option = $options.eq(clickedIndex), + state = $option.prop('selected'), + $optgroup = $option.parent('optgroup'), + maxOptions = that.options.maxOptions, + maxOptionsGrp = $optgroup.data('maxOptions') || false; + + if (!that.multiple) { // Deselect all others if not multi select box + $options.prop('selected', false); + $option.prop('selected', true); + that.$menuInner.find('.selected').removeClass('selected'); + that.setSelected(clickedIndex, true); + } else { // Toggle the one we have chosen if we are multi select. + $option.prop('selected', !state); + that.setSelected(clickedIndex, !state); + $this.blur(); + + if (maxOptions !== false || maxOptionsGrp !== false) { + var maxReached = maxOptions < $options.filter(':selected').length, + maxReachedGrp = maxOptionsGrp < $optgroup.find('option:selected').length; + + if ((maxOptions && maxReached) || (maxOptionsGrp && maxReachedGrp)) { + if (maxOptions && maxOptions == 1) { + $options.prop('selected', false); + $option.prop('selected', true); + that.$menuInner.find('.selected').removeClass('selected'); + that.setSelected(clickedIndex, true); + } else if (maxOptionsGrp && maxOptionsGrp == 1) { + $optgroup.find('option:selected').prop('selected', false); + $option.prop('selected', true); + var optgroupID = $this.parent().data('optgroup'); + that.$menuInner.find('[data-optgroup="' + optgroupID + '"]').removeClass('selected'); + that.setSelected(clickedIndex, true); + } else { + var maxOptionsText = typeof that.options.maxOptionsText === 'string' ? [that.options.maxOptionsText, that.options.maxOptionsText] : that.options.maxOptionsText, + maxOptionsArr = typeof maxOptionsText === 'function' ? maxOptionsText(maxOptions, maxOptionsGrp) : maxOptionsText, + maxTxt = maxOptionsArr[0].replace('{n}', maxOptions), + maxTxtGrp = maxOptionsArr[1].replace('{n}', maxOptionsGrp), + $notify = $('
    '); + // If {var} is set in array, replace it + /** @deprecated */ + if (maxOptionsArr[2]) { + maxTxt = maxTxt.replace('{var}', maxOptionsArr[2][maxOptions > 1 ? 0 : 1]); + maxTxtGrp = maxTxtGrp.replace('{var}', maxOptionsArr[2][maxOptionsGrp > 1 ? 0 : 1]); + } + + $option.prop('selected', false); + + that.$menu.append($notify); + + if (maxOptions && maxReached) { + $notify.append($('
    ' + maxTxt + '
    ')); + triggerChange = false; + that.$element.trigger('maxReached.bs.select'); + } + + if (maxOptionsGrp && maxReachedGrp) { + $notify.append($('
    ' + maxTxtGrp + '
    ')); + triggerChange = false; + that.$element.trigger('maxReachedGrp.bs.select'); + } + + setTimeout(function () { + that.setSelected(clickedIndex, false); + }, 10); + + $notify.delay(750).fadeOut(300, function () { + $(this).remove(); + }); + } + } + } + } + + if (!that.multiple || (that.multiple && that.options.maxOptions === 1)) { + that.$button.focus(); + } else if (that.options.liveSearch) { + that.$searchbox.focus(); + } + + // Trigger select 'change' + if (triggerChange) { + if ((prevValue != that.$element.val() && that.multiple) || (prevIndex != that.$element.prop('selectedIndex') && !that.multiple)) { + // $option.prop('selected') is current option state (selected/unselected). state is previous option state. + that.$element + .trigger('changed.bs.select', [clickedIndex, $option.prop('selected'), state]) + .triggerNative('change'); + } + } + } + }); + + this.$menu.on('click', 'li.disabled a, .popover-title, .popover-title :not(.close)', function (e) { + if (e.currentTarget == this) { + e.preventDefault(); + e.stopPropagation(); + if (that.options.liveSearch && !$(e.target).hasClass('close')) { + that.$searchbox.focus(); + } else { + that.$button.focus(); + } + } + }); + + this.$menuInner.on('click', '.divider, .dropdown-header', function (e) { + e.preventDefault(); + e.stopPropagation(); + if (that.options.liveSearch) { + that.$searchbox.focus(); + } else { + that.$button.focus(); + } + }); + + this.$menu.on('click', '.popover-title .close', function () { + that.$button.click(); + }); + + this.$searchbox.on('click', function (e) { + e.stopPropagation(); + }); + + this.$menu.on('click', '.actions-btn', function (e) { + if (that.options.liveSearch) { + that.$searchbox.focus(); + } else { + that.$button.focus(); + } + + e.preventDefault(); + e.stopPropagation(); + + if ($(this).hasClass('bs-select-all')) { + that.selectAll(); + } else { + that.deselectAll(); + } + }); + + this.$element.change(function () { + that.render(false); + }); + }, + + liveSearchListener: function () { + var that = this, + $no_results = $('
  • '); + + this.$button.on('click.dropdown.data-api touchstart.dropdown.data-api', function () { + that.$menuInner.find('.active').removeClass('active'); + if (!!that.$searchbox.val()) { + that.$searchbox.val(''); + that.$lis.not('.is-hidden').removeClass('hidden'); + if (!!$no_results.parent().length) $no_results.remove(); + } + if (!that.multiple) that.$menuInner.find('.selected').addClass('active'); + setTimeout(function () { + that.$searchbox.focus(); + }, 10); + }); + + this.$searchbox.on('click.dropdown.data-api focus.dropdown.data-api touchend.dropdown.data-api', function (e) { + e.stopPropagation(); + }); + + this.$searchbox.on('input propertychange', function () { + if (that.$searchbox.val()) { + var $searchBase = that.$lis.not('.is-hidden').removeClass('hidden').children('a'); + if (that.options.liveSearchNormalize) { + $searchBase = $searchBase.not(':a' + that._searchStyle() + '("' + normalizeToBase(that.$searchbox.val()) + '")'); + } else { + $searchBase = $searchBase.not(':' + that._searchStyle() + '("' + that.$searchbox.val() + '")'); + } + $searchBase.parent().addClass('hidden'); + + that.$lis.filter('.dropdown-header').each(function () { + var $this = $(this), + optgroup = $this.data('optgroup'); + + if (that.$lis.filter('[data-optgroup=' + optgroup + ']').not($this).not('.hidden').length === 0) { + $this.addClass('hidden'); + that.$lis.filter('[data-optgroup=' + optgroup + 'div]').addClass('hidden'); + } + }); + + var $lisVisible = that.$lis.not('.hidden'); + + // hide divider if first or last visible, or if followed by another divider + $lisVisible.each(function (index) { + var $this = $(this); + + if ($this.hasClass('divider') && ( + $this.index() === $lisVisible.first().index() || + $this.index() === $lisVisible.last().index() || + $lisVisible.eq(index + 1).hasClass('divider'))) { + $this.addClass('hidden'); + } + }); + + if (!that.$lis.not('.hidden, .no-results').length) { + if (!!$no_results.parent().length) { + $no_results.remove(); + } + $no_results.html(that.options.noneResultsText.replace('{0}', '"' + htmlEscape(that.$searchbox.val()) + '"')).show(); + that.$menuInner.append($no_results); + } else if (!!$no_results.parent().length) { + $no_results.remove(); + } + } else { + that.$lis.not('.is-hidden').removeClass('hidden'); + if (!!$no_results.parent().length) { + $no_results.remove(); + } + } + + that.$lis.filter('.active').removeClass('active'); + if (that.$searchbox.val()) that.$lis.not('.hidden, .divider, .dropdown-header').eq(0).addClass('active').children('a').focus(); + $(this).focus(); + }); + }, + + _searchStyle: function () { + var styles = { + begins: 'ibegins', + startsWith: 'ibegins' + }; + + return styles[this.options.liveSearchStyle] || 'icontains'; + }, + + val: function (value) { + if (typeof value !== 'undefined') { + this.$element.val(value); + this.render(); + + return this.$element; + } else { + return this.$element.val(); + } + }, + + changeAll: function (status) { + if (!this.multiple) return; + if (typeof status === 'undefined') status = true; + + this.findLis(); + + var $options = this.$element.find('option'), + $lisVisible = this.$lis.not('.divider, .dropdown-header, .disabled, .hidden'), + lisVisLen = $lisVisible.length, + selectedOptions = []; + + if (status) { + if ($lisVisible.filter('.selected').length === $lisVisible.length) return; + } else { + if ($lisVisible.filter('.selected').length === 0) return; + } + + $lisVisible.toggleClass('selected', status); + + for (var i = 0; i < lisVisLen; i++) { + var origIndex = $lisVisible[i].getAttribute('data-original-index'); + selectedOptions[selectedOptions.length] = $options.eq(origIndex)[0]; + } + + $(selectedOptions).prop('selected', status); + + this.render(false); + + this.togglePlaceholder(); + + this.$element + .trigger('changed.bs.select') + .triggerNative('change'); + }, + + selectAll: function () { + return this.changeAll(true); + }, + + deselectAll: function () { + return this.changeAll(false); + }, + + toggle: function (e) { + e = e || window.event; + + if (e) e.stopPropagation(); + + this.$button.trigger('click'); + }, + + keydown: function (e) { + var $this = $(this), + $parent = $this.is('input') ? $this.parent().parent() : $this.parent(), + $items, + that = $parent.data('this'), + index, + next, + first, + last, + prev, + nextPrev, + prevIndex, + isActive, + selector = ':not(.disabled, .hidden, .dropdown-header, .divider)', + keyCodeMap = { + 32: ' ', + 48: '0', + 49: '1', + 50: '2', + 51: '3', + 52: '4', + 53: '5', + 54: '6', + 55: '7', + 56: '8', + 57: '9', + 59: ';', + 65: 'a', + 66: 'b', + 67: 'c', + 68: 'd', + 69: 'e', + 70: 'f', + 71: 'g', + 72: 'h', + 73: 'i', + 74: 'j', + 75: 'k', + 76: 'l', + 77: 'm', + 78: 'n', + 79: 'o', + 80: 'p', + 81: 'q', + 82: 'r', + 83: 's', + 84: 't', + 85: 'u', + 86: 'v', + 87: 'w', + 88: 'x', + 89: 'y', + 90: 'z', + 96: '0', + 97: '1', + 98: '2', + 99: '3', + 100: '4', + 101: '5', + 102: '6', + 103: '7', + 104: '8', + 105: '9' + }; + + if (that.options.liveSearch) $parent = $this.parent().parent(); + + if (that.options.container) $parent = that.$menu; + + $items = $('[role=menu] li', $parent); + + isActive = that.$newElement.hasClass('open'); + + if (!isActive && (e.keyCode >= 48 && e.keyCode <= 57 || e.keyCode >= 96 && e.keyCode <= 105 || e.keyCode >= 65 && e.keyCode <= 90)) { + if (!that.options.container) { + that.setSize(); + that.$menu.parent().addClass('open'); + isActive = true; + } else { + that.$button.trigger('click'); + } + that.$searchbox.focus(); + return; + } + + if (that.options.liveSearch) { + if (/(^9$|27)/.test(e.keyCode.toString(10)) && isActive && that.$menu.find('.active').length === 0) { + e.preventDefault(); + that.$menu.parent().removeClass('open'); + if (that.options.container) that.$newElement.removeClass('open'); + that.$button.focus(); + } + // $items contains li elements when liveSearch is enabled + $items = $('[role=menu] li' + selector, $parent); + if (!$this.val() && !/(38|40)/.test(e.keyCode.toString(10))) { + if ($items.filter('.active').length === 0) { + $items = that.$menuInner.find('li'); + if (that.options.liveSearchNormalize) { + $items = $items.filter(':a' + that._searchStyle() + '(' + normalizeToBase(keyCodeMap[e.keyCode]) + ')'); + } else { + $items = $items.filter(':' + that._searchStyle() + '(' + keyCodeMap[e.keyCode] + ')'); + } + } + } + } + + if (!$items.length) return; + + if (/(38|40)/.test(e.keyCode.toString(10))) { + index = $items.index($items.find('a').filter(':focus').parent()); + first = $items.filter(selector).first().index(); + last = $items.filter(selector).last().index(); + next = $items.eq(index).nextAll(selector).eq(0).index(); + prev = $items.eq(index).prevAll(selector).eq(0).index(); + nextPrev = $items.eq(next).prevAll(selector).eq(0).index(); + + if (that.options.liveSearch) { + $items.each(function (i) { + if (!$(this).hasClass('disabled')) { + $(this).data('index', i); + } + }); + index = $items.index($items.filter('.active')); + first = $items.first().data('index'); + last = $items.last().data('index'); + next = $items.eq(index).nextAll().eq(0).data('index'); + prev = $items.eq(index).prevAll().eq(0).data('index'); + nextPrev = $items.eq(next).prevAll().eq(0).data('index'); + } + + prevIndex = $this.data('prevIndex'); + + if (e.keyCode == 38) { + if (that.options.liveSearch) index--; + if (index != nextPrev && index > prev) index = prev; + if (index < first) index = first; + if (index == prevIndex) index = last; + } else if (e.keyCode == 40) { + if (that.options.liveSearch) index++; + if (index == -1) index = 0; + if (index != nextPrev && index < next) index = next; + if (index > last) index = last; + if (index == prevIndex) index = first; + } + + $this.data('prevIndex', index); + + if (!that.options.liveSearch) { + $items.eq(index).children('a').focus(); + } else { + e.preventDefault(); + if (!$this.hasClass('dropdown-toggle')) { + $items.removeClass('active').eq(index).addClass('active').children('a').focus(); + $this.focus(); + } + } + + } else if (!$this.is('input')) { + var keyIndex = [], + count, + prevKey; + + $items.each(function () { + if (!$(this).hasClass('disabled')) { + if ($.trim($(this).children('a').text().toLowerCase()).substring(0, 1) == keyCodeMap[e.keyCode]) { + keyIndex.push($(this).index()); + } + } + }); + + count = $(document).data('keycount'); + count++; + $(document).data('keycount', count); + + prevKey = $.trim($(':focus').text().toLowerCase()).substring(0, 1); + + if (prevKey != keyCodeMap[e.keyCode]) { + count = 1; + $(document).data('keycount', count); + } else if (count >= keyIndex.length) { + $(document).data('keycount', 0); + if (count > keyIndex.length) count = 1; + } + + $items.eq(keyIndex[count - 1]).children('a').focus(); + } + + // Select focused option if "Enter", "Spacebar" or "Tab" (when selectOnTab is true) are pressed inside the menu. + if ((/(13|32)/.test(e.keyCode.toString(10)) || (/(^9$)/.test(e.keyCode.toString(10)) && that.options.selectOnTab)) && isActive) { + if (!/(32)/.test(e.keyCode.toString(10))) e.preventDefault(); + if (!that.options.liveSearch) { + var elem = $(':focus'); + elem.click(); + // Bring back focus for multiselects + elem.focus(); + // Prevent screen from scrolling if the user hit the spacebar + e.preventDefault(); + // Fixes spacebar selection of dropdown items in FF & IE + $(document).data('spaceSelect', true); + } else if (!/(32)/.test(e.keyCode.toString(10))) { + that.$menuInner.find('.active a').click(); + $this.focus(); + } + $(document).data('keycount', 0); + } + + if ((/(^9$|27)/.test(e.keyCode.toString(10)) && isActive && (that.multiple || that.options.liveSearch)) || (/(27)/.test(e.keyCode.toString(10)) && !isActive)) { + that.$menu.parent().removeClass('open'); + if (that.options.container) that.$newElement.removeClass('open'); + that.$button.focus(); + } + }, + + mobile: function () { + this.$element.addClass('mobile-device'); + }, + + refresh: function () { + this.$lis = null; + this.liObj = {}; + this.reloadLi(); + this.render(); + this.checkDisabled(); + this.liHeight(true); + this.setStyle(); + this.setWidth(); + if (this.$lis) this.$searchbox.trigger('propertychange'); + + this.$element.trigger('refreshed.bs.select'); + }, + + hide: function () { + this.$newElement.hide(); + }, + + show: function () { + this.$newElement.show(); + }, + + remove: function () { + this.$newElement.remove(); + this.$element.remove(); + }, + + destroy: function () { + this.$newElement.before(this.$element).remove(); + + if (this.$bsContainer) { + this.$bsContainer.remove(); + } else { + this.$menu.remove(); + } + + this.$element + .off('.bs.select') + .removeData('selectpicker') + .removeClass('bs-select-hidden selectpicker'); + } + }; + + // SELECTPICKER PLUGIN DEFINITION + // ============================== + function Plugin(option, event) { + // get the args of the outer function.. + var args = arguments; + // The arguments of the function are explicitly re-defined from the argument list, because the shift causes them + // to get lost/corrupted in android 2.3 and IE9 #715 #775 + var _option = option, + _event = event; + [].shift.apply(args); + + var value; + var chain = this.each(function () { + var $this = $(this); + if ($this.is('select')) { + var data = $this.data('selectpicker'), + options = typeof _option == 'object' && _option; + + if (!data) { + var config = $.extend({}, Selectpicker.DEFAULTS, $.fn.selectpicker.defaults || {}, $this.data(), options); + config.template = $.extend({}, Selectpicker.DEFAULTS.template, ($.fn.selectpicker.defaults ? $.fn.selectpicker.defaults.template : {}), $this.data().template, options.template); + $this.data('selectpicker', (data = new Selectpicker(this, config, _event))); + } else if (options) { + for (var i in options) { + if (options.hasOwnProperty(i)) { + data.options[i] = options[i]; + } + } + } + + if (typeof _option == 'string') { + if (data[_option] instanceof Function) { + value = data[_option].apply(data, args); + } else { + value = data.options[_option]; + } + } + } + }); + + if (typeof value !== 'undefined') { + //noinspection JSUnusedAssignment + return value; + } else { + return chain; + } + } + + var old = $.fn.selectpicker; + $.fn.selectpicker = Plugin; + $.fn.selectpicker.Constructor = Selectpicker; + + // SELECTPICKER NO CONFLICT + // ======================== + $.fn.selectpicker.noConflict = function () { + $.fn.selectpicker = old; + return this; + }; + + $(document) + .data('keycount', 0) + .on('keydown.bs.select', '.bootstrap-select [data-toggle=dropdown], .bootstrap-select [role="menu"], .bs-searchbox input', Selectpicker.prototype.keydown) + .on('focusin.modal', '.bootstrap-select [data-toggle=dropdown], .bootstrap-select [role="menu"], .bs-searchbox input', function (e) { + e.stopPropagation(); + }); + + // SELECTPICKER DATA-API + // ===================== + $(window).on('load.bs.select.data-api', function () { + $('.selectpicker').each(function () { + var $selectpicker = $(this); + Plugin.call($selectpicker, $selectpicker.data()); + }) + }); +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/bootstrap-select.js.map b/assets/lib/bootstrap-select/js/bootstrap-select.js.map new file mode 100644 index 0000000..27b8f2e --- /dev/null +++ b/assets/lib/bootstrap-select/js/bootstrap-select.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["bootstrap-select.js"],"names":["root","factory","define","amd","a0","exports","module","require","jQuery","this","$","normalizeToBase","text","rExps","re","ch","each","replace","htmlEscape","html","escapeMap","&","<",">","\"","'","`","source","Object","keys","join","testRegexp","RegExp","replaceRegexp","string","test","match","Plugin","option","event","args","arguments","_option","_event","shift","apply","value","chain","$this","is","data","options","i","hasOwnProperty","config","extend","Selectpicker","DEFAULTS","fn","selectpicker","defaults","template","Function","String","prototype","includes","toString","defineProperty","object","$defineProperty","result","error","indexOf","search","TypeError","call","stringLength","length","searchString","searchLength","position","undefined","pos","Number","start","Math","min","max","configurable","writable","startsWith","index","charCodeAt","o","k","r","push","triggerNative","eventName","el","dispatchEvent","Event","bubbles","document","createEvent","initEvent","fireEvent","createEventObject","eventType","trigger","expr","icontains","obj","meta","$obj","haystack","toUpperCase","ibegins","aicontains","aibegins","element","e","stopPropagation","preventDefault","$element","$newElement","$button","$menu","$lis","title","attr","val","render","refresh","setStyle","selectAll","deselectAll","destroy","remove","show","hide","init","VERSION","noneSelectedText","noneResultsText","countSelectedText","numSelected","numTotal","maxOptionsText","numAll","numGroup","selectAllText","deselectAllText","doneButton","doneButtonText","multipleSeparator","styleBase","style","size","selectedTextFormat","width","container","hideDisabled","showSubtext","showIcon","showContent","dropupAuto","header","liveSearch","liveSearchPlaceholder","liveSearchNormalize","liveSearchStyle","actionsBox","iconBase","tickIcon","showTick","caret","maxOptions","mobile","selectOnTab","dropdownAlignRight","constructor","that","id","addClass","liObj","multiple","prop","autofocus","createView","after","appendTo","children","$menuInner","$searchbox","find","removeClass","click","focus","checkDisabled","clickListener","liveSearchListener","setWidth","selectPosition","on","hide.bs.dropdown","hidden.bs.dropdown","show.bs.dropdown","shown.bs.dropdown","hasAttribute","focus.bs.select","off","shown.bs.select","rendered.bs.select","validity","valid","setTimeout","createDropdown","inputGroup","parent","hasClass","searchbox","actionsbox","donebutton","drop","$drop","li","createLi","innerHTML","reloadLi","destroyLi","_li","optID","titleOption","createElement","liIndex","generateLI","content","classes","optgroup","generateA","inline","tokens","className","appendChild","createTextNode","insertBefore","firstChild","$opt","selectedIndex","selected","optionClass","cssText","subtext","icon","$parent","isOptgroup","tagName","isOptgroupDisabled","disabled","isDisabled","$options","filter","optGroupClass","label","labelSubtext","labelIcon","showDivider","previousElementSibling","$prev","prevAll","optGroupDistance","d","prevOption","eq","findLis","updateLi","notDisabled","setDisabled","parentNode","setSelected","togglePlaceholder","tabIndex","selectedItems","map","toArray","split","totalCount","not","tr8nText","trim","status","buttonClass","liHeight","sizeInfo","newElement","menu","menuInner","divider","a","cloneNode","actions","input","body","offsetHeight","headerHeight","searchHeight","actionsHeight","doneButtonHeight","dividerHeight","outerHeight","menuStyle","getComputedStyle","menuPadding","vert","parseInt","paddingTop","css","paddingBottom","borderTopWidth","borderBottomWidth","horiz","paddingLeft","paddingRight","borderLeftWidth","borderRightWidth","menuExtras","marginTop","marginBottom","marginLeft","marginRight","removeChild","setSize","menuHeight","menuWidth","getHeight","getWidth","selectOffsetTop","selectOffsetBot","selectOffsetLeft","selectOffsetRight","$window","window","selectHeight","selectWidth","offsetWidth","divHeight","getPos","offset","top","scrollTop","height","left","scrollLeft","getSize","minHeight","include","classList","contains","lis","getElementsByTagName","lisVisible","Array","optGroup","toggleClass","max-height","overflow","min-height","overflow-y","optIndex","slice","last","divLength","$selectClone","clone","$selectClone2","ulWidth","outerWidth","btnWidth","$bsContainer","actualHeight","getPlacement","append","detach","removeAttr","$document","keyCode","offsetTop","clickedIndex","prevValue","prevIndex","triggerChange","$option","state","$optgroup","maxOptionsGrp","blur","maxReached","maxReachedGrp","optgroupID","maxOptionsArr","maxTxt","maxTxtGrp","$notify","delay","fadeOut","currentTarget","target","change","$no_results","$searchBase","_searchStyle","$lisVisible","first","styles","begins","changeAll","lisVisLen","selectedOptions","origIndex","getAttribute","toggle","keydown","$items","next","prev","nextPrev","isActive","selector","keyCodeMap","32","48","49","50","51","52","53","54","55","56","57","59","65","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","87","88","89","90","96","97","98","99","100","101","102","103","104","105","nextAll","count","prevKey","keyIndex","toLowerCase","substring","elem","before","removeData","old","Constructor","noConflict","$selectpicker"],"mappings":";;;;;;CAOC,SAAUA,EAAMC,GACO,kBAAXC,SAAyBA,OAAOC,IAEzCD,QAAQ,UAAW,SAAUE,GAC3B,MAAQH,GAAQG,KAEU,gBAAZC,SAIhBC,OAAOD,QAAUJ,EAAQM,QAAQ,WAEjCN,EAAQO,SAEVC,KAAM,SAAUD,IAElB,SAAWE,GACT,YA8LA,SAASC,GAAgBC,GACvB,GAAIC,KACDC,GAAI,eAAgBC,GAAI,MACxBD,GAAI,eAAgBC,GAAI,MACxBD,GAAI,eAAgBC,GAAI,MACxBD,GAAI,eAAgBC,GAAI,MACxBD,GAAI,eAAgBC,GAAI,MACxBD,GAAI,eAAgBC,GAAI,MACxBD,GAAI,eAAgBC,GAAI,MACxBD,GAAI,eAAgBC,GAAI,MACxBD,GAAI,eAAgBC,GAAI,MACxBD,GAAI,eAAgBC,GAAI,MACxBD,GAAI,eAAgBC,GAAI,MACxBD,GAAI,UAAWC,GAAI,MACnBD,GAAI,UAAWC,GAAI,KAKtB,OAHAL,GAAEM,KAAKH,EAAO,WACZD,EAAOA,EAAKK,QAAQR,KAAKK,GAAIL,KAAKM,MAE7BH,EAIT,QAASM,GAAWC,GAClB,GAAIC,IACFC,IAAK,QACLC,IAAK,OACLC,IAAK,OACLC,IAAK,SACLC,IAAK,SACLC,IAAK,UAEHC,EAAS,MAAQC,OAAOC,KAAKT,GAAWU,KAAK,KAAO,IACpDC,EAAa,GAAIC,QAAOL,GACxBM,EAAgB,GAAID,QAAOL,EAAQ,KACnCO,EAAiB,MAARf,EAAe,GAAK,GAAKA,CACtC,OAAOY,GAAWI,KAAKD,GAAUA,EAAOjB,QAAQgB,EAAe,SAAUG,GACvE,MAAOhB,GAAUgB,KACdF,EA2+CP,QAASG,GAAOC,EAAQC,GAEtB,GAAIC,GAAOC,UAGPC,EAAUJ,EACVK,EAASJ,KACVK,MAAMC,MAAML,EAEf,IAAIM,GACAC,EAAQtC,KAAKO,KAAK,WACpB,GAAIgC,GAAQtC,EAAED,KACd,IAAIuC,EAAMC,GAAG,UAAW,CACtB,GAAIC,GAAOF,EAAME,KAAK,gBAClBC,EAA4B,gBAAXT,IAAuBA,CAE5C,IAAKQ,GAIE,GAAIC,EACT,IAAK,GAAIC,KAAKD,GACRA,EAAQE,eAAeD,KACzBF,EAAKC,QAAQC,GAAKD,EAAQC,QAPrB,CACT,GAAIE,GAAS5C,EAAE6C,UAAWC,EAAaC,SAAU/C,EAAEgD,GAAGC,aAAaC,aAAgBZ,EAAME,OAAQC,EACjGG,GAAOO,SAAWnD,EAAE6C,UAAWC,EAAaC,SAASI,SAAWnD,EAAEgD,GAAGC,aAAaC,SAAWlD,EAAEgD,GAAGC,aAAaC,SAASC,YAAgBb,EAAME,OAAOW,SAAUV,EAAQU,UACvKb,EAAME,KAAK,eAAiBA,EAAO,GAAIM,GAAa/C,KAAM6C,EAAQX,IAS9C,gBAAXD,KAEPI,EADEI,EAAKR,YAAoBoB,UACnBZ,EAAKR,GAASG,MAAMK,EAAMV,GAE1BU,EAAKC,QAAQT,MAM7B,OAAqB,mBAAVI,GAEFA,EAEAC,EAtvDNgB,OAAOC,UAAUC,WACnB,WAEC,GAAIC,MAAcA,SACdC,EAAkB,WAEpB,IACE,GAAIC,MACAC,EAAkBzC,OAAOuC,eACzBG,EAASD,EAAgBD,EAAQA,EAAQA,IAAWC,EACxD,MAAOE,IAET,MAAOD,MAELE,EAAU,GAAGA,QACbP,EAAW,SAAUQ,GACvB,GAAY,MAARhE,KACF,KAAM,IAAIiE,UAEZ,IAAIxC,GAAS6B,OAAOtD,KACpB,IAAIgE,GAAmC,mBAAzBP,EAASS,KAAKF,GAC1B,KAAM,IAAIC,UAEZ,IAAIE,GAAe1C,EAAO2C,OACtBC,EAAef,OAAOU,GACtBM,EAAeD,EAAaD,OAC5BG,EAAWvC,UAAUoC,OAAS,EAAIpC,UAAU,GAAKwC,OAEjDC,EAAMF,EAAWG,OAAOH,GAAY,CACpCE,IAAOA,IACTA,EAAM,EAER,IAAIE,GAAQC,KAAKC,IAAID,KAAKE,IAAIL,EAAK,GAAIN,EAEvC,OAAIG,GAAeK,EAAQR,GAClB,EAEyC,IAA3CJ,EAAQG,KAAKzC,EAAQ4C,EAAcI,GAExCf,GACFA,EAAeJ,OAAOC,UAAW,YAC/BlB,MAASmB,EACTuB,cAAgB,EAChBC,UAAY,IAGd1B,OAAOC,UAAUC,SAAWA,KAK7BF,OAAOC,UAAU0B,aACnB,WAEC,GAAIvB,GAAkB,WAEpB,IACE,GAAIC,MACAC,EAAkBzC,OAAOuC,eACzBG,EAASD,EAAgBD,EAAQA,EAAQA,IAAWC,EACxD,MAAOE,IAET,MAAOD,MAELJ,KAAcA,SACdwB,EAAa,SAAUjB,GACzB,GAAY,MAARhE,KACF,KAAM,IAAIiE,UAEZ,IAAIxC,GAAS6B,OAAOtD,KACpB,IAAIgE,GAAmC,mBAAzBP,EAASS,KAAKF,GAC1B,KAAM,IAAIC,UAEZ,IAAIE,GAAe1C,EAAO2C,OACtBC,EAAef,OAAOU,GACtBM,EAAeD,EAAaD,OAC5BG,EAAWvC,UAAUoC,OAAS,EAAIpC,UAAU,GAAKwC,OAEjDC,EAAMF,EAAWG,OAAOH,GAAY,CACpCE,IAAOA,IACTA,EAAM,EAER,IAAIE,GAAQC,KAAKC,IAAID,KAAKE,IAAIL,EAAK,GAAIN,EAEvC,IAAIG,EAAeK,EAAQR,EACzB,OAAO,CAGT,KADA,GAAIe,GAAQ,KACHA,EAAQZ,GACf,GAAI7C,EAAO0D,WAAWR,EAAQO,IAAUb,EAAac,WAAWD,GAC9D,OAAO,CAGX,QAAO,EAELxB,GACFA,EAAeJ,OAAOC,UAAW,cAC/BlB,MAAS4C,EACTF,cAAgB,EAChBC,UAAY,IAGd1B,OAAOC,UAAU0B,WAAaA,KAK/B9D,OAAOC,OACVD,OAAOC,KAAO,SACZgE,EACAC,EACAC,GAGAA,IAEA,KAAKD,IAAKD,GAERE,EAAE1C,eAAesB,KAAKkB,EAAGC,IAAMC,EAAEC,KAAKF,EAExC,OAAOC,KAIXrF,EAAEgD,GAAGuC,cAAgB,SAAUC,GAC7B,GACI3D,GADA4D,EAAK1F,KAAK,EAGV0F,GAAGC,eACgB,kBAAVC,OAET9D,EAAQ,GAAI8D,OAAMH,GAChBI,SAAS,KAIX/D,EAAQgE,SAASC,YAAY,SAC7BjE,EAAMkE,UAAUP,GAAW,GAAM,IAGnCC,EAAGC,cAAc7D,KAEb4D,EAAGO,YACLnE,EAAQgE,SAASI,oBACjBpE,EAAMqE,UAAYV,EAClBC,EAAGO,UAAU,KAAOR,EAAW3D,IAGjC9B,KAAKoG,QAAQX,KAMjBxF,EAAEoG,KAAK,KAAKC,UAAY,SAAUC,EAAKrB,EAAOsB,GAC5C,GAAIC,GAAOxG,EAAEsG,GACTG,GAAYD,EAAKhE,KAAK,WAAagE,EAAKtG,QAAQsD,WAAWkD,aAC/D,OAAOD,GAASlD,SAASgD,EAAK,GAAGG,gBAInC1G,EAAEoG,KAAK,KAAKO,QAAU,SAAUL,EAAKrB,EAAOsB,GAC1C,GAAIC,GAAOxG,EAAEsG,GACTG,GAAYD,EAAKhE,KAAK,WAAagE,EAAKtG,QAAQsD,WAAWkD,aAC/D,OAAOD,GAASzB,WAAWuB,EAAK,GAAGG,gBAIrC1G,EAAEoG,KAAK,KAAKQ,WAAa,SAAUN,EAAKrB,EAAOsB,GAC7C,GAAIC,GAAOxG,EAAEsG,GACTG,GAAYD,EAAKhE,KAAK,WAAagE,EAAKhE,KAAK,mBAAqBgE,EAAKtG,QAAQsD,WAAWkD,aAC9F,OAAOD,GAASlD,SAASgD,EAAK,GAAGG,gBAInC1G,EAAEoG,KAAK,KAAKS,SAAW,SAAUP,EAAKrB,EAAOsB,GAC3C,GAAIC,GAAOxG,EAAEsG,GACTG,GAAYD,EAAKhE,KAAK,WAAagE,EAAKhE,KAAK,mBAAqBgE,EAAKtG,QAAQsD,WAAWkD,aAC9F,OAAOD,GAASzB,WAAWuB,EAAK,GAAGG,eAkDrC,IAAI5D,GAAe,SAAUgE,EAASrE,EAASsE,GACzCA,IACFA,EAAEC,kBACFD,EAAEE,kBAGJlH,KAAKmH,SAAWlH,EAAE8G,GAClB/G,KAAKoH,YAAc,KACnBpH,KAAKqH,QAAU,KACfrH,KAAKsH,MAAQ,KACbtH,KAAKuH,KAAO,KACZvH,KAAK0C,QAAUA,EAIY,OAAvB1C,KAAK0C,QAAQ8E,QACfxH,KAAK0C,QAAQ8E,MAAQxH,KAAKmH,SAASM,KAAK,UAI1CzH,KAAK0H,IAAM3E,EAAaQ,UAAUmE,IAClC1H,KAAK2H,OAAS5E,EAAaQ,UAAUoE,OACrC3H,KAAK4H,QAAU7E,EAAaQ,UAAUqE,QACtC5H,KAAK6H,SAAW9E,EAAaQ,UAAUsE,SACvC7H,KAAK8H,UAAY/E,EAAaQ,UAAUuE,UACxC9H,KAAK+H,YAAchF,EAAaQ,UAAUwE,YAC1C/H,KAAKgI,QAAUjF,EAAaQ,UAAUyE,QACtChI,KAAKiI,OAASlF,EAAaQ,UAAU0E,OACrCjI,KAAKkI,KAAOnF,EAAaQ,UAAU2E,KACnClI,KAAKmI,KAAOpF,EAAaQ,UAAU4E,KAEnCnI,KAAKoI,OAGPrF,GAAasF,QAAU,SAGvBtF,EAAaC,UACXsF,iBAAkB,mBAClBC,gBAAiB,yBACjBC,kBAAmB,SAAUC,EAAaC,GACxC,MAAuB,IAAfD,EAAoB,oBAAsB,sBAEpDE,eAAgB,SAAUC,EAAQC,GAChC,OACa,GAAVD,EAAe,+BAAiC,gCACpC,GAAZC,EAAiB,qCAAuC,wCAG7DC,cAAe,aACfC,gBAAiB,eACjBC,YAAY,EACZC,eAAgB,QAChBC,kBAAmB,KACnBC,UAAW,MACXC,MAAO,cACPC,KAAM,OACN7B,MAAO,KACP8B,mBAAoB,SACpBC,OAAO,EACPC,WAAW,EACXC,cAAc,EACdC,aAAa,EACbC,UAAU,EACVC,aAAa,EACbC,YAAY,EACZC,QAAQ,EACRC,YAAY,EACZC,sBAAuB,KACvBC,qBAAqB,EACrBC,gBAAiB,WACjBC,YAAY,EACZC,SAAU,YACVC,SAAU,eACVC,UAAU,EACVlH,UACEmH,MAAO,+BAETC,YAAY,EACZC,QAAQ,EACRC,aAAa,EACbC,oBAAoB,GAGtB5H,EAAaQ,WAEXqH,YAAa7H,EAEbqF,KAAM,WACJ,GAAIyC,GAAO7K,KACP8K,EAAK9K,KAAKmH,SAASM,KAAK,KAE5BzH,MAAKmH,SAAS4D,SAAS,oBAIvB/K,KAAKgL,SACLhL,KAAKiL,SAAWjL,KAAKmH,SAAS+D,KAAK,YACnClL,KAAKmL,UAAYnL,KAAKmH,SAAS+D,KAAK,aACpClL,KAAKoH,YAAcpH,KAAKoL,aACxBpL,KAAKmH,SACFkE,MAAMrL,KAAKoH,aACXkE,SAAStL,KAAKoH,aACjBpH,KAAKqH,QAAUrH,KAAKoH,YAAYmE,SAAS,UACzCvL,KAAKsH,MAAQtH,KAAKoH,YAAYmE,SAAS,kBACvCvL,KAAKwL,WAAaxL,KAAKsH,MAAMiE,SAAS,UACtCvL,KAAKyL,WAAazL,KAAKsH,MAAMoE,KAAK,SAElC1L,KAAKmH,SAASwE,YAAY,oBAEtB3L,KAAK0C,QAAQiI,sBAAuB,GAAM3K,KAAKsH,MAAMyD,SAAS,uBAEhD,mBAAPD,KACT9K,KAAKqH,QAAQI,KAAK,UAAWqD,GAC7B7K,EAAE,cAAgB6K,EAAK,MAAMc,MAAM,SAAU5E,GAC3CA,EAAEE,iBACF2D,EAAKxD,QAAQwE,WAIjB7L,KAAK8L,gBACL9L,KAAK+L,gBACD/L,KAAK0C,QAAQqH,YAAY/J,KAAKgM,qBAClChM,KAAK2H,SACL3H,KAAK6H,WACL7H,KAAKiM,WACDjM,KAAK0C,QAAQ8G,WAAWxJ,KAAKkM,iBACjClM,KAAKsH,MAAM7E,KAAK,OAAQzC,MACxBA,KAAKoH,YAAY3E,KAAK,OAAQzC,MAC1BA,KAAK0C,QAAQ+H,QAAQzK,KAAKyK,SAE9BzK,KAAKoH,YAAY+E,IACfC,mBAAoB,SAAUpF,GAC5B6D,EAAK1D,SAASf,QAAQ,iBAAkBY,IAE1CqF,qBAAsB,SAAUrF,GAC9B6D,EAAK1D,SAASf,QAAQ,mBAAoBY,IAE5CsF,mBAAoB,SAAUtF,GAC5B6D,EAAK1D,SAASf,QAAQ,iBAAkBY,IAE1CuF,oBAAqB,SAAUvF,GAC7B6D,EAAK1D,SAASf,QAAQ,kBAAmBY,MAIzC6D,EAAK1D,SAAS,GAAGqF,aAAa,aAChCxM,KAAKmH,SAASgF,GAAG,UAAW,WAC1BtB,EAAKxD,QACF0D,SAAS,cACTc,QAEHhB,EAAK1D,SAASgF,IACZM,kBAAmB,WACjB5B,EAAKxD,QAAQwE,QACbhB,EAAK1D,SAASuF,IAAI,oBAEpBC,kBAAmB,WACjB9B,EAAK1D,SACFO,IAAImD,EAAK1D,SAASO,OAClBgF,IAAI,oBAETE,qBAAsB,WAEhB5M,KAAK6M,SAASC,OAAOjC,EAAKxD,QAAQsE,YAAY,cAClDd,EAAK1D,SAASuF,IAAI,2BAM1BK,WAAW,WACTlC,EAAK1D,SAASf,QAAQ,uBAI1B4G,eAAgB,WAGd,GAAI1C,GAAYtK,KAAKiL,UAAYjL,KAAK0C,QAAQ4H,SAAY,aAAe,GACrE2C,EAAajN,KAAKmH,SAAS+F,SAASC,SAAS,eAAiB,mBAAqB,GACnFhC,EAAYnL,KAAKmL,UAAY,aAAe,GAE5CrB,EAAS9J,KAAK0C,QAAQoH,OAAS,qGAAuG9J,KAAK0C,QAAQoH,OAAS,SAAW,GACvKsD,EAAYpN,KAAK0C,QAAQqH,WAC7B,wFAEC,OAAS/J,KAAK0C,QAAQsH,sBAAwB,GAAK,iBAAmBvJ,EAAWT,KAAK0C,QAAQsH,uBAAyB,KAAO,UAEzH,GACFqD,EAAarN,KAAKiL,UAAYjL,KAAK0C,QAAQyH,WAC/C,oJAGAnK,KAAK0C,QAAQoG,cACb,sFAEA9I,KAAK0C,QAAQqG,gBACb,wBAGM,GACFuE,EAAatN,KAAKiL,UAAYjL,KAAK0C,QAAQsG,WAC/C,oHAGAhJ,KAAK0C,QAAQuG,eACb,wBAGM,GACFsE,EACA,yCAA2CjD,EAAW2C,EAAa,kCACjCjN,KAAK0C,QAAQyG,UAAY,2CAA6CgC,EAAY,8EAGpHnL,KAAK0C,QAAQU,SAASmH,MACtB,mDAGAT,EACAsD,EACAC,EACA,oDAEAC,EACA,cAGJ,OAAOrN,GAAEsN,IAGXnC,WAAY,WACV,GAAIoC,GAAQxN,KAAKgN,iBACbS,EAAKzN,KAAK0N,UAGd,OADAF,GAAM9B,KAAK,MAAM,GAAGiC,UAAYF,EACzBD,GAGTI,SAAU,WAER5N,KAAK6N,WAEL,IAAIJ,GAAKzN,KAAK0N,UACd1N,MAAKwL,WAAW,GAAGmC,UAAYF,GAGjCI,UAAW,WACT7N,KAAKsH,MAAMoE,KAAK,MAAMzD,UAGxByF,SAAU,WACR,GAAI7C,GAAO7K,KACP8N,KACAC,EAAQ,EACRC,EAAclI,SAASmI,cAAc,UACrCC,EAAU,GAUVC,EAAa,SAAUC,EAASlJ,EAAOmJ,EAASC,GAClD,MAAO,OACkB,mBAAZD,GAA0B,KAAOA,EAAW,WAAaA,EAAU,IAAM,KAC/D,mBAAVnJ,GAAwB,OAASA,EAAS,yBAA2BA,EAAQ,IAAM,KACtE,mBAAboJ,GAA2B,OAASA,EAAY,kBAAoBA,EAAW,IAAM,IAC9F,IAAMF,EAAU,SAUlBG,EAAY,SAAUpO,EAAMkO,EAASG,EAAQC,GAC/C,MAAO,mBACiB,mBAAZJ,GAA0B,WAAaA,EAAU,IAAM,KAC5C,mBAAXG,GAAyB,WAAaA,EAAS,IAAM,KAC5D3D,EAAKnI,QAAQuH,oBAAsB,0BAA4B/J,EAAgBO,EAAWN,IAAS,IAAM,KACvF,mBAAXsO,IAAqC,OAAXA,EAAkB,iBAAmBA,EAAS,IAAM,IACtF,IAAMtO,EACN,gBAAkB0K,EAAKnI,QAAQ0H,SAAW,IAAMS,EAAKnI,QAAQ2H,SAAW,2BAI9E,IAAIrK,KAAK0C,QAAQ8E,QAAUxH,KAAKiL,WAG9BiD,KAEKlO,KAAKmH,SAASuE,KAAK,oBAAoBtH,QAAQ,CAElD,GAAI2C,GAAU/G,KAAKmH,SAAS,EAC5B6G,GAAYU,UAAY,kBACxBV,EAAYW,YAAY7I,SAAS8I,eAAe5O,KAAK0C,QAAQ8E,QAC7DwG,EAAY3L,MAAQ,GACpB0E,EAAQ8H,aAAab,EAAajH,EAAQ+H,WAI1C,IAAIC,GAAO9O,EAAE8G,EAAQrE,QAAQqE,EAAQiI,eACPxK,UAA1BuK,EAAKtH,KAAK,aAA6BsH,EAAK7D,KAAK,eAAgB,IACnE8C,EAAYiB,UAAW,GA4H7B,MAvHAjP,MAAKmH,SAASuE,KAAK,UAAUnL,KAAK,SAAU2E,GAC1C,GAAI3C,GAAQtC,EAAED,KAId,IAFAkO,KAEI3L,EAAM4K,SAAS,mBAAnB,CAGA,GAAI+B,GAAclP,KAAK0O,WAAa,GAChCF,EAASxO,KAAKoJ,MAAM+F,QACpBhP,EAAOoC,EAAME,KAAK,WAAaF,EAAME,KAAK,WAAaF,EAAM7B,OAC7D+N,EAASlM,EAAME,KAAK,UAAYF,EAAME,KAAK,UAAY,KACvD2M,EAA2C,mBAA1B7M,GAAME,KAAK,WAA6B,6BAA+BF,EAAME,KAAK,WAAa,WAAa,GAC7H4M,EAAqC,mBAAvB9M,GAAME,KAAK,QAA0B,gBAAkBoI,EAAKnI,QAAQ0H,SAAW,IAAM7H,EAAME,KAAK,QAAU,aAAe,GACvI6M,EAAU/M,EAAM2K,SAChBqC,EAAoC,aAAvBD,EAAQ,GAAGE,QACxBC,EAAqBF,GAAcD,EAAQ,GAAGI,SAC9CC,EAAa3P,KAAK0P,UAAYD,CAMlC,IAJa,KAATJ,GAAeM,IACjBN,EAAO,SAAWA,EAAO,WAGvBxE,EAAKnI,QAAQ+G,eAAiBkG,IAAeJ,GAAcE,GAE7D,WADAvB,IASF,IALK3L,EAAME,KAAK,aAEdtC,EAAOkP,EAAO,sBAAwBlP,EAAOiP,EAAU,WAGrDG,GAAchN,EAAME,KAAK,cAAe,EAAM,CAChD,GAAIoI,EAAKnI,QAAQ+G,cAAgBkG,EAAY,CAC3C,GAA2CnL,SAAvC8K,EAAQ7M,KAAK,sBAAqC,CACpD,GAAImN,GAAWN,EAAQ/D,UACvB+D,GAAQ7M,KAAK,qBAAsBmN,EAASC,OAAO,aAAazL,SAAWwL,EAASxL,QAGtF,GAAIkL,EAAQ7M,KAAK,sBAEf,WADAyL,KAKJ,GAAI4B,GAAgB,IAAMR,EAAQ,GAAGZ,WAAa,EAElD,IAAsB,IAAlBnM,EAAM2C,QAAe,CACvB6I,GAAS,CAGT,IAAIgC,GAAQT,EAAQ,GAAGS,MACnBC,EAAkD,mBAA5BV,GAAQ7M,KAAK,WAA6B,6BAA+B6M,EAAQ7M,KAAK,WAAa,WAAa,GACtIwN,EAAYX,EAAQ7M,KAAK,QAAU,gBAAkBoI,EAAKnI,QAAQ0H,SAAW,IAAMkF,EAAQ7M,KAAK,QAAU,aAAe,EAE7HsN,GAAQE,EAAY,sBAAwBF,EAAQC,EAAe,UAErD,IAAV9K,GAAe4I,EAAI1J,OAAS,IAC9B8J,IACAJ,EAAIvI,KAAK4I,EAAW,GAAI,KAAM,UAAWJ,EAAQ,SAEnDG,IACAJ,EAAIvI,KAAK4I,EAAW4B,EAAO,KAAM,kBAAoBD,EAAe/B,IAGtE,GAAIlD,EAAKnI,QAAQ+G,cAAgBkG,EAE/B,WADAzB,IAIFJ,GAAIvI,KAAK4I,EAAWI,EAAUpO,EAAM,OAAS+O,EAAcY,EAAetB,EAAQC,GAASvJ,EAAO,GAAI6I,QACjG,IAAIxL,EAAME,KAAK,cAAe,EACnCqL,EAAIvI,KAAK4I,EAAW,GAAIjJ,EAAO,gBAC1B,IAAI3C,EAAME,KAAK,aAAc,EAClCqL,EAAIvI,KAAK4I,EAAWI,EAAUpO,EAAM+O,EAAaV,EAAQC,GAASvJ,EAAO,yBACpE,CACL,GAAIgL,GAAclQ,KAAKmQ,wBAAkE,aAAxCnQ,KAAKmQ,uBAAuBX,OAG7E,KAAKU,GAAerF,EAAKnI,QAAQ+G,aAI/B,IAAK,GAFD2G,GAAQnQ,EAAED,MAAMqQ,UAEX1N,EAAI,EAAGA,EAAIyN,EAAMhM,OAAQzB,IAEhC,GAAyB,aAArByN,EAAMzN,GAAG6M,QAAwB,CAKnC,IAAK,GAJDc,GAAmB,EAIdC,EAAI,EAAO5N,EAAJ4N,EAAOA,IAAK,CAC1B,GAAIC,GAAaJ,EAAMG,IACnBC,EAAWd,UAAYzP,EAAEuQ,GAAY/N,KAAK,aAAc,IAAM6N,IAIhEA,IAAqB3N,IAAGuN,GAAc,EAE1C,OAKFA,IACFhC,IACAJ,EAAIvI,KAAK4I,EAAW,GAAI,KAAM,UAAWJ,EAAQ,SAEnDD,EAAIvI,KAAK4I,EAAWI,EAAUpO,EAAM+O,EAAaV,EAAQC,GAASvJ,IAGpE2F,EAAKG,MAAM9F,GAASgJ,KAIjBlO,KAAKiL,UAA6D,IAAjDjL,KAAKmH,SAASuE,KAAK,mBAAmBtH,QAAiBpE,KAAK0C,QAAQ8E,OACxFxH,KAAKmH,SAASuE,KAAK,UAAU+E,GAAG,GAAGvF,KAAK,YAAY,GAAMzD,KAAK,WAAY,YAGtEqG,EAAIzM,KAAK,KAGlBqP,QAAS,WAEP,MADiB,OAAb1Q,KAAKuH,OAAcvH,KAAKuH,KAAOvH,KAAKsH,MAAMoE,KAAK,OAC5C1L,KAAKuH,MAMdI,OAAQ,SAAUgJ,GAChB,GACIC,GADA/F,EAAO7K,IAIP2Q,MAAa,IACf3Q,KAAKmH,SAASuE,KAAK,UAAUnL,KAAK,SAAU2E,GAC1C,GAAIqC,GAAOsD,EAAK6F,UAAUD,GAAG5F,EAAKG,MAAM9F,GAExC2F,GAAKgG,YAAY3L,EAAOlF,KAAK0P,UAAwC,aAA5B1P,KAAK8Q,WAAWtB,SAA0BxP,KAAK8Q,WAAWpB,SAAUnI,GAC7GsD,EAAKkG,YAAY7L,EAAOlF,KAAKiP,SAAU1H,KAGzCvH,KAAKgR,qBAGPhR,KAAKiR,UAEL,IAAIC,GAAgBlR,KAAKmH,SAASuE,KAAK,UAAUyF,IAAI,WACnD,GAAInR,KAAKiP,SAAU,CACjB,GAAIpE,EAAKnI,QAAQ+G,eAAiBzJ,KAAK0P,UAAwC,aAA5B1P,KAAK8Q,WAAWtB,SAA0BxP,KAAK8Q,WAAWpB,UAAW,MAExH,IAEIN,GAFA7M,EAAQtC,EAAED,MACVqP,EAAO9M,EAAME,KAAK,SAAWoI,EAAKnI,QAAQiH,SAAW,aAAekB,EAAKnI,QAAQ0H,SAAW,IAAM7H,EAAME,KAAK,QAAU,UAAY,EAQvI,OAJE2M,GADEvE,EAAKnI,QAAQgH,aAAenH,EAAME,KAAK,aAAeoI,EAAKI,SACnD,8BAAgC1I,EAAME,KAAK,WAAa,WAExD,GAEuB,mBAAxBF,GAAMkF,KAAK,SACblF,EAAMkF,KAAK,SACTlF,EAAME,KAAK,YAAcoI,EAAKnI,QAAQkH,YACxCrH,EAAME,KAAK,WAEX4M,EAAO9M,EAAM7B,OAAS0O,KAGhCgC,UAIC5J,EAASxH,KAAKiL,SAA8BiG,EAAc7P,KAAKrB,KAAK0C,QAAQwG,mBAAnDgI,EAAc,EAG3C,IAAIlR,KAAKiL,UAAYjL,KAAK0C,QAAQ4G,mBAAmBvF,QAAQ,SAAW,GAAI,CAC1E,GAAIe,GAAM9E,KAAK0C,QAAQ4G,mBAAmB+H,MAAM,IAChD,IAAKvM,EAAIV,OAAS,GAAK8M,EAAc9M,OAASU,EAAI,IAAsB,GAAdA,EAAIV,QAAe8M,EAAc9M,QAAU,EAAI,CACvGwM,EAAc5Q,KAAK0C,QAAQ+G,aAAe,eAAiB,EAC3D,IAAI6H,GAAatR,KAAKmH,SAASuE,KAAK,UAAU6F,IAAI,8CAAgDX,GAAaxM,OAC3GoN,EAAsD,kBAAnCxR,MAAK0C,QAAQ8F,kBAAoCxI,KAAK0C,QAAQ8F,kBAAkB0I,EAAc9M,OAAQkN,GAActR,KAAK0C,QAAQ8F,iBACxJhB,GAAQgK,EAAShR,QAAQ,MAAO0Q,EAAc9M,OAAOX,YAAYjD,QAAQ,MAAO8Q,EAAW7N,aAIrEe,QAAtBxE,KAAK0C,QAAQ8E,QACfxH,KAAK0C,QAAQ8E,MAAQxH,KAAKmH,SAASM,KAAK,UAGH,UAAnCzH,KAAK0C,QAAQ4G,qBACf9B,EAAQxH,KAAK0C,QAAQ8E,OAIlBA,IACHA,EAAsC,mBAAvBxH,MAAK0C,QAAQ8E,MAAwBxH,KAAK0C,QAAQ8E,MAAQxH,KAAK0C,QAAQ4F,kBAIxFtI,KAAKqH,QAAQI,KAAK,QAASxH,EAAEwR,KAAKjK,EAAMhH,QAAQ,YAAa,MAC7DR,KAAKqH,QAAQkE,SAAS,kBAAkB7K,KAAK8G,GAE7CxH,KAAKmH,SAASf,QAAQ,uBAOxByB,SAAU,SAAUuB,EAAOsI,GACrB1R,KAAKmH,SAASM,KAAK,UACrBzH,KAAKoH,YAAY2D,SAAS/K,KAAKmH,SAASM,KAAK,SAASjH,QAAQ,+DAAgE,IAGhI,IAAImR,GAAcvI,EAAQA,EAAQpJ,KAAK0C,QAAQ0G,KAEjC,QAAVsI,EACF1R,KAAKqH,QAAQ0D,SAAS4G,GACH,UAAVD,EACT1R,KAAKqH,QAAQsE,YAAYgG,IAEzB3R,KAAKqH,QAAQsE,YAAY3L,KAAK0C,QAAQ0G,OACtCpJ,KAAKqH,QAAQ0D,SAAS4G,KAI1BC,SAAU,SAAUhK,GAClB,GAAKA,GAAY5H,KAAK0C,QAAQ2G,QAAS,IAASrJ,KAAK6R,SAArD,CAEA,GAAIC,GAAahM,SAASmI,cAAc,OACpC8D,EAAOjM,SAASmI,cAAc,OAC9B+D,EAAYlM,SAASmI,cAAc,MACnCgE,EAAUnM,SAASmI,cAAc,MACjCR,EAAK3H,SAASmI,cAAc,MAC5BiE,EAAIpM,SAASmI,cAAc,KAC3B9N,EAAO2F,SAASmI,cAAc,QAC9BnE,EAAS9J,KAAK0C,QAAQoH,QAAU9J,KAAKsH,MAAMoE,KAAK,kBAAkBtH,OAAS,EAAIpE,KAAKsH,MAAMoE,KAAK,kBAAkB,GAAGyG,WAAU,GAAQ,KACtInO,EAAShE,KAAK0C,QAAQqH,WAAajE,SAASmI,cAAc,OAAS,KACnEmE,EAAUpS,KAAK0C,QAAQyH,YAAcnK,KAAKiL,UAAYjL,KAAKsH,MAAMoE,KAAK,kBAAkBtH,OAAS,EAAIpE,KAAKsH,MAAMoE,KAAK,kBAAkB,GAAGyG,WAAU,GAAQ,KAC5JnJ,EAAahJ,KAAK0C,QAAQsG,YAAchJ,KAAKiL,UAAYjL,KAAKsH,MAAMoE,KAAK,kBAAkBtH,OAAS,EAAIpE,KAAKsH,MAAMoE,KAAK,kBAAkB,GAAGyG,WAAU,GAAQ,IAcnK,IAZAhS,EAAKuO,UAAY,OACjBoD,EAAWpD,UAAY1O,KAAKsH,MAAM,GAAGwJ,WAAWpC,UAAY,QAC5DqD,EAAKrD,UAAY,qBACjBsD,EAAUtD,UAAY,sBACtBuD,EAAQvD,UAAY,UAEpBvO,EAAKwO,YAAY7I,SAAS8I,eAAe,eACzCsD,EAAEvD,YAAYxO,GACdsN,EAAGkB,YAAYuD,GACfF,EAAUrD,YAAYlB,GACtBuE,EAAUrD,YAAYsD,GAClBnI,GAAQiI,EAAKpD,YAAY7E,GACzB9F,EAAQ,CAEV,GAAIqO,GAAQvM,SAASmI,cAAc,OACnCjK,GAAO0K,UAAY,eACnB2D,EAAM3D,UAAY,eAClB1K,EAAO2K,YAAY0D,GACnBN,EAAKpD,YAAY3K,GAEfoO,GAASL,EAAKpD,YAAYyD,GAC9BL,EAAKpD,YAAYqD,GACbhJ,GAAY+I,EAAKpD,YAAY3F,GACjC8I,EAAWnD,YAAYoD,GAEvBjM,SAASwM,KAAK3D,YAAYmD,EAE1B,IAAIF,GAAWM,EAAEK,aACbC,EAAe1I,EAASA,EAAOyI,aAAe,EAC9CE,EAAezO,EAASA,EAAOuO,aAAe,EAC9CG,EAAgBN,EAAUA,EAAQG,aAAe,EACjDI,EAAmB3J,EAAaA,EAAWuJ,aAAe,EAC1DK,EAAgB3S,EAAEgS,GAASY,aAAY,GAEvCC,EAAwC,kBAArBC,kBAAkCA,iBAAiBhB,IAAQ,EAC9EzK,EAAQwL,EAAY,KAAO7S,EAAE8R,GAC7BiB,GACEC,KAAMC,SAASJ,EAAYA,EAAUK,WAAa7L,EAAM8L,IAAI,eACtDF,SAASJ,EAAYA,EAAUO,cAAgB/L,EAAM8L,IAAI,kBACzDF,SAASJ,EAAYA,EAAUQ,eAAiBhM,EAAM8L,IAAI,mBAC1DF,SAASJ,EAAYA,EAAUS,kBAAoBjM,EAAM8L,IAAI,sBACnEI,MAAON,SAASJ,EAAYA,EAAUW,YAAcnM,EAAM8L,IAAI,gBACxDF,SAASJ,EAAYA,EAAUY,aAAepM,EAAM8L,IAAI,iBACxDF,SAASJ,EAAYA,EAAUa,gBAAkBrM,EAAM8L,IAAI,oBAC3DF,SAASJ,EAAYA,EAAUc,iBAAmBtM,EAAM8L,IAAI,sBAEpES,GACEZ,KAAMD,EAAYC,KACZC,SAASJ,EAAYA,EAAUgB,UAAYxM,EAAM8L,IAAI,cACrDF,SAASJ,EAAYA,EAAUiB,aAAezM,EAAM8L,IAAI,iBAAmB,EACjFI,MAAOR,EAAYQ,MACbN,SAASJ,EAAYA,EAAUkB,WAAa1M,EAAM8L,IAAI,eACtDF,SAASJ,EAAYA,EAAUmB,YAAc3M,EAAM8L,IAAI,gBAAkB,EAGrFtN,UAASwM,KAAK4B,YAAYpC,GAE1B9R,KAAK6R,UACHD,SAAUA,EACVY,aAAcA,EACdC,aAAcA,EACdC,cAAeA,EACfC,iBAAkBA,EAClBC,cAAeA,EACfI,YAAaA,EACba,WAAYA,KAIhBM,QAAS,WAKP,GAJAnU,KAAK0Q,UACL1Q,KAAK4R,WAED5R,KAAK0C,QAAQoH,QAAQ9J,KAAKsH,MAAM8L,IAAI,cAAe,GACnDpT,KAAK0C,QAAQ2G,QAAS,EAA1B,CAEA,GAeI+K,GACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAtBA9J,EAAO7K,KACPsH,EAAQtH,KAAKsH,MACbkE,EAAaxL,KAAKwL,WAClBoJ,EAAU3U,EAAE4U,QACZC,EAAe9U,KAAKoH,YAAY,GAAGmL,aACnCwC,EAAc/U,KAAKoH,YAAY,GAAG4N,YAClCpD,EAAW5R,KAAK6R,SAAmB,SACnCW,EAAexS,KAAK6R,SAAuB,aAC3CY,EAAezS,KAAK6R,SAAuB,aAC3Ca,EAAgB1S,KAAK6R,SAAwB,cAC7Cc,EAAmB3S,KAAK6R,SAA2B,iBACnDoD,EAAYjV,KAAK6R,SAAwB,cACzCmB,EAAchT,KAAK6R,SAAsB,YACzCgC,EAAa7T,KAAK6R,SAAqB,WACvCjB,EAAc5Q,KAAK0C,QAAQ+G,aAAe,YAAc,GASxDyL,EAAS,WACP,GAAIzQ,GAAMoG,EAAKzD,YAAY+N,QAC3BX,GAAkB/P,EAAI2Q,IAAMR,EAAQS,YACpCZ,EAAkBG,EAAQU,SAAWd,EAAkBM,EACvDJ,EAAmBjQ,EAAI8Q,KAAOX,EAAQY,aACtCb,EAAoBC,EAAQrL,QAAUmL,EAAmBK,EAK/D,IAFAG,IAE0B,SAAtBlV,KAAK0C,QAAQ2G,KAAiB,CAChC,GAAIoM,GAAU,WACZ,GAAIC,GACAvI,EAAW,SAAUuB,EAAWiH,GAC9B,MAAO,UAAU5O,GACb,MAAI4O,GACQ5O,EAAQ6O,UAAY7O,EAAQ6O,UAAUC,SAASnH,GAAazO,EAAE8G,GAASoG,SAASuB,KAE/E3H,EAAQ6O,UAAY7O,EAAQ6O,UAAUC,SAASnH,GAAazO,EAAE8G,GAASoG,SAASuB,MAInGoH,EAAMjL,EAAKW,WAAW,GAAGuK,qBAAqB,MAC9CC,EAAaC,MAAM1S,UAAUsM,OAASoG,MAAM1S,UAAUsM,OAAO3L,KAAK4R,EAAK3I,EAAS,UAAU,IAAUtC,EAAKtD,KAAKgK,IAAI,WAClH2E,EAAWD,MAAM1S,UAAUsM,OAASoG,MAAM1S,UAAUsM,OAAO3L,KAAK8R,EAAY7I,EAAS,mBAAmB,IAAS6I,EAAWnG,OAAO,mBAEvIqF,KACAd,EAAaK,EAAkBZ,EAAWZ,KAC1CoB,EAAYM,EAAoBd,EAAWL,MAEvC3I,EAAKnI,QAAQ8G,WACVlC,EAAM7E,KAAK,WAAW6E,EAAM7E,KAAK,SAAU6E,EAAMgO,UACtDhB,EAAYhN,EAAM7E,KAAK,UAElB6E,EAAM7E,KAAK,UAAU6E,EAAM7E,KAAK,QAAS6E,EAAMiC,SACpDgL,EAAWjN,EAAM7E,KAAK,WAEtB6R,EAAYhN,EAAMgO,SAClBf,EAAWjN,EAAMiC,SAGfsB,EAAKnI,QAAQmH,YACfgB,EAAKzD,YAAY+O,YAAY,SAAU3B,EAAkBC,GAAoBL,EAAaP,EAAWZ,KAAQqB,GAG3GzJ,EAAKzD,YAAY+F,SAAS,YAC5BiH,EAAaI,EAAkBX,EAAWZ,MAGJ,SAApCpI,EAAKnI,QAAQiI,oBACfrD,EAAM6O,YAAY,sBAAuBzB,EAAmBC,GAAsBN,EAAYR,EAAWL,MAAUe,EAAWQ,GAI9HW,EADGM,EAAW5R,OAAS8R,EAAS9R,OAAU,EACnB,EAAXwN,EAAeiC,EAAWZ,KAAO,EAEjC,EAGd3L,EAAM8L,KACJgD,aAAchC,EAAa,KAC3BiC,SAAY,SACZC,aAAcZ,EAAYlD,EAAeC,EAAeC,EAAgBC,EAAmB,OAE7FnH,EAAW4H,KACTgD,aAAchC,EAAa5B,EAAeC,EAAeC,EAAgBC,EAAmBK,EAAYC,KAAO,KAC/GsD,aAAc,OACdD,aAAc1R,KAAKE,IAAI4Q,EAAY1C,EAAYC,KAAM,GAAK,OAG9DwC,KACAzV,KAAKyL,WAAWiB,IAAI,wCAAwCP,GAAG,uCAAwCsJ,GACvGb,EAAQlI,IAAI,iCAAiCP,GAAG,gCAAiCsJ,OAC5E,IAAIzV,KAAK0C,QAAQ2G,MAA6B,QAArBrJ,KAAK0C,QAAQ2G,MAAkBrJ,KAAKuH,KAAKgK,IAAIX,GAAaxM,OAASpE,KAAK0C,QAAQ2G,KAAM,CACpH,GAAImN,GAAWxW,KAAKuH,KAAKgK,IAAI,YAAYA,IAAIX,GAAarF,WAAWkL,MAAM,EAAGzW,KAAK0C,QAAQ2G,MAAMqN,OAAOxJ,SAAShI,QAC7GyR,EAAY3W,KAAKuH,KAAKkP,MAAM,EAAGD,EAAW,GAAG3G,OAAO,YAAYzL,MACpEgQ,GAAaxC,EAAW5R,KAAK0C,QAAQ2G,KAAOsN,EAAY1B,EAAYjC,EAAYC,KAE5EpI,EAAKnI,QAAQ8G,WACVlC,EAAM7E,KAAK,WAAW6E,EAAM7E,KAAK,SAAU6E,EAAMgO,UACtDhB,EAAYhN,EAAM7E,KAAK,WAEvB6R,EAAYhN,EAAMgO,SAGhBzK,EAAKnI,QAAQmH,YAEf7J,KAAKoH,YAAY+O,YAAY,SAAU3B,EAAkBC,GAAoBL,EAAaP,EAAWZ,KAAQqB,GAE/GhN,EAAM8L,KACJgD,aAAchC,EAAa5B,EAAeC,EAAeC,EAAgBC,EAAmB,KAC5F0D,SAAY,SACZC,aAAc,KAEhB9K,EAAW4H,KACTgD,aAAchC,EAAapB,EAAYC,KAAO,KAC9CsD,aAAc,OACdD,aAAc,QAKpBrK,SAAU,WACR,GAA2B,SAAvBjM,KAAK0C,QAAQ6G,MAAkB,CACjCvJ,KAAKsH,MAAM8L,IAAI,YAAa,IAG5B,IAAIwD,GAAe5W,KAAKsH,MAAM4F,SAAS2J,QAAQvL,SAAS,QACpDwL,EAAgB9W,KAAK0C,QAAQ8G,UAAYxJ,KAAKoH,YAAYyP,QAAQvL,SAAS,QAAUsL,EACrFG,EAAUH,EAAarL,SAAS,kBAAkByL,aAClDC,EAAWH,EAAc1D,IAAI,QAAS,QAAQ7H,SAAS,UAAUyL,YAErEJ,GAAa3O,SACb6O,EAAc7O,SAGdjI,KAAKoH,YAAYgM,IAAI,QAASxO,KAAKE,IAAIiS,EAASE,GAAY,UAC5B,QAAvBjX,KAAK0C,QAAQ6G,OAEtBvJ,KAAKsH,MAAM8L,IAAI,YAAa,IAC5BpT,KAAKoH,YAAYgM,IAAI,QAAS,IAAIrI,SAAS,cAClC/K,KAAK0C,QAAQ6G,OAEtBvJ,KAAKsH,MAAM8L,IAAI,YAAa,IAC5BpT,KAAKoH,YAAYgM,IAAI,QAASpT,KAAK0C,QAAQ6G,SAG3CvJ,KAAKsH,MAAM8L,IAAI,YAAa,IAC5BpT,KAAKoH,YAAYgM,IAAI,QAAS,IAG5BpT,MAAKoH,YAAY+F,SAAS,cAAuC,QAAvBnN,KAAK0C,QAAQ6G,OACzDvJ,KAAKoH,YAAYuE,YAAY,cAIjCO,eAAgB,WACdlM,KAAKkX,aAAejX,EAAE,+BAEtB,IACIwE,GACA0S,EAFAtM,EAAO7K,KAGPoX,EAAe,SAAUjQ,GACvB0D,EAAKqM,aAAanM,SAAS5D,EAASM,KAAK,SAASjH,QAAQ,2BAA4B,KAAK2V,YAAY,SAAUhP,EAASgG,SAAS,WACnI1I,EAAM0C,EAASgO,SACfgC,EAAehQ,EAASgG,SAAS,UAAY,EAAIhG,EAAS,GAAGoL,aAC7D1H,EAAKqM,aAAa9D,KAChBgC,IAAO3Q,EAAI2Q,IAAM+B,EACjB5B,KAAQ9Q,EAAI8Q,KACZhM,MAASpC,EAAS,GAAG6N,cAI7BhV,MAAKqH,QAAQ8E,GAAG,QAAS,WACvB,GAAI5J,GAAQtC,EAAED,KAEV6K,GAAK8E,eAITyH,EAAavM,EAAKzD,aAElByD,EAAKqM,aACF5L,SAAST,EAAKnI,QAAQ8G,WACtB2M,YAAY,QAAS5T,EAAM4K,SAAS,SACpCkK,OAAOxM,EAAKvD,UAGjBrH,EAAE4U,QAAQ1I,GAAG,gBAAiB,WAC5BiL,EAAavM,EAAKzD,eAGpBpH,KAAKmH,SAASgF,GAAG,iBAAkB,WACjCtB,EAAKvD,MAAM7E,KAAK,SAAUoI,EAAKvD,MAAMgO,UACrCzK,EAAKqM,aAAaI,YAStBvG,YAAa,SAAU7L,EAAO+J,EAAU1H,GACjCA,IACHvH,KAAKgR,oBACLzJ,EAAOvH,KAAK0Q,UAAUD,GAAGzQ,KAAKgL,MAAM9F,KAGtCqC,EAAK4O,YAAY,WAAYlH,IAQ/B4B,YAAa,SAAU3L,EAAOwK,EAAUnI,GACjCA,IACHA,EAAOvH,KAAK0Q,UAAUD,GAAGzQ,KAAKgL,MAAM9F,KAGlCwK,EACFnI,EAAKwD,SAAS,YAAYQ,SAAS,KAAK9D,KAAK,OAAQ,KAAKA,KAAK,WAAY,IAE3EF,EAAKoE,YAAY,YAAYJ,SAAS,KAAKgM,WAAW,QAAQ9P,KAAK,WAAY,IAInFkI,WAAY,WACV,MAAO3P,MAAKmH,SAAS,GAAGuI,UAG1B5D,cAAe,WACb,GAAIjB,GAAO7K,IAEPA,MAAK2P,cACP3P,KAAKoH,YAAY2D,SAAS,YAC1B/K,KAAKqH,QAAQ0D,SAAS,YAAYtD,KAAK,WAAY,MAE/CzH,KAAKqH,QAAQ8F,SAAS,cACxBnN,KAAKoH,YAAYuE,YAAY,YAC7B3L,KAAKqH,QAAQsE,YAAY,aAGU,IAAjC3L,KAAKqH,QAAQI,KAAK,aAAsBzH,KAAKmH,SAAS1E,KAAK,aAC7DzC,KAAKqH,QAAQkQ,WAAW,aAI5BvX,KAAKqH,QAAQuE,MAAM,WACjB,OAAQf,EAAK8E,gBAIjBqB,kBAAmB,WACjB,GAAI3O,GAAQrC,KAAKmH,SAASO,KAC1B1H,MAAKqH,QAAQ8O,YAAY,iBAA4B,OAAV9T,GAA4B,KAAVA,IAG/D4O,SAAU,WACJjR,KAAKmH,SAAS1E,KAAK,cAAgBzC,KAAKmH,SAASM,KAAK,aACpB,MAAnCzH,KAAKmH,SAASM,KAAK,aAA0D,QAAnCzH,KAAKmH,SAASM,KAAK,cAC9DzH,KAAKmH,SAAS1E,KAAK,WAAYzC,KAAKmH,SAASM,KAAK,aAClDzH,KAAKqH,QAAQI,KAAK,WAAYzH,KAAKmH,SAAS1E,KAAK,cAGnDzC,KAAKmH,SAASM,KAAK,WAAY,MAGjCsE,cAAe,WACb,GAAIlB,GAAO7K,KACPwX,EAAYvX,EAAE6F,SAElB9F,MAAKoH,YAAY+E,GAAG,sBAAuB,iBAAkB,SAAUnF,GACrEA,EAAEC,oBAGJuQ,EAAU/U,KAAK,eAAe,GAE9BzC,KAAKqH,QAAQ8E,GAAG,QAAS,SAAUnF,GAC7B,OAAOtF,KAAKsF,EAAEyQ,QAAQhU,SAAS,MAAQ+T,EAAU/U,KAAK,iBACtDuE,EAAEE,iBACFsQ,EAAU/U,KAAK,eAAe,MAIpCzC,KAAKqH,QAAQ8E,GAAG,QAAS,WACvBtB,EAAKsJ,YAGPnU,KAAKmH,SAASgF,GAAG,kBAAmB,WAClC,GAAKtB,EAAKnI,QAAQqH,YAAec,EAAKI,UAE/B,IAAKJ,EAAKI,SAAU,CACzB,GAAI+D,GAAgBnE,EAAKG,MAAMH,EAAK1D,SAAS,GAAG6H,cAEhD,IAA6B,gBAAlBA,IAA8BnE,EAAKnI,QAAQ2G,QAAS,EAAO,MAGtE,IAAI8L,GAAStK,EAAKtD,KAAKkJ,GAAGzB,GAAe,GAAG0I,UAAY7M,EAAKW,WAAW,GAAGkM,SAC3EvC,GAASA,EAAStK,EAAKW,WAAW,GAAG+G,aAAa,EAAI1H,EAAKgH,SAASD,SAAS,EAC7E/G,EAAKW,WAAW,GAAG6J,UAAYF,OAT/BtK,GAAKW,WAAWE,KAAK,eAAeG,UAaxC7L,KAAKwL,WAAWW,GAAG,QAAS,OAAQ,SAAUnF,GAC5C,GAAIzE,GAAQtC,EAAED,MACV2X,EAAepV,EAAM2K,SAASzK,KAAK,iBACnCmV,EAAY/M,EAAK1D,SAASO,MAC1BmQ,EAAYhN,EAAK1D,SAAS+D,KAAK,iBAC/B4M,GAAgB,CAUpB,IAPIjN,EAAKI,UAAwC,IAA5BJ,EAAKnI,QAAQ8H,YAChCxD,EAAEC,kBAGJD,EAAEE,kBAGG2D,EAAK8E,eAAiBpN,EAAM2K,SAASC,SAAS,YAAa,CAC9D,GAAIyC,GAAW/E,EAAK1D,SAASuE,KAAK,UAC9BqM,EAAUnI,EAASa,GAAGkH,GACtBK,EAAQD,EAAQ7M,KAAK,YACrB+M,EAAYF,EAAQ7K,OAAO,YAC3B1C,EAAaK,EAAKnI,QAAQ8H,WAC1B0N,EAAgBD,EAAUxV,KAAK,gBAAiB,CAEpD,IAAKoI,EAAKI,UAUR,GAJA8M,EAAQ7M,KAAK,YAAa8M,GAC1BnN,EAAKkG,YAAY4G,GAAeK,GAChCzV,EAAM4V,OAEF3N,KAAe,GAAS0N,KAAkB,EAAO,CACnD,GAAIE,GAAa5N,EAAaoF,EAASC,OAAO,aAAazL,OACvDiU,EAAgBH,EAAgBD,EAAUvM,KAAK,mBAAmBtH,MAEtE,IAAKoG,GAAc4N,GAAgBF,GAAiBG,EAClD,GAAI7N,GAA4B,GAAdA,EAChBoF,EAAS1E,KAAK,YAAY,GAC1B6M,EAAQ7M,KAAK,YAAY,GACzBL,EAAKW,WAAWE,KAAK,aAAaC,YAAY,YAC9Cd,EAAKkG,YAAY4G,GAAc,OAC1B,IAAIO,GAAkC,GAAjBA,EAAoB,CAC9CD,EAAUvM,KAAK,mBAAmBR,KAAK,YAAY,GACnD6M,EAAQ7M,KAAK,YAAY,EACzB,IAAIoN,GAAa/V,EAAM2K,SAASzK,KAAK,WACrCoI,GAAKW,WAAWE,KAAK,mBAAqB4M,EAAa,MAAM3M,YAAY,YACzEd,EAAKkG,YAAY4G,GAAc,OAC1B,CACL,GAAIhP,GAAwD,gBAAhCkC,GAAKnI,QAAQiG,gBAA+BkC,EAAKnI,QAAQiG,eAAgBkC,EAAKnI,QAAQiG,gBAAkBkC,EAAKnI,QAAQiG,eAC7I4P,EAA0C,kBAAnB5P,GAAgCA,EAAe6B,EAAY0N,GAAiBvP,EACnG6P,EAASD,EAAc,GAAG/X,QAAQ,MAAOgK,GACzCiO,EAAYF,EAAc,GAAG/X,QAAQ,MAAO0X,GAC5CQ,EAAUzY,EAAE,6BAGZsY,GAAc,KAChBC,EAASA,EAAOhY,QAAQ,QAAS+X,EAAc,GAAG/N,EAAa,EAAI,EAAI,IACvEiO,EAAYA,EAAUjY,QAAQ,QAAS+X,EAAc,GAAGL,EAAgB,EAAI,EAAI,KAGlFH,EAAQ7M,KAAK,YAAY,GAEzBL,EAAKvD,MAAM+P,OAAOqB,GAEdlO,GAAc4N,IAChBM,EAAQrB,OAAOpX,EAAE,QAAUuY,EAAS,WACpCV,GAAgB,EAChBjN,EAAK1D,SAASf,QAAQ,yBAGpB8R,GAAiBG,IACnBK,EAAQrB,OAAOpX,EAAE,QAAUwY,EAAY,WACvCX,GAAgB,EAChBjN,EAAK1D,SAASf,QAAQ,4BAGxB2G,WAAW,WACTlC,EAAKkG,YAAY4G,GAAc,IAC9B,IAEHe,EAAQC,MAAM,KAAKC,QAAQ,IAAK,WAC9B3Y,EAAED,MAAMiI,iBA3DhB2H,GAAS1E,KAAK,YAAY,GAC1B6M,EAAQ7M,KAAK,YAAY,GACzBL,EAAKW,WAAWE,KAAK,aAAaC,YAAY,YAC9Cd,EAAKkG,YAAY4G,GAAc,IA+D5B9M,EAAKI,UAAaJ,EAAKI,UAAwC,IAA5BJ,EAAKnI,QAAQ8H,WACnDK,EAAKxD,QAAQwE,QACJhB,EAAKnI,QAAQqH,YACtBc,EAAKY,WAAWI,QAIdiM,IACGF,GAAa/M,EAAK1D,SAASO,OAASmD,EAAKI,UAAc4M,GAAahN,EAAK1D,SAAS+D,KAAK,mBAAqBL,EAAKI,WAEpHJ,EAAK1D,SACFf,QAAQ,qBAAsBuR,EAAcI,EAAQ7M,KAAK,YAAa8M,IACtExS,cAAc,aAMzBxF,KAAKsH,MAAM6E,GAAG,QAAS,6DAA8D,SAAUnF,GACzFA,EAAE6R,eAAiB7Y,OACrBgH,EAAEE,iBACFF,EAAEC,kBACE4D,EAAKnI,QAAQqH,aAAe9J,EAAE+G,EAAE8R,QAAQ3L,SAAS,SACnDtC,EAAKY,WAAWI,QAEhBhB,EAAKxD,QAAQwE,WAKnB7L,KAAKwL,WAAWW,GAAG,QAAS,6BAA8B,SAAUnF,GAClEA,EAAEE,iBACFF,EAAEC,kBACE4D,EAAKnI,QAAQqH,WACfc,EAAKY,WAAWI,QAEhBhB,EAAKxD,QAAQwE,UAIjB7L,KAAKsH,MAAM6E,GAAG,QAAS,wBAAyB,WAC9CtB,EAAKxD,QAAQuE,UAGf5L,KAAKyL,WAAWU,GAAG,QAAS,SAAUnF,GACpCA,EAAEC,oBAGJjH,KAAKsH,MAAM6E,GAAG,QAAS,eAAgB,SAAUnF,GAC3C6D,EAAKnI,QAAQqH,WACfc,EAAKY,WAAWI,QAEhBhB,EAAKxD,QAAQwE,QAGf7E,EAAEE,iBACFF,EAAEC,kBAEEhH,EAAED,MAAMmN,SAAS,iBACnBtC,EAAK/C,YAEL+C,EAAK9C,gBAIT/H,KAAKmH,SAAS4R,OAAO,WACnBlO,EAAKlD,QAAO,MAIhBqE,mBAAoB,WAClB,GAAInB,GAAO7K,KACPgZ,EAAc/Y,EAAE,+BAEpBD,MAAKqH,QAAQ8E,GAAG,uDAAwD,WACtEtB,EAAKW,WAAWE,KAAK,WAAWC,YAAY,UACtCd,EAAKY,WAAW/D,QACpBmD,EAAKY,WAAW/D,IAAI,IACpBmD,EAAKtD,KAAKgK,IAAI,cAAc5F,YAAY,UAClCqN,EAAY9L,SAAS9I,QAAQ4U,EAAY/Q,UAE5C4C,EAAKI,UAAUJ,EAAKW,WAAWE,KAAK,aAAaX,SAAS,UAC/DgC,WAAW,WACTlC,EAAKY,WAAWI,SACf,MAGL7L,KAAKyL,WAAWU,GAAG,6EAA8E,SAAUnF,GACzGA,EAAEC,oBAGJjH,KAAKyL,WAAWU,GAAG,uBAAwB,WACzC,GAAItB,EAAKY,WAAW/D,MAAO,CACzB,GAAIuR,GAAcpO,EAAKtD,KAAKgK,IAAI,cAAc5F,YAAY,UAAUJ,SAAS,IAE3E0N,GADEpO,EAAKnI,QAAQuH,oBACDgP,EAAY1H,IAAI,KAAO1G,EAAKqO,eAAiB,KAAOhZ,EAAgB2K,EAAKY,WAAW/D,OAAS,MAE7FuR,EAAY1H,IAAI,IAAM1G,EAAKqO,eAAiB,KAAOrO,EAAKY,WAAW/D,MAAQ,MAE3FuR,EAAY/L,SAASnC,SAAS,UAE9BF,EAAKtD,KAAKsI,OAAO,oBAAoBtP,KAAK,WACxC,GAAIgC,GAAQtC,EAAED,MACVsO,EAAW/L,EAAME,KAAK,WAEoE,KAA1FoI,EAAKtD,KAAKsI,OAAO,kBAAoBvB,EAAW,KAAKiD,IAAIhP,GAAOgP,IAAI,WAAWnN,SACjF7B,EAAMwI,SAAS,UACfF,EAAKtD,KAAKsI,OAAO,kBAAoBvB,EAAW,QAAQvD,SAAS,YAIrE,IAAIoO,GAActO,EAAKtD,KAAKgK,IAAI,UAGhC4H,GAAY5Y,KAAK,SAAU2E,GACzB,GAAI3C,GAAQtC,EAAED,KAEVuC,GAAM4K,SAAS,aACjB5K,EAAM2C,UAAYiU,EAAYC,QAAQlU,SACtC3C,EAAM2C,UAAYiU,EAAYzC,OAAOxR,SACrCiU,EAAY1I,GAAGvL,EAAQ,GAAGiI,SAAS,aACnC5K,EAAMwI,SAAS,YAIdF,EAAKtD,KAAKgK,IAAI,wBAAwBnN,OAM9B4U,EAAY9L,SAAS9I,QAChC4U,EAAY/Q,UANN+Q,EAAY9L,SAAS9I,QACzB4U,EAAY/Q,SAEd+Q,EAAYtY,KAAKmK,EAAKnI,QAAQ6F,gBAAgB/H,QAAQ,MAAO,IAAMC,EAAWoK,EAAKY,WAAW/D,OAAS,MAAMQ,OAC7G2C,EAAKW,WAAW6L,OAAO2B,QAKzBnO,GAAKtD,KAAKgK,IAAI,cAAc5F,YAAY,UAClCqN,EAAY9L,SAAS9I,QACzB4U,EAAY/Q,QAIhB4C,GAAKtD,KAAKsI,OAAO,WAAWlE,YAAY,UACpCd,EAAKY,WAAW/D,OAAOmD,EAAKtD,KAAKgK,IAAI,uCAAuCd,GAAG,GAAG1F,SAAS,UAAUQ,SAAS,KAAKM,QACvH5L,EAAED,MAAM6L,WAIZqN,aAAc,WACZ,GAAIG,IACFC,OAAQ,UACRrU,WAAY,UAGd,OAAOoU,GAAOrZ,KAAK0C,QAAQwH,kBAAoB,aAGjDxC,IAAK,SAAUrF,GACb,MAAqB,mBAAVA,IACTrC,KAAKmH,SAASO,IAAIrF,GAClBrC,KAAK2H,SAEE3H,KAAKmH,UAELnH,KAAKmH,SAASO,OAIzB6R,UAAW,SAAU7H,GACnB,GAAK1R,KAAKiL,SAAV,CACsB,mBAAXyG,KAAwBA,GAAS,GAE5C1R,KAAK0Q,SAEL,IAAId,GAAW5P,KAAKmH,SAASuE,KAAK,UAC9ByN,EAAcnZ,KAAKuH,KAAKgK,IAAI,kDAC5BiI,EAAYL,EAAY/U,OACxBqV,IAEJ,IAAI/H,GACF,GAAIyH,EAAYtJ,OAAO,aAAazL,SAAW+U,EAAY/U,OAAQ,WAEnE,IAA+C,IAA3C+U,EAAYtJ,OAAO,aAAazL,OAAc,MAGpD+U,GAAYhD,YAAY,WAAYzE,EAEpC,KAAK,GAAI/O,GAAI,EAAO6W,EAAJ7W,EAAeA,IAAK,CAClC,GAAI+W,GAAYP,EAAYxW,GAAGgX,aAAa,sBAC5CF,GAAgBA,EAAgBrV,QAAUwL,EAASa,GAAGiJ,GAAW,GAGnEzZ,EAAEwZ,GAAiBvO,KAAK,WAAYwG,GAEpC1R,KAAK2H,QAAO,GAEZ3H,KAAKgR,oBAELhR,KAAKmH,SACFf,QAAQ,qBACRZ,cAAc,YAGnBsC,UAAW,WACT,MAAO9H,MAAKuZ,WAAU,IAGxBxR,YAAa,WACX,MAAO/H,MAAKuZ,WAAU,IAGxBK,OAAQ,SAAU5S,GAChBA,EAAIA,GAAK6N,OAAO/S,MAEZkF,GAAGA,EAAEC,kBAETjH,KAAKqH,QAAQjB,QAAQ,UAGvByT,QAAS,SAAU7S,GACjB,GAEI8S,GAEA5U,EACA6U,EACAX,EACA1C,EACAsD,EACAC,EACApC,EACAqC,EAXA3X,EAAQtC,EAAED,MACVsP,EAAU/M,EAAMC,GAAG,SAAWD,EAAM2K,SAASA,SAAW3K,EAAM2K,SAE9DrC,EAAOyE,EAAQ7M,KAAK,QASpB0X,EAAW,uDACXC,GACEC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,IAAK,IACLC,IAAK,IACLC,IAAK,IACLC,IAAK,IACLC,IAAK,IACLC,IAAK,IAWX,IARIvS,EAAKnI,QAAQqH,aAAYuF,EAAU/M,EAAM2K,SAASA,UAElDrC,EAAKnI,QAAQ8G,YAAW8F,EAAUzE,EAAKvD,OAE3CwS,EAAS7Z,EAAE,iBAAkBqP,GAE7B4K,EAAWrP,EAAKzD,YAAY+F,SAAS,SAEhC+M,IAAalT,EAAEyQ,SAAW,IAAMzQ,EAAEyQ,SAAW,IAAMzQ,EAAEyQ,SAAW,IAAMzQ,EAAEyQ,SAAW,KAAOzQ,EAAEyQ,SAAW,IAAMzQ,EAAEyQ,SAAW,IAS7H,MARK5M,GAAKnI,QAAQ8G,UAKhBqB,EAAKxD,QAAQjB,QAAQ,UAJrByE,EAAKsJ,UACLtJ,EAAKvD,MAAM4F,SAASnC,SAAS,QAC7BmP,GAAW,OAIbrP,GAAKY,WAAWI,OAyBlB,IArBIhB,EAAKnI,QAAQqH,aACX,WAAWrI,KAAKsF,EAAEyQ,QAAQhU,SAAS,MAAQyW,GAAkD,IAAtCrP,EAAKvD,MAAMoE,KAAK,WAAWtH,SACpF4C,EAAEE,iBACF2D,EAAKvD,MAAM4F,SAASvB,YAAY,QAC5Bd,EAAKnI,QAAQ8G,WAAWqB,EAAKzD,YAAYuE,YAAY,QACzDd,EAAKxD,QAAQwE,SAGfiO,EAAS7Z,EAAE,iBAAmBka,EAAU7K,GACnC/M,EAAMmF,OAAU,UAAUhG,KAAKsF,EAAEyQ,QAAQhU,SAAS,MACb,IAApCqW,EAAOjK,OAAO,WAAWzL,SAC3B0V,EAASjP,EAAKW,WAAWE,KAAK,MAE5BoO,EADEjP,EAAKnI,QAAQuH,oBACN6P,EAAOjK,OAAO,KAAOhF,EAAKqO,eAAiB,IAAMhZ,EAAgBka,EAAWpT,EAAEyQ,UAAY,KAE1FqC,EAAOjK,OAAO,IAAMhF,EAAKqO,eAAiB,IAAMkB,EAAWpT,EAAEyQ,SAAW,OAMpFqC,EAAO1V,OAAZ,CAEA,GAAI,UAAU1C,KAAKsF,EAAEyQ,QAAQhU,SAAS,KACpCyB,EAAQ4U,EAAO5U,MAAM4U,EAAOpO,KAAK,KAAKmE,OAAO,UAAU3C,UACvDkM,EAAQU,EAAOjK,OAAOsK,GAAUf,QAAQlU,QACxCwR,EAAOoD,EAAOjK,OAAOsK,GAAUzD,OAAOxR,QACtC6U,EAAOD,EAAOrJ,GAAGvL,GAAOmY,QAAQlD,GAAU1J,GAAG,GAAGvL,QAChD8U,EAAOF,EAAOrJ,GAAGvL,GAAOmL,QAAQ8J,GAAU1J,GAAG,GAAGvL,QAChD+U,EAAWH,EAAOrJ,GAAGsJ,GAAM1J,QAAQ8J,GAAU1J,GAAG,GAAGvL,QAE/C2F,EAAKnI,QAAQqH,aACf+P,EAAOvZ,KAAK,SAAUoC,GACf1C,EAAED,MAAMmN,SAAS,aACpBlN,EAAED,MAAMyC,KAAK,QAASE,KAG1BuC,EAAQ4U,EAAO5U,MAAM4U,EAAOjK,OAAO,YACnCuJ,EAAQU,EAAOV,QAAQ3W,KAAK,SAC5BiU,EAAOoD,EAAOpD,OAAOjU,KAAK,SAC1BsX,EAAOD,EAAOrJ,GAAGvL,GAAOmY,UAAU5M,GAAG,GAAGhO,KAAK,SAC7CuX,EAAOF,EAAOrJ,GAAGvL,GAAOmL,UAAUI,GAAG,GAAGhO,KAAK,SAC7CwX,EAAWH,EAAOrJ,GAAGsJ,GAAM1J,UAAUI,GAAG,GAAGhO,KAAK,UAGlDoV,EAAYtV,EAAME,KAAK,aAEN,IAAbuE,EAAEyQ,SACA5M,EAAKnI,QAAQqH,YAAY7E,IACzBA,GAAS+U,GAAY/U,EAAQ8U,IAAM9U,EAAQ8U,GACnCZ,EAARlU,IAAeA,EAAQkU,GACvBlU,GAAS2S,IAAW3S,EAAQwR,IACV,IAAb1P,EAAEyQ,UACP5M,EAAKnI,QAAQqH,YAAY7E,IAChB,IAATA,IAAaA,EAAQ,GACrBA,GAAS+U,GAAoBF,EAAR7U,IAAcA,EAAQ6U,GAC3C7U,EAAQwR,IAAMxR,EAAQwR,GACtBxR,GAAS2S,IAAW3S,EAAQkU,IAGlC7W,EAAME,KAAK,YAAayC,GAEnB2F,EAAKnI,QAAQqH,YAGhB/C,EAAEE,iBACG3E,EAAM4K,SAAS,qBAClB2M,EAAOnO,YAAY,UAAU8E,GAAGvL,GAAO6F,SAAS,UAAUQ,SAAS,KAAKM,QACxEtJ,EAAMsJ,UALRiO,EAAOrJ,GAAGvL,GAAOqG,SAAS,KAAKM,YAS5B,KAAKtJ,EAAMC,GAAG,SAAU,CAC7B,GACI8a,GACAC,EAFAC,IAIJ1D,GAAOvZ,KAAK,WACLN,EAAED,MAAMmN,SAAS,aAChBlN,EAAEwR,KAAKxR,EAAED,MAAMuL,SAAS,KAAKpL,OAAOsd,eAAeC,UAAU,EAAG,IAAMtD,EAAWpT,EAAEyQ,UACrF+F,EAASjY,KAAKtF,EAAED,MAAMkF,WAK5BoY,EAAQrd,EAAE6F,UAAUrD,KAAK,YACzB6a,IACArd,EAAE6F,UAAUrD,KAAK,WAAY6a,GAE7BC,EAAUtd,EAAEwR,KAAKxR,EAAE,UAAUE,OAAOsd,eAAeC,UAAU,EAAG,GAE5DH,GAAWnD,EAAWpT,EAAEyQ,UAC1B6F,EAAQ,EACRrd,EAAE6F,UAAUrD,KAAK,WAAY6a,IACpBA,GAASE,EAASpZ,SAC3BnE,EAAE6F,UAAUrD,KAAK,WAAY,GACzB6a,EAAQE,EAASpZ,SAAQkZ,EAAQ,IAGvCxD,EAAOrJ,GAAG+M,EAASF,EAAQ,IAAI/R,SAAS,KAAKM,QAI/C,IAAK,UAAUnK,KAAKsF,EAAEyQ,QAAQhU,SAAS,MAAS,QAAQ/B,KAAKsF,EAAEyQ,QAAQhU,SAAS,MAAQoH,EAAKnI,QAAQgI,cAAiBwP,EAAU,CAE9H,GADK,OAAOxY,KAAKsF,EAAEyQ,QAAQhU,SAAS,MAAMuD,EAAEE,iBACvC2D,EAAKnI,QAAQqH,WASN,OAAOrI,KAAKsF,EAAEyQ,QAAQhU,SAAS,OACzCoH,EAAKW,WAAWE,KAAK,aAAaE,QAClCrJ,EAAMsJ,aAXsB,CAC5B,GAAI8R,GAAO1d,EAAE,SACb0d,GAAK/R,QAEL+R,EAAK9R,QAEL7E,EAAEE,iBAEFjH,EAAE6F,UAAUrD,KAAK,eAAe,GAKlCxC,EAAE6F,UAAUrD,KAAK,WAAY,IAG1B,WAAWf,KAAKsF,EAAEyQ,QAAQhU,SAAS,MAAQyW,IAAarP,EAAKI,UAAYJ,EAAKnI,QAAQqH,aAAiB,OAAOrI,KAAKsF,EAAEyQ,QAAQhU,SAAS,OAASyW,KAClJrP,EAAKvD,MAAM4F,SAASvB,YAAY,QAC5Bd,EAAKnI,QAAQ8G,WAAWqB,EAAKzD,YAAYuE,YAAY,QACzDd,EAAKxD,QAAQwE,WAIjBpB,OAAQ,WACNzK,KAAKmH,SAAS4D,SAAS,kBAGzBnD,QAAS,WACP5H,KAAKuH,KAAO,KACZvH,KAAKgL,SACLhL,KAAK4N,WACL5N,KAAK2H,SACL3H,KAAK8L,gBACL9L,KAAK4R,UAAS,GACd5R,KAAK6H,WACL7H,KAAKiM,WACDjM,KAAKuH,MAAMvH,KAAKyL,WAAWrF,QAAQ,kBAEvCpG,KAAKmH,SAASf,QAAQ;EAGxB+B,KAAM,WACJnI,KAAKoH,YAAYe,QAGnBD,KAAM,WACJlI,KAAKoH,YAAYc,QAGnBD,OAAQ,WACNjI,KAAKoH,YAAYa,SACjBjI,KAAKmH,SAASc,UAGhBD,QAAS,WACPhI,KAAKoH,YAAYwW,OAAO5d,KAAKmH,UAAUc,SAEnCjI,KAAKkX,aACPlX,KAAKkX,aAAajP,SAElBjI,KAAKsH,MAAMW,SAGbjI,KAAKmH,SACFuF,IAAI,cACJmR,WAAW,gBACXlS,YAAY,kCAoDnB,IAAImS,GAAM7d,EAAEgD,GAAGC,YACfjD,GAAEgD,GAAGC,aAAetB,EACpB3B,EAAEgD,GAAGC,aAAa6a,YAAchb,EAIhC9C,EAAEgD,GAAGC,aAAa8a,WAAa,WAE7B,MADA/d,GAAEgD,GAAGC,aAAe4a,EACb9d,MAGTC,EAAE6F,UACGrD,KAAK,WAAY,GACjB0J,GAAG,oBAAqB,iGAAkGpJ,EAAaQ,UAAUsW,SACjJ1N,GAAG,gBAAiB,iGAAkG,SAAUnF,GAC/HA,EAAEC,oBAKRhH,EAAE4U,QAAQ1I,GAAG,0BAA2B,WACtClM,EAAE,iBAAiBM,KAAK,WACtB,GAAI0d,GAAgBhe,EAAED,KACtB4B,GAAOsC,KAAK+Z,EAAeA,EAAcxb,aAG5C1C","file":"bootstrap-select.min.js"} \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/bootstrap-select.min.js b/assets/lib/bootstrap-select/js/bootstrap-select.min.js new file mode 100644 index 0000000..f514dfc --- /dev/null +++ b/assets/lib/bootstrap-select/js/bootstrap-select.min.js @@ -0,0 +1,9 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){"use strict";function b(b){var c=[{re:/[\xC0-\xC6]/g,ch:"A"},{re:/[\xE0-\xE6]/g,ch:"a"},{re:/[\xC8-\xCB]/g,ch:"E"},{re:/[\xE8-\xEB]/g,ch:"e"},{re:/[\xCC-\xCF]/g,ch:"I"},{re:/[\xEC-\xEF]/g,ch:"i"},{re:/[\xD2-\xD6]/g,ch:"O"},{re:/[\xF2-\xF6]/g,ch:"o"},{re:/[\xD9-\xDC]/g,ch:"U"},{re:/[\xF9-\xFC]/g,ch:"u"},{re:/[\xC7-\xE7]/g,ch:"c"},{re:/[\xD1]/g,ch:"N"},{re:/[\xF1]/g,ch:"n"}];return a.each(c,function(){b=b.replace(this.re,this.ch)}),b}function c(a){var b={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},c="(?:"+Object.keys(b).join("|")+")",d=new RegExp(c),e=new RegExp(c,"g"),f=null==a?"":""+a;return d.test(f)?f.replace(e,function(a){return b[a]}):f}function d(b,c){var d=arguments,f=b,g=c;[].shift.apply(d);var h,i=this.each(function(){var b=a(this);if(b.is("select")){var c=b.data("selectpicker"),i="object"==typeof f&&f;if(c){if(i)for(var j in i)i.hasOwnProperty(j)&&(c.options[j]=i[j])}else{var k=a.extend({},e.DEFAULTS,a.fn.selectpicker.defaults||{},b.data(),i);k.template=a.extend({},e.DEFAULTS.template,a.fn.selectpicker.defaults?a.fn.selectpicker.defaults.template:{},b.data().template,i.template),b.data("selectpicker",c=new e(this,k,g))}"string"==typeof f&&(h=c[f]instanceof Function?c[f].apply(c,d):c.options[f])}});return"undefined"!=typeof h?h:i}String.prototype.includes||!function(){var a={}.toString,b=function(){try{var a={},b=Object.defineProperty,c=b(a,a,a)&&b}catch(d){}return c}(),c="".indexOf,d=function(b){if(null==this)throw new TypeError;var d=String(this);if(b&&"[object RegExp]"==a.call(b))throw new TypeError;var e=d.length,f=String(b),g=f.length,h=arguments.length>1?arguments[1]:void 0,i=h?Number(h):0;i!=i&&(i=0);var j=Math.min(Math.max(i,0),e);return g+j>e?!1:-1!=c.call(d,f,i)};b?b(String.prototype,"includes",{value:d,configurable:!0,writable:!0}):String.prototype.includes=d}(),String.prototype.startsWith||!function(){var a=function(){try{var a={},b=Object.defineProperty,c=b(a,a,a)&&b}catch(d){}return c}(),b={}.toString,c=function(a){if(null==this)throw new TypeError;var c=String(this);if(a&&"[object RegExp]"==b.call(a))throw new TypeError;var d=c.length,e=String(a),f=e.length,g=arguments.length>1?arguments[1]:void 0,h=g?Number(g):0;h!=h&&(h=0);var i=Math.min(Math.max(h,0),d);if(f+i>d)return!1;for(var j=-1;++j'},maxOptions:!1,mobile:!1,selectOnTab:!1,dropdownAlignRight:!1},e.prototype={constructor:e,init:function(){var b=this,c=this.$element.attr("id");this.$element.addClass("bs-select-hidden"),this.liObj={},this.multiple=this.$element.prop("multiple"),this.autofocus=this.$element.prop("autofocus"),this.$newElement=this.createView(),this.$element.after(this.$newElement).appendTo(this.$newElement),this.$button=this.$newElement.children("button"),this.$menu=this.$newElement.children(".dropdown-menu"),this.$menuInner=this.$menu.children(".inner"),this.$searchbox=this.$menu.find("input"),this.$element.removeClass("bs-select-hidden"),this.options.dropdownAlignRight===!0&&this.$menu.addClass("dropdown-menu-right"),"undefined"!=typeof c&&(this.$button.attr("data-id",c),a('label[for="'+c+'"]').click(function(a){a.preventDefault(),b.$button.focus()})),this.checkDisabled(),this.clickListener(),this.options.liveSearch&&this.liveSearchListener(),this.render(),this.setStyle(),this.setWidth(),this.options.container&&this.selectPosition(),this.$menu.data("this",this),this.$newElement.data("this",this),this.options.mobile&&this.mobile(),this.$newElement.on({"hide.bs.dropdown":function(a){b.$element.trigger("hide.bs.select",a)},"hidden.bs.dropdown":function(a){b.$element.trigger("hidden.bs.select",a)},"show.bs.dropdown":function(a){b.$element.trigger("show.bs.select",a)},"shown.bs.dropdown":function(a){b.$element.trigger("shown.bs.select",a)}}),b.$element[0].hasAttribute("required")&&this.$element.on("invalid",function(){b.$button.addClass("bs-invalid").focus(),b.$element.on({"focus.bs.select":function(){b.$button.focus(),b.$element.off("focus.bs.select")},"shown.bs.select":function(){b.$element.val(b.$element.val()).off("shown.bs.select")},"rendered.bs.select":function(){this.validity.valid&&b.$button.removeClass("bs-invalid"),b.$element.off("rendered.bs.select")}})}),setTimeout(function(){b.$element.trigger("loaded.bs.select")})},createDropdown:function(){var b=this.multiple||this.options.showTick?" show-tick":"",d=this.$element.parent().hasClass("input-group")?" input-group-btn":"",e=this.autofocus?" autofocus":"",f=this.options.header?'
    '+this.options.header+"
    ":"",g=this.options.liveSearch?'":"",h=this.multiple&&this.options.actionsBox?'
    ":"",i=this.multiple&&this.options.doneButton?'
    ":"",j='
    ";return a(j)},createView:function(){var a=this.createDropdown(),b=this.createLi();return a.find("ul")[0].innerHTML=b,a},reloadLi:function(){this.destroyLi();var a=this.createLi();this.$menuInner[0].innerHTML=a},destroyLi:function(){this.$menu.find("li").remove()},createLi:function(){var d=this,e=[],f=0,g=document.createElement("option"),h=-1,i=function(a,b,c,d){return""+a+""},j=function(a,e,f,g){return'"+a+''};if(this.options.title&&!this.multiple&&(h--,!this.$element.find(".bs-title-option").length)){var k=this.$element[0];g.className="bs-title-option",g.appendChild(document.createTextNode(this.options.title)),g.value="",k.insertBefore(g,k.firstChild);var l=a(k.options[k.selectedIndex]);void 0===l.attr("selected")&&l.prop("selected")===!1&&(g.selected=!0)}return this.$element.find("option").each(function(b){var c=a(this);if(h++,!c.hasClass("bs-title-option")){var g=this.className||"",k=this.style.cssText,l=c.data("content")?c.data("content"):c.html(),m=c.data("tokens")?c.data("tokens"):null,n="undefined"!=typeof c.data("subtext")?''+c.data("subtext")+"":"",o="undefined"!=typeof c.data("icon")?' ':"",p=c.parent(),q="OPTGROUP"===p[0].tagName,r=q&&p[0].disabled,s=this.disabled||r;if(""!==o&&s&&(o=""+o+""),d.options.hideDisabled&&(s&&!q||r))return void h--;if(c.data("content")||(l=o+''+l+n+""),q&&c.data("divider")!==!0){if(d.options.hideDisabled&&s){if(void 0===p.data("allOptionsDisabled")){var t=p.children();p.data("allOptionsDisabled",t.filter(":disabled").length===t.length)}if(p.data("allOptionsDisabled"))return void h--}var u=" "+p[0].className||"";if(0===c.index()){f+=1;var v=p[0].label,w="undefined"!=typeof p.data("subtext")?''+p.data("subtext")+"":"",x=p.data("icon")?' ':"";v=x+''+v+w+"",0!==b&&e.length>0&&(h++,e.push(i("",null,"divider",f+"div"))),h++,e.push(i(v,null,"dropdown-header"+u,f))}if(d.options.hideDisabled&&s)return void h--;e.push(i(j(l,"opt "+g+u,k,m),b,"",f))}else if(c.data("divider")===!0)e.push(i("",b,"divider"));else if(c.data("hidden")===!0)e.push(i(j(l,g,k,m),b,"hidden is-hidden"));else{var y=this.previousElementSibling&&"OPTGROUP"===this.previousElementSibling.tagName;if(!y&&d.options.hideDisabled)for(var z=a(this).prevAll(),A=0;AC;C++){var D=z[C];(D.disabled||a(D).data("hidden")===!0)&&B++}B===A&&(y=!0);break}y&&(h++,e.push(i("",null,"divider",f+"div"))),e.push(i(j(l,g,k,m),b))}d.liObj[b]=h}}),this.multiple||0!==this.$element.find("option:selected").length||this.options.title||this.$element.find("option").eq(0).prop("selected",!0).attr("selected","selected"),e.join("")},findLis:function(){return null==this.$lis&&(this.$lis=this.$menu.find("li")),this.$lis},render:function(b){var c,d=this;b!==!1&&(this.$element.find("option").each(function(a){var b=d.findLis().eq(d.liObj[a]);d.setDisabled(a,this.disabled||"OPTGROUP"===this.parentNode.tagName&&this.parentNode.disabled,b),d.setSelected(a,this.selected,b)}),this.togglePlaceholder()),this.tabIndex();var e=this.$element.find("option").map(function(){if(this.selected){if(d.options.hideDisabled&&(this.disabled||"OPTGROUP"===this.parentNode.tagName&&this.parentNode.disabled))return;var b,c=a(this),e=c.data("icon")&&d.options.showIcon?' ':"";return b=d.options.showSubtext&&c.data("subtext")&&!d.multiple?' '+c.data("subtext")+"":"","undefined"!=typeof c.attr("title")?c.attr("title"):c.data("content")&&d.options.showContent?c.data("content"):e+c.html()+b}}).toArray(),f=this.multiple?e.join(this.options.multipleSeparator):e[0];if(this.multiple&&this.options.selectedTextFormat.indexOf("count")>-1){var g=this.options.selectedTextFormat.split(">");if(g.length>1&&e.length>g[1]||1==g.length&&e.length>=2){c=this.options.hideDisabled?", [disabled]":"";var h=this.$element.find("option").not('[data-divider="true"], [data-hidden="true"]'+c).length,i="function"==typeof this.options.countSelectedText?this.options.countSelectedText(e.length,h):this.options.countSelectedText;f=i.replace("{0}",e.length.toString()).replace("{1}",h.toString())}}void 0==this.options.title&&(this.options.title=this.$element.attr("title")),"static"==this.options.selectedTextFormat&&(f=this.options.title),f||(f="undefined"!=typeof this.options.title?this.options.title:this.options.noneSelectedText),this.$button.attr("title",a.trim(f.replace(/<[^>]*>?/g,""))),this.$button.children(".filter-option").html(f),this.$element.trigger("rendered.bs.select")},setStyle:function(a,b){this.$element.attr("class")&&this.$newElement.addClass(this.$element.attr("class").replace(/selectpicker|mobile-device|bs-select-hidden|validate\[.*\]/gi,""));var c=a?a:this.options.style;"add"==b?this.$button.addClass(c):"remove"==b?this.$button.removeClass(c):(this.$button.removeClass(this.options.style),this.$button.addClass(c))},liHeight:function(b){if(b||this.options.size!==!1&&!this.sizeInfo){var c=document.createElement("div"),d=document.createElement("div"),e=document.createElement("ul"),f=document.createElement("li"),g=document.createElement("li"),h=document.createElement("a"),i=document.createElement("span"),j=this.options.header&&this.$menu.find(".popover-title").length>0?this.$menu.find(".popover-title")[0].cloneNode(!0):null,k=this.options.liveSearch?document.createElement("div"):null,l=this.options.actionsBox&&this.multiple&&this.$menu.find(".bs-actionsbox").length>0?this.$menu.find(".bs-actionsbox")[0].cloneNode(!0):null,m=this.options.doneButton&&this.multiple&&this.$menu.find(".bs-donebutton").length>0?this.$menu.find(".bs-donebutton")[0].cloneNode(!0):null;if(i.className="text",c.className=this.$menu[0].parentNode.className+" open",d.className="dropdown-menu open",e.className="dropdown-menu inner",f.className="divider",i.appendChild(document.createTextNode("Inner text")),h.appendChild(i),g.appendChild(h),e.appendChild(g),e.appendChild(f),j&&d.appendChild(j),k){var n=document.createElement("span");k.className="bs-searchbox",n.className="form-control",k.appendChild(n),d.appendChild(k)}l&&d.appendChild(l),d.appendChild(e),m&&d.appendChild(m),c.appendChild(d),document.body.appendChild(c);var o=h.offsetHeight,p=j?j.offsetHeight:0,q=k?k.offsetHeight:0,r=l?l.offsetHeight:0,s=m?m.offsetHeight:0,t=a(f).outerHeight(!0),u="function"==typeof getComputedStyle?getComputedStyle(d):!1,v=u?null:a(d),w={vert:parseInt(u?u.paddingTop:v.css("paddingTop"))+parseInt(u?u.paddingBottom:v.css("paddingBottom"))+parseInt(u?u.borderTopWidth:v.css("borderTopWidth"))+parseInt(u?u.borderBottomWidth:v.css("borderBottomWidth")),horiz:parseInt(u?u.paddingLeft:v.css("paddingLeft"))+parseInt(u?u.paddingRight:v.css("paddingRight"))+parseInt(u?u.borderLeftWidth:v.css("borderLeftWidth"))+parseInt(u?u.borderRightWidth:v.css("borderRightWidth"))},x={vert:w.vert+parseInt(u?u.marginTop:v.css("marginTop"))+parseInt(u?u.marginBottom:v.css("marginBottom"))+2,horiz:w.horiz+parseInt(u?u.marginLeft:v.css("marginLeft"))+parseInt(u?u.marginRight:v.css("marginRight"))+2};document.body.removeChild(c),this.sizeInfo={liHeight:o,headerHeight:p,searchHeight:q,actionsHeight:r,doneButtonHeight:s,dividerHeight:t,menuPadding:w,menuExtras:x}}},setSize:function(){if(this.findLis(),this.liHeight(),this.options.header&&this.$menu.css("padding-top",0),this.options.size!==!1){var b,c,d,e,f,g,h,i,j=this,k=this.$menu,l=this.$menuInner,m=a(window),n=this.$newElement[0].offsetHeight,o=this.$newElement[0].offsetWidth,p=this.sizeInfo.liHeight,q=this.sizeInfo.headerHeight,r=this.sizeInfo.searchHeight,s=this.sizeInfo.actionsHeight,t=this.sizeInfo.doneButtonHeight,u=this.sizeInfo.dividerHeight,v=this.sizeInfo.menuPadding,w=this.sizeInfo.menuExtras,x=this.options.hideDisabled?".disabled":"",y=function(){var a=j.$newElement.offset();f=a.top-m.scrollTop(),g=m.height()-f-n,h=a.left-m.scrollLeft(),i=m.width()-h-o};if(y(),"auto"===this.options.size){var z=function(){var m,n=function(b,c){return function(d){return c?d.classList?d.classList.contains(b):a(d).hasClass(b):!(d.classList?d.classList.contains(b):a(d).hasClass(b))}},u=j.$menuInner[0].getElementsByTagName("li"),x=Array.prototype.filter?Array.prototype.filter.call(u,n("hidden",!1)):j.$lis.not(".hidden"),z=Array.prototype.filter?Array.prototype.filter.call(x,n("dropdown-header",!0)):x.filter(".dropdown-header");y(),b=g-w.vert,c=i-w.horiz,j.options.container?(k.data("height")||k.data("height",k.height()),d=k.data("height"),k.data("width")||k.data("width",k.width()),e=k.data("width")):(d=k.height(),e=k.width()),j.options.dropupAuto&&j.$newElement.toggleClass("dropup",f>g&&b-w.verti&&c-w.horiz3?3*p+w.vert-2:0,k.css({"max-height":b+"px",overflow:"hidden","min-height":m+q+r+s+t+"px"}),l.css({"max-height":b-q-r-s-t-v.vert+"px","overflow-y":"auto","min-height":Math.max(m-v.vert,0)+"px"})};z(),this.$searchbox.off("input.getSize propertychange.getSize").on("input.getSize propertychange.getSize",z),m.off("resize.getSize scroll.getSize").on("resize.getSize scroll.getSize",z)}else if(this.options.size&&"auto"!=this.options.size&&this.$lis.not(x).length>this.options.size){var A=this.$lis.not(".divider").not(x).children().slice(0,this.options.size).last().parent().index(),B=this.$lis.slice(0,A+1).filter(".divider").length;b=p*this.options.size+B*u+v.vert,j.options.container?(k.data("height")||k.data("height",k.height()),d=k.data("height")):d=k.height(),j.options.dropupAuto&&this.$newElement.toggleClass("dropup",f>g&&b-w.vert');var b,c,d=this,e=function(a){d.$bsContainer.addClass(a.attr("class").replace(/form-control|fit-width/gi,"")).toggleClass("dropup",a.hasClass("dropup")),b=a.offset(),c=a.hasClass("dropup")?0:a[0].offsetHeight,d.$bsContainer.css({top:b.top+c,left:b.left,width:a[0].offsetWidth})};this.$button.on("click",function(){var b=a(this);d.isDisabled()||(e(d.$newElement),d.$bsContainer.appendTo(d.options.container).toggleClass("open",!b.hasClass("open")).append(d.$menu))}),a(window).on("resize scroll",function(){e(d.$newElement)}),this.$element.on("hide.bs.select",function(){d.$menu.data("height",d.$menu.height()),d.$bsContainer.detach()})},setSelected:function(a,b,c){c||(this.togglePlaceholder(),c=this.findLis().eq(this.liObj[a])),c.toggleClass("selected",b)},setDisabled:function(a,b,c){c||(c=this.findLis().eq(this.liObj[a])),b?c.addClass("disabled").children("a").attr("href","#").attr("tabindex",-1):c.removeClass("disabled").children("a").removeAttr("href").attr("tabindex",0)},isDisabled:function(){return this.$element[0].disabled},checkDisabled:function(){var a=this;this.isDisabled()?(this.$newElement.addClass("disabled"),this.$button.addClass("disabled").attr("tabindex",-1)):(this.$button.hasClass("disabled")&&(this.$newElement.removeClass("disabled"),this.$button.removeClass("disabled")),-1!=this.$button.attr("tabindex")||this.$element.data("tabindex")||this.$button.removeAttr("tabindex")),this.$button.click(function(){return!a.isDisabled()})},togglePlaceholder:function(){var a=this.$element.val();this.$button.toggleClass("bs-placeholder",null===a||""===a)},tabIndex:function(){this.$element.data("tabindex")!==this.$element.attr("tabindex")&&-98!==this.$element.attr("tabindex")&&"-98"!==this.$element.attr("tabindex")&&(this.$element.data("tabindex",this.$element.attr("tabindex")),this.$button.attr("tabindex",this.$element.data("tabindex"))),this.$element.attr("tabindex",-98)},clickListener:function(){var b=this,c=a(document);this.$newElement.on("touchstart.dropdown",".dropdown-menu",function(a){a.stopPropagation()}),c.data("spaceSelect",!1),this.$button.on("keyup",function(a){/(32)/.test(a.keyCode.toString(10))&&c.data("spaceSelect")&&(a.preventDefault(),c.data("spaceSelect",!1))}),this.$button.on("click",function(){b.setSize()}),this.$element.on("shown.bs.select",function(){if(b.options.liveSearch||b.multiple){if(!b.multiple){var a=b.liObj[b.$element[0].selectedIndex];if("number"!=typeof a||b.options.size===!1)return;var c=b.$lis.eq(a)[0].offsetTop-b.$menuInner[0].offsetTop;c=c-b.$menuInner[0].offsetHeight/2+b.sizeInfo.liHeight/2,b.$menuInner[0].scrollTop=c}}else b.$menuInner.find(".selected a").focus()}),this.$menuInner.on("click","li a",function(c){var d=a(this),e=d.parent().data("originalIndex"),f=b.$element.val(),g=b.$element.prop("selectedIndex"),h=!0;if(b.multiple&&1!==b.options.maxOptions&&c.stopPropagation(),c.preventDefault(),!b.isDisabled()&&!d.parent().hasClass("disabled")){var i=b.$element.find("option"),j=i.eq(e),k=j.prop("selected"),l=j.parent("optgroup"),m=b.options.maxOptions,n=l.data("maxOptions")||!1;if(b.multiple){if(j.prop("selected",!k),b.setSelected(e,!k),d.blur(),m!==!1||n!==!1){var o=m');s[2]&&(t=t.replace("{var}",s[2][m>1?0:1]),u=u.replace("{var}",s[2][n>1?0:1])),j.prop("selected",!1),b.$menu.append(v),m&&o&&(v.append(a("
    "+t+"
    ")),h=!1,b.$element.trigger("maxReached.bs.select")),n&&p&&(v.append(a("
    "+u+"
    ")),h=!1,b.$element.trigger("maxReachedGrp.bs.select")),setTimeout(function(){b.setSelected(e,!1)},10),v.delay(750).fadeOut(300,function(){a(this).remove()})}}}else i.prop("selected",!1),j.prop("selected",!0),b.$menuInner.find(".selected").removeClass("selected"),b.setSelected(e,!0);!b.multiple||b.multiple&&1===b.options.maxOptions?b.$button.focus():b.options.liveSearch&&b.$searchbox.focus(),h&&(f!=b.$element.val()&&b.multiple||g!=b.$element.prop("selectedIndex")&&!b.multiple)&&b.$element.trigger("changed.bs.select",[e,j.prop("selected"),k]).triggerNative("change")}}),this.$menu.on("click","li.disabled a, .popover-title, .popover-title :not(.close)",function(c){c.currentTarget==this&&(c.preventDefault(),c.stopPropagation(),b.options.liveSearch&&!a(c.target).hasClass("close")?b.$searchbox.focus():b.$button.focus())}),this.$menuInner.on("click",".divider, .dropdown-header",function(a){a.preventDefault(),a.stopPropagation(),b.options.liveSearch?b.$searchbox.focus():b.$button.focus()}),this.$menu.on("click",".popover-title .close",function(){b.$button.click()}),this.$searchbox.on("click",function(a){a.stopPropagation()}),this.$menu.on("click",".actions-btn",function(c){b.options.liveSearch?b.$searchbox.focus():b.$button.focus(),c.preventDefault(),c.stopPropagation(),a(this).hasClass("bs-select-all")?b.selectAll():b.deselectAll()}),this.$element.change(function(){b.render(!1)})},liveSearchListener:function(){var d=this,e=a('
  • ');this.$button.on("click.dropdown.data-api touchstart.dropdown.data-api",function(){d.$menuInner.find(".active").removeClass("active"),d.$searchbox.val()&&(d.$searchbox.val(""),d.$lis.not(".is-hidden").removeClass("hidden"),e.parent().length&&e.remove()),d.multiple||d.$menuInner.find(".selected").addClass("active"),setTimeout(function(){d.$searchbox.focus()},10)}),this.$searchbox.on("click.dropdown.data-api focus.dropdown.data-api touchend.dropdown.data-api",function(a){a.stopPropagation()}),this.$searchbox.on("input propertychange",function(){if(d.$searchbox.val()){var f=d.$lis.not(".is-hidden").removeClass("hidden").children("a");f=d.options.liveSearchNormalize?f.not(":a"+d._searchStyle()+'("'+b(d.$searchbox.val())+'")'):f.not(":"+d._searchStyle()+'("'+d.$searchbox.val()+'")'),f.parent().addClass("hidden"),d.$lis.filter(".dropdown-header").each(function(){var b=a(this),c=b.data("optgroup");0===d.$lis.filter("[data-optgroup="+c+"]").not(b).not(".hidden").length&&(b.addClass("hidden"),d.$lis.filter("[data-optgroup="+c+"div]").addClass("hidden"))});var g=d.$lis.not(".hidden");g.each(function(b){var c=a(this);c.hasClass("divider")&&(c.index()===g.first().index()||c.index()===g.last().index()||g.eq(b+1).hasClass("divider"))&&c.addClass("hidden")}),d.$lis.not(".hidden, .no-results").length?e.parent().length&&e.remove():(e.parent().length&&e.remove(),e.html(d.options.noneResultsText.replace("{0}",'"'+c(d.$searchbox.val())+'"')).show(),d.$menuInner.append(e))}else d.$lis.not(".is-hidden").removeClass("hidden"),e.parent().length&&e.remove();d.$lis.filter(".active").removeClass("active"),d.$searchbox.val()&&d.$lis.not(".hidden, .divider, .dropdown-header").eq(0).addClass("active").children("a").focus(),a(this).focus()})},_searchStyle:function(){var a={begins:"ibegins",startsWith:"ibegins"};return a[this.options.liveSearchStyle]||"icontains"},val:function(a){return"undefined"!=typeof a?(this.$element.val(a),this.render(),this.$element):this.$element.val()},changeAll:function(b){if(this.multiple){"undefined"==typeof b&&(b=!0),this.findLis();var c=this.$element.find("option"),d=this.$lis.not(".divider, .dropdown-header, .disabled, .hidden"),e=d.length,f=[];if(b){if(d.filter(".selected").length===d.length)return}else if(0===d.filter(".selected").length)return;d.toggleClass("selected",b);for(var g=0;e>g;g++){var h=d[g].getAttribute("data-original-index");f[f.length]=c.eq(h)[0]}a(f).prop("selected",b),this.render(!1),this.togglePlaceholder(),this.$element.trigger("changed.bs.select").triggerNative("change")}},selectAll:function(){return this.changeAll(!0)},deselectAll:function(){return this.changeAll(!1)},toggle:function(a){a=a||window.event,a&&a.stopPropagation(),this.$button.trigger("click")},keydown:function(c){var d,e,f,g,h,i,j,k,l,m=a(this),n=m.is("input")?m.parent().parent():m.parent(),o=n.data("this"),p=":not(.disabled, .hidden, .dropdown-header, .divider)",q={32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9"};if(o.options.liveSearch&&(n=m.parent().parent()),o.options.container&&(n=o.$menu),d=a("[role=menu] li",n),l=o.$newElement.hasClass("open"),!l&&(c.keyCode>=48&&c.keyCode<=57||c.keyCode>=96&&c.keyCode<=105||c.keyCode>=65&&c.keyCode<=90))return o.options.container?o.$button.trigger("click"):(o.setSize(),o.$menu.parent().addClass("open"),l=!0),void o.$searchbox.focus();if(o.options.liveSearch&&(/(^9$|27)/.test(c.keyCode.toString(10))&&l&&0===o.$menu.find(".active").length&&(c.preventDefault(),o.$menu.parent().removeClass("open"),o.options.container&&o.$newElement.removeClass("open"),o.$button.focus()),d=a("[role=menu] li"+p,n),m.val()||/(38|40)/.test(c.keyCode.toString(10))||0===d.filter(".active").length&&(d=o.$menuInner.find("li"),d=o.options.liveSearchNormalize?d.filter(":a"+o._searchStyle()+"("+b(q[c.keyCode])+")"):d.filter(":"+o._searchStyle()+"("+q[c.keyCode]+")"))),d.length){if(/(38|40)/.test(c.keyCode.toString(10)))e=d.index(d.find("a").filter(":focus").parent()),g=d.filter(p).first().index(),h=d.filter(p).last().index(),f=d.eq(e).nextAll(p).eq(0).index(),i=d.eq(e).prevAll(p).eq(0).index(),j=d.eq(f).prevAll(p).eq(0).index(),o.options.liveSearch&&(d.each(function(b){a(this).hasClass("disabled")||a(this).data("index",b)}),e=d.index(d.filter(".active")),g=d.first().data("index"),h=d.last().data("index"),f=d.eq(e).nextAll().eq(0).data("index"),i=d.eq(e).prevAll().eq(0).data("index"),j=d.eq(f).prevAll().eq(0).data("index")),k=m.data("prevIndex"),38==c.keyCode?(o.options.liveSearch&&e--,e!=j&&e>i&&(e=i),g>e&&(e=g),e==k&&(e=h)):40==c.keyCode&&(o.options.liveSearch&&e++,-1==e&&(e=0),e!=j&&f>e&&(e=f),e>h&&(e=h),e==k&&(e=g)),m.data("prevIndex",e),o.options.liveSearch?(c.preventDefault(),m.hasClass("dropdown-toggle")||(d.removeClass("active").eq(e).addClass("active").children("a").focus(),m.focus())):d.eq(e).children("a").focus();else if(!m.is("input")){var r,s,t=[];d.each(function(){a(this).hasClass("disabled")||a.trim(a(this).children("a").text().toLowerCase()).substring(0,1)==q[c.keyCode]&&t.push(a(this).index())}),r=a(document).data("keycount"),r++,a(document).data("keycount",r),s=a.trim(a(":focus").text().toLowerCase()).substring(0,1),s!=q[c.keyCode]?(r=1,a(document).data("keycount",r)):r>=t.length&&(a(document).data("keycount",0),r>t.length&&(r=1)),d.eq(t[r-1]).children("a").focus()}if((/(13|32)/.test(c.keyCode.toString(10))||/(^9$)/.test(c.keyCode.toString(10))&&o.options.selectOnTab)&&l){if(/(32)/.test(c.keyCode.toString(10))||c.preventDefault(),o.options.liveSearch)/(32)/.test(c.keyCode.toString(10))||(o.$menuInner.find(".active a").click(),m.focus());else{var u=a(":focus");u.click(),u.focus(),c.preventDefault(),a(document).data("spaceSelect",!0)}a(document).data("keycount",0)}(/(^9$|27)/.test(c.keyCode.toString(10))&&l&&(o.multiple||o.options.liveSearch)||/(27)/.test(c.keyCode.toString(10))&&!l)&&(o.$menu.parent().removeClass("open"),o.options.container&&o.$newElement.removeClass("open"),o.$button.focus())}},mobile:function(){this.$element.addClass("mobile-device")},refresh:function(){this.$lis=null,this.liObj={},this.reloadLi(),this.render(),this.checkDisabled(),this.liHeight(!0),this.setStyle(),this.setWidth(),this.$lis&&this.$searchbox.trigger("propertychange"),this.$element.trigger("refreshed.bs.select"); +},hide:function(){this.$newElement.hide()},show:function(){this.$newElement.show()},remove:function(){this.$newElement.remove(),this.$element.remove()},destroy:function(){this.$newElement.before(this.$element).remove(),this.$bsContainer?this.$bsContainer.remove():this.$menu.remove(),this.$element.off(".bs.select").removeData("selectpicker").removeClass("bs-select-hidden selectpicker")}};var f=a.fn.selectpicker;a.fn.selectpicker=d,a.fn.selectpicker.Constructor=e,a.fn.selectpicker.noConflict=function(){return a.fn.selectpicker=f,this},a(document).data("keycount",0).on("keydown.bs.select",'.bootstrap-select [data-toggle=dropdown], .bootstrap-select [role="menu"], .bs-searchbox input',e.prototype.keydown).on("focusin.modal",'.bootstrap-select [data-toggle=dropdown], .bootstrap-select [role="menu"], .bs-searchbox input',function(a){a.stopPropagation()}),a(window).on("load.bs.select.data-api",function(){a(".selectpicker").each(function(){var b=a(this);d.call(b,b.data())})})}(a)}); +//# sourceMappingURL=bootstrap-select.js.map \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-ar_AR.js b/assets/lib/bootstrap-select/js/i18n/defaults-ar_AR.js new file mode 100644 index 0000000..4b82e50 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-ar_AR.js @@ -0,0 +1,49 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +/*! + * Translated default messages for bootstrap-select. + * Locale: AR (Arabic) + * Author: Yasser Lotfy + */ +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'لم يتم إختيار شئ', + noneResultsText: 'لا توجد نتائج مطابقة لـ {0}', + countSelectedText: function (numSelected, numTotal) { + return (numSelected == 1) ? "{0} خيار تم إختياره" : "{0} خيارات تمت إختيارها"; + }, + maxOptionsText: function (numAll, numGroup) { + return [ + (numAll == 1) ? 'تخطى الحد المسموح ({n} خيار بحد أقصى)' : 'تخطى الحد المسموح ({n} خيارات بحد أقصى)', + (numGroup == 1) ? 'تخطى الحد المسموح للمجموعة ({n} خيار بحد أقصى)' : 'تخطى الحد المسموح للمجموعة ({n} خيارات بحد أقصى)' + ]; + }, + selectAllText: 'إختيار الجميع', + deselectAllText: 'إلغاء إختيار الجميع', + multipleSeparator: '، ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-ar_AR.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-ar_AR.min.js new file mode 100644 index 0000000..0b3a158 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-ar_AR.min.js @@ -0,0 +1,12 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){/*! + * Translated default messages for bootstrap-select. + * Locale: AR (Arabic) + * Author: Yasser Lotfy + */ +!function(a){a.fn.selectpicker.defaults={noneSelectedText:"لم يتم إختيار شئ",noneResultsText:"لا توجد نتائج مطابقة لـ {0}",countSelectedText:function(a,b){return 1==a?"{0} خيار تم إختياره":"{0} خيارات تمت إختيارها"},maxOptionsText:function(a,b){return[1==a?"تخطى الحد المسموح ({n} خيار بحد أقصى)":"تخطى الحد المسموح ({n} خيارات بحد أقصى)",1==b?"تخطى الحد المسموح للمجموعة ({n} خيار بحد أقصى)":"تخطى الحد المسموح للمجموعة ({n} خيارات بحد أقصى)"]},selectAllText:"إختيار الجميع",deselectAllText:"إلغاء إختيار الجميع",multipleSeparator:"، "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-bg_BG.js b/assets/lib/bootstrap-select/js/i18n/defaults-bg_BG.js new file mode 100644 index 0000000..e142018 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-bg_BG.js @@ -0,0 +1,44 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Нищо избрано', + noneResultsText: 'Няма резултат за {0}', + countSelectedText: function (numSelected, numTotal) { + return (numSelected == 1) ? "{0} избран елемент" : "{0} избрани елемента"; + }, + maxOptionsText: function (numAll, numGroup) { + return [ + (numAll == 1) ? 'Лимита е достигнат ({n} елемент максимум)' : 'Лимита е достигнат ({n} елемента максимум)', + (numGroup == 1) ? 'Груповия лимит е достигнат ({n} елемент максимум)' : 'Груповия лимит е достигнат ({n} елемента максимум)' + ]; + }, + selectAllText: 'Избери всички', + deselectAllText: 'Размаркирай всички', + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-bg_BG.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-bg_BG.min.js new file mode 100644 index 0000000..449c564 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-bg_BG.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Нищо избрано",noneResultsText:"Няма резултат за {0}",countSelectedText:function(a,b){return 1==a?"{0} избран елемент":"{0} избрани елемента"},maxOptionsText:function(a,b){return[1==a?"Лимита е достигнат ({n} елемент максимум)":"Лимита е достигнат ({n} елемента максимум)",1==b?"Груповия лимит е достигнат ({n} елемент максимум)":"Груповия лимит е достигнат ({n} елемента максимум)"]},selectAllText:"Избери всички",deselectAllText:"Размаркирай всички",multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-cro_CRO.js b/assets/lib/bootstrap-select/js/i18n/defaults-cro_CRO.js new file mode 100644 index 0000000..c785c9d --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-cro_CRO.js @@ -0,0 +1,44 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Odaberite stavku', + noneResultsText: 'Nema rezultata pretrage {0}', + countSelectedText: function (numSelected, numTotal) { + return (numSelected == 1) ? "{0} stavka selektirana" : "{0} stavke selektirane"; + }, + maxOptionsText: function (numAll, numGroup) { + return [ + (numAll == 1) ? 'Limit je postignut ({n} stvar maximalno)' : 'Limit je postignut ({n} stavke maksimalno)', + (numGroup == 1) ? 'Grupni limit je postignut ({n} stvar maksimalno)' : 'Grupni limit je postignut ({n} stavke maksimalno)' + ]; + }, + selectAllText: 'Selektiraj sve', + deselectAllText: 'Deselektiraj sve', + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-cro_CRO.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-cro_CRO.min.js new file mode 100644 index 0000000..c5e8247 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-cro_CRO.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Odaberite stavku",noneResultsText:"Nema rezultata pretrage {0}",countSelectedText:function(a,b){return 1==a?"{0} stavka selektirana":"{0} stavke selektirane"},maxOptionsText:function(a,b){return[1==a?"Limit je postignut ({n} stvar maximalno)":"Limit je postignut ({n} stavke maksimalno)",1==b?"Grupni limit je postignut ({n} stvar maksimalno)":"Grupni limit je postignut ({n} stavke maksimalno)"]},selectAllText:"Selektiraj sve",deselectAllText:"Deselektiraj sve",multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-cs_CZ.js b/assets/lib/bootstrap-select/js/i18n/defaults-cs_CZ.js new file mode 100644 index 0000000..f04d4da --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-cs_CZ.js @@ -0,0 +1,35 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Nic není vybráno', + noneResultsText: 'Žádné výsledky {0}', + countSelectedText: 'Označeno {0} z {1}', + maxOptionsText: ['Limit překročen ({n} {var} max)', 'Limit skupiny překročen ({n} {var} max)', ['položek', 'položka']], + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-cs_CZ.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-cs_CZ.min.js new file mode 100644 index 0000000..1f084c8 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-cs_CZ.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Nic není vybráno",noneResultsText:"Žádné výsledky {0}",countSelectedText:"Označeno {0} z {1}",maxOptionsText:["Limit překročen ({n} {var} max)","Limit skupiny překročen ({n} {var} max)",["položek","položka"]],multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-da_DK.js b/assets/lib/bootstrap-select/js/i18n/defaults-da_DK.js new file mode 100644 index 0000000..164ff4e --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-da_DK.js @@ -0,0 +1,44 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Intet valgt', + noneResultsText: 'Ingen resultater fundet {0}', + countSelectedText: function (numSelected, numTotal) { + return (numSelected == 1) ? "{0} valgt" : "{0} valgt"; + }, + maxOptionsText: function (numAll, numGroup) { + return [ + (numAll == 1) ? 'Begrænsning nået (max {n} valgt)' : 'Begrænsning nået (max {n} valgte)', + (numGroup == 1) ? 'Gruppe-begrænsning nået (max {n} valgt)' : 'Gruppe-begrænsning nået (max {n} valgte)' + ]; + }, + selectAllText: 'Markér alle', + deselectAllText: 'Afmarkér alle', + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-da_DK.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-da_DK.min.js new file mode 100644 index 0000000..e46f69d --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-da_DK.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Intet valgt",noneResultsText:"Ingen resultater fundet {0}",countSelectedText:function(a,b){return"{0} valgt"},maxOptionsText:function(a,b){return[1==a?"Begrænsning nået (max {n} valgt)":"Begrænsning nået (max {n} valgte)",1==b?"Gruppe-begrænsning nået (max {n} valgt)":"Gruppe-begrænsning nået (max {n} valgte)"]},selectAllText:"Markér alle",deselectAllText:"Afmarkér alle",multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-de_DE.js b/assets/lib/bootstrap-select/js/i18n/defaults-de_DE.js new file mode 100644 index 0000000..4bf7a60 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-de_DE.js @@ -0,0 +1,35 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Bitte wählen...', + noneResultsText: 'Keine Ergebnisse für {0}', + countSelectedText: '{0} von {1} ausgewählt', + maxOptionsText: ['Limit erreicht ({n} {var} max.)', 'Gruppen-Limit erreicht ({n} {var} max.)', ['Eintrag', 'Einträge']], + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-de_DE.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-de_DE.min.js new file mode 100644 index 0000000..f47b544 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-de_DE.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Bitte wählen...",noneResultsText:"Keine Ergebnisse für {0}",countSelectedText:"{0} von {1} ausgewählt",maxOptionsText:["Limit erreicht ({n} {var} max.)","Gruppen-Limit erreicht ({n} {var} max.)",["Eintrag","Einträge"]],multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-en_US.js b/assets/lib/bootstrap-select/js/i18n/defaults-en_US.js new file mode 100644 index 0000000..f633f96 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-en_US.js @@ -0,0 +1,44 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Nothing selected', + noneResultsText: 'No results match {0}', + countSelectedText: function (numSelected, numTotal) { + return (numSelected == 1) ? "{0} item selected" : "{0} items selected"; + }, + maxOptionsText: function (numAll, numGroup) { + return [ + (numAll == 1) ? 'Limit reached ({n} item max)' : 'Limit reached ({n} items max)', + (numGroup == 1) ? 'Group limit reached ({n} item max)' : 'Group limit reached ({n} items max)' + ]; + }, + selectAllText: 'Select All', + deselectAllText: 'Deselect All', + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-en_US.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-en_US.min.js new file mode 100644 index 0000000..74041dc --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-en_US.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Nothing selected",noneResultsText:"No results match {0}",countSelectedText:function(a,b){return 1==a?"{0} item selected":"{0} items selected"},maxOptionsText:function(a,b){return[1==a?"Limit reached ({n} item max)":"Limit reached ({n} items max)",1==b?"Group limit reached ({n} item max)":"Group limit reached ({n} items max)"]},selectAllText:"Select All",deselectAllText:"Deselect All",multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-es_CL.js b/assets/lib/bootstrap-select/js/i18n/defaults-es_CL.js new file mode 100644 index 0000000..1e7aa8d --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-es_CL.js @@ -0,0 +1,35 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'No hay selección', + noneResultsText: 'No hay resultados {0}', + countSelectedText: 'Seleccionados {0} de {1}', + maxOptionsText: ['Límite alcanzado ({n} {var} max)', 'Límite del grupo alcanzado({n} {var} max)', ['elementos', 'element']], + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-es_CL.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-es_CL.min.js new file mode 100644 index 0000000..2ac9a57 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-es_CL.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"No hay selección",noneResultsText:"No hay resultados {0}",countSelectedText:"Seleccionados {0} de {1}",maxOptionsText:["Límite alcanzado ({n} {var} max)","Límite del grupo alcanzado({n} {var} max)",["elementos","element"]],multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-eu.js b/assets/lib/bootstrap-select/js/i18n/defaults-eu.js new file mode 100644 index 0000000..a4e12f0 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-eu.js @@ -0,0 +1,35 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Hautapenik ez', + noneResultsText: 'Emaitzarik ez {0}', + countSelectedText: '{1}(e)tik {0} hautatuta', + maxOptionsText: ['Mugara iritsita ({n} {var} gehienez)', 'Taldearen mugara iritsita ({n} {var} gehienez)', ['elementu', 'elementu']], + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-eu.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-eu.min.js new file mode 100644 index 0000000..12b36d0 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-eu.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Hautapenik ez",noneResultsText:"Emaitzarik ez {0}",countSelectedText:"{1}(e)tik {0} hautatuta",maxOptionsText:["Mugara iritsita ({n} {var} gehienez)","Taldearen mugara iritsita ({n} {var} gehienez)",["elementu","elementu"]],multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-fa_IR.js b/assets/lib/bootstrap-select/js/i18n/defaults-fa_IR.js new file mode 100644 index 0000000..bcd65b0 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-fa_IR.js @@ -0,0 +1,37 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'چیزی انتخاب نشده است', + noneResultsText: 'هیج مشابهی برای {0} پیدا نشد', + countSelectedText: "{0} از {1} مورد انتخاب شده", + maxOptionsText: ['بیشتر ممکن نیست {حداکثر {n} عدد}', 'بیشتر ممکن نیست {حداکثر {n} عدد}'], + selectAllText: 'انتخاب همه', + deselectAllText: 'انتخاب هیچ کدام', + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-fa_IR.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-fa_IR.min.js new file mode 100644 index 0000000..0f2ef54 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-fa_IR.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"چیزی انتخاب نشده است",noneResultsText:"هیج مشابهی برای {0} پیدا نشد",countSelectedText:"{0} از {1} مورد انتخاب شده",maxOptionsText:["بیشتر ممکن نیست {حداکثر {n} عدد}","بیشتر ممکن نیست {حداکثر {n} عدد}"],selectAllText:"انتخاب همه",deselectAllText:"انتخاب هیچ کدام",multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-fi_FI.js b/assets/lib/bootstrap-select/js/i18n/defaults-fi_FI.js new file mode 100644 index 0000000..02c1a30 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-fi_FI.js @@ -0,0 +1,44 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Ei valintoja', + noneResultsText: 'Ei hakutuloksia {0}', + countSelectedText: function (numSelected, numTotal) { + return (numSelected == 1) ? "{0} valittu" : "{0} valitut"; + }, + maxOptionsText: function (numAll, numGroup) { + return [ + (numAll == 1) ? 'Valintojen maksimimäärä ({n} saavutettu)' : 'Valintojen maksimimäärä ({n} saavutettu)', + (numGroup == 1) ? 'Ryhmän maksimimäärä ({n} saavutettu)' : 'Ryhmän maksimimäärä ({n} saavutettu)' + ]; + }, + selectAllText: 'Valitse kaikki', + deselectAllText: 'Poista kaikki', + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-fi_FI.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-fi_FI.min.js new file mode 100644 index 0000000..4f467a9 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-fi_FI.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Ei valintoja",noneResultsText:"Ei hakutuloksia {0}",countSelectedText:function(a,b){return 1==a?"{0} valittu":"{0} valitut"},maxOptionsText:function(a,b){return["Valintojen maksimimäärä ({n} saavutettu)","Ryhmän maksimimäärä ({n} saavutettu)"]},selectAllText:"Valitse kaikki",deselectAllText:"Poista kaikki",multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-fr_FR.js b/assets/lib/bootstrap-select/js/i18n/defaults-fr_FR.js new file mode 100644 index 0000000..6d834e0 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-fr_FR.js @@ -0,0 +1,44 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Aucune sélection', + noneResultsText: 'Aucun résultat pour {0}', + countSelectedText: function (numSelected, numTotal) { + return (numSelected > 1) ? "{0} éléments sélectionnés" : "{0} élément sélectionné"; + }, + maxOptionsText: function (numAll, numGroup) { + return [ + (numAll > 1) ? 'Limite atteinte ({n} éléments max)' : 'Limite atteinte ({n} élément max)', + (numGroup > 1) ? 'Limite du groupe atteinte ({n} éléments max)' : 'Limite du groupe atteinte ({n} élément max)' + ]; + }, + multipleSeparator: ', ', + selectAllText: 'Tout Sélectionner', + deselectAllText: 'Tout Dé-selectionner', + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-fr_FR.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-fr_FR.min.js new file mode 100644 index 0000000..0c3c120 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-fr_FR.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Aucune sélection",noneResultsText:"Aucun résultat pour {0}",countSelectedText:function(a,b){return a>1?"{0} éléments sélectionnés":"{0} élément sélectionné"},maxOptionsText:function(a,b){return[a>1?"Limite atteinte ({n} éléments max)":"Limite atteinte ({n} élément max)",b>1?"Limite du groupe atteinte ({n} éléments max)":"Limite du groupe atteinte ({n} élément max)"]},multipleSeparator:", ",selectAllText:"Tout Sélectionner",deselectAllText:"Tout Dé-selectionner"}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-hu_HU.js b/assets/lib/bootstrap-select/js/i18n/defaults-hu_HU.js new file mode 100644 index 0000000..7f92ffc --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-hu_HU.js @@ -0,0 +1,44 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Válasszon!', + noneResultsText: 'Nincs találat {0}', + countSelectedText: function (numSelected, numTotal) { + return '{0} elem kiválasztva'; + }, + maxOptionsText: function (numAll, numGroup) { + return [ + 'Legfeljebb {n} elem választható', + 'A csoportban legfeljebb {n} elem választható' + ]; + }, + selectAllText: 'Mind', + deselectAllText: 'Egyik sem', + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-hu_HU.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-hu_HU.min.js new file mode 100644 index 0000000..650c4ef --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-hu_HU.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Válasszon!",noneResultsText:"Nincs találat {0}",countSelectedText:function(a,b){return"{0} elem kiválasztva"},maxOptionsText:function(a,b){return["Legfeljebb {n} elem választható","A csoportban legfeljebb {n} elem választható"]},selectAllText:"Mind",deselectAllText:"Egyik sem",multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-id_ID.js b/assets/lib/bootstrap-select/js/i18n/defaults-id_ID.js new file mode 100644 index 0000000..217c946 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-id_ID.js @@ -0,0 +1,37 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Tidak ada yang dipilih', + noneResultsText: 'Tidak ada yang cocok {0}', + countSelectedText: '{0} terpilih', + maxOptionsText: ['Mencapai batas (maksimum {n})', 'Mencapai batas grup (maksimum {n})'], + selectAllText: 'Pilih Semua', + deselectAllText: 'Hapus Semua', + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-id_ID.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-id_ID.min.js new file mode 100644 index 0000000..930e248 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-id_ID.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Tidak ada yang dipilih",noneResultsText:"Tidak ada yang cocok {0}",countSelectedText:"{0} terpilih",maxOptionsText:["Mencapai batas (maksimum {n})","Mencapai batas grup (maksimum {n})"],selectAllText:"Pilih Semua",deselectAllText:"Hapus Semua",multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-it_IT.js b/assets/lib/bootstrap-select/js/i18n/defaults-it_IT.js new file mode 100644 index 0000000..cd154c1 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-it_IT.js @@ -0,0 +1,35 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Nessuna selezione', + noneResultsText: 'Nessun risultato per {0}', + countSelectedText: 'Selezionati {0} di {1}', + maxOptionsText: ['Limite raggiunto ({n} {var} max)', 'Limite del gruppo raggiunto ({n} {var} max)', ['elementi', 'elemento']], + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-it_IT.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-it_IT.min.js new file mode 100644 index 0000000..f66fb1e --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-it_IT.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Nessuna selezione",noneResultsText:"Nessun risultato per {0}",countSelectedText:"Selezionati {0} di {1}",maxOptionsText:["Limite raggiunto ({n} {var} max)","Limite del gruppo raggiunto ({n} {var} max)",["elementi","elemento"]],multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-ko_KR.js b/assets/lib/bootstrap-select/js/i18n/defaults-ko_KR.js new file mode 100644 index 0000000..54b8d60 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-ko_KR.js @@ -0,0 +1,44 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: '항목을 선택해주세요', + noneResultsText: '{0} 검색 결과가 없습니다', + countSelectedText: function (numSelected, numTotal) { + return "{0}개를 선택하였습니다"; + }, + maxOptionsText: function (numAll, numGroup) { + return [ + '{n}개까지 선택 가능합니다', + '해당 그룹은 {n}개까지 선택 가능합니다' + ]; + }, + selectAllText: '전체선택', + deselectAllText: '전체해제', + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-ko_KR.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-ko_KR.min.js new file mode 100644 index 0000000..822ad64 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-ko_KR.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"항목을 선택해주세요",noneResultsText:"{0} 검색 결과가 없습니다",countSelectedText:function(a,b){return"{0}개를 선택하였습니다"},maxOptionsText:function(a,b){return["{n}개까지 선택 가능합니다","해당 그룹은 {n}개까지 선택 가능합니다"]},selectAllText:"전체선택",deselectAllText:"전체해제",multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-lt_LT.js b/assets/lib/bootstrap-select/js/i18n/defaults-lt_LT.js new file mode 100644 index 0000000..6c4dbab --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-lt_LT.js @@ -0,0 +1,44 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Niekas nepasirinkta', + noneResultsText: 'Niekas nesutapo su {0}', + countSelectedText: function (numSelected, numTotal) { + return (numSelected == 1) ? "{0} elementas pasirinktas" : "{0} elementai(-ų) pasirinkta"; + }, + maxOptionsText: function (numAll, numGroup) { + return [ + (numAll == 1) ? 'Pasiekta riba ({n} elementas daugiausiai)' : 'Riba pasiekta ({n} elementai(-ų) daugiausiai)', + (numGroup == 1) ? 'Grupės riba pasiekta ({n} elementas daugiausiai)' : 'Grupės riba pasiekta ({n} elementai(-ų) daugiausiai)' + ]; + }, + selectAllText: 'Pasirinkti visus', + deselectAllText: 'Atmesti visus', + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-lt_LT.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-lt_LT.min.js new file mode 100644 index 0000000..ff0cdcb --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-lt_LT.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Niekas nepasirinkta",noneResultsText:"Niekas nesutapo su {0}",countSelectedText:function(a,b){return 1==a?"{0} elementas pasirinktas":"{0} elementai(-ų) pasirinkta"},maxOptionsText:function(a,b){return[1==a?"Pasiekta riba ({n} elementas daugiausiai)":"Riba pasiekta ({n} elementai(-ų) daugiausiai)",1==b?"Grupės riba pasiekta ({n} elementas daugiausiai)":"Grupės riba pasiekta ({n} elementai(-ų) daugiausiai)"]},selectAllText:"Pasirinkti visus",deselectAllText:"Atmesti visus",multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-nb_NO.js b/assets/lib/bootstrap-select/js/i18n/defaults-nb_NO.js new file mode 100644 index 0000000..2f1f9b9 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-nb_NO.js @@ -0,0 +1,44 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Ingen valgt', + noneResultsText: 'Søket gir ingen treff {0}', + countSelectedText: function (numSelected, numTotal) { + return (numSelected == 1) ? "{0} alternativ valgt" : "{0} alternativer valgt"; + }, + maxOptionsText: function (numAll, numGroup) { + return [ + (numAll == 1) ? 'Grense nådd (maks {n} valg)' : 'Grense nådd (maks {n} valg)', + (numGroup == 1) ? 'Grense for grupper nådd (maks {n} grupper)' : 'Grense for grupper nådd (maks {n} grupper)' + ]; + }, + selectAllText: 'Merk alle', + deselectAllText: 'Fjern alle', + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-nb_NO.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-nb_NO.min.js new file mode 100644 index 0000000..2eff722 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-nb_NO.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Ingen valgt",noneResultsText:"Søket gir ingen treff {0}",countSelectedText:function(a,b){return 1==a?"{0} alternativ valgt":"{0} alternativer valgt"},maxOptionsText:function(a,b){return["Grense nådd (maks {n} valg)","Grense for grupper nådd (maks {n} grupper)"]},selectAllText:"Merk alle",deselectAllText:"Fjern alle",multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-nl_NL.js b/assets/lib/bootstrap-select/js/i18n/defaults-nl_NL.js new file mode 100644 index 0000000..fa6c95a --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-nl_NL.js @@ -0,0 +1,35 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Niets geselecteerd', + noneResultsText: 'Geen resultaten gevonden voor {0}', + countSelectedText: '{0} van {1} geselecteerd', + maxOptionsText: ['Limiet bereikt ({n} {var} max)', 'Groep limiet bereikt ({n} {var} max)', ['items', 'item']], + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-nl_NL.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-nl_NL.min.js new file mode 100644 index 0000000..d2bc9d2 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-nl_NL.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Niets geselecteerd",noneResultsText:"Geen resultaten gevonden voor {0}",countSelectedText:"{0} van {1} geselecteerd",maxOptionsText:["Limiet bereikt ({n} {var} max)","Groep limiet bereikt ({n} {var} max)",["items","item"]],multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-pl_PL.js b/assets/lib/bootstrap-select/js/i18n/defaults-pl_PL.js new file mode 100644 index 0000000..c75ee1f --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-pl_PL.js @@ -0,0 +1,37 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Nic nie zaznaczono', + noneResultsText: 'Brak wyników wyszukiwania {0}', + countSelectedText: 'Zaznaczono {0} z {1}', + maxOptionsText: ['Osiągnięto limit ({n} {var} max)', 'Limit grupy osiągnięty ({n} {var} max)', ['elementy', 'element']], + selectAll: 'Zaznacz wszystkie', + deselectAll: 'Odznacz wszystkie', + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-pl_PL.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-pl_PL.min.js new file mode 100644 index 0000000..078297f --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-pl_PL.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Nic nie zaznaczono",noneResultsText:"Brak wyników wyszukiwania {0}",countSelectedText:"Zaznaczono {0} z {1}",maxOptionsText:["Osiągnięto limit ({n} {var} max)","Limit grupy osiągnięty ({n} {var} max)",["elementy","element"]],selectAll:"Zaznacz wszystkie",deselectAll:"Odznacz wszystkie",multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-pt_BR.js b/assets/lib/bootstrap-select/js/i18n/defaults-pt_BR.js new file mode 100644 index 0000000..82e4e7e --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-pt_BR.js @@ -0,0 +1,35 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Nada selecionado', + noneResultsText: 'Nada encontrado contendo {0}', + countSelectedText: 'Selecionado {0} de {1}', + maxOptionsText: ['Limite excedido (máx. {n} {var})', 'Limite do grupo excedido (máx. {n} {var})', ['itens', 'item']], + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-pt_BR.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-pt_BR.min.js new file mode 100644 index 0000000..3f41135 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-pt_BR.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Nada selecionado",noneResultsText:"Nada encontrado contendo {0}",countSelectedText:"Selecionado {0} de {1}",maxOptionsText:["Limite excedido (máx. {n} {var})","Limite do grupo excedido (máx. {n} {var})",["itens","item"]],multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-pt_PT.js b/assets/lib/bootstrap-select/js/i18n/defaults-pt_PT.js new file mode 100644 index 0000000..6d05953 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-pt_PT.js @@ -0,0 +1,35 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { +$.fn.selectpicker.defaults = { +noneSelectedText: 'Nenhum seleccionado', +noneResultsText: 'Sem resultados contendo {0}', +countSelectedText: 'Selecionado {0} de {1}', +maxOptionsText: ['Limite ultrapassado (máx. {n} {var})', 'Limite de seleções ultrapassado (máx. {n} {var})', ['itens', 'item']], +multipleSeparator: ', ' +}; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-pt_PT.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-pt_PT.min.js new file mode 100644 index 0000000..05a667b --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-pt_PT.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Nenhum seleccionado",noneResultsText:"Sem resultados contendo {0}",countSelectedText:"Selecionado {0} de {1}",maxOptionsText:["Limite ultrapassado (máx. {n} {var})","Limite de seleções ultrapassado (máx. {n} {var})",["itens","item"]],multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-ro_RO.js b/assets/lib/bootstrap-select/js/i18n/defaults-ro_RO.js new file mode 100644 index 0000000..9e234d7 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-ro_RO.js @@ -0,0 +1,35 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Nu a fost selectat nimic', + noneResultsText: 'Nu exista niciun rezultat {0}', + countSelectedText: '{0} din {1} selectat(e)', + maxOptionsText: ['Limita a fost atinsa ({n} {var} max)', 'Limita de grup a fost atinsa ({n} {var} max)', ['iteme', 'item']], + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-ro_RO.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-ro_RO.min.js new file mode 100644 index 0000000..19570c1 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-ro_RO.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Nu a fost selectat nimic",noneResultsText:"Nu exista niciun rezultat {0}",countSelectedText:"{0} din {1} selectat(e)",maxOptionsText:["Limita a fost atinsa ({n} {var} max)","Limita de grup a fost atinsa ({n} {var} max)",["iteme","item"]],multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-ru_RU.js b/assets/lib/bootstrap-select/js/i18n/defaults-ru_RU.js new file mode 100644 index 0000000..4bc3d90 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-ru_RU.js @@ -0,0 +1,36 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Ничего не выбрано', + noneResultsText: 'Совпадений не найдено {0}', + countSelectedText: 'Выбрано {0} из {1}', + maxOptionsText: ['Достигнут предел ({n} {var} максимум)', 'Достигнут предел в группе ({n} {var} максимум)', ['items', 'item']], + doneButtonText: 'Закрыть', + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-ru_RU.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-ru_RU.min.js new file mode 100644 index 0000000..97983a3 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-ru_RU.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Ничего не выбрано",noneResultsText:"Совпадений не найдено {0}",countSelectedText:"Выбрано {0} из {1}",maxOptionsText:["Достигнут предел ({n} {var} максимум)","Достигнут предел в группе ({n} {var} максимум)",["items","item"]],doneButtonText:"Закрыть",multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-sk_SK.js b/assets/lib/bootstrap-select/js/i18n/defaults-sk_SK.js new file mode 100644 index 0000000..d9083ab --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-sk_SK.js @@ -0,0 +1,37 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Vyberte zo zoznamu', + noneResultsText: 'Pre výraz {0} neboli nájdené žiadne výsledky', + countSelectedText: 'Vybrané {0} z {1}', + maxOptionsText: ['Limit prekročený ({n} {var} max)', 'Limit skupiny prekročený ({n} {var} max)', ['položiek', 'položka']], + selectAllText: 'Vybrať všetky', + deselectAllText: 'Zrušiť výber', + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-sk_SK.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-sk_SK.min.js new file mode 100644 index 0000000..ca58430 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-sk_SK.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Vyberte zo zoznamu",noneResultsText:"Pre výraz {0} neboli nájdené žiadne výsledky",countSelectedText:"Vybrané {0} z {1}",maxOptionsText:["Limit prekročený ({n} {var} max)","Limit skupiny prekročený ({n} {var} max)",["položiek","položka"]],selectAllText:"Vybrať všetky",deselectAllText:"Zrušiť výber",multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-sl_SI.js b/assets/lib/bootstrap-select/js/i18n/defaults-sl_SI.js new file mode 100644 index 0000000..3c57537 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-sl_SI.js @@ -0,0 +1,44 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Nič izbranega', + noneResultsText: 'Ni zadetkov za {0}', + countSelectedText: function (numSelected, numTotal) { + "Število izbranih: {0}"; + }, + maxOptionsText: function (numAll, numGroup) { + return [ + 'Omejitev dosežena (max. izbranih: {n})', + 'Omejitev skupine dosežena (max. izbranih: {n})' + ]; + }, + selectAllText: 'Izberi vse', + deselectAllText: 'Počisti izbor', + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-sl_SI.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-sl_SI.min.js new file mode 100644 index 0000000..c00ae9e --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-sl_SI.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Nič izbranega",noneResultsText:"Ni zadetkov za {0}",countSelectedText:function(a,b){"Število izbranih: {0}"},maxOptionsText:function(a,b){return["Omejitev dosežena (max. izbranih: {n})","Omejitev skupine dosežena (max. izbranih: {n})"]},selectAllText:"Izberi vse",deselectAllText:"Počisti izbor",multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-sv_SE.js b/assets/lib/bootstrap-select/js/i18n/defaults-sv_SE.js new file mode 100644 index 0000000..b764896 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-sv_SE.js @@ -0,0 +1,44 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Inget valt', + noneResultsText: 'Inget sökresultat matchar {0}', + countSelectedText: function (numSelected, numTotal) { + return (numSelected === 1) ? "{0} alternativ valt" : "{0} alternativ valda"; + }, + maxOptionsText: function (numAll, numGroup) { + return [ + 'Gräns uppnåd (max {n} alternativ)', + 'Gräns uppnåd (max {n} gruppalternativ)' + ]; + }, + selectAllText: 'Markera alla', + deselectAllText: 'Avmarkera alla', + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-sv_SE.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-sv_SE.min.js new file mode 100644 index 0000000..2e82662 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-sv_SE.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Inget valt",noneResultsText:"Inget sökresultat matchar {0}",countSelectedText:function(a,b){return 1===a?"{0} alternativ valt":"{0} alternativ valda"},maxOptionsText:function(a,b){return["Gräns uppnåd (max {n} alternativ)","Gräns uppnåd (max {n} gruppalternativ)"]},selectAllText:"Markera alla",deselectAllText:"Avmarkera alla",multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-tr_TR.js b/assets/lib/bootstrap-select/js/i18n/defaults-tr_TR.js new file mode 100644 index 0000000..b03cf55 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-tr_TR.js @@ -0,0 +1,44 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Hiçbiri seçilmedi', + noneResultsText: 'Hiçbir sonuç bulunamadı {0}', + countSelectedText: function (numSelected, numTotal) { + return (numSelected == 1) ? "{0} öğe seçildi" : "{0} öğe seçildi"; + }, + maxOptionsText: function (numAll, numGroup) { + return [ + (numAll == 1) ? 'Limit aşıldı (maksimum {n} sayıda öğe )' : 'Limit aşıldı (maksimum {n} sayıda öğe)', + (numGroup == 1) ? 'Grup limiti aşıldı (maksimum {n} sayıda öğe)' : 'Grup limiti aşıldı (maksimum {n} sayıda öğe)' + ]; + }, + selectAllText: 'Tümünü Seç', + deselectAllText: 'Seçiniz', + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-tr_TR.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-tr_TR.min.js new file mode 100644 index 0000000..7a7c696 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-tr_TR.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Hiçbiri seçilmedi",noneResultsText:"Hiçbir sonuç bulunamadı {0}",countSelectedText:function(a,b){return"{0} öğe seçildi"},maxOptionsText:function(a,b){return[1==a?"Limit aşıldı (maksimum {n} sayıda öğe )":"Limit aşıldı (maksimum {n} sayıda öğe)","Grup limiti aşıldı (maksimum {n} sayıda öğe)"]},selectAllText:"Tümünü Seç",deselectAllText:"Seçiniz",multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-ua_UA.js b/assets/lib/bootstrap-select/js/i18n/defaults-ua_UA.js new file mode 100644 index 0000000..690523c --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-ua_UA.js @@ -0,0 +1,35 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: 'Нічого не вибрано', + noneResultsText: 'Збігів не знайдено {0}', + countSelectedText: 'Вибрано {0} із {1}', + maxOptionsText: ['Досягнута межа ({n} {var} максимум)', 'Досягнута межа в групі ({n} {var} максимум)', ['items', 'item']], + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-ua_UA.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-ua_UA.min.js new file mode 100644 index 0000000..6ce4b89 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-ua_UA.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"Нічого не вибрано",noneResultsText:"Збігів не знайдено {0}",countSelectedText:"Вибрано {0} із {1}",maxOptionsText:["Досягнута межа ({n} {var} максимум)","Досягнута межа в групі ({n} {var} максимум)",["items","item"]],multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-zh_CN.js b/assets/lib/bootstrap-select/js/i18n/defaults-zh_CN.js new file mode 100644 index 0000000..3d1582f --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-zh_CN.js @@ -0,0 +1,35 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: '没有选中任何项', + noneResultsText: '没有找到匹配项', + countSelectedText: '选中{1}中的{0}项', + maxOptionsText: ['超出限制 (最多选择{n}项)', '组选择超出限制(最多选择{n}组)'], + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-zh_CN.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-zh_CN.min.js new file mode 100644 index 0000000..ff0c88d --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-zh_CN.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"没有选中任何项",noneResultsText:"没有找到匹配项",countSelectedText:"选中{1}中的{0}项",maxOptionsText:["超出限制 (最多选择{n}项)","组选择超出限制(最多选择{n}组)"],multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-zh_TW.js b/assets/lib/bootstrap-select/js/i18n/defaults-zh_TW.js new file mode 100644 index 0000000..5da8ea4 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-zh_TW.js @@ -0,0 +1,37 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ + +(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module unless amdModuleId is set + define(["jquery"], function (a0) { + return (factory(a0)); + }); + } else if (typeof exports === 'object') { + // Node. Does not work with strict CommonJS, but + // only CommonJS-like environments that support module.exports, + // like Node. + module.exports = factory(require("jquery")); + } else { + factory(jQuery); + } +}(this, function (jQuery) { + +(function ($) { + $.fn.selectpicker.defaults = { + noneSelectedText: '沒有選取任何項目', + noneResultsText: '沒有找到符合的結果', + countSelectedText: '已經選取{0}個項目', + maxOptionsText: ['超過限制 (最多選擇{n}項)', '超過限制(最多選擇{n}組)'], + selectAllText: '選取全部', + deselectAllText: '全部取消', + multipleSeparator: ', ' + }; +})(jQuery); + + +})); diff --git a/assets/lib/bootstrap-select/js/i18n/defaults-zh_TW.min.js b/assets/lib/bootstrap-select/js/i18n/defaults-zh_TW.min.js new file mode 100644 index 0000000..68454e1 --- /dev/null +++ b/assets/lib/bootstrap-select/js/i18n/defaults-zh_TW.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap-select v1.10.0 (http://silviomoreto.github.io/bootstrap-select) + * + * Copyright 2013-2016 bootstrap-select + * Licensed under MIT (https://github.com/silviomoreto/bootstrap-select/blob/master/LICENSE) + */ +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){!function(a){a.fn.selectpicker.defaults={noneSelectedText:"沒有選取任何項目",noneResultsText:"沒有找到符合的結果",countSelectedText:"已經選取{0}個項目",maxOptionsText:["超過限制 (最多選擇{n}項)","超過限制(最多選擇{n}組)"],selectAllText:"選取全部",deselectAllText:"全部取消",multipleSeparator:", "}}(a)}); \ No newline at end of file diff --git a/data.xlsx b/data.xlsx deleted file mode 100644 index 13dce20e115ee1783b9408926131d0a489b3f7da..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 62191 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�P9*<@Y#^x?n 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 diff --git a/projects/templates/projects/portfolio_form.html b/projects/templates/projects/portfolio_form.html index f2dc34a..95b8a4e 100644 --- a/projects/templates/projects/portfolio_form.html +++ b/projects/templates/projects/portfolio_form.html @@ -1,4 +1,4 @@ -{% extends "base.html" %} +{% extends 'partials/base.html' %} {% block content %}

    Добавление

    diff --git a/projects/templates/projects/project_detail.html b/projects/templates/projects/project_detail.html index 22cb98b..25fadab 100644 --- a/projects/templates/projects/project_detail.html +++ b/projects/templates/projects/project_detail.html @@ -1,8 +1,8 @@ -{% extends "base.html" %} +{% extends 'partials/base.html' %} {% load staticfiles %} {% block content %} {% load humanize %} - {% load l10n %} +

    {{ object }}

    diff --git a/projects/templates/projects/project_detail1.html b/projects/templates/projects/project_detail1.html deleted file mode 100644 index 7aa812f..0000000 --- a/projects/templates/projects/project_detail1.html +++ /dev/null @@ -1,279 +0,0 @@ -{% extends "base.html" %} -{#{% block content %}#} - - -{#{% endblock %}#} -{% block content %} -
    -
    -
    -

    {{ object }}

    -
    -
    -
    -
    -
    - execitor-image -
    -

    - {{ object.get_full_name }} -

    - - -
    -
    -
    -

    - Специализации: -

    - -
    - Интерьеры -
    -
    - Визуализация/3D -
    -
    -
    -
    -
      -
    • - 13.0.2016 -
    • -
    • - Техническое сопровождение -
    • -
    -
    -
    -

    Есть допуск СРО

    -
    -
    -
    -
    -
    -
    -
      -
    • - Местоположение: Россия, Москва -
    • -
    • - Классификация здания: Коттедж -
    • -
    • - Вид строительства: Новое -
    • -
    -
    -
    -

    - {{ object.text }} -

    -
    - -
    -
    -
    -

    Исполнители

    -
    -
    -
    - - - -
    -
    -
    -
    -
    -

    Сравнить кандидатов

    -
    -
    - {% if perms.projects.add_answer %} - -

    Оставить ответ

    - - {{ form.errors }} - {% csrf_token %} - - {% for field in form %} -
    - {{ field.label }} - {{ field }} -
    - {% endfor %} - - - {% endif %} -
    -

    Новые исполнители

    -
    -
    - - {% for answer in object.answers.all %} -
    -
    -
    - execitor-image -
    -

    - Иванов Петр Иванович [ivanov_petr] -

    - -
    Свободен
    -
    -
    - -
    -
    -

    Есть допуск СРО

    -
    -
    -
    -

    Цена: - {{ answer.cost }} - -

    -

    - Срок: {{ answer.term }} {{ answer.term_type }} -

    -

    Опубликован:{{ answer.created }}

    -
    - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    - Иванов Петр Иванович -

    - - 13.0.2016 / 21:05 - -
    - - - - - -
    -

    - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. Proin sodales pulvinar tempor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam fermentum, nulla luctus pharetra vulputate, felis tellus mollis orci, sed rhoncus sapien nunc eget odio. -

    -
    -
    -
    -
    -

    - Иванов Петр Иванович -

    - - 13.0.2016 / 21:05 - -

    - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. Proin sodales pulvinar tempor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam fermentum, nulla luctus pharetra vulputate, felis tellus mollis orci, sed rhoncus sapien nunc eget odio. -

    - - Ответить - -
    -
    -
    -
    - {% endfor %} -
    -
    - -
    - -{% endblock %} diff --git a/projects/templates/projects/project_form.html b/projects/templates/projects/project_form.html index 8685b88..6b4fea0 100644 --- a/projects/templates/projects/project_form.html +++ b/projects/templates/projects/project_form.html @@ -1,6 +1,4 @@ -{% extends "base.html" %} - - +{% extends 'partials/base.html' %} {% block content %}
    diff --git a/projects/templates/projects/project_list.html b/projects/templates/projects/project_list.html index 52c77a2..84e7a07 100644 --- a/projects/templates/projects/project_list.html +++ b/projects/templates/projects/project_list.html @@ -1,4 +1,4 @@ -{% extends "base.html" %} +{% extends 'partials/base.html' %} {% block content %}
    diff --git a/specializations/templates/specializations/specialization_detail.html b/specializations/templates/specializations/specialization_detail.html index aa5eb66..efe0bbe 100644 --- a/specializations/templates/specializations/specialization_detail.html +++ b/specializations/templates/specializations/specialization_detail.html @@ -1,4 +1,4 @@ -{% extends "base.html" %} +{% extends 'partials/base.html' %} {% block content %} {{ object }} {% endblock %} diff --git a/specializations/templates/specializations/specialization_list.html b/specializations/templates/specializations/specialization_list.html index 37e8f3b..6dada02 100644 --- a/specializations/templates/specializations/specialization_list.html +++ b/specializations/templates/specializations/specialization_list.html @@ -1,4 +1,4 @@ -{% extends "base.html" %} +{% extends 'partials/base.html' %} {% block content %}

    Специализации

    {% load mptt_tags %} diff --git a/templates/_layout.html b/templates/_layout.html deleted file mode 100644 index cec107f..0000000 --- a/templates/_layout.html +++ /dev/null @@ -1,25 +0,0 @@ -{% load staticfiles %} - - - - - - - - - - - - - - - - -{% block content %}{% endblock %} - - - - - - diff --git a/templates/archilance/home.html b/templates/archilance/home.html deleted file mode 100644 index 2b89e95..0000000 --- a/templates/archilance/home.html +++ /dev/null @@ -1 +0,0 @@ -{% extends 'base2.html' %} diff --git a/templates/base.html b/templates/base.html deleted file mode 100644 index b0113dc..0000000 --- a/templates/base.html +++ /dev/null @@ -1,133 +0,0 @@ -{% load staticfiles %} - - - - - - - Archilance - - - - - - - - - - -
    -
    -
    -
    - -
    -
    - -
    - -
    -
    -
    -
    -
    - {% block content %} - - {% endblock %} - -
    -
    - - - - - -{% block js_block %} {% endblock %} - - diff --git a/templates/base2.html b/templates/home.html similarity index 75% rename from templates/base2.html rename to templates/home.html index 27dbb1f..a2a2189 100644 --- a/templates/base2.html +++ b/templates/home.html @@ -1,20 +1,9 @@ +{% extends 'partials/base.html' %} + {% load staticfiles %} - - - - - - - Archilance - - - - - - - + + +{% block content %}
    @@ -86,8 +75,4 @@
    - - - - - +{% endblock %} diff --git a/templates/main.html b/templates/main.html deleted file mode 100644 index f45ff2d..0000000 --- a/templates/main.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - - - Archilance - - - - - - -
    - -
    -
    -

    Основная задача сайта

    -
    -
    -
    -
    -
    -
    - Я исполнитель -

    - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. -

    -
    -
    -
    -
    -
    -
    -
    - Я исполнитель -

    - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean euismod bibendum laoreet. Proin gravida dolor sit amet lacus accumsan et viverra justo commodo. -

    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - - - - - \ No newline at end of file diff --git a/templates/partials/base.html b/templates/partials/base.html new file mode 100644 index 0000000..28cc497 --- /dev/null +++ b/templates/partials/base.html @@ -0,0 +1,34 @@ +{% load staticfiles %} + + + + + + + + + +Archilance + + + + + + + + + + + + + + +{% block content %}{% endblock %} + + + + + + + + diff --git a/templates/registration/login.html b/templates/registration/login.html index c50dcfb..f94e158 100644 --- a/templates/registration/login.html +++ b/templates/registration/login.html @@ -1,4 +1,5 @@ -{% extends 'base.html' %} +{% extends 'partials/base.html' %} + {% block content %}

    Вход на сайт

    @@ -18,5 +19,4 @@
    - {% endblock %} diff --git a/templates/registration/registration_form.html b/templates/registration/registration_form.html index 21bdfe8..109486b 100644 --- a/templates/registration/registration_form.html +++ b/templates/registration/registration_form.html @@ -1,4 +1,5 @@ -{% extends 'base.html' %} +{% extends 'partials/base.html' %} + {% block content %}

    Регистрация

    diff --git a/test.py b/test.py deleted file mode 100644 index d3f7e44..0000000 --- a/test.py +++ /dev/null @@ -1,5 +0,0 @@ -import xlrd -rb = xlrd.open_workbook('data.xlsx') -sheet = rb.sheet_by_index(0) -for rx in range(sheet.nrows): - print(sheet.row(rx)) diff --git a/users/templates/users/contractor.html b/users/templates/users/contractor.html index 1a8e17a..50f2e13 100644 --- a/users/templates/users/contractor.html +++ b/users/templates/users/contractor.html @@ -1,4 +1,4 @@ -{% extends "base.html" %} +{% extends 'partials/base.html' %} {% block content %} diff --git a/users/templates/users/contractor_list.html b/users/templates/users/contractor_list.html index 9b073eb..18492fa 100644 --- a/users/templates/users/contractor_list.html +++ b/users/templates/users/contractor_list.html @@ -1,4 +1,4 @@ -{% extends "base.html" %} +{% extends 'partials/base.html' %} {% block content %} diff --git a/users/templates/users/customer.html b/users/templates/users/customer.html index f58bcf1..9fa1040 100644 --- a/users/templates/users/customer.html +++ b/users/templates/users/customer.html @@ -1,4 +1,4 @@ -{% extends 'base.html' %} +{% extends 'partials/base.html' %} {% block content %}
    diff --git a/users/templates/users/login.html b/users/templates/users/login.html index 1ef777b..cf8fe80 100644 --- a/users/templates/users/login.html +++ b/users/templates/users/login.html @@ -1,4 +1,4 @@ -{% extends 'base.html' %} +{% extends 'partials/base.html' %} {% block content %}
    @@ -33,4 +33,4 @@
    -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/users/templates/users/users_info_list.html b/users/templates/users/users_info_list.html index 3648c78..a0b5c10 100644 --- a/users/templates/users/users_info_list.html +++ b/users/templates/users/users_info_list.html @@ -1,4 +1,4 @@ -{% extends "base.html" %} +{% extends 'partials/base.html' %} {% block content %} @@ -12,4 +12,4 @@

    {{ cust }}

    {% endfor %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/users/templates/users/users_list.html b/users/templates/users/users_list.html index fc507a8..b521206 100644 --- a/users/templates/users/users_list.html +++ b/users/templates/users/users_list.html @@ -1,4 +1,4 @@ -{% extends "base.html" %} +{% extends 'partials/base.html' %} {% block content %} @@ -58,4 +58,4 @@ {% endfor %}
    -{% endblock %} \ No newline at end of file +{% endblock %}