﻿var quickSearchBox;
function openProject() {
    var aCol = $("#search-ajaxbox li.selected a");
    if (aCol.length == 0)
        aCol = $("#search-ajaxbox a");
    if (aCol.length > 0)
        location.href = aCol[0].href;
}

function searchProject() {
    var query = quickSearchBox[0].value;
    if (query == "") {
        jQuery("#search-ajaxbox").hide();
        return;
    }

    var dataObj =
    {
        query: query
    };

    var queryObj = jQuery.param(dataObj);
    jQuery.ajax({
        type: "GET",
        cache: true,
        data: queryObj,
        url: "/Housing/Templates/Units/Search/AjaxQuickSearch.aspx",
        success: function(html) {
            if (quickSearchBox[0].value != query)
                return;

            //keep any existing selected
            var selected = jQuery("#search-ajaxbox li.selected");
            var href = null;
            if (selected.length > 0)
                href = selected.children("a").attr("href");


            //update html
            jQuery("#search-ajaxbox .result").html(html);

            //update existing
            if (href != null) {
                var selAnch = jQuery("#search-ajaxbox a[@href='" + href + "']");
                if (selAnch.length > 0)
                    selAnch.parent().addClass("selected");
            }

            if (html.indexOf('<li>') > -1) {
                jQuery("#search-ajaxbox").show();
                jQuery("#search-ajaxbox .result").show();
            }
            else {
                jQuery("#search-ajaxbox").hide();
                jQuery("#search-ajaxbox .result").hide();
            }
        }
    });
}

var searchText = "Sök på projektnamn";
function initQuickSearch(inputBoxSel) {
    quickSearchBox = jQuery(inputBoxSel);
    quickSearchBox.focus(function() {
        if (quickSearchBox[0].value == searchText) {
            quickSearchBox[0].value = "";
            quickSearchBox.removeClass("blur-info");
        }
        searchProject();
    });

    quickSearchBox.keydown(function(evt) {
        //38 - arrow UP
        //40 - arrow DOWN
        //13 - RETURN
        if (evt.keyCode == 13) {
            openProject();
            return false;
        }
        else if (evt.keyCode == 38 || evt.keyCode == 40) {
            var selected = jQuery("#search-ajaxbox li.selected");

            var newNode = null;
            if (evt.keyCode == 38) {
                if (selected.length > 0)
                    newNode = selected.prev("li");
                if (newNode == null || newNode.length == 0)
                    newNode = jQuery("#search-ajaxbox li:last");
            }
            else //40
            {
                if (selected.length > 0)
                    newNode = selected.next("li");
                if (newNode == null || newNode.length == 0)
                    newNode = jQuery("#search-ajaxbox li:first");
            }
            if (selected.length > 0 && selected[0] != newNode[0])
                selected.removeClass("selected");

            newNode.addClass("selected");
        }
        else
            setTimeout('searchProject()', 10);
    });

    quickSearchBox.blur(function() {
        if (quickSearchBox[0].value == "" || quickSearchBox[0].value == searchText) {
            quickSearchBox.addClass("blur-info");
            quickSearchBox[0].value = searchText;
            jQuery("#search-ajaxbox .result").hide();
        }
    });

    quickSearchBox.blur();
}

