/**
 * iXARM
 *
 * Copyright  Ixarm.com 2004
 * Copyleft   Spip.net
 * Auteur     Linagora
 *
 */

var img_dir = "NAVPICS/ixarm/";

// {{{ defz

logo_ixarm_fr = new Image;
logo_ixarm_roll_fr = new Image;
titre_sec_arm_fr = new Image;
titre_sec_arm_roll_fr = new Image;
titre_tra_def_fr = new Image;
titre_tra_def_roll_fr = new Image;
titre_mar_opp_fr = new Image;
titre_mar_opp_roll_fr = new Image;
logo_ixarm_en = new Image;
logo_ixarm_roll_en = new Image;
titre_sec_arm_en = new Image;
titre_sec_arm_roll_en = new Image;
titre_tra_def_en = new Image;
titre_tra_def_roll_en = new Image;
titre_mar_opp_en = new Image;
titre_mar_opp_roll_en = new Image;

logo_ixarm_fr.src         = img_dir + "logo_ixarm_fr.gif";
logo_ixarm_roll_fr.src    = img_dir + "logo_ixarm_roll_fr.gif";
titre_sec_arm_fr.src      = img_dir + "titre_sec_arm_fr.gif";
titre_sec_arm_roll_fr.src = img_dir + "titre_sec_arm_roll_fr.gif";
titre_tra_def_fr.src      = img_dir + "titre_tra_def_fr.gif";
titre_tra_def_roll_fr.src = img_dir + "titre_tra_def_roll_fr.gif";
titre_mar_opp_fr.src      = img_dir + "titre_mar_opp_fr.gif";
titre_mar_opp_roll_fr.src = img_dir + "titre_mar_opp_roll_fr.gif";
logo_ixarm_en.src         = img_dir + "logo_ixarm_en.gif";
logo_ixarm_roll_en.src    = img_dir + "logo_ixarm_roll_en.gif";
titre_sec_arm_en.src      = img_dir + "titre_sec_arm_en.gif";
titre_sec_arm_roll_en.src = img_dir + "titre_sec_arm_roll_en.gif";
titre_tra_def_en.src      = img_dir + "titre_tra_def_en.gif";
titre_tra_def_roll_en.src = img_dir + "titre_tra_def_roll_en.gif";
titre_mar_opp_en.src      = img_dir + "titre_mar_opp_en.gif";
titre_mar_opp_roll_en.src = img_dir + "titre_mar_opp_roll_en.gif";

// }}}
// {{{ doStrCheck

/**
 * cette fonction valide un test de remplissage texte
 */

function doStrCheck(obj, name) {
  if (obj.value == '') {
    alert(name);
    obj.focus();
    return false;
  } 
  // alert(name+' OK');
  return true;
}

// }}}
// {{{ doSelectCheck

/**
 * cette fonction valide un test de selection
 */

function doSelectCheck(obj, name) {
  if (obj.value == -1) {
    alert(name);
    obj.focus();
    return false;
  } 
  // alert(name+' OK');
  return true;
}

// }}}
// {{{ doCpCheck

function doCpCheck(obj, name) {
  var re  = /[^\w+]/gi ;
  res = obj.value.replace(re, "");

  if(res.length==0) {
    alert(name);
    obj.focus();
    return false;  
  } else {
    return true;
  }
}

// }}}
// {{{ doNoNumbers

function doNoNumbers(obj, name) {
  var re  = /[^\d+]/gi ;
  res = obj.value.replace(re, "");

  if(res.length!=0) {
    alert(name);
    obj.focus();
    return false;  
  } else {
    return true;
  }
}
// }}}
// {{{ doOnlyNumbers

function doOnlyNumbers(obj, name) {
  if ((isNaN(parseInt(obj.value))) && obj.value != "") { 
    alert(name);
    obj.focus();
    return false;  
  } else {
    return true;
  }
}
// }}}
// {{{ doPdfDocCheck 

/**
 * cette fonction valide un test
 */

function doPdfDocCheck(obj, name) {
  var re  = /pdf/i ;
  var re2 = /doc/i ;
  var re3 = /rtf/i ;
  var re4 = /sxw/i ;

  if (obj.value == '') {
    alert(name);
    obj.focus();
    return false;
  } 
  if ( obj.value.match(re)   == null 
      && obj.value.match(re2) == null
      && obj.value.match(re3) == null
      && obj.value.match(re4) == null
    ) {
    alert(name);
    obj.focus();
    return false;
  }

  // alert(name+' OK');
  return true;
}


// }}}
// {{{ doEmailCheck

function doEmailCheck(obj, name) {
  var regExpEmailAdress=/^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$/g;

  if (obj.value == '') {
    alert(name);
    obj.focus();
    return false;
  } 
  if ( obj.value.match(regExpEmailAdress) == null) {
    alert(name);
    obj.focus();
    return false;
  }

  // alert(name+' OK');
  return true;

}

// }}}
// {{{ doPhoneCheck

/**
 * cette fonction valide un numéro de téléphone
 */

	function doPhoneCheck( obj, alertstr ) {
		var clrPhone   = /[ \.\-\,]/g;
		var notPhone   = /[^()0-9]/g;
		var clrBrkts   = /\([^()]+\)/;
		var missngBrkt = /[^(]*\)|\([^)]*/;
		var lengthReg  = /[()0-9]/g;
		var numstr = obj.value;
		var precistr;
		var numLen;
		
		numstr = numstr.replace( /^\+/  ,  "00" );		//  +33 ->  0033
		numstr = numstr.replace( /^\(\+/, "(00" );		// (+33 -> (0033
		numstr = numstr.replace( clrPhone ,'');			// suppression des caractères de formatage (espaces,points,tirets,virgules)

		if ( numstr.match( notPhone ) != null ) {									// vérif caractères restants
			precistr = '<:xha_form_tel_invalid:> "'+numstr.match(notPhone)+'"';
		} else if ( numstr.replace( clrBrkts ,'').match( missngBrkt ) != null ) {	// vérif parenthèse manquante
			precistr = "<:xha_form_tel_parenthese:>";
		} else {
			numLen = numstr.match( lengthReg ).length;								// vérif 6 à 20 caractères
			if ( numLen<6 || numLen>20 ) {
				precistr = "<:xha_form_tel_longueur:>";
			} else {																// sinon c'est Ok
				obj.value = numstr;			// correction dynamique
				return true;
			}
		}

	    alert( alertstr +"\n( "+ precistr +" )" );		// traitement de l'erreur
	    obj.focus();
	    return false;
	}

// }}}
// {{{ popwin

/**
 * cette fonction génère une fenêtre popup
 */

function popwin(mylink, windowname, x, y) {

  if (! window.focus)
    return true;
  var href;

  if (typeof(mylink) == 'string')
    href=mylink;
  else
    href=mylink.href;
  options="height="+y+",width="+x+",scrollbars=no,resizable=yes";
  window.open(href, windowname, options);
  return false;
}       

// }}}
// {{{ swapImg

function swapImg(x, y) {
  document.images[x].src=eval(y+'.src');
}

// }}}
// {{{ confirmLink

function confirmLink(theLink, theQuery) {

    var is_confirmed = confirm(theQuery+' ?');
    if (is_confirmed) {
        theLink.href += '&is_js_confirmed=1';
    }

    return is_confirmed;

} // end of the 'confirmLink()' function


// }}}
// {{{ modifyContact

/**
 * cette function met à jour une suite de formulaire contact
 * @param object  obj   l'objet dans lequel modifier
 * @param int     idx   l'index a inserer
 * @param int     start la position du 1er element dans l'ordre du formulaire
 */

function modifyContact(obj, idx, start) {
  for (i = 0; i < 6; i++) {
    p = i+start;
    obj.elements[p].value = ctc[idx][i];
  }
}

// }}}
// {{{ modifyContactLarge

/**
 * cette function met à jour une suite de formulaire contact
 * @param object  obj   l'objet dans lequel modifier
 * @param int     indus l'id industriel a pointer
 * @param int     idx   l'index a inserer
 * @param int     start la position du 1er element dans l'ordre du formulaire
 */

function modifyContactLarge(obj, indus, idx, start) {
  for (i = 0; i < 6; i++) {
    p = i+start;
    obj.elements[p].value = ctc[indus][idx][i];
  }
}

// }}}
// {{{ checkFormAchat


/**
 * Cette fonction gère les champs obligatoire avec les controles de la partie achat de l'imb
 * @param form Formulaire ou se trouve les champs a controler
 * @return boolean true: Pas d'erreur / false : Erreur avec Popup
 */

function checkFormAchat(form){
  
}

// }}}
// {{{ chake

function chake(indus, obj, start) {
//  obj.options = null; // new Array();
  for (i in ctc[indus]) {
    obj.options[i] = new Option(ctc[indus][i][1]+' '+ctc[indus][i][0], i);
  }
  modifyContactLarge(document.pa, indus, -1, start);
}

// }}}
// {{{ matchRegularExpression

function matchRegularExpression(valeur, regularExpression) {
		var resultat = valeur.match(regularExpression);
		if (resultat!=null && resultat.length==1) 
      return true;
		else 
      return false;
}

// }}}
// {{{ checkPassOk

function checkPassOk(obj, warning) {
  var re  = /[^\w+]/gi ;
  var re2 = /[^\d+]/gi ;
  var re3 = /[^\W+]/gi ;
  donot = false;

  result1 = obj.replace(re, "");
  result2 = result1.replace(re2, ""); // only digits
  result3 = obj.replace(re3, "");

  if (obj.lenght < 9) { donot = true; }
  if (result2.length < 2) { donot = true; }
  if (result3.length < 1) { donot = true; }

  if (donot == true) {
    alert(warning);
    return false;
  } else {
    return true;
  }
}

// }}}
