Je sais que j'ai possiblement plus de chances d'avoir une rponse du ct bugzilla.org, mais je vais tenter ma chance ici en premier. Si il y a moins de monde, j'aurais peut-tre un meilleur service. :)
Nous avons mont bugzilla dans le but de grer les appels pour le support aux usagers.
Nous aimerions avoir une liste supplmentaire dans l'cran de cration qui nous permettrait de slectionner un usager (celui qui fait la demande). Les usagers n'ont pas accs bugzilla.
J'ai fait les tables mysql avec du data, ajout du code au cgi et tmpl, mais je n'arrive pas afficher la liste des usagers.
Avant de m'arracher les cheveux (et plus...), j'aimerais savoir si quelqu'un a dj fait de quoi de semblable?
Pour votre information, voici les ajouts que j'ai fait:
globals.pl
sub GetSelectableUtilisateurs {
my $query = "select concat(concat(ucase(usnom),', '), usprenom) as utilisateur " .
"FROM utilisateurs ";
$query .= "WHERE usactif='' order by usnom,usprenom";
PushGlobalSQLState();
SendSQL($query);
my @utilisateurs = ();
push(@utilisateurs, FetchSQLData()) while MoreSQLData();
PopGlobalSQLState();
return (@utilisateurs);
}
enter_bug.cgi:
my @utilisateurs = ();
my $utilisateurs = $cgi->param('utilisateurs');
foreach my $u (GetSelectableUtilisateurs()) {
push @utilisateurs, $u;
}
create.html.tmpl:
<tr>
<td align="right"><strong>Utilisateur :</strong></td>
<td colspan="3">
<select name="utilisateur" id="utilisateur">
<option value=""></option>
[% FOREACH u = utilisateurs %]
<option value="[% u FILTER html %]">
[% u FILTER html %]</option>
[% END %]
</select>
</td>
</tr>
Dans create.html.tmpl, si je remplace le foreach par un "forearch u = ['utilisateur1','utisateur2']", le boucle se fait bien et affiche ce qui est dans le tableau spcifi.
Je vais voir comment insrer le nom de l'usager dans les tables une fois que je vais tre capable d'afficher la liste. Une chose la fois.
Merci beaucoup,
Franois
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
> Dans create.html.tmpl, si je remplace le foreach par un "forearch u = ['utilisateur1','utisateur2']", le boucle se fait bien et affiche ce qui est dans le tableau spcifi.
S'il s'agit de Bugzilla 2.18, c'est normal.
Le passage vers 2.18 s'est accompagn d'un passage vers la programmation orient objet. Pour rajouter une variable dans les formulaires de saisie et de modification, il faut que cette variable soit dans l'objet bug, defini dans Bugzilla/Bug.pm.
Je pourrais t'en dire plus demain.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Dans Bugzilla 2.18, les developpeurs ont choisi une approche objet pour leur application.
On a donc un objet bug, dont les attributs sont definis dans le fichier Bugzilla/Bug.pm.
Cet objet est la seule variable passe aux templates lors de l'affichage de la page et, si on veut ajouter une variable, c'est dans ce fichier qu'il faut l'ajouter.
C'est relativement simple a faire (encore que je n'ai eu qu'a rcuprer la liste des mots-cls pour les proposer dans un menu droulant) mais je ne sais pas ce qu'il faut magouiller dans la base de donne pour permettre l'ajout d'un nouveau champ.
Bonjour,
Je sais que j'ai possiblement plus de chances d'avoir une rponse du ct bugzilla.org, mais je vais tenter ma chance ici en premier. Si il y a moins de monde, j'aurais peut-tre un meilleur service. :)
Nous avons mont bugzilla dans le but de grer les appels pour le support aux usagers.
Nous aimerions avoir une liste supplmentaire dans l'cran de cration qui nous permettrait de slectionner un usager (celui qui fait la demande). Les usagers n'ont pas accs bugzilla.
J'ai fait les tables mysql avec du data, ajout du code au cgi et tmpl, mais je n'arrive pas afficher la liste des usagers.
Avant de m'arracher les cheveux (et plus...), j'aimerais savoir si quelqu'un a dj fait de quoi de semblable?
Pour votre information, voici les ajouts que j'ai fait:
globals.pl
sub GetSelectableUtilisateurs {
my $query = "select concat(concat(ucase(usnom),', '), usprenom) as utilisateur " .
"FROM utilisateurs ";
$query .= "WHERE usactif='' order by usnom,usprenom";
PushGlobalSQLState();
SendSQL($query);
my @utilisateurs = ();
push(@utilisateurs, FetchSQLData()) while MoreSQLData();
PopGlobalSQLState();
return (@utilisateurs);
}
enter_bug.cgi:
my @utilisateurs = ();
my $utilisateurs = $cgi->param('utilisateurs');
foreach my $u (GetSelectableUtilisateurs()) {
push @utilisateurs, $u;
}
create.html.tmpl:
<tr>
<td align="right"><strong>Utilisateur :</strong></td>
<td colspan="3">
<select name="utilisateur" id="utilisateur">
<option value=""></option>
[% FOREACH u = utilisateurs %]
<option value="[% u FILTER html %]">
[% u FILTER html %]</option>
[% END %]
</select>
</td>
</tr>
Dans create.html.tmpl, si je remplace le foreach par un "forearch u = ['utilisateur1','utisateur2']", le boucle se fait bien et affiche ce qui est dans le tableau spcifi.
Je vais voir comment insrer le nom de l'usager dans les tables une fois que je vais tre capable d'afficher la liste. Une chose la fois.
Merci beaucoup,
Franois
> Dans create.html.tmpl, si je remplace le foreach par un "forearch u = ['utilisateur1','utisateur2']", le boucle se fait bien et affiche ce qui est dans le tableau spcifi.
S'il s'agit de Bugzilla 2.18, c'est normal.
Le passage vers 2.18 s'est accompagn d'un passage vers la programmation orient objet. Pour rajouter une variable dans les formulaires de saisie et de modification, il faut que cette variable soit dans l'objet bug, defini dans Bugzilla/Bug.pm.
Je pourrais t'en dire plus demain.
> Je pourrais t'en dire plus demain.
Je disais donc :
Dans Bugzilla 2.18, les developpeurs ont choisi une approche objet pour leur application.
On a donc un objet bug, dont les attributs sont definis dans le fichier Bugzilla/Bug.pm.
Cet objet est la seule variable passe aux templates lors de l'affichage de la page et, si on veut ajouter une variable, c'est dans ce fichier qu'il faut l'ajouter.
C'est relativement simple a faire (encore que je n'ai eu qu'a rcuprer la liste des mots-cls pour les proposer dans un menu droulant) mais je ne sais pas ce qu'il faut magouiller dans la base de donne pour permettre l'ajout d'un nouveau champ.
Afin, je prefre citer Gervase Markham, dveloppeur Bugzilla qui explique pourquoi les champs personaliss sont dconseills : http://www.bugzilla.org/docs/tip/html/cust-templates.html