

/**
 * Chiamata ajax alla funzione php che inserisce un prodotto nel carrello B2B (e aggiorna di conseguenza gli importi).
 * Di fatto la chiamata viene messa in coda ad eventuali operazioni in corso sul carrello
 * @param urlWebsite la stringa restituita dalla funzione php base_url()
 * @param cartQueue la coda di chiamate ajax a cui aggiungere questa
 * @param idArticle l'id dell'articolo da aggiungere al carrello
 */
function add_item(urlWebsite, cartQueue, idArticle) {
	quantity = $('q_'+idArticle).value;
	var req = new Request({
					url: urlWebsite+'b2b_cart/cart_add/id/'+idArticle+'/quantity/'+quantity,
					method: 'post',
					onSuccess: function(res) {refresh_view(res);},
				   	onFailure: function(res) {alert("Errore durante l'aggiornamento del carrello");}
			  });
	cartQueue.addRequest("req_"+idArticle, req);
	cartQueue.send("req_"+idArticle);
}
//-----------------------------------------------------------------------------------------------//
/**
 * Aggiorna la vista in seguito all'aggiunta/modifica/eliminazione di un prodotto nel carrello
 * @param res oggetto restituito dalla chiamata ajax
 */
function refresh_view(res) {
	var objRes = JSON.decode(res);
	$("menu_cart_total").set("text", objRes.cart_total);
	$("menu_cart_item_count").set("text", objRes.cart_item_count);
}
//-----------------------------------------------------------------------------------------------//
/**
 * INUTILIZZATA
 * Vecchia funzione utilizzata prima di effettuare la chiamata via Ajax
 * Richiama la funzione php che inserisce un prodotto e aggiorna di conseguenza gli importi del carrello
 */
/*
function add_item(idArticle) {
	var quantity = document.getElementById("q_"+idArticle).value;
	window.location = '<?=base_url()?>b2b_cart/cart_add/id/'+idArticle+'/quantity/'+quantity;
}
*/
//-----------------------------------------------------------------------------------------------//
function doSubmitPersonalData(message)
{
	if(check_cart_personal_data(message) && check_cart_delivery_data(message) && check_privacy(message))
		document.getElementById('user_data_cart').submit();
	return false;
}
//-----------------------------------------------------------------------------------------------//
/*INUTILIZZATA in quanto "inglobata" in doSubmitPersonalData()*/
function doSubmitDeliveryData(message)
{
	if(check_cart_delivery_data(message))
		document.getElementById('delivery_data').submit();
	return false;
}
//-----------------------------------------------------------------------------------------------//
function doSubmitPaymentData(message)
{
	if(check_cart_payment_data(message))
		document.getElementById('payment_data').submit();
	return false;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_delivery_data(paMessage)
{
	result=true;
	if(!check_delivery_name(paMessage))
		result=false;
	if(!check_delivery_surname(paMessage))
		result=false;
	if(!check_delivery_address(paMessage))
		result=false;
	if(!check_delivery_city(paMessage))
		result=false;
	//if(!check_delivery_province(paMessage)) result=false;
	if(!check_delivery_postalcode(paMessage))
		result=false;
	if(!check_delivery_country(paMessage))
		result=false;
	if(!check_delivery_phone(paMessage))
		result=false;
	//if(!check_delivery_email(paMessage)) result=false;
	//if(!check_delivery_method(paMessage)) result=false;
	return result;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_personal_data(paMessage)
{
	result=true;
	if(!check_cart_name(paMessage))
		result=false;
	if(!check_cart_surname(paMessage))
		result=false;
	if(!check_cart_company(message))
		result=false;
	if(!check_cart_tax_vat_code(paMessage))
		result=false;
	if(!check_cart_cf(paMessage))
		result=false;
	if(!check_cart_address(paMessage))
		result=false;
	if(!check_cart_addr_num(paMessage))
		result=false;	
	if(!check_cart_city(paMessage))
		result=false;
	//if(!check_cart_province(paMessage)) result=false;
	if(!check_cart_postalcode(paMessage))
		result=false;
	if(!check_cart_country(paMessage))
		result=false;
	if(!check_cart_phone(paMessage))
		result=false;
	if(!check_cart_email(paMessage))
		result=false;
	//if(!check_cart_company_name(paMessage)) result=false;
	//if(!check_cart_company_address(paMessage)) result=false;
	//if(!check_cart_company_city(paMessage)) result=false;
	//if(!check_cart_company_province(paMessage)) result=false;
	//if(!check_cart_company_postalcode(paMessage)) result=false;
	//if(!check_cart_company_country(paMessage)) result=false;
	return result;
}
//-----------------------------------------------------------------------------------------------//
function check_privacy(paMessage)
{
	if(!document.getElementById('check_privacy').checked)
	{
		document.getElementById('js_privacy_error').innerHTML=paMessage[18];
		document.getElementById('js_privacy_error').bgColor='red';
		return false;
	}
	document.getElementById('js_privacy_error').innerHTML='';
	document.getElementById('js_privacy_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_payment_data(paMessage)
{
	result=true;
	if(!check_payment_method(paMessage))
		result = false;
	return result;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_name(paMessage)
{
	if(document.getElementById('user_data_cart_name').value.length<1)
	{
		document.getElementById('js_name_error').innerHTML=paMessage[0];
		document.getElementById('js_name_error').bgColor='red';
		return false;
	}
	document.getElementById('js_name_error').innerHTML='';
	document.getElementById('js_name_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_surname(paMessage)
{
	if(document.getElementById('user_data_cart_surname').value.length<1)
	{
		document.getElementById('js_surname_error').innerHTML=paMessage[1];
		document.getElementById('js_surname_error').bgColor='red';
		return false;
	}
	document.getElementById('js_surname_error').innerHTML='';
	document.getElementById('js_surname_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_address(paMessage)
{
	if(document.getElementById('user_data_cart_address').value.length<1)
	{
		document.getElementById('js_address_error').innerHTML=paMessage[2];
		document.getElementById('js_address_error').bgColor='red';
		return false;
	}
	document.getElementById('js_address_error').innerHTML='';
	document.getElementById('js_address_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_addr_num(paMessage)
{
	if(document.getElementById('user_data_cart_addr_num').value.length<1)
	{
		document.getElementById('js_addr_num_error').innerHTML=paMessage[19];
		document.getElementById('js_addr_num_error').bgColor='red';
		return false;
	}
	document.getElementById('js_addr_num_error').innerHTML='';
	document.getElementById('js_addr_num_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_city(paMessage)
{
	if(document.getElementById('user_data_cart_city').value.length<1)
	{
		document.getElementById('js_city_error').innerHTML=paMessage[3];
		document.getElementById('js_city_error').bgColor='red';
		return false;
	}
	document.getElementById('js_city_error').innerHTML='';
	document.getElementById('js_city_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_province(paMessage)
{
	if(document.getElementById('user_data_cart_province').value.length<1)
	{
		document.getElementById('js_province_error').innerHTML=paMessage[4];
		document.getElementById('js_province_error').bgColor='red';
		return false;
	}
	document.getElementById('js_province_error').innerHTML='';
	document.getElementById('js_province_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_postalcode(paMessage)
{
	if(document.getElementById('user_data_cart_postalcode').value.length<1)
	{
		document.getElementById('js_postalcode_error').innerHTML=paMessage[5];
		document.getElementById('js_postalcode_error').bgColor='red';
		return false;
	}
	document.getElementById('js_postalcode_error').innerHTML='';
	document.getElementById('js_postalcode_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_country(paMessage)
{
	if(document.getElementById('user_data_cart_country').value.length<1)
	{
		document.getElementById('js_country_error').innerHTML=paMessage[6];
		document.getElementById('js_country_error').bgColor='red';
		return false;
	}
	document.getElementById('js_country_error').innerHTML='';
	document.getElementById('js_country_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_phone(paMessage)
{
	if(document.getElementById('user_data_cart_phone').value.length<1)
	{
		document.getElementById('js_phone_error').innerHTML=paMessage[7];
		document.getElementById('js_phone_error').bgColor='red';
		return false;
	}
	document.getElementById('js_phone_error').innerHTML='';
	document.getElementById('js_phone_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_email(paMessage)
{
	if(document.getElementById('user_data_cart_email').value.length<1)
	{
		document.getElementById('js_email_error').innerHTML=paMessage[8];
		document.getElementById('js_email_error').bgColor='red';
		return false;
	}
	document.getElementById('js_email_error').innerHTML='';
	document.getElementById('js_email_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_company_name(paMessage)
{
	if(document.getElementById('user_data_cart_want_invoice').checked)
	{
		if(document.getElementById('user_data_cart_company_name').value.length<1)
		{
			document.getElementById('js_company_name_error').innerHTML=paMessage[9];
			document.getElementById('js_company_name_error').bgColor='red';
			return false;
		}
		document.getElementById('js_company_name_error').innerHTML='';
		document.getElementById('js_company_name_error').bgColor='white';
	}
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_company_address(paMessage)
{
	if(document.getElementById('user_data_cart_want_invoice').checked)
	{
		if(document.getElementById('user_data_cart_company_address').value.length<1)
		{
			document.getElementById('js_company_address_error').innerHTML=paMessage[10];
			document.getElementById('js_company_address_error').bgColor='red';
			return false;
		}
		document.getElementById('js_company_address_error').innerHTML='';
		document.getElementById('js_company_address_error').bgColor='white';
	}
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_company_city(paMessage)
{
	if(document.getElementById('user_data_cart_want_invoice').checked)
	{
		if(document.getElementById('user_data_cart_company_city').value.length<1)
		{
			document.getElementById('js_company_city_error').innerHTML=paMessage[11];
			document.getElementById('js_company_city_error').bgColor='red';
			return false;
		}
		document.getElementById('js_company_city_error').innerHTML='';
		document.getElementById('js_company_city_error').bgColor='white';
	}
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_company_province(paMessage)
{
	if(document.getElementById('user_data_cart_want_invoice').checked)
	{
		if(document.getElementById('user_data_cart_company_province').value.length<1)
		{
			document.getElementById('js_company_province_error').innerHTML=paMessage[12];
			document.getElementById('js_company_province_error').bgColor='red';
			return false;
		}
		document.getElementById('js_company_province_error').innerHTML='';
		document.getElementById('js_company_province_error').bgColor='white';
	}
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_company_postalcode(paMessage)
{
	if(document.getElementById('user_data_cart_want_invoice').checked)
	{
		if(document.getElementById('user_data_cart_company_postalcode').value.length<1)
		{
			document.getElementById('js_company_postalcode_error').innerHTML=paMessage[13];
			document.getElementById('js_company_postalcode_error').bgColor='red';
			return false;
		}
		document.getElementById('js_company_postalcode_error').innerHTML='';
		document.getElementById('js_company_postalcode_error').bgColor='white';
	}
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_company_country(paMessage)
{
	if(document.getElementById('user_data_cart_want_invoice').checked)
	{
		if(document.getElementById('user_data_cart_company_country').value.length<1)
		{
			document.getElementById('js_company_country_error').innerHTML=paMessage[14];
			document.getElementById('js_company_country_error').bgColor='red';
			return false;
		}
		document.getElementById('js_company_country_error').innerHTML='';
		document.getElementById('js_company_country_error').bgColor='white';
	}
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_tax_vat_code(paMessage)
{
	//if(document.getElementById('user_data_cart_want_invoice').checked)
	if(document.getElementById('user_data_cart_holder_company').checked && document.getElementById('user_data_cart_tax_vat_code').value.length<1)
	{
		document.getElementById('js_tax_vat_code_error').innerHTML=paMessage[15];
		document.getElementById('js_tax_vat_code_error').bgColor='red';
		return false;
	}
	document.getElementById('js_tax_vat_code_error').innerHTML='';
	document.getElementById('js_tax_vat_code_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_company(paMessage)
{
	if(document.getElementById('user_data_cart_holder_company').checked && document.getElementById('user_data_cart_company').value.length<1)
	{
		document.getElementById('js_company_error').innerHTML=paMessage[16];
		document.getElementById('js_company_error').bgColor='red';
		return false;
	}
	document.getElementById('js_company_error').innerHTML='';
	document.getElementById('js_company_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_cart_cf(paMessage)
{
	if(document.getElementById('user_data_cart_cf').value.length<1)
	{
		document.getElementById('js_cf_error').innerHTML=paMessage[17];
		document.getElementById('js_cf_error').bgColor='red';
		return false;
	}
	document.getElementById('js_cf_error').innerHTML='';
	document.getElementById('js_cf_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_delivery_name(paMessage)
{
	if(document.getElementById('user_data_cart_delivery_custom').checked && document.getElementById('delivery_data_name').value.length<1)
	{
		document.getElementById('js_delivery_name_error').innerHTML=paMessage[0];
		document.getElementById('js_delivery_name_error').bgColor='red';
		return false;
	}
	document.getElementById('js_delivery_name_error').innerHTML='';
	document.getElementById('js_delivery_name_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_delivery_surname(paMessage)
{
	if(document.getElementById('user_data_cart_delivery_custom').checked && document.getElementById('delivery_data_surname').value.length<1)
	{
		document.getElementById('js_delivery_surname_error').innerHTML=paMessage[1];
		document.getElementById('js_delivery_surname_error').bgColor='red';
		return false;
	}
	document.getElementById('js_delivery_surname_error').innerHTML='';
	document.getElementById('js_delivery_surname_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_delivery_address(paMessage)
{
	if(document.getElementById('user_data_cart_delivery_custom').checked && document.getElementById('delivery_data_address').value.length<1)
	{
		document.getElementById('js_delivery_address_error').innerHTML=paMessage[2];
		document.getElementById('js_delivery_address_error').bgColor='red';
		return false;
	}
	document.getElementById('js_delivery_address_error').innerHTML='';
	document.getElementById('js_delivery_address_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_delivery_addr_num(paMessage)
{
	if(document.getElementById('user_data_cart_delivery_custom').checked && document.getElementById('delivery_data_addr_num').value.length<1)
	{
		document.getElementById('js_delivery_addr_num_error').innerHTML=paMessage[19];
		document.getElementById('js_delivery_addr_num_error').bgColor='red';
		return false;
	}
	document.getElementById('js_delivery_addr_num_error').innerHTML='';
	document.getElementById('js_delivery_addr_num_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_delivery_city(paMessage)
{
	if(document.getElementById('user_data_cart_delivery_custom').checked && document.getElementById('delivery_data_city').value.length<1)
	{
		document.getElementById('js_delivery_city_error').innerHTML=paMessage[3];
		document.getElementById('js_delivery_city_error').bgColor='red';
		return false;
	}
	document.getElementById('js_delivery_city_error').innerHTML='';
	document.getElementById('js_delivery_city_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_delivery_province(paMessage)
{
	if(document.getElementById('user_data_cart_delivery_custom').checked && document.getElementById('delivery_data_province').value.length<1)
	{
		document.getElementById('js_delivery_province_error').innerHTML=paMessage[4];
		document.getElementById('js_delivery_province_error').bgColor='red';
		return false;
	}
	document.getElementById('js_delivery_province_error').innerHTML='';
	document.getElementById('js_delivery_province_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_delivery_postalcode(paMessage)
{
	if(document.getElementById('user_data_cart_delivery_custom').checked && document.getElementById('delivery_data_postalcode').value.length<1)
	{
		document.getElementById('js_delivery_postalcode_error').innerHTML=paMessage[5];
		document.getElementById('js_delivery_postalcode_error').bgColor='red';
		return false;
	}
	document.getElementById('js_delivery_postalcode_error').innerHTML='';
	document.getElementById('js_delivery_postalcode_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_delivery_country(paMessage)
{
	if(document.getElementById('user_data_cart_delivery_custom').checked && document.getElementById('delivery_data_country').value.length<1)
	{
		document.getElementById('js_delivery_country_error').innerHTML=paMessage[6];
		document.getElementById('js_delivery_country_error').bgColor='red';
		return false;
	}
	document.getElementById('js_delivery_country_error').innerHTML='';
	document.getElementById('js_delivery_country_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_delivery_phone(paMessage)
{
	if(document.getElementById('user_data_cart_delivery_custom').checked && document.getElementById('delivery_data_phone').value.length<1)
	{
		document.getElementById('js_delivery_phone_error').innerHTML=paMessage[7];
		document.getElementById('js_delivery_phone_error').bgColor='red';
		return false;
	}
	document.getElementById('js_delivery_phone_error').innerHTML='';
	document.getElementById('js_delivery_phone_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_delivery_email(paMessage)
{
	if(document.getElementById('user_data_cart_delivery_custom').checked && document.getElementById('delivery_data_email').value.length<1)
	{
		document.getElementById('js_delivery_email_error').innerHTML=paMessage[8];
		document.getElementById('js_delivery_email_error').bgColor='red';
		return false;
	}
	document.getElementById('js_delivery_email_error').innerHTML='';
	document.getElementById('js_delivery_email_error').bgColor='white';
	return true;
}
//-----------------------------------------------------------------------------------------------//
function check_delivery_method(paMessage)
{
	box=document.getElementsByName('delivery_data:method');
	for(i=0;i<box.length;i++)
	{
		if(box[i].checked)
		{
			document.getElementById('js_method_error').innerHTML='';
			document.getElementById('js_method_error').bgColor='white';
			return true;
		}
	}
	document.getElementById('js_method_error').innerHTML=paMessage[8];
	document.getElementById('js_method_error').bgColor='red';
	return false;
}
//-----------------------------------------------------------------------------------------------//
function check_payment_method(paMessage)
{
	box=document.getElementsByName('payment_data:method');
	for(i=0;i<box.length;i++)
	{
		if(box[i].checked)
		{
			document.getElementById('js_method_error').innerHTML='';
			document.getElementById('js_method_error').bgColor='white';
			return true;
		}
	}
	document.getElementById('js_method_error').innerHTML=paMessage[0];
	document.getElementById('js_method_error').bgColor='red';
	return false;
}

