﻿<!--
//var global zur Verfügung stellen
var giftwrapper = 0; // Geschenkpapier
var insurance 	= 0; // Versicherung
var coupon 			= 0; //	Gutschein
var shipping 		= 0; // Bearbeitungsgebühr
var ticketprice = 0; // Zwischensumme
var total       = 0; // Gesamtsumme
//warenkorbpositionen
var amount 			= 0;  // Zwischensumme mit Zusatzleistungen
var price 			= 0;  // Zwischensumme mit Zusatzleistungen, formatiert sprache/land
var price_formatted = 0; // Wärungszeichen, formatiert sprache/land
var currency_symbol = 0;
//anzahl merkzettelitems / events
var merkitems; // Anzahl Items auf dem Merkzettel
//reservierungs-countdown
var jetzt = new Date(); //aktuelle Datum
var reservation_duration = 0; // Zeitpunkt in millisec
var reservierungs_restzeit_min = 0; // restzeit min
var reservierungs_restzeit_sec = 0; // restzeit sec

var warenkorbInfos = {
	show: function() {
		
		var label = "";
		var htmlString = "";
		
		try {
			//cookie holen
			encodedCookieValue = getCookie("webshop");
			//cookie value decodieren
			decodedCookieValue = decode64(encodedCookieValue);
			
			/* Zusätzliche Informationen werden aktuell nicht verwendet
			giftwrapper = getCookieParamByNameWithCookieValue("giftwrapper",decodedCookieValue);   // Geschenkpapier
			insurance 	= getCookieParamByNameWithCookieValue("insurance",decodedCookieValue);		 // Versicherung	
			coupon 			= getCookieParamByNameWithCookieValue("coupon",decodedCookieValue);				 //	Gutschein
			shipping 		= getCookieParamByNameWithCookieValue("shipping",decodedCookieValue);      // Bearbeitungsgebühr
			ticketprice = getCookieParamByNameWithCookieValue("ticketprice",decodedCookieValue);   // Zwischensumme
			total 			= getCookieParamByNameWithCookieValue("total",decodedCookieValue);         // Gesamtsumme
			*/

			//warenkorbpositionen
			amount 			= getCookieParamByNameWithCookieValue("amount",decodedCookieValue);        // Gesamt Ticktanzahl
	
			//price 			= getCookieParamByNameWithCookieValue("price",decodedCookieValue);         // Zwischensumme mit Zusatzleistungen		
			//price       = price.replace(/\./g,",");
			//price_formatted = getCookieParamByNameWithCookieValue("price_formatted",decodedCookieValue); // Zwischensumme mit Zusatzleistungen, formatiert sprache/land
			//currency_symbol = getCookieParamByNameWithCookieValue("currency_symbol",decodedCookieValue); // Wärungszeichen, formatiert sprache/land
		
			//anzahl merkzettelitems / events
			merkitems = getCookieParamByNameWithCookieValue("merkitems",decodedCookieValue);        // Anzahl Items auf dem Merkzettel
			//alert(merkitems);
		
			//debug
			//document.write(amount + " Ticket(s) | " + price +"&#8364;");
			//document.write("<br>");
			//document.write(decodedCookieValue);
			
			//Gesamt Ticktanzahl
			if ( amount == 1 ) { label = " Ticket" } else { label = " Tickets" } 
			htmlString = amount + label;
			document.getElementById("ticketInfo").innerHTML = htmlString;
			
			//Zwischensumme mit Zusatzleistungen, formatiert sprache/land
			//htmlString = price_formatted + " " + unescape(currency_symbol);
			//document.getElementById("zwischensummeInfo").innerHTML = htmlString;
			
			//Anzahl Items auf dem Merkzettel
			if ( merkitems == 1 ) { label = " Event" } else { label = " Events" } 
			htmlString = merkitems + label;
			document.getElementById("merkzettelInfo").innerHTML = htmlString;
			
			//reservierungs-countdown
			reservation_duration = getCookieParamByNameWithCookieValue("reservation_duration",decodedCookieValue); // Zeitpunkt in millisec
			reservierungs_restzeit_min = (reservation_duration - jetzt.getTime()) / 60000; // restzeit min
			reservierungs_restzeit_sec = (reservation_duration - jetzt.getTime()) % 60000 / 1000; // restzeit sec

			if (reservierungs_restzeit_min > 0) {
				if (reservierungs_restzeit_min < 5) { 
					//status im header setzen
					document.getElementById("link_warenkorb").className = "link_warenkorb countdown";
				}
			}  else if (reservation_duration < 0) {
				//status im header setzen
				document.getElementById("link_warenkorb").className = "link_warenkorb abgelaufen";
			}
			
		} catch (e) {
	
			//fehlerfall bzw. kein cookie gefunden
			//document.write("Allgemeinster Fehler ;-) bzw. kein Cookie gefunden");
			document.getElementById('teil_zwei_rechts').style.display = "none";	 //sichtbarer warenkorb
			document.getElementById('teil_zwei_rechts_nsw').style.display = "block"; //nichtsichtbarer warenkorb
			
		}//end try
	}
}//end 

var reservierungsCountdown = {

	show: function() {
		var jetzt = new Date();
		var reservation_duration = 0;
		var reservierungs_restzeit_min = 0;
		var reservierungs_restzeit_sec = 0;
		
		try {
			//cookie holen
			encodedCookieValue = getCookie("webshop");
			//cookie value decodieren
			decodedCookieValue = decode64(encodedCookieValue);
			
			//reservierungs-countdown
			reservation_duration = getCookieParamByNameWithCookieValue("reservation_duration",decodedCookieValue); // Zeitpunkt in millisec
			reservierungs_restzeit_min = (reservation_duration - jetzt.getTime()) / 60000; // restzeit min
			reservierungs_restzeit_sec = (reservation_duration - jetzt.getTime()) % 60000 / 1000; // restzeit sec
			//debug
			//alert(reservierungs_restzeit_min +":"+reservierungs_restzeit_sec+"|"+reservation_duration);

			if (reservierungs_restzeit_min > 0) {
				
				document.getElementById("restreservierungszeit_mini").innerHTML = Math.floor(reservierungs_restzeit_min) + ":" + Math.floor(reservierungs_restzeit_sec) + " MIN.";
				document.getElementById("restreservierungszeit_text").innerHTML = "Ihre Tickets sind noch " + Math.floor(reservierungs_restzeit_min) + " Minuten für Sie reserviert.";
				
				if (reservierungs_restzeit_min > 5) { document.getElementById("restreservierungszeit_icn").src = "/img/partner/eve/prozess/icn_Nmin.gif" }
				//unter 5 min
				if (reservierungs_restzeit_min < 5) { 
					document.getElementById("restreservierungszeit_icn").src = "/img/partner/eve/prozess/icn_5min.gif";
					document.getElementById("restreservierungszeit_headline").innerHTML = "Kartenreservierung läuft bald ab!";
					document.getElementById("restreservierungszeit_text").innerHTML = "Für einige Ihrer Tickets läuft in Kürze die Reservierungszeit aus. Jedes Ticket kann im Warenkorb leider nur für eine Dauer von 20 Minuten vorgemerkt werden. Das Zeitsymbol zeigt Ihnen die verbleibenden Minuten an.";
					//status im header setzen
					//document.getElementById("link_warenkorb").className = "link_warenkorb countdown";
				}
				if (reservierungs_restzeit_min < 4) { document.getElementById("restreservierungszeit_icn").src = "/img/partner/eve/prozess/icn_4min.gif" }
				if (reservierungs_restzeit_min < 3) { document.getElementById("restreservierungszeit_icn").src = "/img/partner/eve/prozess/icn_3min.gif" }
				if (reservierungs_restzeit_min < 2) { document.getElementById("restreservierungszeit_icn").src = "/img/partner/eve/prozess/icn_2min.gif" }
				if (reservierungs_restzeit_min < 1) { document.getElementById("restreservierungszeit_icn").src = "/img/partner/eve/prozess/icn_1min.gif" }
				
			} else if (reservierungs_restzeit_min < 0 && reservation_duration != 0) {
				document.getElementById("restreservierungszeit_icn").src = "/img/partner/eve/prozess/icn_abgelaufen.gif";
				document.getElementById("restreservierungszeit_headline").innerHTML = "The reservation of your tickets is no longer valid.";
				document.getElementById("restreservierungszeit_headline").className = "rot bold";
				document.getElementById("restreservierungszeit_text").innerHTML = "To continue selecting tickets, please click <a href='tickets.html?fun=resetsession&doc=start&id=" + ses + "'>here</a>.";
				//status im header setzen
				//document.getElementById("link_warenkorb").className = "link_warenkorb abgelaufen";
				
				window.setTimeout("generateReservierungsLayer()", 250);
				
			} 
			if (reservation_duration == 0 && document.getElementById("reservierungsgrafik")) { document.getElementById("reservierungsgrafik").style.display = "none" }
			
		} catch (e) {
			//fehlerfall bzw. kein cookie gefunden
		}//end try
	},
	
	setTimeStamp: function(id) {
		var myDate = new Date();
		var microTime = myDate.getTime().toString();
		document.getElementById(id).value = microTime;
	},
	appendTimeStamp: function(obj) {
		var myDate = new Date();
		var microTime = myDate.getTime().toString();
		document.location.href = obj.href + "&timestamp=" + microTime;
	}
}//end

function generateReservierungsLayer() {
		//elemente
		var layer = document.createElement('div');
		var head = document.createElement('div');
		var content = document.createElement('div');
		var notice = document.createElement('span');
		var sub_notice = document.createElement('span');
		var killer = document.createElement('a');
		var shadow = document.createElement('div');
		
		//eigenschaften
		layer.id = "reservierungszeit_layer"; 			
		head.className = "head";
		content.className ="content";
		notice.className = "notice";
		sub_notice.className = "sub_notice";
		shadow.id = "reservierungszeit_shadow";
		killer.href = "tickets.html?fun=resetsession&doc=start&id=" + ses;
		
		//texte
		var t1 = document.createTextNode('Sehr geehrter Kunde,');
		var t2 = document.createTextNode('die Reservierungszeit für Ihre Tickets ist leider abgelaufen!');
		var t3 = document.createTextNode('Bitte wählen Sie Ihre Tickets erneut aus.');
		var t4 = document.createTextNode('>Erneut auswählen');
		var t5 = document.createTextNode('Bitte beachten Sie, dass Tickets immer nur für einen bestimmten Zeitraum reserviert werden können. Ein Countdown für die verbleibende Reservierungszeit wird Ihnen im Bestellprozess angezeigt.');

		//ineinander verschachteln
		layer.appendChild(head);
		content.appendChild(t1);
		notice.appendChild(t2);
		content.appendChild(notice);
		content.appendChild(t3);
		killer.appendChild(t4);
		content.appendChild(killer);
		sub_notice.appendChild(t5)
		content.appendChild(sub_notice);
		layer.appendChild(content);
	try {
		//in DOM hängen
		if(jQuery("#reservierungszeit_layer").length < 1) {
    		document.body.appendChild(layer);
    		document.body.appendChild(shadow);
    		
    		if(jQuery(window).width() > 445) {
    			var tmpWidth = (jQuery(window).width() - 445) / 2;
    			jQuery("#reservierungszeit_layer").css("left",tmpWidth + "px");
    		}			
    	}
	} catch (e) {
		//fehlerfall
	}//end try
	
}
function getCookie( name ) {
	var arg = name + "="; 
	var alen = arg.length; 
	var clen = document.cookie.length; 
	var i = 0;
	
	while ( i < clen ) { 
		var j = i + alen;
		
		if ( document.cookie.substring(i, j) == arg ) 		
			return getCookieValue(j); 
			i = document.cookie.indexOf(" ", i) + 1;		
			if ( i == 0 ) break; 
	}//end while
	return null;
}//end function

function getCookieValue(offset) {
	var endstr = document.cookie.indexOf(";", offset);
	
	if ( endstr == -1 )
		endstr = document.cookie.length;
		return unescape(document.cookie.substring(offset, endstr));	
}//end function

function getCookieParamByNameWithCookieValue(name,cookieValue) {
	var params = cookieValue.split("&");
	var param_pair;				
	for ( var i=0; i < params.length; i++ ) {	
		
		param_pair = params[i].split("=");
		
		if (param_pair[0].toString() == name) {		
				return decodeURIComponent(param_pair[1]); 			
		}//end if
	}//end for
}//end function

// This code was written by Tyler Akins and has been placed in the
// public domain. It would be nice if you left this header intact.
// Base64 code from Tyler Akins -- http://rumkin.com

function decode64(input) {

	 var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";

   var output = "";
   var chr1, chr2, chr3;
   var enc1, enc2, enc3, enc4;
   var i = 0;

   // remove all characters that are not A-Z, a-z, 0-9, +, /, or =
   input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");

   do {
      enc1 = keyStr.indexOf(input.charAt(i++));
      enc2 = keyStr.indexOf(input.charAt(i++));
      enc3 = keyStr.indexOf(input.charAt(i++));
      enc4 = keyStr.indexOf(input.charAt(i++));

      chr1 = (enc1 << 2) | (enc2 >> 4);
      chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
      chr3 = ((enc3 & 3) << 6) | enc4;

      output = output + String.fromCharCode(chr1);

      if (enc3 != 64) {
         output = output + String.fromCharCode(chr2);
      }
      if (enc4 != 64) {
         output = output + String.fromCharCode(chr3);
      }
   } while (i < input.length);

   return output;
}//end function

function showTooltip(e) {	
			var string = null; 
			var shadowSize = 3;
			var tooltipMaxWidth = 350;
			try {	
				//elemente erzeugen
				if (!document.getElementById("tooltip")) {	
					tooltip = document.createElement('div');
					tooltip.id = 'tooltip';
					tooltipShadow = document.createElement('div');
					tooltipShadow.id = 'tooltipShadow';
					
					tooltip.style.display='none';	
					tooltipShadow.style.display='block';
					document.body.appendChild(tooltip);
					document.body.appendChild(tooltipShadow);	
				}//end if
				
				if (reservierungs_restzeit_min > 0) {
					
					string = "Ihre Tickets sind noch " + Math.floor(reservierungs_restzeit_min) + " Minuten für Sie reserviert.";
					if (reservierungs_restzeit_min < 5) { string = "Die Reservierung Ihrer Tickets läuf bald ab." }
					
				} else if (reservierungs_restzeit_min < 0 && reservation_duration != 0) {
					string = "Die Reservierung Ihrer Karten ist leider abgelaufen.";
				}
				
				if (string != null) {
					tooltip.style.display='block';
					tooltipShadow.style.display='block';
		
					tooltip.style.width = null;	
					tooltip.innerHTML = "<span>" + string + "</span>";
					
					//tooltip postion
					if (navigator.appName=="Microsoft Internet Explorer"){		// nur für den IE
						tooltip.style.left = e.clientX + 10 + 'px';
						tooltip.style.top = e.clientY + 10 + 'px';					
						tooltipShadow.style.left = e.clientX + 10 + shadowSize + 'px';
						tooltipShadow.style.top = e.clientY + 10 + shadowSize + 'px';
					} else {			
						tooltip.style.left = e.pageX + 10 + 'px';
						tooltip.style.top = e.pageY + 10 + 'px';					
						tooltipShadow.style.left = e.pageX + 10 + shadowSize + 'px';
						tooltipShadow.style.top = e.pageY + 10 + shadowSize + 'px';
					}
					
					if (tooltip.offsetWidth>tooltipMaxWidth) { tooltip.style.width = tooltipMaxWidth + 'px' }		
					tooltipShadow.style.width = tooltip.offsetWidth + 'px';
					tooltipShadow.style.height = tooltip.offsetHeight + 'px';
				}
				
		} catch (e) {
			//fehlerfall bzw. kein cookie gefunden
		}//end try
}//end function

function hideTooltip() {	
	document.getElementById("tooltip").style.display='none';
	document.getElementById("tooltipShadow").style.display='none';		
}//end function


/*Bezeichnungen der Geschenkpapierarten Klickbar gemacht*/
function selektpapier(nummer){	
	var name = "papiername"+nummer;
	var box ="papierbox"+nummer;		
	// setzen der Darstellung dergecheckten Radiobox auf false
	var spans = document.getElementsByTagName("span"); 
	 for(var i = 0; i < spans.length; i++) { 	
	 if(spans[i].className == "customRadioButton customRadioButtonChecked") { 
			spans[i].className = "customRadioButton";
			spans[i].style.backgroundPosition = "0 0px"; 
			}
		} 

	// setzen der radiobox  auf ausgewählt
	document.getElementById(box).checked = true;		
	document.getElementById(name).className="customRadioButton customRadioButtonChecked";
	document.getElementById(name).style.backgroundPosition = "0 -20px";			
	return true;
}//end funktion

//-->
