function validateUser() {
	// email validation
	error = false;
	var email = $F('email');
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!filter.test(email)) {
		$('invalidEmailError').style.display = 'block';
		error = true;
	} else {
		$('invalidEmailError').style.display = 'none';
		var url = "/lib/checkEmail.php"
		params = "email="+email;
		new Ajax.Request(
			url,
			{
				method: 'post',
				parameters: params,
				onComplete: function (response) {
					if (response.responseText == 'false') {
						$('duplicateEmailError').style.display = 'block';
						error = true;
					} else {
						$('duplicateEmailError').style.display = 'none';
					}
				}
			}
		);
	}
	
	// password validation
	if ($F('password1').length < 6) {
		$('tooShort').style.display = 'block';
		error = true;
	} else {
		$('tooShort').style.display = 'none';
		if ($F('password1') != $F('password2')) {
			$('noMatch').style.display = 'block';
			error = true;
		} else {
			$('noMatch').style.display = 'none';
		}
	}

	// phone
	numcheck = /\d{10}/;
	if (!numcheck.test($F('phone'))) {
		$('phoneError').style.display = 'block';
		error = true;
	} else {
		$('phoneError').style.display = 'none';
	}
	
	// others..
	if ($F('firstName').length == 0) {
		$('firstNameError').style.display = 'block';
		error = true;
	} else {
		$('firstNameError').style.display = 'none';
	}
	if ($F('lastName').length == 0) {
		$('lastNameError').style.display = 'block';
		error = true;
	} else {
		$('lastNameError').style.display = 'none';
	}
	if ($F('cnp').length == 0) {
		$('cnpError').style.display = 'block';
		error = true;
	} else {
		$('cnpError').style.display = 'none';
	}
	if ($F('district').length == 0) {
		$('districtError').style.display = 'block';
		error = true;
	} else {
		$('districtError').style.display = 'none';
	}
	if ($F('city').length == 0) {
		$('cityError').style.display = 'block';
		error = true;
	} else {
		$('cityError').style.display = 'none';
	}
	if ($F('address').length == 0) {
		$('addressError').style.display = 'block';
		error = true;
	} else {
		$('addressError').style.display = 'none';
	}
	if (!error) {
		$('userForm').submit();
	}
}

function validateUserData() {
	error = false;
	// phone
	numcheck = /\d{10}/;
	if (!numcheck.test($F('phone'))) {
		$('phoneError').style.display = 'block';
		error = true;
	} else {
		$('phoneError').style.display = 'none';
	}
	
	// others..
	if ($F('firstName').length == 0) {
		$('firstNameError').style.display = 'block';
		error = true;
	} else {
		$('firstNameError').style.display = 'none';
	}
	if ($F('lastName').length == 0) {
		$('lastNameError').style.display = 'block';
		error = true;
	} else {
		$('lastNameError').style.display = 'none';
	}
	if ($F('district').length == 0) {
		$('districtError').style.display = 'block';
		error = true;
	} else {
		$('districtError').style.display = 'none';
	}
	if ($F('city').length == 0) {
		$('cityError').style.display = 'block';
		error = true;
	} else {
		$('cityError').style.display = 'none';
	}
	if (!error) {
		$('userForm').submit();
	}
}

function validateUserPass() {
	error = false;
	var url = "/lib/checkPass.php";
	userId = $F('userId');
	pass = $F('oldPassword');
	params = "userId="+userId+"&pass="+pass;
	new Ajax.Request (
		url,
		{
			method: 'post', 
			parameters: params,
			onComplete: function (response) {
				if (response.responseText == 'false') {
					$('badPass').style.display = 'block';
					error = true;
				} else {
					$('badPass').style.display = 'none';
				}
			}
		}
	)
	// password validation
	if ($F('password1').length < 6) {
		$('tooShort').style.display = 'block';
		error = true;
	} else {
		$('tooShort').style.display = 'none';
		if ($F('password1') != $F('password2')) {
			$('noMatch').style.display = 'block';
			error = true;
		} else {
			$('noMatch').style.display = 'none';
		}
	}
	if (!error) {
		$('passForm').submit();
	}
}

function displayInfo() {
	elem = "infoSection";
	url = "/includes/display_info.php";
	new Ajax.Updater(
		elem, 
		url
	);
}
function displayStatus(stat) {
	elem = "status";
	url = "/includes/status.php";
	params = "status="+stat;
	new Ajax.Updater(
		elem, 
		url,
		{
			parameters: params
		}
	);
}
function displaySearch() {
	url = "/includes/search.php";
	params = "action=displaySearch";
	new Ajax.Updater(
		"displaySearch", 
		url,
		{
			parameters: params
		}
	);
}
function searchNow(){
	getedColor = $F('color');
	getedName = $F('name');
	displaySearchResults('searchResult', 1,'name', 'ASC', getedName, getedColor);
}
function toggleSelectOption() {
	if ($F('parent') == 0) {
		$('cat').disabled=false;
		$('qty').disabled=true;
		$('price').disabled=true;
		$('color').disabled=true;
		$('image').disabled=true;
	} else {
		$('cat').disabled=true;
		$('qty').disabled=false;
		$('price').disabled=false;
		$('color').disabled=false;
		$('image').disabled=false;
	}
}

function updateContent(catId, page, orderBy, order){
	url = "/includes/get_category_page.php";
	params = "catId="+catId+"&page="+page+"&orderBy="+orderBy+"&order="+order;
	new Ajax.Updater(
		'container',
		url, 
		{
			parameters: params
		}
	);
}
function displaySearchResults(catId, page, orderBy, order, getedName, getedColor){
	url = "/includes/get_category_page.php";
	params = "catId="+catId+"&page="+page+"&orderBy="+orderBy+"&order="+order+"&name="+getedName+"&color="+getedColor;
	new Ajax.Updater(
		'container',
		url, 
		{
			parameters: params
		}
	);
}
function updatePromotionContent(catId, page, orderBy, order){
	url = "/includes/get_discounts_page.php";
	params = "catId="+catId+"&page="+page+"&orderBy="+orderBy+"&order="+order;
	new Ajax.Updater(
		'container',
		url, 
		{
			parameters: params
		}
	);
}

function updateProductContent(prodId){
	url = "/includes/get_product_page.php";
	params = "prodId="+prodId;
	new Ajax.Updater(
		'container',
		url, 
		{
			parameters: params
		}
	);
}
function displayCartInfo(){
	url = "/cart-login.php";
	params = "action=displayCart";
	new Ajax.Updater(
		'cartInfo',
		url, 
		{
			parameters: params
		}
	);
}
function addToCart(prodAction, prodId, qty, prodPrice) {
	url = "/includes/cart_actions.php";
	params = "action="+prodAction+"&prodId="+prodId+"&qty="+qty+"&prodPrice="+prodPrice;
	new Ajax.Request(
		url,
		{
			method: 'get',
			parameters: params,
			onSuccess: function(response) {
				switch (response.responseText) {
					case 'true':
						displayStatus('Produsul a fost adaugat in cos cu succes. Click pe Cosul meu pentru al viziona.');
						displayInfo();
						displayCartInfo();
						break;
					case 'duplicate':
						alert('Produsul este deja in cos!');
						break;
					case 'tooMany':
						alert('Cantitatea solicitata nu este disponibila!');
						break;
					default:
						alert('Eroare la adaugarea in cos. \n Trebuie sa fiti logat pentru a putea adauga produse in cos.');
						break;
				}
			}
		}
	);
}
function updateCartContainer() {
	url = "/includes/cart_actions.php";
	params = "action=displayCart";
	new Ajax.Updater(
		'container', 
		url,
		{
			parameters: params
		}
	);
}

function changeCartButtonValue(prodId, price) {
	if ($F("submit_"+prodId) == "Modifica") {
		$("submit_"+prodId).value = "Salveaza";
	} else {
		$("submit_"+prodId).value = "Modifica";
		if ($F("input_qty_"+prodId) == 0) {
			deleteItemFromCart(prodId);
			return;
		}
		url = "/includes/cart_actions.php";
		qty = $F("input_qty_"+prodId);
		finalPrice = qty*price;
		finalPrice = Math.round (finalPrice * 100)/100;
		$("total_price_"+prodId).innerHTML = finalPrice;
		params = "action=updateItem&prodId="+prodId+"&qty="+qty;
		new Ajax.Request(
			url,
			{
				method: 'get',
				parameters: params,
				onSuccess: function(response){
				switch (response.responseText) {
					case 'true':
						displayCartInfo();
						$("disabled_input_qty_"+prodId).value = $F("input_qty_"+prodId);
						break;
					case 'tooMany':
						$("input_qty_"+prodId).value = $F("disabled_input_qty_"+prodId);
						alert('Cantitatea solicitata nu este disponibila');
						break;
					default:
						return;
						$("input_qty_"+prodId).value = $F("disabled_input_qty_"+prodId);
						alert('Eroare la modificare cos.');
						break;
				}
				}
			}
		);
		params = 'action=totalPrice';
		new Ajax.Updater (
			'totalOrderPrice',
			url,
			{
				parameters: params,
				onSuccess: function(response){
						document.getElementById("shippingTr").style.display = "";
				}
			}
		);
		
	}
}

function deleteItemFromCart(prodId) {
	url = 'includes/cart_actions.php';
	params = 'action=deleteItem&prodId='+prodId;
	new Ajax.Updater(
		'container',
		url,
		{
			method: 'get',
			parameters: params
		}
	);
		displayInfo();
		displayCartInfo();
}

function updateOrderDetails() {
	url = 'includes/order_actions.php';
	params = 'action=displayOrderDetails';
	new Ajax.Updater(
		'container',
		url,
		{
			parameters: params
		}
	);
}
function redirectToNewUser() {
	window.location = "index.php?Page=1";
}
function redirectToLogin() {
	//alert("Va rugam sa va logati folosing formularul din partea dreapta !");
	window.location = "index.php?Page=14";
}
function redirectToValidation() {
	alert("Pentru a continua comanda trebuie sa va activati contul.");
}

function displayOrders() {
	url = '../includes/order_actions.php';
	params = 'action=displayOrders';
	new Ajax.Updater(
		'container',
		url,
		{
			parameters: params
		}
	);
}

function viewOrder(orderId) {
	url = '../includes/order_actions.php';
	params = 'action=displayOrder&orderId='+orderId;
	new Ajax.Updater(
		'container',
		url,
		{
			parameters: params
		}
	);
}

function viewUserOrder(orderId) {
	url = '../includes/order_actions.php';
	params = 'action=displayUserOrder&orderId='+orderId;
	new Ajax.Updater(
		'container',
		url,
		{
			parameters: params
		}
	);
}
function viewUserOrder2(orderId) {
	url = 'includes/order_actions.php';
	params = 'action=displayUserOrder&orderId='+orderId;
	new Ajax.Updater(
		'container',
		url,
		{
			parameters: params
		}
	);
}
function changeOrderStatus(orderId) {
	if ($F('status') != 'u') {
		url = '../includes/order_actions.php';
		params = 'action=chanceOrderStatus&orderId='+orderId+'&status='+$F('status');
		new Ajax.Updater(
			'container',
			url,
			{
				parameters: params
			}
		);
	}
}
function displayDiscounts() {
	url = 'includes/discount_actions.php';
	params = 'action=display';
	new Ajax.Updater(
		'container',
		url,
		{
			parameters: params
		}
	);
}

function displayUserOrders() {
	url = 'includes/order_actions.php';
	params = 'action=displayUserOrders';
	new Ajax.Updater(
		'container',
		url,
		{
			parameters: params
		}
	);
}

function updateContentDiscounts(page, orderBy, order){
	url = "/includes/get_category_page.php";
	params = "catId="+catId+"&page="+page+"&orderBy="+orderBy+"&order="+order;
	new Ajax.Updater(
		'container',
		url, 
		{
			parameters: params
		}
	);
}

function displayEditDiscount(prodId) {
	url = 'includes/discount_actions.php';
	params = 'action=displayDiscount&prodId='+prodId;
	new Ajax.Updater(
		'container',
		url,
		{
			parameters: params
		}
	);
}

function switchView(objectId) {
	if ($(objectId).disabled) {
		$(objectId).enable();
	} else {
		$(objectId).disable();
	}
}

function updateDiscountItem(prodId, prodPrice) {
	if ($F('submit_'+prodId) == 'Modifica') {
		$('submit_'+prodId).value = 'Salveaza';
	} else {
		$('submit_'+prodId).value = 'Modifica';
		url = url = 'includes/discount_actions.php';
		discount = $F('discount_'+prodId);
		startDate = $F('start_'+prodId);
		endDate = $F('end_'+prodId);
		
		finalPrice = (prodPrice * discount) / 100;
		finalPrice = prodPrice - finalPrice; 
		discountPrice = $('discountPrice_'+prodId);
		discountPrice.value = finalPrice; 

		params = 'action=updateDiscountProduct&prodId='+prodId+'&discount='+discount+'&discountPrice='+finalPrice+'&startDate='+startDate+'&endDate='+endDate;
		new Ajax.Updater(
			'container',
			url,
			{
				parameters: params
			}
		);
	}
}

function sendValidationEmail(userId) {
	url = 'includes/validation_actions.php';
	params = 'action=send&userId='+userId;
	new Ajax.Request(
		url,
		{
			method: 'post',
			parameters: params,
			onComplete: function(response) {
				if (response.responseText == 'true') {
					alert('Emailul de validare a fost trimis!');
				} else {
					alert('Eroare la trimitere email');
				}
			}
		}
	);
}

function changeDiscountForProductId(prodId, currency) {
	url = 'includes/discount_actions.php';
	if ($('check_' + prodId).checked) {
		$('check_' + prodId).disable();
		params = 'action=modifyDiscount&prodId='+prodId+'&currency='+currency+'&isDiscount=true';
		new Ajax.Updater(
			'container',
			url,
			{
				parameters: params
			}
		);
	}
}

function deleteDiscountItem(prodId) {
	url = 'includes/discount_actions.php';
	params = 'action=delete&prodId='+prodId;
	new Ajax.Updater(
		'container',
		url,
		{
			parameters: params
		}
	);
}
function displayAdminProducts (id) {
	if (document.getElementById(id).style.display == ""){
		document.getElementById(id).style.display = "none";
		document.getElementById("imgButton_"+id).src = "images/+.png";
	}
	else {
		document.getElementById(id).style.display = "";
		document.getElementById("imgButton_"+id).src = "images/-.png";
	}
}
function displayAdminImageSection (lastProductId) {
	url = 'includes/images_actions.php';
	params = 'action=displayImagesSection&productId='+lastProductId;
	new Ajax.Updater(
		'adminImagesSection',
		url,
		{
			parameters: params
		}
	);
}
function createNewImage (productId){
	url = "includes/images_actions.php";
	params = "action=new&productId="+productId;
	new Ajax.Request(
		url,
		{
			method: 'get',
			parameters: params,
			onSuccess: function(response) {
				switch (response.responseText) {
					case 'done':
						displayAdminImageSection (productId);
						break;
					default:
						alert('Eroare la adaugarea !');
						break;
				}
			}
		}
	);	
}
function deleteImage (imageId, productId){
	url = "includes/images_actions.php";
	params = "action=delete&imageId="+imageId;
	new Ajax.Request(
		url,
		{
			method: 'get',
			parameters: params,
			onSuccess: function(response) {
				switch (response.responseText) {
					case 'done':
						displayAdminImageSection (productId);
						break;
					default:
						alert('Eroare la stergere !');
						break;
				}
			}
		}
	);	
}
function removeImageUrl(imageId ,prodId){
	var question = confirm ("Sunteti sigur ca vreti sa inlocuiti acesta imagine ?");
	if (!question) {
		return false;
	}
	url = "includes/images_actions.php";
	params = "action=removeUrl&imageId="+imageId;
	new Ajax.Request(
		url,
		{
			method: 'get',
			parameters: params,
			onSuccess: function(response) {
				switch (response.responseText) {
					case 'done':
						displayAdminImageSection (prodId);
						break;
					default:
						alert('Eroare la stergere !');
						break;
				}
			}
		}
	);	
}
function displayAdminProdDetails (prodId) {
	url = 'includes/admin_productsDetails.php';
	params = 'action=renderDetails&prodId='+prodId;
	new Ajax.Updater(
		'adminProdDetails',
		url,
		{
			parameters: params
		}
	);	
}
function newDetail (prodId){
	url = "includes/admin_productsDetails.php";
	params = "action=newDetail&prodId="+prodId;
	new Ajax.Request(
		url,
		{
			method: 'get',
			parameters: params,
			onSuccess: function(response) {
				switch (response.responseText) {
					case 'done':
						displayAdminProdDetails (prodId);
						break;
					default:
						alert('Eroare la adaugare !');
						break;
				}
			}
		}
	);	
}
function updateDetail (detailId , prodId){
	detail1 = $F("detail_1_"+detailId);
	detail2 = $F("detail_2_"+detailId);
	url = "includes/admin_productsDetails.php";
	params = "action=updateDetail&detailId="+detailId+"&detail_1="+detail1+"&detail_2="+detail2;
	new Ajax.Request(
		url,
		{
			method: 'get',
			parameters: params,
			onSuccess: function(response) {
				switch (response.responseText) {
					case 'done':
						displayAdminProdDetails (prodId);
						break;
					default:
						alert('Eroare la update !');
						break;
				}
			}
		}
	);	
}
function deleteDetail (detailId, prodId){
	var question = confirm ("Sunteti sigur ca vreti sa stergeti acest detaliu ?");
	if (!question) {
		return false;
	}
	url = "includes/admin_productsDetails.php";
	params = "action=deleteDetail&detailId="+detailId;
	new Ajax.Request(
		url,
		{
			method: 'get',
			parameters: params,
			onSuccess: function(response) {
				switch (response.responseText) {
					case 'done':
						displayAdminProdDetails (prodId);
						break;
					default:
						alert('Eroare la stergere !');
						break;
				}
			}
		}
	);	
}
function calc (what) {
	if (what == 'tva'){
		if ($F('e_price') == "" || $F('e_price') == 0){
			$('e_tva_price').value = 0;
			$('f_price').value = 0;
			$('f_tva_price').value = 0;
			$('addition').value = 0;
			$('addition').disabled = true;
		}
		else {
			tmp = ($F('e_price') * 0);
			$('e_tva_price').value = parseFloat(tmp) + parseFloat($F('e_price'));
			$('addition').disabled = false;
		}
	}
	if (what == 'add'){
		tmp = ($F('e_price') * $F('addition')) / 100;
		$('f_price').value = parseFloat(tmp) + parseFloat($F('e_price'));
		tmp2 = ($F('f_price') * 0);
		$('f_tva_price').value = parseFloat(tmp2) + parseFloat($F('f_price'));
	}
}
function unlockAll (form) {
	$("nameLabel").style.color = "black";
	$("codeLabel").style.color = "black";
	$("stocLabel").style.color = "black";
	$("e_priceLabel").style.color = "black";
	$("additionLabel").style.color = "black";
	error = 0;
		if (!$F("name")){
			$("nameLabel").style.color = "red";
			error = error + 1;
		} 
		if (!$F("code")) {
			$("codeLabel").style.color = "red";
			error = error + 1;
		} 
		if (!$F("stoc")) {
			$("stocLabel").style.color = "red";
			error = error + 1;
		} 
		if (!$F("e_price")) {
			$("e_priceLabel").style.color = "red";
			error = error + 1;
		} 
		if (!$F("addition")) {
			$("additionLabel").style.color = "red";
			error = error + 1;
		} 
	if (error == 0){	
		$("f_price").disabled = false;
		document.getElementById(form).submit();
	}
}
function changeDisplayImage(url, imgHash){
	$('displayProdImage').src = url+"/details/"+imgHash+".jpg";
}
function radioCompanyChange() {
	if ($("company_no").checked == true) {
		document.getElementById("infCompany").style.display = "none";
	}
	else {
		document.getElementById("infCompany").style.display = "";
	}
}
function updateSubject () {
	text = $F("subject");
	url    = "includes/newsLetter_actions.php";
	params = "action=updateSubject&text="+text;
	new Ajax.Request(
		url,
		{
			method: 'post',
			parameters: params,
			onComplete: function (response) {
			}
		}
	);		
}
function changeDisplayCompany (){
	if ($("billOn").checked == true){
		$("displayCompany").style.display = "";
		$("displayCompany2").style.display = "";
		$("img1").src = "images/order/1.jpg";
		$("img2").src = "images/order/2.jpg";
		$("img3").src = "images/order/3.jpg";
		
	}
	else {
		$("displayCompany").style.display = "none";
		$("displayCompany2").style.display = "none";
		$("img1").src = "images/order/1.jpg";
		$("img2").src = "images/order/1.jpg";
		$("img3").src = "images/order/2.jpg";
	}
}
function changeCurrency(page){
	currency = $("currency").value;
	window.location = "?Page="+page+"&currency="+currency;
}
function searchAdminProduct() {
	searchValue = $F("search");
	window.location = "?Page=103&search="+searchValue;
	
}
function saveCurrency(currency) {
	value = $F(currency+"_value");
	url    = "includes/currency_action.php";
	params = "action=saveCurrency&currency="+currency+"&value="+value;
	new Ajax.Request(
		url,
		{
			method: 'post',
			parameters: params,
			onSuccess: function(response) {
				alert ("Cursul a fost salvat !");
			}
		}
	);	
}

function OnChangeSelect(type)
{
	bSomethingSelected=false;
	bSelectAll=true;
	nCount=0;
	for(i=1;;i++)
	{
		selCtrl=document.getElementById('Select'+type+i);
		if(selCtrl!=null)
		{
			if(selCtrl.checked) 
			{
				bSomethingSelected=true;
			}
			else
			{
				bSelectAll=false;
			}
		}
		else 
			break;
		nCount++;
	}
	elDeleteButton=document.getElementById(type+'DeleteButton');
	if(bSomethingSelected)
	{
		if(elDeleteButton!=null) elDeleteButton.disabled = false;
	}
	else 
	{
		if(elDeleteButton!=null) elDeleteButton.disabled = true;
	}
	if(nCount>0)
	{
		elSelectAll=document.getElementById(type+'SelectAll');
		if(bSelectAll)
		{
			if(elSelectAll!=null) elSelectAll.checked = true;
		}
		else
		{
			if(elSelectAll!=null) elSelectAll.checked = false;
		}
	}
}

function OnDelete(type)
{
	countDel=0;
	count=0;
	confirmMsg='Sunteti sigur ca doriti sa stergeti urmatoarele: '+type+'\n';
	for(i=1;;i++)
	{
		selCtrl=document.getElementById('Select'+type+i);
		if(selCtrl!=null)
		{
			if(selCtrl.checked)
			{
				elName=document.getElementById(type+i+'Name');
				Name="";
				if(elName!=null)
					if(elName.innerText!=null) Name=elName.innerHTML;	//IE
					else Name=elName.text;								//Mozila
				confirmMsg+=Name+'\n';
				countDel++;
			}
			count++;
		}
		else 
			break;
	}
	if(countDel<=0) return false;
	if(!confirm(confirmMsg))
		return false;
	elFormAction=document.getElementById(type+'FormAction');
	elFormAction.value='Delete'+type;
	return true;
}


