// JavaScript Document

/*function newPopup(url) {
	popupWindow = window.open(
		url,'popUpWindow','height=420,width=720,left=0,top=0,resizable=no,scrollbars=yes,toolbar=no,menubar=no,location=no,directories=no,status=yes')
}*/

function loginValidation(){

var flag = true;
var username = trim(document.getElementById('username').value);
var password = trim(document.getElementById('password').value);

if (username == null){
	document.getElementById('errorUseraname').style.display = 'inline';
	flag = false;
}else
	document.getElementById('errorUseraname').style.display = 'none';

if (password == null){
	document.getElementById('errorPassword').style.display = 'inline';
	flag = false;
}else
	document.getElementById('errorPassword').style.display = 'none';

if(flag){
	document.getElementById('type').value = '1';
	document.getElementById('userlogin').submit();
}else
	return false;
}

function registerValidation(formId, validationType){
	
var flag = true;
var username = trim(document.getElementById('username').value);
var password = trim(document.getElementById('password').value);
var confirmPassword = trim(document.getElementById('confirmPassword').value);
var company = trim(document.getElementById('company').value);
var position = trim(document.getElementById('position').value);
var street = trim(document.getElementById('street').value);
var suburb = trim(document.getElementById('suburb').value);
var phone = trim(document.getElementById('phone').value);
var name = trim(document.getElementById('name').value);
var company = trim(document.getElementById('company').value);
var email = trim(document.getElementById('email').value);
var state = trim(document.getElementById('state').value);
var form = document.getElementById(formId);

if(validationType == 1){
	if(!form.policy.checked){
		document.getElementById('errorPolicy').style.display = 'inline';
		flag = false;
	}else
		document.getElementById('errorPolicy').style.display = 'none';
}

if (username == null){
	document.getElementById('errorUseraname').style.display = 'inline';
	flag = false;
}else
	document.getElementById('errorUseraname').style.display = 'none';

if (password == null){
	document.getElementById('errorPassword').style.display = 'inline';
	flag = false;
}else
	document.getElementById('errorPassword').style.display = 'none';
	
if (confirmPassword == null){
	document.getElementById('errorConfirmPassword').style.display = 'inline';
	flag = false;
}else{
	document.getElementById('errorConfirmPassword').style.display = 'none';
	
	if (strcmp(password, confirmPassword) != 0){
		document.getElementById('errorPasswordDifferent').style.display = 'inline';
		flag = false;
	}else
		document.getElementById('errorPasswordDifferent').style.display = 'none';
}
	
if (name == null){
	document.getElementById('errorName').style.display = 'inline';
	flag = false;
}else
	document.getElementById('errorName').style.display = 'none';
	
if (company == null){
	document.getElementById('errorCompany').style.display = 'inline';
	flag = false;
}else
	document.getElementById('errorCompany').style.display = 'none';
	
if (position == null){
	document.getElementById('errorPosition').style.display = 'inline';
	flag = false;
}else
	document.getElementById('errorPosition').style.display = 'none';
	
if (street == null){
	document.getElementById('errorStreet').style.display = 'inline';
	flag = false;
}else
	document.getElementById('errorStreet').style.display = 'none';
	
if (suburb == null){
	document.getElementById('errorSuburb').style.display = 'inline';
	flag = false;
}else
	document.getElementById('errorSuburb').style.display = 'none';
	
if (phone == null){
	document.getElementById('errorPhone').style.display = 'inline';
	flag = false;
}else{
	
	document.getElementById('errorPhone').style.display = 'none';

	if(isNaN(phone) || phone.length < 8){
		document.getElementById('errorPhoneNumber').style.display = 'inline';
		flag = false;
	}else
		document.getElementById('errorPhoneNumber').style.display = 'none';
}
	
if (email == null){
	document.getElementById('errorEmail').style.display = 'inline';
	flag = false;
}else{
	document.getElementById('errorEmail').style.display = 'none';
	
	if(!ValidateForm('email'))
		flag = false;
}
	
if (state == null){
	document.getElementById('errorState').style.display = 'inline';
	flag = false;
}else
	document.getElementById('errorState').style.display = 'none';

if(flag)
	document.getElementById(formId).submit();
else
	return false;
}

function trim(str){
	
    if(!str || typeof str != 'string')
        return null;

    return str.replace(/^[\s]+/,'').replace(/[\s]+$/,'').replace(/[\s]{2,}/,' ');
}

function strcmp (str1, str2){

    return ((str1 == str2) ? 0 : ((str1 > str2) ? 1 : -1));
}

function cleanfields(){
	
	document.getElementById('username').value = '';
	document.getElementById('password').value = '';
}

function cleanfields2(){
	
	document.getElementById('password').value = '';
}

function echeck(str) {

	var at = "@";
	var dot = ".";
	var lat = str.indexOf(at);
	var lstr = str.length;
	var ldot = str.indexOf(dot);
	if (str.indexOf(at) == -1){
	   document.getElementById('errorEmailValidation').style.display = 'inline';
	   return false;
	}

	if (str.indexOf(at) == -1 || str.indexOf(at) == 0 || str.indexOf(at) == lstr){
	   document.getElementById('errorEmailValidation').style.display = 'inline';
	   return false;
	}

	if (str.indexOf(dot) == -1 || str.indexOf(dot) == 0 || str.indexOf(dot) == lstr){
		document.getElementById('errorEmailValidation').style.display = 'inline';
		return false;
	}

	 if (str.indexOf(at,(lat+1)) != -1){
		document.getElementById('errorEmailValidation').style.display = 'inline';
		return false;
	 }

	 if (str.substring(lat-1,lat) == dot || str.substring(lat+1,lat+2) == dot){
		document.getElementById('errorEmailValidation').style.display = 'inline';
		return false;
	 }

	 if (str.indexOf(dot,(lat+2)) == -1){
		document.getElementById('errorEmailValidation').style.display = 'inline';
		return false;
	 }
	
	 if (str.indexOf(" ") != -1){
		document.getElementById('errorEmailValidation').style.display = 'inline';
		return false;
	 }

	document.getElementById('errorEmailValidation').style.display = 'none';

	return true;				
}

function ValidateForm(fieldId){
	
	var emailID = document.getElementById(fieldId);
	
	if (echeck(emailID.value) == false){
		emailID.value = "";
		emailID.focus();
		
		return false;
		
	}else
		return true;
 }
 
 function passwordRecoveryValidation(){
	 
	var flag = true;
	var username = trim(document.getElementById('usernameRecovery').value);
	 
	if (username == null){
		document.getElementById('errorUsernameRecovery').style.display = 'inline';
		flag = false;
	}else
		document.getElementById('errorUsernameRecovery').style.display = 'none';

	if(flag){
		document.getElementById('type').value = '4';
		document.getElementById('userlogin').submit();
	}else
		return false;
 }

function deleteFavorites(form){
	
	if(confirm("Are you sure you want to remove this product from favorites?")){
		
		var x = document.getElementById(form);
	
		for (var i = 0; i < x.length; i++){
	
			if(x.elements[i].id == 'type'){
				document.getElementById(form).elements[i].value = 'delete';
				break;
			}
		}	
		
		document.getElementById(form).submit();
	}
}

function markAsRead(form, idResponse){
	
	var x = document.getElementById(form);

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

		if(x.elements[i].id == 'type'){
			document.getElementById(form).elements[i].value = 'markAsRead';
			document.getElementById(form).elements[i+1].value = idResponse;
			break;
		}
	}	
	
	document.getElementById(form).submit();
}

function checkRequest(form, field){

	var request = trim(document.getElementById(field).value);
	var x = document.getElementById(form);
	
	for (var i = 0; i < x.length; i++){

	  	if(x.elements[i].id == 'type'){

			if(request == null)
				document.getElementById(form).elements[i].value = 'update';
			else
				document.getElementById(form).elements[i].value = 'insert';
			
			break;
		}
  	}
	
	document.getElementById(form).submit();
}

function removeHistory(form){
	
	if(confirm("Are you sure you want to delete all the history?")){
		
		var x = document.getElementById(form);
	
		for (var i = 0; i < x.length; i++){
	
			if(x.elements[i].id == 'type'){
				document.getElementById(form).elements[i].value = 'removeAll';
				break;
			}
		}
		
		document.getElementById(form).submit();
		
	}else
		return false;
}

function clearRequest(form, field, type){

	document.getElementById(field).value = "";
	
	if (type == 2){
		var x = document.getElementById(form);
		
		for (var i = 0; i < x.length; i++){
	
			if(x.elements[i].id == 'type'){
				document.getElementById(form).elements[i].value = 'update';
				break;
			}
		}
		
		document.getElementById(form).submit();
		
	}else
		return false;
}

function changeContent(type, fieldCounter){

	if(type == 'email'){
		document.getElementById("emailCell" + fieldCounter).style.display = 'block';
		document.getElementById("informationCell" + fieldCounter).style.display = 'none';
	}else{
		document.getElementById("informationCell" + fieldCounter).style.display = 'block';
		document.getElementById("emailCell" + fieldCounter).style.display = 'none';
	}
	
	Spry.Widget.CollapsiblePanel.prototype.onTabClick('',2);
}

function closePanel(panelId){
	
	eval(panelId).close();
}

function validate(form){

	var name = trim(document.getElementById('name').value);
	var email = trim(document.getElementById('email').value);
	flag = true;
	
	if (name == null){
		document.getElementById('errorName').style.display = 'inline';
		flag = false;
	}else
		document.getElementById('errorName').style.display = 'none';
		
	if (email == null){
		document.getElementById('errorEmail').style.display = 'inline';
		flag = false;
	}else{
		document.getElementById('errorEmail').style.display = 'none';
		
		if(!ValidateForm('email'))
			flag = false;
	}
	
	if(flag)
		document.getElementById(form).submit();
	else
		return false;
}

function addToLibrary(){

	document.getElementById('addProduct').submit();
}

function linkTo(linkTo){
	
	window.location = linkTo;
}

function checkEmailBoxes(){

	var size = document.getElementById('counterNumber').value - 1;
	var flag = false;
	var arrayValues = new Array();
	var counter = 0;

	if(size != 0){

		for (var i = 1; i <= size; i++){
	
			var element = document.getElementById('friend_' + i);
			
			if(element.checked){
				flag = true;
				arrayValues[counter] = element.value;
				counter++;
			}
		}
		if(flag){
			
			var url = '';
			counter = counter - 1;
			
			for(var i = 0; i <= counter; i++){
				if(i == counter)
					url += arrayValues[i];
				else
					url += arrayValues[i] + '-';
			}

			window.location = 'sendtofriend.php?url=' + url;
			
		}else
			alert('Please select at least one product to send to a friend.');
	}
	
	return false;
}

var myEuroluce = new Array();
var myProjects = new Array();
var myProducts = new Array();
var myProductsNames = new Array();
var myProductsDesigner = new Array();
var myProductsDimensions = new Array();

function changeBackgroundImages(operation, element, arrayOption){

	if(element != 'box3'){
	
		var imgPath = new String();
		imgPath = document.getElementById(element).style.backgroundImage;
	
		size = window[arrayOption].length;
		
		for(var i = 0; i < size; i++){
			if(window[arrayOption][i] == imgPath)
				break;
		}
		
		if(i == 0){
			next = 1;
			previous = size - 1;
		}else if(i == size - 1){
			next = 0;
			previous = size - 2;
		}else{
			next = i + 1;
			previous = i - 1;	
		}
	
	
		if(operation == 0)
			document.getElementById(element).style.backgroundImage = window[arrayOption][next];
		else
			document.getElementById(element).style.backgroundImage = window[arrayOption][previous];
	}
	
	if(element == 'box3'){
		
		var imgPath = new String();
		imgPath = document.getElementById("productsImage").src;
		imgPath = imgPath.replace("http://www.euroluce.com.au", "");
		size = myProducts.length;

		for(var i = 0; i < size; i++){
			if(myProducts[i] == imgPath)
				break;
		}
		
		if(i == 0){
			next = 1;
			previous = size - 1;
		}else if(i == size - 1){
			next = 0;
			previous = size - 2;
		}else{
			next = i + 1;
			previous = i - 1;	
		}
		
		if(operation == 0){
			document.getElementById('productTitle').innerHTML = myProductsNames[next];
			document.getElementById('productDesigner').innerHTML = myProductsDesigner[next];
			document.getElementById('boxImage').innerHTML = "<img id='productsImage' src='" + myProducts[next] + "' " + myProductsDimensions[next] + " border='0' />";
		}else{
			document.getElementById('productTitle').innerHTML = myProductsNames[previous];
			document.getElementById('productDesigner').innerHTML = myProductsDesigner[previous];
			document.getElementById('boxImage').innerHTML = "<img id='productsImage' src='" + myProducts[previous] + "' " + myProductsDimensions[previous] + " border='0' />";
		}
	}
}