﻿var Search = {};
Search.defaultButton;
Search.textBoxElem;

Search.init = function() {
    Search.registerSearchBoxFunctions($get('SearchGo'), $get('SearchText'));
};

Search.registerSearchBoxFunctions = function(buttonElem, textBoxElem) {
    Search.textBoxElem = textBoxElem;
    $addHandler(buttonElem, 'click', Search.searchButtonClick);
    Search.setUpEnterKeyAction(textBoxElem, buttonElem);
};
Search.searchButtonClick = function(e) {
    Search.performKeywordSearch(Search.textBoxElem.value);
    try { e.preventDefault(); e.cancelBubble(); }
    catch (eerror) { e.returnValue = false; }
    return false;
};
Search.performKeywordSearch = function(keywordsValue) {
    window.location.href = "/search/mix.aspx?q=" + encodeURIComponent(keywordsValue.toLowerCase());
    return false;
};

Search.setUpEnterKeyAction = function(inputElement, button) {
    if (inputElement && button) {
        $addHandler(inputElement, "keypress", Search.checkForEnterKeyPress);
        inputElement.defaultButton = button;
        Search.defaultButton = button;
    }
};
Search.checkForEnterKeyPress = function(e) {
    var key = e.keyCode ? e.keyCode : e.rawEvent.keyCode;
    if (key == Sys.UI.Key.enter) {
        Search.defaultButton.click(e);
        try { e.preventDefault(); e.cancelBubble(); }
        catch (eerror) { e.returnValue = false; }
    }
};
$addHandler(window, 'load', Search.init);