/*****************************************
@ default.js
@ javascript functions
*****************************************/

/** vars */


function loginValidation(frm,user,pass){//This function checks the Validity of user name and password

	if(frm.username.value==false){
	alert ('Please Enter User Name');
	frm.username.focus();
	return false;
	}

	if(frm.username.value != false){
		var email
		email=frm.username.value;
 		while (email.substring(0,1) == ' ')
 		{
  		  email = email.substring(1,email.length);
		}
		while (email.substring(email.length-1,email.length) == ' ')
		{
			email = email.substring(0,email.length-1);
		}

		if(!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email)))
		{
			alert("Please enter a valid email address for user name");
			frm.username.focus();
			return false;
		}
	}
	if(frm.upassword.value==false){
	alert ('Please Enter Password');
	frm.upassword.focus();
	return false;
	}
	frm.submit();
	return true;
}

//function openUrl(url, name='', w=20, h=100, scroll='') {*/
function openUrl(url) {
var w=400;
var h=305;
var scroll='No';

//alert(url);

	//LeftPosition	= (screen.width)?(screen.width-w)/2:100;
	//TopPosition		= (screen.height)?(screen.height-h)/2:100;
		TopPosition =45;
LeftPosition =50;

	settings='width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=yes';
	window.open(url, name, settings);
}

function openUrlWithSize(url,name,w, h)
 {
	var scroll='yes';
	TopPosition =100;
	LeftPosition =100;
	if(name=='')
	 name='new window';
	settings='width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',location=no,directories=no,status=no,menubar=no,toolbar=no';
		window.open(url, name, settings);
}



// to check the email address validity
function emailValidation(frm){

if(frm.user_email.value==false){
		alert("Please enter a email address");
		frm.user_email.focus();
		return false;
	}
	if(frm.user_email.value != false){
		var email
		email=frm.user_email.value;
 		while (email.substring(0,1) == ' ')
 		{
  		  email = email.substring(1,email.length);
		}
		while (email.substring(email.length-1,email.length) == ' ')
		{
			email = email.substring(0,email.length-1);
		}

		if(!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email))){
			alert("Please enter a valid email address");
			frm.user_email.focus();
			return false;
		}
	}
	frm.submit();


}

function func_trim(param_text)
{
	var str_text=new String(param_text);
	var str_return_text;
	str_return_text="";
	b_non_blank_started=false;
	b_non_blank_ended=false;
	str_intermediate_blank_chunk="";
	var i_loop;
	for(i_loop=0;i_loop<str_text.length;i_loop++)
	{
		if(str_text.charCodeAt(i_loop)!=32)
		{
			if(!b_non_blank_started)
			{
				b_non_blank_started=true;
			}
			if(b_non_blank_started && !b_non_blank_ended)
			{
				str_return_text+=str_text.charAt(i_loop);
			}
			if(b_non_blank_ended)
			{
				str_return_text+=(str_intermediate_blank_chunk+str_text.charAt(i_loop));
				b_non_blank_ended=false;
				str_intermediate_blank_chunk="";
			}
		}
		else
		{
			if(b_non_blank_started)
			{
				b_non_blank_ended=true;
				str_intermediate_blank_chunk+=" ";
			}
		}
	}
	return str_return_text;
}

function func_is_positive_real_number(param_text)
{
	var i_length;
	var decimal=0;

	var b_is_positive_real_number=true;
	var str_text=new String(func_trim(param_text));
	var i_loop;

	for(i_loop=0;i_loop<str_text.length;i_loop++)
	{
		if((str_text.charAt(i_loop)==".")){
			decimal++;
		}
		if(decimal>1){

			b_is_positive_real_number=false;
			break;
		}
		if(!((str_text.charAt(i_loop)>="0" && str_text.charAt(i_loop)<="9") ||(str_text.charAt(i_loop)=="+") || (str_text.charAt(i_loop)=="-") || (str_text.charAt(i_loop)==".")  || (str_text.charAt(i_loop)=="e") || (str_text.charAt(i_loop)=="E")))
		{
			b_is_positive_real_number=false;
			break;
		}
	}
	if(b_is_positive_real_number)
	{

		var i_real_number=new Number(str_text);
		if(i_real_number.valueOf()<=0.0)
		{
			b_is_positive_real_number=false;
		}
	}
	return b_is_positive_real_number;
}

function clearall(f){
	f.username.value='';
	f.upassword.value ='';
}

function validateForm(frms)
	{

		var message = '' ;
		var br = '\r\n' ;
		var D= new Date();
   if(checkfor(frms)==false)message += "Category is not selected."  + br ;



  	 if (frms.product_title.value==false)  	message += "Product title is blank."  + br ;
	 if (frms.product_description.value==false)  	message += "Product description is blank." + br ;
	 if (frms.location.value==false)  	message += "Location is blank." + br ;
	 if (frms.condition.value==false)  	message += "Condition is not selected." + br ;
	 //if (frms.guide_price.value==false)  	message += "Guide price is blank." + br ;
	 /*if (frms.guide_price.value!=false) {
if (!isValidNumber(frms.guide_price.value)) message += "Guide price should be a valid number." + br;
	 }*/


	/*

	 if (frms.approx_weight.value!=false) {
if (!isValidNumber(frms.approx_weight.value)) message += "Approximate weight should be a valid number." + br;
	 }
	 */

if (frms.year_manufactured.value!=false) {
	var  err;
	if(frms.year_manufactured.value.length<4) err='1';

	var currentYear = getFY(D);
	var year2 =frms.year_manufactured.value;
	var year3='1900';

	if(parseInt(year2) < parseInt(year3)) {
		err='1';
		//message += "Year of manufacture should be greater than 1900." + br ;
	}
	if(parseInt(year2)>parseInt(currentYear)){
		err='1';

	}

	if (!isValidNumber(frms.year_manufactured.value)) message += "Year of manufacture should be a valid number." + br;
	 }
	 if(err=='1'){


	 	message += "Year of manufacture should be 4 digits and  between 1900 and  "+currentYear+" ." + br ;
	 	message += "Your system shows is "+currentYear+" as current year.  Make sure that it is the current year" + br ;
	 }







	 //no. of
	/* if (!isValidNumber(frms.txtNoOfEmployees.value)) message += "No. of Employees should be a valid number." + br;
	 //accept buyer terms & conditions
	 if (!frms.chkBuyerTerms.checked) message += "You should accept buyer's Terms & Conditions";*/

	 if (message.length > 0)
	 {
	 	message = "Please correct the following." + br + br + message ;
	 	alert(message);
	 	//return false;
	 }
	 else{
	 frms.mode.value='save';
	 	frms.submit() ; // form is submitted if everything is fine.
	 }

}
function validateForm1(frms,url)
	{

		var message = '' ;
		var br = '\r\n' ;
		var D= new Date();
   if(checkfor(frms)==false)message += "Category is not selected."  + br ;



  	 if (frms.product_title.value==false)  	message += "Product title is blank."  + br ;
	 if (frms.product_description.value==false)  	message += "Product description is blank." + br ;
	 if (frms.location.value==false)  	message += "Location is blank." + br ;
	 if (frms.condition.value==false)  	message += "Condition is not selected." + br ;
	 //if (frms.guide_price.value==false)  	message += "Guide price is blank." + br ;
	 /*if (frms.guide_price.value!=false) {
if (!isValidNumber(frms.guide_price.value)) message += "Guide price should be a valid number." + br;
	 }*/


	/*

	 if (frms.approx_weight.value!=false) {
if (!isValidNumber(frms.approx_weight.value)) message += "Approximate weight should be a valid number." + br;
	 }
	 */

if (frms.year_manufactured.value!=false) {
	var  err;
	if(frms.year_manufactured.value.length<4) err='1';

	var currentYear = getFY(D);
	var year2 =frms.year_manufactured.value;
	var year3='1900';

	if(parseInt(year2) < parseInt(year3)) {
		err='1';
		//message += "Year of manufacture should be greater than 1900." + br ;
	}
	if(parseInt(year2)>parseInt(currentYear)){
		err='1';

	}

	if (!isValidNumber(frms.year_manufactured.value)) message += "Year of manufacture should be a valid number." + br;
	 }
	 if(err=='1'){


	 	message += "Year of manufacture should be 4 digits and  between 1900 and  "+currentYear+" ." + br ;
	 	message += "Your system shows is "+currentYear+" as current year.  Make sure that it is the current year" + br ;
	 }







	 //no. of
	/* if (!isValidNumber(frms.txtNoOfEmployees.value)) message += "No. of Employees should be a valid number." + br;
	 //accept buyer terms & conditions
	 if (!frms.chkBuyerTerms.checked) message += "You should accept buyer's Terms & Conditions";*/

	 if (message.length > 0)
	 {
	 	message = "Please correct the following." + br + br + message ;
	 	alert(message);
	 	return false;
	 }
	 else{
	 frms.mode.value='save';
	 frms.actionurl.value = url;
	 	frms.submit() ; // form is submitted if everything is fine.
	 }

}

// To Check for numeric value
function isValidNumber(number)
{
	var i;
	var valid = true ;
	var SingleChar;
	var ascii;

	for(i=0 ; i < number.length ; i++)
		{
		SingleChar = number.substring(i,i+1);

		ascii = SingleChar.charCodeAt(0) ;

		if(	((ascii >=48 && ascii <=57) || ascii==46) // 48 for 0, 57 for 9
		)
			valid = true ;
		else
		{
			valid = false ;
			break ;
		}

		}// end for

		return valid ;
}

function getFY(D) {
    var YE;
    YE = 1970 + Math.round(D.getTime() / 31556952000);
    return YE + (D.getYear() - YE) % 100;
}

String.prototype.trim = function() {
a = this.replace(/^\s+/, '');
return a.replace(/\s+$/, '');
};

function validatePicture(frm){
	//alert(frm.image_file3.value);
	frm.submit();
	//alert('ok');
}


function validate_regform(frm)
{


	var message1 = "";
	var flag1	= 0;

	var message2 = '';
	var flag2 = 0;

	if(document.frm.email_address)
	{
		var email = document.frm.email_address.value;
		if(false == document.frm.email_address.value){
			message1 += "Email address is blank\n";

		}
		else
		flag1 = 1;

		if(email != '')
		{
			if(!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email)))
				{
					message1 += "Please enter a valid email id \n";
				}
			else
			flag2 = 1;
		}




		if(false == document.frm.password.value){
			message1 += "Password is blank\n";

		}
		else
		flag1 = 1;




		if(1 == flag1)
		{
			if('' != message1)
			{	message1 = 'Please correct the following \n\n' + message1;
				alert(message1);
				document.frm.email_address.focus();
				return false;

			}
			else
			{
				//alert('asdjfasjdf');


				document.frm.mode.value = 'log';
				document.frm.submit();
				return true;
				//document.frm.submit();
			}
		}


	}


	/* now check for the second part of the form(registration) */
	var email = document.frm.email_address1.value;
	if(false == document.frm.email_address1.value){
		message2 += "Email address is blank \n";

	}
	else
	flag2 = 1;

	if(email != '')
	{
		if(!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email)))
			{
				message2 += "Please enter a valid email id \n";
			}
		else
		flag2 = 1;
	}

	if(document.frm.password1)
	{
		if(false == document.frm.password1.value){
			message2 += "Password is blank\n";

		}
		else
		flag2 = 1;
		

		if(false == document.frm.con_password.value){
			message2 += "Confirm Password is blank\n";

		}
		else
		flag2 = 1;

		if(flag2 == 1)
		{
			if(document.frm.password1.value != document.frm.con_password.value){
				message2 += "Password mismatch\n";
			}
			else
			flag2 = 1;
		}

		

	}

  
	
	if(false == document.frm.full_name.value){
		message2 += "Fullname is blank\n";

	}
	else
	flag2 = 1;

	if(false == document.frm.company_name.value){
		message2 += "Company name is blank\n";

	}
	else
	flag2 = 1;

	if(false == document.frm.address.value){
		message2 += "Address is blank\n";

	}
	else
	flag2 = 1;

	if(false == document.frm.phone_no.value){
		message2 += "Phone number is blank\n";

	}
	else
	flag2 = 1;

	//if no fields are filled 
	
	if(flag2 == 0 && flag1 == 0)
	{
		alert('You need to login or register to proceed.');
		return false;
	}

		if('' != message2)
		{
			message2 = 'Please correct the following \n\n' + message2;
			alert(message2);
			document.frm.email_address1.focus();
			return false;

		}
		else
		{
			document.frm.mode.value = 'reg';
			document.frm.submit();
		}
		
	//frm.submit();
}


function trim(s) {
  while (s.substring(0,1) == ' ') {
    s = s.substring(1,s.length);
  }
  while (s.substring(s.length-1,s.length) == ' ') {
    s = s.substring(0,s.length-1);
  }
  return s;
}

function checkfor(frm){
	//alert('ok');
var obj_form = document.frm;
//alert(obj_form);
var chk;
var count = 0;
var element_count = obj_form.elements.length;
var b_error = 0;
//alert(element_count);
while (count<element_count) {
	if(obj_form.elements[count].type == "checkbox") {
		if(obj_form.elements[count].checked==true) {
			chk=1;
			//obj_form.elements[count].focus();
			break;
		}
	}
	count++;
}



if(!chk) return 0;
return 1;


}

function validateCategory(frms)
	{

		var message = '' ;
		var br = '\r\n' ;
		var D= new Date();
		if(checkfor(frms)==1) alert('false');
     if(checkfor(frms)==false)message += "Category is not selected."  + br ;

  	 if (frms.product_title.value==false)  	message += "Product title is blank."  + br ;
	 if (frms.product_description.value==false)  	message += "Product description is blank." + br ;

	 if (frms.condition.value==false)  	message += "Condition is not selected." + br ;

	  if (frms.guide_price.value!=false) {
if (!isValidNumber(frms.guide_price.value)) message += "Guide price should be a valid number." + br;
	 }
	if (frms.approx_weight.value!=false) {
if (!isValidNumber(frms.approx_weight.value)) message += "Approximate weight should be a valid number." + br;
	 }

if (frms.year_manufactured.value!=false) {
	var  err;
	if(frms.year_manufactured.value.length<4) err='1';

	var currentYear = getFY(D);
	var year2 =frms.year_manufactured.value;
	var year3='1900';

	if(parseInt(year2) < parseInt(year3)) {
		err='1';
		//message += "Year of manufacture should be greater than 1900." + br ;
	}
	if(parseInt(year2)>parseInt(currentYear)){
		err='1';

	}

	if (!isValidNumber(frms.year_manufactured.value)) message += "Year of manufacture should be a valid number." + br;
	 }
	 if(err=='1'){


	 	message += "Year of manufacture should be 4 digits and  between 1900 and  "+currentYear+" ." + br ;
	 	message += "Your system shows is "+currentYear+" as current year.  Make sure that it is the current year" + br ;
	 }


	  if (message.length > 0)
	 {
	 	message = "Please correct the following." + br + br + message ;
	 	alert(message);
	 	//return false;
	 }
	 else{
	 frms.mode.value='save';
	 	frms.submit() ; // form is submitted if everything is fine.
	 }


}





