window.onload=function (){
	var f = document.register_form;	
	if(document.getElementById('basicRadio').checked==true)
	{
	   if (!f.elements["basicategory[]"]) {
		   	return false;
	   } 
	   if (f.elements["basicategory[]"][0]) 
	   {
		   for (var i=0; i<f.elements["basicategory[]"].length; i++)
		 	   if (f.elements["basicategory[]"][i].checked) 
			   {
					document.getElementById('basictab').style.display = 'none';
	   				document.getElementById('premiumtab').style.display = 'none';
	   				document.getElementById('step1').style.display = 'none';
	   				document.getElementById('step2').style.display = 'inline';
	   				document.getElementById('reg2').className = 'TableDrakGrayBG BoldText FltLeft FontFamilyArial';
	   				document.getElementById('reg1').className = 'TableLightBG FltLeft Note';
	   				document.getElementById('showmistake').innerHTML="";
			   }
	   }
	}
	else if(document.getElementById('premiumRadio').checked==true) {
	   if (!f.elements["category[]"]) {
		   	return false;
	   } 
	   if (f.elements["category[]"][0]) 
	   {
		   for (var i=0; i<f.elements["category[]"].length; i++)
		 	   if (f.elements["category[]"][i].checked) 
			   {
					document.getElementById('basictab').style.display = 'none';
	   				document.getElementById('premiumtab').style.display = 'none';
	   				document.getElementById('step1').style.display = 'none';
	   				document.getElementById('step2').style.display = 'inline';
	   				document.getElementById('reg2').className = 'TableDrakGrayBG BoldText FltLeft FontFamilyArial';
	   				document.getElementById('reg1').className = 'TableLightBG FltLeft Note';
	   				document.getElementById('showmistake').innerHTML="";
			   }
	   }  
	}
}
function handleTypeChange(type,value) {
	if (type == 'indiv') {
		document.getElementById('basictab').style.display = 'block';
		document.getElementById('premiumtab').style.display = 'none';
		document.getElementById('catgry').style.display = 'inline';
		document.getElementById('showmistake').innerHTML="";
		document.getElementById('premiumbutton').style.display = 'none';
		document.getElementById('basicbutton').style.display = 'inline';
		document.getElementById('memberplan').innerHTML ="Basic";
		document.getElementById('memberamount').innerHTML ="0.00";
		document.getElementById('totalamount').innerHTML ="0.00";
		document.getElementById('totalcat').innerHTML = "0.00";
		var chks = document.getElementsByName('category[]');
		for(var i = 1; i <= chks.length; i++){
			//alert(document.getElementById('category'+i).type)
			if(document.getElementById('category'+i).type=="checkbox"){
				document.getElementById('category'+i).disabled=true;
				document.getElementById('basiccat'+i).style.display = 'inline';
				document.getElementById('premiumcat'+i).style.display = 'none';
				document.getElementById('basicategory'+i).checked=false;
				document.getElementById("cat_total").value="0.00";
				document.getElementById("displaycat").innerHTML="0.00";
			}
			if(document.getElementById('category'+i).type=="radio"){
				document.getElementById('category'+i).disabled=false;
			}	
			if(document.getElementById("displaycatamount"+i).innerHTML=="Free"){
				document.getElementById("displaycatamount"+i).innerHTML="Free";
				document.getElementById('basicategory'+i).checked=true;
			}
			else {
				document.getElementById("displaycatamount"+i).innerHTML="";
				document.getElementById('basicategory'+i).checked=false;
			}
		}
	} 
	else {
		document.getElementById('basictab').style.display = 'none';
		document.getElementById('premiumtab').style.display = 'block';
		document.getElementById('catgry').style.display = 'inline';
		document.getElementById('showmistake').innerHTML="";
		document.getElementById('premiumbutton').style.display = 'inline';
		document.getElementById('basicbutton').style.display = 'none';
		document.getElementById('memberplan').innerHTML ="Premium";
		document.getElementById('totalamount').innerHTML =document.getElementById('premiumfee').value;
		document.getElementById('totalcat').innerHTML = "0.00";
		document.getElementById('memberamount').innerHTML = document.getElementById('premiumfee').value;
		var chks = document.getElementsByName('category[]');
		for(var i = 1; i <= chks.length; i++){
			//alert(document.getElementById('category'+i).type)
			if(document.getElementById('category'+i).type=="checkbox"){
				document.getElementById('category'+i).disabled=false;
				document.getElementById('basiccat'+i).style.display = 'none';
				document.getElementById('premiumcat'+i).style.display = 'inline';
				document.getElementById('category'+i).checked=false;
				document.getElementById("cat_total").value=document.getElementById('premiumfee').value;
				document.getElementById("displaycat").innerHTML="0.00";
				
			}
			if(document.getElementById('category'+i).type=="radio"){
				document.getElementById('category'+i).disabled=true;
			}
			if(document.getElementById("displaycatamount"+i).innerHTML=="Free"){
				document.getElementById("displaycatamount"+i).innerHTML="Free";
				document.getElementById('category'+i).checked=true;
				document.getElementById("total"+i).value=parseFloat(value);
			}
			else {
				document.getElementById("displaycatamount"+i).innerHTML="";
				document.getElementById('category'+i).checked=false;
				document.getElementById("total"+i).value="";
			}		
		}
	}
}
function checkCategory(type,totCateRec,method){
	if(type == 'createacc') {
		if(method == 'premium') 
		{
			var f = document.register_form;	
			if (!f.elements["category[]"]) {
			   	return false;
			} 
			if (f.elements["category[]"][0]) 
			{
			   for (var i=0; i<f.elements["category[]"].length; i++)
				   if (f.elements["category[]"][i].checked) 
				   {
					   document.getElementById('basictab').style.display = 'none';
					   document.getElementById('premiumtab').style.display = 'none';
				       document.getElementById('step1').style.display = 'none';
					   document.getElementById('step2').style.display = 'inline';
					   document.getElementById('reg2').className = 'TableDrakGrayBG BoldText FltLeft FontFamilyArial';
					   document.getElementById('reg1').className = 'TableLightBG FltLeft Note';
					   document.getElementById('showmistake').innerHTML="";
					   return true;
				    }
			} 
			else 
			{
			  	return f.elements["category[]"].checked;
			}
			document.getElementById('showmistake').innerHTML="<div class='Mandatory SmallText TableBorder' style='margin:35px 200px 5px 200px;text-align:center'><div style='padding:10px'>You must select at least one category<\/div><\/div>";   
			return false;	
		}
		else {
			var chks = document.getElementsByName('basicategory[]');
			var hasChecked = false;
			for (var i = 0; i < totCateRec; i++)
			{
				if (chks[i].checked)	
				{
					hasChecked = true;
					document.getElementById('basictab').style.display = 'none';
						   document.getElementById('premiumtab').style.display = 'none';
					       document.getElementById('step1').style.display = 'none';
						   document.getElementById('step2').style.display = 'inline';
						   document.getElementById('reg2').className = 'TableDrakGrayBG BoldText FltLeft FontFamilyArial';
						   document.getElementById('reg1').className = 'TableLightBG FltLeft Note';
						   document.getElementById('showmistake').innerHTML="";
					break;
				}
			}
			if (hasChecked == false)
			{
				document.getElementById('showmistake').innerHTML="<div class='Mandatory SmallText TableBorder' style='margin:35px 200px 5px 200px;text-align:center'><div style='padding:10px'>You must select at least one category<\/div><\/div>"; 
				return false;
			}
		}
	}
}

function chkcat(catid,idno,value,type){
	if(type=="premium") {
		var order_total = 0;
		var total  = 0;
		var f = document.register_form;	
		var catarray=chkcatarray();
		if(document.getElementById(catid).checked==true){
			if(catarray){
				if(catarray > idno){
					document.getElementById("displaycatamount"+catarray).innerHTML='$'+value;
					document.getElementById("displaycatamount"+idno).innerHTML="Free";
				}
				else{
					document.getElementById("displaycatamount"+idno).innerHTML='$'+value;
				}
			}
			else {
				document.getElementById("displaycatamount"+idno).innerHTML="Free";
			}
			document.getElementById("total"+idno).value=parseFloat(value);
		}	
		else{
			if(catarray == idno){
				var delcat=delchk(catarray);
				
				if(delcat){
					document.getElementById("displaycatamount"+delcat).innerHTML="Free";
					document.getElementById("displaycatamount"+catarray).innerHTML="";
					document.getElementById("total"+idno).value="";
				}
				else {
					document.getElementById("displaycatamount"+idno).innerHTML="";
					document.getElementById("total"+idno).value="";
				}
			}
			else {
				document.getElementById("displaycatamount"+idno).innerHTML="";
				document.getElementById("total"+idno).value="";
			}
		}
		var chks = document.getElementsByName('category[]');
		for(var i = 1; i <= chks.length; i++){
			if(document.getElementById("total"+i).value !="" && document.getElementById("category"+i).checked==true) {
				order_total += parseFloat(document.getElementById("total"+i).value);
			}	
		}
		if(order_total > 0){
			document.getElementById('displaycat').innerHTML  = round_decimals((order_total-value),2);
		}	
		f.cat_total.value=round_decimals((parseFloat(f.premiumfee.value)+parseFloat(document.getElementById('displaycat').innerHTML)),2)
		document.getElementById('totalcat').innerHTML = document.getElementById('displaycat').innerHTML;
		document.getElementById('totalamount').innerHTML =f.cat_total.value;
	}	
	else {
		var f = document.register_form;	
		var catarray=chkcatarray();
		var chks = document.getElementsByName('basicategory[]');
		for(var i = 1; i <= chks.length; i++){
			if(document.getElementById(catid).checked==true){
				document.getElementById("displaycatamount"+idno).innerHTML="Free";
			} 
			if(i != idno)
			document.getElementById("displaycatamount"+i).innerHTML="";
		}
	}
}

function delchk(cat){
	var chks = document.getElementsByName('category[]');
	var delcat="";
	for(var i = cat; i <= chks.length; i++){
		if(document.getElementById("category"+i).checked==true){
			delcat=i;
			break;
		}
	}
	return delcat;
}
function round_decimals(original_number, decimals) {
    var result1 = original_number * Math.pow(10, decimals)
    var result2 = Math.round(result1)
    var result3 = result2 / Math.pow(10, decimals)
    return pad_with_zeros(result3, decimals)
}
function pad_with_zeros(rounded_value, decimal_places) {

    // Convert the number to a string
    var value_string = rounded_value.toString()
    
    // Locate the decimal point
    var decimal_location = value_string.indexOf(".")

    // Is there a decimal point?
    if (decimal_location == -1) {
        
        // If no, then all decimal places will be padded with 0s
        decimal_part_length = 0
        
        // If decimal_places is greater than zero, tack on a decimal point
        value_string += decimal_places > 0 ? "." : ""
    }
    else {

        // If yes, then only the extra decimal places will be padded with 0s
        decimal_part_length = value_string.length - decimal_location - 1
    }
    
    // Calculate the number of decimal places that need to be padded with 0s
    var pad_total = decimal_places - decimal_part_length
    
    if (pad_total > 0) {
        
        // Pad the string with 0s
        for (var counter = 1; counter <= pad_total; counter++) 
            value_string += "0"
        }
    return value_string
}
function chkcatarray(){
	var chks = document.getElementsByName('category[]');
	var cate = "";
	for(var i = 1; i <= chks.length; i++){
		var chk = document.getElementById("displaycatamount"+i).innerHTML;
		if(chk =="Free"){
			cate=i;
			break;
		}
	}
	return cate;
}

function checkusername(user){
	if(user=="username") {
		var value=document.register_form.username.value;
		var method ="un";
	}
	else {
		var value=document.register_form.email.value;
		var method ="em";
	}
	if(value.length<5 && value != "") {
		document.getElementById('uname').innerHTML = "<span class='Mandatory'>Length of username must be atleast 5 character</span>";
		document.getElementById('checkavailability').innerHTML="";
		return false;
	}
	else {
		document.getElementById("uname").innerHTML="";
	}
	if(value != "") {
	  http.open("GET", "/loginverify.php?checkuser=" + value + "&method=" + method, true);
  	  http.onreadystatechange = loginVerify;
	  http.send(null);
	  return false;
	}
	else {
	 return false;
	}
}
function getHTTPObject() {
  var xmlhttp;
  if(window.XMLHttpRequest){
    xmlhttp = new XMLHttpRequest();
  }
  else if (window.ActiveXObject){
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    if (!xmlhttp){
        xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
    }    
  }
  return xmlhttp;  
}
var http = getHTTPObject(); // We create the HTTP Object
function loginVerify() {
 if (http.readyState == 4) {
  if(http.status==200) {
  	var results=http.responseText;
  	var row=results.split(",");
  	if(row[0]==1) {
  		if(row[1]=="un"){
  			document.register_form.username.value="";
  			document.register_form.username.focus();
  			document.getElementById('username').innerHTML="<span class='Mandatory'>Duplicate Username</span>";
  			document.getElementById('checkavailability').innerHTML="<span class='Mandatory'>This Username is not available</span>";
  			document.getElementById("uname").innerHTML="";
  		}
  		else {
  			document.register_form.email.value="";
  			document.register_form.email.focus();
  			document.getElementById('email').innerHTML="<span class='Mandatory'>Duplicate Email id</span>";
  		}
  		return false;
  	}
  	else {
  		document.getElementById('username').innerHTML="Username";
  		document.getElementById('email').innerHTML="Email id";
  		document.getElementById('checkavailability').innerHTML="<span class=\"Success\">This Username is available!</span>";
  		return true;
  	}
  }
 }
} 
function numbersonly(e){
	var unicode=e.charCode? e.charCode : e.keyCode
	if (unicode!=8){ //if the key isn't the backspace key (which we should allow)
	if (unicode<46||unicode>57||unicode==47) //if not a number
	return false //disable key press
	}
}
function form_validate()
{
	var a=0;
	var username=document.register_form.username.value;
	var password=document.register_form.password.value;
	var re_password=document.register_form.repassword.value;
	var email=document.register_form.email.value;
	var country=document.register_form.country.selectedIndex;
	//username validation
	if(username=="") {
		a=1;
		document.getElementById("uname").innerHTML="<span class='Mandatory'>Please Enter username</span>";
		document.getElementById('checkavailability').innerHTML="";
		document.getElementById('username').innerHTML="Username";
	}
	else { 
		if(username.length<5) {
			a=1;
			document.getElementById('uname').innerHTML = "<span class='Mandatory'>Length of username must be atleast 5 character</span>";
			document.getElementById('checkavailability').innerHTML="";
			document.getElementById('username').innerHTML="Username";
		}
		else {
			document.getElementById("uname").innerHTML="";
			document.getElementById('checkavailability').innerHTML="";
			document.getElementById('username').innerHTML="Username";
		}
	}
	//password validation
	if(password=="") {
		a=1;
		document.getElementById("pwd").innerHTML="<span class='Mandatory'>Please Enter Password</span>";
	}
	else {
		if(re_password!=password) { 
			a=1;
			document.getElementById('pwd').innerHTML = "<span class='Mandatory'>Password didn't match</span>";
		}
		else if(password.length<6) {
			a=1;
			document.getElementById('pwd').innerHTML = "<span class='Mandatory'>Password should be minimum six characters</span>";
		}
		else { 
			document.getElementById("pwd").innerHTML="";
		}
	}
	//email id validation
	if(email=="") { 
		a=1;
		document.getElementById('e_mail').innerHTML = "<span class='Mandatory'>Please Enter Email ID</span>";
		document.getElementById('email').innerHTML="Email id";
	}
	else {
		var str=document.register_form.email.value
		var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
		if (filter.test(str)) { 
			document.getElementById('e_mail').innerHTML ="";
			document.getElementById('email').innerHTML="Email id";
		}
		else{ 
			a=1
			document.getElementById('e_mail').innerHTML = "<span class='Mandatory'>Please Enter Valid Email ID</span>";	
		}
	}
	//Full name validation
	if(document.register_form.fullname.value=="") {
		a=1;
		document.getElementById("fname").innerHTML="<span class='Mandatory'>Please Enter fullname</span>";
	}
	else { 
		document.getElementById("fname").innerHTML="";
	}
	//city
	if(document.register_form.city.value=="") { 
		a=1;
		document.getElementById("cty").innerHTML="<span class='Mandatory'>Please Enter City</span>";
	}
	else  { 
		document.getElementById("cty").innerHTML="";
	}
	//state
	if(document.register_form.state.value=="") {
		a=1;
		document.getElementById("ste").innerHTML="<span class='Mandatory'>Please Enter  State</span>";
	}
	else {
		document.getElementById("ste").innerHTML="";
	}
	//Country validation
	if(country=="") { 
		a=1;
		document.getElementById("cnty").innerHTML="<span class='Mandatory'>Please Choose Country</span>"
	}
	else {
		document.getElementById("cnty").innerHTML="";
	}
	//Validation for address
	if(document.register_form.address.value=="") { 
		a=1;
		document.getElementById("add").innerHTML="<span class='Mandatory'>Please Enter  address</span>"
	}
	else { 
		document.getElementById("add").innerHTML="";
	}
	//validation for postal code
	if(document.register_form.postalcode.value=="") {
		a=1;
		document.getElementById("pcode").innerHTML="<span class='Mandatory'>Please Enter  Postal code</span>"
	}
	else { 
		document.getElementById("pcode").innerHTML="";
	}
	//image validation
	var image=document.getElementById("user_image").value;
	if(image!="") { 
		var fileTypes=["jpg","gif","png","jpeg"];
		var count=0;
		var source=document.getElementById("user_image").value;
		var ext=source.substring(source.lastIndexOf(".")+1,source.length).toLowerCase();
		for (var i=0; i<fileTypes.length; i++) { 
			if (fileTypes[i]==ext) {
				count=1;
				break;
			}
		}	  
		if(count==1) { 
			document.getElementById("f25").innerHTML="";
		}
		else  { 
			a=1;
			document.getElementById("logo").innerHTML="<input type=file name=user_image id=user_image tabindex=48>";
			document.getElementById("f25").innerHTML="<span class='Mandatory'>Please load a file with an extention of :\n"+fileTypes.join(", ")+"</span>";
		}
	}
	//profile validation
	// Validation for phone no
	if(document.register_form.phone.value=="") { 
		a=1;
		document.getElementById("phone_err").innerHTML="<span class='Mandatory'>Please Enter Phone number</span>";
	}
	else { 
		phoneRe = /^((\+\d{1,3}(-| )?\(?\d\)?(-| )?\d{1,4})|(\(?\d{2,4}\)?))(-| )?(\d{3,4})(-| )?(\d{4})(( x| ext)\d{1,5}){0,1}$/
		if (!phoneRe.test(document.register_form.phone.value)) {
			a=1;
			document.getElementById("phone_err").innerHTML="<span class='Mandatory'>Please Enter Valid Phone number</span>";
		}
		else { 
			document.getElementById("phone_err").innerHTML="";
		}
	}
	//validation for terms and conditions
	if (!document.register_form.terms.checked) {
		a=1
		document.getElementById('terms_err').innerHTML = "<span class='Mandatory'>Check the checkbox to accept  Terms and conditions</span>";
	}
	else  {
		document.getElementById('terms_err').innerHTML="";
	}	
	//validation for privacy
	if (!document.register_form.privacy.checked) { 
		a=1
		document.getElementById('privacy_err').innerHTML = "<span class='Mandatory'>Please read and accept  Privacy Policy</span>";
	}
	else  { 
		document.getElementById('privacy_err').innerHTML="";
	}	
	// validation for verification code
	if(document.register_form.vcode.value=="") { 
		a=1;
		document.getElementById("vcode_err").innerHTML="<span class='Mandatory'>Please Enter  Verification code</span>";
	}
	else {
		if(document.register_form.vcode.value!=document.register_form.vcode1.value) { 
			a=1;
			document.getElementById('vcode_err').innerHTML="<span class='Mandatory'>Wrong Verification code</span>";
		}
		else { 
			document.getElementById("vcode_err").innerHTML="";
		}
	}
	if(a==1) { 
		return false;
	}
}
 