﻿// JScript File

/* HANDLED ENTER KEY BEHAVIOUR FOR THE IE BROWSER */

/* Attaches special [enter] key behaviour to the document and fields
* to control submission of the form. This is only needed for IE.
*/
function InitSpecialEnterKeyBehaviour() {

    if (document.getElementById) {

        // Tell document not to process Enter key (prevents page Enter-key refresh behaviour)
        if (document.attachEvent)    
            document.attachEvent('onkeypress', IgnoreEnterKey);

        // Attach [Enter] key behaviour to full text input field.
        var arrElementsFT = ['FullTextCriteria'];
        for (var i = 0; i < arrElementsFT.length; ++i) {
            var elIdent = '' + arrElementsFT[i];
            if (document.getElementById(elIdent)) {
                document.getElementById(elIdent).onkeypress = OnEnter_clickFullTextSearchButton;
            }
        }
        // Attach [Enter] key behaviour to advanced serach input fields.
        var arrElementsAS = ['broker', 'city', 'postal', 'area'];
        for (var i = 0; i < arrElementsAS.length; ++i) {
            var elIdent = '' + arrElementsAS[i];
            if (document.getElementById(elIdent)) {
                document.getElementById(elIdent).onkeypress = OnEnter_clickAdvancedSearchButton;
            }
        }
    }
}

// Forces FullText search button to be clicked when [Enter] is detected.
function OnEnter_clickFullTextSearchButton() {
    if (document.getElementById && event && event.keyCode && event.keyCode == 13 
        && document.getElementById('CmdFullTextSearch') ) {
            document.getElementById('CmdFullTextSearch').click();
            }
}

// Forces Advanced search button to be clicked when [Enter] is detected.
function OnEnter_clickAdvancedSearchButton() {
    if (document.getElementById && event && event.keyCode && event.keyCode == 13 
        && document.getElementById('CmdLookupPieces') )
            document.getElementById('CmdLookupPieces').click();
}

// Ignores the Enter key by halting processing of it, allows other keys through.
function IgnoreEnterKey() {
    if (event) {
        if (event.keyCode && event.keyCode == 13) {
            // Tell this to ignore 13=Enter
            event.returnValue = false;
            return false;
        }
        else {
            event.returnValue = true;
            return true;
        }
    }
}

/* When form loads, tell IE to register special [Enter] key behaviour. The attachEvent method is known to IE.
This is the bootstrap code.
*/
if (window.attachEvent) { 
    window.attachEvent('onload', InitSpecialEnterKeyBehaviour)
}
