﻿
function DeleteCompare(id) 
{
    var answer = confirm("Are you sure you wish to delete?")

    if (answer) 
    {

        var startpos = document.cookie.indexOf("compare") + 7 + 1;

        var endpos = document.cookie.indexOf(";", startpos) ;

        if (endpos < 0)
            endpos = document.cookie.length;

        var now = new Date();
        var cookies = document.cookie.substring(startpos,endpos);
        var empty = true;

        if (cookies.indexOf(',') != -1) 
        {
            now.setMonth(now.getMonth() + 3);
            empty = false;
        }
           
        var child = $get('tbl' + id);
        child.parentNode.removeChild(child);
        //parent.removeChild(child);
        
        cookies = cookies.replace("," + id, "");
        cookies = cookies.replace(id + ",", "");
        cookies = cookies.replace(id, "");

        
        document.cookie = "compare="+(cookies) + "; expires= " + now.toGMTString() + "; path=/";

        if (!empty) 
        {
            ShowIndicator();
            AdvertService.CompareInfo(cookies);
        }
    }
}

function BuildAdvert(i, template, pageUrl) 
{
    if (i.PriceOption == "Select") 
    {
        i.PriceOption = "";
        i.Price = i.Price.format("c").replace('¤', 'R');
    }
    else 
    {
        i.Price = "";
    }

    var viewUrl = m_pageLocation + "/tabid/" + $get('hdViewTab').value + "/Default.aspx?id=" + i.AdvertID;
    
    var imgURL;

    if (i.Mileage <= 0) 
        i.Mileage = "Mileage not specified";
    else 
        i.Mileage = i.Mileage + " km";


    if (i.Photo != null) 
        i.Photo = m_pageLocation + "/AdvertImage.aspx?id=" + i.Photo + "&type=small";

    return parseTemplate(template, { i: i, extra: {ViewUrl: viewUrl} });
}

function CompareCallback(result, userContext, methodName) 
{
    var template;
    template = $get("CompareTemplate").innerHTML;

    switch (methodName) 
    {
        default:

            {
				var width = (result.length * 150) + 150;
				
				$get("divDSAdvert").style.width = width;
				
                BuildGrid(template, result, $get("divDSAdvert"), BuildAdvert, "No Adverts found");
            }


    }
}

function CompareClick(id) 
{
    AdvertService.set_defaultSucceededCallback(CompareCallback);

    
    if (document.cookie.indexOf("compare") != -1) 
    {
        
        
        var startpos = document.cookie.indexOf("compare") + 7 + 1;

        var endpos = document.cookie.indexOf(";", startpos) ;

        if (endpos < 0)
            endpos = document.cookie.length;

        var cookies = document.cookie.substring(startpos, endpos);
        
        if(id.length == 0)
        {
            $get("ComparerContainer").style.display = 'block';
            ShowIndicator();
            AdvertService.CompareInfo(cookies);
        }
        else
        if (cookies.indexOf("," + id) == -1 && cookies.indexOf(id) == -1) 
        {
            var cookieArray = cookies.split(',');

            if (cookieArray.length == 10) 
            {
                alert("You have reached the maximum vehicles in the compare list (" + cookieArray.length + ")");
				$get("ComparerContainer").style.display = 'block';
                ShowIndicator();
                AdvertService.CompareInfo(cookies);
            }
            else  
            {
                var now = new Date();
                now.setMonth(now.getMonth() + 3);
                document.cookie = "compare=" + cookies + "," + id + "; expires= " + now.toGMTString() + "; path=/";

                var cmpre = unescape(cookies+ "," + id);
					$get("ComparerContainer").style.display = 'block';
                ShowIndicator();
                AdvertService.CompareInfo(cmpre);
            }
        }
        else 
        {

            alert("You have already added this vehicle");
			$get("ComparerContainer").style.display = 'block';
            ShowIndicator();
            AdvertService.CompareInfo(cookies);
         }
    }
    else 
    {

        // the cookie couldn't be found! it was never set before, or it expired.
        var now = new Date();
        now.setMonth(now.getMonth() + 3);

        document.cookie = "compare=" + escape(id) + "; expires= " + now.toGMTString() + "; path=/";
		$get("ComparerContainer").style.display = 'block';
        ShowIndicator();
        AdvertService.CompareInfo(id);
        
    }
}

function CloseCompare() {

    $get('ComparerContainer').style.display = 'none';
}

