var id_rec;
var http_request_ca;
var pd_session;
var emailx;

function validate_input() {
	var email1 = document.getElementById('email1').value;
	var email2 = document.getElementById('email2').value;
	var email3 = document.getElementById('email3').value;
	var email4 = document.getElementById('email4').value;

	var firstname1 = document.getElementById('firstname1').value;
	var firstname2 = document.getElementById('firstname2').value;
	var firstname3 = document.getElementById('firstname3').value;
	var firstname4 = document.getElementById('firstname4').value;

	var msglength  = document.getElementById('box_blue').value.length;

	if (firstname1 == '' && firstname2 == '' && firstname3 == '' &&	firstname4 == '') {
		document.getElementById('error_text').innerHTML = "Please provide First Name";
		document.getElementById('firstname1').focus();
		return false;
	}

	if(email1 == '' && email2 == '' && email3 == '' && email4 == '') {
		document.getElementById('error_text').innerHTML = "Please provide at least one email address";
		document.getElementById('email1').focus();
		return false;
	}

	if ((firstname1 == '' && email1 != '') || (firstname1 != '' && email1 == '')) {
		document.getElementById('error_text').innerHTML = "Please provide all Mandatory Details";
		document.getElementById('firstname1').focus();
		return false;
	}

	if ((firstname2 == '' && email2 != '') || (firstname2 != '' && email2 == '')) {
		document.getElementById('error_text').innerHTML = "Please provide all Mandatory Details";
		document.getElementById('firstname2').focus();
		return false;
	}

	if ((firstname3 == '' && email3 != '') || (firstname3 != '' && email3 == '')) {
		document.getElementById('error_text').innerHTML = "Please provide all Mandatory Details";
		document.getElementById('firstname3').focus();
		return false;
	}

	if ((firstname4 == '' && email4 != '') || (firstname4 != '' && email4 == '')) {
		document.getElementById('error_text').innerHTML = "Please provide all Mandatory Details";
		document.getElementById('firstname4').focus();
		return false;
	}


	emailpat = /^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-]+)+$/;

	if( !emailpat.test( email1 ) && email1 != '' ) {
		document.getElementById('error_text').innerHTML = "The first email address you have provided is invalid, please check again";
		document.getElementById('email1').focus();
		return false;
	}

	if( !emailpat.test( email2 ) && email2 != '' ) {
		document.getElementById('error_text').innerHTML = "The second email address you have provided is invalid, please check again";
		document.getElementById('email2').focus();
		return false;
	}

	if( !emailpat.test( email3 ) && email3 != '' ) {
		document.getElementById('error_text').innerHTML = "The third email address you have provided is invalid, please check again";
		document.getElementById('email3').focus();
		return false;
	}
	if( !emailpat.test( email4 ) && email4 != '' ) {
		document.getElementById('error_text').innerHTML = "The fourth email address you have provided is invalid, please check again";
		document.getElementById('email4').focus();
		return false;
	}
	if(msglength > 1000) {
	    document.getElementById('msgerror_text').innerHTML = "Personalized message should be of maximum 1000 characters";
	    document.getElementById('box_blue').focus();
	    return false;
	}

	document.form1.submit();
	return true;
}
function validate_email_noajax() {
	var email1 = document.getElementById('user_fp').value;
	email1 = email1.replace(/^\s+/, '');
	if(email1 == '' ) {
		document.getElementById('error_text').innerHTML = "Please provide us your email address";
		return false;
	}
	emailpat = /^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-]+)+$/;

	if( !emailpat.test( email1 ) && email1 != '' ) {
		document.getElementById('error_text').innerHTML = "Please enter a valid email address";
		return false;
	}
	http_request = get_xhttp_object();
	var url = '/cgi-bin/b2c-v3/fn_login.cgi?action=ec&user='+ email1;
	http_request.open('GET',url,false);
    http_request.send(null);
	if ( http_request.status == 200 ) {
		var response = http_request.responseText;
		if(response == 'OK') {
			document.getElementById('error_text').innerHTML = "This email address is unregistered";
 			return false;
		}
	}
	document.form1.submit();
}
function validate_email() {
	var email1 = document.getElementById('user_fp').value;
	email1 = email1.replace(/^\s+/, '');
	if(email1 == '' ) {
		document.getElementById('error_text').innerHTML = "Please provide us your email address";
		return false;
	}
	emailpat = /^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-]+)+$/;

	if( !emailpat.test( email1 ) && email1 != '' ) {
		document.getElementById('error_text').innerHTML = "Please enter a valid email address";
		return false;
	}
	emailx = email1;
	open_loading_pd();
	setTimeout("check_ajax_callback()",400);
}

function check_ajax_callback() {
	http_request_ca = get_xhttp_object();
	var url = '/cgi-bin/b2c-v3/fn_login.cgi?action=ec&user='+ emailx;

	http_request_ca.open('GET',url,false);
	http_request_ca.send(null);
	if ( http_request_ca.status == 200 ) {
		var response = http_request_ca.responseText;

		if(response == "OK"){
			document.getElementById('error_text').innerHTML = "This email address is unregistered";
 			close_loading_pd();
 			return false;

		}else {
			var url = '/cgi-bin/b2c-v3/fn_login.cgi?action=chpass&user='+ emailx;
			http_request = get_xhttp_object();
			http_request.open('GET',url,false);
			http_request.send(null);
			if ( http_request.status == 200 ) {
				var response = http_request.responseText;
				document.getElementById('email_text_conf').innerHTML = emailx;
				close_password_page();
				open_password_conf_page();
				close_loading_pd();

			}else {
		   		close_loading_pd();
		   		alert( 'Sorry, An error occurred. Please try again later.' );
			}
		}
	}
}

function ValidateInputs_noajax()
{

    var firstname = document.getElementById('fname').value;
    var lastname  = document.getElementById('lname').value;

	if (firstname.replace(/^\s+|\s+$/g, '') == "") {
	    document.getElementById('error').innerHTML = "Please provide the first name";
		document.getElementById('fname').focus();
		return false;
	}

	if (lastname.replace(/^\s+|\s+$/g, '') == "") {
	    document.getElementById('error').innerHTML = "Please provide the last name";
		document.getElementById('lname').focus();
		return false;
	}

	var email = document.getElementById('user').value;
	if(email == ''){
		document.getElementById('error').innerHTML = "Required field cannot be left blank";
		return false;
	}
	emailpat = /^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-]+)+$/;
	if( !emailpat.test( email ) ) {
 		document.getElementById('error').innerHTML = "Please enter a valid email address";
 		return false;
	}
	http_request = get_xhttp_object();
	var url = '/cgi-bin/b2c-v3/fn_login.cgi?action=ec&user='+ email;
	http_request.open('GET',url,false);
    http_request.send(null);
	if ( http_request.status == 200 ) {
		var response = http_request.responseText;
		if(response == 'NOK') {
			document.getElementById('error').innerHTML = "This email address is already registered";
 			return false;
		}
	}else{
		alert("can not check availability");
		return false;
	}
	var pass  = document.getElementById('pass').value;
	var rpass = document.getElementById('repass').value;
	if(pass != rpass){
		document.getElementById('error').innerHTML = "Passwords do not match";
		return false;
	}
	if(pass.length < 5){
		document.getElementById('error').innerHTML = "Sorry, your password must be 5 characters long";
		return false;
	}
	var chk_sp = /[\s+]/;
	if(chk_sp.test(pass) || chk_sp.test(rpass)){
		document.getElementById('error').innerHTML ="Spaces are not allowed in password";
		document.getElementById('pass').value="";
		document.getElementById('repass').value="";
		return false;
	}
	//document.contact.submit();
	var fname  	= document.getElementById('fname').value;
	var lname 	= document.getElementById('lname').value;
	var deal 	= '';
	if(document.getElementById('sub_top20').checked) {
		deal	= 'yes';
	}
	var url = '/cgi-bin/b2c-v3/fn_login.cgi?action=ca&user='+ email+'&passwd='+pass+'&deals='+deal+'&fname='+fname+'&lname='+lname;
	http_request.open('GET',url,false);
    http_request.send(null);
	if ( http_request.status == 200 ) {
		var response = http_request.responseText;
		if(response != "Login"){
			pd_sid = response;
			window.location.href='/cgi-bin/b2c-v3/Track_account.cgi';
		}
	}else {
       alert( 'Sorry, An error occurred. Please try again later.' );
   	}
   	return false;
}

function  validate(){

        var iChars = "!@#$%^&*()+=-[]\\\';,./{}|\":<>?";

		for (var i = 0; i < document.contact.fname.value.length; i++) {
			if (iChars.indexOf(document.contact.fname.value.charAt(i)) != -1) {
				alert ("First Name has special characters. \nThese are not allowed. Please remove them and try again.");
				document.contact.fname.value =  '';
				document.contact.fname.focus();
				return false;
			}
		}
  		for (var i = 0; i < document.contact.lname.value.length; i++) {
			if (iChars.indexOf(document.contact.lname.value.charAt(i)) != -1) {
				alert ("Last Name has special characters. \nThese are not allowed. Please remove them and try again.");
				document.contact.lname.value =  '';
				document.contact.lname.focus();
				return false;
			}
		}

		var first = document.getElementById('fname').value;
		first = (first.replace(/^\W+/,'')).replace(/\W+$/,'');

    	var last = document.getElementById('lname').value;
    		last = (last.replace(/^\W+/,'')).replace(/\W+$/,'');

		if (first.replace(/^\s+|\s+$/g, '') == "")
		{
			alert("FirstName cannot be left blank");
			document.contact.fname.focus();
			return false;
		}
		if (last.replace(/^\s+|\s+$/g, '') == "")
		{
			alert("LastName cannot be left blank");
			document.contact.lname.focus();
			return false;
		}
		if (document.getElementById('pname').value.replace(/^\s+|\s+$/g, '') !=""
		    && document.getElementById('rname').value.replace(/^\s+|\s+$/g, '')!="")  {
 		    if( document.getElementById('pname').value.length<5){
			    alert("Password must be of atleast 5 characters");
			    document.getElementById('pname').focus();
			    return false;
			}
		}
		if (document.getElementById('pname').value.replace(/^\s+|\s+$/g, '') != document.getElementById('rname').value.replace(/^\s+|\s+$/g, '')) {
			alert("Password does not match");
			document.getElementById('rname').value="";
			document.getElementById('rname').focus();
			return false;
		}
		var chk_sp = /[\s+]/;

		if(chk_sp.test(document.getElementById('pname').value) ){
		   alert("Spaces are not allowed in password");
		   document.getElementById('pname').value="";
		   return false;
		}
		if(chk_sp.test(document.getElementById('rname').value) ){
		   alert("Spaces are not allowed in password");
		   document.getElementById('rname').value="";
		   return false;
		}
		document.contact.submit();
	}

function validatepassword() {
		if (document.getElementById('pname').value.replace(/^\s+|\s+$/g, '') != document.getElementById('rname').value.replace(/^\s+|\s+$/g, '')) {
			alert("Password does not match");
			document.getElementById('rname').value="";
			document.getElementById('rname').focus();
			return false;
		}
		if (document.getElementById('pname').value.length < 5 )  {
			alert("Password must be of atleast 5 characters");
			document.getElementById('pname').focus();
			return false;
		}
		return true;
	}

function ValidateInputs()
{
    var firstname = document.getElementById('fname').value;
    var lastname  = document.getElementById('lname').value;

	if (firstname.replace(/^\s+|\s+$/g, '') == "") {
	    document.getElementById('error_text_ca').innerHTML = "Please provide the first name";
		document.getElementById('fname').focus();
		return false;
	}

	if (lastname.replace(/^\s+|\s+$/g, '') == "") {
	    document.getElementById('error_text_ca').innerHTML = "Please provide the last name";
		document.getElementById('lname').focus();
		return false;
	}


	var email = document.getElementById('user_email').value;
	email = email.replace(/^\s+/, '');
	if(email == ''){
		document.getElementById('error_text_ca').innerHTML = "Required field cannot be left blank";
		return false;
	}
	emailpat = /^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-]+)+$/;
	if( !emailpat.test( email ) ) {
 		document.getElementById('error_text_ca').innerHTML = "Please enter a valid email address";
 		return false;
	}
	http_request = get_xhttp_object();
	var url = '/cgi-bin/b2c-v3/fn_login.cgi?action=ec&user='+ email;
	http_request.open('GET',url,false);
    http_request.send(null);
	if ( http_request.status == 200 ) {
		var response = http_request.responseText;
		if(response == 'NOK') {
			document.getElementById('error_text_ca').innerHTML = "This email address is already registered";
 			return false;
		}
	}else{
		alert("can not check availability");
		return false;
	}
	var pass  = document.getElementById('pass').value;
	var rpass = document.getElementById('repass').value;
	if(pass != rpass){
		document.getElementById('error_text_ca').innerHTML = "Passwords do not match";
		return false;
	}
	if(pass.length < 5){
		document.getElementById('error_text_ca').innerHTML = "Sorry, your password must be 5 characters long";
		return false;
	}
	var chk_sp = /[\s+]/;
	if(chk_sp.test(pass) || chk_sp.test(rpass)){
		document.getElementById('error_text_ca').innerHTML ="Spaces are not allowed in password";
		document.getElementById('pass').value="";
		document.getElementById('repass').value="";
		return false;
	}
	http_request_ca = get_xhttp_object();
	open_loading_pd();
	var fname  	= document.getElementById('fname').value;
	var lname 	= document.getElementById('lname').value;
	var deal 	= '';
	if(document.getElementById('sub_top20').checked) {
		deal	= 'yes';
	}
	var url = '/cgi-bin/b2c-v3/fn_login.cgi?action=ca&user='+ email+'&passwd='+pass+'&deals='+deal+'&fname='+fname+'&lname='+lname;

	http_request_ca.onreadystatechange = ajax_callback;
	http_request_ca.open('GET',url,true);
    http_request_ca.send(null);
}

function ajax_callback() {
	if ( http_request_ca.readyState == 4 ) {
		if ( http_request_ca.status == 200 ) {
			var response = http_request_ca.responseText;
			//alert('Hi kanu');
			if(response != "Login"){
				pd_sid = response;
				save_Flight_track(cid_track,qid_track);
				close_create_ac_page();
				close_loading_pd();
			}
		}
	}else {
	   open_loading_pd();
   	}
}

function do_track_login_noajax(){
	var username 	= document.getElementById("mail_add").value;
	var passwd   	= document.getElementById("passwd").value;
	username 		= username.replace(/^\s+/, '');
	passwd 			= passwd.replace(/^\s+/, '');
	if(username == ''){
		document.getElementById("login_err_disp").style.display = "block";
		return false;
	}
	if(passwd == ''){
		document.getElementById("login_err_disp").style.display = "block";
		return false;
	}
	document.form1.submit();
}
function change_name(id) {
	var alert_name = document.getElementById("alert_name_"+id).value;
	alert_name = alert_name.replace(/^\s+/, '');

	var illegalChars = /[\u0000-\u001F\u0021-\u0027\u003C\u003E\u007E-\u0084\u0086-\u009F\u00A1-\u00AC\u00AE-\u00FF]/g;
    if (illegalChars.test(alert_name)) {
        var illchar = alert_name.match(illegalChars);
        document.getElementById('error_text_'+id).innerHTML = "Renaming the flights contains illegal characters. ";
        return false;
    }

	if(alert_name == '') {
		document.getElementById('error_text_'+id).innerHTML = "This field cannot be left blank";
		return false;
	}
	http_request = get_xhttp_object();
	var url = '/cgi-bin/b2c-v3/Track_account.cgi?action=chname&name='+ alert_name + '&id=' + id_rec;

	http_request.open('GET',url,false);
    http_request.send(null);
	if ( http_request.status == 200 ) {
		window.location.href = '/cgi-bin/b2c-v3/Track_account.cgi';
	}else {
       alert( 'Sorry, An error occurred. Please try again later.' );
   	   return false;
   	}
}

function del_alert(id_rec) {

	http_request = get_xhttp_object();
	var url = '/cgi-bin/b2c-v3/Track_account.cgi?action=delflight&id=' + id_rec;

	http_request.open('GET',url,false);
    http_request.send(null);
	if ( http_request.status == 200 ) {
		window.location.href = '/cgi-bin/b2c-v3/Track_account.cgi';
	}else {
       alert( 'Sorry, An error occurred. Please try again later.' );
   	   return false;
   	}
}
function email_fdetails(id) {
	http_request = get_xhttp_object();
	var alert_email = document.getElementById("alert_email_"+id).value;
	emailpat = /^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-]+)+$/;
	if( !emailpat.test( alert_email ) ) {
 		document.getElementById('emailerror_text_'+id).innerHTML = "Please enter a valid email address";
 		return false;
	}
	var url = '/cgi-bin/b2c-v3/print_alert.cgi?action=email&id=' + id + '&email='+alert_email;
	http_request.open('GET',url,false);
    http_request.send(null);
	if ( http_request.status == 200 ) {
		document.getElementById('action_email_'+id).style.display = 'none';
	}else {
       alert( 'Sorry, An error occurred. Please try again later.' );
   	   return false;
   	}
   	return false;
}
function get_track_details(div_id,track_key,pagename) {

	if(document.getElementById(div_id).style.display == 'none') {
		var http_request = get_xhttp_object();
		var url = '/cgi-bin/b2c-v3/track_details.cgi?mytrip=0&div_id='+div_id+'&id='+track_key;

		http_request.open('GET',url,false);
    	http_request.send(null);
		if ( http_request.status == 200 ) {
			document.getElementById(div_id).innerHTML = http_request.responseText;
			document.getElementById(div_id).style.display='block';
		}else {
			alert( 'Sorry, An error occurred. Please try again later.' );
   		}
   	}else {
   		document.getElementById(div_id).style.display = 'none';
   	}
   	return false;
}
function rename_alert(id) {
	document.getElementById('action_email_'+id).style.display = 'none';
	document.getElementById('action_details_'+id).style.display = 'none';
	document.getElementById('action_del_'+id).style.display = 'none';
	document.getElementById('action_purchased_'+id).style.display = 'none';
	if(document.getElementById('action_rename_'+id).style.display == 'none') {
		document.getElementById('action_rename_'+id).style.display = 'block';
		id_rec = id;
	}else {
		document.getElementById('action_rename_'+id).style.display = 'none';
	}
}

function delete_alert(id) {
	document.getElementById('action_email_'+id).style.display = 'none';
	document.getElementById('action_details_'+id).style.display = 'none';
	document.getElementById('action_rename_'+id).style.display = 'none';
	document.getElementById('action_purchased_'+id).style.display = 'none';
	if(document.getElementById('action_del_'+id).style.display == 'none') {
		document.getElementById('action_del_'+id).style.display = 'block';
		id_rec = id;
	}else {
		document.getElementById('action_del_'+id).style.display = 'none';
	}
}
function email_alert(id) {
	document.getElementById('action_details_'+id).style.display = 'none';
	document.getElementById('action_rename_'+id).style.display = 'none';
	document.getElementById('action_purchased_'+id).style.display = 'none';
	document.getElementById('action_del_'+id).style.display = 'none';
	if(document.getElementById('action_email_'+id).style.display == 'none') {
		document.getElementById('action_email_'+id).style.display = 'block';
		document.getElementById('emailerror_text_'+id).innerHTML = "";
		id_rec = id;
	}else {
		document.getElementById('action_email_'+id).style.display = 'none';
	}
}
function close_all_alert(id) {
	document.getElementById('action_details_'+id).style.display = 'none';
	document.getElementById('action_rename_'+id).style.display = 'none';
	document.getElementById('action_purchased_'+id).style.display = 'none';
	document.getElementById('action_del_'+id).style.display = 'none';
	document.getElementById('action_email_'+id).style.display = 'none';
}
function purchase_alert(id) {
	document.getElementById('action_email_'+id).style.display = 'none';
	document.getElementById('action_details_'+id).style.display = 'none';
	document.getElementById('action_del_'+id).style.display = 'none';
	document.getElementById('action_rename_'+id).style.display = 'none';
	if(document.getElementById('action_purchased_'+id).style.display == 'none') {
		document.getElementById('action_purchased_'+id).style.display = 'block';
		id_rec = id;
	}else {
		document.getElementById('action_purchased_'+id).style.display = 'none';
	}
}

function purchase_flight(id) {
	var price = document.getElementById("purchase_price_"+id).value;
	var pnr   = document.getElementById("pnr_"+id).value;
	if(price == '') {
		document.getElementById('error_text1_'+id).innerHTML = "Price field cannot be left blank";
		return false;
	}
	http_request = get_xhttp_object();
	var url = '/cgi-bin/b2c-v3/Track_account.cgi?&action=purchase&price='+ price + '&id=' + id_rec + '&pnr=' + pnr;
	http_request.open('GET',url,false);
    http_request.send(null);
	if ( http_request.status == 200 ) {
		window.location.href = '/cgi-bin/b2c-v3/Track_account.cgi';
	}else {
      alert( 'Sorry, An error occurred. Please try again later.' );
   	  return false;
   	}
}
function close_frame(id) {
	document.getElementById(id).style.display="none";
}

function similar_alert(id) {
	http_request = get_xhttp_object();
	var url = '/cgi-bin/b2c-v3/Track_account.cgi?action=similar&id=' + id;

	http_request.open('GET',url,false);
    http_request.send(null);
	if ( http_request.status == 200 ) {
		var response = http_request.responseText;
		window.location.href = response;
	}else {
       alert( 'Sorry, An error occurred. Please try again later.' );
   	   return false;
   	}
}
function scrollwindow(){
	var scrOfX = 0, scrOfY = 0;
	if( typeof( window.pageYOffset ) == 'number' ) {
		//Netscape compliant
		scrOfY = window.pageYOffset;
		scrOfX = window.pageXOffset;
	} else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
		//DOM compliant
		scrOfY = document.body.scrollTop;
		scrOfX = document.body.scrollLeft;
	} else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
		//IE6 standards compliant mode
		scrOfY = document.documentElement.scrollTop;
		scrOfX = document.documentElement.scrollLeft;
	}
	return scrOfY;
}
function ft_signout() {
	http_request = get_xhttp_object();
	var url = '/cgi-bin/b2c-v3/ft_signout.cgi?session='+pd_session;

	http_request.open('GET',url,false);
    http_request.send(null);
    if ( http_request.status == 200 ) {
		window.location.href = "/index.shtml";
	}else {
		window.location.href = "/index.shtml";
	}
}
function get_xhttp_object(){
	var http_request = false;
    if (window.XMLHttpRequest)
	{ //all but IE
        http_request = new XMLHttpRequest();
        if (http_request.overrideMimeType)
		{
            http_request.overrideMimeType('text/xml');
        }
    }
	else if (window.ActiveXObject)
	{ //IE
        try {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                http_request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
        }
    }
	if (!http_request)
	{
        alert("http_request could not be established.");
        return false;
    }
	return http_request;
}
function deleteCookie_fnquery() {
	var cookie_date = new Date ( );  // current date & time
	cookie_date.setTime(cookie_date.getTime() - 1);
  	document.cookie = "fn_query=;path=/;expires=" + cookie_date.toGMTString();
  	document.cookie = "FMB2C_SESSID=;path=/;expires=" + cookie_date.toGMTString();
  	document.cookie = "bk_id=;path=/flights/;expires=" + cookie_date.toGMTString();
  	document.cookie = "bk_id=;path=/;expires=" + cookie_date.toGMTString();
}

