You are not logged in.
Pages: 1
Heu je m'excuse à l'avance de mon ignorance ou peut etre du sujet qui a dejà était abordé mais j'ai cherché sans succès.
Je me demandais juste à quoi servait l'option AJAX (oui / non ) j'ai pas trop vu de différence en cochant ou "oui" ou "non" ...
Quelqu'un saurait il ?
Offline
Offline
tu as lu l'aide de la console centrale ?
J'ai vu çà :
- Utiliser AJAX : permet d'activer ou non le nouveau système AJAX de GLPI (gestion des recherches, des champs textes).
Mais concrètement çà m'a rajouté quoi comme système de recherche j'ai un champ en plus ?
Offline
son ça permet d'avoir l'auto completion dans les boites de dialogues.
de plus , quand une boite de dialogue propose plus de x ( par défaut 25) choix possible, une nouvelle boite s'ouvre a cotés, permettant de mettre les premiéres lettres de ce que vous recherchez. Du coup , le choix dans la boite de dialogue se restreint à ce qui commence par les lettres que vous avez indiqué...
Pour info le caractére étoile * est un joker qui permet de tout afficher.
Plateforme :
OS : Windows 2003 Sp1 / logiciel de décompactage : Winzip / Navigateurs : Internet Explorer 6sp1 / firefox 1.5
Installation : Package Ocs NG RC3 - XAMPP version 1.5.1
Serveur : Apache 2.0.55 / Base : 5.0.18-nt / Langage : PHP 5.1.1 / PhpMyAdmin 2.7.0-pl1
Offline
Bonjour,
Après avoir activé l'option "Autocompletion des champs textes avec AJAX", je n'ai constaté aucun changement par rapport à la seule activation de l'option "Utiliser Ajax".
Exemple, dans Assistance/Helpdesk en tant que super-utilisateur 'glpi', quand je commence à saisir les premières lettre d'un Auteur, le sablier apparait, la liste change de longueur (normal puisqu'elle est modifiée) mais l'entrée par défaut de la liste (qui est le login 'glpi') n'est pas modifiée dynamiquement. Après avoir saisit les première lettres, il me faut ensuite cliquer sur la liste déroulante pour séléctionner le résultat. Est-ce normale ?
Une autocompletion de ce type n'aurait pas été plus pratique ?
Merci ^^
OS: Linux Fedora Core 5
Serveur services: Apache 2.2.0 / MySQL 5.0.18 / PHP 5.1.2
Browser: Firefox 1.5 Décompression: tar
GLPI 0.65 & OCS Inventory NG RC2
Offline
Offline
Le code est par ailleurs très bien détaillé ici.
Enfin, ça répond pas à ma question initiale =p
Je regarderais ça plus en détail demain ^^
Last edited by Neobugs (2006-04-27 02:20:28)
OS: Linux Fedora Core 5
Serveur services: Apache 2.2.0 / MySQL 5.0.18 / PHP 5.1.2
Browser: Firefox 1.5 Décompression: tar
GLPI 0.65 & OCS Inventory NG RC2
Offline
ca fait de l'autocompletion vu que ca rempli le select.
L'autocompletion c'est sur les champs textes purs style numéro de série etc etc
MoYo - Julien Dombre - Association INDEPNET
Contribute to GLPI : Support Contribute References Freshmeat
Offline
Eh ben je vais voir si j'ai le temps de bosser sur une autocomplétion comme citée, ça serait quand même plus sympa.
Sinon j'ai utilisé la fonction fillidfield en javascript dans une fenetre type popup me permettant de faire des recherches d'utilisateurs dans mon annuaire ldap et ça marche impec. Concrètement, c'est le même résultat que sous la version 6 lors de la recherche d'ordinateurs pour récupérer automatiquement dans la fenetre principale l'ID de l'ordinateur, sauf qu'il s'agit là de tous les champs d'information utilisateurs. J'avais déjà l'annuaire en php de créé, ce fut très rapide de l'intégrer. (J'ai donc dû modifier le fichier glpi/users/functions.php pour utiliser cette fonctionnalité dans l'ajout et la modification d'utilisateur et le fichier glpi/tracking/functions.php pour l'utiliser dans la fenetre d'helpdesk pour le mail). Si ça intéresse quelqu'un je peux détailler...
OS: Linux Fedora Core 5
Serveur services: Apache 2.2.0 / MySQL 5.0.18 / PHP 5.1.2
Browser: Firefox 1.5 Décompression: tar
GLPI 0.65 & OCS Inventory NG RC2
Offline
Offline
Dans glpi/users/functions.php, j'ai ajouté dans la function showUserform() l'image d'aide avec le lien popup suivant, pointant vers la page de recherche ldap:
<img src=\"../pics/aide.png\" style='cursor:pointer;' alt=\"help\"onClick=\"window.open('../ldapannu/index.php?action=search2','Help','scrollbars=1,resizable=1,width=800,height=300')\">
Ca donne par exemple, ligne 134, le remplacement de :
echo "<tr><th colspan='2'>".$lang["setup"][57]." : " .$user->fields["name"]."</th></tr>";
par:
echo "<tr><th colspan='2'>".$lang["setup"][57]." : <img src=\"../pics/aide.png\" style='cursor:pointer;' alt=\"help\"onClick=\"window.open('../ldapannu/index.php?action=search2','Help','scrollbars=1,resizable=1,width=800,height=300')\">" .$user->fields["name"]."</th></tr>";
Dans le fichier de résultat de ma recherche ldap, il faut intégrer le javascript:
<script language="javascript" type="text/javascript">
function fillidfield(Login,Nom,Phone,Uemail){
window.opener.document.forms["user_manager"].elements["name"].value = Login;
window.opener.document.forms["user_manager"].elements["realname"].value = Nom;
window.opener.document.forms["user_manager"].elements["phone"].value = Phone;
window.opener.document.forms["user_manager"].elements["email_form"].value = Uemail;
window.close();}
</script>
Chaque champs elements[""] permet de désigner le champ correspondant de la page principale (page d'ajout/modification d'utilisateurs dans GLPI donc) qui sera complété. "name", "realname", "phone" et "email_form" sont les noms de ces champs dans la page en question.
Appel à la fonction fillidfield dans le code. Chaque information retournée sera séparée par une virgule. Attention l'ordre est important. On voit ici que la première information qui sera retournée sera l'uid. Dans la fonction en javascript, elle sera représenté par "Login".
for ($i=0; $i<$info["count"]; $i++) {
echo "<tr onClick=\"fillidfield('".$info[$i]["uid"][0]."','".$info[$i]["cn"][0]."','".$info[$i]["telephonenumber"][0]."','".$info[$i]["mail"][0]."')\">";
echo "<td>".$info[$i]["cn"][0]."</td>";
if(strlen($info[$i]["mail"][0])){
echo "<td><a href=\"mailto:".$info[$i]["cn"][0]." <".$info[$i]["mail"][0].">\" title=\"".$info[$i]["mail"][0]."\">" .$info[$i]["mail"][0] . "</a></td>";
}else{
echo "<td></td>";
}
echo "<td>".$info[$i]["telephonenumber"][0]."</td>";
//echo "<td>".$info[$i]["mail"][0]." ".$info[$i]["mail"][1]." ".$info[$i]["mail"][2]."</td>";
}?>
Ce qui donnera :
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Annuaire LDAP</title>
<link rel="stylesheet" href="core.css" type="text/css" />
<link rel="stylesheet" href="template/default/style.css" type="text/css" />
<script type="text/javascript" src='script.js'></script>
</head>
<body>
<div id="contentPad">
<script language="javascript" type="text/javascript">
function fillidfield(Login,Nom,Phone,Uemail){
window.opener.document.forms["user_manager"].elements["name"].value = Login;
window.opener.document.forms["user_manager"].elements["realname"].value = Nom;
window.opener.document.forms["user_manager"].elements["phone"].value = Phone;
window.opener.document.forms["user_manager"].elements["email_form"].value = Uemail;
window.close();}
</script>
<h2>Resultats de la recherche</h2>
<ul class="nav">
<li><a href="?action=search">Recherche</a></li>
</ul>
</div>
<form method="get" action="/dev/cri/ldapannu/index.php?action=list">
<table class="listview">
<tr>
<td>
<select name="searchType">
<option value="quick">Nom ou prénom commence par...</option>
<option value="lastname">Nom commence par...</option>
<option value="firstname">Prénom commence par...</option>
<option value="email">Adresse email contient...</option>
<option value="any">Peu importe...</option>
</select>
</td>
<td><input type="text" name="search" value=""/></td>
<td colspan="2"><input type="submit" value="Rechercher" /></td>
<td colspan="2">1 contacts</td>
</tr>
<tr onClick="fillidfield('julien.bugaud','BUGAUD Julien','08 88 88 88 88','Julien.Bugaudatursustrasbgfr')"><td>BUGAUD Julien</td><td><a href="mailto:BUGAUD Julien <Julien.Bugaudatursustrasbgfr>" title="Julien.Bugaudatursustrasbgfr">Julien.Bugaudatursustrasbgfr</a></td><td>08 88 88 88 88</td>
</table>
</form>
J'ai tronqué le code pour un peu plus de lisibilité
[Edit: Censure des réfs personnelles]
Last edited by Neobugs (2007-04-17 11:38:56)
OS: Linux Fedora Core 5
Serveur services: Apache 2.2.0 / MySQL 5.0.18 / PHP 5.1.2
Browser: Firefox 1.5 Décompression: tar
GLPI 0.65 & OCS Inventory NG RC2
Offline
Pages: 1