/
script.js
50 lines (41 loc) · 1.67 KB
/
script.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
jQuery(function(){
/*
* SEARCH-BOX DROPDOWN
*/
if (!jQuery('#fancysearch__input, #fancysearch__ns_custom')) return;
// Replace HTML dropdown with the icon dropdown, but keep the current
// value.
// replace dropdown with hidden field
var $oldNamespaceSelect = jQuery(".fancysearch_namespace");
var curNS = $oldNamespaceSelect.val();
var $newNamespaceSelect = jQuery('<input class="fancysearch_namespace" type="hidden" ' +
'name="namespace" value="' + curNS +
'" />');
$oldNamespaceSelect.replaceWith($newNamespaceSelect);
// show the picker
var $nspicker = jQuery('#fancysearch__ns_custom').show();
// scroll the picker to the position of the current namespace
var $curItem = jQuery('.fancysearch_ns_' + curNS);
$curItem.parent().css('top', ($curItem.prevAll().size()*-31) + 'px');
// add picker mechanics
$nspicker.click(function(evt) {
var $picker = jQuery(this);
if ($picker.hasClass('closed')) {
$picker.removeClass('closed');
} else {
$picker.addClass('closed');
var tgt = evt.target;
jQuery(".fancysearch_namespace").val(tgt.innerHTML);
jQuery(tgt).parent().animate({'top': (jQuery(tgt).prevAll().size()*-31) + 'px' },"slow");
}
});
// Support qsearch
jQuery('#fancysearch__input').keyup(function (evt) {
var ns = jQuery(".fancysearch_namespace").val();
var $qin = jQuery('#qsearch__in');
var val = jQuery(this).val();
if (ns !== '') $val += ' @' + ns;
$qin.val(val);
$qin.keyup();
});
});