diff --git a/main/inc/lib/javascript/chosen/chosen.css b/main/inc/lib/javascript/chosen/chosen.css
index 9d308eabbf..2c270562c7 100644
--- a/main/inc/lib/javascript/chosen/chosen.css
+++ b/main/inc/lib/javascript/chosen/chosen.css
@@ -1,75 +1,75 @@
/* @group Base */
.chzn-container {
- font-size: 13px;
position: relative;
display: inline-block;
+ vertical-align: middle;
+ font-size: 13px;
zoom: 1;
*display: inline;
}
.chzn-container .chzn-drop {
- background: #fff;
+ position: absolute;
+ top: 100%;
+ left: -9999px;
+ z-index: 1010;
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
+ width: 100%;
border: 1px solid #aaa;
border-top: 0;
- position: absolute;
- top: 29px;
+ background: #fff;
+ box-shadow: 0 4px 5px rgba(0, 0, 0, 0.15);
+}
+.chzn-container.chzn-with-drop .chzn-drop {
left: 0;
- -webkit-box-shadow: 0 4px 5px rgba(0,0,0,.15);
- -moz-box-shadow : 0 4px 5px rgba(0,0,0,.15);
- box-shadow : 0 4px 5px rgba(0,0,0,.15);
- z-index: 1010;
}
-/* @end */
+/* @end */
/* @group Single Chosen */
.chzn-container-single .chzn-single {
- background-color: #ffffff;
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee', GradientType=0 );
- background-image: -webkit-gradient(linear, 0 0, 0 100%, color-stop(20%, #ffffff), color-stop(50%, #f6f6f6), color-stop(52%, #eeeeee), color-stop(100%, #f4f4f4));
- background-image: -webkit-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
- background-image: -moz-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
- background-image: -o-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
- background-image: linear-gradient(#ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
- -webkit-border-radius: 5px;
- -moz-border-radius : 5px;
- border-radius : 5px;
- -moz-background-clip : padding;
- -webkit-background-clip: padding-box;
- background-clip : padding-box;
- border: 1px solid #aaaaaa;
- -webkit-box-shadow: 0 0 3px #ffffff inset, 0 1px 1px rgba(0,0,0,0.1);
- -moz-box-shadow : 0 0 3px #ffffff inset, 0 1px 1px rgba(0,0,0,0.1);
- box-shadow : 0 0 3px #ffffff inset, 0 1px 1px rgba(0,0,0,0.1);
+ position: relative;
display: block;
overflow: hidden;
- white-space: nowrap;
- position: relative;
- height: 23px;
- line-height: 24px;
padding: 0 0 0 8px;
- color: #444444;
+ height: 23px;
+ border: 1px solid #aaa;
+ border-radius: 5px;
+ background-color: #fff;
+ background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #ffffff), color-stop(50%, #f6f6f6), color-stop(52%, #eeeeee), color-stop(100%, #f4f4f4));
+ background: -webkit-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
+ background: -moz-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
+ background: -o-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
+ background: linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
+ background-clip: padding-box;
+ box-shadow: 0 0 3px white inset, 0 1px 1px rgba(0, 0, 0, 0.1);
+ color: #444;
text-decoration: none;
+ white-space: nowrap;
+ line-height: 24px;
}
.chzn-container-single .chzn-default {
color: #999;
}
.chzn-container-single .chzn-single span {
- margin-right: 26px;
display: block;
overflow: hidden;
- white-space: nowrap;
- -o-text-overflow: ellipsis;
- -ms-text-overflow: ellipsis;
+ margin-right: 26px;
text-overflow: ellipsis;
+ white-space: nowrap;
+}
+.chzn-container-single .chzn-single-with-deselect span {
+ margin-right: 38px;
}
.chzn-container-single .chzn-single abbr {
- display: block;
position: absolute;
- right: 26px;
top: 6px;
+ right: 26px;
+ display: block;
width: 12px;
height: 12px;
- font-size: 1px;
background: url('chosen-sprite.png') -42px 1px no-repeat;
+ font-size: 1px;
}
.chzn-container-single .chzn-single abbr:hover {
background-position: -42px -10px;
@@ -79,286 +79,258 @@
}
.chzn-container-single .chzn-single div {
position: absolute;
- right: 0;
top: 0;
+ right: 0;
display: block;
- height: 100%;
width: 18px;
+ height: 100%;
}
.chzn-container-single .chzn-single div b {
- background: url('chosen-sprite.png') no-repeat 0px 2px;
display: block;
width: 100%;
height: 100%;
+ background: url('chosen-sprite.png') no-repeat 0px 2px;
}
.chzn-container-single .chzn-search {
- padding: 3px 4px;
position: relative;
+ z-index: 1010;
margin: 0;
+ padding: 3px 4px;
white-space: nowrap;
- z-index: 1010;
}
.chzn-container-single .chzn-search input {
- background: #fff url('chosen-sprite.png') no-repeat 100% -20px;
- background: url('chosen-sprite.png') no-repeat 100% -20px, -webkit-gradient(linear, 0 0, 0 100%, color-stop(1%, #eeeeee), color-stop(15%, #ffffff));
- background: url('chosen-sprite.png') no-repeat 100% -20px, -webkit-linear-gradient(top, #eeeeee 1%, #ffffff 15%);
- background: url('chosen-sprite.png') no-repeat 100% -20px, -moz-linear-gradient(top, #eeeeee 1%, #ffffff 15%);
- background: url('chosen-sprite.png') no-repeat 100% -20px, -o-linear-gradient(top, #eeeeee 1%, #ffffff 15%);
- background: url('chosen-sprite.png') no-repeat 100% -20px, linear-gradient(#eeeeee 1%, #ffffff 15%);
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
margin: 1px 0;
padding: 4px 20px 4px 5px;
+ width: 100%;
outline: 0;
border: 1px solid #aaa;
- font-family: sans-serif;
+ background: white url('chosen-sprite.png') no-repeat 100% -20px;
+ background: url('chosen-sprite.png') no-repeat 100% -20px, -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(1%, #eeeeee), color-stop(15%, #ffffff));
+ background: url('chosen-sprite.png') no-repeat 100% -20px, -webkit-linear-gradient(#eeeeee 1%, #ffffff 15%);
+ background: url('chosen-sprite.png') no-repeat 100% -20px, -moz-linear-gradient(#eeeeee 1%, #ffffff 15%);
+ background: url('chosen-sprite.png') no-repeat 100% -20px, -o-linear-gradient(#eeeeee 1%, #ffffff 15%);
+ background: url('chosen-sprite.png') no-repeat 100% -20px, linear-gradient(#eeeeee 1%, #ffffff 15%);
font-size: 1em;
+ font-family: sans-serif;
}
.chzn-container-single .chzn-drop {
- -webkit-border-radius: 0 0 4px 4px;
- -moz-border-radius : 0 0 4px 4px;
- border-radius : 0 0 4px 4px;
- -moz-background-clip : padding;
- -webkit-background-clip: padding-box;
- background-clip : padding-box;
+ margin-top: -1px;
+ border-radius: 0 0 4px 4px;
+ background-clip: padding-box;
}
-/* @end */
-
-.chzn-container-single-nosearch .chzn-search input {
+.chzn-container-single.chzn-container-single-nosearch .chzn-search {
position: absolute;
- left: -9000px;
+ left: -9999px;
}
+/* @end */
/* @group Multi Chosen */
.chzn-container-multi .chzn-choices {
- background-color: #fff;
- background-image: -webkit-gradient(linear, 0 0, 0 100%, color-stop(1%, #eeeeee), color-stop(15%, #ffffff));
- background-image: -webkit-linear-gradient(top, #eeeeee 1%, #ffffff 15%);
- background-image: -moz-linear-gradient(top, #eeeeee 1%, #ffffff 15%);
- background-image: -o-linear-gradient(top, #eeeeee 1%, #ffffff 15%);
- background-image: linear-gradient(#eeeeee 1%, #ffffff 15%);
- border: 1px solid #aaa;
+ position: relative;
+ overflow: hidden;
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
margin: 0;
padding: 0;
- cursor: text;
- overflow: hidden;
+ width: 100%;
height: auto !important;
height: 1%;
- position: relative;
+ border: 1px solid #aaa;
+ background-color: #fff;
+ background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(1%, #eeeeee), color-stop(15%, #ffffff));
+ background-image: -webkit-linear-gradient(#eeeeee 1%, #ffffff 15%);
+ background-image: -moz-linear-gradient(#eeeeee 1%, #ffffff 15%);
+ background-image: -o-linear-gradient(#eeeeee 1%, #ffffff 15%);
+ background-image: linear-gradient(#eeeeee 1%, #ffffff 15%);
+ cursor: text;
}
.chzn-container-multi .chzn-choices li {
float: left;
list-style: none;
}
-.chzn-container-multi .chzn-choices .search-field {
- white-space: nowrap;
+.chzn-container-multi .chzn-choices li.search-field {
margin: 0;
padding: 0;
+ white-space: nowrap;
}
-.chzn-container-multi .chzn-choices .search-field input {
- color: #666;
- background: transparent !important;
- border: 0 !important;
- font-family: sans-serif;
- font-size: 100%;
- height: 15px;
- padding: 5px;
+.chzn-container-multi .chzn-choices li.search-field input {
margin: 1px 0;
+ padding: 5px;
+ height: 15px;
outline: 0;
- -webkit-box-shadow: none;
- -moz-box-shadow : none;
- box-shadow : none;
+ border: 0 !important;
+ background: transparent !important;
+ box-shadow: none;
+ color: #666;
+ font-size: 100%;
+ font-family: sans-serif;
}
-.chzn-container-multi .chzn-choices .search-field .default {
+.chzn-container-multi .chzn-choices li.search-field .default {
color: #999;
}
-.chzn-container-multi .chzn-choices .search-choice {
- -webkit-border-radius: 3px;
- -moz-border-radius : 3px;
- border-radius : 3px;
- -moz-background-clip : padding;
- -webkit-background-clip: padding-box;
- background-clip : padding-box;
+.chzn-container-multi .chzn-choices li.search-choice {
+ position: relative;
+ margin: 3px 0 3px 5px;
+ padding: 3px 20px 3px 5px;
+ border: 1px solid #aaa;
+ border-radius: 3px;
background-color: #e4e4e4;
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4f4f4', endColorstr='#eeeeee', GradientType=0 );
- background-image: -webkit-gradient(linear, 0 0, 0 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
- background-image: -webkit-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
- background-image: -moz-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
- background-image: -o-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
+ background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
+ background-image: -webkit-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
+ background-image: -moz-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
+ background-image: -o-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
- -webkit-box-shadow: 0 0 2px #ffffff inset, 0 1px 0 rgba(0,0,0,0.05);
- -moz-box-shadow : 0 0 2px #ffffff inset, 0 1px 0 rgba(0,0,0,0.05);
- box-shadow : 0 0 2px #ffffff inset, 0 1px 0 rgba(0,0,0,0.05);
+ background-clip: padding-box;
+ box-shadow: 0 0 2px white inset, 0 1px 0 rgba(0, 0, 0, 0.05);
color: #333;
- border: 1px solid #aaaaaa;
line-height: 13px;
- padding: 3px 20px 3px 5px;
- margin: 3px 0 3px 5px;
- position: relative;
cursor: default;
}
-.chzn-container-multi .chzn-choices .search-choice.search-choice-disabled {
+.chzn-container-multi .chzn-choices li.search-choice .search-choice-close {
+ position: absolute;
+ top: 4px;
+ right: 3px;
+ display: block;
+ width: 12px;
+ height: 12px;
+ background: url('chosen-sprite.png') -42px 1px no-repeat;
+ font-size: 1px;
+}
+.chzn-container-multi .chzn-choices li.search-choice .search-choice-close:hover {
+ background-position: -42px -10px;
+}
+.chzn-container-multi .chzn-choices li.search-choice-disabled {
+ padding-right: 5px;
+ border: 1px solid #ccc;
background-color: #e4e4e4;
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4f4f4', endColorstr='#eeeeee', GradientType=0 );
- background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
+ background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
background-image: -webkit-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
background-image: -moz-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
background-image: -o-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
- background-image: -ms-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
background-image: linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
color: #666;
- border: 1px solid #cccccc;
- padding-right: 5px;
}
-.chzn-container-multi .chzn-choices .search-choice-focus {
+.chzn-container-multi .chzn-choices li.search-choice-focus {
background: #d4d4d4;
}
-.chzn-container-multi .chzn-choices .search-choice .search-choice-close {
- display: block;
- position: absolute;
- right: 3px;
- top: 4px;
- width: 12px;
- height: 12px;
- font-size: 1px;
- background: url('chosen-sprite.png') -42px 1px no-repeat;
-}
-.chzn-container-multi .chzn-choices .search-choice .search-choice-close:hover {
+.chzn-container-multi .chzn-choices li.search-choice-focus .search-choice-close {
background-position: -42px -10px;
}
-.chzn-container-multi .chzn-choices .search-choice-focus .search-choice-close {
- background-position: -42px -10px;
+.chzn-container-multi .chzn-results {
+ margin: 0;
+ padding: 0;
+}
+.chzn-container-multi .chzn-drop .result-selected {
+ display: list-item;
+ color: #ccc;
+ cursor: default;
+}
+.chzn-container-multi .chzn-drop .result-selected em {
+ background: transparent;
}
-/* @end */
+/* @end */
/* @group Results */
.chzn-container .chzn-results {
- margin: 0 4px 4px 0;
- max-height: 240px;
- padding: 0 0 0 4px;
position: relative;
overflow-x: hidden;
overflow-y: auto;
+ margin: 0 4px 4px 0;
+ padding: 0 0 0 4px;
+ max-height: 240px;
-webkit-overflow-scrolling: touch;
}
-.chzn-container-multi .chzn-results {
- margin: -1px 0 0;
- padding: 0;
-}
.chzn-container .chzn-results li {
display: none;
- line-height: 15px;
- padding: 5px 6px;
margin: 0;
+ padding: 5px 6px;
list-style: none;
+ line-height: 15px;
}
-.chzn-container .chzn-results .active-result {
+.chzn-container .chzn-results li.active-result {
+ display: list-item;
cursor: pointer;
+}
+.chzn-container .chzn-results li.disabled-result {
display: list-item;
+ color: #ccc;
+ cursor: default;
}
-.chzn-container .chzn-results .highlighted {
+.chzn-container .chzn-results li.disabled-result em {
+ background: transparent;
+}
+.chzn-container .chzn-results li.highlighted {
background-color: #3875d7;
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3875d7', endColorstr='#2a62bc', GradientType=0 );
- background-image: -webkit-gradient(linear, 0 0, 0 100%, color-stop(20%, #3875d7), color-stop(90%, #2a62bc));
- background-image: -webkit-linear-gradient(top, #3875d7 20%, #2a62bc 90%);
- background-image: -moz-linear-gradient(top, #3875d7 20%, #2a62bc 90%);
- background-image: -o-linear-gradient(top, #3875d7 20%, #2a62bc 90%);
+ background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #3875d7), color-stop(90%, #2a62bc));
+ background-image: -webkit-linear-gradient(#3875d7 20%, #2a62bc 90%);
+ background-image: -moz-linear-gradient(#3875d7 20%, #2a62bc 90%);
+ background-image: -o-linear-gradient(#3875d7 20%, #2a62bc 90%);
background-image: linear-gradient(#3875d7 20%, #2a62bc 90%);
color: #fff;
}
-.chzn-container .chzn-results li em {
- background: #feffde;
- font-style: normal;
-}
-.chzn-container .chzn-results .highlighted em {
+.chzn-container .chzn-results li.highlighted em {
background: transparent;
}
-.chzn-container .chzn-results .no-results {
- background: #f4f4f4;
+.chzn-container .chzn-results li.no-results {
display: list-item;
+ background: #f4f4f4;
}
-.chzn-container .chzn-results .group-result {
- cursor: default;
+.chzn-container .chzn-results li.group-result {
color: #999;
font-weight: bold;
+ cursor: default;
}
-.chzn-container .chzn-results .group-option {
+.chzn-container .chzn-results li.group-option {
padding-left: 15px;
}
-.chzn-container-multi .chzn-drop .result-selected {
- display: none;
-}
-.chzn-container .chzn-results-scroll {
- background: white;
- margin: 0 4px;
- position: absolute;
- text-align: center;
- width: 321px; /* This should by dynamic with js */
- z-index: 1;
-}
-.chzn-container .chzn-results-scroll span {
- display: inline-block;
- height: 17px;
- text-indent: -5000px;
- width: 9px;
-}
-.chzn-container .chzn-results-scroll-down {
- bottom: 0;
-}
-.chzn-container .chzn-results-scroll-down span {
- background: url('chosen-sprite.png') no-repeat -4px -3px;
-}
-.chzn-container .chzn-results-scroll-up span {
- background: url('chosen-sprite.png') no-repeat -22px -3px;
+.chzn-container .chzn-results li em {
+ background: #feffde;
+ font-style: normal;
}
-/* @end */
+/* @end */
/* @group Active */
.chzn-container-active .chzn-single {
- -webkit-box-shadow: 0 0 5px rgba(0,0,0,.3);
- -moz-box-shadow : 0 0 5px rgba(0,0,0,.3);
- box-shadow : 0 0 5px rgba(0,0,0,.3);
border: 1px solid #5897fb;
+ box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}
-.chzn-container-active .chzn-single-with-drop {
+.chzn-container-active.chzn-with-drop .chzn-single {
border: 1px solid #aaa;
- -webkit-box-shadow: 0 1px 0 #fff inset;
- -moz-box-shadow : 0 1px 0 #fff inset;
- box-shadow : 0 1px 0 #fff inset;
- background-color: #eee;
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#ffffff', GradientType=0 );
- background-image: -webkit-gradient(linear, 0 0, 0 100%, color-stop(20%, #eeeeee), color-stop(80%, #ffffff));
- background-image: -webkit-linear-gradient(top, #eeeeee 20%, #ffffff 80%);
- background-image: -moz-linear-gradient(top, #eeeeee 20%, #ffffff 80%);
- background-image: -o-linear-gradient(top, #eeeeee 20%, #ffffff 80%);
- background-image: linear-gradient(#eeeeee 20%, #ffffff 80%);
- -webkit-border-bottom-left-radius : 0;
- -webkit-border-bottom-right-radius: 0;
- -moz-border-radius-bottomleft : 0;
-moz-border-radius-bottomright: 0;
- border-bottom-left-radius : 0;
border-bottom-right-radius: 0;
+ -moz-border-radius-bottomleft: 0;
+ border-bottom-left-radius: 0;
+ background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #eeeeee), color-stop(80%, #ffffff));
+ background-image: -webkit-linear-gradient(#eeeeee 20%, #ffffff 80%);
+ background-image: -moz-linear-gradient(#eeeeee 20%, #ffffff 80%);
+ background-image: -o-linear-gradient(#eeeeee 20%, #ffffff 80%);
+ background-image: linear-gradient(#eeeeee 20%, #ffffff 80%);
+ box-shadow: 0 1px 0 #fff inset;
}
-.chzn-container-active .chzn-single-with-drop div {
- background: transparent;
+.chzn-container-active.chzn-with-drop .chzn-single div {
border-left: none;
+ background: transparent;
}
-.chzn-container-active .chzn-single-with-drop div b {
+.chzn-container-active.chzn-with-drop .chzn-single div b {
background-position: -18px 2px;
}
.chzn-container-active .chzn-choices {
- -webkit-box-shadow: 0 0 5px rgba(0,0,0,.3);
- -moz-box-shadow : 0 0 5px rgba(0,0,0,.3);
- box-shadow : 0 0 5px rgba(0,0,0,.3);
border: 1px solid #5897fb;
+ box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}
-.chzn-container-active .chzn-choices .search-field input {
+.chzn-container-active .chzn-choices li.search-field input {
color: #111 !important;
}
-/* @end */
+/* @end */
/* @group Disabled Support */
.chzn-disabled {
+ opacity: 0.5 !important;
cursor: default;
- opacity:0.5 !important;
}
.chzn-disabled .chzn-single {
cursor: default;
@@ -367,47 +339,90 @@
cursor: default;
}
+/* @end */
/* @group Right to Left */
-.chzn-rtl { text-align: right; }
-.chzn-rtl .chzn-single { padding: 0 8px 0 0; overflow: visible; }
-.chzn-rtl .chzn-single span { margin-left: 26px; margin-right: 0; direction: rtl; }
-
-.chzn-rtl .chzn-single div { left: 3px; right: auto; }
+.chzn-rtl {
+ text-align: right;
+}
+.chzn-rtl .chzn-single {
+ overflow: visible;
+ padding: 0 8px 0 0;
+}
+.chzn-rtl .chzn-single span {
+ margin-right: 0;
+ margin-left: 26px;
+ direction: rtl;
+}
+.chzn-rtl .chzn-single-with-deselect span {
+ margin-left: 38px;
+}
+.chzn-rtl .chzn-single div {
+ right: auto;
+ left: 3px;
+}
.chzn-rtl .chzn-single abbr {
+ right: auto;
left: 26px;
+}
+.chzn-rtl .chzn-choices li {
+ float: right;
+}
+.chzn-rtl .chzn-choices li.search-field input {
+ direction: rtl;
+}
+.chzn-rtl .chzn-choices li.search-choice {
+ margin: 3px 5px 3px 0;
+ padding: 3px 5px 3px 19px;
+}
+.chzn-rtl .chzn-choices li.search-choice .search-choice-close {
right: auto;
+ left: 4px;
+}
+.chzn-rtl.chzn-container-single-nosearch .chzn-search,
+.chzn-rtl .chzn-drop {
+ left: 9999px;
+}
+.chzn-rtl.chzn-container-single .chzn-results {
+ margin: 0 0 4px 4px;
+ padding: 0 4px 0 0;
+}
+.chzn-rtl .chzn-results li.group-option {
+ padding-right: 15px;
+ padding-left: 0;
+}
+.chzn-rtl.chzn-container-active.chzn-with-drop .chzn-single div {
+ border-right: none;
}
-.chzn-rtl .chzn-choices .search-field input { direction: rtl; }
-.chzn-rtl .chzn-choices li { float: right; }
-.chzn-rtl .chzn-choices .search-choice { padding: 3px 5px 3px 19px; margin: 3px 5px 3px 0; }
-.chzn-rtl .chzn-choices .search-choice .search-choice-close { left: 4px; right: auto; }
-.chzn-rtl.chzn-container-single .chzn-results { margin: 0 0 4px 4px; padding: 0 4px 0 0; }
-.chzn-rtl .chzn-results .group-option { padding-left: 0; padding-right: 15px; }
-.chzn-rtl.chzn-container-active .chzn-single-with-drop div { border-right: none; }
.chzn-rtl .chzn-search input {
- background: #fff url('chosen-sprite.png') no-repeat -30px -20px;
- background: url('chosen-sprite.png') no-repeat -30px -20px, -webkit-gradient(linear, 0 0, 0 100%, color-stop(1%, #eeeeee), color-stop(15%, #ffffff));
- background: url('chosen-sprite.png') no-repeat -30px -20px, -webkit-linear-gradient(top, #eeeeee 1%, #ffffff 15%);
- background: url('chosen-sprite.png') no-repeat -30px -20px, -moz-linear-gradient(top, #eeeeee 1%, #ffffff 15%);
- background: url('chosen-sprite.png') no-repeat -30px -20px, -o-linear-gradient(top, #eeeeee 1%, #ffffff 15%);
- background: url('chosen-sprite.png') no-repeat -30px -20px, linear-gradient(#eeeeee 1%, #ffffff 15%);
padding: 4px 5px 4px 20px;
+ background: white url('chosen-sprite.png') no-repeat -30px -20px;
+ background: url('chosen-sprite.png') no-repeat -30px -20px, -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(1%, #eeeeee), color-stop(15%, #ffffff));
+ background: url('chosen-sprite.png') no-repeat -30px -20px, -webkit-linear-gradient(#eeeeee 1%, #ffffff 15%);
+ background: url('chosen-sprite.png') no-repeat -30px -20px, -moz-linear-gradient(#eeeeee 1%, #ffffff 15%);
+ background: url('chosen-sprite.png') no-repeat -30px -20px, -o-linear-gradient(#eeeeee 1%, #ffffff 15%);
+ background: url('chosen-sprite.png') no-repeat -30px -20px, linear-gradient(#eeeeee 1%, #ffffff 15%);
direction: rtl;
}
-.chzn-container-single.chzn-rtl .chzn-single div b {
+.chzn-rtl.chzn-container-single .chzn-single div b {
background-position: 6px 2px;
}
-.chzn-container-single.chzn-rtl .chzn-single-with-drop div b {
+.chzn-rtl.chzn-container-single.chzn-with-drop .chzn-single div b {
background-position: -12px 2px;
}
-/* @end */
+/* @end */
/* @group Retina compatibility */
-@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-resolution: 144dpi) {
- .chzn-rtl .chzn-search input, .chzn-container-single .chzn-single abbr, .chzn-container-single .chzn-single div b, .chzn-container-single .chzn-search input, .chzn-container-multi .chzn-choices .search-choice .search-choice-close, .chzn-container .chzn-results-scroll-down span, .chzn-container .chzn-results-scroll-up span {
- background-image: url('chosen-sprite@2x.png') !important;
- background-repeat: no-repeat !important;
- background-size: 52px 37px !important;
+@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-resolution: 144dpi) {
+ .chzn-rtl .chzn-search input,
+ .chzn-container-single .chzn-single abbr,
+ .chzn-container-single .chzn-single div b,
+ .chzn-container-single .chzn-search input,
+ .chzn-container-multi .chzn-choices .search-choice .search-choice-close,
+ .chzn-container .chzn-results-scroll-down span,
+ .chzn-container .chzn-results-scroll-up span {
+ background-image: url('chosen-sprite@2x.png') !important;
+ background-size: 52px 37px !important;
+ background-repeat: no-repeat !important;
}
}
-/* @end */
\ No newline at end of file
+/* @end */
diff --git a/main/inc/lib/javascript/chosen/chosen.jquery.js b/main/inc/lib/javascript/chosen/chosen.jquery.js
index a06b2a57d0..4e74ea19fe 100644
--- a/main/inc/lib/javascript/chosen/chosen.jquery.js
+++ b/main/inc/lib/javascript/chosen/chosen.jquery.js
@@ -1,17 +1,16 @@
-// Chosen, a Select Box Enhancer for jQuery and Protoype
+// Chosen, a Select Box Enhancer for jQuery and Prototype
// by Patrick Filler for Harvest, http://getharvest.com
//
-// Version 0.9.11
+// Version 0.12.1
// Full source at https://github.com/harvesthq/chosen
// Copyright (c) 2011 Harvest http://getharvest.com
// MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md
-// This file is generated by `cake build`, do not edit it by hand.
+// This file is generated by `grunt build`, do not edit it by hand.
(function() {
var SelectParser;
SelectParser = (function() {
-
function SelectParser() {
this.options_index = 0;
this.parsed = [];
@@ -27,6 +26,7 @@
SelectParser.prototype.add_group = function(group) {
var group_position, option, _i, _len, _ref, _results;
+
group_position = this.parsed.length;
this.parsed.push({
array_index: group_position,
@@ -79,6 +79,7 @@
SelectParser.select_to_array = function(select) {
var child, parser, _i, _len, _ref;
+
parser = new SelectParser();
_ref = select.childNodes;
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
@@ -92,22 +93,18 @@
}).call(this);
-/*
-Chosen source: generate output using 'cake build'
-Copyright (c) 2011 by Harvest
-*/
-
-
(function() {
var AbstractChosen, root;
root = this;
AbstractChosen = (function() {
-
function AbstractChosen(form_field, options) {
this.form_field = form_field;
this.options = options != null ? options : {};
+ if (!AbstractChosen.browser_is_supported()) {
+ return;
+ }
this.is_multiple = this.form_field.multiple;
this.set_default_text();
this.set_default_values();
@@ -119,6 +116,7 @@ Copyright (c) 2011 by Harvest
AbstractChosen.prototype.set_default_values = function() {
var _this = this;
+
this.click_test_action = function(evt) {
return _this.test_active_click(evt);
};
@@ -135,7 +133,6 @@ Copyright (c) 2011 by Harvest
this.disable_search = this.options.disable_search || false;
this.enable_split_word_search = this.options.enable_split_word_search != null ? this.options.enable_split_word_search : true;
this.search_contains = this.options.search_contains || false;
- this.choices = 0;
this.single_backstroke_delete = this.options.single_backstroke_delete || false;
this.max_selected_options = this.options.max_selected_options || Infinity;
return this.inherit_select_classes = this.options.inherit_select_classes || false;
@@ -145,11 +142,11 @@ Copyright (c) 2011 by Harvest
if (this.form_field.getAttribute("data-placeholder")) {
this.default_text = this.form_field.getAttribute("data-placeholder");
} else if (this.is_multiple) {
- this.default_text = this.options.placeholder_text_multiple || this.options.placeholder_text || "Select Some Options";
+ this.default_text = this.options.placeholder_text_multiple || this.options.placeholder_text || AbstractChosen.default_multiple_text;
} else {
- this.default_text = this.options.placeholder_text_single || this.options.placeholder_text || "Select an Option";
+ this.default_text = this.options.placeholder_text_single || this.options.placeholder_text || AbstractChosen.default_single_text;
}
- return this.results_none_found = this.form_field.getAttribute("data-no_results_text") || this.options.no_results_text || "No results match";
+ return this.results_none_found = this.form_field.getAttribute("data-no_results_text") || this.options.no_results_text || AbstractChosen.default_no_result_text;
};
AbstractChosen.prototype.mouse_enter = function() {
@@ -162,6 +159,7 @@ Copyright (c) 2011 by Harvest
AbstractChosen.prototype.input_focus = function(evt) {
var _this = this;
+
if (this.is_multiple) {
if (!this.active_field) {
return setTimeout((function() {
@@ -177,6 +175,7 @@ Copyright (c) 2011 by Harvest
AbstractChosen.prototype.input_blur = function(evt) {
var _this = this;
+
if (!this.mouse_on_container) {
this.active_field = false;
return setTimeout((function() {
@@ -185,28 +184,55 @@ Copyright (c) 2011 by Harvest
}
};
- AbstractChosen.prototype.result_add_option = function(option) {
- var classes, style;
- if (!option.disabled) {
- option.dom_id = this.container_id + "_o_" + option.array_index;
- classes = option.selected && this.is_multiple ? [] : ["active-result"];
- if (option.selected) {
- classes.push("result-selected");
- }
- if (option.group_array_index != null) {
- classes.push("group-option");
+ AbstractChosen.prototype.results_option_build = function(options) {
+ var content, data, _i, _len, _ref;
+
+ content = '';
+ _ref = this.results_data;
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ data = _ref[_i];
+ if (data.group && data.search_match) {
+ content += this.result_add_group(data);
+ } else if (!data.empty && data.search_match) {
+ content += this.result_add_option(data);
}
- if (option.classes !== "") {
- classes.push(option.classes);
+ if (options != null ? options.first : void 0) {
+ if (data.selected && this.is_multiple) {
+ this.choice_build(data);
+ } else if (data.selected && !this.is_multiple) {
+ this.single_set_selected_text(data.text);
+ }
}
- style = option.style.cssText !== "" ? " style=\"" + option.style + "\"" : "";
- return '
' + option.html + '';
- } else {
- return "";
}
+ return content;
+ };
+
+ AbstractChosen.prototype.result_add_option = function(option) {
+ var classes, style;
+
+ option.dom_id = this.container_id + "_o_" + option.array_index;
+ classes = [];
+ if (!option.disabled && !(option.selected && this.is_multiple)) {
+ classes.push("active-result");
+ }
+ if (option.disabled && !(option.selected && this.is_multiple)) {
+ classes.push("disabled-result");
+ }
+ if (option.selected) {
+ classes.push("result-selected");
+ }
+ if (option.group_array_index != null) {
+ classes.push("group-option");
+ }
+ if (option.classes !== "") {
+ classes.push(option.classes);
+ }
+ style = option.style.cssText !== "" ? " style=\"" + option.style + "\"" : "";
+ return "" + option.search_text + "";
};
AbstractChosen.prototype.results_update_field = function() {
+ this.set_default_text();
if (!this.is_multiple) {
this.results_reset_cleanup();
}
@@ -231,13 +257,95 @@ Copyright (c) 2011 by Harvest
}
};
+ AbstractChosen.prototype.winnow_results = function() {
+ var option, part, parts, regex, regexAnchor, results, searchText, startpos, text, zregex, _i, _j, _len, _len1, _ref;
+
+ this.no_results_clear();
+ results = 0;
+ searchText = this.get_search_text();
+ regexAnchor = this.search_contains ? "" : "^";
+ regex = new RegExp(regexAnchor + searchText.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), 'i');
+ zregex = new RegExp(searchText.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), 'i');
+ _ref = this.results_data;
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ option = _ref[_i];
+ if (!option.empty) {
+ if (option.group) {
+ option.search_match = false;
+ } else {
+ option.search_match = false;
+ if (regex.test(option.html)) {
+ option.search_match = true;
+ results += 1;
+ } else if (this.enable_split_word_search && (option.html.indexOf(" ") >= 0 || option.html.indexOf("[") === 0)) {
+ parts = option.html.replace(/\[|\]/g, "").split(" ");
+ if (parts.length) {
+ for (_j = 0, _len1 = parts.length; _j < _len1; _j++) {
+ part = parts[_j];
+ if (regex.test(part)) {
+ option.search_match = true;
+ results += 1;
+ }
+ }
+ }
+ }
+ if (option.search_match) {
+ if (searchText.length) {
+ startpos = option.html.search(zregex);
+ text = option.html.substr(0, startpos + searchText.length) + '' + option.html.substr(startpos + searchText.length);
+ text = text.substr(0, startpos) + '' + text.substr(startpos);
+ } else {
+ text = option.html;
+ }
+ option.search_text = text;
+ if (option.group_array_index != null) {
+ this.results_data[option.group_array_index].search_match = true;
+ }
+ }
+ }
+ }
+ }
+ if (results < 1 && searchText.length) {
+ this.update_results_content("");
+ return this.no_results(searchText);
+ } else {
+ this.update_results_content(this.results_option_build());
+ return this.winnow_results_set_highlight();
+ }
+ };
+
+ AbstractChosen.prototype.choices_count = function() {
+ var option, _i, _len, _ref;
+
+ if (this.selected_option_count != null) {
+ return this.selected_option_count;
+ }
+ this.selected_option_count = 0;
+ _ref = this.form_field.options;
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ option = _ref[_i];
+ if (option.selected) {
+ this.selected_option_count += 1;
+ }
+ }
+ return this.selected_option_count;
+ };
+
+ AbstractChosen.prototype.choices_click = function(evt) {
+ evt.preventDefault();
+ if (!(this.results_showing || this.is_disabled)) {
+ return this.results_show();
+ }
+ };
+
AbstractChosen.prototype.keyup_checker = function(evt) {
var stroke, _ref;
+
stroke = (_ref = evt.which) != null ? _ref : evt.keyCode;
this.search_field_scale();
switch (stroke) {
case 8:
- if (this.is_multiple && this.backstroke_length < 1 && this.choices > 0) {
+ if (this.is_multiple && this.backstroke_length < 1 && this.choices_count() > 0) {
return this.keydown_backstroke();
} else if (!this.pending_backstroke) {
this.result_clear_highlight();
@@ -269,6 +377,7 @@ Copyright (c) 2011 by Harvest
AbstractChosen.prototype.generate_field_id = function() {
var new_id;
+
new_id = this.generate_random_id();
this.form_field.id = new_id;
return new_id;
@@ -276,11 +385,35 @@ Copyright (c) 2011 by Harvest
AbstractChosen.prototype.generate_random_char = function() {
var chars, newchar, rand;
+
chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
rand = Math.floor(Math.random() * chars.length);
return newchar = chars.substring(rand, rand + 1);
};
+ AbstractChosen.prototype.container_width = function() {
+ if (this.options.width != null) {
+ return this.options.width;
+ } else {
+ return "" + this.form_field.offsetWidth + "px";
+ }
+ };
+
+ AbstractChosen.browser_is_supported = function() {
+ var _ref;
+
+ if (window.navigator.appName === "Microsoft Internet Explorer") {
+ return (null !== (_ref = document.documentMode) && _ref >= 8);
+ }
+ return true;
+ };
+
+ AbstractChosen.default_multiple_text = "Select Some Options";
+
+ AbstractChosen.default_single_text = "Select an Option";
+
+ AbstractChosen.default_no_result_text = "No results match";
+
return AbstractChosen;
})();
@@ -289,14 +422,8 @@ Copyright (c) 2011 by Harvest
}).call(this);
-/*
-Chosen source: generate output using 'cake build'
-Copyright (c) 2011 by Harvest
-*/
-
-
(function() {
- var $, Chosen, get_side_border_padding, root,
+ var $, Chosen, root, _ref,
__hasProp = {}.hasOwnProperty,
__extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
@@ -306,18 +433,12 @@ Copyright (c) 2011 by Harvest
$.fn.extend({
chosen: function(options) {
- var browser, match, ua;
- ua = navigator.userAgent.toLowerCase();
- match = /(msie) ([\w.]+)/.exec(ua) || [];
- browser = {
- name: match[1] || "",
- version: match[2] || "0"
- };
- if (browser.name === "msie" && (browser.version === "6.0" || (browser.version === "7.0" && document.documentMode === 7))) {
+ if (!AbstractChosen.browser_is_supported()) {
return this;
}
return this.each(function(input_field) {
var $this;
+
$this = $(this);
if (!$this.hasClass("chzn-done")) {
return $this.data('chosen', new Chosen(this, options));
@@ -327,16 +448,16 @@ Copyright (c) 2011 by Harvest
});
Chosen = (function(_super) {
-
__extends(Chosen, _super);
function Chosen() {
- return Chosen.__super__.constructor.apply(this, arguments);
+ _ref = Chosen.__super__.constructor.apply(this, arguments);
+ return _ref;
}
Chosen.prototype.setup = function() {
this.form_field_jq = $(this.form_field);
- this.current_value = this.form_field_jq.val();
+ this.current_selectedIndex = this.form_field.selectedIndex;
return this.is_rtl = this.form_field_jq.hasClass("chzn-rtl");
};
@@ -345,7 +466,8 @@ Copyright (c) 2011 by Harvest
};
Chosen.prototype.set_up_html = function() {
- var container_classes, container_div, container_props, dd_top, dd_width, sf_width;
+ var container_classes, container_props;
+
this.container_id = this.form_field.id.length ? this.form_field.id.replace(/[^\w]/g, '_') : this.generate_field_id();
this.container_id += "_chzn";
container_classes = ["chzn-container"];
@@ -356,28 +478,20 @@ Copyright (c) 2011 by Harvest
if (this.is_rtl) {
container_classes.push("chzn-rtl");
}
- this.f_width = this.form_field_jq.outerWidth();
container_props = {
- id: this.container_id,
- "class": container_classes.join(' '),
- style: 'width: ' + this.f_width + 'px;',
- title: this.form_field.title
+ 'id': this.container_id,
+ 'class': container_classes.join(' '),
+ 'style': "width: " + (this.container_width()) + ";",
+ 'title': this.form_field.title
};
- container_div = $("", container_props);
+ this.container = $("", container_props);
if (this.is_multiple) {
- container_div.html('');
+ this.container.html('');
} else {
- container_div.html('' + this.default_text + '
');
+ this.container.html('' + this.default_text + '
');
}
- this.form_field_jq.hide().after(container_div);
- this.container = $('#' + this.container_id);
+ this.form_field_jq.hide().after(this.container);
this.dropdown = this.container.find('div.chzn-drop').first();
- dd_top = this.container.height();
- dd_width = this.f_width - get_side_border_padding(this.dropdown);
- this.dropdown.css({
- "width": dd_width + "px",
- "top": dd_top + "px"
- });
this.search_field = this.container.find('input').first();
this.search_results = this.container.find('ul.chzn-results').first();
this.search_field_scale();
@@ -388,13 +502,10 @@ Copyright (c) 2011 by Harvest
} else {
this.search_container = this.container.find('div.chzn-search').first();
this.selected_item = this.container.find('.chzn-single').first();
- sf_width = dd_width - get_side_border_padding(this.search_container) - get_side_border_padding(this.search_field);
- this.search_field.css({
- "width": sf_width + "px"
- });
}
this.results_build();
this.set_tab_index();
+ this.set_label_behavior();
return this.form_field_jq.trigger("liszt:ready", {
chosen: this
});
@@ -402,55 +513,59 @@ Copyright (c) 2011 by Harvest
Chosen.prototype.register_observers = function() {
var _this = this;
+
this.container.mousedown(function(evt) {
- return _this.container_mousedown(evt);
+ _this.container_mousedown(evt);
});
this.container.mouseup(function(evt) {
- return _this.container_mouseup(evt);
+ _this.container_mouseup(evt);
});
this.container.mouseenter(function(evt) {
- return _this.mouse_enter(evt);
+ _this.mouse_enter(evt);
});
this.container.mouseleave(function(evt) {
- return _this.mouse_leave(evt);
+ _this.mouse_leave(evt);
});
this.search_results.mouseup(function(evt) {
- return _this.search_results_mouseup(evt);
+ _this.search_results_mouseup(evt);
});
this.search_results.mouseover(function(evt) {
- return _this.search_results_mouseover(evt);
+ _this.search_results_mouseover(evt);
});
this.search_results.mouseout(function(evt) {
- return _this.search_results_mouseout(evt);
+ _this.search_results_mouseout(evt);
+ });
+ this.search_results.bind('mousewheel DOMMouseScroll', function(evt) {
+ _this.search_results_mousewheel(evt);
});
this.form_field_jq.bind("liszt:updated", function(evt) {
- return _this.results_update_field(evt);
+ _this.results_update_field(evt);
});
this.form_field_jq.bind("liszt:activate", function(evt) {
- return _this.activate_field(evt);
+ _this.activate_field(evt);
});
this.form_field_jq.bind("liszt:open", function(evt) {
- return _this.container_mousedown(evt);
+ _this.container_mousedown(evt);
});
this.search_field.blur(function(evt) {
- return _this.input_blur(evt);
+ _this.input_blur(evt);
});
this.search_field.keyup(function(evt) {
- return _this.keyup_checker(evt);
+ _this.keyup_checker(evt);
});
this.search_field.keydown(function(evt) {
- return _this.keydown_checker(evt);
+ _this.keydown_checker(evt);
});
this.search_field.focus(function(evt) {
- return _this.input_focus(evt);
+ _this.input_focus(evt);
});
if (this.is_multiple) {
return this.search_choices.click(function(evt) {
- return _this.choices_click(evt);
+ _this.choices_click(evt);
});
} else {
return this.container.click(function(evt) {
- return evt.preventDefault();
+ evt.preventDefault();
});
}
};
@@ -474,13 +589,11 @@ Copyright (c) 2011 by Harvest
};
Chosen.prototype.container_mousedown = function(evt) {
- var target_closelink;
if (!this.is_disabled) {
- target_closelink = evt != null ? ($(evt.target)).hasClass("search-choice-close") : false;
if (evt && evt.type === "mousedown" && !this.results_showing) {
evt.preventDefault();
}
- if (!this.pending_destroy_click && !target_closelink) {
+ if (!((evt != null) && ($(evt.target)).hasClass("search-choice-close"))) {
if (!this.active_field) {
if (this.is_multiple) {
this.search_field.val("");
@@ -492,8 +605,6 @@ Copyright (c) 2011 by Harvest
this.results_toggle();
}
return this.activate_field();
- } else {
- return this.pending_destroy_click = false;
}
}
};
@@ -504,6 +615,19 @@ Copyright (c) 2011 by Harvest
}
};
+ Chosen.prototype.search_results_mousewheel = function(evt) {
+ var delta, _ref1, _ref2;
+
+ delta = -((_ref1 = evt.originalEvent) != null ? _ref1.wheelDelta : void 0) || ((_ref2 = evt.originialEvent) != null ? _ref2.detail : void 0);
+ if (delta != null) {
+ evt.preventDefault();
+ if (evt.type === 'DOMMouseScroll') {
+ delta = delta * 40;
+ }
+ return this.search_results.scrollTop(delta + this.search_results.scrollTop());
+ }
+ };
+
Chosen.prototype.blur_test = function(evt) {
if (!this.active_field && this.container.hasClass("chzn-container-active")) {
return this.close_field();
@@ -515,7 +639,6 @@ Copyright (c) 2011 by Harvest
this.active_field = false;
this.results_hide();
this.container.removeClass("chzn-container-active");
- this.winnow_results_clear();
this.clear_backstroke();
this.show_search_field_default();
return this.search_field_scale();
@@ -537,56 +660,38 @@ Copyright (c) 2011 by Harvest
};
Chosen.prototype.results_build = function() {
- var content, data, _i, _len, _ref;
this.parsing = true;
+ this.selected_option_count = null;
this.results_data = root.SelectParser.select_to_array(this.form_field);
- if (this.is_multiple && this.choices > 0) {
+ if (this.is_multiple) {
this.search_choices.find("li.search-choice").remove();
- this.choices = 0;
} else if (!this.is_multiple) {
- this.selected_item.addClass("chzn-default").find("span").text(this.default_text);
+ this.single_set_selected_text();
if (this.disable_search || this.form_field.options.length <= this.disable_search_threshold) {
+ this.search_field[0].readOnly = true;
this.container.addClass("chzn-container-single-nosearch");
} else {
+ this.search_field[0].readOnly = false;
this.container.removeClass("chzn-container-single-nosearch");
}
}
- content = '';
- _ref = this.results_data;
- for (_i = 0, _len = _ref.length; _i < _len; _i++) {
- data = _ref[_i];
- if (data.group) {
- content += this.result_add_group(data);
- } else if (!data.empty) {
- content += this.result_add_option(data);
- if (data.selected && this.is_multiple) {
- this.choice_build(data);
- } else if (data.selected && !this.is_multiple) {
- this.selected_item.removeClass("chzn-default").find("span").text(data.text);
- if (this.allow_single_deselect) {
- this.single_deselect_control_build();
- }
- }
- }
- }
+ this.update_results_content(this.results_option_build({
+ first: true
+ }));
this.search_field_disabled();
this.show_search_field_default();
this.search_field_scale();
- this.search_results.html(content);
return this.parsing = false;
};
Chosen.prototype.result_add_group = function(group) {
- if (!group.disabled) {
- group.dom_id = this.container_id + "_g_" + group.array_index;
- return '' + $("").text(group.label).html() + '';
- } else {
- return "";
- }
+ group.dom_id = this.container_id + "_g_" + group.array_index;
+ return '' + $("").text(group.label).html() + '';
};
Chosen.prototype.result_do_highlight = function(el) {
var high_bottom, high_top, maxHeight, visible_bottom, visible_top;
+
if (el.length) {
this.result_clear_highlight();
this.result_highlight = el;
@@ -612,48 +717,40 @@ Copyright (c) 2011 by Harvest
};
Chosen.prototype.results_show = function() {
- var dd_top;
- if (!this.is_multiple) {
- this.selected_item.addClass("chzn-single-with-drop");
- if (this.result_single_selected) {
- this.result_do_highlight(this.result_single_selected);
- }
- } else if (this.max_selected_options <= this.choices) {
+ if (this.is_multiple && this.max_selected_options <= this.choices_count()) {
this.form_field_jq.trigger("liszt:maxselected", {
chosen: this
});
return false;
}
- dd_top = this.is_multiple ? this.container.height() : this.container.height() - 1;
+ this.container.addClass("chzn-with-drop");
this.form_field_jq.trigger("liszt:showing_dropdown", {
chosen: this
});
- this.dropdown.css({
- "top": dd_top + "px",
- "left": 0
- });
this.results_showing = true;
this.search_field.focus();
this.search_field.val(this.search_field.val());
return this.winnow_results();
};
+ Chosen.prototype.update_results_content = function(content) {
+ return this.search_results.html(content);
+ };
+
Chosen.prototype.results_hide = function() {
- if (!this.is_multiple) {
- this.selected_item.removeClass("chzn-single-with-drop");
+ if (this.results_showing) {
+ this.result_clear_highlight();
+ this.container.removeClass("chzn-with-drop");
+ this.form_field_jq.trigger("liszt:hiding_dropdown", {
+ chosen: this
+ });
}
- this.result_clear_highlight();
- this.form_field_jq.trigger("liszt:hiding_dropdown", {
- chosen: this
- });
- this.dropdown.css({
- "left": "-9000px"
- });
return this.results_showing = false;
};
Chosen.prototype.set_tab_index = function(el) {
var ti;
+
if (this.form_field_jq.attr("tabindex")) {
ti = this.form_field_jq.attr("tabindex");
this.form_field_jq.attr("tabindex", -1);
@@ -661,8 +758,26 @@ Copyright (c) 2011 by Harvest
}
};
+ Chosen.prototype.set_label_behavior = function() {
+ var _this = this;
+
+ this.form_field_label = this.form_field_jq.parents("label");
+ if (!this.form_field_label.length && this.form_field.id.length) {
+ this.form_field_label = $("label[for='" + this.form_field.id + "']");
+ }
+ if (this.form_field_label.length > 0) {
+ return this.form_field_label.click(function(evt) {
+ if (_this.is_multiple) {
+ return _this.container_mousedown(evt);
+ } else {
+ return _this.activate_field();
+ }
+ });
+ }
+ };
+
Chosen.prototype.show_search_field_default = function() {
- if (this.is_multiple && this.choices < 1 && !this.active_field) {
+ if (this.is_multiple && this.choices_count() < 1 && !this.active_field) {
this.search_field.val(this.default_text);
return this.search_field.addClass("default");
} else {
@@ -673,6 +788,7 @@ Copyright (c) 2011 by Harvest
Chosen.prototype.search_results_mouseup = function(evt) {
var target;
+
target = $(evt.target).hasClass("active-result") ? $(evt.target) : $(evt.target).parents(".active-result").first();
if (target.length) {
this.result_highlight = target;
@@ -683,6 +799,7 @@ Copyright (c) 2011 by Harvest
Chosen.prototype.search_results_mouseover = function(evt) {
var target;
+
target = $(evt.target).hasClass("active-result") ? $(evt.target) : $(evt.target).parents(".active-result").first();
if (target) {
return this.result_do_highlight(target);
@@ -695,51 +812,41 @@ Copyright (c) 2011 by Harvest
}
};
- Chosen.prototype.choices_click = function(evt) {
- evt.preventDefault();
- if (this.active_field && !($(evt.target).hasClass("search-choice" || $(evt.target).parents('.search-choice').first)) && !this.results_showing) {
- return this.results_show();
- }
- };
-
Chosen.prototype.choice_build = function(item) {
- var choice_id, html, link,
+ var choice, close_link,
_this = this;
- if (this.is_multiple && this.max_selected_options <= this.choices) {
- this.form_field_jq.trigger("liszt:maxselected", {
- chosen: this
- });
- return false;
- }
- choice_id = this.container_id + "_c_" + item.array_index;
- this.choices += 1;
+
+ choice = $('', {
+ "class": "search-choice"
+ }).html("" + item.html + "");
if (item.disabled) {
- html = '' + item.html + '';
+ choice.addClass('search-choice-disabled');
} else {
- html = '' + item.html + '';
+ close_link = $('', {
+ href: '#',
+ "class": 'search-choice-close',
+ rel: item.array_index
+ });
+ close_link.click(function(evt) {
+ return _this.choice_destroy_link_click(evt);
+ });
+ choice.append(close_link);
}
- this.search_container.before(html);
- link = $('#' + choice_id).find("a").first();
- return link.click(function(evt) {
- return _this.choice_destroy_link_click(evt);
- });
+ return this.search_container.before(choice);
};
Chosen.prototype.choice_destroy_link_click = function(evt) {
evt.preventDefault();
+ evt.stopPropagation();
if (!this.is_disabled) {
- this.pending_destroy_click = true;
return this.choice_destroy($(evt.target));
- } else {
- return evt.stopPropagation;
}
};
Chosen.prototype.choice_destroy = function(link) {
if (this.result_deselect(link.attr("rel"))) {
- this.choices -= 1;
this.show_search_field_default();
- if (this.is_multiple && this.choices > 0 && this.search_field.val().length < 1) {
+ if (this.is_multiple && this.choices_count() > 0 && this.search_field.val().length < 1) {
this.results_hide();
}
link.parents('li').first().remove();
@@ -749,10 +856,8 @@ Copyright (c) 2011 by Harvest
Chosen.prototype.results_reset = function() {
this.form_field.options[0].selected = true;
- this.selected_item.find("span").text(this.default_text);
- if (!this.is_multiple) {
- this.selected_item.addClass("chzn-default");
- }
+ this.selected_option_count = null;
+ this.single_set_selected_text();
this.show_search_field_default();
this.results_reset_cleanup();
this.form_field_jq.trigger("change");
@@ -762,68 +867,81 @@ Copyright (c) 2011 by Harvest
};
Chosen.prototype.results_reset_cleanup = function() {
- this.current_value = this.form_field_jq.val();
+ this.current_selectedIndex = this.form_field.selectedIndex;
return this.selected_item.find("abbr").remove();
};
Chosen.prototype.result_select = function(evt) {
var high, high_id, item, position;
+
if (this.result_highlight) {
high = this.result_highlight;
high_id = high.attr("id");
this.result_clear_highlight();
+ if (this.is_multiple && this.max_selected_options <= this.choices_count()) {
+ this.form_field_jq.trigger("liszt:maxselected", {
+ chosen: this
+ });
+ return false;
+ }
if (this.is_multiple) {
- this.result_deactivate(high);
+ high.removeClass("active-result");
} else {
this.search_results.find(".result-selected").removeClass("result-selected");
this.result_single_selected = high;
- this.selected_item.removeClass("chzn-default");
}
high.addClass("result-selected");
position = high_id.substr(high_id.lastIndexOf("_") + 1);
item = this.results_data[position];
item.selected = true;
this.form_field.options[item.options_index].selected = true;
+ this.selected_option_count = null;
if (this.is_multiple) {
this.choice_build(item);
} else {
- this.selected_item.find("span").first().text(item.text);
- if (this.allow_single_deselect) {
- this.single_deselect_control_build();
- }
+ this.single_set_selected_text(item.text);
}
if (!((evt.metaKey || evt.ctrlKey) && this.is_multiple)) {
this.results_hide();
}
this.search_field.val("");
- if (this.is_multiple || this.form_field_jq.val() !== this.current_value) {
+ if (this.is_multiple || this.form_field.selectedIndex !== this.current_selectedIndex) {
this.form_field_jq.trigger("change", {
'selected': this.form_field.options[item.options_index].value
});
}
- this.current_value = this.form_field_jq.val();
+ this.current_selectedIndex = this.form_field.selectedIndex;
return this.search_field_scale();
}
};
- Chosen.prototype.result_activate = function(el) {
- return el.addClass("active-result");
- };
-
- Chosen.prototype.result_deactivate = function(el) {
- return el.removeClass("active-result");
+ Chosen.prototype.single_set_selected_text = function(text) {
+ if (text == null) {
+ text = this.default_text;
+ }
+ if (text === this.default_text) {
+ this.selected_item.addClass("chzn-default");
+ } else {
+ this.single_deselect_control_build();
+ this.selected_item.removeClass("chzn-default");
+ }
+ return this.selected_item.find("span").text(text);
};
Chosen.prototype.result_deselect = function(pos) {
var result, result_data;
+
result_data = this.results_data[pos];
if (!this.form_field.options[result_data.options_index].disabled) {
result_data.selected = false;
this.form_field.options[result_data.options_index].selected = false;
+ this.selected_option_count = null;
result = $("#" + this.container_id + "_o_" + pos);
result.removeClass("result-selected").addClass("active-result").show();
this.result_clear_highlight();
- this.winnow_results();
+ if (this.results_showing) {
+ this.winnow_results();
+ }
this.form_field_jq.trigger("change", {
deselected: this.form_field.options[result_data.options_index].value
});
@@ -835,105 +953,36 @@ Copyright (c) 2011 by Harvest
};
Chosen.prototype.single_deselect_control_build = function() {
- if (this.allow_single_deselect && this.selected_item.find("abbr").length < 1) {
- return this.selected_item.find("span").first().after("");
- }
- };
-
- Chosen.prototype.winnow_results = function() {
- var found, option, part, parts, regex, regexAnchor, result, result_id, results, searchText, startpos, text, zregex, _i, _j, _len, _len1, _ref;
- this.no_results_clear();
- results = 0;
- searchText = this.search_field.val() === this.default_text ? "" : $('').text($.trim(this.search_field.val())).html();
- regexAnchor = this.search_contains ? "" : "^";
- regex = new RegExp(regexAnchor + searchText.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), 'i');
- zregex = new RegExp(searchText.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), 'i');
- _ref = this.results_data;
- for (_i = 0, _len = _ref.length; _i < _len; _i++) {
- option = _ref[_i];
- if (!option.disabled && !option.empty) {
- if (option.group) {
- $('#' + option.dom_id).css('display', 'none');
- } else if (!(this.is_multiple && option.selected)) {
- found = false;
- result_id = option.dom_id;
- result = $("#" + result_id);
- if (regex.test(option.html)) {
- found = true;
- results += 1;
- } else if (this.enable_split_word_search && (option.html.indexOf(" ") >= 0 || option.html.indexOf("[") === 0)) {
- parts = option.html.replace(/\[|\]/g, "").split(" ");
- if (parts.length) {
- for (_j = 0, _len1 = parts.length; _j < _len1; _j++) {
- part = parts[_j];
- if (regex.test(part)) {
- found = true;
- results += 1;
- }
- }
- }
- }
- if (found) {
- if (searchText.length) {
- startpos = option.html.search(zregex);
- text = option.html.substr(0, startpos + searchText.length) + '' + option.html.substr(startpos + searchText.length);
- text = text.substr(0, startpos) + '' + text.substr(startpos);
- } else {
- text = option.html;
- }
- result.html(text);
- this.result_activate(result);
- if (option.group_array_index != null) {
- $("#" + this.results_data[option.group_array_index].dom_id).css('display', 'list-item');
- }
- } else {
- if (this.result_highlight && result_id === this.result_highlight.attr('id')) {
- this.result_clear_highlight();
- }
- this.result_deactivate(result);
- }
- }
- }
+ if (!this.allow_single_deselect) {
+ return;
}
- if (results < 1 && searchText.length) {
- return this.no_results(searchText);
- } else {
- return this.winnow_results_set_highlight();
+ if (!this.selected_item.find("abbr").length) {
+ this.selected_item.find("span").first().after("");
}
+ return this.selected_item.addClass("chzn-single-with-deselect");
};
- Chosen.prototype.winnow_results_clear = function() {
- var li, lis, _i, _len, _results;
- this.search_field.val("");
- lis = this.search_results.find("li");
- _results = [];
- for (_i = 0, _len = lis.length; _i < _len; _i++) {
- li = lis[_i];
- li = $(li);
- if (li.hasClass("group-result")) {
- _results.push(li.css('display', 'auto'));
- } else if (!this.is_multiple || !li.hasClass("result-selected")) {
- _results.push(this.result_activate(li));
- } else {
- _results.push(void 0);
- }
+ Chosen.prototype.get_search_text = function() {
+ if (this.search_field.val() === this.default_text) {
+ return "";
+ } else {
+ return $('').text($.trim(this.search_field.val())).html();
}
- return _results;
};
Chosen.prototype.winnow_results_set_highlight = function() {
var do_high, selected_results;
- if (!this.result_highlight) {
- selected_results = !this.is_multiple ? this.search_results.find(".result-selected.active-result") : [];
- do_high = selected_results.length ? selected_results.first() : this.search_results.find(".active-result").first();
- if (do_high != null) {
- return this.result_do_highlight(do_high);
- }
+
+ selected_results = !this.is_multiple ? this.search_results.find(".result-selected.active-result") : [];
+ do_high = selected_results.length ? selected_results.first() : this.search_results.find(".active-result").first();
+ if (do_high != null) {
+ return this.result_do_highlight(do_high);
}
};
Chosen.prototype.no_results = function(terms) {
var no_results_html;
+
no_results_html = $('' + this.results_none_found + ' ""');
no_results_html.find("span").first().html(terms);
return this.search_results.append(no_results_html);
@@ -944,25 +993,21 @@ Copyright (c) 2011 by Harvest
};
Chosen.prototype.keydown_arrow = function() {
- var first_active, next_sib;
- if (!this.result_highlight) {
- first_active = this.search_results.find("li.active-result").first();
- if (first_active) {
- this.result_do_highlight($(first_active));
- }
- } else if (this.results_showing) {
+ var next_sib;
+
+ if (this.results_showing && this.result_highlight) {
next_sib = this.result_highlight.nextAll("li.active-result").first();
if (next_sib) {
- this.result_do_highlight(next_sib);
+ return this.result_do_highlight(next_sib);
}
- }
- if (!this.results_showing) {
+ } else {
return this.results_show();
}
};
Chosen.prototype.keyup_arrow = function() {
var prev_sibs;
+
if (!this.results_showing && !this.is_multiple) {
return this.results_show();
} else if (this.result_highlight) {
@@ -970,7 +1015,7 @@ Copyright (c) 2011 by Harvest
if (prev_sibs.length) {
return this.result_do_highlight(prev_sibs.first());
} else {
- if (this.choices > 0) {
+ if (this.choices_count() > 0) {
this.results_hide();
}
return this.result_clear_highlight();
@@ -980,6 +1025,7 @@ Copyright (c) 2011 by Harvest
Chosen.prototype.keydown_backstroke = function() {
var next_available_destroy;
+
if (this.pending_backstroke) {
this.choice_destroy(this.pending_backstroke.find("a").first());
return this.clear_backstroke();
@@ -1004,8 +1050,9 @@ Copyright (c) 2011 by Harvest
};
Chosen.prototype.keydown_checker = function(evt) {
- var stroke, _ref;
- stroke = (_ref = evt.which) != null ? _ref : evt.keyCode;
+ var stroke, _ref1;
+
+ stroke = (_ref1 = evt.which) != null ? _ref1 : evt.keyCode;
this.search_field_scale();
if (stroke !== 8 && this.pending_backstroke) {
this.clear_backstroke();
@@ -1028,13 +1075,15 @@ Copyright (c) 2011 by Harvest
this.keyup_arrow();
break;
case 40:
+ evt.preventDefault();
this.keydown_arrow();
break;
}
};
Chosen.prototype.search_field_scale = function() {
- var dd_top, div, h, style, style_block, styles, w, _i, _len;
+ var div, h, style, style_block, styles, w, _i, _len;
+
if (this.is_multiple) {
h = 0;
w = 0;
@@ -1051,21 +1100,21 @@ Copyright (c) 2011 by Harvest
$('body').append(div);
w = div.width() + 25;
div.remove();
+ if (!this.f_width) {
+ this.f_width = this.container.outerWidth();
+ }
if (w > this.f_width - 10) {
w = this.f_width - 10;
}
- this.search_field.css({
+ return this.search_field.css({
'width': w + 'px'
});
- dd_top = this.container.height();
- return this.dropdown.css({
- "top": dd_top + "px"
- });
}
};
Chosen.prototype.generate_random_id = function() {
var string;
+
string = "sel" + this.generate_random_char() + this.generate_random_char() + this.generate_random_char();
while ($("#" + string).length > 0) {
string += this.generate_random_char();
@@ -1079,11 +1128,4 @@ Copyright (c) 2011 by Harvest
root.Chosen = Chosen;
- get_side_border_padding = function(elmt) {
- var side_border_padding;
- return side_border_padding = elmt.outerWidth() - elmt.width();
- };
-
- root.get_side_border_padding = get_side_border_padding;
-
-}).call(this);
\ No newline at end of file
+}).call(this);
diff --git a/main/inc/lib/javascript/chosen/chosen.jquery.min.js b/main/inc/lib/javascript/chosen/chosen.jquery.min.js
index a06b2a57d0..bb83a27e22 100644
--- a/main/inc/lib/javascript/chosen/chosen.jquery.min.js
+++ b/main/inc/lib/javascript/chosen/chosen.jquery.min.js
@@ -1,1089 +1,2 @@
-// Chosen, a Select Box Enhancer for jQuery and Protoype
-// by Patrick Filler for Harvest, http://getharvest.com
-//
-// Version 0.9.11
-// Full source at https://github.com/harvesthq/chosen
-// Copyright (c) 2011 Harvest http://getharvest.com
-
-// MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md
-// This file is generated by `cake build`, do not edit it by hand.
-(function() {
- var SelectParser;
-
- SelectParser = (function() {
-
- function SelectParser() {
- this.options_index = 0;
- this.parsed = [];
- }
-
- SelectParser.prototype.add_node = function(child) {
- if (child.nodeName.toUpperCase() === "OPTGROUP") {
- return this.add_group(child);
- } else {
- return this.add_option(child);
- }
- };
-
- SelectParser.prototype.add_group = function(group) {
- var group_position, option, _i, _len, _ref, _results;
- group_position = this.parsed.length;
- this.parsed.push({
- array_index: group_position,
- group: true,
- label: group.label,
- children: 0,
- disabled: group.disabled
- });
- _ref = group.childNodes;
- _results = [];
- for (_i = 0, _len = _ref.length; _i < _len; _i++) {
- option = _ref[_i];
- _results.push(this.add_option(option, group_position, group.disabled));
- }
- return _results;
- };
-
- SelectParser.prototype.add_option = function(option, group_position, group_disabled) {
- if (option.nodeName.toUpperCase() === "OPTION") {
- if (option.text !== "") {
- if (group_position != null) {
- this.parsed[group_position].children += 1;
- }
- this.parsed.push({
- array_index: this.parsed.length,
- options_index: this.options_index,
- value: option.value,
- text: option.text,
- html: option.innerHTML,
- selected: option.selected,
- disabled: group_disabled === true ? group_disabled : option.disabled,
- group_array_index: group_position,
- classes: option.className,
- style: option.style.cssText
- });
- } else {
- this.parsed.push({
- array_index: this.parsed.length,
- options_index: this.options_index,
- empty: true
- });
- }
- return this.options_index += 1;
- }
- };
-
- return SelectParser;
-
- })();
-
- SelectParser.select_to_array = function(select) {
- var child, parser, _i, _len, _ref;
- parser = new SelectParser();
- _ref = select.childNodes;
- for (_i = 0, _len = _ref.length; _i < _len; _i++) {
- child = _ref[_i];
- parser.add_node(child);
- }
- return parser.parsed;
- };
-
- this.SelectParser = SelectParser;
-
-}).call(this);
-
-/*
-Chosen source: generate output using 'cake build'
-Copyright (c) 2011 by Harvest
-*/
-
-
-(function() {
- var AbstractChosen, root;
-
- root = this;
-
- AbstractChosen = (function() {
-
- function AbstractChosen(form_field, options) {
- this.form_field = form_field;
- this.options = options != null ? options : {};
- this.is_multiple = this.form_field.multiple;
- this.set_default_text();
- this.set_default_values();
- this.setup();
- this.set_up_html();
- this.register_observers();
- this.finish_setup();
- }
-
- AbstractChosen.prototype.set_default_values = function() {
- var _this = this;
- this.click_test_action = function(evt) {
- return _this.test_active_click(evt);
- };
- this.activate_action = function(evt) {
- return _this.activate_field(evt);
- };
- this.active_field = false;
- this.mouse_on_container = false;
- this.results_showing = false;
- this.result_highlighted = null;
- this.result_single_selected = null;
- this.allow_single_deselect = (this.options.allow_single_deselect != null) && (this.form_field.options[0] != null) && this.form_field.options[0].text === "" ? this.options.allow_single_deselect : false;
- this.disable_search_threshold = this.options.disable_search_threshold || 0;
- this.disable_search = this.options.disable_search || false;
- this.enable_split_word_search = this.options.enable_split_word_search != null ? this.options.enable_split_word_search : true;
- this.search_contains = this.options.search_contains || false;
- this.choices = 0;
- this.single_backstroke_delete = this.options.single_backstroke_delete || false;
- this.max_selected_options = this.options.max_selected_options || Infinity;
- return this.inherit_select_classes = this.options.inherit_select_classes || false;
- };
-
- AbstractChosen.prototype.set_default_text = function() {
- if (this.form_field.getAttribute("data-placeholder")) {
- this.default_text = this.form_field.getAttribute("data-placeholder");
- } else if (this.is_multiple) {
- this.default_text = this.options.placeholder_text_multiple || this.options.placeholder_text || "Select Some Options";
- } else {
- this.default_text = this.options.placeholder_text_single || this.options.placeholder_text || "Select an Option";
- }
- return this.results_none_found = this.form_field.getAttribute("data-no_results_text") || this.options.no_results_text || "No results match";
- };
-
- AbstractChosen.prototype.mouse_enter = function() {
- return this.mouse_on_container = true;
- };
-
- AbstractChosen.prototype.mouse_leave = function() {
- return this.mouse_on_container = false;
- };
-
- AbstractChosen.prototype.input_focus = function(evt) {
- var _this = this;
- if (this.is_multiple) {
- if (!this.active_field) {
- return setTimeout((function() {
- return _this.container_mousedown();
- }), 50);
- }
- } else {
- if (!this.active_field) {
- return this.activate_field();
- }
- }
- };
-
- AbstractChosen.prototype.input_blur = function(evt) {
- var _this = this;
- if (!this.mouse_on_container) {
- this.active_field = false;
- return setTimeout((function() {
- return _this.blur_test();
- }), 100);
- }
- };
-
- AbstractChosen.prototype.result_add_option = function(option) {
- var classes, style;
- if (!option.disabled) {
- option.dom_id = this.container_id + "_o_" + option.array_index;
- classes = option.selected && this.is_multiple ? [] : ["active-result"];
- if (option.selected) {
- classes.push("result-selected");
- }
- if (option.group_array_index != null) {
- classes.push("group-option");
- }
- if (option.classes !== "") {
- classes.push(option.classes);
- }
- style = option.style.cssText !== "" ? " style=\"" + option.style + "\"" : "";
- return '' + option.html + '';
- } else {
- return "";
- }
- };
-
- AbstractChosen.prototype.results_update_field = function() {
- if (!this.is_multiple) {
- this.results_reset_cleanup();
- }
- this.result_clear_highlight();
- this.result_single_selected = null;
- return this.results_build();
- };
-
- AbstractChosen.prototype.results_toggle = function() {
- if (this.results_showing) {
- return this.results_hide();
- } else {
- return this.results_show();
- }
- };
-
- AbstractChosen.prototype.results_search = function(evt) {
- if (this.results_showing) {
- return this.winnow_results();
- } else {
- return this.results_show();
- }
- };
-
- AbstractChosen.prototype.keyup_checker = function(evt) {
- var stroke, _ref;
- stroke = (_ref = evt.which) != null ? _ref : evt.keyCode;
- this.search_field_scale();
- switch (stroke) {
- case 8:
- if (this.is_multiple && this.backstroke_length < 1 && this.choices > 0) {
- return this.keydown_backstroke();
- } else if (!this.pending_backstroke) {
- this.result_clear_highlight();
- return this.results_search();
- }
- break;
- case 13:
- evt.preventDefault();
- if (this.results_showing) {
- return this.result_select(evt);
- }
- break;
- case 27:
- if (this.results_showing) {
- this.results_hide();
- }
- return true;
- case 9:
- case 38:
- case 40:
- case 16:
- case 91:
- case 17:
- break;
- default:
- return this.results_search();
- }
- };
-
- AbstractChosen.prototype.generate_field_id = function() {
- var new_id;
- new_id = this.generate_random_id();
- this.form_field.id = new_id;
- return new_id;
- };
-
- AbstractChosen.prototype.generate_random_char = function() {
- var chars, newchar, rand;
- chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
- rand = Math.floor(Math.random() * chars.length);
- return newchar = chars.substring(rand, rand + 1);
- };
-
- return AbstractChosen;
-
- })();
-
- root.AbstractChosen = AbstractChosen;
-
-}).call(this);
-
-/*
-Chosen source: generate output using 'cake build'
-Copyright (c) 2011 by Harvest
-*/
-
-
-(function() {
- var $, Chosen, get_side_border_padding, root,
- __hasProp = {}.hasOwnProperty,
- __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
-
- root = this;
-
- $ = jQuery;
-
- $.fn.extend({
- chosen: function(options) {
- var browser, match, ua;
- ua = navigator.userAgent.toLowerCase();
- match = /(msie) ([\w.]+)/.exec(ua) || [];
- browser = {
- name: match[1] || "",
- version: match[2] || "0"
- };
- if (browser.name === "msie" && (browser.version === "6.0" || (browser.version === "7.0" && document.documentMode === 7))) {
- return this;
- }
- return this.each(function(input_field) {
- var $this;
- $this = $(this);
- if (!$this.hasClass("chzn-done")) {
- return $this.data('chosen', new Chosen(this, options));
- }
- });
- }
- });
-
- Chosen = (function(_super) {
-
- __extends(Chosen, _super);
-
- function Chosen() {
- return Chosen.__super__.constructor.apply(this, arguments);
- }
-
- Chosen.prototype.setup = function() {
- this.form_field_jq = $(this.form_field);
- this.current_value = this.form_field_jq.val();
- return this.is_rtl = this.form_field_jq.hasClass("chzn-rtl");
- };
-
- Chosen.prototype.finish_setup = function() {
- return this.form_field_jq.addClass("chzn-done");
- };
-
- Chosen.prototype.set_up_html = function() {
- var container_classes, container_div, container_props, dd_top, dd_width, sf_width;
- this.container_id = this.form_field.id.length ? this.form_field.id.replace(/[^\w]/g, '_') : this.generate_field_id();
- this.container_id += "_chzn";
- container_classes = ["chzn-container"];
- container_classes.push("chzn-container-" + (this.is_multiple ? "multi" : "single"));
- if (this.inherit_select_classes && this.form_field.className) {
- container_classes.push(this.form_field.className);
- }
- if (this.is_rtl) {
- container_classes.push("chzn-rtl");
- }
- this.f_width = this.form_field_jq.outerWidth();
- container_props = {
- id: this.container_id,
- "class": container_classes.join(' '),
- style: 'width: ' + this.f_width + 'px;',
- title: this.form_field.title
- };
- container_div = $("", container_props);
- if (this.is_multiple) {
- container_div.html('');
- } else {
- container_div.html('' + this.default_text + '
');
- }
- this.form_field_jq.hide().after(container_div);
- this.container = $('#' + this.container_id);
- this.dropdown = this.container.find('div.chzn-drop').first();
- dd_top = this.container.height();
- dd_width = this.f_width - get_side_border_padding(this.dropdown);
- this.dropdown.css({
- "width": dd_width + "px",
- "top": dd_top + "px"
- });
- this.search_field = this.container.find('input').first();
- this.search_results = this.container.find('ul.chzn-results').first();
- this.search_field_scale();
- this.search_no_results = this.container.find('li.no-results').first();
- if (this.is_multiple) {
- this.search_choices = this.container.find('ul.chzn-choices').first();
- this.search_container = this.container.find('li.search-field').first();
- } else {
- this.search_container = this.container.find('div.chzn-search').first();
- this.selected_item = this.container.find('.chzn-single').first();
- sf_width = dd_width - get_side_border_padding(this.search_container) - get_side_border_padding(this.search_field);
- this.search_field.css({
- "width": sf_width + "px"
- });
- }
- this.results_build();
- this.set_tab_index();
- return this.form_field_jq.trigger("liszt:ready", {
- chosen: this
- });
- };
-
- Chosen.prototype.register_observers = function() {
- var _this = this;
- this.container.mousedown(function(evt) {
- return _this.container_mousedown(evt);
- });
- this.container.mouseup(function(evt) {
- return _this.container_mouseup(evt);
- });
- this.container.mouseenter(function(evt) {
- return _this.mouse_enter(evt);
- });
- this.container.mouseleave(function(evt) {
- return _this.mouse_leave(evt);
- });
- this.search_results.mouseup(function(evt) {
- return _this.search_results_mouseup(evt);
- });
- this.search_results.mouseover(function(evt) {
- return _this.search_results_mouseover(evt);
- });
- this.search_results.mouseout(function(evt) {
- return _this.search_results_mouseout(evt);
- });
- this.form_field_jq.bind("liszt:updated", function(evt) {
- return _this.results_update_field(evt);
- });
- this.form_field_jq.bind("liszt:activate", function(evt) {
- return _this.activate_field(evt);
- });
- this.form_field_jq.bind("liszt:open", function(evt) {
- return _this.container_mousedown(evt);
- });
- this.search_field.blur(function(evt) {
- return _this.input_blur(evt);
- });
- this.search_field.keyup(function(evt) {
- return _this.keyup_checker(evt);
- });
- this.search_field.keydown(function(evt) {
- return _this.keydown_checker(evt);
- });
- this.search_field.focus(function(evt) {
- return _this.input_focus(evt);
- });
- if (this.is_multiple) {
- return this.search_choices.click(function(evt) {
- return _this.choices_click(evt);
- });
- } else {
- return this.container.click(function(evt) {
- return evt.preventDefault();
- });
- }
- };
-
- Chosen.prototype.search_field_disabled = function() {
- this.is_disabled = this.form_field_jq[0].disabled;
- if (this.is_disabled) {
- this.container.addClass('chzn-disabled');
- this.search_field[0].disabled = true;
- if (!this.is_multiple) {
- this.selected_item.unbind("focus", this.activate_action);
- }
- return this.close_field();
- } else {
- this.container.removeClass('chzn-disabled');
- this.search_field[0].disabled = false;
- if (!this.is_multiple) {
- return this.selected_item.bind("focus", this.activate_action);
- }
- }
- };
-
- Chosen.prototype.container_mousedown = function(evt) {
- var target_closelink;
- if (!this.is_disabled) {
- target_closelink = evt != null ? ($(evt.target)).hasClass("search-choice-close") : false;
- if (evt && evt.type === "mousedown" && !this.results_showing) {
- evt.preventDefault();
- }
- if (!this.pending_destroy_click && !target_closelink) {
- if (!this.active_field) {
- if (this.is_multiple) {
- this.search_field.val("");
- }
- $(document).click(this.click_test_action);
- this.results_show();
- } else if (!this.is_multiple && evt && (($(evt.target)[0] === this.selected_item[0]) || $(evt.target).parents("a.chzn-single").length)) {
- evt.preventDefault();
- this.results_toggle();
- }
- return this.activate_field();
- } else {
- return this.pending_destroy_click = false;
- }
- }
- };
-
- Chosen.prototype.container_mouseup = function(evt) {
- if (evt.target.nodeName === "ABBR" && !this.is_disabled) {
- return this.results_reset(evt);
- }
- };
-
- Chosen.prototype.blur_test = function(evt) {
- if (!this.active_field && this.container.hasClass("chzn-container-active")) {
- return this.close_field();
- }
- };
-
- Chosen.prototype.close_field = function() {
- $(document).unbind("click", this.click_test_action);
- this.active_field = false;
- this.results_hide();
- this.container.removeClass("chzn-container-active");
- this.winnow_results_clear();
- this.clear_backstroke();
- this.show_search_field_default();
- return this.search_field_scale();
- };
-
- Chosen.prototype.activate_field = function() {
- this.container.addClass("chzn-container-active");
- this.active_field = true;
- this.search_field.val(this.search_field.val());
- return this.search_field.focus();
- };
-
- Chosen.prototype.test_active_click = function(evt) {
- if ($(evt.target).parents('#' + this.container_id).length) {
- return this.active_field = true;
- } else {
- return this.close_field();
- }
- };
-
- Chosen.prototype.results_build = function() {
- var content, data, _i, _len, _ref;
- this.parsing = true;
- this.results_data = root.SelectParser.select_to_array(this.form_field);
- if (this.is_multiple && this.choices > 0) {
- this.search_choices.find("li.search-choice").remove();
- this.choices = 0;
- } else if (!this.is_multiple) {
- this.selected_item.addClass("chzn-default").find("span").text(this.default_text);
- if (this.disable_search || this.form_field.options.length <= this.disable_search_threshold) {
- this.container.addClass("chzn-container-single-nosearch");
- } else {
- this.container.removeClass("chzn-container-single-nosearch");
- }
- }
- content = '';
- _ref = this.results_data;
- for (_i = 0, _len = _ref.length; _i < _len; _i++) {
- data = _ref[_i];
- if (data.group) {
- content += this.result_add_group(data);
- } else if (!data.empty) {
- content += this.result_add_option(data);
- if (data.selected && this.is_multiple) {
- this.choice_build(data);
- } else if (data.selected && !this.is_multiple) {
- this.selected_item.removeClass("chzn-default").find("span").text(data.text);
- if (this.allow_single_deselect) {
- this.single_deselect_control_build();
- }
- }
- }
- }
- this.search_field_disabled();
- this.show_search_field_default();
- this.search_field_scale();
- this.search_results.html(content);
- return this.parsing = false;
- };
-
- Chosen.prototype.result_add_group = function(group) {
- if (!group.disabled) {
- group.dom_id = this.container_id + "_g_" + group.array_index;
- return '' + $("").text(group.label).html() + '';
- } else {
- return "";
- }
- };
-
- Chosen.prototype.result_do_highlight = function(el) {
- var high_bottom, high_top, maxHeight, visible_bottom, visible_top;
- if (el.length) {
- this.result_clear_highlight();
- this.result_highlight = el;
- this.result_highlight.addClass("highlighted");
- maxHeight = parseInt(this.search_results.css("maxHeight"), 10);
- visible_top = this.search_results.scrollTop();
- visible_bottom = maxHeight + visible_top;
- high_top = this.result_highlight.position().top + this.search_results.scrollTop();
- high_bottom = high_top + this.result_highlight.outerHeight();
- if (high_bottom >= visible_bottom) {
- return this.search_results.scrollTop((high_bottom - maxHeight) > 0 ? high_bottom - maxHeight : 0);
- } else if (high_top < visible_top) {
- return this.search_results.scrollTop(high_top);
- }
- }
- };
-
- Chosen.prototype.result_clear_highlight = function() {
- if (this.result_highlight) {
- this.result_highlight.removeClass("highlighted");
- }
- return this.result_highlight = null;
- };
-
- Chosen.prototype.results_show = function() {
- var dd_top;
- if (!this.is_multiple) {
- this.selected_item.addClass("chzn-single-with-drop");
- if (this.result_single_selected) {
- this.result_do_highlight(this.result_single_selected);
- }
- } else if (this.max_selected_options <= this.choices) {
- this.form_field_jq.trigger("liszt:maxselected", {
- chosen: this
- });
- return false;
- }
- dd_top = this.is_multiple ? this.container.height() : this.container.height() - 1;
- this.form_field_jq.trigger("liszt:showing_dropdown", {
- chosen: this
- });
- this.dropdown.css({
- "top": dd_top + "px",
- "left": 0
- });
- this.results_showing = true;
- this.search_field.focus();
- this.search_field.val(this.search_field.val());
- return this.winnow_results();
- };
-
- Chosen.prototype.results_hide = function() {
- if (!this.is_multiple) {
- this.selected_item.removeClass("chzn-single-with-drop");
- }
- this.result_clear_highlight();
- this.form_field_jq.trigger("liszt:hiding_dropdown", {
- chosen: this
- });
- this.dropdown.css({
- "left": "-9000px"
- });
- return this.results_showing = false;
- };
-
- Chosen.prototype.set_tab_index = function(el) {
- var ti;
- if (this.form_field_jq.attr("tabindex")) {
- ti = this.form_field_jq.attr("tabindex");
- this.form_field_jq.attr("tabindex", -1);
- return this.search_field.attr("tabindex", ti);
- }
- };
-
- Chosen.prototype.show_search_field_default = function() {
- if (this.is_multiple && this.choices < 1 && !this.active_field) {
- this.search_field.val(this.default_text);
- return this.search_field.addClass("default");
- } else {
- this.search_field.val("");
- return this.search_field.removeClass("default");
- }
- };
-
- Chosen.prototype.search_results_mouseup = function(evt) {
- var target;
- target = $(evt.target).hasClass("active-result") ? $(evt.target) : $(evt.target).parents(".active-result").first();
- if (target.length) {
- this.result_highlight = target;
- this.result_select(evt);
- return this.search_field.focus();
- }
- };
-
- Chosen.prototype.search_results_mouseover = function(evt) {
- var target;
- target = $(evt.target).hasClass("active-result") ? $(evt.target) : $(evt.target).parents(".active-result").first();
- if (target) {
- return this.result_do_highlight(target);
- }
- };
-
- Chosen.prototype.search_results_mouseout = function(evt) {
- if ($(evt.target).hasClass("active-result" || $(evt.target).parents('.active-result').first())) {
- return this.result_clear_highlight();
- }
- };
-
- Chosen.prototype.choices_click = function(evt) {
- evt.preventDefault();
- if (this.active_field && !($(evt.target).hasClass("search-choice" || $(evt.target).parents('.search-choice').first)) && !this.results_showing) {
- return this.results_show();
- }
- };
-
- Chosen.prototype.choice_build = function(item) {
- var choice_id, html, link,
- _this = this;
- if (this.is_multiple && this.max_selected_options <= this.choices) {
- this.form_field_jq.trigger("liszt:maxselected", {
- chosen: this
- });
- return false;
- }
- choice_id = this.container_id + "_c_" + item.array_index;
- this.choices += 1;
- if (item.disabled) {
- html = '' + item.html + '';
- } else {
- html = '' + item.html + '';
- }
- this.search_container.before(html);
- link = $('#' + choice_id).find("a").first();
- return link.click(function(evt) {
- return _this.choice_destroy_link_click(evt);
- });
- };
-
- Chosen.prototype.choice_destroy_link_click = function(evt) {
- evt.preventDefault();
- if (!this.is_disabled) {
- this.pending_destroy_click = true;
- return this.choice_destroy($(evt.target));
- } else {
- return evt.stopPropagation;
- }
- };
-
- Chosen.prototype.choice_destroy = function(link) {
- if (this.result_deselect(link.attr("rel"))) {
- this.choices -= 1;
- this.show_search_field_default();
- if (this.is_multiple && this.choices > 0 && this.search_field.val().length < 1) {
- this.results_hide();
- }
- link.parents('li').first().remove();
- return this.search_field_scale();
- }
- };
-
- Chosen.prototype.results_reset = function() {
- this.form_field.options[0].selected = true;
- this.selected_item.find("span").text(this.default_text);
- if (!this.is_multiple) {
- this.selected_item.addClass("chzn-default");
- }
- this.show_search_field_default();
- this.results_reset_cleanup();
- this.form_field_jq.trigger("change");
- if (this.active_field) {
- return this.results_hide();
- }
- };
-
- Chosen.prototype.results_reset_cleanup = function() {
- this.current_value = this.form_field_jq.val();
- return this.selected_item.find("abbr").remove();
- };
-
- Chosen.prototype.result_select = function(evt) {
- var high, high_id, item, position;
- if (this.result_highlight) {
- high = this.result_highlight;
- high_id = high.attr("id");
- this.result_clear_highlight();
- if (this.is_multiple) {
- this.result_deactivate(high);
- } else {
- this.search_results.find(".result-selected").removeClass("result-selected");
- this.result_single_selected = high;
- this.selected_item.removeClass("chzn-default");
- }
- high.addClass("result-selected");
- position = high_id.substr(high_id.lastIndexOf("_") + 1);
- item = this.results_data[position];
- item.selected = true;
- this.form_field.options[item.options_index].selected = true;
- if (this.is_multiple) {
- this.choice_build(item);
- } else {
- this.selected_item.find("span").first().text(item.text);
- if (this.allow_single_deselect) {
- this.single_deselect_control_build();
- }
- }
- if (!((evt.metaKey || evt.ctrlKey) && this.is_multiple)) {
- this.results_hide();
- }
- this.search_field.val("");
- if (this.is_multiple || this.form_field_jq.val() !== this.current_value) {
- this.form_field_jq.trigger("change", {
- 'selected': this.form_field.options[item.options_index].value
- });
- }
- this.current_value = this.form_field_jq.val();
- return this.search_field_scale();
- }
- };
-
- Chosen.prototype.result_activate = function(el) {
- return el.addClass("active-result");
- };
-
- Chosen.prototype.result_deactivate = function(el) {
- return el.removeClass("active-result");
- };
-
- Chosen.prototype.result_deselect = function(pos) {
- var result, result_data;
- result_data = this.results_data[pos];
- if (!this.form_field.options[result_data.options_index].disabled) {
- result_data.selected = false;
- this.form_field.options[result_data.options_index].selected = false;
- result = $("#" + this.container_id + "_o_" + pos);
- result.removeClass("result-selected").addClass("active-result").show();
- this.result_clear_highlight();
- this.winnow_results();
- this.form_field_jq.trigger("change", {
- deselected: this.form_field.options[result_data.options_index].value
- });
- this.search_field_scale();
- return true;
- } else {
- return false;
- }
- };
-
- Chosen.prototype.single_deselect_control_build = function() {
- if (this.allow_single_deselect && this.selected_item.find("abbr").length < 1) {
- return this.selected_item.find("span").first().after("");
- }
- };
-
- Chosen.prototype.winnow_results = function() {
- var found, option, part, parts, regex, regexAnchor, result, result_id, results, searchText, startpos, text, zregex, _i, _j, _len, _len1, _ref;
- this.no_results_clear();
- results = 0;
- searchText = this.search_field.val() === this.default_text ? "" : $('').text($.trim(this.search_field.val())).html();
- regexAnchor = this.search_contains ? "" : "^";
- regex = new RegExp(regexAnchor + searchText.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), 'i');
- zregex = new RegExp(searchText.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), 'i');
- _ref = this.results_data;
- for (_i = 0, _len = _ref.length; _i < _len; _i++) {
- option = _ref[_i];
- if (!option.disabled && !option.empty) {
- if (option.group) {
- $('#' + option.dom_id).css('display', 'none');
- } else if (!(this.is_multiple && option.selected)) {
- found = false;
- result_id = option.dom_id;
- result = $("#" + result_id);
- if (regex.test(option.html)) {
- found = true;
- results += 1;
- } else if (this.enable_split_word_search && (option.html.indexOf(" ") >= 0 || option.html.indexOf("[") === 0)) {
- parts = option.html.replace(/\[|\]/g, "").split(" ");
- if (parts.length) {
- for (_j = 0, _len1 = parts.length; _j < _len1; _j++) {
- part = parts[_j];
- if (regex.test(part)) {
- found = true;
- results += 1;
- }
- }
- }
- }
- if (found) {
- if (searchText.length) {
- startpos = option.html.search(zregex);
- text = option.html.substr(0, startpos + searchText.length) + '' + option.html.substr(startpos + searchText.length);
- text = text.substr(0, startpos) + '' + text.substr(startpos);
- } else {
- text = option.html;
- }
- result.html(text);
- this.result_activate(result);
- if (option.group_array_index != null) {
- $("#" + this.results_data[option.group_array_index].dom_id).css('display', 'list-item');
- }
- } else {
- if (this.result_highlight && result_id === this.result_highlight.attr('id')) {
- this.result_clear_highlight();
- }
- this.result_deactivate(result);
- }
- }
- }
- }
- if (results < 1 && searchText.length) {
- return this.no_results(searchText);
- } else {
- return this.winnow_results_set_highlight();
- }
- };
-
- Chosen.prototype.winnow_results_clear = function() {
- var li, lis, _i, _len, _results;
- this.search_field.val("");
- lis = this.search_results.find("li");
- _results = [];
- for (_i = 0, _len = lis.length; _i < _len; _i++) {
- li = lis[_i];
- li = $(li);
- if (li.hasClass("group-result")) {
- _results.push(li.css('display', 'auto'));
- } else if (!this.is_multiple || !li.hasClass("result-selected")) {
- _results.push(this.result_activate(li));
- } else {
- _results.push(void 0);
- }
- }
- return _results;
- };
-
- Chosen.prototype.winnow_results_set_highlight = function() {
- var do_high, selected_results;
- if (!this.result_highlight) {
- selected_results = !this.is_multiple ? this.search_results.find(".result-selected.active-result") : [];
- do_high = selected_results.length ? selected_results.first() : this.search_results.find(".active-result").first();
- if (do_high != null) {
- return this.result_do_highlight(do_high);
- }
- }
- };
-
- Chosen.prototype.no_results = function(terms) {
- var no_results_html;
- no_results_html = $('' + this.results_none_found + ' ""');
- no_results_html.find("span").first().html(terms);
- return this.search_results.append(no_results_html);
- };
-
- Chosen.prototype.no_results_clear = function() {
- return this.search_results.find(".no-results").remove();
- };
-
- Chosen.prototype.keydown_arrow = function() {
- var first_active, next_sib;
- if (!this.result_highlight) {
- first_active = this.search_results.find("li.active-result").first();
- if (first_active) {
- this.result_do_highlight($(first_active));
- }
- } else if (this.results_showing) {
- next_sib = this.result_highlight.nextAll("li.active-result").first();
- if (next_sib) {
- this.result_do_highlight(next_sib);
- }
- }
- if (!this.results_showing) {
- return this.results_show();
- }
- };
-
- Chosen.prototype.keyup_arrow = function() {
- var prev_sibs;
- if (!this.results_showing && !this.is_multiple) {
- return this.results_show();
- } else if (this.result_highlight) {
- prev_sibs = this.result_highlight.prevAll("li.active-result");
- if (prev_sibs.length) {
- return this.result_do_highlight(prev_sibs.first());
- } else {
- if (this.choices > 0) {
- this.results_hide();
- }
- return this.result_clear_highlight();
- }
- }
- };
-
- Chosen.prototype.keydown_backstroke = function() {
- var next_available_destroy;
- if (this.pending_backstroke) {
- this.choice_destroy(this.pending_backstroke.find("a").first());
- return this.clear_backstroke();
- } else {
- next_available_destroy = this.search_container.siblings("li.search-choice").last();
- if (next_available_destroy.length && !next_available_destroy.hasClass("search-choice-disabled")) {
- this.pending_backstroke = next_available_destroy;
- if (this.single_backstroke_delete) {
- return this.keydown_backstroke();
- } else {
- return this.pending_backstroke.addClass("search-choice-focus");
- }
- }
- }
- };
-
- Chosen.prototype.clear_backstroke = function() {
- if (this.pending_backstroke) {
- this.pending_backstroke.removeClass("search-choice-focus");
- }
- return this.pending_backstroke = null;
- };
-
- Chosen.prototype.keydown_checker = function(evt) {
- var stroke, _ref;
- stroke = (_ref = evt.which) != null ? _ref : evt.keyCode;
- this.search_field_scale();
- if (stroke !== 8 && this.pending_backstroke) {
- this.clear_backstroke();
- }
- switch (stroke) {
- case 8:
- this.backstroke_length = this.search_field.val().length;
- break;
- case 9:
- if (this.results_showing && !this.is_multiple) {
- this.result_select(evt);
- }
- this.mouse_on_container = false;
- break;
- case 13:
- evt.preventDefault();
- break;
- case 38:
- evt.preventDefault();
- this.keyup_arrow();
- break;
- case 40:
- this.keydown_arrow();
- break;
- }
- };
-
- Chosen.prototype.search_field_scale = function() {
- var dd_top, div, h, style, style_block, styles, w, _i, _len;
- if (this.is_multiple) {
- h = 0;
- w = 0;
- style_block = "position:absolute; left: -1000px; top: -1000px; display:none;";
- styles = ['font-size', 'font-style', 'font-weight', 'font-family', 'line-height', 'text-transform', 'letter-spacing'];
- for (_i = 0, _len = styles.length; _i < _len; _i++) {
- style = styles[_i];
- style_block += style + ":" + this.search_field.css(style) + ";";
- }
- div = $('', {
- 'style': style_block
- });
- div.text(this.search_field.val());
- $('body').append(div);
- w = div.width() + 25;
- div.remove();
- if (w > this.f_width - 10) {
- w = this.f_width - 10;
- }
- this.search_field.css({
- 'width': w + 'px'
- });
- dd_top = this.container.height();
- return this.dropdown.css({
- "top": dd_top + "px"
- });
- }
- };
-
- Chosen.prototype.generate_random_id = function() {
- var string;
- string = "sel" + this.generate_random_char() + this.generate_random_char() + this.generate_random_char();
- while ($("#" + string).length > 0) {
- string += this.generate_random_char();
- }
- return string;
- };
-
- return Chosen;
-
- })(AbstractChosen);
-
- root.Chosen = Chosen;
-
- get_side_border_padding = function(elmt) {
- var side_border_padding;
- return side_border_padding = elmt.outerWidth() - elmt.width();
- };
-
- root.get_side_border_padding = get_side_border_padding;
-
-}).call(this);
\ No newline at end of file
+/* Chosen v0.12.1 | (c) 2011-2013 by Harvest | MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md */
+!function(){var SelectParser;SelectParser=function(){function SelectParser(){this.options_index=0,this.parsed=[]}return SelectParser.prototype.add_node=function(a){return"OPTGROUP"===a.nodeName.toUpperCase()?this.add_group(a):this.add_option(a)},SelectParser.prototype.add_group=function(a){var b,c,d,e,f,g;for(b=this.parsed.length,this.parsed.push({array_index:b,group:!0,label:a.label,children:0,disabled:a.disabled}),f=a.childNodes,g=[],d=0,e=f.length;e>d;d++)c=f[d],g.push(this.add_option(c,b,a.disabled));return g},SelectParser.prototype.add_option=function(a,b,c){return"OPTION"===a.nodeName.toUpperCase()?(""!==a.text?(null!=b&&(this.parsed[b].children+=1),this.parsed.push({array_index:this.parsed.length,options_index:this.options_index,value:a.value,text:a.text,html:a.innerHTML,selected:a.selected,disabled:c===!0?c:a.disabled,group_array_index:b,classes:a.className,style:a.style.cssText})):this.parsed.push({array_index:this.parsed.length,options_index:this.options_index,empty:!0}),this.options_index+=1):void 0},SelectParser}(),SelectParser.select_to_array=function(a){var b,c,d,e,f;for(c=new SelectParser,f=a.childNodes,d=0,e=f.length;e>d;d++)b=f[d],c.add_node(b);return c.parsed},this.SelectParser=SelectParser}.call(this),function(){var AbstractChosen,a;a=this,AbstractChosen=function(){function AbstractChosen(a,b){this.form_field=a,this.options=null!=b?b:{},AbstractChosen.browser_is_supported()&&(this.is_multiple=this.form_field.multiple,this.set_default_text(),this.set_default_values(),this.setup(),this.set_up_html(),this.register_observers(),this.finish_setup())}return AbstractChosen.prototype.set_default_values=function(){var a=this;return this.click_test_action=function(b){return a.test_active_click(b)},this.activate_action=function(b){return a.activate_field(b)},this.active_field=!1,this.mouse_on_container=!1,this.results_showing=!1,this.result_highlighted=null,this.result_single_selected=null,this.allow_single_deselect=null!=this.options.allow_single_deselect&&null!=this.form_field.options[0]&&""===this.form_field.options[0].text?this.options.allow_single_deselect:!1,this.disable_search_threshold=this.options.disable_search_threshold||0,this.disable_search=this.options.disable_search||!1,this.enable_split_word_search=null!=this.options.enable_split_word_search?this.options.enable_split_word_search:!0,this.search_contains=this.options.search_contains||!1,this.single_backstroke_delete=this.options.single_backstroke_delete||!1,this.max_selected_options=this.options.max_selected_options||1/0,this.inherit_select_classes=this.options.inherit_select_classes||!1},AbstractChosen.prototype.set_default_text=function(){return this.default_text=this.form_field.getAttribute("data-placeholder")?this.form_field.getAttribute("data-placeholder"):this.is_multiple?this.options.placeholder_text_multiple||this.options.placeholder_text||AbstractChosen.default_multiple_text:this.options.placeholder_text_single||this.options.placeholder_text||AbstractChosen.default_single_text,this.results_none_found=this.form_field.getAttribute("data-no_results_text")||this.options.no_results_text||AbstractChosen.default_no_result_text},AbstractChosen.prototype.mouse_enter=function(){return this.mouse_on_container=!0},AbstractChosen.prototype.mouse_leave=function(){return this.mouse_on_container=!1},AbstractChosen.prototype.input_focus=function(){var a=this;if(this.is_multiple){if(!this.active_field)return setTimeout(function(){return a.container_mousedown()},50)}else if(!this.active_field)return this.activate_field()},AbstractChosen.prototype.input_blur=function(){var a=this;return this.mouse_on_container?void 0:(this.active_field=!1,setTimeout(function(){return a.blur_test()},100))},AbstractChosen.prototype.results_option_build=function(a){var b,c,d,e,f;for(b="",f=this.results_data,d=0,e=f.length;e>d;d++)c=f[d],c.group&&c.search_match?b+=this.result_add_group(c):!c.empty&&c.search_match&&(b+=this.result_add_option(c)),(null!=a?a.first:void 0)&&(c.selected&&this.is_multiple?this.choice_build(c):c.selected&&!this.is_multiple&&this.single_set_selected_text(c.text));return b},AbstractChosen.prototype.result_add_option=function(a){var b,c;return a.dom_id=this.container_id+"_o_"+a.array_index,b=[],a.disabled||a.selected&&this.is_multiple||b.push("active-result"),!a.disabled||a.selected&&this.is_multiple||b.push("disabled-result"),a.selected&&b.push("result-selected"),null!=a.group_array_index&&b.push("group-option"),""!==a.classes&&b.push(a.classes),c=""!==a.style.cssText?' style="'+a.style+'"':"",'"+a.search_text+""},AbstractChosen.prototype.results_update_field=function(){return this.set_default_text(),this.is_multiple||this.results_reset_cleanup(),this.result_clear_highlight(),this.result_single_selected=null,this.results_build()},AbstractChosen.prototype.results_toggle=function(){return this.results_showing?this.results_hide():this.results_show()},AbstractChosen.prototype.results_search=function(){return this.results_showing?this.winnow_results():this.results_show()},AbstractChosen.prototype.winnow_results=function(){var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o;for(this.no_results_clear(),f=0,g=this.get_search_text(),e=this.search_contains?"":"^",d=new RegExp(e+g.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),"i"),j=new RegExp(g.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),"i"),o=this.results_data,k=0,m=o.length;m>k;k++)if(a=o[k],!a.empty)if(a.group)a.search_match=!1;else{if(a.search_match=!1,d.test(a.html))a.search_match=!0,f+=1;else if(this.enable_split_word_search&&(a.html.indexOf(" ")>=0||0===a.html.indexOf("["))&&(c=a.html.replace(/\[|\]/g,"").split(" "),c.length))for(l=0,n=c.length;n>l;l++)b=c[l],d.test(b)&&(a.search_match=!0,f+=1);a.search_match&&(g.length?(h=a.html.search(j),i=a.html.substr(0,h+g.length)+""+a.html.substr(h+g.length),i=i.substr(0,h)+""+i.substr(h)):i=a.html,a.search_text=i,null!=a.group_array_index&&(this.results_data[a.group_array_index].search_match=!0))}return 1>f&&g.length?(this.update_results_content(""),this.no_results(g)):(this.update_results_content(this.results_option_build()),this.winnow_results_set_highlight())},AbstractChosen.prototype.choices_count=function(){var a,b,c,d;if(null!=this.selected_option_count)return this.selected_option_count;for(this.selected_option_count=0,d=this.form_field.options,b=0,c=d.length;c>b;b++)a=d[b],a.selected&&(this.selected_option_count+=1);return this.selected_option_count},AbstractChosen.prototype.choices_click=function(a){return a.preventDefault(),this.results_showing||this.is_disabled?void 0:this.results_show()},AbstractChosen.prototype.keyup_checker=function(a){var b,c;switch(b=null!=(c=a.which)?c:a.keyCode,this.search_field_scale(),b){case 8:if(this.is_multiple&&this.backstroke_length<1&&this.choices_count()>0)return this.keydown_backstroke();if(!this.pending_backstroke)return this.result_clear_highlight(),this.results_search();break;case 13:if(a.preventDefault(),this.results_showing)return this.result_select(a);break;case 27:return this.results_showing&&this.results_hide(),!0;case 9:case 38:case 40:case 16:case 91:case 17:break;default:return this.results_search()}},AbstractChosen.prototype.generate_field_id=function(){var a;return a=this.generate_random_id(),this.form_field.id=a,a},AbstractChosen.prototype.generate_random_char=function(){var a,b,c;return a="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",c=Math.floor(Math.random()*a.length),b=a.substring(c,c+1)},AbstractChosen.prototype.container_width=function(){return null!=this.options.width?this.options.width:""+this.form_field.offsetWidth+"px"},AbstractChosen.browser_is_supported=function(){var a;return"Microsoft Internet Explorer"===window.navigator.appName?null!==(a=document.documentMode)&&a>=8:!0},AbstractChosen.default_multiple_text="Select Some Options",AbstractChosen.default_single_text="Select an Option",AbstractChosen.default_no_result_text="No results match",AbstractChosen}(),a.AbstractChosen=AbstractChosen}.call(this),function(){var a,Chosen,b,c,d={}.hasOwnProperty,e=function(a,b){function c(){this.constructor=a}for(var e in b)d.call(b,e)&&(a[e]=b[e]);return c.prototype=b.prototype,a.prototype=new c,a.__super__=b.prototype,a};b=this,a=jQuery,a.fn.extend({chosen:function(b){return AbstractChosen.browser_is_supported()?this.each(function(){var c;return c=a(this),c.hasClass("chzn-done")?void 0:c.data("chosen",new Chosen(this,b))}):this}}),Chosen=function(d){function Chosen(){return c=Chosen.__super__.constructor.apply(this,arguments)}return e(Chosen,d),Chosen.prototype.setup=function(){return this.form_field_jq=a(this.form_field),this.current_selectedIndex=this.form_field.selectedIndex,this.is_rtl=this.form_field_jq.hasClass("chzn-rtl")},Chosen.prototype.finish_setup=function(){return this.form_field_jq.addClass("chzn-done")},Chosen.prototype.set_up_html=function(){var b,c;return this.container_id=this.form_field.id.length?this.form_field.id.replace(/[^\w]/g,"_"):this.generate_field_id(),this.container_id+="_chzn",b=["chzn-container"],b.push("chzn-container-"+(this.is_multiple?"multi":"single")),this.inherit_select_classes&&this.form_field.className&&b.push(this.form_field.className),this.is_rtl&&b.push("chzn-rtl"),c={id:this.container_id,"class":b.join(" "),style:"width: "+this.container_width()+";",title:this.form_field.title},this.container=a("",c),this.is_multiple?this.container.html(''):this.container.html(''+this.default_text+'
'),this.form_field_jq.hide().after(this.container),this.dropdown=this.container.find("div.chzn-drop").first(),this.search_field=this.container.find("input").first(),this.search_results=this.container.find("ul.chzn-results").first(),this.search_field_scale(),this.search_no_results=this.container.find("li.no-results").first(),this.is_multiple?(this.search_choices=this.container.find("ul.chzn-choices").first(),this.search_container=this.container.find("li.search-field").first()):(this.search_container=this.container.find("div.chzn-search").first(),this.selected_item=this.container.find(".chzn-single").first()),this.results_build(),this.set_tab_index(),this.set_label_behavior(),this.form_field_jq.trigger("liszt:ready",{chosen:this})},Chosen.prototype.register_observers=function(){var a=this;return this.container.mousedown(function(b){a.container_mousedown(b)}),this.container.mouseup(function(b){a.container_mouseup(b)}),this.container.mouseenter(function(b){a.mouse_enter(b)}),this.container.mouseleave(function(b){a.mouse_leave(b)}),this.search_results.mouseup(function(b){a.search_results_mouseup(b)}),this.search_results.mouseover(function(b){a.search_results_mouseover(b)}),this.search_results.mouseout(function(b){a.search_results_mouseout(b)}),this.search_results.bind("mousewheel DOMMouseScroll",function(b){a.search_results_mousewheel(b)}),this.form_field_jq.bind("liszt:updated",function(b){a.results_update_field(b)}),this.form_field_jq.bind("liszt:activate",function(b){a.activate_field(b)}),this.form_field_jq.bind("liszt:open",function(b){a.container_mousedown(b)}),this.search_field.blur(function(b){a.input_blur(b)}),this.search_field.keyup(function(b){a.keyup_checker(b)}),this.search_field.keydown(function(b){a.keydown_checker(b)}),this.search_field.focus(function(b){a.input_focus(b)}),this.is_multiple?this.search_choices.click(function(b){a.choices_click(b)}):this.container.click(function(a){a.preventDefault()})},Chosen.prototype.search_field_disabled=function(){return this.is_disabled=this.form_field_jq[0].disabled,this.is_disabled?(this.container.addClass("chzn-disabled"),this.search_field[0].disabled=!0,this.is_multiple||this.selected_item.unbind("focus",this.activate_action),this.close_field()):(this.container.removeClass("chzn-disabled"),this.search_field[0].disabled=!1,this.is_multiple?void 0:this.selected_item.bind("focus",this.activate_action))},Chosen.prototype.container_mousedown=function(b){return this.is_disabled||(b&&"mousedown"===b.type&&!this.results_showing&&b.preventDefault(),null!=b&&a(b.target).hasClass("search-choice-close"))?void 0:(this.active_field?this.is_multiple||!b||a(b.target)[0]!==this.selected_item[0]&&!a(b.target).parents("a.chzn-single").length||(b.preventDefault(),this.results_toggle()):(this.is_multiple&&this.search_field.val(""),a(document).click(this.click_test_action),this.results_show()),this.activate_field())},Chosen.prototype.container_mouseup=function(a){return"ABBR"!==a.target.nodeName||this.is_disabled?void 0:this.results_reset(a)},Chosen.prototype.search_results_mousewheel=function(a){var b,c,d;return b=-(null!=(c=a.originalEvent)?c.wheelDelta:void 0)||(null!=(d=a.originialEvent)?d.detail:void 0),null!=b?(a.preventDefault(),"DOMMouseScroll"===a.type&&(b=40*b),this.search_results.scrollTop(b+this.search_results.scrollTop())):void 0},Chosen.prototype.blur_test=function(){return!this.active_field&&this.container.hasClass("chzn-container-active")?this.close_field():void 0},Chosen.prototype.close_field=function(){return a(document).unbind("click",this.click_test_action),this.active_field=!1,this.results_hide(),this.container.removeClass("chzn-container-active"),this.clear_backstroke(),this.show_search_field_default(),this.search_field_scale()},Chosen.prototype.activate_field=function(){return this.container.addClass("chzn-container-active"),this.active_field=!0,this.search_field.val(this.search_field.val()),this.search_field.focus()},Chosen.prototype.test_active_click=function(b){return a(b.target).parents("#"+this.container_id).length?this.active_field=!0:this.close_field()},Chosen.prototype.results_build=function(){return this.parsing=!0,this.selected_option_count=null,this.results_data=b.SelectParser.select_to_array(this.form_field),this.is_multiple?this.search_choices.find("li.search-choice").remove():this.is_multiple||(this.single_set_selected_text(),this.disable_search||this.form_field.options.length<=this.disable_search_threshold?(this.search_field[0].readOnly=!0,this.container.addClass("chzn-container-single-nosearch")):(this.search_field[0].readOnly=!1,this.container.removeClass("chzn-container-single-nosearch"))),this.update_results_content(this.results_option_build({first:!0})),this.search_field_disabled(),this.show_search_field_default(),this.search_field_scale(),this.parsing=!1},Chosen.prototype.result_add_group=function(b){return b.dom_id=this.container_id+"_g_"+b.array_index,''+a("").text(b.label).html()+""},Chosen.prototype.result_do_highlight=function(a){var b,c,d,e,f;if(a.length){if(this.result_clear_highlight(),this.result_highlight=a,this.result_highlight.addClass("highlighted"),d=parseInt(this.search_results.css("maxHeight"),10),f=this.search_results.scrollTop(),e=d+f,c=this.result_highlight.position().top+this.search_results.scrollTop(),b=c+this.result_highlight.outerHeight(),b>=e)return this.search_results.scrollTop(b-d>0?b-d:0);if(f>c)return this.search_results.scrollTop(c)}},Chosen.prototype.result_clear_highlight=function(){return this.result_highlight&&this.result_highlight.removeClass("highlighted"),this.result_highlight=null},Chosen.prototype.results_show=function(){return this.is_multiple&&this.max_selected_options<=this.choices_count()?(this.form_field_jq.trigger("liszt:maxselected",{chosen:this}),!1):(this.container.addClass("chzn-with-drop"),this.form_field_jq.trigger("liszt:showing_dropdown",{chosen:this}),this.results_showing=!0,this.search_field.focus(),this.search_field.val(this.search_field.val()),this.winnow_results())},Chosen.prototype.update_results_content=function(a){return this.search_results.html(a)},Chosen.prototype.results_hide=function(){return this.results_showing&&(this.result_clear_highlight(),this.container.removeClass("chzn-with-drop"),this.form_field_jq.trigger("liszt:hiding_dropdown",{chosen:this})),this.results_showing=!1},Chosen.prototype.set_tab_index=function(){var a;return this.form_field_jq.attr("tabindex")?(a=this.form_field_jq.attr("tabindex"),this.form_field_jq.attr("tabindex",-1),this.search_field.attr("tabindex",a)):void 0},Chosen.prototype.set_label_behavior=function(){var b=this;return this.form_field_label=this.form_field_jq.parents("label"),!this.form_field_label.length&&this.form_field.id.length&&(this.form_field_label=a("label[for='"+this.form_field.id+"']")),this.form_field_label.length>0?this.form_field_label.click(function(a){return b.is_multiple?b.container_mousedown(a):b.activate_field()}):void 0},Chosen.prototype.show_search_field_default=function(){return this.is_multiple&&this.choices_count()<1&&!this.active_field?(this.search_field.val(this.default_text),this.search_field.addClass("default")):(this.search_field.val(""),this.search_field.removeClass("default"))},Chosen.prototype.search_results_mouseup=function(b){var c;return c=a(b.target).hasClass("active-result")?a(b.target):a(b.target).parents(".active-result").first(),c.length?(this.result_highlight=c,this.result_select(b),this.search_field.focus()):void 0},Chosen.prototype.search_results_mouseover=function(b){var c;return c=a(b.target).hasClass("active-result")?a(b.target):a(b.target).parents(".active-result").first(),c?this.result_do_highlight(c):void 0},Chosen.prototype.search_results_mouseout=function(b){return a(b.target).hasClass("active-result")?this.result_clear_highlight():void 0},Chosen.prototype.choice_build=function(b){var c,d,e=this;return c=a("",{"class":"search-choice"}).html(""+b.html+""),b.disabled?c.addClass("search-choice-disabled"):(d=a("",{href:"#","class":"search-choice-close",rel:b.array_index}),d.click(function(a){return e.choice_destroy_link_click(a)}),c.append(d)),this.search_container.before(c)},Chosen.prototype.choice_destroy_link_click=function(b){return b.preventDefault(),b.stopPropagation(),this.is_disabled?void 0:this.choice_destroy(a(b.target))},Chosen.prototype.choice_destroy=function(a){return this.result_deselect(a.attr("rel"))?(this.show_search_field_default(),this.is_multiple&&this.choices_count()>0&&this.search_field.val().length<1&&this.results_hide(),a.parents("li").first().remove(),this.search_field_scale()):void 0},Chosen.prototype.results_reset=function(){return this.form_field.options[0].selected=!0,this.selected_option_count=null,this.single_set_selected_text(),this.show_search_field_default(),this.results_reset_cleanup(),this.form_field_jq.trigger("change"),this.active_field?this.results_hide():void 0},Chosen.prototype.results_reset_cleanup=function(){return this.current_selectedIndex=this.form_field.selectedIndex,this.selected_item.find("abbr").remove()},Chosen.prototype.result_select=function(a){var b,c,d,e;return this.result_highlight?(b=this.result_highlight,c=b.attr("id"),this.result_clear_highlight(),this.is_multiple&&this.max_selected_options<=this.choices_count()?(this.form_field_jq.trigger("liszt:maxselected",{chosen:this}),!1):(this.is_multiple?b.removeClass("active-result"):(this.search_results.find(".result-selected").removeClass("result-selected"),this.result_single_selected=b),b.addClass("result-selected"),e=c.substr(c.lastIndexOf("_")+1),d=this.results_data[e],d.selected=!0,this.form_field.options[d.options_index].selected=!0,this.selected_option_count=null,this.is_multiple?this.choice_build(d):this.single_set_selected_text(d.text),(a.metaKey||a.ctrlKey)&&this.is_multiple||this.results_hide(),this.search_field.val(""),(this.is_multiple||this.form_field.selectedIndex!==this.current_selectedIndex)&&this.form_field_jq.trigger("change",{selected:this.form_field.options[d.options_index].value}),this.current_selectedIndex=this.form_field.selectedIndex,this.search_field_scale())):void 0},Chosen.prototype.single_set_selected_text=function(a){return null==a&&(a=this.default_text),a===this.default_text?this.selected_item.addClass("chzn-default"):(this.single_deselect_control_build(),this.selected_item.removeClass("chzn-default")),this.selected_item.find("span").text(a)},Chosen.prototype.result_deselect=function(b){var c,d;return d=this.results_data[b],this.form_field.options[d.options_index].disabled?!1:(d.selected=!1,this.form_field.options[d.options_index].selected=!1,this.selected_option_count=null,c=a("#"+this.container_id+"_o_"+b),c.removeClass("result-selected").addClass("active-result").show(),this.result_clear_highlight(),this.results_showing&&this.winnow_results(),this.form_field_jq.trigger("change",{deselected:this.form_field.options[d.options_index].value}),this.search_field_scale(),!0)},Chosen.prototype.single_deselect_control_build=function(){return this.allow_single_deselect?(this.selected_item.find("abbr").length||this.selected_item.find("span").first().after(''),this.selected_item.addClass("chzn-single-with-deselect")):void 0},Chosen.prototype.get_search_text=function(){return this.search_field.val()===this.default_text?"":a("").text(a.trim(this.search_field.val())).html()},Chosen.prototype.winnow_results_set_highlight=function(){var a,b;return b=this.is_multiple?[]:this.search_results.find(".result-selected.active-result"),a=b.length?b.first():this.search_results.find(".active-result").first(),null!=a?this.result_do_highlight(a):void 0},Chosen.prototype.no_results=function(b){var c;return c=a(''+this.results_none_found+' ""'),c.find("span").first().html(b),this.search_results.append(c)},Chosen.prototype.no_results_clear=function(){return this.search_results.find(".no-results").remove()},Chosen.prototype.keydown_arrow=function(){var a;return this.results_showing&&this.result_highlight?(a=this.result_highlight.nextAll("li.active-result").first())?this.result_do_highlight(a):void 0:this.results_show()},Chosen.prototype.keyup_arrow=function(){var a;return this.results_showing||this.is_multiple?this.result_highlight?(a=this.result_highlight.prevAll("li.active-result"),a.length?this.result_do_highlight(a.first()):(this.choices_count()>0&&this.results_hide(),this.result_clear_highlight())):void 0:this.results_show()},Chosen.prototype.keydown_backstroke=function(){var a;return this.pending_backstroke?(this.choice_destroy(this.pending_backstroke.find("a").first()),this.clear_backstroke()):(a=this.search_container.siblings("li.search-choice").last(),a.length&&!a.hasClass("search-choice-disabled")?(this.pending_backstroke=a,this.single_backstroke_delete?this.keydown_backstroke():this.pending_backstroke.addClass("search-choice-focus")):void 0)},Chosen.prototype.clear_backstroke=function(){return this.pending_backstroke&&this.pending_backstroke.removeClass("search-choice-focus"),this.pending_backstroke=null},Chosen.prototype.keydown_checker=function(a){var b,c;switch(b=null!=(c=a.which)?c:a.keyCode,this.search_field_scale(),8!==b&&this.pending_backstroke&&this.clear_backstroke(),b){case 8:this.backstroke_length=this.search_field.val().length;break;case 9:this.results_showing&&!this.is_multiple&&this.result_select(a),this.mouse_on_container=!1;break;case 13:a.preventDefault();break;case 38:a.preventDefault(),this.keyup_arrow();break;case 40:a.preventDefault(),this.keydown_arrow()}},Chosen.prototype.search_field_scale=function(){var b,c,d,e,f,g,h,i;if(this.is_multiple){for(c=0,g=0,e="position:absolute; left: -1000px; top: -1000px; display:none;",f=["font-size","font-style","font-weight","font-family","line-height","text-transform","letter-spacing"],h=0,i=f.length;i>h;h++)d=f[h],e+=d+":"+this.search_field.css(d)+";";return b=a("",{style:e}),b.text(this.search_field.val()),a("body").append(b),g=b.width()+25,b.remove(),this.f_width||(this.f_width=this.container.outerWidth()),g>this.f_width-10&&(g=this.f_width-10),this.search_field.css({width:g+"px"})}},Chosen.prototype.generate_random_id=function(){var b;for(b="sel"+this.generate_random_char()+this.generate_random_char()+this.generate_random_char();a("#"+b).length>0;)b+=this.generate_random_char();return b},Chosen}(AbstractChosen),b.Chosen=Chosen}.call(this);
\ No newline at end of file