
 function UpdateBasket() {

     var dQty=0;
     var iQty=0;

     var o;

     if (checkValueIsNumeric(document.getElementById('dogtagqty').value)) {
         if (document.getElementById('dogtagqty').value != '') {
             dQty=document.getElementById('dogtagqty').value;
             DoConversion("Goal/UpdateBasketDogTag");
         }
     } else {
         alert('The quantity of digital dog tags must be numeric');
     }
     if (checkValueIsNumeric(document.getElementById('icecardqty').value)) {
         if (document.getElementById('icecardqty').value != '') {
             iQty=document.getElementById('icecardqty').value;
             DoConversion("Goal/UpdateBasketICECard");
         }
     } else {
         alert('The quantity of ICE cards must be numeric');
     }

     document.getElementById('dogtags').innerHTML=dQty;
     document.getElementById('icecards').innerHTML=iQty;

     document.getElementById('dogtagstotal').innerHTML=formatCurrency(dQty*23.49);
     document.getElementById('icecardstotal').innerHTML=formatCurrency(iQty*18.75);

     document.getElementById('total').innerHTML=formatCurrency((dQty*23.49) + (iQty*18.75));


     if (dQty>0 && iQty>0) {

         document.getElementById('item_name_1').value="Digital UTAG Dog Tags";
         document.getElementById('item_quantity_1').value=dQty;
         document.getElementById('item_price_1').value="23.49";

         if (!document.getElementById('item_name_2')) {
             o=document.createElement('input');
             o.setAttribute('name', 'item_name_2');
             o.setAttribute('id', 'item_name_2');
             o.setAttribute('value', "UTAG ICE Cards");
             o.setAttribute('type', 'hidden');             
             document.getElementById('checkoutform').appendChild(o);
             o=document.createElement('input');
             o.setAttribute('name', 'item_description_2');
             o.setAttribute('id', 'item_description_2');
             o.setAttribute('value', "");
             o.setAttribute('type', 'hidden');             
             document.getElementById('checkoutform').appendChild(o);
             o=document.createElement('input');
             o.setAttribute('name', 'item_quantity_2');
             o.setAttribute('id', 'item_quantity_2');
             o.setAttribute('value', iQty);
             o.setAttribute('type', 'hidden');             
             document.getElementById('checkoutform').appendChild(o);
             o=document.createElement('input');
             o.setAttribute('name', 'item_price_2');
             o.setAttribute('id', 'item_price_2');
             o.setAttribute('value', "18.75");
             o.setAttribute('type', 'hidden');             
             document.getElementById('checkoutform').appendChild(o);
             o=document.createElement('input');
             o.setAttribute('name', 'item_currency_2');
             o.setAttribute('id', 'item_currency_2');
             o.setAttribute('value', "GBP");
             o.setAttribute('type', 'hidden');             
             document.getElementById('checkoutform').appendChild(o);
         }

     } else if (dQty>0 && iQty==0) {

         document.getElementById('item_name_1').value="Digital UTAG Dog Tags";
         document.getElementById('item_quantity_1').value=dQty;
         document.getElementById('item_price_1').value="23.49";

         if (document.getElementById('item_name_2')) {
             document.getElementById('checkoutform').removeChild(document.getElementById('item_name_2'));
             document.getElementById('checkoutform').removeChild(document.getElementById('item_description_2'));
             document.getElementById('checkoutform').removeChild(document.getElementById('item_quantity_2'));
             document.getElementById('checkoutform').removeChild(document.getElementById('item_price_2'));
             document.getElementById('checkoutform').removeChild(document.getElementById('item_currency_2'));
         }

     } else if (iQty>0 && dQty==0) {

         document.getElementById('item_name_1').value="UTAG ICE Cards";
         document.getElementById('item_quantity_1').value=iQty;
         document.getElementById('item_price_1').value="18.75";

         if (document.getElementById('item_name_2')) {
             document.getElementById('checkoutform').removeChild(document.getElementById('item_name_2'));
             document.getElementById('checkoutform').removeChild(document.getElementById('item_description_2'));
             document.getElementById('checkoutform').removeChild(document.getElementById('item_quantity_2'));
             document.getElementById('checkoutform').removeChild(document.getElementById('item_price_2'));
             document.getElementById('checkoutform').removeChild(document.getElementById('item_currency_2'));
         }
     }

 }


 function ValidateCart() {

     DoConversion("Goal/ValidateBasket");

     if (document.getElementById('dogtags').innerHTML=="0" && document.getElementById('icecards').innerHTML=="0") {
         alert("Please add the items you would like to order to your shopping cart");
         return false;
     }

     DoConversion("Goal/CheckoutBasket");

 }



 function rollOver(item) {

     switch (eval("document.getElementById('" + item + "')").className) {
         case "menuitemcurrent" :
             eval("document.getElementById('" + item + "')").className='menuitemcurrenth';
             break;
         case "menuitem" :
             eval("document.getElementById('" + item + "')").className='menuitemh';
             break;
         case "menuitemred" :
             eval("document.getElementById('" + item + "')").className='menuitemredh';
             break;
         case "menuitemredcurrent" :
             eval("document.getElementById('" + item + "')").className='menuitemredcurrenth';
             break;
     }
 }


 function rollOut(item) {

     switch (eval("document.getElementById('" + item + "')").className) {
         case "menuitemcurrenth" :
             eval("document.getElementById('" + item + "')").className='menuitemcurrent';
             break;
         case "menuitemh" :
             eval("document.getElementById('" + item + "')").className='menuitem';
             break;
         case "menuitemredh" :
             eval("document.getElementById('" + item + "')").className='menuitemred';
             break;
         case "menuitemredcurrenth" :
             eval("document.getElementById('" + item + "')").className='menuitemredcurrent';
             break;
     }
 }

function formatNumber(value, dp) {
    var n=parseFloat(value);
    if (isNaN(n)) {
        n=0;
    } else {
        n=n.toFixed(dp);
    }
    return n;
}

function formatCurrency(value) {
    var n=formatNumber(value,2);
    return '£' + n;
}


//----------------------------------------------

function checkValueIsNumeric(value) {

    var validChars="0123456789";
    var c;
    var ok=true;

    if (value.length == 0) return true;

    for (i=0; i<value.length && ok == true; i++) {
        c=value.charAt(i);
        if (validChars.indexOf(c) == -1) {
            ok=false;
        }
    }

    return ok;

}

 var iTimer;
 var nTimer;
 var activeitem='';

 var panels=new Array();
 var lightpanels=new Array();
 var menus=new Array();
 DoImage(1, 'biker');
 DoImage(2, 'hiker');
 DoImage(3, 'sports');
 DoImage(4, 'travel');
 DoImage(5, 'police');
 DoImage(6, 'presents');
 DoImage(7, 'medical');

 function DoImage(index, item) {
     panels[index]=new Image();
     panels[index].src='resource/panel-' + item + '.jpg';
     lightpanels[index]=new Image();
     lightpanels[index].src='resource/lightpanel-' + item + '.jpg';
     menus[index]=new Image();
     menus[index].src='resource/menu-' + item + '.jpg';
 }

 function Activate(item, index) {

     DoConversion("Goal/ActivateItem-" + item);

     if (item != activeitem) {

         if (activeitem != '') {
             if (activeitem=='medical') {
                 eval("document.getElementById('" + activeitem + "').className='menuitemred';");
             } else {
                 eval("document.getElementById('" + activeitem + "').className='menuitem';");
             }
             eval("document.getElementById('" + activeitem + "text').style.display='none';");
             eval("document.getElementById('" + activeitem + "text').style.visibility='hidden';");
         }

         if (item=='medical') {
             eval("document.getElementById('" + item + "').className='menuitemredcurrent';");
         } else {
             eval("document.getElementById('" + item + "').className='menuitemcurrent';");
         }

         RevealBG(item, index);

         activeitem=item;

     }

 }

 function RevealBG(item, index) {

     blendimage('menu', 'menuimg', menus[index].src, 500);
     blendimage('panel', 'panelimg', panels[index].src, 500);


     if (nTimer) {
         clearTimeout(nTimer);
     }
     nTimer=setTimeout("FadeInText('" + item + "', " + index + ")", 800);

 }

 function FadeInText(item, index) {

     blendimage('panel', 'panelimg', lightpanels[index].src, 500);
     changeOpac(0, activeitem + 'text');
     eval("document.getElementById('" + activeitem + "text').style.display='block';");
     eval("document.getElementById('" + activeitem + "text').style.visibility='visible';");
     opacity(item + 'text', 0, 100, 500);

 }

function opacity(id, opacStart, opacEnd, millisec) { 
    //speed for each frame 
    var speed = Math.round(millisec / 100); 
    var timer = 0; 

    //determine the direction for the blending, if start and end are the same nothing happens 
    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++; 
        } 
    } 
} 

//change the opacity for different browsers 
function changeOpac(opacity, id) { 
    var object = document.getElementById(id).style; 
    object.opacity = (opacity / 100); 
    object.MozOpacity = (opacity / 100); 
    object.KhtmlOpacity = (opacity / 100); 
    object.filter = "alpha(opacity=" + opacity + ")"; 
} 
 

function blendimage(divid, imageid, imagefile, millisec) { 
    var speed = Math.round(millisec / 100); 
    var timer = 0; 

    //set the current image as background 
    document.getElementById(divid).style.backgroundImage = "url(" + document.getElementById(imageid).src + ")"; 
     
    //make image transparent 
    changeOpac(0, imageid); 
     
    //make new image 
    document.getElementById(imageid).src = imagefile; 

     if (iTimer) {
         clearTimeout(iTimer);
     }

    //fade in image 
    for(i = 0; i <= 100; i++) { 
        iTimer=setTimeout("changeOpac(" + i + ",'" + imageid + "')",(timer * speed)); 
        timer++; 
    } 
} 