﻿// Jefferson Scher -- Sept. 7, 2006 -- Fx 1.5.0.5 + IE6/WinXPSP2 //
function jfspress(e) {
    // Check event for Enter key only
    var evt = (e) ? e : window.event;
    var key = (evt.keyCode) ? evt.keyCode : evt.which;
    if (key != 13) return true;

    // Check event for target in desired form/nodeName/type
    var target = (evt.target) ? evt.target : evt.srcElement;
    if (!target.form) return true;
    var nod = "input|select";
    if (nod.indexOf(target.nodeName.toLowerCase()) < 0) return true;
    var inpTypes = "text|file|checkbox|radio|select-one|password";
    if (target.getAttribute("type")) {
        if (inpTypes.indexOf(target.getAttribute("type").toLowerCase()) < 0) return true;
    }

    if (target.id == "q") {
        goUrl("http://www.google.com/search?q=" + target.value + "&sitesearch=www.kooncar.com&domains=www.kooncar.com", "google", "");
        target.value = "";
        return false;
    }
    // Find and focus next form control
    //  Find target in the form's elements collection
    var els = target.form.elements;
    for (var i = 0; i < els.length; i++) {
        if (els[i] == target) {
            if (i == els.length - 1) {
                var uldex = i;
                //return true; // last element, do default
                return false;

            } else {
                var eldex = i;
                break;
            }
        }
    }
    //alert(els[eldex].tabIndex);
    //  If control has manually set tabIndex, try to find next higher
    if (target.tabIndex != 0) {
        var minTI = 999;
        var minTIel = -1;
        for (var k = 0; k < els.length; k++) {
            if (k != eldex && els[k].tabIndex >= target.tabIndex && els[k].tabIndex < minTI &&
                        els[k].disabled == false && els[k].type != "hidden") {
                minTI = els[k].tabIndex;
                minTIel = k;
            }
        }
        if (minTIel > -1) { // go to next by numbered tabIndex
            els[minTIel].focus();
            return false;
        }
    }

    //  Try natural tab order, forward only
    for (var j = eldex + 1; j < els.length; j++) {
        if (els[j].tabIndex == 0 && els[j].disabled == false && els[j].type != "hidden") { // go to next in natural order
            els[j].focus();
            return false;
        }
    }

    // TEMPORARY CATCH ALL FOR TESTING ONLY
    //alert("Not handled; eldex=" + eldex);
    return false;
} // end function jfspress()

function setupKeyCode() {
    // add onkeydown event handlers to <form>s
    var forms = document.getElementsByTagName("FORM");
    for (var i = 0; i < forms.length; i++) {
        forms[i].onkeypress = jfspress;
    }
} // end function setup()
//window.onload = setup; // add onkeypress to each form


function swapBGOver(obj) {
    obj.style.backgroundColor = "#a6d2e2";
}

function swapBGOut(obj) {
    obj.style.backgroundColor = "";
}
