function printPage()
{
  if (window.print)
    window.print();
  else
    alert("Votre navigateur n'est pas supporté.\nPour utiliser cette fonction, vous devez faire une\nmise à jour de votre navigateur.");
}

function sendfriend() {
  var leftPos = (screen.availWidth - 480) / 2;
  var topPos = (screen.availHeight - 290) / 2;
  var options = 'width=480,height=290,left=' + leftPos + ',top=' + topPos;
  window.open('/sendfriend.php?page='+window.location, 'SendFriend', options);
}

function validate_form() {
  var valid = true;
  var message = '';
  if($F('prenom').strip() == '') {
    valid = false;
    message += "- le prénom est vide\n";
  }
  if($F('nom').strip() == '') {
    valid = false;
    message += "- le nom est vide\n";
  }
  if($F('email').strip() == '') {
    valid = false;
    message += "- le courriel est vide\n";
  } else {
    if(!/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,5})+$/.test($F('email'))) {
      valid = false;
      message += "- le courriel est invalide\n";
    }
  }
  if($F('message').strip() == '') {
    valid = false;
    message += "- le message est vide\n";
  }
  if(!valid) {
    alert("Veuillez corriger les problèmes suivants:\n\n"+message);
    return false;
  }
  return true;
}

function validateTipsForm() {
  var valid = true;
  var message = '';
  if($F('prenom').strip() == '') {
    valid = false;
    message += "- le prénom est vide\n";
  }
  if($F('nom').strip() == '') {
    valid = false;
    message += "- le nom est vide\n";
  }
  if($F('email').strip() == '') {
    valid = false;
    message += "- le courriel est vide\n";
  } else {
    if(!/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,5})+$/.test($F('email'))) {
      valid = false;
      message += "- le courriel est invalide\n";
    }
  }
  var tools = $('tipsForm').getInputs('checkbox', 'tools[]');
  var tools_checked = 0;
  tools.each(function(el){
    if(el.checked) {
      tools_checked++;
    }
  });
  if(tools_checked == 0) {
    valid = false;
    message += "- vous devez sélectionner au moins un outil\n";
  }
  if(!valid) {
    alert("Veuillez corriger les problèmes suivants:\n\n"+message);
    return false;
  }
  return true;
}

function changerCours() {
  if($('cours') && $F('cours')) {
    var r = /\/page\/(\d+)/;
    window.location.toString().match(r);
    window.location = '/page/'+RegExp.$1+'/'+$F('cours');
  }
}

function showInsc() {
  for(var i=2; i<=$F('nbInsc'); i++) {
    if($('insc'+i)) {
      $('insc'+i).setStyle({display: 'block'});
    }
  }
  for(var i=5; i>$F('nbInsc'); i--) {
    if($('insc'+i)) {
      $('insc'+i).setStyle({display: 'none'});
    }
  }
  var h = parseInt($('stufcontent').getStyle('height'));
  var oh = parseInt($('stufcontent').offsetHeight);
  if(oh > h) {
    h = oh;
  }
  $('content').setStyle({height: h+'px'});
  $('left').setStyle({height: h+'px'});
}

function validateInscriptionForm() {
  // On vérifie que la personne a bien choisi un cours et une session
  if($F('cours').strip() == '') {
    alert('Veuillez vous assurer que vous avez choisi un cours.')
    return false;
  }
  if($F('session').strip() == '') {
    alert('Veuillez vous assurer que vous avez choisi une session.')
    return false;
  }

  // On vérifie la première inscription
  var valid = true;
  var message = '';
  var block = $('inscPrincipale');
  var radios = block.getElementsBySelector('input.salutations');
  var radioChecked = false;
  radios.each(function(el){
    if(el.checked) {
      radioChecked = true;
    }
  });
  if(!radioChecked) {
    valid = false;
    message += "- vous devez choisir le sexe de la personne\n";
  }
  var inputs = block.getElementsBySelector('input.required');
  inputs.each(function(el){
    if($F(el).strip() == '') {
      valid = false;
      message += '- vous devez remplir le champ ' + el.readAttribute('textalert') + "\n";
    } else if(el.hasClassName('email')) {
      if(!/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,5})+$/.test($F(el))) {
        valid = false;
        message += "- le courriel est invalide\n";
      }
    }
  });
  if(!valid) {
    alert("Veuillez corriger les problèmes suivants dans la première inscription:\n\n"+message);
    return false;
  }

  // On vérifie les inscriptions subséquentes
  for(var i=2; i<=$F('nbInsc'); i++) {
    var valid_insc = true;
    var message_insc = '';
    var block_insc = $('insc'+i);
    var radios_insc = block_insc.getElementsBySelector('input.salutations');
    var radioChecked_insc = false;
    radios_insc.each(function(el){
      if(el.checked) {
        radioChecked_insc = true;
      }
    });
    if(!radioChecked_insc) {
      valid_insc = false;
      message_insc += "- vous devez choisir le sexe de la personne\n";
    }
    var inputs_insc = block_insc.getElementsBySelector('input.required');
    inputs_insc.each(function(el){
      if($F(el).strip() == '') {
        valid_insc = false;
        message_insc += '- vous devez remplir le champ ' + el.readAttribute('textalert') + "\n";
      } else if(el.hasClassName('email')) {
        if(!/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,5})+$/.test($F(el))) {
          valid_insc = false;
          message_insc += "- le courriel est invalide\n";
        }
      }
    });
    if(!valid_insc) {
      alert("Veuillez corriger les problèmes suivants dans la "+i+"ième inscription:\n\n"+message_insc);
      return false;
    }
  }

  // On vérifie l'adresse de facturation
  //if($('diffAddress').checked) {
    var valid = true;
    var message = '';
    var block = $('billAddress');
    var inputs = block.getElementsBySelector('input.required');
    inputs.each(function(el){
      if($F(el).strip() == '') {
        valid = false;
        message += '- vous devez remplir le champ ' + el.readAttribute('textalert') + "\n";
      } else if(el.hasClassName('email')) {
        if(!/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,5})+$/.test($F(el))) {
          valid = false;
          message += "- le courriel est invalide\n";
        }
      }
    });
    if(!valid) {
      alert("Veuillez corriger les problèmes suivants dans l'adresse de facturation:\n\n"+message);
      return false;
    }
  //}
  return true;
}

function validateInscriptionFormStep2() {
  if(!$('accepte').checked) {
    alert('Vous devez accepter les modalités et conditions avant de soumettre votre inscription.');
    return false;
  }
  if(!confirm("Votre inscription est sur le point d\'être envoyée.\nDésirez-vous continuer?")) {
    return false;
  } else {
    return true;
  }
}