﻿
function ValidateOnKeyUp(browser, url, e)
{
    if(!e)
        e = window.event || event;
    
    if(e.keyCode == 13)
        return ValidateZIPCode(browser, url);
}

function ValidateZIPCode(browser, url)
{        
	var http_request = false;	
	if (window.XMLHttpRequest) 
	{
		http_request = new XMLHttpRequest(); 
		if (http_request.overrideMimeType) 
		{ 
			http_request.overrideMimeType('text/xml'); 		
		} 
		
	} 
	else if (window.ActiveXObject) 
	{ 
		// IE 
	try 
	{ 
		http_request = new ActiveXObject("Msxml2.XMLHTTP");
	} 
	catch (e) 
	{ 
	try 
	{ 
		http_request = new ActiveXObject("Microsoft.XMLHTTP"); 
	} 
	catch (e) 
	{} 
	} 
	} 
		if (!http_request) 
		{ 			
		}
		
		var zipCode = document.getElementById('zipcode').value;	
		
		if(zipCode == "" || zipCode == null)
		{
		    alert("Please enter zip code.");
		    return false;
		} 
		
		if(document.getElementById("ddlMake").value == "none")
		{
		    alert("Please select a car make"); 
		    return false;
		}
		
		if(document.getElementById("ddlModel").value == "none")
		{
		    alert("Please select a car model"); 
		    return false;
		}
		
		var siteURL = url;
				 						    
		url = url + "dealers-web/Ajax/Server.aspx?request=validatezip&zipcode="+zipCode;
		
		if(browser == "IE")
		    http_request.open('POST', url, false);
		else
		    http_request.open('GET', url, false);
		    
		http_request.send(null); 
		return alertContents(http_request, siteURL, zipCode, document.getElementById("ddlMake").value, document.getElementById("ddlModel").value);
		
}
		  
function alertContents(http_request,urls,zips, make, model) 
{ 
	if (http_request.readyState == 4) 
	{ 
		if (http_request.status == 200) 
		{ 		
			if(http_request.responseText=="false")
			{				    
			    alert("INVALID ZIPCODE!");	
			    return false;		    				    
			}
			else
			{
			    //window.parent.location.href = "http://www.autotropolis.com/car.quote/" + ReplaceSpace(make) + "/" + ReplaceSpace(model) + "/" + zips;
			    window.parent.location.href = urls + ReplaceSpaceForQuote(make) + "/" + ReplaceSpaceForQuote(model) + "/" + zips + "/quote.html";
			    return true;				       
			}
		}
	} 
}

//////////////////////////////////////////////////////////////////

function CastVote(dealerId, url, browser, operationType, city, zipcode, make)
{        
	var http_request = false;	
	if (window.XMLHttpRequest) 
	{
		http_request = new XMLHttpRequest(); 
		if (http_request.overrideMimeType) 
		{ 
			http_request.overrideMimeType('text/xml'); 		
		} 
		
	} 
	else if (window.ActiveXObject) 
	{ 
		// IE 
	try 
	{ 
		http_request = new ActiveXObject("Msxml2.XMLHTTP");
	} 
	catch (e) 
	{ 
	try 
	{ 
		http_request = new ActiveXObject("Microsoft.XMLHTTP"); 
	} 
	catch (e) 
	{} 
	} 
	} 
		if (!http_request) 
		{ 			
		}
		
		if(zipcode != null && zipcode != "")						 						    
		    url = url + "dealers-web/Ajax/Server.aspx?request=cast_vote&dealerId=" + dealerId + "&operationType=" + operationType + "&zipcode=" + zipcode+"&make=" + make;
		    
        else if(city != "" && city != null)
            url = url + "dealers-web/Ajax/Server.aspx?request=cast_vote&dealerId=" + dealerId + "&operationType=" + operationType + "&city=" + city+"&make=" + make;
            
		http_request.onreadystatechange = function(){ alertContents_(http_request)};
		
		if(browser == "IE")
		    http_request.open('POST', url, true);
		else
		    http_request.open('GET', url, true);
		    
		http_request.send(null); 		
		
}
		  
function alertContents_(http_request) 
{
	if (http_request.readyState == 4) 
	{
		if (http_request.status == 200) 
		{
				if(http_request.responseText=="false")
				{
				    return false;
				}
				else
				{
				    var response = http_request.responseText.split("@");
                    document.getElementById("spnTabVote").innerHTML = response[0]+ "&nbsp;";
                    document.getElementById("spanTopDealers").innerHTML = (response[1] == "") ? "Not Found" : response[1];
				    return true;				       
				}
		}
	} 
}

////////////////////////////////////////////

function ReplaceSpace(str)
{
    try
    {
        str = str.toLowerCase();

        var index = str.indexOf(" ");
        while(index != -1)
        {
            str = str.replace(" ", "-");
            index = str.indexOf(" ");
        }
        
        index = str.indexOf("&");	    
        while(index != -1)
        {
            str = str.replace("&", "And");
            index = str.indexOf("&");
        }

	index = str.indexOf("/");
        while(index != -1)
        {
            str = str.replace("/", "-");
            index = str.indexOf("/");
        }
    }
    catch(e) { }
    return str;
}

////////////////////////////////////////////

function ReplaceSpaceForQuote(str)
{
    try
    {
        //str = str.toLowerCase();

        var index = str.indexOf(" ");
        while(index != -1)
        {
            str = str.replace(" ", "-");
            index = str.indexOf(" ");
        }
        
        index = str.indexOf("&");	    
        while(index != -1)
        {
            str = str.replace("&", "And");
            index = str.indexOf("&");
        }
    }
    catch(e) { }
    return str;
}
//////////////////////////////////////////////////////////

////////////////////////////////////////////

function DecodeDealer(str)
{
    try
    {       
        index = str.indexOf("#");
        //alert(index);	    
        while(index != -1)
        {
            str = str.replace("####", "'");
            index = str.indexOf("#");
        }
    }
    catch(e) { }
    return str;
}
//////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////

function trimAll(sString)
{
    while (sString.substring(0,1) == ' ')
    {
    sString = sString.substring(1, sString.length);
    }
    while (sString.substring(sString.length-1, sString.length) == ' ')
    {
    sString = sString.substring(0,sString.length-1);
    }
    return sString;
} 
//////////////////////////////////////////////////////////

function AddRemarks(dealerId, url, browser, editUrl)
{
    //to check if the remarks field is not empty.
    if(document.getElementById("txtRemarks").value == "")
    {
        alert("Please write the remarks to add.");
        return false;
    }
    else if(document.getElementById("txtRemarks").value.length < 10)
    {
        alert("Not enough text for remarks.");
        return false;
    }
    else if(document.getElementById("txtRemarks").value.length >= 1000)
    {
        alert("More than 1000 characters are not allowed for remarks.");
        return false;
    }
    
	var http_request = false;
	if (window.XMLHttpRequest) 
	{
		http_request = new XMLHttpRequest(); 
		if (http_request.overrideMimeType) 
		{ 
			http_request.overrideMimeType('text/xml'); 		
		} 
		
	} 
	else if (window.ActiveXObject) 
	{ 
		// IE 
	try 
	{ 
		http_request = new ActiveXObject("Msxml2.XMLHTTP");
	} 
	catch (e) 
	{ 
	try 
	{ 
		http_request = new ActiveXObject("Microsoft.XMLHTTP"); 
	} 
	catch (e) 
	{} 
	} 
	} 
		if (!http_request) 
		{ 			
		}
				
        //url = url + "dealers-web/Ajax/Server.aspx?request=add_remarks&dealerId=" + dealerId + "&editUrl=" + document.getElementById("hdnEditUrl").value +"&remarks=" + escape(document.getElementById("txtRemarks").value);
        url = url + "dealers-web/Ajax/Server.aspx?request=add_remarks&editUrl=" + editUrl +"&dealerId=" + dealerId + "&remarks=" + escape(document.getElementById("txtRemarks").value);
		
		http_request.onreadystatechange = function(){ AddRemarksResponse(http_request)};
		
		if(browser == "IE")
		    http_request.open('POST', url, true);
		else
		    http_request.open('GET', url, true);
		    
		http_request.send(null); 		
		
}
		  
function AddRemarksResponse(http_request) 
{ 
	if (http_request.readyState == 4) 
	{ 
		if (http_request.status == 200) 
		{ 		
		        if(http_request.responseText != "false")
		        {			
		            var objDiv = document.getElementById("DivRemarks");
		            	 
		            if(http_request.responseText == "")
		            {
				        alert("You have already added reviews.");   
				        objDiv.focus();
				        return false;
				    }
				    
				    
				    objDiv.innerHTML = "";
				    var objP = document.createElement("div");
				    objP.innerHTML = http_request.responseText;
				    document.getElementById("txtRemarks").value = "";
				    objDiv.appendChild(objP);
				        
				    return true;				       
				}
				else
				{				    
				    document.getElementById("txtRemarks").value = "";
				    return false;
				}
		}
	} 
}

function openGMapPopup(url)
{
    var browser=navigator.appName.toLowerCase();
    
    //alert(browser);
    var width  = 455;
    var height = 350;
    var left   = (screen.width  - width)/2;
    var top    = (screen.height - height)/2;
    var params = 'width='+width+', height='+height;
    params += ', top='+top+', left='+left;
    
    if (browser=="Microsoft Internet Explorer".toLowerCase())
    {
        newwin = window.open(url,null,
        params+",height=350,width=455,status=yes,toolbar=no,menubar=no,location=no");
        if (window.focus) {newwin.focus();}
    }
    else
    {
        window.open(url,null,
        params+",height=350,width=455,status=1,toolbar=0,menubar=0,location=0");
        if (window.focus) {newwin.focus();}
    }        
        
    return false;
}

//////////////////////////////////////////////////////////////////

function GoToDealerPage(url, browser, state, city, dealerId, dealerName, make, carAuto, newUsed)
{        
	var http_request = false;	
	if (window.XMLHttpRequest) 
	{
		http_request = new XMLHttpRequest(); 
		if (http_request.overrideMimeType) 
		{ 
			http_request.overrideMimeType('text/xml'); 		
		} 
		
	} 
	else if (window.ActiveXObject) 
	{ 
		// IE 
	try 
	{ 
		http_request = new ActiveXObject("Msxml2.XMLHTTP");
	} 
	catch (e) 
	{ 
	try 
	{ 
		http_request = new ActiveXObject("Microsoft.XMLHTTP"); 
	} 
	catch (e) 
	{} 
	} 
	} 
		if (!http_request) 
		{ 			
		}
		
		if(dealerId != null && dealerName != "")						 						    
		    url = url + "dealers-web/Ajax/Server.aspx?request=GoToDealerPage&state=" + state + "&city=" + city + "&dealerId=" + dealerId + "&dealerName=" + DecodeDealer(dealerName) +"&make=" + make + "&carAuto=" + carAuto + "&newUsed=" + newUsed;
		    
		http_request.onreadystatechange = function(){ DealerPageConfirmed(http_request)};
		
		if(browser == "IE")
		    http_request.open('POST', url, true);
		else
		    http_request.open('GET', url, true);
		    
		http_request.send(null); 		
		
}

function DealerPageConfirmed(http_request)
{
    if (http_request.readyState == 4) 
	{
		if (http_request.status == 200) 
		{
		    //alert(http_request.responseText);
		    window.location.href = http_request.responseText;		    
	        return true;	    
		}
	}    
}

function DeleteRemark(remarkId, dealerId, browser, siteUrl)
{
    var status = window.confirm("Are you sure you want to delete this remark?");
    if(!status)
        return;
    
    
	var http_request = false;
	if (window.XMLHttpRequest) 
	{
		http_request = new XMLHttpRequest(); 
		if (http_request.overrideMimeType) 
		{ 
			http_request.overrideMimeType('text/xml'); 		
		} 
		
	} 
	else if (window.ActiveXObject) 
	{ 
		// IE 
	try 
	{ 
		http_request = new ActiveXObject("Msxml2.XMLHTTP");
	} 
	catch (e) 
	{ 
	try 
	{ 
		http_request = new ActiveXObject("Microsoft.XMLHTTP"); 
	} 
	catch (e) 
	{} 
	} 
	} 
		if (!http_request) 
		{ 			
		}
				
        url = siteUrl + "dealers-web/Ajax/Server.aspx?request=delete_remark&remarkId="+remarkId+"&dealerId="+dealerId;
		
		http_request.onreadystatechange = function(){ DeleteRemarkResponse(http_request)};
		
		if(browser == "IE")
		    http_request.open('POST', url, true);
		else
		    http_request.open('GET', url, true);
		    
		http_request.send(null); 		
		
}
		  
function DeleteRemarkResponse(http_request) 
{ 
	if (http_request.readyState == 4) 
	{ 
		if (http_request.status == 200) 
		{ 		
		        if(http_request.responseText != "false")
		        {				    
				    var objDiv = document.getElementById("DivRemarks");
				    objDiv.innerHTML = "";
				    var objP = document.createElement("div");
				    objP.innerHTML = http_request.responseText;
				    objDiv.appendChild(objP);				    
				    return true;				       
				}
				else
				{
				    document.getElementById("txtRemarks").value = "";
				    return false;
				}
		}
	} 
}