/* GLOBAL variables */
var popupClosingTime = 1000;

var custom_callback = function(){
	$(".galleryNext a").click( function () {
/*									   
		indexer = $('#questionnaireEncapsulator').css("left");
		indexer = parseInt(indexer.replace("px",""));
		if (indexer!=0)
		indexer = indexer/-885;
		indexer++;
		//alert(indexer);
*/
		$('#galleryItems').animate({'left': '-=285px'}, 'slow');
		var nextImg = parseInt($('[name=hdnCurrentImage]').val()) + 1;
		$('[name=hdnCurrentImage]').val(nextImg);
		if($('[name=hdnCurrentImage]').val() == $('[name=hdnImageNo]').val() )	
			$('.galleryNext').css('display', 'none');	
		$('.galleryPrevious').css('display', 'block');
			
		
/*		
		$('.step_set').removeClass("step_set").addClass("step_unset");
		$(".step_unset:eq("+indexer+")").removeClass("step_unset").addClass("step_set");
*/
	}); 
	$(".galleryPrevious a").click( function () {
/*										   
		indexer = $('#questionnaireEncapsulator').css("left");
		indexer = parseInt(indexer.replace("px",""));
		if (indexer!=0)
		indexer = indexer/-885;
		indexer--;
*/
		$('#galleryItems').animate({'left': '+=285px'}, 'slow');
		var nextImg = parseInt($('[name=hdnCurrentImage]').val()) - 1;
		$('[name=hdnCurrentImage]').val(nextImg);
		if($('[name=hdnCurrentImage]').val() == 1 )	
			$('.galleryPrevious').css('display', 'none');	
		$('.galleryNext').css('display', 'block');
/*
		$('.step_set').removeClass("step_set").addClass("step_unset");
		$(".step_unset:eq("+indexer+")").removeClass("step_unset").addClass("step_set");
*/
	}); 
}

// general scripts
$(document).ready(function() {
	
	$("#topFunctionsContent a.languageButton").toggle(
		function () {
			$("#languageContainer ul").show();
		},
		function () {
			$("#languageContainer ul").hide();
		}
	);
	$(".overBox").hover(
		function () {
			$(this).children(".out").hide();
			},
		function () {
			$(this).children(".out").show();
		}
	);
	
	$(".newsletterSubmitButton").click(function(){
		message="";
		if( $('[name=newsletterJoinInput]').val().search(/^[a-zA-Z0-9._-]+@([a-zA-Z0-9.-]+\.)+[a-zA-Z0-9.-]{2,4}$/)==-1)
		{
			message = 'The email is invalid';
		}
		if(message == '')
		{
			$.get("/newsletterJoin", { email: $('[name=newsletterJoinInput]').val(), submit_type:"subscribe"},
			function(data){
				$('.newsletterSignupForm').html('<center><img src="/style/images/ajax-loader.gif"></center>');
				$('.newsletterSignupForm').html(data);
				//alert("Data Loaded: " + data);
			});
		}
		else 
		{
			alert(message);
		}
	});
	
	
});

// specialised functions
function showProductGallery(){	
	var params = '';
	
	if(params)	
	{
		$('#popupForm').html('<center><img src="/style/images/ajax-loader.gif"></center>');	
		$.post(langRootPath+'/downloadCatalogue', params,  function (data){															
			setTimeout('$("#TB_overlay").remove(); $("#TB_window").remove();', popupClosingTime);
		});
	}
}

function filterproducts()
{	
	var querystring = '';
	var querystringGlue = '';
	
	if($("[name=ddlProductType]").val() != '')
	{
		querystring+= 'type='+$("[name=ddlProductType]").val();
	};
	
	if($("[name=ddlProducers]").size() > 0)
	{
		if($("[name=ddlProducers]").val() != '')
		{
			if (querystring != '')
			{
				querystring+= '&producerID='+$("[name=ddlProducers]").val();
			}
			else
			{
				querystring+= 'producerID='+$("[name=ddlProducers]").val();
			}
		};
	}
	
	if(querystring != '')
		querystringGlue = "?";
	window.location = langRootPath + window.location.pathname + querystringGlue + querystring;
}

function validateContact()
{
	var validateOk = true;
	var message = '';
	if($('[name=txtEmail]').val() != '')
	{		
		if( $('[name=txtEmail]').val().search(/^[a-zA-Z0-9._-]+@([a-zA-Z0-9.-]+\.)+[a-zA-Z0-9.-]{2,4}$/)==-1)
		{
			message+= '\n- Introduceti o adresa de email valida';
			$('[name=txtEmail]').addClass('errorClass');
		}
		else
		{
			$('[name=txtEmail]').removeClass('errorClass');		
		}
	}
	
	
	if($('[name=txtName]').val() == '')
	{
		validateOk = false;
		$('[name=txtName]').addClass('errorClass');		
	}
	else
	{
		$('[name=txtName]').removeClass('errorClass');		
	}
	
	if($('[name=txtPhone]').val() == '')
	{
		
		validateOk = false;
		$('[name=txtPhone]').addClass('errorClass');		
	}
	else
		if(ltrim($('[name=txtPhone]').val()) != parseInt(ltrim($('[name=txtPhone]').val())))
		{
			validateOk = false;
			message+= '\n- Numarul de telefon trebuie sa contina doar cifre';
			$('[name=txtPhone]').addClass('errorClass');		
		}
		else
		{
			$('[name=txtPhone]').removeClass('errorClass');		
		}
	
	if($('[name=txtCity]').val() == '')
	{
		validateOk = false;
		$('[name=txtCity]').addClass('errorClass');		
	}
	else
	{
		$('[name=txtCity]').removeClass('errorClass');		
	}
	
	if($('[name=txtCounty]').val() == '')
	{
		validateOk = false;
		$('[name=txtCounty]').addClass('errorClass');		
	}
	else
	{
		$('[name=txtCounty]').removeClass('errorClass');		
	}
	
	if($('[name=txtAddress]').val() == '')
	{
		validateOk = false;
		$('[name=txtAddress]').addClass('errorClass');		
	}
	else
	{
		$('[name=txtAddress]').removeClass('errorClass');		
	}
	
	if($('[name=txtMessage]').val() == '')
	{
		validateOk = false;
		$('[name=txtMessage]').addClass('errorClass');		
	}
	else
	{
		$('[name=txtMessage]').removeClass('errorClass');		
	}
	
	if(!validateOk)
	{
		message = '\n- Completati toate campurile' + message;
		alert('Va rugam corectati urmatoarele:'+message);	
	}
	else
	{
		document.contactForm.submit();	
	}	
}

function validateAndSendOrder(){
	if(!$('[name=chkAgreeTerms]').attr('checked'))
	{
		alert("Va rugam acceptati termenii si conditiile pentru a putea plasa comanda.");	
	}
	else
	{
		var validateOk = true;
		var message = '';
		if($('[name=txtEmail]').val() != '')
		{
			if( $('[name=txtEmail]').val().search(/^[a-zA-Z0-9._-]+@([a-zA-Z0-9.-]+\.)+[a-zA-Z0-9.-]{2,4}$/)==-1)
			{
				message+= '\n- Introduceti o adresa de email valida';
				$('[name=txtEmail]').addClass('errorClass');
			}
			else
			{
				$('[name=txtEmail]').removeClass('errorClass');		
			}
		}
		
		if($('[name=txtName]').val() == '')
		{
			validateOk = false;
			$('[name=txtName]').addClass('errorClass');		
		}
		else
		{
			$('[name=txtName]').removeClass('errorClass');		
		}
		
		if($('[name=txtPhone]').val() == '')
		{
			validateOk = false;
			$('[name=txtPhone]').addClass('errorClass');		
		}
		else
		{
			if(ltrim($('[name=txtPhone]').val()) != parseInt(ltrim($('[name=txtPhone]').val())))
			{
				validateOk = false;
				message+= '\n- Numarul de telefon trebuie sa contina doar cifre';
				$('[name=txtPhone]').addClass('errorClass');		
			}
			else
			{
				$('[name=txtPhone]').removeClass('errorClass');		
			}
		}
		
		if($('[name=txtCity]').val() == '')
		{
			validateOk = false;
			$('[name=txtCity]').addClass('errorClass');		
		}
		else
		{
			$('[name=txtCity]').removeClass('errorClass');		
		}
		
		if($('[name=txtCounty]').val() == '')
		{
			validateOk = false;
			$('[name=txtCounty]').addClass('errorClass');		
		}
		else
		{
			$('[name=txtCounty]').removeClass('errorClass');		
		}
		
		
		if($('[name=txtAddress]').val() == '')
		{
			validateOk = false;
			$('[name=txtAddress]').addClass('errorClass');		
		}
		else
		{
			$('[name=txtAddress]').removeClass('errorClass');		
		}
		
		if($('[name=txtCompany]').val() != '')
		{
			if($('[name=txtFiscalCode]').val() == '')
			{
				validateOk = false;
				$('[name=txtFiscalCode]').addClass('errorClass');		
			}
			else
			{
				$('[name=txtFiscalCode]').removeClass('errorClass');		
			}
			
			if($('[name=txtBank]').val() == '')
			{
				validateOk = false;
				$('[name=txtBank]').addClass('errorClass');		
			}
			else
			{
				$('[name=txtBank]').removeClass('errorClass');		
			}
			
			if($('[name=txtBankAccount]').val() == '')
			{
				validateOk = false;
				$('[name=txtBankAccount]').addClass('errorClass');		
			}
			else
			{
				$('[name=txtBankAccount]').removeClass('errorClass');		
			}
			
			if($('[name=txtOfficialRegistrationNumber]').val() == '')
			{
				validateOk = false;
				$('[name=txtOfficialRegistrationNumber]').addClass('errorClass');		
			}
			else
			{
				$('[name=txtOfficialRegistrationNumber]').removeClass('errorClass');		
			}	
			
		}
		else
		{
			if($('[name=txtCNP]').val() == '')
			{
				validateOk = false;
				$('[name=txtCNP]').addClass('errorClass');		
			}
			else
				if($('[name=txtCNP]').val().length != 13)
				{
					validateOk = false;
					message+= '\n- CNP-ul trebuie sa contina 13 cifre';
					$('[name=txtCNP]').addClass('errorClass');		
				}
				else if($('[name=txtCNP]').val() != parseInt($('[name=txtCNP]').val()))
				{
					validateOk = false;
					message+= '\n- CNP-ul trebuie sa contina 13 cifre';
					$('[name=txtCNP]').addClass('errorClass');		
				}
				else
				{
					$('[name=txtCNP]').removeClass('errorClass');		
				}
		}
		
		if(!validateOk)
		{
			if(message != '')
				message = '\n- Corectati campurile obligatorii' + message;
			else
				message = '\n- Completati campurile obligatorii' + message;
			alert('Va rugam corectati urmatoarele:'+message);	
		}
		else
		{
			$('[name=currentOpperation]').val('order');
			document.sendOrder.submit();	
		}		
	}
}

function validateProductComand(productId, quantityField){
	if($('[name=txtQuantity'+quantityField+'_' + productId + "]").val() != '' && $('[name=txtQuantity'+quantityField+'_' + productId + "]").val() > 0 && isalphanumeric($('[name=txtQuantity'+quantityField+'_' + productId + "]").val()))
	{
	//	alert($('[name=txtQuantity_' + productId + "]").val());
		var params = 'productId=' + productId + "&productQuantity=" + $('[name=txtQuantity'+quantityField+'_' + productId + "]").val() + "&quantityVersion=" + quantityField;
		$('[name=txtQuantity'+quantityField+'_' + productId + "]").val('');
		$.post(langRootPath+'/addToSoppingCart', params,  function (data){															
			$('#cartMessages').html(data);
			$('#boughtStatus' + quantityField + '_' + productId).html('<img src="/style/images/tick.gif" alt="" title="Adaugat" />');
			$('#boughtStatus' + quantityField + '_' + productId + ' [title!=""]').hover(function() {
				var htmltext=$(this).attr("title");
				$('div#tooltipDiv').html(htmltext); 
				$(this).attr("title","");
				$(this).attr("alt","");
				$(this).children().attr("alt","");
				$(this).css("cursor","pointer");		
				$('div#tooltipDiv').css("display","block");
				$().mousemove(function(e){
					$('div#tooltipDiv').css("left" , e.pageX+15 );
					$('div#tooltipDiv').css("top" , e.pageY+10 );
				}); 
			}
			, function() {	
				$(this).attr("title",$('div#tooltipDiv').html());
				$('div#tooltipDiv').css("display","none");
				//$('div#tooltipDiv').hide("fast");
			});	  
		});
	}
	else
	{
		alert("Cantitatea nu este valida. Va rugam introduceti un numar intreg pozitiv.");	
		$('[name=txtQuantity'+quantityField+'_' + productId + "]").val('');
	}
}

function refreshCart(productId, quantityVersion, sessionItemPlace){
	if($('[name=txtQuantity' + quantityVersion + '_' + productId + ']').val() != $('[name=hdnQuantity' + quantityVersion + '_' + productId + ']').val() )
	{
		if($('[name=txtQuantity' + quantityVersion + '_' + productId + ']').val() != '' && $('[name=txtQuantity' + quantityVersion + '_' + productId + ']').val() > 0 && isalphanumeric($('[name=txtQuantity' + quantityVersion + '_' + productId + ']').val()))
		{
			$('[name=currentOpperation]').val('edit');
			$('[name=currentQuantityChangeId]').val(productId);
			$('[name=currentQuantityVersion]').val(quantityVersion);
			$('[name=currentSessionItemPlace]').val(sessionItemPlace);
			$('[name=sendOrder]').submit();
		}
		else
		{
			alert("Cantitatea nu este valida. Va rugam introduceti un numar intreg pozitiv.");	
			$('[name=txtQuantity' + quantityVersion + '_' + productId + ']').val( $('[name=hdnQuantity' + quantityVersion + '_' + productId + ']').val() );
			return;
		}
	}
}

function deleteCartItem(sessionItemPlace){
	if(confirm('Sunteti sigur ca doriti sa stergeti produsul din lista de cumparaturi?'))
	{
		$('[name=currentOpperation]').val('delete');
		$('[name=currentSessionItemPlace]').val(sessionItemPlace);
		$('[name=sendOrder]').submit();	
	}
}

function isalphanumeric(alphane)
{
	var numaric = alphane;
	for(var j=0; j<numaric.length; j++)
		{
		  var alphaa = numaric.charAt(j);
		  var hh = alphaa.charCodeAt(0);
		  if((hh > 47 && hh<58) || (hh > 64 && hh<91) || (hh > 96 && hh<123))
		  {
		  }
		else	
		{
			 return false;
		  }
 		}
 return true;
}
function ltrim(stringToTrim) {
	return stringToTrim.replace(/^0+/,"");
}

