source: spip-zone/_plugins_/image_cliquable/trunk/modeles/img_cliquable.html @ 61540

Last change on this file since 61540 was 61540, checked in by real3t@…, 8 years ago

Cette version fonctionne avec SPIP 2.1 et utilise le plugin Itérateurs pour avoir un nombre quelconque de zone cliquables.

De plus, pour améliorer l'accessibilité du résultat, la liste des zone est affichée sous forme d'énumération sous l'image, classé par ordre alphabétique des alternatives textuelles à chaque lien.

Enfin les liens peuvent utiliser la syntaxe des liens internes de SPIP (art12, rub12...).

File size: 3.0 KB
Line 
1<BOUCLE_document (DOCUMENTS) {id_document} {mode?} {tout}>
2[(#REM)
3
4        Modele pour <img>
5
6        Si on est en mode "image" ou "vignette", ou appele avec embed=oui,
7        on affiche l'image complete ; sinon le logo
8
9        Si un lien est passe #ENV{lien} on ajoute le a href
10        ou on truque le #URL_DOCUMENT
11       
12        Si une code de langue est passe #ENV{langue} ex: <img12|langue=en>
13        on ajoute l'attribut lang la balise img et eventuellement sur la balise a
14       
15        Dans le cas mode "image ou vignette", le contenu de l'attribut
16        alt et title se construit selon le schema suivant :
17        - prend la valeur de alt passe en environnement par le biais
18        d'un parametre sur la balise ex: <img12|alt=xxx>
19        - sinon on prend le titre
20        - sinon si #ENV{lien} est passe on prend #ENV{lien} ou Document si lien vers #URL_DOCUMENT
21        - sinon alt vide
22       
23        Dans le cas mode "document", le contenu de l'attribut
24        alt et title se construit selon le même schema a ceci pres
25        qu'on ajoute #TYPE_DOCUMENT - #TAILLE
26        sauf si #ENV{lien} est passe   
27
28]
29[(#SET{
30        image,
31                #MODE|match{'image|vignette'}
32                |sinon{#ENV{embed}}
33                |oui
34})][
35
36        (#REM) image complete ?
37
38][(#GET{image})
39<span class='spip_document_#ID_DOCUMENT spip_documents[ spip_documents_(#ENV{align})][ (#ENV{class})] spip_lien_ok'[ style='float:(#ENV{align}|match{left|right});[ width:(#LARGEUR)px;]']>
40[<a href="(#ENV{lien})"[ class="(#ENV{lien_class})"][ lang="(#ENV{langue})"][ title="(#ENV{alt}|texte_backend|sinon{#TITRE|texte_backend|sinon{#ENV{lien}|texte_backend}})"]>]<img src='#URL_DOCUMENT'[ width="(#LARGEUR)"][ height="(#HAUTEUR)"][(#ENV{lien1}|oui) usemap="#[AP(#URL_DOCUMENT|md5)]"][ lang="(#ENV{langue})"] alt="[(#ENV{alt}|texte_backend|sinon{#TITRE|texte_backend|sinon{#ENV{lien}|texte_backend}})]"[(#DESCRIPTIF|?{' ',''})longdesc="[(#URL_PAGE{longdesc,id=#ID_DOCUMENT}|parametre_url{'lang',#ENV{langue,#LANG}})]"] />
41
42<INCLURE{fond=modeles/inc/areamap,url_document,env}>
43
44[(#ENV{lien}|?{</a>})]</span>
45
46<INCLURE{fond=modeles/inc/listemap,titre,env}>
47][
48
49        (#REM) sinon logo document + lien + alt + title etc
50
51][(#GET{image}|?{'',' '})
52<span class='spip_document_#ID_DOCUMENT spip_documents[ spip_documents_(#ENV{align})][ (#ENV{class})] spip_lien_ok'[ style='float:(#ENV{align}|match{left|right});[ width:(#LOGO_DOCUMENT|largeur)px;]']><a href="[(#ENV{lien}|sinon{#URL_DOCUMENT})]"[ (#ENV{lien}|?{'',type="#MIME_TYPE"})][ lang="(#ENV{langue})"] title="[(#ENV{alt}|texte_backend|sinon{#TITRE|texte_backend|sinon{#ENV{lien}|texte_backend|sinon{<:info_document:>}}})[(#ENV{lien}|?{'',' - '})]][(#ENV{lien}|?{'',[(#TYPE_DOCUMENT) - ][(#TAILLE|taille_en_octets)]})]"><img src="[(#LOGO_DOCUMENT|extraire_attribut{src})]" width="[(#LOGO_DOCUMENT|largeur)]" height="[(#LOGO_DOCUMENT|hauteur)]"[ lang="(#ENV{langue})"] alt="[(#ENV{alt}|texte_backend|sinon{#TITRE|texte_backend|sinon{#ENV{lien}|texte_backend|sinon{<:info_document:>}}})[(#ENV{lien}|?{'',' - '})]][(#ENV{lien}|?{'',[(#TYPE_DOCUMENT) - ][(#TAILLE|taille_en_octets)]})]"[(#DESCRIPTIF|?{' ',''})longdesc="[(#URL_PAGE{longdesc,id=#ID_DOCUMENT}|parametre_url{'lang',#ENV{langue,#LANG}})]"] /></a></span>
53]</BOUCLE_document>
Note: See TracBrowser for help on using the repository browser.