function hoverMenu(menuItem, splash, on, home, tag) {
    if (home) {
        var houseHome = document.getElementById('menuHouseHome');
        houseHome.src = (on?"/static/img/house_home_white.jpg":"/static/img/house_home.jpg");
        menuItem.className = (on?'menuItemHover':'menuItem');
    }else if (splash) {
        var popupSplash = document.getElementById('menuHover_'+tag);
        popupSplash.style.display = (on?"block":"none");
        menuItem.className = (on?'menuItemHover':'menuItem');
        if (document.all) {
            popupSplash.style.left = (mouseCoordsXY.x + 120) + "px";
        } else {
            popupSplash.style.left = (menuItem.offsetLeft + menuItem.offsetWidth) + "px";
        }
        popupSplash.style.top = (mouseCoordsXY.y - 75) + "px";
    } else {
        menuHover(tag,on);
    }
}
function hoverOpacity(id, opacStart, opacEnd, millisec) {
    var speed = Math.round(millisec / 100);
    var timer = 0;
    if(opacStart > opacEnd) {
        for(i = opacStart; i >= opacEnd; i--) {
            setTimeout("hoverChangeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    } else if(opacStart < opacEnd) {
        for(i = opacStart; i <= opacEnd; i++)
            {
            setTimeout("hoverChangeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    }
}
function hoverChangeOpac(opacity, id) {
    try {
        var object = document.getElementById(id).style;
        if (opacity <= 0) {
            object.style.display="none";
        } else {
          object.MozOpacity = (opacity / 100);
          object.filter = "alpha(opacity=" + opacity + ")";
        }
    } catch (exception) {
    }
}

document.onmousemove = setLocalMouseXY; var lastOpenedMenuId = 0; var localX = 0; var localY = 0; var checkzone = false;
function setLocalMouseXY(ev) {
    mouseMove(ev);
    try {
        coords = mouseCoords(ev);
        localX = coords.x;
        localY = coords.y;
    } catch (exception) {
        localX = window.event.clientX;
        localY = window.event.clientY;
    }
    if(checkzone) { isOutOfZone(); }
}
function menuHover(id,on) {
    if (on && lastOpenedMenuId != 0) {
        document.getElementById('menu_'+lastOpenedMenuId).className='menuItem';
        document.getElementById('subMenu_'+lastOpenedMenuId).style.display='none';
    }
    lastOpenedMenuId = id;
    if (on) {
        var o = document.getElementById('menu_'+id);
        o.className='menuItemHover';
        var localpos = getPosition(o);
        var menu = document.getElementById('subMenu_'+id);
        if ((menu.className+"").indexOf("dontShow") == -1) {
            menu.style.display='block';
            menu.style.left = parseInt(localpos.x) + 'px';
            menu.style.top = (parseInt(localpos.y)+25) + 'px';
            opacity(id, 99, 100, 0);
        }
        checkzone = false;
    } else {
        checkzone = true;
    }
}
function isHoverZone(id) {
    if (id == 0) {
        return false;
    } else if (id) {
        var submenu = document.getElementById('subMenu_'+id);
        var x1 = submenu.offsetLeft - 10;
        var y1 = 505;
        var x2 = parseInt(x1) + submenu.offsetWidth + 10;
        var y2 = parseInt(y1) + submenu.offsetHeight + 45;
        if (localX >= x1 && localX <= x2 && localY >= y1 && localY <= y2) {
            return true;
        } else {
            return false;
        }
    } else {
        return false;
    }
}
function isOutOfZone() {
    if (lastOpenedMenuId != 0) {
        if (!isHoverZone(lastOpenedMenuId)) {
            document.getElementById('menu_'+lastOpenedMenuId).className='menuItem';
            opacity(lastOpenedMenuId, 100, 0, 150);
            checkzone = false;
        }
    }
}
function opacity(id, opacStart, opacEnd, millisec) {
    var speed = Math.round(millisec / 100);
    var timer = 0;
    if(opacStart > opacEnd) {
        for(i = opacStart; i >= opacEnd; i--) {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    } else if(opacStart < opacEnd) {
        for(i = opacStart; i <= opacEnd; i++)
            {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    }
}
function changeOpac(opacity, id) {
    try {
        var object = document.getElementById("subMenu_"+id).style;
        if (opacity <= 0) {
            object.style.display="none";
        } else {
          object.MozOpacity = (opacity / 100);
          object.filter = "alpha(opacity=" + opacity + ")";
        }
    } catch (exception) {
    }
}

function addOrder(id) {
    var type = document.getElementById('type'+id).innerHTML;
    var format = document.getElementById('format'+id).innerHTML;
    var price = document.getElementById('price'+id).innerHTML;
    var priceperlb = document.getElementById('priceperlb'+id).innerHTML;
    var quantity = document.getElementById('quantity'+id).options[document.getElementById('quantity'+id).selectedIndex].value;

    document.getElementById('type'+id+'_target').innerHTML = type;
    document.getElementById('format'+id+'_target').innerHTML = format;
    document.getElementById('price'+id+'_target').innerHTML = price;
    document.getElementById('priceperlb'+id+'_target').innerHTML = priceperlb;

    var input = document.getElementById('quantityinput'+id+'_target');
    if (input.value != 0) {
        quantity = parseInt(quantity)+parseInt(input.value);
    }
    document.getElementById('quantitylbl'+id+'_target').innerHTML = quantity;
    input.value = quantity;

    document.getElementById('tr_target_'+id).style.display='';
}

function removeOrder(id) {
    document.getElementById('tr_target_'+id).style.display='none';
    document.getElementById('quantityinput'+id+'_target').value = 0;
}

function sendOrderForm() {
    var appendField="";
    for (var i = 1; i < 10; i++) {
        appendField+="&fieldName"+i+"="+document.getElementById('fieldName'+i).value;
        if(document.getElementById('field'+i).type == "checkbox") {
            if (document.getElementById('field'+i).checked) {
                appendField+="&field"+i+"=checked.";
            } else {
                appendField+="&field"+i+"=not checked.";
            }
        } else {
          appendField+="&field"+i+"="+document.getElementById('field'+i).value;
        }
    }
    var foundProduct = false;
    for (var i = 1; i < 10; i++) {
        if (document.getElementById('quantityinput'+i+'_target').value != 0) {
            var type = document.getElementById('type'+i+'_target').innerHTML;
            var format = document.getElementById('format'+i+'_target').innerHTML;
            var price = document.getElementById('price'+i+'_target').innerHTML;
            var quantity = document.getElementById('quantityinput'+i+'_target').value;
            appendField+="&fieldName"+(i+10)+"=Product Item (Quantity: "+quantity+")";
            appendField+="&field"+(i+10)+"="+type+", "+format+", "+price+"";
            foundProduct = true;
        }
    }
    var form = document.getElementById('orderForm');
    var inputs = form.getElementsByTagName("input");
    var validForm = foundProduct;
    for (i in inputs) {
        if (inputs[i].type=="text" && inputs[i].value=="") {
            validForm = false;
            break;
        }
    }
    if (!validForm) {
        popError('errorMessageDivEmptyForm');
    } else {
        ajax("/action/submitComplexFormAjax?fieldCount=19&subject=Order Form"+appendField, confirmOrderForm);
    }
}

function confirmOrderForm() {
    document.getElementById('orderDiv').style.display='none';
    document.getElementById('orderButtonContainer').style.display='none';
    document.getElementById('orderDivConfirm').style.display='block';
}