﻿//
// © Copyright 2007 Hewlett-Packard
//
// Author:  Christian Kuhn-Küster
//
// Date         Revision    Comments
// -------------------------------------------------------------------------------------------------------
// 01.06.2007   1.0         Initial Release


function addLoadEvent(newOnLoad)
{
    var oldOnLoad = window.onload;
    
    if (typeof window.onload != 'function')
    {
        window.onload = newOnLoad;
    }
    else
    {
        window.onload = function()
        {
            if (oldOnLoad)
                oldOnLoad();

            newOnLoad();
        }
    }
}

addLoadEvent(UpdateCheckboxVisibility);

function UpdateCheckboxVisibility()
{
    var noneChecked = true;
        
    for (i = 0; i < document.forms[0].length; i++)
        if (document.forms[0].elements[i].id.indexOf('CheckOne') != -1)
        {
            if (document.forms[0].elements[i].checked)
                noneChecked = false;
        }     
        
    for (i = 0; i < document.forms[0].length; i++)
         if (document.forms[0].elements[i].id.indexOf('AddToMyListButton') != -1)
         {
            document.forms[0].elements[i].disabled = noneChecked;
         }
         else
             if (document.forms[0].elements[i].id.indexOf('ProductComparisonButton') != -1)
                document.forms[0].elements[i].disabled = noneChecked;
}

var disableVisbilityUpdate = false;

function CheckAllItems(checked)
{
    disableVisbilityUpdate = true;
    
    for (i = 0; i < document.forms[0].length; i++)
        if (document.forms[0].elements[i].id.indexOf('CheckOne') != -1)
        {
            if (document.forms[0].elements[i].checked != checked)
                document.forms[0].elements[i].click();
        }

    disableVisbilityUpdate = false;

    UpdateCheckboxVisibility();
}

function HandleSearchResultsCheckBox(productId, checked)
{
    if (checked)
        AddProduct(productId)
    else
        DeleteProduct(productId);

    var allChecked = true;
    var noneChecked = true;
        
    for (i = 0; i < document.forms[0].length; i++)
        if (document.forms[0].elements[i].id.indexOf('CheckOne') != -1)
        {
            if (document.forms[0].elements[i].checked)
                noneChecked = false;
            else
                allChecked = false;
        }     
        
    for (i = 0; i < document.forms[0].length; i++)
        if (document.forms[0].elements[i].id.indexOf('CheckAll') != -1)
        {
            if (allChecked)
            {
                if (!document.forms[0].elements[i].checked)
                    document.forms[0].elements[i].click();
            }
            else
                if (noneChecked)
                {
                    if (document.forms[0].elements[i].checked)
                        document.forms[0].elements[i].click();
                }
                
            break;            
         }

    if (!disableVisbilityUpdate)
        UpdateCheckboxVisibility();
}

function AddProduct(productId)
{
    if (document.forms[0].CheckedItems.value.indexOf(productId) < 0)
         document.forms[0].CheckedItems.value = document.forms[0].CheckedItems.value + "@" + productId;
}

function DeleteProduct(productId)
{
    if (document.forms[0].CheckedItems.value.indexOf(productId) >= 0)
         document.forms[0].CheckedItems.value = document.forms[0].CheckedItems.value.replace("@" + productId, "");
}

