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