pagination alphabétique sur des signatures

[SPIP 1.9.2d]

Salut,

Plutôt que d'utiliser la pagination classique par nombre de pages (1 | 2 | ...), je souhaiterais classer les signatures d'un article par ordre alphabétique (ça je sais faire !) avec une pagination de type A | B | C | ... Mais comment faire ? Existe-t-il un modèle de pagination de ce type quelque part ?

Alexandre
________________________________________________________________

Ce message, ainsi que les pièces jointes, sont établis, sous la seule responsabilité de l'expéditeur, à l'intention exclusive de ses destinataires ; ils peuvent contenir des informations confidentielles. Toute publication, utilisation ou diffusion doit être autorisée préalablement. Ce message a fait l'objet d'un traitement anti-virus.
Il est rappelé que tout message électronique est susceptible d'altération au cours de son acheminement sur Internet. ________________________________________________________________

Vous pouvez consulter le site de l'Assemblée nationale à l'adresse suivante : http://www.assemblee-nationale.fr

Bon en combinant 2 contrib on y arrive. Donc pour ceux qui cherchent comment faire :

-- dans mes_fonctions.php :

<?php
//squelettes/mes_fonctions.php
//extrait la première lettre et la passe en majuscules
function lastfirstletter($texte) {
    $texte = $texte{0}; // première lettre
    // remplacement des caractères accentués
    // exemple trouvé la:
    // PHP: strtr - Manual
    $texte = strtr($texte, "\xA1\xAA\xBA\xBF\xC0\xC1\xC2\xC3\xC5\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD8\xD9\xDA\xDB\xDD\xE0\xE1\xE2\xE3\xE5\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF8\xF9\xFA\xFB\xFD\xFF", "!ao?AAAAACEEEEIIIIDNOOOOOUUUYaaaaaceeeeiiiidnooooouuuyy");
    $texte = strtr($texte, array("\xC4"=>"Ae", "\xC6"=>"AE", "\xD6"=>"Oe", "\xDC"=>"Ue", "\xDE"=>"TH", "\xDF"=>"ss", "\xE4"=>"ae", "\xE6"=>"ae", "\xF6"=>"oe", "\xFC"=>"ue", "\xFE"=>"th"));
    $texte = strtoupper($texte); // tout en majuscules
    //if($texte!='&')
    return $texte;
}
?>

-- dans le squelette :

<BOUCLE_tot(SIGNATURES){id_article}>
</BOUCLE_tot>

    <?php
            $l=[(#ENV{lettre,a})];
            //liste des lettres de l'alphabet...
            for ($i=ord("a");$i<=ord("z");$i++){
                echo (($l !=chr($i)) ? ('<a href="#URL_PAGE{signatures,id_article=#ID_ARTICLE&lettre='.chr($i).'"><strong>'.mb_strtoupper(chr($i)).'</strong></a>') : mb_strtoupper(chr($i)));
                echo " &nbsp; ";
            }
    ?>
</B_tot>

<BOUCLE_listalpha (SIGNATURES){par nom_email}{tout}>

[(#SET{beginby[(#NOM|lastfirstletter)],[(#GET{beginby[(#NOM|lastfirstletter)]}|array_merge{#ARRAY{#COMPTEUR_BOUCLE,#ID_SIGNATURE}})]})]

[<a href="[(#SELF|parametre_url{lettre,[(#NOM|lastfirstletter)]})]" [(#NOM|lastfirstletter|=={[(#ENV{lettre,a})]}|?{class='on'})]>(#NOM|lastfirstletter|unique)</a> ]

</BOUCLE_listalpha>

<BOUCLE_signatures_alpha(SIGNATURES) {nom_email==^#ENV{lettre,a}} {par nom_email}>[(#NOM)]<br />
</BOUCLE_signatures_alpha>

Alexandre Wattiez a écrit :

[SPIP 1.9.2d]

Salut,

Plutôt que d'utiliser la pagination classique par nombre de pages (1 | 2 | ...), je souhaiterais classer les signatures d'un article par ordre alphabétique (ça je sais faire !) avec une pagination de type A | B | C | ... Mais comment faire ? Existe-t-il un modèle de pagination de ce type quelque part ?

Alexandre
________________________________________________________________

Ce message, ainsi que les pièces jointes, sont établis, sous la seule responsabilité de l'expéditeur, à l'intention exclusive de ses destinataires ; ils peuvent contenir des informations confidentielles. Toute publication, utilisation ou diffusion doit être autorisée préalablement. Ce message a fait l'objet d'un traitement anti-virus.
Il est rappelé que tout message électronique est susceptible d'altération au cours de son acheminement sur Internet. ________________________________________________________________

Vous pouvez consulter le site de l'Assemblée nationale à l'adresse suivante : http://www.assemblee-nationale.fr

_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip

Documentation de SPIP : http://www.spip.net/

irc://irc.freenode.net/spip ou http://embed.mibbit.com/?server=irc.freenode.net&channel=%23spip

________________________________________________________________

Ce message, ainsi que les pièces jointes, sont établis, sous la seule responsabilité de l'expéditeur, à l'intention exclusive de ses destinataires ; ils peuvent contenir des informations confidentielles. Toute publication, utilisation ou diffusion doit être autorisée préalablement. Ce message a fait l'objet d'un traitement anti-virus.
Il est rappelé que tout message électronique est susceptible d'altération au cours de son acheminement sur Internet. ________________________________________________________________

Vous pouvez consulter le site de l'Assemblée nationale à l'adresse suivante : http://www.assemblee-nationale.fr