function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}

function helpline(help)
{
	if(help == 'a')
	{
		document.formulaire.helpbox.value = '[b]text[/b]';
	}
	else if(help == 'b')
	{
		document.formulaire.helpbox.value = '[u]text[/u]';
	}
	else if(help == 'c')
	{
		document.formulaire.helpbox.value = '[i]text[/i]';
	}
	else if(help == 'd')
	{
		document.formulaire.helpbox.value = '[url]http://[/url] or [url="http://"]Site[/url]';
	}
	else if(help == 'e')
	{
		document.formulaire.helpbox.value = '[mail]mail@site.com[/mail]';
	}
	else
	{
		document.formulaire.helpbox.value = '';
	}
}

function add_balise(balise)
{
	document.formulaire.message.value +=balise;
}

function addsmile(smiley)
{
	document.formulaire.message.value +=" "+smiley+" ";
}

function controleOK() {
	if (trim(document.formulaire.author.value) == "") {
		alert ("Veuillez saisir un pseudo");
		document.formulaire.author.focus();
		return false;
	}
	if (trim(document.formulaire.email.value) == "") {
		alert ("Veuillez saisir une email");
		document.formulaire.email.focus();
		return false;
	}

	if (trim(document.formulaire.message.value) == "") {
		alert ("Veuillez saisir votre commentaire");
		document.formulaire.message.focus();
		return false;
	}

 var a=document.formulaire.email.value;
		testm = false ;
		for (var j=1 ; j<(a.length) ; j++) {
			if (a.charAt(j)=='@') {
				if (j<(a.length-4)){
					for (var k=j ; k<(a.length-2) ; k++) {
						if (a.charAt(k)=='.') testm = true;
						}
					}
				}
			}
		if (testm==false)	{
			alert('Votre adresse e-mail est incorrecte.');
			document.formulaire.email.focus();
			return false ;
		}


	return true;	
}
	 
function getXhr(){
  var xhr = null; 
	if(window.XMLHttpRequest) // Firefox et autres
	   xhr = new XMLHttpRequest(); 
	else if(window.ActiveXObject){ // Internet Explorer 
	   try {
                xhr = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                xhr = new ActiveXObject("Microsoft.XMLHTTP");
            }
	}
	else { // XMLHttpRequest non supporté par le navigateur  
	   xhr = false; 
	} 
  return xhr
}

function verifCode(form){
	var xhr = getXhr();
	if (!xhr)
	{
    return true;
  }
   
	var code = form.elements['code'].value;
	var verifcode = form.elements['codeverif'].value;
	
	var url = "includes/verifCode.php?code="+code+"&verifcode="+verifcode;
	xhr.open("GET",url,false);
	xhr.send(null);
	
	if(xhr.responseText == 'valid')
	{
    return true;
  }
  else
  {
    return false;
	}
}

function EHide(element)
{
  element.style.display = "none";
}

function EDisp(element)
{
  element.style.display = "inline";
}

function form_sign(form)
{
  var imgloader = document.getElementById('imgloader');
  var error_code = document.getElementById('error_code');
  var error_message = document.getElementById('error_message');
  var error_author = document.getElementById('error_author');
  var in_message = form.elements['in_message'];
  var in_author = form.elements['in_author'];
  
  EDisp(imgloader);
  submit=true;

  if (verifCode(form))
  {
    EHide(error_code);
  }
  else
  {
    submit=false;
    EDisp(error_code);
    form.elements['code'].focus();
  }
  if (trim(in_message.value) == "")
  {
    submit=false;
    EDisp(error_message);
    in_message.focus();
  }
  else
  {
    EHide(error_message);
  }
  if (trim(in_author.value) == "")
  {
    submit=false;
    EDisp(error_author);
    in_author.focus();
  }
  else
  {
    EHide(error_author);
  }

  EHide(imgloader); 
  
  return submit;
}

function form_notif(form,book_id,forced)
{
  var imgloader = document.getElementById('imgloader');
  var error_span = document.getElementById('error');
  var sent_span = document.getElementById('sent');
  var email = form.elements['email'];
  var xhr = getXhr();
  var url = "notif.php?id="+book_id+"&email="+email.value;
  if (forced)
  {
    url = url+"&retry=1";
  }
  
  xhr.onreadystatechange = function()
  {
    if(xhr.readyState==4) 
    {
      EHide(imgloader);
      if(trim(xhr.responseText) == "")
      {
        EHide(error_span);
        EDisp(sent_span);
      }
      else
      {
        EHide(sent_span);
        EDisp(error_span);
        error_span.innerHTML=xhr.responseText;
      }
    }
  };
  
  EDisp(imgloader);

	xhr.open("GET",url,true);
	xhr.send(null); 
  
  return false;
}