// NL E-Mail Check
function check_mail (request, todo)
{
	//alert(mode);
	//alert(todo);
	
	// Variable erzeugen, die speichert, ob ein Fehler aufgetreten ist.
	var error = false;
	
	// Anzahl der zu ueberpruefenden Felder speichern.
	var checks = 0;
	var i = 0;
	
	// Array erzeugen für RegEx, Feld und Fehlermeldung.
	var RegEx = new Array(checks);
	var Field = new Array(checks);
	var Message = new Array(checks);
	
	RegEx[i] 		= /.+\@{1,1}.+\.{1,1}[a-zA-Z]{2,5}/;
	Field[i] 		= "nl_email";
	Message[i++] 	= "Bitte geben Sie eine gültige E-Mail Adresse ein.";
	
	checks =  i;
	
	// Ueberpruefen, ob eine Ueberpruefung stattfinden soll.
	if ( checks > 0 )
	{
		// Alle Felder durchgehen.
		for ( i = 0; i < checks; i++ )
		{
			// Variable erzeugen, die speichert, ob das Feld gueltig ist.
			var valid = true;
		
			// Ueberpruefen, ob das Feld der RegEx genuegt.
			eval("valid = RegEx[" + i + "].test(" +
				"document.forms.newsletter." + Field[i] + ".value);");

			// Ueberpruefen, ob ein Fehler aufgetreten ist.
			if ( !valid && !error )
			{
				// Fehler speichern.
				error = true;
				
				// Fehlermeldung anzeigen.
				alert(Message[i]);
				
				// Feld fokusieren.
				eval("document.forms.newsletter." + Field[i] + ".focus();");
			}
		}
	}
	
	// Bisher noch keine Fehler, dann Zusatzpruefung
	if (!error)
	{
		if (document.forms.newsletter.nl_email.value == 'name@server.de')
		{
			error = true;
			alert ('Bitte geben Sie eine gültige E-Mail Adresse ein.');
		}
	}
	
	
	// Ueberpruefen, ob ein Fehler aufgetreten ist.
	if ( !error )
	{
		document.forms.newsletter.mode.value = request;
		
		if (todo == 'return_bln')
			return true;
		else
			document.forms.newsletter.submit();
	} else
	{
		if (todo == 'return_bln')
			return false;
	}
}

// Obfuscate E-Mail
function doEmail(mailbox)
{
	var domain = 'hotel-easy';
	var tld = 'com';
	document.location.href='mailto:'+mailbox+'@'+domain+'.'+tld;
}


/********************************************************************************\
 *	Can be called to test if the link to this data is OK						*
\********************************************************************************/
function test_js()
{
	alert("On est content, le lien est bon ! :D");
	//return false;
}

/********************************************************************************\
 *	Open a popup window															*
 *	Params	-> url = url to open in the popup									*
 * 			-> w_name = popup name												*
 * 			-> width, height = popup size										*
 * 			-> opt_str = popup extra params, if = '' then use default params	*
\********************************************************************************/
function open_popup (url, w_name, width, height, opt_str) 
{
	var options = "width="+width+",height="+height;
	if(opt_str == '')
		options += ",resizable=yes,scrollbars=yes,toolbar=no,status=no,directories=no,menubar=no";
	else
		options += ","+opt_str;
	window_detail=window.open(url, w_name, options);
	window_detail.moveTo(10, 10);
	window_detail.focus();
}

function return_open_popup (url, w_name, width, height, opt_str)
{
	var options = "width="+width+",height="+height;
	if(opt_str == '')
		options += ",resizable=yes,scrollbars=yes,toolbar=no,status=no,directories=no,menubar=no";
	else
		options += ","+opt_str;
	window_detail=window.open(url, w_name, options);
	window_detail.moveTo(10, 10);
	window_detail.focus();
	return window_detail;
}

/********************************************************************************\
 *	Return PHP $HTTP_GET_VARS in an array like get_var name => value			*
 *	Params -> window_obj = valid window object Ex: parent.frames.content		*
\********************************************************************************/
function retrieve_get_vars(window_obj)
{
	//var str_url = parent.frames.send.location.href;
	var get_vars = window_obj.location.search;

	//remove ?
	get_vars = get_vars.substring(1,get_vars.length);

	//split get_vars
	var prim_array = get_vars.split("&");

	var array_get_vars = new Array();
	
	//build array like var_name => value
	for(key in prim_array)
	{
		var sec_array = prim_array[key].split("=");
		array_get_vars[sec_array[0]] = sec_array[1];
	}
	
	return array_get_vars;
}

/********************************************************************************\
 *	Remove space at start and/or end of a string							 	*
 *	Params -> str = string to trim												*
 *			  mode = 'l' -> trim start, 'r' -> trim end, 						*
 * 					 'lr' -> trim start and end.								*
\********************************************************************************/
function js_trim(str, mode)
{
	var trimed = '';
	if(mode == 'l')
		trimed = str.replace(/^\s+/,'');
	
	if(mode == 'r')
		trimed = str.replace(/\s+$/,'');
		
	if(mode == 'lr')
	{
		trimed = js_trim(str,'l');
		trimed = js_trim(trimed,'r');
	}
	return trimed;
}


/********************************************************************************\
 *	Test if a string is a valid email address. 									*
 *	Params -> email = string to test											*
\********************************************************************************/
function test_email(email)
{
	var reg = /^\S+@\S+\.\S+$/;
	if(!reg.exec(email))
		return false;
	else
		return true;
}

/********************************************************************************\
 *	Open an alert window which displays all properties of the given object. 	*
 *	Useful in developpement phase.												*
 *	Params -> obj = valid Javascript object or array							*
\********************************************************************************/
function get_object_properties(obj)
{
	if(!obj)
	{
		alert("Invalid object given to get_object_properties(obj)");
		return false;
	}
	
	var str = '';
	for(key in obj)
	{
		str += key+" | ";
		//str += eval(obj+"."+key+";");
	}
	alert(str);
	//document.write(str);
	return true;
}

/********************************************************************************\
 *	Like PHP function print_r in a alert window								 	*
 *	Params -> array = array														*
\********************************************************************************/
function array_print(array)
{
	var str = new String();
	for(key in array)
	{
		str += key+" => "+array[key]+"\n";
	}
	alert(str);
}

/********************************************************************************\
 *	Comes from the CMS														 	*
\********************************************************************************/
function setCookie(name, value, expires, path, domain, secure)
{
	var curCookie = name + "=" + escape(value) +
	((expires) ? "; expires=" + expires.toGMTString() : "") +
	((path) ? "; path=" + path : "; path=/") +
	((domain) ? "; domain=" + domain : "") +
	((secure) ? "; secure" : "");
	document.cookie = curCookie;
}

/********************************************************************************\
 *	Comes from the CMS														 	*
\********************************************************************************/
function getCookie(name)
{
	var dc = document.cookie;
	var prefix = name + "=";
	var begin = dc.indexOf("; " + prefix);
	if (begin == -1)
	{
		begin = dc.indexOf(prefix);
		if (begin != 0) return null;
	} else
		begin += 2;
	
	var end = document.cookie.indexOf(";", begin);
	if (end == -1)
		end = dc.length;
	
	return unescape(dc.substring(begin + prefix.length, end));
}

/********************************************************************************\
 *	Comes from the CMS														 	*
\********************************************************************************/
function deleteCookie(name, path, domain)
{
	if (getCookie(name))
	{
		document.cookie = name + "=" + 
		//((path) ? "; path=" + path : "") +
		((path) ? "; path=" + path : "; path=/") +
		((domain) ? "; domain=" + domain : "") +
		"; expires=Thu, 01-Jan-70 00:00:01 GMT";
	}
}

function buildArgsArray(args)
{
	if(args.length%2)
		alert("Attention!\n"+args.callee+" => arguments impairs");
		
	var argsArray = new Array();
	for(i = 0 ; i < (args.length-1) ; i = i+2)
	{
		argsArray[args[i]] = args[i+1];
	}
	return argsArray;
}

function preload_image(src)
{
	var new_img = new Image();
	new_img.src	= src;
	return new_img;
}

function swap_img(img_name, new_img)
{
	if(document.images[img_name])
	{
		document.images[img_name].src = new_img.src;
		return true;
	}
	else
		return false;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v3.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function send ( )
{
	// Ueberpruefen, ob ein Name eingegeben wurde.
	if ( document.forms.message._anrede.value == "" )
	{
		// Fehlermeldung anzeigen.
		alert("Bitte geben Sie Ihre Anrede ein.");
		
		// Feld fokusieren.
		document.forms.message._anrede.focus();
	}
	else
	// Ueberpruefen, ob Nachricht.
	if ( document.forms.message._name.value == "" )
	{
		// Fehlermeldung anzeigen.
		alert("Bitte geben Sie Ihren Namen ein.");
	
		// Feld fokusieren.
		document.forms.message._name.focus();
	}
	else
	// Ueberpruefen, ob Nachricht.
	if ( document.forms.message._email.value == "" )
	{
		// Fehlermeldung anzeigen.
		alert("Bitte geben Sie Ihre E-Mail ein.");
	
		// Feld fokusieren.
		document.forms.message._email.focus();
	}
	else
	// Ueberpruefen, ob Nachricht.
	if ( document.forms.message._plz.value == "" )
	{
		// Fehlermeldung anzeigen.
		alert("Bitte geben Sie Ihre PLZ ein.");
	
		// Feld fokusieren.
		document.forms.message._plz.focus();
	}
	else
	// Ueberpruefen, ob Nachricht.
	if ( document.forms.message._ort.value == "" )
	{
		// Fehlermeldung anzeigen.
		alert("Bitte geben Sie Ihre Stadt ein.");
	
		// Feld fokusieren.
		document.forms.message._ort.focus();
	}
	else
	// Ueberpruefen, ob Nachricht.
	if ( document.forms.message._nachricht.value == "" )
	{
		// Fehlermeldung anzeigen.
		alert("Bitte geben Sie Ihre Nachricht ein.");
	
		// Feld fokusieren.
		document.forms.message._nachricht.focus();
	}
	else
	{
		// Formular absenden.
		document.forms.message.submit();				
	}
}


function swap_news_layer(newsid)
{
	//alert(newsid);
	var header_layer = '_headerid' + newsid;
	var textbody_layer = '_newsid' + newsid;
	var show_layer = '_showid' + newsid;
	var close_layer = '_closeid' + newsid;
		
	//alert (textbody_layer);
	
	swap_layer(header_layer);
	swap_layer(textbody_layer);
	swap_layer(show_layer);
	swap_layer(close_layer);

}

function swap_layer(id)
{
	//alert(id);
	
	var layer = get_layer_obj(id);

	if(layer)
	{
		//alert(layer.style.display);
		if(layer.style.display == "block" || layer.style.display == "")
		{
			layer.style.display = "none";
		}
		else
		{
			layer.style.display = "block";
		}
	}
}


function get_layer_obj(id)
{
	//thisbrowser="NN4";
	if(document.layers)            
		return document.layers[id];
		
	//thisbrowser="ie"
	if(document.all)
		return document.all[id];

	//thisbrowser="NN6";
	if(!document.all && document.getElementById)        
		return document.getElementById(id); 
}

/*
function apply_style_to_layer_obj(id, do_reset)
{
	// get wished layer
	var layer = get_layer(id);
	
	if(layer)
	{
		if(do_reset)
		{
			//layer.style.border = "";
			layer.style.background = "";
		}
		else
		{
			//layer.style.border = "1px dashed #0000FF";
			//layer.style.background = "#D15810"; // rot
			//layer.style.background = "#F1F1F4"; // grau
			layer.style.background = "#4F96FE"; // IBTL blau
		}
		//alert(layer.style.border);
	}
}
*/

var pic_src = new Array();

function updateImg(source, name, aid, pic_full_path) 
{
	pic_src[aid] = pic_full_path;
	//alert (pic_src[aid]);
	document[name].src=source;
	
	return;
}

function show_img_in_popup(aid, url, w_name, width, height, opt_str) 
{
	
}
