function switchOfferLayer(myDiv) {
	var divDisplay = document.getElementById(myDiv).style.display;
	if (divDisplay == "none"){
		document.getElementById(myDiv).style.display = "block";
	} else {
		document.getElementById(myDiv).style.display = "none";
	}
}

function checkAllTypeMapping( n, fldName) {
	if (!fldName) {
		fldName = 'typemap';
	}
	
	var f = document.adminForm;
	var c = f.typetoggle.checked;
	var n2 = 0;
	for (i=0; i < n; i++) {
		cb = eval( 'f.' + fldName + '' + i );
		if (cb) {
			cb.checked = c;
			n2++;
		}
	}
}

//used for "Item Added" message
function showObject(div_elements) {
	document.getElementById(div_elements).style.visibility = "visible";
}

//used for "Item Added" message
function hideObject(div_elements) {
	document.getElementById(div_elements).style.visibility = "hidden";
	clearTimeout(t);
}

function addToBasket(id, quantity, package, lang, div_popup, basket_div, addAction){

	var request = false;
	try {
		request = new XMLHttpRequest();
	} catch (e) {
		try{
			request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try{
				request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {
				alert("Unable to complete your request.");
				return false;
			}
		}
	}
	if (addAction == "addToBasket"){
		url = "/blocks/InEshop/addToBasket.php";
	} else if (addAction == "addToWishList"){
		url = "/blocks/InEshop/blocks/InEshopWishList/addToWishList.php";
	}
	quantity=document.getElementById('plquan').value;
	request.open("GET", url+"?id="+ id + "&quantity=" + quantity + "&lang=" + lang + "&package=" + package, true);

	request.onreadystatechange = function() {
		if (request.readyState == 1){
		} else if(request.readyState == 4 && request.status == 200){
				if (request.responseText!= ""){
					//normal response
					document.getElementById(basket_div).innerHTML=request.responseText;
				} else if ((request.responseText== "") && (addAction == "addToWishList")){
					//not logged in and trying to add to wishlist
					div_popup="WishListLogInMsg";
				}
				showObject(div_popup);
				//t = setTimeout('hideObject(\''+div_popup+'\')',2000);
		}
	}
	request.send(null);
}

//used in InEshopPackages only
//div_pop_up is popup which indicates "Item Added"
//contact_form_div is where contact form appears if we want to email about package
function readValues(id,lang,div_popup,contact_form_div, basket_div, addAction){
	
	extras = new Array();
	package = new Array();
	for(i=0; i<document.packageProducts.elements.length; i++)
	{
		var isExtra = String(document.packageProducts.elements[i].name).search(/extras/);
		var isPackage = String(document.packageProducts.elements[i].name).search(/package/);
		if (isExtra != -1){ //if extra element in form get its value
			val = document.packageProducts.elements[i].value;
			if (val != 0){
				key = document.packageProducts.elements[i].name;
				k= document.getElementById(key).value;
	
				extras[k] = document.packageProducts.elements[i].value;
			}
		} else if (isPackage != -1){ //if package then if checked add to array
			if(document.packageProducts.elements[i].checked){
				key = document.packageProducts.elements[i].name;
				k= document.getElementById(key).value;
				val = document.packageProducts.elements[i].value;
				package[k] = document.packageProducts.elements[i].value;
			}
		}
	}
	package_php=js_array_to_php_array(package);

	if (extras.length == 0){ //if we do not have extras then add product to basket
		addToBasket(id,'1',package_php,lang, div_popup, basket_div, addAction)
	} else { //if we had extras then output contact form
		extras_php=js_array_to_php_array(extras);
		var request = false;
		try {
			request = new XMLHttpRequest();
		} catch (e) {
			try{
				request = new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) {
				try{
					request = new ActiveXObject("Microsoft.XMLHTTP");
				} catch (e) {
					alert("Unable to complete your request.");
					return false;
				}
			}
		}
		request.open("GET", "/blocks/InEshop/blocks/InEshopPackages/send_email.php?action=send_email&id="+ id + "&lang=" + lang + "&package=" + package_php + "&extras=" + extras_php, true);

		request.onreadystatechange = function() {
			if (request.readyState == 1){
			} else if(request.readyState == 4 && request.status == 200){

				document.getElementById(contact_form_div).innerHTML=request.responseText;
			}
		}	
		request.send(null);
	}
}

function js_array_to_php_array (a)
{
    var a_php = "";
    var total = 0;
    for (var key in a)
    {
        ++ total;
        a_php = a_php + "s:" +
                String(key).length + ":\"" + String(key) + "\";s:" +
                String(a[key]).length + ":\"" + String(a[key]) + "\";";
    }
    a_php = "a:" + total + ":{" + a_php + "}";
    return a_php;
}

//used in InEshopPackages only
function validateFormAndSendEmail(theForm, lang, contact_form_div) {
	f=document.theForm;
	var flag = false;
	field = f.elements['msg[name][text]'];
	if (lang=='gr') txt=" Ονομα";
	else txt="Name";
	if (!validRequired(field, txt, lang)) flag = true;
	
	field = f.elements['msg[surname][text]'];
	if (lang=='gr') txt=" Επώνυμο";
	else txt="Surname";
	if (!validRequired(field, txt, lang)) flag = true;
	
	field = f.elements['msg[from][text]'];
	if (lang=='gr') txt=" your E-mail Address";
	else txt="your E-mail Address";
	if (!validEmail(field, txt, true, lang)) flag = true;

	if (f.elements['msg[tel][text]']) {
		vfield = f.elements['msg[tel][text]'].value;
		if (!isTelephone(vfield, txt, lang)) {
			if (lang=='gr') alert("Ο αριθμός τηλεφώνου δεν ειναι σωστός");
			else alert("Please enter a proper phone number");
			flag = true;
		}
	}

	if (!flag){
		thenamehead = f.elements['msg[name][head]'].value;
		thesurnamehead = f.elements['msg[surname][head]'].value;
		thefromhead = f.elements['msg[from][head]'].value;
		thetelhead = f.elements['msg[tel][head]'].value;
		thebodyhead = f.elements['msg[body][head]'].value;
		thename = f.elements['msg[name][text]'].value;
		thesurname = f.elements['msg[surname][text]'].value;
		thefrom = f.elements['msg[from][text]'].value;
		thetel = f.elements['msg[tel][text]'].value;
		thebody = f.elements['msg[body][text]'].value;
		
		var request = false;
		try {
			request = new XMLHttpRequest();
		} catch (e) {
			try{
				request = new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) {
				try{
					request = new ActiveXObject("Microsoft.XMLHTTP");
				} catch (e) {
					alert("Unable to complete your request.");
					return false;
				}
			}
		}
		
		request.open("GET", "/blocks/InEshop/blocks/InEshopPackages/send_email.php?action=sent_email&lang=" + lang +"&msg[name][head]="+ thenamehead + "&msg[surname][head]="+ thesurnamehead + "&msg[from][head]="+ thefromhead + "&msg[tel][head]="+ thetelhead + "&msg[body][head]="+ thebodyhead + "&msg[name][text]="+ thename+ "&msg[surname][text]="+ thesurname+ "&msg[from][text]="+ thefrom+ "&msg[tel][text]="+ thetel+ "&msg[body][text]="+ thebody, true);
		
		request.onreadystatechange = function() {
			if (request.readyState == 1){
			} else if(request.readyState == 4 && request.status == 200){
					document.getElementById(contact_form_div).innerHTML=request.responseText;
			}
		}
		request.send(null);
	}
}
