// Parkdeck functionality for Autoscout24.de
// By Sevenval AG - Pelle Boese <boese@7val.com>
// Changed by Holger Wendel <wendel@7val.com>
// Last changed: 10/03/2007

function park_Delete(cookie, carId, element, url) {
	parkedCars = park_GetCookie(cookie);
	if(parkedCars==null)
		return false;
		
	newCars = new Array();
	cars = parkedCars.split(",");
	c = 0;
	for(i=0; i<cars.length; i++) {
		if(cars[i] != carId) { // Ist das aktuelle Auto nicht das zu löschende Auto...
			newCars[c] = cars[i]; // ...wird es in das Array newCars augenommen
                        c++; // anschließend wir der Index um eins erhöht
		}
	}
        if(newCars.length == 0) { // Ist kein Auto mehr übrig...
          park_DeleteCookie(cookie); // ...wird das Cookie gelöscht...
          window.location.reload(); // Reload, damit die Anzeige der geparkten Autos aktualisiert wird.
	  // park_LoadCars(element, url, cookie);
        } else {
	  park_SetCookie(cookie, newCars.join(','));
          window.location.reload(); // Reload, damit die Anzeige der geparkten Autos aktualisiert wird.
	  // park_LoadCars(element, url, cookie);
        }
}

function park_LoadCars(updater, url, cookie) {
	if(!document.getElementById(updater))
		return false;
	else 
		updater = document.getElementById(updater);
	
	updater.innerHTML = '';
	parkedCars = park_GetCookie(cookie);
	if(parkedCars==null) {
          document.getElementsByName("action[]compare")[0].disabled = true;
          document.getElementsByName("action[]compare")[1].disabled = true;
	  return false;
        }
		
	cars = parkedCars.split(",");
	for(i=0; i<cars.length; i++) {
		requestUrl = url + cars[i];
		park_AjaxRequest(requestUrl, updater);
	}
}

function park_AjaxRequest(url, element) {
	var response = false;
	if(navigator.appName == "Microsoft Internet Explorer") {
	  var ajax = new ActiveXObject("Microsoft.XMLHTTP");
	} else {
	  var ajax = new XMLHttpRequest();
	}
	ajax.open("GET", url, true);
	ajax.onreadystatechange=function() {
	  if(ajax.readyState == 4) {
            response = ajax.responseText;
	    element.innerHTML += response;
    }
  }
  ajax.send(null);
}

function park_Add(cookieName, id) {
	if(id=='') return false;
	parked = park_GetCookie(cookieName);
	if(parked==null) parked='';
  var cars = parked.split(",");
  var flag = 0;
  for ( var i = 0; i < cars.length; i++) {
    if (cars[i] == id) flag = 1;
  }
  if (flag == 0) {
    if (parked != '') parked = parked + ',';
    parked = parked + id;
    park_SetCookie(cookieName, parked);
  }
}

function park_AddCars(cookieName) {
  cbs = document.getElementsByName('id')
  for( j = 0; j < cbs.length; j++ ) {
    if (cbs[j].checked == true) {
      park_Add(cookieName, cbs[j].value);
    }
  }
}

function park_SetCookie(name, value) {
var today = new Date();
today.setTime( today.getTime() );

var expires_date = new Date( today.getTime() + 1000000000000 );

document.cookie = name + "=" +escape( value ) +
";expires=" + expires_date.toGMTString() +
";path=/";
}

function park_GetCookie(check_name) {
	var a_all_cookies = document.cookie.split( ';' );
	var a_temp_cookie = '';
	var cookie_name = '';
	var cookie_value = '';
	var b_cookie_found = false;
	
	for ( i = 0; i < a_all_cookies.length; i++ )
	{
		a_temp_cookie = a_all_cookies[i].split( '=' );
		cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');
		
		if ( cookie_name == check_name )
		{
			b_cookie_found = true;
			cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
			return cookie_value;
			break;
		}
		a_temp_cookie = null;
		cookie_name = '';
	}
	if ( !b_cookie_found )
	{
		return null;
	}
}	

function park_DeleteCookie(cookieName) {
	if (park_GetCookie(cookieName)) document.cookie = cookieName + "=" +
	";expires=Thu, 01-Jan-1970 00:00:01 GMT" + 
	";path=/";
}

function printCarRange(cookieName, text1, text2, text3, text4) {
  parkedCars = park_GetCookie(cookieName);
  if (parkedCars==null) {
    if (text4 != null && text4 != '') {
      document.write(text4);
    } else {
      document.write('0 Fahrzeuge');
    }
  } else {
    cars = parkedCars.split(",");
    numberCars = cars.length;
    if (text1 != null && text2 != null && text3 != null && text1 != '' && text2 != '' &&  text3 != '') {
      document.write(text1 + numberCars + text2 + numberCars + text3);
    } else {
      document.write('1 bis ' + numberCars + ' von ' + numberCars + ' Fahrzeugen');
    }
  }
}
