function TestObligatoire(Ctrl) {
  var k;
  if (Ctrl.value == "") {
    ValidatePrompt (Ctrl, "Veuillez remplir tous les champs obligatoires.");	
	return (false);}
  for (k=0;k<Ctrl.value.length;k++) {
    if (!(Ctrl.value.charAt(k)==' ')) return (true);}
  Ctrl.value = '';
  ValidatePrompt (Ctrl, "Veuillez remplir tous les champs obligatoires.");
  return (false);}
function TestText(Ctrl) {
  var k;
  if (Ctrl.value == "") {
    return (false);}
  for (k=0;k<Ctrl.value.length;k++) {
    if (!(Ctrl.value.charAt(k)==' ')) return (true);}
  Ctrl.value = '';
  return (false);}
function ComboObligatoire(Ctrl) {
  if (Ctrl.selectedIndex == 0) {
    ValidatePrompt (Ctrl, "Veuillez remplir tous les champs obligatoires.");
	return (false);} 
  else
    return (true);}
function RadioObligatoire(Ctrl){
  for (i=0;i<Ctrl.length;i++){
    if (Ctrl[i].checked == true){
      return (true);}}
  alert("Veuillez cocher une case pour chaque question.");
  return (false);}
function CompareDate(Ctrl,a,b,c,d) {
  var from_date = b + a;
  var to_date = d + c;
  if(parseFloat(from_date)>parseFloat(to_date)){
    ValidatePrompt (Ctrl,"L'ordre des dates est erroné.");
    return (false);}
  return (true);}
function CompareDate2(Ctrl,a,b,c,d,e,f) {
  var from_date = c + b + a;
  var to_date = f + e + d;
  if(parseFloat(from_date)>parseFloat(to_date)){
    ValidatePrompt (Ctrl,"L'ordre des dates est erroné.");
    return (false);}
  return (true);}
function CompareDate3(Ctrl,msg,a,b,c,d,e,f) {
  var from_date = c + b + a;
  var to_date = f + e + d;
  if(parseFloat(from_date)>parseFloat(to_date)){
    ValidatePrompt (Ctrl,msg);
    return (false);}
  return (true);}
function TestCombo(Ctrl) {
  if (Ctrl.selectedIndex == 0) {
    return (false);} 
  else
    return (true);}
function ValidatePrompt (Ctrl, PromptStr) {
  alert (PromptStr);
  Ctrl.focus();
  return;}
function IfConfirm(msg) {
  agree = confirm(msg);
  if (agree) {
    return (true)}
  return (false)}
function IsNumeric(Ctrl){
  var strValidChars = "0123456789.-";
  var strChar;
  var blnResult = true;
  for (i = 0; i<Ctrl.value.length && blnResult == true; i++){
    strChar = Ctrl.value.charAt(i);
    if (strValidChars.indexOf(strChar) == -1){
      blnResult = false;}}
  if (blnResult == false){
    ValidatePrompt (Ctrl,"Cette valeur doit être numérique.");
    return false;}
  return true;}
function IsInteger(Ctrl,min,max){
  var strValidChars = "0123456789";
  var strChar;
  var blnResult = true;
  for (i = 0; i<Ctrl.value.length && blnResult == true; i++){
    strChar = Ctrl.value.charAt(i);
    if (strValidChars.indexOf(strChar) == -1){
      blnResult = false;}}
  if (blnResult == false){
    ValidatePrompt (Ctrl,"Cette valeur doit être numérique.");
    return false;}
  if ((Ctrl.value<min)||(Ctrl.value>max)){
    ValidatePrompt (Ctrl,"Cette valeur doit être comprise entre "+min+" et "+max);
    return false;}
  return true;}
function IfConfirmLink(msg) {
  agree = confirm(msg);
  if (agree) {
    return (true)}
  return (false)}
function CheckDate(dd,mm,yyyy) {
  var day = dd.value;
  var month = mm.value;
  var year = yyyy.value;
  var bissextile = 0;
  var err = 0;
  if ((year % 4 == 0) || (year % 100 == 0) || (year % 400 == 0)) {
    bissextile = 1;}
  if ((month == 2) && (bissextile == 1) && (day > 29)) {
    err = 1;}
  if ((month == 2) && (bissextile != 1) && (day > 28)) {
    err = 1;}
  if (((month == 1) || (month == 3) || (month == 5) || (month == 7) || (month == 8) 
        || (month == 10) || (month == 12)) && (day > 31)) {
    err = 1;}
  if (((month == 4) || (month == 6) || (month == 9) || (month == 11)) && (day > 30)) {
    err = 1;}    
  if (err != 0) {
    ValidatePrompt (dd, "Le format de date est incorrect.");
	   return (false);}   
  return true;}
function CheckDate2(Ctrl) {
  var err = 0;
  var day = Ctrl.value.substring(0,2);
  var month = Ctrl.value.substring(3,5);
  var year = Ctrl.value.substring(6,10);
  var bissextile = 0;
  if (Ctrl.value.length!=10) err=1;
		if ((Ctrl.value.substring(2,3)!="/")||(Ctrl.value.substring(5,6)!="/")) err=1;
  if ((year % 4 == 0) || (year % 100 == 0) || (year % 400 == 0)) {
    bissextile = 1;}
  if ((month == 2) && (bissextile == 1) && (day > 29)) {
    err = 1;}
  if ((month == 2) && (bissextile != 1) && (day > 28)) {
    err = 1;}
  if (((month == 1) || (month == 3) || (month == 5) || (month == 7) || (month == 8) 
        || (month == 10) || (month == 12)) && (day > 31)) {
    err = 1;}
  if (((month == 4) || (month == 6) || (month == 9) || (month == 11)) && (day > 30)) {
    err = 1;}    
  if (err != 0) {
    ValidatePrompt (Ctrl, "Le format de date est incorrect. [jj/mm/aaaa]");
	   return (false);}   
  return true;}
function OpenWindow(url,name,features) {
  window.open(url,name,features);}
function CheckAlphaNum(Ctrl,min,max) {
  var valid = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
  var ok = "yes";
  var temp;
  if ((Ctrl.value.length<min) || (Ctrl.value.length>max)){
    ok = "no";}
  for (var i=0; i<Ctrl.value.length; i++) {
    temp = "" + Ctrl.value.substring(i, i+1);
    if (valid.indexOf(temp) == "-1") ok = "no";}
  if (ok == "no") {
    ValidatePrompt (Ctrl,"Veuillez encoder entre "+min+" et "+max+" caractères alphanumériques.");
    return false;}
  return true;}
function TestEmail(Ctrl){
  if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(Ctrl.value)){
    return (true)}
  ValidatePrompt (Ctrl, "Le format d'adresse e-mail est incorrect.");
  return (false)}
function JumpMenu(selObj,restore){
  eval("parent.location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;}

