var link,Skip,Signet,ClassCss,Legend,FormName,SelectName: string;
Titre:string;
nbr,i:integer;
Liste:TStringList;
begin

if Condition('_HTML_') then
begin
// construire la liste des signets internes
Liste := TStringList.create;

FormName := GetParam('FormName','fastsignets');
SelectName := GetParam('SelectName','signetlinks');
// la légende contient le premier élément de votre liste, uniquement pour informer
Legend := GetParam('Legende','-- signets --');

// skip contient les noms des signets à ne pas reprendre
Skip := GetParam('SKIP','');

// extraire le style css éventuel
ClassCss := GetParam('css','');
if ClassCss<>'' then ClassCss:=' class="'+ClassCss+'" ';

Titre := GetTitre;

// obtenir le nombre de signet de la rubrique
if skip='ALL' then nbr:=0 else nbr := GetSignetCount(Titre)-1;
// pour chaque signet, un lien à son nom
for i:=0 to nbr do
begin
signet := GetSignetOf(Titre,i);
// on vérifie que le signet n'est pas das la liste des refusés
if (signet<>'')and(pos(Signet,Skip)=0) then
// SignetToHtml va transformer le signet dans la forme qu'il a en html
Liste.add('<option value="'+SignetToHtml(signet)+'">'+Signet);

end;

if Liste.Count>0 then
begin
write(' <form name="'+FormName+'">');
writeln('<select'+classCss+' name="'+SelectName+'" onChange="window.location.href=document.'+FormName+ '.'+SelectName+'.options[document.'+FormName+'.'+SelectName+'.selectedIndex].value">');
writeln('<option selected="selected" value="javascript:void(0)">'+Legend);
for i:=0 to Liste.count-1 do
writeln(liste.strings[i]);
write('</select>');
write('</form> ');
end else write(' ');

Liste.free;
end else write(' ');


end;
end.

Sommaire