/* Configuration */
/* var download_php = "https://corporate-publications.eu/dpwn/2008/gb/static/php/download.php"; */
var download_php = "http://investors.dp-dhl.de/reports/2008/gb/php/download.php";

/* Static labels */
var intro_text = "DPWN";
var page_label = "";
var close_window = "Close window";
var site_added = "Page was successfully added!";
var site_already_in_cart = "This page already exists in your cart!";
var alt_remove = "Remove page";
var alt_show = "Show page";
var alt_removeall = "Remove all pages";
var alt_download = "Download all pages as one PDF";
var pdf_dir = "../../files/pdf";
var lang_dir = "en";
var confirm_action = "Remove this page from your cart?";

function writeSessionCookie(cookieName, cookieValue) {
	if (testSessionCookie()) {
		document.cookie = escape(cookieName) + "=" + escape(cookieValue) + "; path=/";
		return true;
	} else {
		return false;
	}
}

function getCookieValue(cookieName) {
	var exp = new RegExp(escape(cookieName) + "=([^;]+)");
	if (exp.test(document.cookie + ";")) {
		exp.exec(document.cookie + ";");
		return unescape(RegExp.$1);
	} else {
		return false;
	}
}

function testSessionCookie() {
	document.cookie = "testSessionCookie=Enabled";
	if (getCookieValue("testSessionCookie") == "Enabled") {
		return true;
	} else {
		return false;
	}
}

function testPersistentCookie() {
	writePersistentCookie("testPersistentCookie", "Enabled", "minutes", 1);
	if (getCookieValue("testPersistentCookie") == "Enabled") {
		return true;
	} else {
		return false;
	}
}

function writePersistentCookie(CookieName, CookieValue, periodType, offset) {
	var expireDate = new Date();
	offset = offset / 1;
	var myPeriodType = periodType;
	switch (myPeriodType.toLowerCase()) {
	  case "years":
		expireDate.setYear(expireDate.getFullYear() + offset);
		break;
	  case "months":
		expireDate.setMonth(expireDate.getMonth() + offset);
		break;
	  case "days":
		expireDate.setDate(expireDate.getDate() + offset);
		break;
	  case "hours":
		expireDate.setHours(expireDate.getHours() + offset);
		break;
	  case "minutes":
		expireDate.setMinutes(expireDate.getMinutes() + offset);
		break;
	  default:
		alert("Invalid periodType parameter for writePersistentCookie()");
		break;
	}
	document.cookie = escape(CookieName) + "=" + escape(CookieValue) + "; expires=" + expireDate.toGMTString() + "; path=/";
}

function deleteCookie(cookieName) {
	if (getCookieValue(cookieName)) {
		writePersistentCookie(cookieName, "Pending delete", "years", -1);
	}
	return true;
}
/* Add site to cart */
function addSite(id, filename) {

	// Warenkorb-Umstellung 09.03.2009
	var re = new RegExp("files/pdf/"+ lang_dir +"/[0-9]+");
	var re2 = new RegExp("files/pdf/"+ lang_dir +"/");
	for (i = 0; i < document.links.length; i++) {
		if(re.test(document.links[i].href)){
			var url_split = document.links[i].href.split(re2);
			filename = (url_split[1]);		
		}
	}
	// Ende

	var dc = getCookieValue("Sites");
	if (!dc) {
		dc = "";
	}
	var sites = dc.split("|");
	var isnew = isNew(filename);
	if (isnew == true) {
		dc = dc + "|" + id + "$" + filename;
		writeSessionCookie("Sites", dc);
		alert(site_added);
	}else{
		alert(site_already_in_cart);
	}
}
function getSites() {
	var dc = getCookieValue("Sites");
	if (!dc) {
		dc = "";
	}
	var sites = dc.split("|");
	var cart_files = "";
	var header = "";
	sites.sort();
	var output = "";
	output += "<form target='_blank' action='" + download_php + "' method='post'>"; 
	output += "<table summary='" + intro_text + "'>\n";
	for (var i = 0; i < sites.length; ++i) {
		if (sites[i] != "") {
			var page = sites[i].split("$");
			var page_title = page[0];
			var page_filename = page[1];
			cart_files += page_filename + ",";
			output += "<tr>\n";
			output += "<td>" + page_title + "</td>\n";
			output += "<td><a target='_blank' href='" + pdf_dir + "/" + lang_dir + "/" + page_filename+"'>" + alt_show + "</a></td>\n";
			output += "<td><a href='javascript:void();' onclick='removeSite(\""+page_filename+"\"); location.reload(true);'>" + alt_remove + "</a></td>\n";
			output += "<td><input type='hidden' name='foo[]' value='" + page_filename + "'></td>";
			output += "</tr>\n";
		}
	}
	output +="</table>\n";
	output += "<input name='language' type='hidden' value='" + lang_dir + "' /><input type='submit' value='" + alt_download + "'/>"; 
	output +="</form>\n";
	return output;
}
function removeAll() {
	deleteCookie("Sites");
}
function removeSite(filename) {
	if(confirmAction()){
		var dc = getCookieValue("Sites");
		if (dc) {
			var sites = dc.split("|");
			var newcookie = "";
			for (var i = 0; i < sites.length; ++i) {
				var page = sites[i].split("$");
				var page_number = page[0];
				var page_filename = page[1];
				if (page_filename != filename) {
					if (page_filename) {
						newcookie = newcookie + "|" + page_number + "$" + page_filename;
					}
				}
			}
			writeSessionCookie("Sites", newcookie);
		}
		/*if (navigator.userAgent.toLowerCase().indexOf("msie") != -1 || navigator.userAgent.toLowerCase().indexOf("opera") != -1) {
			getSites();
		} else {
			window.close();
			getSites();
		}*/
	}
}
	
function isNew(filename){	
	var dc = getCookieValue("Sites");
	var isNew = true;
	if (!dc) {
		dc = "";
	}
	
	var sites = dc.split("|");
	sites.sort();
	for (var i = 0; i < sites.length; ++i) {
		if (sites[i] != "") {
			var page = sites[i].split("$");
			var page_title = page[0];
			var page_filename = page[1];
			if(page_filename == filename){
				isNew = false;
			}
		}
	}
	return isNew;
}

function confirmAction() {
       return confirm(confirm_action)
}
