




var cookie = function()
{        
	var cookieName 		= 'iwbase';	// Name des Cookie
	var cookieDuration 	= 1; 			// Cookie einen Tag gültig
	
	/**************************************************************
	* Initialisiert die Links für merken und gemerkt
	* Parameter: value			string		Wert der im Cookie gesucht wird
	* Parameter: merker_id		string		ID des Elementes mit dem ein Datensatz in die Merkerliste E I N getragen werden kann
	* Parameter: gemerkt_id		string		ID des Elementes mit dem ein Datensatz aus der Merkerliste A U S getragen werden kann
	*
	**************************************************************/
	function _init( value, merker_id, gemerkt_id )
	{
	
	
		var r 			=  new Array();
		var isInArray 	= false;
		var cookieValue = null;
		
		// Cookie einlesen
		cookieValue = jQuery.cookie( cookieName );
		
		if ( cookieValue != null )
		{
			r = cookieValue.split( ',' );
				
			// Prüfen ob value bereits im Cookie
			for( var i=0;i < r.length;i++ ) 
			{	
				if ( r[i] == value )
					isInArray = true;
			}
		}
		// Setzen der Links
		if ( isInArray )
			_setElements(gemerkt_id, merker_id);
		else
			_setElements(merker_id, gemerkt_id);
	}
	
	/**************************************************************
	* Initialisiert die Links für merken und gemerkt
	* Parameter: value			string		Wert der im Cookie gesetzt bzw gelöscht wird
	* Parameter: merker_id		string		ID des Elementes mit dem ein Datensatz in die Merkerliste E I N getragen werden kann
	* Parameter: gemerkt_id		string		ID des Elementes mit dem ein Datensatz aus der Merkerliste A U S getragen werden kann
	*
	**************************************************************/
	/* function _update( value, merker_id, gemerkt_id  )
	*/
  function _update( value, merker_id, gemerkt_id, list_id )
	{
		var r 			=  new Array();
		var isInArray 	= false;
		var index 		= 0;	
		var cookieValue	= null;
		
		cookieValue = jQuery.cookie( cookieName );
		
		//alert( cookieValue );
		
		// Cookie nich vorhanden
		if ( cookieValue == null )
		{
			//Wert dem Cookie hinzufügen
			//Cookie.write( cookieName, value, {duration: cookieDuration, path: '/'} );
			jQuery.cookie(cookieName,value, {expires: cookieDuration, path : '/'})
			_setElements(gemerkt_id, merker_id);
		}
		else
		{
			// Cookie vorhanden
			r = cookieValue.split( ',' );
			
			// Value in Cookie vorhanden?
			for( var i=0;i < r.length;i++ ) 
			{	
				if ( r[i] == value )
				{	isInArray = true;
					index = i;
				}
			}
			
			if ( isInArray )
			{
				// Value aus Cookie entfernen
				r.splice( index, 1 );
				_setElements(merker_id, gemerkt_id);
			}
			else
			{
				// Value Cookie hinzufügen
				r.push(value);
				_setElements(gemerkt_id, merker_id);
			}
		
			
			if( r.length > 0 )
				// Cookie mit neuen Werten  speichern				
				jQuery.cookie(cookieName,r.join(','), {expires: cookieDuration, path : '/'})
			else
				 //Cookie löschen					 
				jQuery.cookie(cookieName,null,{expires:  -1, path : '/'});			
		}
		
		if ( jQuery(list_id) != null )		
		jQuery('#' + list_id).css( 'display', 'none');

		//alert( Cookie.read( cookieName ) );
	
	}

	/**************************************************************
	* Setz merken und gemerkt auf die jeweiligen Werte
	* Parameter: inline		string		ID des Elementes welches angezeigt werden soll
	* Parameter: none		string		ID des Elementes welches N I C H T angezeigt werden soll
	*
	**************************************************************/	
	function _setElements( inline, none )
	{
		jQuery('#' + none).css( 'display', 'none');	
		jQuery('#' + inline).css( 'display', 'inline-block');	
	}
	
	/**************************************************************
	* Public Funktionen die von Außerhalb der Klasse angesprochen werden können
	**************************************************************/	
	return new function()
	{	
		this.update = _update;
		this.init = _init;
	}
}()

 
