/*
 *  Merkliste
 *  Autor: RP - V1.0
 *  Copyright 2008: SECRA GmbH
 *
 */
 
 var MERKLISTE_BLOCKED = false;
 
 function createMerklisteCookie(cookiestr){
	 var datum = new Date();
	 datum = new Date(datum.getTime() +1000*60*60*24*365); // 1 Jahr
	 document.cookie = 'merkliste=' + cookiestr + '; expires='+datum.toGMTString()+'; path=/;';  	
 }
 
 function getMerklisteCookie(){
	 var cookieval = document.cookie;
	 var ret, cname, cval, i;
	 
	 while(cookieval != ''){

	  cname = cookieval.substring(0,cookieval.search('='));
	  cval = cookieval.substring(cookieval.search('=')+1,cookieval.search(';'));

	  // Wenn Cookieende erreicht...
	  if(cookieval.search(';') == -1){
	  	  cval = cookieval.substring(cookieval.search('=')+1,cookieval.length);
	  }

	  // Abbrechen, wenn gesuchter Wert gefunden wurde
	  if(cname=="merkliste"){
	  	return cval;
	  }
	
	  i = cookieval.search(';')+1;
	  if(i==0){
	  	i = cookieval.length;
	  }
	  cookieval = trim(cookieval.substring(i,cookieval.length));
	 }
	 return '';
 }
 
 function addToMerkliste(objnr){
 	if(!MERKLISTE_BLOCKED){
	 	MERKLISTE_BLOCKED = true;
	 	if(!is_in_Merkliste(objnr)){
		 	var merkliste;
		 	merkliste = getMerklisteCookie();
		 	if(merkliste.length>0){
			 	merkliste = merkliste +","+objnr;
		 	} else {
		 		merkliste = objnr;
		 	}
		 	createMerklisteCookie(merkliste);
		 	aktualisiereMerkbox();
		 	
	 		if(document.getElementById('merklisten_button')){
	 			document.getElementById('merklisten_button').src = "/bitmaps/but_merkliste_grau.jpg";
	 		}
	 		MERKLISTE_BLOCKED = false;
	 	} else {
	 		MERKLISTE_BLOCKED = false;
	 		removeFromMerkliste(objnr);
	 	}
 	}
 }
 
 function is_in_Merkliste(objnr){
 	var objfield, merkliste, i;
 	merkliste = getMerklisteCookie();
 	objfield = merkliste.split(",");
 	for(i = 0; i<objfield.length; i=i+1){
 		if(objfield[i]==objnr){
		 	return true;
 		}
 	} 	
 	return false;
 }
 
 function removeFromMerkliste(objnr){
 	if(!MERKLISTE_BLOCKED){
 		MERKLISTE_BLOCKED = true;
	 	var objfield, merkliste, outfield;
	 	outfield = '';
	 	merkliste = getMerklisteCookie();
	 	objfield = merkliste.split(",");
	 	for(var i = 0; i<objfield.length; i++){
	 		if(objfield[i]!=objnr){
			 	if(outfield.length>0){
				 	outfield = outfield+","+objfield[i];
			 	} else {
			 		outfield = objfield[i];
			 	}
	 		}
	 	}
		if(document.getElementById('merklisten_button')){
			document.getElementById('merklisten_button').src = "/bitmaps/but_merkliste.jpg";
		} 	
	 	createMerklisteCookie(outfield);
	 	aktualisiereMerkbox();
	 	MERKLISTE_BLOCKED = false;
 	}
 }

 function loescheMerkliste(){
 	document.cookie = 'merkliste=; expires=Thu, 01-Jan-70 00:00:01 GMT;';
 	aktualisiereMerkbox();
 } 
 
 function trim(txt) {
 	return txt.replace(/^\s+/, '').replace(/\s+$/, '');
 }
 
 function aktualisiereMerkbox(){
 	var objfield, merkliste, anzahl, out;
 	merkliste = getMerklisteCookie();

 	if(merkliste!=''){
	 	objfield = merkliste.split(",");
	 	anzahl = objfield.length;
	 	if(document.getElementById('merklistenbox') && anzahl>0){
	 		// Wenn das Element auf dieser Seite vorhanden ist....
	 		document.getElementById('merklistenbox').style.display = 'block';
	 		if(document.getElementById('merklistenbox_text')){
	 			out = anzahl + " Objekt";
	 			if(anzahl!=1){
	 				out = out + "e";
	 			}
	 			out = out + " gemerkt";
	 			document.getElementById('merklistenbox_text').innerHTML = out;
	 		}
	 	}	
 	} else {
 		if(document.getElementById('merklistenbox')){
 			document.getElementById('merklistenbox').style.display = 'none';
 		}
 	}
 }
