
    function ConvertToPounds(num) 
    {
	    var i,l,d;
	    var nums;
	    var ret;
	    nums = String(Math.round(num*100));
	    
	    while (nums.length <3) nums = "0" + nums;
	    l = nums.length-3;
	    ret = "." + nums.charAt(l+1) + nums.charAt(l+2);
	    d=0;
	    for (i=l; i>=0; i--) 
	    {
	        ret = nums.charAt(i) + ret;
		    d++;
		    if (d==3 && i>0) 
		    {
		        ret="," + ret;
			    d=0;
		    }
	    }
	    
	    return "&pound;" + ret;
    }
    
    function DoHoverBox(name, extraprice, ispaint)
    {	    

        var message = "<span style='color: #031762; font-weight: bold;'>" + name + "</span>"; 

        if (extraprice != 0)
		    message += '<br />Add ' + ConvertToPounds(extraprice) + ' to base specification price.<br />';
	    else
		    message += '<br />No additional cost.<br/>';
	if(ispaint)
	{
	    message += "&raquo;&nbsp;<span style='color: #396176; text-decoration: underline;'>Click to view</span>";
	}
	    return message;
    }
	    
    function SelectPaint(paintId, imgName, paintName, paintPrice) 
    {
        ShowTrimsForPaint(paintId);
        
        var swatches = document.getElementById('paintswatches').getElementsByTagName("img");
        
        for(i = 0; i < swatches.length; i++)
        {
            swatches[i].src = swatches[i].src.replace("_selected.gif",".gif");
        }
    
        var swatch = document.getElementById('swatch_' + imgName);
        
        UpdatePaintName(paintName);

        
        swatch.src = swatch.src.replace(".gif","_selected.gif");
        
        
        var carimage = document.getElementById('imgCar');
        
        carimage.src = carimage.src.substring(0,carimage.src.lastIndexOf("-") + 1) + imgName + ".jpg";
        
        selectedPaintId = paintId;
      
        UpdateTotalPrice(modelPrice + paintPrice);
        SelectFirstTrimForAllPaints();
 
    }
    
    function SelectFirstTrimForAllPaints()
    {
        var paints = document.getElementById('trimswatches').getElementsByTagName("div");
        
        for(i = 0; i < paints.length; i++)
        {
            var swatches = paints[i].getElementsByTagName("img");
            
            for(j = 0; j < swatches.length; j++)
            {
                swatches[j].src = swatches[j].src.replace("_selected.gif",".gif");
                
                if(j == 0)
                {
                    swatches[j].src = swatches[j].src.replace(".gif","_selected.gif");
                }
            }
        
        }    
    }
	
    
    function UpdateTotalPrice(value)
    {
        document.getElementById('spnPrice').innerHTML = ConvertToPounds(value);
    }
    
    function UpdatePaintName(value)
    {
        document.getElementById('lblPaintName').innerHTML = value;
    }
    
    function UpdateTrimName(value)
    {
        document.getElementById('lblTrimName').innerHTML = value.toLowerCase();
    }
    
    function SelectTrim(trimName, trimPrice) 
    {
        
        var swatches = document.getElementById('paint' + selectedPaintId + 'trims').getElementsByTagName("img");
        
        for(i = 0; i < swatches.length; i++)
        {
            swatches[i].src = swatches[i].src.replace("_selected.gif",".gif");
            
            if(trimName == swatches[i].alt)
            {
                swatches[i].src = swatches[i].src.replace(".gif","_selected.gif");
            }
            
        }
        
        UpdateTotalPrice(modelPrice + trimPrice);  
        UpdateTrimName(trimName);

    }
    
    function ShowTrimsForPaint(paintId)
    {
        // hide all other trims
        
        var swatches = document.getElementById('trimswatches').getElementsByTagName("div");
        
        for(i = 0; i < swatches.length; i++)
        {
            swatches[i].style.display = 'none';
        }
        
        // show relevant trims
        
        document.getElementById('paint' + paintId + 'trims').style.display = 'inline';
    }
    
    function ShowSpecTable(spectype)
    {
        
        switch(spectype)
        {
            case "tech":
                document.getElementById('EquipmentTable').style.display = 'none';
                document.getElementById('AccessoryContent').style.display = 'none';
                document.getElementById('TechnicalTable').style.display = '';
		document.getElementById('OffersTable').style.display = 'none';
                document.getElementById('specTitle').innerHTML = "TECHNICAL";
                break;
            case "equip":
                document.getElementById('TechnicalTable').style.display = 'none';
                document.getElementById('AccessoryContent').style.display = 'none';
                document.getElementById('EquipmentTable').style.display = '';
		document.getElementById('OffersTable').style.display = 'none';
                document.getElementById('specTitle').innerHTML = "EQUIPMENT";
                break;
	    case "offers":
                document.getElementById('TechnicalTable').style.display = 'none';
                document.getElementById('AccessoryContent').style.display = 'none';
                document.getElementById('EquipmentTable').style.display = 'none';
		document.getElementById('OffersTable').style.display = '';
                document.getElementById('specTitle').innerHTML = "OFFERS";
                break;
            case "accessory":
                document.getElementById('TechnicalTable').style.display = 'none';
                document.getElementById('AccessoryContent').style.display = 'inline';
                document.getElementById('EquipmentTable').style.display = 'none';
		document.getElementById('OffersTable').style.display = 'none';
                document.getElementById('specTitle').innerHTML = "ACCESSORIES";
                break;
        }

	    SetTabSelected(spectype)
	
		goSetHeight();
    }
	

    function SetTabSelected(spectype)
    {
	document.getElementById('tech_tab').style.backgroundPosition = '0px 0px';
	document.getElementById('equip_tab').style.backgroundPosition = '0px 0px';
	document.getElementById('offers_tab').style.backgroundPosition = '0px 0px';
	document.getElementById('accessory_tab').style.backgroundPosition = '0px 0px';

    	document.getElementById(spectype + '_tab').style.backgroundPosition = '0 42px';

    }
    
    function ShowOffers()
    {
        document.getElementById('TechnicalTable').style.display = 'none';
        document.getElementById('EquipmentTable').style.display = 'none';
		document.getElementById('AccessoryTable').style.display = 'none';
        document.getElementById('specTitle').innerHTML = "OFFERS";

	SetTabSelected('offers');
	
        goSetHeight();
    
    }
	

    function showSpecGroup(specTypeName, groupID)
    {

        var techgroups = document.getElementById(specTypeName + 'specs').getElementsByTagName("table");
        
        for(i = 0; i < techgroups.length; i++)
        {
            techgroups[i].style.display = 'none';
        }
        
        document.getElementById(specTypeName + 'Group_' + groupID).style.display = 'inline';
        
        
        
        var techgroups = document.getElementById(specTypeName + 'groups').getElementsByTagName("li");   
        
        for(i = 0; i < techgroups.length; i++)
        {
            if(i % 2 == 0)
            {
                techgroups[i].className = 'r1';
            }
            else
            {
                techgroups[i].className = 'r2';
            }
        }   
        
        document.getElementById(specTypeName + 'Group_' + groupID).style.display = 'inline';   
	
	goSetHeight();
        
    }
    
    /*************************************************************************
      This code is from Dynamic Web Coding at www.dyn-web.com
      Copyright 2001-4 by Sharon Paine 
      See Terms of Use at www.dyn-web.com/bus/terms.html
      regarding conditions under which you may use this code.
      This notice must be retained in the code as is!
    *************************************************************************/

    function initScrollLayer() {
		
      // arguments: id of layer containing scrolling layers (clipped layer), id of layer to scroll, 
      // if horizontal scrolling, id of element containing scrolling content (table?)
      var wndo = new dw_scrollObj('wn', 'lyr1', 't1');
      
      // pass id('s) of scroll area(s) if inside table(s)
      dw_scrollObj.GeckoTableBugFix('wn'); 

    }
    
    var DerivList;
    var CurrentDerivId;
   
    function navMoveLeft()
    {
        document.getElementById('ifDerivative').src = GetPrevDerivUrl();
        dw_scrollObj.scrollBy('wn',176,0); 
        return false;
    }
    
    function navMoveRight()
    {   
        document.getElementById('ifDerivative').src = GetNextDerivUrl();
        dw_scrollObj.scrollBy('wn',-176,0); 
        return false;
    }
    
    function GetPrevDerivUrl()
    {
        for(var i = 0; i < DerivList.length; i++)
		{
		    if(DerivList[i][1] == CurrentDerivId)
		    {
		        // enable right button as scrolling to left from rightmost item
		        if(i == DerivList.length-1)
		        {
		            document.getElementById('rightarrow').style.visibility = 'visible';
		        }
		        
		        // disable left button as scrolling to leftmost item
		        if(i == 1)
		        {
		            document.getElementById('leftarrow').style.visibility = 'hidden';
		        }	       
		        
		        CurrentDerivId = DerivList[i-1][1];
		        return "derivative.aspx?modelId=17&derivID=" + DerivList[i-1][1];
		    }
		}    
    }
    
    function GetNextDerivUrl()
    {
        for(var i = 0; i < DerivList.length; i++)
		{
		    if(DerivList[i][1] == CurrentDerivId)
		    {
		        // enable left button as scrolling to right from leftmost item
		        if(i == 0)
		        {
		            document.getElementById('leftarrow').style.visibility = 'visible';
		        }
		        
		        // disable right button as scrolling to rightmost item
		        if(i == DerivList.length-2)
		        {
		            document.getElementById('rightarrow').style.visibility = 'hidden';
		        }
		        
		        
		        CurrentDerivId = DerivList[i+1][1];
		        return "derivative.aspx?modelId=17&derivID=" + DerivList[i+1][1];
		    }
		}    
    }