﻿//var global_path="/regi";
var global_path="";



	
function customRemoteFunction(divId,ajaxurl,asynchronousFlag)
{
	if(asynchronousFlag == null)
	{
		asynchronousFlag=true;
	}
	$.ajax({
   				type: "GET",
   				url: ajaxurl,
				async: asynchronousFlag,
   				success: function(msg){
     				 $("#"+divId).html(msg);
					 }
			});
}

function startAjaxLoader() {
	document.getElementById("ajax_loader").innerHTML="<img src=\'"+global_path+"/img/ajax-loader.gif\'/>";
}

function stopAjaxLoader() {
	document.getElementById("ajax_loader").innerHTML="";
}



	
//update cart quantity and price	
function  updateCartQuantityPrice(productId,previousValue){
		startAjaxLoader();
		var input = document.getElementById("front_order_quantity_value" + productId);
		if (input.value === '')	{ 
			input.value = previousValue;
			stopAjaxLoader();	
			return;
		}
	
	    if(checknumber(input.value))
			customRemoteFunction("cartItems",global_path+'/front/updateQuantityPrice/'+productId+'/'+input.value,false);
		else
			input.value = previousValue;
		
		
		stopAjaxLoader();	
}

//added from sotiris
function  updateCartSize(productId,sequence){
		startAjaxLoader();
		var input = document.getElementById(sequence + "product_size" + productId);
		if (input.value == 0)	{ 
			stopAjaxLoader();
			return;
		}
	//	var input2 = document.getElementById("front_order_quantity_value" + productId);
		customRemoteFunction("cartItems",global_path+'/front/updateCartSize/'+productId+'/'+  input.value,false);
		stopAjaxLoader();	
}

function  updateCartOptions(productId){
	
/* chosen = ""
len = document.f1.r1.length

for (i = 0; i <len; i++) {
if (document.f1.r1[i].checked) {
chosen = document.f1.r1[i].value
}
}

if (chosen == "") {
alert("No Location Chosen")
}
else {
alert(chosen)
}*/
		var chosen = "";
		
		startAjaxLoader();
		var input1 = document.getElementById("CartOptions" + productId + "1");
		var input2 = document.getElementById("CartOptions" + productId + "2");
		
		if (input1.checked) {
			//chosen = "buy";
			chosen=1;
		}
		
		if (input2.checked) {
			//chosen = "interest";
			chosen=2;
		}
		
/*		len = input.length;
		
		for (i = 0; i <len; i++) {
			if (input[i].checked) {
				chosen = input[i].value;
			}
		}*/
	   //if (input.checked) {
			//customRemoteFunction("cartItems",global_path+'/front/updateCartOptions/'+productId,false);
			customRemoteFunction("cartItems",global_path+'/front/updateCartOptions/'+productId+'/'+chosen,false);
		//else
		//	input.value = previousValue;
	   //}
		
		stopAjaxLoader();	
}

//get company name field and afm when invoice is asked
function  getCompanyDetails(companyName,companyAFM,companyDOY,companyActivities){
		var radioObject1 = document.getElementById("Receipt1");
		var radioObject2 = document.getElementById("Receipt2");

		var radioValue = "";
		if(radioObject1.checked)
			radioValue = radioObject1.value;
		else
			radioValue = radioObject2.value;

		if(radioValue==2)
			document.getElementById("company").innerHTML = "<table class='h3'><tr><td>Επωνυμία Επιχείρησης : </td><td><input type='text' name='data[OrderDeliveryInfo][company]' value = '"+companyName+"'/></td><td><span class='star'>*</span></td><td><span class='star' id='errorCompanyName'></span></td></td></tr><tr><td class='h3'>Επάγγελμα : </td><td><input type='text' name='data[OrderDeliveryInfo][company_activities]' id='companyActivities' value = '"+companyActivities+"'/></td><td><span class='star'>*</span></td><td><span class='star' id='errorCompanyActivities'></span></td></tr><tr><td>ΑΦΜ : </td><td><input type='text' name='data[OrderDeliveryInfo][afm]' value = '"+companyAFM+"'/></td><td><span class='star'>*</span></td><td><span class='star' id='errorAfm'></span></td></tr><tr><td>ΔΟΥ : </td><td><input type='text' name='data[OrderDeliveryInfo][doy]' value = '"+companyDOY+"'/></td><td><span class='star'>*</span></td><td><span class='star' id='errorDoy'></span></td></tr> ";
		else
			document.getElementById("company").innerHTML = "";
}


//get shop details when is chosen to purchase order from shop
//and update shipping cost and total cost
function  getShopDetails(previousTotalCost,previousShippingCost){
	
		var radioObject1 = document.getElementById("Shipping1");
		var radioObject2 = document.getElementById("Shipping2");
		document.getElementById("Shipping1").disabled=true;
	  	document.getElementById("Shipping2").disabled=true;
		
	 

		var radioValue = "";
		if(radioObject1.checked)
			radioValue = radioObject1.value;
		else
			radioValue = radioObject2.value;

		var kind = "";
		if(radioValue==2)
		{
			document.getElementById("city").value = "Κατάστημα";
			document.getElementById("city").readOnly = true;
			document.getElementById("shippingCost").innerHTML=0;
			document.getElementById("onDeliveryMessage").innerHTML = "";
			document.getElementById("onDeliveryCost").innerHTML = "";
			
			var totalCost = (previousTotalCost - previousShippingCost);
			
			totalCost = Math.round(totalCost*100)/100;
			
			document.getElementById("totalCost").innerHTML = totalCost;
			document.getElementById("shipping").innerHTML = "<table class='h3'><tr><td> ΠΑΤΡΑ</td></tr> ";
			kind = 1;
			
		}
		else
		{
			document.getElementById('city').value="";
			document.getElementById('city').readOnly=false;
			document.getElementById("shippingCost").innerHTML=previousShippingCost;
			document.getElementById("totalCost").innerHTML = previousTotalCost;
			getZeroTownsShippingCost();
			kind=2;
		}
		getPaymentMethods(kind);
		document.getElementById("Shipping1").disabled=false;
	  	document.getElementById("Shipping2").disabled=false;
		
}

//get payment methods depending on shipping method chosen
function getPaymentMethods(kind)
{
	customRemoteFunction("paymentMethods",global_path+'/front/getPaymentMethods/'+kind,false);
}

//get towns with zero shipping costs
function  getZeroTownsShippingCost()
{
	
		//startAjaxLoader();
		customRemoteFunction("shipping",global_path+'/front/zeroTownsShippingCost',false);
		//stopAjaxLoader();
}

//reset towns with zero shipping costs that are selected
function resetZeroTowns()
{
	var elements = document.getElementsByName('data[Town][zeroShippingCost]');
	var value;
	for(var i=0; i < elements.length; i++)
		value = elements.item(i).checked=false;

	if(document.getElementById("city").disabled)
	{
		document.getElementById("city").value = "";
		document.getElementById("city").disabled = false;
	}
			
	setShipping();
 	
}

//update shipping costs and total costs when zero shipping cost town is chosen
function setZeroShipping(previousTotalCost,previousShippingCost)
{
	var elements = document.getElementsByName('data[Town][zeroShippingCost]');

	var value=0;
	var townName = "";


	for(var i=0; i < elements.length; i++)
	{

		elements.item(i).disabled=true;
		if(elements.item(i).checked)
		{
			document.getElementById("Payment1").disabled=true;
			document.getElementById("Payment2").disabled=true;
	  		document.getElementById("Payment3").disabled=true;
			document.getElementById("shippingCost").innerHTML=0;
			document.getElementById("onDeliveryMessage").innerHTML = "";
			document.getElementById("onDeliveryCost").innerHTML = "";
			var totalCost = previousTotalCost - previousShippingCost;
			//onDeliveryCost =  parseFloat(document.getElementById("onDeliveryCost").innerHTML);
			//if(!isNaN(onDeliveryCost))
			//	totalCost = totalCost +onDeliveryCost;
		
			totalCost = Math.round(totalCost*100)/100;
			document.getElementById("totalCost").innerHTML = totalCost;
			document.getElementById("Payment1").disabled=false;
	  		document.getElementById("Payment2").disabled=false;
	  		document.getElementById("Payment3").disabled=false;

			value = elements.item(i).value;
		
		}
	}

		if(value!=0)
		{
			document.getElementById("city").disabled=true;
			customRemoteFunction("townName",global_path+'/front/getZeroShippingTownName/'+value,false);
		}
		for(var i=0; i < elements.length; i++)
		{
			elements.item(i).disabled=false;
		}
	
	

	  	

} 


//set shipping cost and total cost depending on payment method chosen
function  setShipping(){
	
	var totalCost;

	document.getElementById("Payment1").disabled=true;
	if(document.getElementById("Payment2")!=null)
		document.getElementById("Payment2").disabled=true;
	
	document.getElementById("Payment3").disabled=true;
	
	var isZeroTownChecked = false;
	var elements = document.getElementsByName('data[Town][zeroShippingCost]');
	
	for(var i=0; i < elements.length; i++)
		if(elements.item(i).checked==true)
			isZeroTownChecked = true;
	

		var radioObject1 = document.getElementById("Payment1");
		var radioObject2 = document.getElementById("Payment2");
		var radioObject3 = document.getElementById("Payment3");
	
		if(elements!=null)
		{
		if(!isZeroTownChecked)
		{
			
		  	if(radioObject2!=null&&radioObject2.checked)
			{
				for(var i=0; i < elements.length; i++)
					elements.item(i).disabled=true;
				document.getElementById("onDeliveryMessage").innerHTML = "'Εξοδα Αντικαταβολής";
				customRemoteFunction("onDeliveryCost",global_path+'/front/getOnDeliveryCost',false);
				customRemoteFunction("shippingCost",global_path+'/front/getAjaxShippingCost',false);
				totalCost = (parseFloat(document.getElementById("withTaxesCost").innerHTML)  + parseFloat(document.getElementById("shippingCost").innerHTML)  + parseFloat(document.getElementById("onDeliveryCost").innerHTML));
				totalCost = Math.round(totalCost*100)/100;
				document.getElementById("totalCost").innerHTML = totalCost;
				for(var i=0; i < elements.length; i++)
					elements.item(i).disabled=false;
			}
			else if(radioObject1.checked)
			{
				document.getElementById("onDeliveryMessage").innerHTML = "";
				document.getElementById("onDeliveryCost").innerHTML = "";
				customRemoteFunction("shippingCost",global_path+'/front/getAjaxShippingCost',false);
				totalCost = (parseFloat(document.getElementById("withTaxesCost").innerHTML)  + parseFloat(document.getElementById("shippingCost").innerHTML));
				totalCost = Math.round(totalCost*100)/100;
				document.getElementById("totalCost").innerHTML = totalCost;
			}
			else if(radioObject3.checked)
			{
				document.getElementById("onDeliveryMessage").innerHTML = "";
				document.getElementById("onDeliveryCost").innerHTML = "";
				document.getElementById("shippingCost").innerHTML = 0;
				document.getElementById("totalCost").innerHTML = parseFloat(document.getElementById("withTaxesCost").innerHTML);
			}
		}
		else if(isZeroTownChecked)
		{
			document.getElementById("shippingCost").innerHTML=0;
			document.getElementById("onDeliveryMessage").innerHTML = "";
			document.getElementById("onDeliveryCost").innerHTML = "";
			totalCost = parseFloat(document.getElementById("withTaxesCost").innerHTML);
			totalCost = Math.round(totalCost*100)/100;
			document.getElementById("totalCost").innerHTML = totalCost;
		}
	}
	else
	{
		document.getElementById("shippingCost").innerHTML=0;
		document.getElementById("onDeliveryMessage").innerHTML = "";
		document.getElementById("onDeliveryCost").innerHTML = "";
		totalCost = parseFloat(document.getElementById("withTaxesCost").innerHTML);
		totalCost = Math.round(totalCost*100)/100;
		document.getElementById("totalCost").innerHTML = totalCost;
	}
		
		document.getElementById("Payment1").disabled=false;
		
		if(document.getElementById("Payment2")!=null)
			document.getElementById("Payment2").disabled=false;
		document.getElementById("Payment3").disabled=false;
			
}

function getFriendField(productId,errorMessage,name)
{
	document.getElementById('friendField').innerHTML="<div align='right'><span class='copyright'><a href='javascript:void(0)' onclick='emptyElement(\"friendField\");emptyElement(\"warning\");'><img src='"+global_path+"/img/common/condense.png' border='0'/></a>email : </span><input type='text' size='15' class='text' id='friend'/></div><br/><div align='right'>"+name+" : <input type='text' size='15' class='text' id='fullname'/></div><br/><div align='right'><a href='javascript:void(0)' onclick='sendFriend("+productId+",\""+errorMessage+"\")'><img src='"+global_path+"/app/webroot/img/common/go.png' border=0/></a></div>";	
}

function getNewsletterField(errorMessage)
{
	document.getElementById('newsletterField').innerHTML="<span class='copyright'><a href='javascript:void(0)' onclick='emptyElement(\"newsletterField\");emptyElement(\"warning\");'><img src='"+global_path+"/img/common/condense.png' border='0'/></a>email : </span><input type='text' size='15' class='text' id='newsletter'/>  <a href='javascript:void(0)' onclick='addNewsletter(\""+errorMessage+"\")'><img src='"+global_path+"/app/webroot/img/common/go.png' border=0/></a>";	
}

function checkCompanyActivity(val) {
	//alert("value is:" + val);
	if (document.getElementById('ContactActivity').value==val) {
		document.getElementById('ContactCompany').disabled = true;
		//document.getElementById("Contact.company").disabled=true;
		//document.getElementById(1).value
		
	} else {
		document.getElementById('ContactCompany').disabled = false;
	}
}

function emptyElement(elementId)
{
	document.getElementById(elementId).innerHTML="";
}

function sendFriend(productId,errorMessage)
{
	document.getElementById("warning").innerHTML = "";
	var input = document.getElementById("friend");
	var input2 = document.getElementById("fullname");
	if(emailCheck(input.value)==true)
		customRemoteFunction("friendField", global_path+'/front/sendFriend/'+productId+'/'+input.value+'/'+input2.value,true);
	else
		document.getElementById("warning").innerHTML = "<font size='-2' color='#FF0000'>"+errorMessage+"</font>";	
}

function addNewsletter(errorMessage)
{
	document.getElementById("warning").innerHTML = "";
	var input = document.getElementById("newsletter");
	if(emailCheck(input.value)==true)
		customRemoteFunction("newsletterField", global_path+'/front/insertNewsletter/'+input.value,true);
	else
		document.getElementById("warning").innerHTML = "<font size='-2' color='#FF0000'>"+errorMessage+"</font>";	
}




function getNewsletterField()
{
	document.getElementById('newsletterField').innerHTML="<span class='copyright'><a href='javascript:void(0)' onclick='emptyElement(\"newsletterField\");emptyElement(\"warning\");'><img src='"+global_path+"/img/common/condense.png'/></a>email : </span><input type='text' size='15' class='text' id='newsletter'/>  <span onclick='insertNewsletter()'><img src='"+global_path+"/app/webroot/img/common/go.png' border=0/></span>";
}

function insertNewsletter()
{
	document.getElementById("warning").innerHTML = "";	
	var input = document.getElementById("newsletter");
	if(emailCheck(input.value)==true)
		customRemoteFunction("newsletterField", global_path+'/front/insertNewsletter/'+input.value,true);
	else
		document.getElementById("warning").innerHTML = "<font size='-2' color='#FF0000'>Μη έγκυρη Ηλεκτρ.Διεύθυνση</font>";
	
}

function processAction(submitButtonId){
	document.getElementById(submitButtonId).click();
}

function checkAll() {
	
	$$('input:[type=checkbox]').each(function(e){ e.checked = true; }); 
}

function uncheckAll() {
	
	$$('input:[type=checkbox]').each(function(e){ e.checked = false; }); 
}

function checknumber(value){
	var anum=/(^\d+$)|(^\d+\.,\d+$)/
	if (anum.test(value))
		result=true;
	else
		result=false;

	return result;
}

function toggleEnabledById(id) {
	input = document.getElementById(id);
	if(input !== undefined) {
		if (input.disabled == true) {
			input.disabled = false;
		}
		else {
			input.disabled = true;
		}
	}	
}

function updateSelectSizeOptions(webroot, typeId, index) {
	selectId = 'ProductSearch'+index+'Sizes';
	customRemoteFunction("dummy",webroot+'front/updateSelectSizeOptions/'+typeId+'/'+selectId,false);	
}

function clearSelectOptions(id) {
	sizeSelect = getElementByTagNameAndId("select", id);
	sizeSelect.options.length = 0;
}

function addOption(id, text, value) {
		sizeSelect = getElementByTagNameAndId("select", id);
		newOption = document.createElement('option');
		newOption.text = text;
		newOption.value = value;
		sizeSelect.add(newOption, null);
}

function getElementByTagNameAndId(tagName, id) {
	var resultElement = null;
	var tagElements = document.getElementsByTagName(tagName); 
	for (var i=0; i<tagElements.length; i++) {
		if (tagElements[i].id == id) {
				resultElement = tagElements[i];
		}
	}
	return resultElement;
}



function toPosition(anchorName){
var nPos = document.getElementById(anchorName).offsetTop;
window.scrollTo(0,nPos);
}



