// ---------------------------------
// Permet d'ouvrir une fenêtre popup
// ---------------------------------

function OuvrirPopup(page, nom, parametre)
{
  window.open(page, nom, parametre);
}

// -----------------------------------------------------------
// Permet de savoir s'il y a eu des modifications dans la page
// -----------------------------------------------------------

function CodeModification()
{
  document.forms[0].modifie.value='O'
}

// -----------------------------------------------------------
// Permet de synchroniser une listbox
// -----------------------------------------------------------

function select_listbox(listbox, valeur)
{
  i=0;
  while ((listbox.options[i].value != valeur && i < listbox.options.length - 1))
  {
    i++
  }
  if (listbox.options[i].value == valeur) { listbox.selectedIndex=i; }
}

// -----------------------------------------------------------
// Permet de retrouver la catégorie sur base du modele
// -----------------------------------------------------------

function find_category(partnumber)
{
  if (partnumber != '')
  {
    i=0;
    while (modele[0][i] != partnumber)
    {
      i++;
    }
    var sous_categorie_nr=modele[2][i];
    var constructeur=modele[3][i];
    document.forms[0].lib_modele.value=modele[1][i];
    i=0;
    while (sous_cat[0][i] != sous_categorie_nr)
    {
      i++;
    }
    var categorie_nr=sous_cat[2][i];
    document.forms[0].sous_categorie.value=sous_cat[1][i];
    document.forms[0].code_sous_categorie=categorie_nr;
    i=0;
    while (cat[0][i] != categorie_nr)
    {
      i++;
    }
    var categorie=cat[1][i];
    document.forms[0].categorie.value=categorie;
    document.forms[0].code_categorie=cat[0][i];
    i=0;
    while (cons[0][i] != constructeur)
    {
      i++;
    }
    document.forms[0].constructeur.value=cons[1][i];
    if (document.forms[0].categorie.value == "PC" || document.forms[0].categorie.value == "Server" || document.forms[0].categorie.value == "Printer")
    {
      if (document.forms[0].lg.value == 'FR')
      {
        document.forms[0].onglet_nom.value='Administratif:Localisation:Technique:Valider';
      }
      else
      {
        document.forms[0].onglet_nom.value='Administratief:Lokalisatie:Techniek:Valideren';
      }
      document.forms[0].onglet_url.value='onglet-administratif.pl:onglet-localisation.pl:onglet-technique.pl:onglet-valider.pl';
      document.forms[0].onglet_statut.value='on:off:off:off';
      document.forms[0].onglet_code_application.value='0:1:2:3';
    }
    else
    {
      if (document.forms[0].lg.value == 'FR')
      {
        document.forms[0].onglet_nom.value='Administratif:Localisation:Valider';
      }
      else
      {
        document.forms[0].onglet_nom.value='Administratief:Lokalisatie:Valideren';
      }
      document.forms[0].onglet_url.value='onglet-administratif.pl:onglet-localisation.pl:onglet-valider.pl';
      document.forms[0].onglet_statut.value='on:off:off';
      document.forms[0].onglet_code_application.value='0:1:3';
    }
    new_url('onglet-administratif.pl');
  }
}

// -----------------------------------------------------
// Renvoi la valeur de listbox de l'element sélectionné
// -----------------------------------------------------
function RenvoiValeur(champ, valeur)
{
  document.forms[0].elements[champ].value=valeur;
}

// ----------------------------------------------------------------------
// Génère l'url en fonction de l'onglet sur lequel l'utilisateur a cliqué
// ----------------------------------------------------------------------

function action(cgi_action,onoff)
{
  if (validation())
  {
    document.forms[0].deplacement.value='onglet';
    statut='';
    onglets=document.forms[0].onglet_nom.value;
    pos=onglets.indexOf(":");
    while ((pos != -1))
    {
      onglet=onglets.substr(0,pos);
      onglets=onglets.substr(pos + 1, onglets.length);
      if (onglet == onoff) { statut = statut + 'on:' } else { statut = statut + 'off:' }
      pos=onglets.indexOf(":");
    }
    if (onglets == onoff) { statut = statut + 'on' } else { statut = statut + 'off' }
    statut=statut.substr(0,statut.length);
    document.forms[0].onglet_statut.value=statut;
    new_url(cgi_action);
  }
}

function new_url(cgi_action)
{
  var parametres='';
  for (i=0; i<document.forms[0].length; i++)
  {
    parametres=parametres + '&' + document.forms[0].elements[i].name + '=';
    if (document.forms[0].elements[i].type == 'checkbox')
    {
      if (document.forms[0].elements[i].checked) { parametres=parametres + 'on' }
    }
    else
    {
      if ( document.forms[0].elements[i].type == 'select-one')
      {
        parametres=parametres + document.forms[0].elements[i].options[document.forms[0].elements[i].selectedIndex].value;
      }
      else
      {
        parametres=parametres + escape(document.forms[0].elements[i].value);
        //parametres=sauvevaleur(parametres);
        //alert(parametres);
      }
    }
  }
  window.location=cgi_action + '?' + parametres;
}


function Crypt(s)
{
  r='';
  for(i=0;i<s.length;i++)
  {
    n=s.charCodeAt(i);
    if (n>=8364) {n = 128;}
    r += String.fromCharCode( n - 3 );
  }
  return r;
}

function Protect(nom, domaine)
{
  var a, s, n;
  m='&#64;';
  a ="pdlowr=";
  d=unescape(m);
  var aro = nom + d + domaine;
  document.write('<a href='+ Crypt(a) + aro + '>');
  document.write(aro + '</a>');
}



//signsp=  "*+-./_@";
//function remplace(text,find,repl){
//  var found = text.indexOf(find);
//  var retVal= ""; var start = 0;
//  while(found != -1){
//    retVal +=text.substring(start,found) +repl;
//    start = found+find.length;
//    found =text.indexOf(find,start);
//  }
//  retVal +=text.substring(start,text.length);
//  return retVal;
//}

//function sauvevaleur(entree) {
//  for(var i=0;i<signsp.length;i++)
//    entree=remplace(entree,signsp.charAt(i),"\X"+i);
//  return entree;
//}

//function sortvaleur() {
//  var b=""+self.name;
//  for(var i=0;i<signsp.length;i++)
//    b=remplace(b,"\X"+i,signsp.charAt(i));
//  return b;
//}

function clavier_ie()
{ 
//  document.test.zone_clavier.value = "Code Touche= "
//                   + event.keyCode + ' Carac.= '
//                   + String.fromCharCode(event.keyCode);
//  if (event.keyCode == 13) return false else return true;
//  document.forms[0].key.value=event.keyCode;
}

function clavier_nn(e)
{
//  document.test.zone_clavier.value = "Code ASCII= "
//                    + e.which + ' Carac.= '
//                    + String.fromCharCode(e.which);
//  if (e.which == 13) return false else return true;
//  alert(e.which);
//  document.forms[0].key.value=e.which;
}

function touche()
{
//  if (!e) var e = window.event;
//	if (e.keyCode) code = e.keyCode;
//	else if (e.which) code = e.which;
//  code=event.keyCode;
//  alert(code);
//  return code;
}
  
