Support #8107
fermé
Utilisation d'un item de userInfos comme valeur par défaut dans un formulaire
Ajouté par Pierre TEISSONNIERE il y a plus de 8 ans.
Mis à jour il y a plus de 3 ans.
Votre version de Silverpeas:
5.15.3
Description
Bonjour,
Dans le bloc <userInfos>, j'ai défini un item de type JDBC (parce que le listbox ne peut pas être utilisé). Mon item s'appelle par exemple vehiculePrefere. Je souhaiterai qu'ensuite dans un formulaire l'item vehiculeSouhaite (qui s'appuie sur les même paramètres jdbc) mette par défaut la valeur de vehiculePrefere. Est-ce possible ?
Merci.
- Statut changé de New à Feedback
C'est possible avec une surcouche HTML dans le formulaire et avec du Jquery permettant de manipuler ta liste.
J'ai la surcouche HTML. Est-ce que tu aurais des exemples de code ?
bon.. on a pas d'exemple de cela, car nous n'avons encore jamais testé la récupération des données des infos personnelles de l'utilisateur
dans une surcouche html.
Autre solution, passer pas un item caché dans le formulaire, valorisé (via javascript ou jquery) avec la valeur choisie par l'utilisateur.
Ca pourrait etre une exemple de ce type :
$("#vehiculeSouhaite").val(#vehiculePrefere.val());
Bonjour David,
Ok pour la couche HTML. Par contre, est-ce que tu aurais la partie à mettre dans le descripteur XML du workflow ? Je ne trouve pas d'exemple dans la doc. Je ne pense pas qu'il faille utiliser ${instance.vehiculePrefere} ou ${folder.vehiculePrefere} étant donné que c'est un userInfo.
Bon j'ai fais quelques tests (les champs sont de type texte pour simplifier mes tests).
1. la surcouche HTML n'est pas prévue pour récupérer les informations personnelles.
2. Pour la solution 2, il faut déclarer l'item caché dans le dossier et le mapper avec le champ des infos personnelles de l'utilisateur.
<item name="vehiculeSouhaite_hidden" computed="false" mapTo="vehiculePrefere">
<label role="default" lang="default">véhicule souhaité caché</label>
<type>text</type>
<readonly>false</readonly>
</item>
Dans la surcouche HTML :
<script language="JavaScript" type="text/javascript">
//Utilisation de la librairie JQuery
$(document).ready(function() {
$("#vehiculeSouhaite").val("#vehiculeSouhaite_hidden".val());
});
</script>
Malheureusement, cela ne semble pas fonctionner... #vehiculeSouhaite_hidden".val() retourne une chaine vide.
J'ai fait le test sans surcouche HTML et en faisant afficher le champ vehiculeSouhaite (qui est mappé à vehiculePrefere). ça ne fonctionne pas. Je pense que le mapTo ne fonctionne qu'avec les éléments de l'annuaire et pas les userInfos.
Pour l'instant, je cherche dans le code comment on récupère les balises <%=folder.xxx%> pour voir si je peux ajouter cette fonctionnalité. Pas encore trouvé.
- Statut changé de Feedback à Closed
- % réalisé changé de 0 à 100
Formats disponibles : Atom
PDF