/*--------------------------------------------------------------------------------------------------------------*/
function clear_field(fl, defaultvalue){
	if (fl.value == defaultvalue){
		fl.value = "";
	}
}
function blur_field(fl,defaultvalue){
   if(fl.value == ""){
		fl.value=defaultvalue;
   	}
}

function test_email(email){
        var x= /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	var res = x.test(email.value);
        if(!res) {
                alert('Please input right email!');
                return false;
        }
        return true;
}


function test_number(str){
        var x= /^([0-9])+$/;
	var res = x.test(str);
        if(!res) {
                return false;
        }
        return true;
}


function edit_str(fl){
        var str = fl.value;
        str = str.replace(/&/g,"**am**");
        str = str.replace(/=/g,"**eq**");
	str = str.replace(/\+/g,"**pl**");
        return str;
}


///////////////////////////////////////////////////////////////////////////
var ajax = null;
function check_form(form)
{
        if(test_email(form.email)){
               var warning="Error:\n";
               if(form.fname.value=="First name:") warning+="Please,input First name\n";
               if(form.lname.value=="Last name:") warning+="Please,input Last name\n";
				if(form.text.value=="Message:") warning+="Please,input message\n";
                if(warning=='Error:\n'){
                    return true;
                }else{
                        alert(warning);
                        return false;
                }
                return true;
        }else return false;
}

var Try = {
  these: function() {
    var returnValue;
    for (var i = 0; i < arguments.length; i++) {
      var lambda = arguments[i];
      try {
        returnValue = lambda();
        break;
      } catch (e) {}
    }
    return returnValue;
  }
}

function get_ajax(){
    return Try.these(
      function() {return new XMLHttpRequest()},
      function() {return new ActiveXObject('Msxml2.XMLHTTP')},
      function() {return new ActiveXObject('Microsoft.XMLHTTP')}
    ) || false;
}

////////////////////////////////TOTALLY USEFUL//////////////////////////////
function load_pos_doc(posData,type){
	ajax=get_ajax();
	if(type=="contact"){
		ajax.onreadystatechange = form_assignment;
		ajax.open('POST','contact.php',true);
	}else if(type=="confirm"){
		ajax.onreadystatechange = form_assignment_confirm;
		ajax.open('POST','confirm.php',true);
	}else if(type=="subscribe"){
		ajax.onreadystatechange = form_assignment_subscribe;
		ajax.open('POST','subscribe.php',true);
	}else if(type=="trial"){
		ajax.onreadystatechange = form_assignment_trial;
		ajax.open('POST','contact.php',true);
	}
   ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
   ajax.send("&"+posData);
}

function edit_str(fl){
        var str = fl.value;
        str = str.replace(/&/g,"**am**");
        str = str.replace(/=/g,"**eq**");
		str = str.replace(/\+/g,"**pl**");
        return str;
}

function form_assignment_subscribe(){
	if( ajax.readyState==4 ){
	     el = document.getElementById('sub_result');
	  	 el.style.display='';
	     el.innerHTML = ajax.responseText;
	     document.subscribeForm.reset();
	}
}

function send_post_subscribe(form, param) {
	if(test_email(form.subscribe_email)){
		var str = edit_str(form.subscribe_email);
		var stuff = "subscribe_email="+str+"&param="+param;
		load_pos_doc(stuff, "subscribe");
	}else{
		return false;
	}

}
function form_assignment(){
	if( ajax.readyState==4 ){
	//	alert(ajax.responseText);
	     el = document.getElementById('email_success');
	     el.style.display='';
	     el.innerHTML = ajax.responseText;
	     document.cont_form.reset();
	}
}

function form_assignment_trial(){
	if( ajax.readyState==4 ){
	//	alert(ajax.responseText);
	     el = document.getElementById('trial_success');
	     el.style.display='';
	     el.innerHTML = ajax.responseText;
	     document.trial_form.reset();
	}
}

function edit_str(fl){
        var str = fl.value;
        str = str.replace(/&/g,"**am**");
        str = str.replace(/=/g,"**eq**");
        str = str.replace(/\+/g,"**pl**");
        return str;
}

function send_pos(form) {
	if(test_email(form.email)){
		var str1 = edit_str(form.fname);
        var str2 = edit_str(form.lname);
        var str3 = edit_str(form.country);
        var str4 = edit_str(form.phone);
        var str5 = edit_str(form.email);
        var str6 = edit_str(form.text);

		var stuff = "fname="+str1+"&lname="+str2+"&country="+str3+"&phone="+str4+"&email="+str5+"&text="+str6;

		load_pos_doc(stuff, "contact");
	}
}

function send_trial(form) {
	if(test_email(form.email)){
		var str1 = edit_str(form.fname);
        var str2 = edit_str(form.lname);
        var str3 = edit_str(form.hours);
        var str4 = edit_str(form.minutes);
        var str5 = edit_str(form.phone);
        var str6 = edit_str(form.interest);
        var str7 = edit_str(form.location);
        var str8 = edit_str(form.email);
        var str9 = edit_str(form.text);

		var stuff = "fname="+str1+"&lname="+str2+"&hours="+str3+"&minutes="+str4+"&phone="+str5+"&interest="+str6+"&location="+str7+"&email="+str8+"&text="+str9;

		load_pos_doc(stuff, "trial");
	}
}