/*
 *	Startup file with functions for "customer area"
 *
 */


/* ---------------------------------------------- general settings ------------------------------------------------- */

var cust_companyname = "Humboldt Studienreisen GmbH";




/* -------------------------------------- add trim function to string-object --------------------------------------- */

// entfernt führende Leerzeichen
  String.prototype.leftTrim = function () {
    return (this.replace(/^\s+/,""));
  };

// entfernt nachfolgende Leerzeichen
  String.prototype.rightTrim = function () {
    return (this.replace(/\s+$/,""));
  };

// kombiniert "leftTrim" und "rightTrim";
  String.prototype.basicTrim = function () {
    return (this.replace(/\s+$/,"").replace(/^\s+/,""));
  };

// dampft leerzeichen(-sequenzen) innerhalb einer zeichenkette auf ein einzelnes "space" ein;
  String.prototype.superTrim = function () {
    return(this.replace(/\s+/g," ").replace(/\s+$/,"").replace(/^\s+/,""));
  };

// zugabe: entfernt alle leerzeichen aus einer zeichenkette;
  String.prototype.removeWhiteSpaces = function () {
    return (this.replace(/\s+/g,""));
  };





/* ------------------------------------------------ lightbox call -------------------------------------------------- */

$(function() {

	// Select all hyperlinks in object with this DIV-container ID (links on thumbs)

	$('a.lightbox1').lightBox({
		txtImage: 'Bild',
		txtOf: 'von'
	});
});


$(function() {

	// Select all hyperlinks in object with this DIV-container ID (links on icons)

	$('a.lightbox2').lightBox({
		txtImage: 'Bild',
		txtOf: 'von'
	});
});





/* ---------- if page has been completely loaded ---------- */

$(document).ready(function() {


	/* ---------------------------------------------- notify box ----------------------------------------------- */

	/* --- hide on startup --- */

	$('#cust_notifybox_mask').hide();
	$('#cust_notifybox_total').hide();

	/* --- function for opening box --- */

	function cust_notifybox_open(text, title)
	{
		/* put text into box */

		if (title == "") { title = "Achtung!"; }

		$('#id_notifybox_title').html(title);
		$('#id_notifybox_text').html(text);

		/* make positioning */

		var dl = $('#cust_notifybox_total');

		var dialogTop = Math.abs($(window).height() - dl.height()) / 2;

		dl.css('left', ($(window).width() - dl.width()) / 2);
		dl.css('top', (dialogTop >= 25) ? dialogTop : 25);

		/* display box */

		$('#cust_notifybox_mask').show();
		$('#cust_notifybox_total').show();
	}

	/* --- hide box on click on button --- */
	
	$("#id_notifybox_but").bind("click", function(){

		$('#cust_notifybox_mask').hide();
		$('#cust_notifybox_total').hide();

	});





	/* ---------------------------------------------- question box ----------------------------------------------- */

	/* --- hide on startup --- */

	$('#cust_questionbox_mask').hide();
	$('#cust_questionbox_total').hide();

	/* --- function for opening box --- */

	function cust_questionbox_open(text, title, url_yes, url_no, close_on_no)
	{
		/* put text into box */

		if (title == "") { title = "Frage"; }

		$('#id_questionbox_title').html(title);
		$('#id_questionbox_text').html(text);

		/* make positioning */

		var dl = $('#cust_questionbox_total');

		var dialogTop = Math.abs($(window).height() - dl.height()) / 2;

		dl.css('left', ($(window).width() - dl.width()) / 2);
		dl.css('top', (dialogTop >= 25) ? dialogTop : 25);

		/* display box */

		$('#cust_questionbox_mask').show();
		$('#cust_questionbox_total').show();
	}

	/* --- hide box on click on buttons and execute submitted url --- */

	$("#id_questionbox_but_yes").bind("click", function(){

		$('#cust_questionbox_mask').hide();
		$('#cust_questionbox_total').hide();
		location.href=url_yes;

	});

	$("#id_questionbox_but_no").bind("click", function(){

		$('#cust_questionbox_mask').hide();
		$('#cust_questionbox_total').hide();
		if (close_on_no != "yes") { location.href=url_no; }

	});





	/* ---------------------------------------------- waiting box ----------------------------------------------- */

	/* --- hide on startup --- */

	$('#cust_waitingbox_mask').hide();
	$('#cust_waitingbox_total').hide();

	/* --- function for opening box --- */

	function cust_waitingbox_open(text, title)
	{
		/* put text into box */

		if (title == "") { title = "Einen Moment bitte..."; }
		if (text == "")  { text = "Daten werden geladen...<p>"; }

		$('#id_waitingbox_title').html(title);
		$('#id_waitingbox_text').html(text);

		/* make positioning */

		var dl = $('#cust_waitingbox_total');

		var dialogTop = Math.abs($(window).height() - dl.height()) / 2;

		dl.css('left', ($(window).width() - dl.width()) / 2);
		dl.css('top', (dialogTop >= 25) ? dialogTop : 25);

		/* display box */

		$('#cust_waitingbox_mask').show();
		$('#cust_waitingbox_total').show();
	}

	/* --- functionf for closing box --- */
	
	function cust_waitingbox_close()
	{
		$('#cust_waitingbox_mask').hide();
		$('#cust_waitingbox_total').hide();
	}





	/* ---------------------------------------------- cluetip ----------------------------------------------- */

	$('#id_help_bookingnumber').cluetip({
		splitTitle: '|',
		arrows: true,
		dropShadow: false,
		showTitle: false, 
		cluetipClass: 'jtip'
	});






	/* ------------------------------------------------- form "id_cust_login" ------------------------------------------------- */


	/* --- checks before submission of form --- */

	$("#id_cust_login_button").bind("click", function(){

		var res = 1;


		/* display wainting box */

		cust_waitingbox_open('', '');


		/* --- get data from fields and trim them --- */

		var email = document.getElementById("id_email").value;
		var pw    = document.getElementById("id_pw").value;

		email = email.replace(/ /g, "");
		pw = pw.replace(/ /g, "");


		/* --- validate inputs by ajax request --- */

		if ((email != "") && (pw != ""))
		{
			$.ajax({
				type: "GET",
				cache: false,
				async: false,
				url: "customer/ajax_check_login.php",
				data: "email="+email+"&pw="+pw,
				success: function(data){
					//alert("Data: " + data);
					if (data == "")
					{
						res = 0;
						alert_str = "Zugangsdaten fehlerhaft! <p>Bitte prüfen Sie Ihre Eingaben. <p>";
					}
					else
					{
						cust_sid = data;
					}
				}
			});
		}
		

		/* --- check for existence of necessary inputs --- */

		if (pw == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihr Passwort ";
		}
		else
		{
			/* --- check length pf password --- */

			if (pw.length < 8)
			{
				res = 0;
				alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
				alert_str = alert_str + "- Ihr Passwort muss mindestens 8 Zeichen lang sein ";
			}
		}

		if (email == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihre E-Mail-Adresse ";
		}



		/* hide waiting box */

		cust_waitingbox_close();


		/* --- display error message or submit form --- */

		if (res == 0)
		{
			//alert(alert_str);
			cust_notifybox_open(alert_str, '');

			return false;
		}
		else
		{
			document.getElementById("id_act1").value = 'home';
			document.getElementById("id_sid1").value = cust_sid;
			document.getElementById("id_email").value = '';
			document.getElementById("id_pw").value = '';

			document.getElementById("id_cust_login").submit();
		}

	});






	/* ----------------------------------------------- form "id_cust_firstlogin" ----------------------------------------------- */


	/* --- checks before submission of form --- */

	$("#id_cust_firstlogin_button").bind("click", function(){

		var res = 1;


		/* display wainting box */

		cust_waitingbox_open('', '');


		/* --- get data from fields and trim them --- */

		var bookingno	= document.getElementById("id_bookingno").value;
		var lastname	= document.getElementById("id_lastname").value;
		var gebtt	= document.getElementById("id_gebtt").value;
		var gebmm	= document.getElementById("id_gebmm").value;
		var gebjjjj	= document.getElementById("id_gebjjjj").value;

		bookingno	= bookingno.replace(/ /g, "");
		//lastname	= lastname.replace(/ /g, "");
		lastname	= lastname.basicTrim();
		gebtt		= gebtt.replace(/ /g, "");
		gebmm		= gebmm.replace(/ /g, "");
		gebjjjj		= gebjjjj.replace(/ /g, "");

		if (gebtt.length == 1) { gebtt = "0" + gebtt; }
		if (gebmm.length == 1) { gebmm = "0" + gebmm; }
		if (gebjjjj.length == 2) { gebjjjj = "19" + gebjjjj; }

		geb = gebjjjj + "-" + gebmm + "-" + gebtt;

		bookingno = bookingno.substr(0,6);		/* reduce to first 6 digits */



		/* --- validate inputs by ajax request --- */

		if ((bookingno != "") && (lastname != "") && (geb != ""))
		{
			$.ajax({
				type: "GET",
				cache: false,
				async: false,
				url: "customer/ajax_check_firstlogin.php",
				data: "bookingno="+bookingno+"&lastname="+lastname+"&geb="+geb,
				success: function(data){
					//alert("Data: " + data);
					if (data == "")
					{
						res = 0;
						alert_str = "Zugangsdaten fehlerhaft! <p>Bitte prüfen Sie Ihre Eingaben. <p>";
					}
					else
					{
						buffer_id = data;
					}
				}
			});
		}



		/* --- check for existence of necessary inputs --- */

		if ((gebtt == '') || (gebmm == '') || (gebjjjj == ''))
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihr Geburtsdatum ";
		}
		else
		{
			/* --- check length of complete birth date --- */			

			if (geb.length != 10)
			{
				res = 0;
				alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
				alert_str = alert_str + "- Ihr Geburtsdatum ";
			}
		}

		if (lastname == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihr Nachname ";
		}

		if (bookingno == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihre Buchungs-Nr. ";
		}



		/* hide waiting box */

		cust_waitingbox_close();



		/* --- display error message or submit form --- */

		if (res == 0)
		{
			//alert(alert_str);
			cust_notifybox_open(alert_str, '');

			return false;
		}
		else
		{
			document.getElementById("id_act2").value = 'login_form2';
			document.getElementById("id_buffer_id").value = buffer_id;
			document.getElementById("id_bookingno").value = '';
			document.getElementById("id_lastname").value = '';
			document.getElementById("id_gebtt").value = '';
			document.getElementById("id_gebmm").value = '';
			document.getElementById("id_gebjjjj").value = '';

			document.getElementById("id_cust_firstlogin").submit();
		}

	});






	/* ----------------------------------------------- form "id_cust_firstlogin2" ----------------------------------------------- */


	/* --- checks before submission of form --- */

	$("#id_cust_firstlogin2_button").bind("click", function(){

		var res = 1;

		/* --- get data from fields and trim them --- */

		var email	= document.getElementById("id_email").value;
		var pw		= document.getElementById("id_pw").value;
		var pw2		= document.getElementById("id_pw2").value;
		var rules	= $("#id_rules").attr("checked");

		email = email.replace(/ /g, "");



		/* --- get md5 coded password by ajax request --- */

		var pw_md5 = "";

		if (pw != '')
		{
			$.ajax({
				type: "GET",
				cache: false,
				async: false,
				url: "customer/ajax_convert_md5.php",
				data: "pw="+pw,
				success: function(data){
					//alert("Data: " + data);
					if (data == "")
					{
						res = 0;
						alert_str = "Interner Fehler! \r\n";
					}
					else
					{
						pw_md5 = data;
					}
				}
			});
		}



		/* --- further checks on password inputs --- */

		if ((pw != '') && (pw2 != ''))
		{
			if (pw != pw2)
			{
				res = 0;
				alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
				alert_str = alert_str + "- Passwort und Passwort-Wiederholung stimmen nicht überein! ";
			}
			else
			{
				/* --- check length of passwords --- */			

				if (pw.length < 8)
				{
					res = 0;
					alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
					alert_str = alert_str + "- Ihr Passwort ist kürzer als 8 Zeichen! ";
				}

				/* --- check for spaces --- */			

				if (pw.indexOf(" ") != -1)
				{
					res = 0;
					alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
					alert_str = alert_str + "- Ihr Passwort enthält Leerzeichen! ";
				}
			}
		}



		/* --- check for validity of e-mail address --- */

		if (email != "")
		{
			check1 = email.indexOf("@");
			check2 = email.indexOf(".");

			if ((check1 == -1) || (check2 == -1))
			{
				res = 0;
				alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
				alert_str = alert_str + "- Das Format Ihrer E-Mail-Adresse ist ungültig! <p>";
				alert_str = alert_str + "Beispiel für ein gültiges Format: k.mustermann@domain.de ";
			}
		}



		/* --- check for existence of necessary inputs --- */

		if (rules == false)
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Anerkennung der Nutzungsbedingungen (Häkchen setzen!) ";
		}

		if (pw2 == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Wiederholung Ihres Wunsch-Passworts ";
		}

		if (pw == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihr Wunsch-Passwort ";
		}

		if (email == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihre E-Mail-Adresse ";
		}



		/* --- display error message or submit form --- */

		if (res == 0)
		{
			//alert(alert_str);
			cust_notifybox_open(alert_str, '');

			return false;
		}
		else
		{
			document.getElementById("id_act").value = 'login_form2_work';
			document.getElementById("id_pw_m5").value = pw_md5;
			document.getElementById("id_pw").value = '';
			document.getElementById("id_pw2").value = '';

			document.getElementById("id_cust_firstlogin2").submit();
		}

	});






	/* --------------------------------------------------- function: display infos ------------------------------------------------------ */


	/* --- display infos about first login --- */

	$("#id_loginhilfe").bind("click", function(){

		/* --- compile text --- */

		alert_str = "<div style='width:100%; height:400px; overflow:auto;'>";
		alert_str += "<span class='cust_fett'>Ihr erster Login: Registrierung für unseren Kundenbereich</span><p>";
		alert_str += "<p class='cust_normal'>Hat Ihr Reiseleiter auf Ihrer kürzlich unternommenen Reise Fotos gemacht und Ihnen ein Informationsblatt mit einer Gruppen-Nummer ausgehändigt, mit der sie hier auf der Website die Fotos einsehen können?</p>";
		alert_str += "<p class='cust_normal'>Dann sind Sie hier richtig! </p>";
		alert_str += "<p class='cust_normal'>In wenigen Schritten legen Sie für sich einen Zugang zum Kundenbereich an, damit Sie Ihre Fotos einsehen können. Gehen Sie wie folgt vor:</p>";
		alert_str += "<p class='cust_fett'>Schritt 1:</p>";
		alert_str += "<p class='cust_normal'>Geben Sie im Formular \"Erster Login\" Ihre Buchungs-Nr., Ihren Nachnamen und Ihr Geburtsdatum ein. (Hinweis: Die Buchungs-Nr. finden Sie auf Ihrer Buchungsbestätigung bzw. Tickets, die Sie vor der Reise von uns erhalten haben.) Klicken Sie anschließend auf die Schaltfläche \"Login\".</p>";
		alert_str += "<p class='cust_fett'>Schritt 2:</p>";
		alert_str += "<p class='cust_normal'>Für Ihre künftigen Logins in den Kundenbereich geben Sie nun E-Mail-Adresse und ein selbst gewähltes Passwort ein. (Wichtig: Notieren Sie sich das eingegebene Passwort!) Zudem bestätigen Sie bitte die Nutzungsbedingungen durch das Setzen des Häkchens in dem Kästchen. Klicken Sie bitte anschließend auf die Schaltfläche \"Weiter\".</p>";
		alert_str += "<p class='cust_fett'>Schritt 3:</p>";
		alert_str += "<p class='cust_normal'>Es wird nun eine E-Mail an Ihre E-Mai-Adresse gesendet. Bitte prüfen Sie Ihr E-Mail-Postfach. Klicken Sie zwecks Bestätigung auf den Link in dieser E-Mail. Damit wird Ihr Zugang aktiviert.</p>";
		alert_str += "<p class='cust_fett'>Schritt 4:</p>";
		alert_str += "<p class='cust_normal'>Nun können Sie sich mit Ihrer E-Mail-Adresse und Ihrem Passwort am System anmelden. Geben Sie beide Daten in das Formular \"Kunden-Login\" ein und klicken anschließend auf die Schaltfläche \"Login\".</p>";
		alert_str += "<p class='cust_fett'>Schritt 5:</p>";
		alert_str += "<p class='cust_normal'>Klicken Sie nun auf den Bereich \"Meine Bilder\". Dort werden Sie eine Box mit Ihrer Reise sehen, in der noch auf die Eingabe der Gruppen-Nummer hingewiesen wird. Klicken Sie dort auf den Link „Jetzt eingeben!“. In dem Formular, welches dann erscheint, geben Sie die Gruppen-Nummer aus dem Informationsblatt ein. Klicken Sie anschließend auf die Schaltfläche \"Absenden\". </p>";
		alert_str += "<p class='cust_fett'>Schritt 6:</p>";
		alert_str += "<p class='cust_normal'>Ihre Bilder sind nun freigeschaltet und Sie können diese im Bereich \"Meine Bilder\" einsehen.</p>";
		alert_str += "<p class='cust_normal'>Wir wünschen Ihnen viel Freude mit den Funktionen unseres Kundenbereichs!</p>";
		alert_str += "</div>";
		alert_str += "<p>";

		/* display with notifybox */

		cust_notifybox_open(alert_str, 'Information');

		return false;

	});



	/* --- display infos about booking number --- */

	$("#id_buchungsnummerhilfe").bind("click", function(){

		/* --- compile text --- */

		alert_str = "<div style='width:100%; height:400px; overflow:auto;'>";
		alert_str += "<span class='cust_fett'>So finden Sie Ihre Buchungsnummer!</span><p>";
		alert_str += "<p class='cust_normal'>Ihre 6-stellige Buchungsnummer befindet sich auf Ihrer Buchungsbestätigung, Ihrer Rechnung sowie auf Ihren Tickets.</p>";
		alert_str += "<p class='cust_normal'>Hier sehen Sie die Stelle, wo Sie die Buchungsnummer auf Ihrer Rechnung finden: </p>";
		alert_str += "<p class='cust_normal'><img src='customer/img/bookingnumber-info.jpg'></p>";
		alert_str += "<p class='cust_normal'>Bitte geben Sie diese 6-stellige Nummer in das Feld \"Buchungs-Nr.\" ein.</p>";
		alert_str += "</div>";
		alert_str += "<p>";

		/* display with notifybox */

		cust_notifybox_open(alert_str, 'Information');

		return false;

	});






	/* --------------------------------------------------- function: display rules ------------------------------------------------------ */


	/* --- display rules in modal window --- */

	$("#id_rulesview").bind("click", function(){

		/* --- compile text --- */

		alert_str = "<div style='width:100%; height:400px; overflow:auto;'>";
		alert_str += "<span class='cust_fett'>Nutzungsbedingungen für den Kundenbereich </span><p>";
		alert_str += "<p class='cust_normal'>Herzlich Willkommen im Kundenbereich des Humboldt Studienreisen!</p>";
		alert_str += "<p class='cust_normal'>Wenn Sie die von uns über \"Kunden-Login\" zur Verfügung gestellten Dienste nutzen möchten, erfolgt dies auf Grundlage der nachstehenden Bedingungen, deren Geltung Sie mit Registrierung und Einrichtung Ihres Nutzerkontos anerkennen.</p>";
		alert_str += "<p class='cust_fett'>1. Angebotene Dienste</p>";
		alert_str += "<p class='cust_normal'>Der Humboldt Studienreisen stellt Ihnen ein Fotoarchiv mit den während Ihrer Reise von uns aufgenommenen Bildern zur Verfügung. Die Aufnahmen erfolgen ohne Benennung der darauf abgebildeten Personen.</p>";
		alert_str += "<p class='cust_fett'>2. Kosten</p>";
		alert_str += "<p class='cust_normal'>Die Nutzung des Fotoarchivs ist kostenlos.</p>";
		alert_str += "<p class='cust_fett'>3. Registrierung</p>";
		alert_str += "<p class='cust_normal'>Voraussetzung für die Nutzung ist eine Registrierung.</p>";
		alert_str += "<p class='cust_normal'>Registrieren kann sich jede natürliche, geschäftsfähige Person ab 18 Jahren einmalig.</p>";
		alert_str += "<p class='cust_normal'>Bei Ihrem ersten Besuch geben Sie dazu bitte Ihre Buchungsnummer, Ihren Nachnamen und Ihr Geburtsdatum an. Dann richten Sie Ihr Benutzerkonto für den zukünftigen schnellen Kunden-Login mit Ihrer Emailadresse und einem von Ihnen ausgewählten Paßwort ein.</p>";
		alert_str += "<p class='cust_normal'>Die Gewährung der Zugangsberechtigung und die Einräumung eines Nutzerkontos erfolgt nach Prüfung durch Humboldt Studienreisen. Ein Rechtsanspruch auf Annahme eines Registrierungsgesuchs besteht nicht. Es liegt im Ermessen von Humboldt Studienreisen ein Gesuch entgegenzunehmen oder abzulehnen. Bereits erteilte Zugangsberechtigungen können durch Humboldt Studienreisen jederzeit zurückgenommen werden, sofern wichtige Gründe vorliegen. So ist es etwa untersagt, sich unter verschiedenen Nutzernamen mehrfach anzumelden. Im Falle der Zuwiderhandlung ist Humboldt Studienreisen berechtigt, den Nutzer auszuschließen.</p>";
		alert_str += "<p class='cust_normal'>Die Weitergabe von Daten Ihres Nutzungskontos sowie die Nutzung fremder Konten sind verboten und können zur Sperrung führen.</p>";
		alert_str += "<p class='cust_normal'>Hierüber wird der Nutzer jeweils unverzüglich per Email unterrichtet.</p>";
		alert_str += "<p class='cust_normal'>Möchten Sie Ihr Nutzerkonto löschen lassen, können Sie uns dies jederzeit per Email mitteilen; wir werden nach Prüfung Ihrem Wunsch unverzüglich nachkommen.</p>";
		alert_str += "<p class='cust_fett'>4. Nutzung und Freigabe von Bildern</p>";
		alert_str += "<p class='cust_normal'>Die von Humboldt Studienreisen im Fotoarchiv bereitgestellten Bilder können Sie in Ihren Forenbeiträgen nutzen, sie downloaden, an Freunde senden und sie im privaten Rahmen kostenlos verwenden. </p>";
		alert_str += "<p class='cust_normal'>Zusätzlich können Sie Bilder freigeben. In diesem Fall darf auch Humboldt Studienreisen das Bild für den Internetauftritt inklusive Foren, Blogs und ähnlichen Onlineformen sowie zur Online-Werbung, in Printerzeugnissen oder auf digitalisierten Datenträgern verwenden.</p>";
		alert_str += "<p class='cust_normal'>Diese Freigabe können Sie jederzeit für die Zukunft widerrufen. Für bereits erfolgte Verarbeitung, z.B. Verwendung in bereits zum Druck gegebenen Prospekten, ist dies grundsätzlich nicht möglich. Humboldt Studienreisen wird sich aber bemühen, selbst dann auf die Nutzung zu verzichten, wenn dies mit zumutbarem Aufwand zu ermöglichen ist.</p>";
		alert_str += "<p class='cust_fett'>5. Haftung</p>";
		alert_str += "<p class='cust_normal'>Für die in diesem Bereich angebotenen Dienste übernimmt Humboldt Studienreisen keine Haftung; weder für die ständige Verfügbarkeit noch Verwendbarkeit, Richtigkeit und Vollständigkeit.</p>";
		alert_str += "<p class='cust_normal'>Es besteht kein Recht auf vollständige Listung von Reisebildern; Humboldt Studienreisen hält sich ein Selektionsrecht vor.</p>";
		alert_str += "<p class='cust_normal'>Möchten Sie Bilder beanstanden, die in diesem Archiv hinterlegt sind, haben Sie die Möglichkeit, Humboldt Studienreisen dies mitzuteilen; eine entsprechende Funktion ist bei jedem Bild eingerichtet. Das Entfernen des Bildes wird schnellstmöglich geprüft, ein rechtlicher Anspruch auf sofortiges Entfernen besteht jedoch nicht.</p>";
		alert_str += "<p class='cust_normal'>Die Verantwortung für sämtliche Inhalte, die durch den Nutzer eingebracht werden, trägt ausschließlich der Nutzer, vom dem diese stammen, nicht aber Humboldt Studienreisen.</p>";
		alert_str += "<p class='cust_fett'>6. Personenbezogene Daten, Datenschutz</p>";
		alert_str += "<p class='cust_normal'>Alle an Humboldt Studienreisen übermittelten Daten werden gemäß den Bestimmungen des Bundesdatenschutzgesetzes sowie des Teledienstdatenschutzgesetzes zur Vertragserfüllung und Vertragsabwicklung erhoben, gespeichert und verarbeitet.</p>";
		alert_str += "</div>";
		alert_str += "<p>";

		/* display with notifybox */

		cust_notifybox_open(alert_str, 'Information');

		return false;

	});






	/* ------------------------------------------------- form "id_cust_login_pwform" ------------------------------------------------- */


	/* --- checks before submission of form --- */

	$("#id_cust_login_pwform_button").bind("click", function(){

		var res = 1;

		/* --- get data from fields and trim them --- */

		var email = document.getElementById("id_email").value;

		email = email.replace(/ /g, "");


		if (email == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihre E-Mail-Adresse ";
		}


		/* --- display error message or submit form --- */

		if (res == 0)
		{
			//alert(alert_str);
			cust_notifybox_open(alert_str, '');
			return false;
		}
		else
		{
			document.getElementById("id_act").value = 'login_pwwork';

			document.getElementById("id_cust_login_pwform").submit();
		}

	});






	/* ----------------------------------------------- form "id_cust_accessform" ----------------------------------------------- */


	/* --- checks before submission of form --- */

	$("#id_cust_accessform_button").bind("click", function(){

		var res = 1;

		/* --- get data from fields and trim them --- */

		var email	= document.getElementById("id_email").value;
		var pw		= document.getElementById("id_pw").value;
		var pw2		= document.getElementById("id_pw2").value;

		email = email.replace(/ /g, "");



		/* --- get md5 coded password by ajax request --- */

		var pw_md5 = "";

		if (pw != '')
		{
			$.ajax({
				type: "GET",
				cache: false,
				async: false,
				url: "customer/ajax_convert_md5.php",
				data: "pw="+pw,
				success: function(data){
					//alert("Data: " + data);
					if (data == "")
					{
						res = 0;
						alert_str = "Interner Fehler! \r\n";
					}
					else
					{
						pw_md5 = data;
					}
				}
			});
		}



		/* --- further checks on password inputs --- */

		if ((pw != '') && (pw2 != ''))
		{
			if (pw != pw2)
			{
				res = 0;
				alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
				alert_str = alert_str + "- Passwort und Passwort-Wiederholung stimmen nicht überein! ";
			}
			else
			{
				/* --- check length of passwords --- */			

				if (pw.length < 8)
				{
					res = 0;
					alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
					alert_str = alert_str + "- Ihr Passwort ist kürzer als 8 Zeichen! ";
				}

				/* --- check for spaces --- */			

				if (pw.indexOf(" ") != -1)
				{
					res = 0;
					alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
					alert_str = alert_str + "- Ihr Passwort enthält Leerzeichen! ";
				}
			}
		}



		/* --- check for validity of e-mail address --- */

		if (email != "")
		{
			check1 = email.indexOf("@");
			check2 = email.indexOf(".");

			if ((check1 == -1) || (check2 == -1))
			{
				res = 0;
				alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
				alert_str = alert_str + "- Das Format Ihrer E-Mail-Adresse ist ungültig! <p>";
				alert_str = alert_str + "Beispiel für ein gültiges Format: k.mustermann@domain.de ";
			}
		}



		/* --- check for existence of necessary inputs --- */

		if (pw2 == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Wiederholung Ihres neuen Passworts ";
		}

		if (pw == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihr neues Passwort ";
		}

		if (email == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihre E-Mail-Adresse ";
		}



		/* --- display error message or submit form --- */

		if (res == 0)
		{
			//alert(alert_str);
			cust_notifybox_open(alert_str, '');

			return false;
		}
		else
		{
			document.getElementById("id_act").value = 'access_work';
			document.getElementById("id_pw_m5").value = pw_md5;
			document.getElementById("id_pw").value = '';
			document.getElementById("id_pw2").value = '';

			document.getElementById("id_cust_accessform").submit();
		}

	});






	/* ----------------------------------------------- form "id_cust_dataform" ----------------------------------------------- */


	/* --- checks before submission of form --- */

	$("#id_cust_dataform_button").bind("click", function(){

		var res = 1;

		/* --- get data from fields and trim them --- */

		/* var salutation	= document.getElementById("id_salutation").options[document.getElementById("id_salutation").selectedIndex].value; */
		var salutation	= document.getElementById("id_salutation").value;
		var firstname	= document.getElementById("id_firstname").value;
		var lastname	= document.getElementById("id_lastname").value;
		var street	= document.getElementById("id_street").value;
		var zip		= document.getElementById("id_zip").value;
		var town	= document.getElementById("id_town").value;
		var country	= document.getElementById("id_country").options[document.getElementById("id_country").selectedIndex].value;
		var phone_private = document.getElementById("id_phone_private").value;
		var birthday_dd	= document.getElementById("id_birthday_dd").value;
		var birthday_mm	= document.getElementById("id_birthday_mm").value;
		var birthday_yyyy = document.getElementById("id_birthday_yyyy").value;



		/* --- check for numbers only in field "zip" --- */

		if (zip != "")
		{
			if (isNaN(zip))
			{
				res = 0;
				alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
				alert_str = alert_str + "- Ihre Postleitzahl <p>";
				alert_str = alert_str + "In diesem Feld sind nur Ziffern erlaubt! ";
			}
		}



		/* --- check for existence of necessary inputs --- */

		if ((birthday_dd == '') || (birthday_mm == '') || (birthday_yyyy == ''))
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihr Geburtsdatum ";
		}

		if (phone_private == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihre Telefonnummer ";
		}

		if (country == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihr Land ";
		}

		if (town == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihr Ort ";
		}

		if (zip == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihre PLZ ";
		}

		if (street == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihre Straße ";
		}

		if (lastname == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihr Nachname ";
		}

		if (firstname == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihr Vorname ";
		}

		if (salutation == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Anrede ";
		}



		/* --- display error message or submit form --- */

		if (res == 0)
		{
			//alert(alert_str);
			cust_notifybox_open(alert_str, '');

			return false;
		}
		else
		{
			document.getElementById("id_act").value = 'data_work';

			document.getElementById("id_cust_dataform").submit();
		}

	});






	/* ------------------------------------------------- form "id_cust_travels_groupform" ------------------------------------------------- */


	/* --- checks before submission of form --- */

	$("#id_cust_travels_groupform_button").bind("click", function(){

		var res = 1;

		/* --- get data from fields and trim them --- */

		var group_number = document.getElementById("id_group_number").value;
		var travel_id = document.getElementById("id_travel_id").value;

		group_number = group_number.replace(/ /g, "");


		/* make checks */

		if (group_number == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihre Gruppennummer ";
		}
		else
		{
			$.ajax({
				type: "GET",
				cache: false,
				async: false,
				url: "customer/ajax_check_groupnumber.php",
				data: "travel_id="+travel_id+"&group_number="+group_number,
				success: function(data){
					//alert("Data: " + data);
					if (data == "")
					{
						res = 0;
						alert_str = "Die von Ihnen eingegebene Gruppennummer konnte nicht gefunden werden. Es kann vereinzelnd bis zu 4 Wochen dauern bis die Bilder verfügbar sind. Prüfen Sie bitte Ihre Eingabe falls, dieser Zeitraum bereits überschritten ist. Möglicherweise liegt ein Eingabefehler vor. \r\n";
					}
				}
			});
		}


		/* --- display error message or submit form --- */

		if (res == 0)
		{
			//alert(alert_str);
			cust_notifybox_open(alert_str, '');
			return false;
		}
		else
		{
			document.getElementById("id_act").value = 'travels_groupwork';

			document.getElementById("id_cust_travels_groupform").submit();
		}

	});






	/* --------------------------------------------------- function: save to favorites ------------------------------------------------------ */


	/* --- saving entry to favorites --- */

	$("a.savetofav").bind("click", function(){

		var res = 0;	// set default result to FALSE

		/* --- get data from attribute "href" and split into separate vars --- */

		para = $(this).attr("href");
		arr_para = para.split(",");

		customer_id = arr_para[0];
		travel_id = arr_para[1];
		container_id = arr_para[2];
		photo_id = arr_para[3];


		/* --- save entry using ajax --- */

		if ((customer_id != "") && (container_id != "") && (photo_id != ""))
		{
			$.ajax({
				type: "GET",
				cache: false,
				async: false,
				url: "customer/ajax_save_favorite.php",
				data: "customer_id="+customer_id+"&travel_id="+travel_id+"&container_id="+container_id+"&photo_id="+photo_id,
				success: function(data){
					//alert("Data: " + data);
					if (data == "")
					{
						res = 0;
					}
					else
					{
						res = data;
					}
				}
			});
		}


		/* --- display error message or submit form --- */

		switch (res)
		{
			case "0":
				alert_str = "Fehler: Der Vorgang war nicht erfolgreich. <p>Bitte probieren Sie es erneut. <p>Sollte der Fehler anhalten, informieren Sie bitte unseren technischen Kundenservice.";
				cust_notifybox_open(alert_str, '');
				return false;
			break;

			case "9":
				alert_str = "Das Foto befindet sich bereits in Ihren Favoriten!<p>";
				cust_notifybox_open(alert_str, '');
				return false;
			break;

			default:
				cust_notifybox_open('Das Foto wurde Ihren Favoriten hinzugefügt.<p> ', 'Gespeichert!');
				return false;
			break;
		}
	});






	/* -------------------------------------------------- function: remove from favorites ----------------------------------------------------- */


	/* --- removing entry from favorites --- */

	$("a.removefromfav").bind("click", function(){

		/* --- ask for confirmation --- */

		check = confirm("Möchten Sie das Foto wirklich entfernen?");

		if (check == false)
		{
			return false;
		}
		else
		{

			var res = 0;	// set default result to FALSE

			/* --- get data from attribute "href" and split into separate vars --- */

			para = $(this).attr("href");
			arr_para = para.split(",");

			customer_id = arr_para[0];
			id = arr_para[1];


			/* --- save entry using ajax --- */

			if ((customer_id != "") && (id != ""))
			{
				$.ajax({
					type: "GET",
					cache: false,
					async: false,
					url: "customer/ajax_remove_favorite.php",
					data: "customer_id="+customer_id+"&id="+id,
					success: function(data){
						// alert("Data: " + data);
						if (data == "")
						{
							res = 0;
						}
						else
						{
							res = 1;
						}
					}
				});
			}


			/* --- display error message or submit form --- */

			if (res == 0)
			{
				alert_str = "Fehler: Der Vorgang war nicht erfolgreich. <p>Bitte probieren Sie es erneut. <p>Sollte der Fehler anhalten, informieren Sie bitte unseren technischen Kundenservice.";

				cust_notifybox_open(alert_str, '');
				return false;
			}
			else
			{
				//cust_notifybox_open('Das Foto wurde Ihren Favoriten hinzugefügt.<p> ', 'Gespeichert!');
				location.reload();
				return false;
			}

		} // (check)
	});






	/* --------------------------------------------------- function: accept to publication ------------------------------------------------------ */


	/* --- asking for acceptance --- */

	$("a.acceptpub").bind("click", function(){

		/* --- get data from attribute "href" and split into separate vars --- */

		url_yes = $(this).attr("href");
		close_on_no = "yes";


		/* --- save entry using ajax --- */

		if (url_yes != "") 
		{
			alert_str = "<span class='cust_fett'>Möchten Sie das Foto für die Verwendung durch den Veranstalter freigeben?</span><p>";
			alert_str += "<p class='cust_klein'>Hinweis: Mit Klick auf die Schaltfläche \"JA\" stimmen Sie folgenden Bedingungen zu:</p>";
			alert_str += "<p class='cust_klein'>Ich erkläre mich damit einverstanden, dass dieses Foto für den Internetauftritt inklusive Foren, Blogs und ähnlichen Onlineformen sowie zu Werbung online, in Printerzeugnissen oder auf digitalisierten Datenträgern von der Firma " + cust_companyname + " genutzt werden kann. Die Freigabe kann ich jederzeit widerrufen. Selbstverständlich kann ich das Foto weiterhin für private Zwecke verwenden und z.B. auch im Kundenforum online stellen.</p>";
			alert_str += "<p>";

			cust_questionbox_open(alert_str, '', url_yes, '', close_on_no);
			return false;
		}

	});






	/* --------------------------------------------------- function: remove from publication ------------------------------------------------------ */


	/* --- asking for removing --- */

	$("a.removepub").bind("click", function(){

		/* --- get data from attribute "href" and split into separate vars --- */

		url_yes = $(this).attr("href");
		close_on_no = "yes";


		/* --- save entry using ajax --- */

		if (url_yes != "") 
		{
			alert_str = "<span class='cust_fett'>Möchten Sie die Freigabe des Fotos widerrufen?</span><p>";
			alert_str += "<p class='cust_klein'>Hinweis: Mit Klick auf die Schaltfläche \"JA\" stimmen Sie folgenden Bedingungen zu:</p>";
			alert_str += "<p class='cust_klein'>Die Freigabe des Bildes wird für die Zukunft widerrufen. Für bereits erfolgte Verarbeitung, z.B. Verwendung in bereits zum Druck gegebenen Prospekten, ist dies grundsätzlich nicht möglich. Die Firma " + cust_companyname + " wird sich aber bemühen, selbst dann auf die Nutzung zu verzichten, wenn dies mit zumutbarem Aufwand zu ermöglichen ist.</p>";
			alert_str += "<p>";

			cust_questionbox_open(alert_str, '', url_yes, '', close_on_no);
			return false;
		}

	});






	/* ------------------------------------------------- form "id_cust_photos_complainform" ------------------------------------------------- */


	/* --- checks before submission of form --- */

	$("#id_cust_photos_complainform_button").bind("click", function(){

		var res = 1;

		/* --- get data from field and check them --- */

		var message = document.getElementById("id_message").value;

		if (message == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihre Mitteilung an uns ";
		}


		/* --- display error message or submit form --- */

		if (res == 0)
		{
			//alert(alert_str);
			cust_notifybox_open(alert_str, '');
			return false;
		}
		else
		{
			document.getElementById("id_act").value = 'photos_complainwork';

			document.getElementById("id_cust_photos_complainform").submit();
		}

	});






	/* ------------------------------------------------- form "id_cust_photos_sendform" ------------------------------------------------- */


	/* --- checks before submission of form --- */

	$("#id_cust_photos_sendform_button").bind("click", function(){

		var res = 1;

		/* --- get data from field and check them --- */

		var email = document.getElementById("id_email").value;


		/* --- check for validity of e-mail addresses --- */

		if (email != "")
		{
			email = email + ",";	// add comma to string to work with an array definitely (even if only one address has been entered)

			arr_email = email.split(",");

			for (i=0; i<arr_email.length; i=i+1)
			{
				this_email = arr_email[i];

				this_email = this_email.replace(/ /g, "");

				if (this_email != "")
				{
					check1 = this_email.indexOf("@");
					check2 = this_email.indexOf(".");

					if ((check1 == -1) || (check2 == -1))
					{
						res = 0;
						alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
						alert_str = alert_str + "- Das Format einer E-Mail-Adresse ist ungültig! <p>";
						alert_str = alert_str + "Beispiel für ein gültiges Format: k.mustermann@domain.de ";
					}
				}
			}
		}


		/* --- check mandatory inputs --- */

		if (email == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- E-Mail-Adresse Empfänger ";
		}


		/* --- display error message or submit form --- */

		if (res == 0)
		{
			//alert(alert_str);
			cust_notifybox_open(alert_str, '');
			return false;
		}
		else
		{
			document.getElementById("id_act").value = 'photos_sendwork';

			document.getElementById("id_cust_photos_sendform").submit();
		}

	});






	/* ------------------------------------------------- form "id_cust_ratings_form" ------------------------------------------------- */


	/* --- checks before submission of form --- */

	$("#id_cust_ratings_form_button").bind("click", function(){

		var res = 1;

		/* --- get data from fields --- */

		var title = document.getElementById("id_msg_title").value;
		var rating1 = document.getElementsByName("var_msg_rating")[0].checked;
		var rating2 = document.getElementsByName("var_msg_rating")[1].checked;
		var rating3 = document.getElementsByName("var_msg_rating")[2].checked;
		var rating4 = document.getElementsByName("var_msg_rating")[3].checked;
		var rating5 = document.getElementsByName("var_msg_rating")[4].checked;
		var rating6 = document.getElementsByName("var_msg_rating")[5].checked;


		/* --- check for necessary inputs --- */

		if ((rating1 == false) && (rating2 == false) && (rating3 == false) && (rating4 == false) && (rating5 == false) && (rating6 == false))
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihre Bewertung ";
		}

		if (title == '')
		{
			res = 0;
			alert_str = "Eingaben unvollständig oder fehlerhaft! <p>Bitte prüfen Sie folgende Felder: <p>";
			alert_str = alert_str + "- Ihr Fazit ";
		}


		/* --- display error message or submit form --- */

		if (res == 0)
		{
			//alert(alert_str);
			cust_notifybox_open(alert_str, '');
			return false;
		}
		else
		{
			document.getElementById("id_act").value = 'ratings_work';

			document.getElementById("id_cust_ratings_form").submit();
		}

	});



});






