
//Login functions

	function login()	{
		if ($("username") && $("username").value)	{
			var username = $("username").value;
		} else {
			var username = 0;
		}
		if ($("password") && $("password").value)	{
			var password = $("password").value;	
		} else {
			var password = 0;
		}		
		processLogin(username, password);
	}
	
	function processLogin(username, password)	{
		var url = 'ajax.php';		
	
		var myAjax = new Ajax.Request( url, {	
			method: 'post', 
			parameters: 'command=login&username='+username+'&password='+password, 
			evalScripts:true, 
			onSuccess: function(transport)	{
				
				login_response = transport.responseText.strip();
				login_split    = login_response.split("|");
				
				//if login is successful
				if (login_split[0] >= 1){
					
					$("user_box").style.display = "block";
					setUserBox();

					//check if tcs have been checked
					if(login_split[1]==0)
					{
						displayWelcome(0);
					}
					else
					{
						processLinks();	
						displayWelcome(1);
						toggleClientLinks(1);
					}
					
				} else {

					processLinks();	
					$("user_box").style.display = "none";
					displayWelcome();			
					toggleClientLinks(0);
					if (username != "0" && username != "-1")	alert("Login invalid!");
				}
			}
		});
	}

	function toggleClientLinks(type)	{
		if (type)	{
			$("section_links").addClassName('active');			
		} else {
			$("section_links").removeClassName('active');
			$("section_links").addClassName('inactive');
		}
	}
	
	function processLinks()	{
		var url = 'ajax.php'
		new Ajax.Updater("section_links", url, { 
		 method : 'post',
		 parameters: 'command=processLinks',
		 onFailure : function(resp) { 
		   alert("Oops, there's been an error."); 
		 } 
		});
	}
	
	function setUserBox()	{
		var url = 'ajax.php'
		new Ajax.Updater("user_box", url, { 
		 method : 'post',
		 parameters: 'command=getCompanyDetails',
		 onCreate : function(wait)	{
		 	 $("user_box").innerHTML = "<h3>Logged In <small>(<a href=\"javascript: logout();\">Logout</a>)</small></h3><p>Working</p>";
		 },
		 onFailure : function(resp) { 
		   alert("Oops, there's been an error."); 
		 } 
		});
	}
	
	function displayWelcome(tcs)	{
		var url = 'ajax.php'
		new Ajax.Updater("info", url, { 
		 method : 'post',
		 parameters: 'command=welcome',
		 evalScript:true,
		 onCreate : function(wait)	{
		 	$("info").innerHTML = "<h1>Welcome to the CheckRate Client Zone</h1><p>Working</p>";
			
		 },
		 onFailure : function(resp) { 
		   alert("Oops, there's been an error."); 
		 },
		 onComplete: function(transport){
			if(tcs==0)
			{
				$("login_welcome").hide();
				$("tcs").style.display = 'block';	
			}

		 }
		});
	}
	
	function logout()	{
		processLogin(-1, -1);
	}
	
//CheckRate Trust Seal Functions

	function getRadioValue(idOrName) {
    var value = null;
    var element = document.getElementById(idOrName);
    var radioGroupName = null;  
    
    // if null, then the id must be the radio group name
    if (element == null) {
            radioGroupName = idOrName;
    } else {
            radioGroupName = element.name;     
    }
    if (radioGroupName == null) {
            return null;
    }
    var radios = document.getElementsByTagName('input');
    for (var i=0; i<radios.length; i++) {
            var input = radios[ i ];    
            if (input.type == 'radio' && input.name == radioGroupName && input.checked) {                          
                    value = input.value;
                    break;
            }
    }
    return value;
	}

	function displaySealGenerator(step)	{
		var url = 'ajax.php'
		new Ajax.Updater("info", url, { 
		 method : 'post',
		 parameters: 'command=sealGenerator&step='+step,
		 onCreate : function(wait)	{
		 	$("info").innerHTML = "<h1>CheckRate Seal Generator</h1><p>Working</p>";
		 },
		 onFailure : function(resp) { 
		   alert("Oops, there's been an error."); 
		 } 
		});
	}
	
	function displaySealColours(id)	{
		$('seal_code').style.display = "none";	
		$("seal_mode").style.display = "none";
		var url = 'ajax.php'
		new Ajax.Updater("seal_colour", url, { 
		 method : 'post',
		 parameters: 'command=displaySealColours&id='+id,
		 onFailure : function(resp) { 
		   alert("Oops, there's been an error."); 
		 } 
		});
	 $('seal_code').style.display = "none";		
	 $("seal_colour").style.display = "block";	
	}
	
	function displaySealBackground(id)	{
		$('seal_code').style.display = "none";
	}
	
	function displaySealMode(id)	{
		$('seal_code').style.display = "none";	
		var url = 'ajax.php'
		new Ajax.Updater("seal_mode", url, { 
		 method : 'post',
		 parameters: 'command=displaySealMode&id='+id,
		 onFailure : function(resp) { 
		   alert("Oops, there's been an error."); 
		 } 
		});
	 $('seal_code').style.display = "none";		
	 $("seal_mode").style.display = "block";	
	}
	
	function generateSealCode()	{
		var id = getRadioValue('seal_selected');
		var mode = getRadioValue('seal_mode_selected');
		//var bg = getRadioValue('seal_bg');
		//if (bg == "custom_colour") bg = $("custom_colour").value;
		var bg = "ffffff";
		var url = 'ajax.php';
		var myAjax = new Ajax.Request(url, {	
			method: 'post', 
		  parameters: 'command=generateSealCode&id='+id+'&mode='+mode+'&bg='+bg,
			onSuccess: function(transport)	{
				$('seal_code_output').value = transport.responseText.strip();
			}
		});
		$('seal_code').style.display = "block";
	}
	
	function showScore(number, address, address2, address3, country, postcode, rating, newname, rating_desc)
	{
		var url = 'ajax.php';
		var search_type = $('business_type').value;
		
		if ($('qualify')!=null)	{
			var qualify = $('qualify').value;
		} else {
			var qualify = 0;
		}		
		
		newname = newname.gsub('&', '%26');
		
		new Ajax.Updater("vbr_search_results", url, { 
		 method : 'post',
		 parameters: 'command=showScore&company_number='+number+'&company_name='+newname+"&address="+address+"&address2="+address2+"&address3="+address3+"&country="+country+"&postcode="+postcode+"&rating="+rating+"&rating_desc="+rating_desc+'&search_type='+search_type+"&qualify="+qualify,
		 onCreate : function(wait)	{
		 	$("vbr_search_results").innerHTML = "<h2>Checking Business</h2><p>Working</p><br/><img src=\"images/progress_bar.gif\" />";
		 },
		 onFailure : function(resp) { 
		   alert("Oops, there's been an error."); 
		 } 
		});
		
	}
	
	function tcs_accept(client_id)
	{
		var tcs_check = $('tcs_check').checked;
		if(tcs_check==false)
		{
			alert("You need to read our terms and conditions\n and then acknowledge them by clicking the checkbox to proceed.");
		}
		else
		{
			var url = 'ajax.php';
			new Ajax.Updater("info", url, { 
			 method : 'post',
			 parameters: 'command=tcs_check&client_id='+client_id,

			 onFailure : function(resp) { 
			   alert("Oops, there's been an error."); 
			 },
			 onComplete: function(transport){
				processLinks();	
				$("user_box").style.display = "block";
				displayWelcome(1);
				toggleClientLinks(1);
				setUserBox();
			 }
			});
			
		}
		
	}
	
	function newSearch(url)
	{
		var company_name = $('company_name').value;
		var company_type = $('business_type').value;
		window.location="http://"+url+"/data_services.php?page=verified_business_registration&company_name=" + company_name + "&business_type="+ company_type +"&new_search=1";
	}
	
	function quickSearch()	{
		var url = 'ajax.php'
		new Ajax.Updater("info", url, { 
		 method : 'post',
		 parameters: 'command=quickSearch',
		 onCreate : function(wait)	{
		 	$("info").innerHTML = "<p>Working</p>";
		 },
		 onFailure : function(resp) { 
		   alert("Oops, there's been an error."); 
		 } 
		});
	}
	
	function getCreditReport(container, cid, company_number, company_name, company_type)	{
		bOK = confirm("If you proceed you will be charged £4.99 + VAT for this report.\n\nYour outstanding balance can be seen in the \'View Account\' section and will be invoiced at the end of calendar month.");
		if (bOK)	{
			var url = 'ajax.php';
			
				new Ajax.Updater(container, url, { 
				 method : 'post',
				 parameters: 'command=get_credit_report&cid='+cid+'&company_number='+company_number+"&company_name="+company_name+"&company_type="+company_type,
				 evalScripts: true,
				 onCreate : function(wait)	{
				 	$(container).innerHTML = "<h1>CheckRate Report Generator</h1><p>Working</p><br/><img src=\"images/progress_bar.gif\" />";
				 },
				 onFailure : function(resp) { 
				   alert("Oops, there's been an error."); 
				 } 
				});
		}
			
	}
	
	function getExpressCreditReport(container, cid, company_number, company_name, company_type, rating_desc, score, rating_type, address1, address2, address3, postcode)	{

		var url = 'ajax.php';
		
			new Ajax.Updater(container, url, { 
			 method : 'post',
			 parameters: 'command=get_express_credit_report&cid='+cid+'&company_number='+company_number+"&company_name="+company_name+"&company_type="+company_type+"&rating_desc="+rating_desc+"&score="+score+"&rating_type="+rating_type+"&address1="+address1+"&address2="+address2+"&address3="+address3+"&postcode="+postcode,
			 evalScripts: true,
			 onCreate : function(wait)	{
			 	$(container).innerHTML = "<h1>CheckRate Report Generator</h1><p>Working</p><br/><img src=\"images/progress_bar.gif\" />";
			 },
			 onFailure : function(resp) { 
			   alert("Oops, there's been an error."); 
			 } 
			});
		
	}
	
	function reportHistory(account)	{
		var url = 'ajax.php'
		new Ajax.Updater("info", url, { 
		 method : 'post',
		 parameters: 'command=reportHistory&account='+account,
		 onCreate : function(wait)	{
		 	$("info").innerHTML = "<p>Working</p><br/><img src=\"images/progress_bar.gif\" />";
		 },
		 onFailure : function(resp) { 
		   alert("Oops, there's been an error."); 
		 } 
		});
	}
	
	function view_report(report_id)
	{
		var url = 'ajax.php'
		new Ajax.Updater("info", url, { 
		 method : 'post',
		 parameters: 'command=view_report&id='+report_id,
		 onCreate : function(wait)	{
		 	$("info").innerHTML = "<p>Working</p><br/><img src=\"images/progress_bar.gif\" />";
		 },
		 onFailure : function(resp) { 
		   alert("Oops, there's been an error."); 
		 } 
		});	
	}
	
