Browse Source

Reprise des modèles de doc de SPIP3

git-svn-id: svn://zone.spip.net/spip-zone/_plugins_/figure@102657 ac52e18a-acf5-0310-9fe8-c4428f23b10a
master
tetue 6 years ago
parent
commit
3f48cf10fb
  1. 47
      modeles/application.html
  2. 21
      modeles/audio.html
  3. 48
      modeles/doc.html
  4. 38
      modeles/doc_legende.html
  5. 3
      modeles/emb.html
  6. 1
      modeles/emb_mp4.html
  7. 49
      modeles/image.html
  8. 53
      modeles/img.html
  9. 6
      modeles/text.html
  10. 3
      modeles/text_csv.html
  11. 6
      modeles/text_html.html
  12. 47
      modeles/video.html

47
modeles/application.html

@ -0,0 +1,47 @@
<BOUCLE_tous (DOCUMENTS types_documents) {id_document=#ID} {tout}>[
(#REM) on trouvera plusieurs variable de hauteur/largeur
- les balises #HAUTEUR et #LARGEUR
- #ENV{hauteur} et {largeur} correspondant <emb|hauteur=xx...>
- #GET{hauteur} et #GET{largeur} correspondent prioritairement a #ENV,
puis #LARGEUR/HAUTEUR sauf si il y a un controleur
]
#SET{hauteur,#ENV{hauteur,#HAUTEUR}} #SET{largeur,#ENV{largeur,#LARGEUR}}
[(#ENV{controls}=={PlayButton}|?{#SET{hauteur,25},''})][
(#ENV{controls}=={PlayButton}|?{#SET{largeur,40},''})][
(#ENV{controls}=={PositionSlider}|?{#SET{hauteur,25},''})][
(#ENV{controls}=={PositionSlider}|?{#SET{largeur,#GET{largeur}|moins{40}},''})
][(#INCLUS|=={embed}|?{[(#ENV{controls,''}|non)
<div class='spip_document_#ID_DOCUMENT spip_document_application spip_documents[ spip_documents_(#ENV{align})]'[
style='[(#ENV{align}|match{^(left|right)$}|oui)float:#ENV{align};] (#ENV{align,center}|=={center}|non)[width:(#GET{largeur}|max{120})px]']>
]})
][(#EXTENSION|=={swf}|oui)
<object classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000'
codebase='http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=#ENV{version,'6,0,0,0'}'
width='#GET{largeur}' height='#GET{hauteur}'>
<param name='movie' value='#URL_DOCUMENT' />
[(#ENV{quality,''}|non)<param name="quality" value="high" />]
[(#ENV*|env_to_params)]
<!--#EVAL**{chr(91)}if !IE#EVAL**{chr(93)}> <-->
<object data="#URL_DOCUMENT" width='#GET{largeur}' height='#GET{hauteur}' type="application/x-shockwave-flash">
[(#ENV{quality,''}|non)<param name="quality" value="high" />]
[(#ENV*|env_to_params)]
<param name="pluginurl" value="http://www.macromedia.com/go/getflashplayer" />
</object>
<!--> <!#EVAL**{chr(91)}endif#EVAL**{chr(93)}-->
</object>
#SET{done,1}
][(#GET{done,0}|non)
[(#INCLUS|=={embed}|oui)
<object width='#GET{largeur}' height='#GET{hauteur}'>
<param name='movie' value='#URL_DOCUMENT' />
<param name='src' value='#URL_DOCUMENT' />
[(#ENV*|env_to_params)]
<embed src='#URL_DOCUMENT' [(#ENV*|env_to_attributs)] width='#GET{largeur}' height='#GET{hauteur}'></embed></object>
][(#INCLUS|=={image}|oui)
[(#INCLURE{fond=modeles/img}{id_document}{align=#ENV{align}}{embed=oui}{lien=#ENV{lien}}{lien_class=#ENV{lien_class}})]
]
][(#INCLUS|=={embed}|oui)[(#ENV{controls,''}|non)
[<div class='#EDIT{titre} spip_doc_titre'><strong>(#TITRE)</strong></div>][<div class='#EDIT{descriptif} spip_doc_descriptif'>(#DESCRIPTIF|PtoBR)[(#NOTES|PtoBR)]</div>]</div>
]]
</BOUCLE_tous>

21
modeles/audio.html

@ -0,0 +1,21 @@
<BOUCLE_tous (DOCUMENTS types_documents) {id_document=#ID} {tout}>
#SET{largeur,#ENV{largeur, #LARGEUR|?{#LARGEUR,400}}|max{120}}
<div class='spip_document_#ID_DOCUMENT spip_document_audio spip_documents[ spip_documents_(#ENV{align})]'
style='[(#ENV{align}|match{^(left|right)$}|oui)float:#ENV{align};][width:(#GET{largeur})px]'>
[(#LOGO_DOCUMENT{vignette}|image_reduire{#GET{largeur},0}|vider_attribut{class})]
<div class="audio-wrapper"[ style='width:(#GET{largeur})px;max-width:100%;']>
<audio class="mejs mejs-#ID_DOCUMENT [ mejs-(#ENV{skin})]"
data-id="[(#VAL{mejs-#ID_DOCUMENT}|concat{#ENV{skin}}|md5)]"
src="#FICHIER"
type="#MIME_TYPE"
data-mejsoptions='{"alwaysShowControls": true[,"loop":(#ENV{loop}|?{true,false})],"audioWidth":"100%"[,"audioHeight":"(#ENV{hauteur})"][,"startVolume":"(#ENV{volume})"]}'
controls="controls"
[autoplay="autoplay"(#ENV{autoplay}|oui)]></audio>
</div>
[<div class='#EDIT{titre} spip_doc_titre'><strong>(#TITRE)</strong></div>]
[<div class='#EDIT{descriptif} spip_doc_descriptif'>(#DESCRIPTIF|PtoBR)[(#NOTES|PtoBR)]</div>]
[<script>/*<!\[CDATA\[*/var mejspath='[(#CHEMIN{lib/mejs/mediaelement-and-player.min.js}|timestamp)]',mejscss='[(#CHEMIN{lib/mejs/mediaelementplayer.min.css}|timestamp)]';
(#INCLURE{javascript/mejs-init.min.js})/*\]\]>*/</script>]
[(#ENV{skin}|oui)[<style>(#INCLURE{#CHEMIN{css/mejs-skin-#ENV{skin}.css}|sinon{#CHEMIN{lib/mejs/mejs-skins.css}}|url_absolue_css})</style>]]
</div>
</BOUCLE_tous>

48
modeles/doc.html

@ -0,0 +1,48 @@
<BOUCLE_doc (DOCUMENTS) {id_document} {tout}>
[<!--(#REM)
Modele pour <doc> en dl/dt/dd
cf. http://pompage.net/pompe/listesdefinitions/
La largeur de la legende est egale a la largeur de l'image
avec un minimum de 120px, et un maximum de 350px.
Dans le cas d'une simple image (mode=image), on affiche
le document lui-meme, sans lien de telechargement
-->]
[(#ENV{mode_force,#MODE}|=={image}|oui)
#SET{fichier,#URL_DOCUMENT}
#SET{width,#LARGEUR}
#SET{height,#HAUTEUR}
#SET{url,#ENV{lien}}
]
[(#ENV{mode_force,#MODE}|=={image}|non)
[(#SET{fichier,[(#LOGO_DOCUMENT|extraire_attribut{src})]})]
[(#SET{width,[(#LOGO_DOCUMENT|extraire_attribut{width})]})]
[(#SET{height,[(#LOGO_DOCUMENT|extraire_attribut{height})]})]
#SET{url,#ENV{lien,#URL_DOCUMENT}}
][<!--(#REM)
Si largeur ou hauteur fournit en parametre, redimensionner
-->][
(#ENV{largeur,0}|ou{#ENV{hauteur,0}})
#SET{fichier,#GET{fichier}|image_reduire{#ENV{largeur,0},#ENV{hauteur,0}}}
#SET{width,#GET{fichier}|largeur}
#SET{height,#GET{fichier}|hauteur}
#SET{fichier,#GET{fichier}|extraire_attribut{src}}
]
[(#SET{title,[(#TYPE_DOCUMENT) - [(#TAILLE|taille_en_octets)]]})]
[(#MEDIA|=={image}|oui) #SET{title,#TITRE|sinon{#GET{title}}]
<dl class='spip_document_#ID_DOCUMENT spip_documents[ spip_documents_(#ENV{align})][ (#ENV{class})] spip_lien_ok'[
style='float:(#ENV{align}|match{left|right});']>
<dt>[<a href="(#GET{url})"[
class="(#ENV{lien_class})"] title='[(#GET{title}|attribut_html)]'[
(#ENV{lien}|?{'',type="#MIME_TYPE"})]>]<img src='#GET{fichier}' width='#GET{width}' height='#GET{height}' alt='#TYPE_DOCUMENT - [(#TAILLE|taille_en_octets|texte_backend)]' />[(#GET{url}|?{</a>})]</dt>[
<dt class='#EDIT{titre} spip_doc_titre'[ style='width:(#GET{width}|min{350}|max{120})px;']><strong>(#TITRE)</strong></dt>][
<dd class='#EDIT{descriptif} spip_doc_descriptif'[ style='width:(#GET{width}|min{350}|max{120})px;']>(#DESCRIPTIF|PtoBR)[(#NOTES|PtoBR)]</dd>]
</dl>
</BOUCLE_doc>
#FILTRE{trim}

38
modeles/doc_legende.html

@ -0,0 +1,38 @@
<BOUCLE_doc (DOCUMENTS) {id_document} {tout}>
[(#REM)
Modele pour <doc> en dl/dt/dd
cf. http://pompage.net/pompe/listesdefinitions/
La largeur de la legende est egale a la largeur de l'image
avec un minimum de 120px, et un maximum de 350px.
Dans le cas d'une simple image (mode=image), on affiche
le document lui-meme, sans lien de telechargement
]
[(#MODE|=={image}|oui)
#SET{fichier,#URL_DOCUMENT}
#SET{width,#LARGEUR}
#SET{height,#HAUTEUR}
#SET{url,#ENV{lien}}
]
[(#MODE|=={image}|oui)
[(#SET{fichier,[(#LOGO_DOCUMENT|extraire_attribut{src})]})]
[(#SET{width,[(#LOGO_DOCUMENT|extraire_attribut{width})]})]
[(#SET{height,[(#LOGO_DOCUMENT|extraire_attribut{height})]})]
#SET{url,#ENV{lien,#URL_DOCUMENT}}
][(#ENV{largeur,0}|ou{#ENV{hauteur,0}})
#SET{fichier,#GET{fichier}|image_reduire{#ENV{largeur,0},#ENV{hauteur,0}}}
#SET{width,#GET{fichier}|largeur}
#SET{height,#GET{fichier}|hauteur}
#SET{fichier,#GET{fichier}|extraire_attribut{src}}
]
<dl class='spip_document_#ID_DOCUMENT spip_documents_legende[ spip_documents_(#ENV{align})][ (#ENV{class})] spip_lien_ok'[ style='float:(#ENV{align}|match{left|right});']>
[<dt class='#EDIT{titre} titre'>(#TITRE|sinon{#FICHIER})</dt>]
<dd class='vignette'>[<a href="(#GET{url})"[ class="(#ENV{lien_class})"] title='#TYPE_DOCUMENT - [(#TAILLE|taille_en_octets|texte_backend)]'[ (#ENV{lien}|?{'',type="#MIME_TYPE"})]>]<img src='#GET{fichier}' width='#GET{width}' height='#GET{height}' alt='' />[(#GET{url}|?{</a>})]</dd>
<dd class='type'>#TYPE_DOCUMENT</dd>
<dd class='taille'>[(#LARGEUR|ou{#HAUTEUR}|oui)[
(#VAL{info_largeur_vignette}|_T{#ARRAY{largeur_vignette,#LARGEUR,hauteur_vignette,#HAUTEUR}})
] - ][(#TAILLE|taille_en_octets|texte_backend)]</dd>
</dl>
</BOUCLE_doc>

3
modeles/emb.html

@ -0,0 +1,3 @@
<BOUCLE_ext(DOCUMENTS types_documents) {id_document} {tout}>
<INCLURE{fond=modeles/#EXTENSION|trouver_modele_emb{#MIME_TYPE}}{id=#ID_DOCUMENT}{env}{emb=' '}/>
</BOUCLE_ext>

1
modeles/emb_mp4.html

@ -0,0 +1 @@
<INCLURE{fond=modeles/video,env} />

49
modeles/image.html

@ -0,0 +1,49 @@
<BOUCLE_tous (DOCUMENTS types_documents) {id_document=#ID} {tout}>[
(#REM) Cas <imageXX> : equivalent a <imgXX> pour une image en mode image
][(#INCLUS|=={image}|et{#ENV{emb,''}|non}|oui)
<span class='spip_document_#ID_DOCUMENT spip_documents[ spip_documents_(#ENV{align})][ (#ENV{class})] spip_lien_ok'[
style='float:(#ENV{align}|match{left|right});']>[
<a href="(#ENV{lien})"[
class="(#ENV{lien_class})"]>]<img src='#URL_DOCUMENT'[
width="(#LARGEUR|?{#LARGEUR})"][
height="(#HAUTEUR|?{#HAUTEUR})"][
title="(#TITRE|attribut_html)"]
alt="[(#TITRE|attribut_html)]" />[(#ENV{lien}|?{</a>})]</span>
][
(#REM) Cas <embXX> : on est appele ici avec emb=' ' : on veut la legende
equivalent a un <docXX> pour une image en mode image
][(#INCLUS|=={image}|et{#ENV{emb,''}|oui}|oui)
#SET{fichier,#URL_DOCUMENT}
#SET{width,#LARGEUR}
#SET{height,#HAUTEUR}
#SET{url,#ENV{lien}}
<dl class='spip_document_#ID_DOCUMENT spip_documents[ spip_documents_(#ENV{align})][ (#ENV{class})] spip_lien_ok'[
style='float:(#ENV{align}|match{left|right});[width:(#GET{width}|max{120})]px;']>
<dt>[<a href="(#GET{url})"[ class="(#ENV{lien_class})"] title='#TYPE_DOCUMENT - [(#TAILLE|taille_en_octets|texte_backend)]'[ type="(#ENV{lien}|?{#ENV{lien_mime},#MIME_TYPE})"]>]<img src='#GET{fichier}' width='#GET{width}' height='#GET{height}' alt='#TYPE_DOCUMENT - [(#TAILLE|taille_en_octets|texte_backend)]' />[(#GET{url}|?{</a>})]</dt>[
<dt class='#EDIT{titre} spip_doc_titre'[ style='width:(#GET{width}|min{350}|max{120})px;']><strong>(#TITRE)</strong></dt>][
<dd class='#EDIT{descriptif} spip_doc_descriptif'[ style='width:(#GET{width}|min{350}|max{120})px;']>(#DESCRIPTIF|PtoBR)[(#NOTES|PtoBR)]</dd>]
</dl>
][
(#REM) Cas des images qu'il faut embed (svg)
][
(#INCLUS|=={embed}|oui)
<div class='spip_document_#ID_DOCUMENT spip_documents[ spip_documents_(#ENV{align})]'[
style='[(#ENV{align}|match{^(left|right)$}|?{' '})float:#ENV{align};] (#ENV{align,center}|=={center}|?{'',' '})']>
<object data='#URL_DOCUMENT'
type='#MIME_TYPE'[
width='(#ENV{largeur}?{'', #LARGEUR})'][
height='(#ENV{hauteur}?{'', #HAUTEUR})']
[(#ENV*|env_to_attributs)] >
<param name='src' value='#URL_DOCUMENT' />
[(#ID_DOCUMENT|appliquer_filtre{#MIME_TYPE})]
</object>[
<div class='#EDIT{titre} spip_doc_titre'><strong>(#TITRE)</strong></div>
][
<div class='#EDIT{descriptif} spip_doc_descriptif'>(#DESCRIPTIF|PtoBR)[(#NOTES|PtoBR)]</div>
]</div>]
</BOUCLE_tous>

53
modeles/img.html

@ -0,0 +1,53 @@
<BOUCLE_document (DOCUMENTS) {id_document} {mode?} {tout}>
[(#REM)
Modele pour <img>
Si on est en mode "image" ou "vignette", ou appele avec embed=oui,
on affiche l'image complete ; sinon le logo
Si un lien est passe #ENV{lien} on ajoute le a href
ou on truque le #URL_DOCUMENT
Si une code de langue est passe #ENV{langue} ex: <img12|langue=en>
on ajoute l'attribut lang la balise img et eventuellement sur la balise a
Dans le cas mode "image ou vignette", le contenu de l'attribut
alt et title se construit selon le schema suivant :
- prend la valeur de alt passe en environnement par le biais
d'un parametre sur la balise ex: <img12|alt=xxx>
- sinon on prend le titre
- sinon si #ENV{lien} est passe on prend #ENV{lien} ou Document si lien vers #URL_DOCUMENT
- sinon alt vide
Dans le cas mode "document", le contenu de l'attribut
alt et title se construit selon le même schema a ceci pres
qu'on ajoute #TYPE_DOCUMENT - #TAILLE
sauf si #ENV{lien} est passe
]
[(#SET{
image,
#ENV{mode_force,#MODE}|match{'image|vignette'}
|sinon{#ENV{embed}}
|oui
})][
(#REM) image complete ?
][(#GET{image})
<span class='spip_document_#ID_DOCUMENT spip_documents[ spip_documents_(#ENV{align})][ (#ENV{class})] spip_lien_ok'[
style='float:(#ENV{align}|match{left|right});']>
[<a href="(#ENV{lien})"[ class="(#ENV{lien_class})"]>]<img src='#URL_DOCUMENT'[ width="(#LARGEUR)"][ height="(#HAUTEUR)"] alt="[(#TITRE|texte_backend)]"[ title="(#TITRE|texte_backend)"] />[(#ENV{lien}|?{</a>})]</span>
][
(#REM) sinon logo document + lien + alt + title etc
][(#GET{image}|non)
[(#SET{fichier,[(#LOGO_DOCUMENT|extraire_attribut{src})]})]
[(#SET{width,[(#LOGO_DOCUMENT|extraire_attribut{width})]})]
[(#SET{height,[(#LOGO_DOCUMENT|extraire_attribut{height})]})]
<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:(#GET{width})px;]']><a href="[(#ENV{lien}|sinon{#URL_DOCUMENT})]"[
(#ENV{lien}|?{'',type="#MIME_TYPE"})][ title="(#TITRE|texte_backend)"]><img src='#GET{fichier}' width='#GET{width}' height='#GET{height}' alt='[(#TITRE|strlen|?{#TITRE {#TYPE_DOCUMENT},#TYPE_DOCUMENT}|attribut_html)]' /></a></span>
]</BOUCLE_document>

6
modeles/text.html

@ -0,0 +1,6 @@
<BOUCLE_tous (DOCUMENTS types_documents) {id_document=#ID} {tout}
>[<div class='spip_document_#ID_DOCUMENT spip_documents[ spip_documents_(#ENV{align})]'
><pre>(#FICHIER|contenu_document{#ENV{charset,auto}}|echapper_tags)</pre>
[<div class='#EDIT{titre} spip_doc_titre'><strong>(#TITRE)</strong></div>][<div class='#EDIT{descriptif} spip_doc_descriptif'>(#DESCRIPTIF|PtoBR)[(#NOTES|PtoBR)]</div>]
</div>
]</BOUCLE_tous>

3
modeles/text_csv.html

@ -0,0 +1,3 @@
<BOUCLE_tous (DOCUMENTS types_documents) {id_document=#ID} {tout}
>[(#FICHIER|contenu_document{#ENV{charset,auto}}|appliquer_filtre{#MIME_TYPE}
)]</BOUCLE_tous>

6
modeles/text_html.html

@ -0,0 +1,6 @@
<BOUCLE_tous (DOCUMENTS types_documents) {id_document=#ID} {tout}
>[<div class='spip_document_#ID_DOCUMENT spip_documents[ spip_documents_(#ENV{align})]'
><object data="(#URL_DOCUMENT)" width="100%" height="400"><a href="#URL_DOCUMENT">#FICHIER</a></object>
[<div class='#EDIT{titre} spip_doc_titre'><strong>(#TITRE)</strong></div>][<div class='#EDIT{descriptif} spip_doc_descriptif'>(#DESCRIPTIF|PtoBR)[(#NOTES|PtoBR)]</div>]
</div>
]</BOUCLE_tous>

47
modeles/video.html

@ -0,0 +1,47 @@
<BOUCLE_tous(DOCUMENTS types_documents) {id_document=#ID} {tout}>[
(#REM) on trouvera plusieurs variable de hauteur/largeur
- les balises #HAUTEUR et #LARGEUR
- #ENV{hauteur} et {largeur} correspondant <emb|hauteur=xx...>
- #GET{hauteur} et #GET{largeur} correspondent prioritairement a #ENV,
puis #LARGEUR/HAUTEUR sauf si il y a un controleur
]
#SET{largeur,#ENV{largeur, #LARGEUR|?{#LARGEUR,480}}|max{120}}
#SET{hauteur,#ENV{hauteur, #HAUTEUR|?{#HAUTEUR,300}}|max{75}}
<div class='spip_document_#ID_DOCUMENT spip_document_video spip_documents[ spip_documents_(#ENV{align})]'
style='[(#ENV{align}|match{^(left|right)$}|oui)float:#ENV{align};][width:(#GET{largeur})px]'>
<div class="video-intrinsic-wrapper" style='height:0;width:100%;padding-bottom:[(#GET{hauteur}|div{#GET{largeur}}|mult{100}|round{2})]%;position:relative;'>
<div class="video-wrapper" style="position: absolute;top:0;left:0;width:100%;height:100%;">
<video class="mejs mejs-#ID_DOCUMENT[ mejs-(#ENV{skin})]"
data-id="[(#VAL{mejs-#ID_DOCUMENT}|concat{#ENV{skin}}|md5)]"
data-mejsoptions='{"alwaysShowControls": true,"pluginPath":"[(#CHEMIN{lib/mejs/flashmediaelement.swf}|dirname)/]"[,"loop":(#ENV{loop}|?{true,false})],"videoWidth":"100%","videoHeight":"100%"[,"startVolume":"(#ENV{volume})"]}'
width="100%"
height="100%"
poster="[(#LOGO_DOCUMENT{vignette}|image_reduire{#GET{largeur},0}|extraire_attribut{src})]"
controls="controls"
preload="none"[
autoplay="autoplay"(#ENV{autoplay}|oui)]
>
<source type="[(#EXTENSION|in_array{#LISTE{mp4,webm,ogv}}|?{[(#MIME_TYPE|replace{application/,video/})],#MIME_TYPE})]" src="#FICHIER" />
[(#REM)
Flash fallback for non-HTML5 browsers without JavaScript
]<object width="#GET{largeur}" height="#GET{hauteur}" type="application/x-shockwave-flash" data="#CHEMIN{lib/mejs/flashmediaelement.swf}">
<param name="movie" value="#CHEMIN{lib/mejs/flashmediaelement.swf}" />
<param name="flashvars" value="controls=true&amp;file=#FICHIER" />
[(#REM)
Image as a last resort
][(#LOGO_DOCUMENT|image_reduire{#GET{largeur},0}|vider_attribut{class}|inserer_attribut{alt,'Impossible de lire la video'})]
</object>
</video>
</div>
</div>
[<div class='#EDIT{titre} spip_doc_titre'><strong>(#TITRE)</strong></div>]
[<div class='#EDIT{descriptif} spip_doc_descriptif'>(#DESCRIPTIF|PtoBR)[(#NOTES|PtoBR)]</div>]
[<script>/*<!\[CDATA\[*/var mejspath='[(#CHEMIN{lib/mejs/mediaelement-and-player.min.js}|timestamp)]',mejscss='[(#CHEMIN{lib/mejs/mediaelementplayer.min.css}|timestamp)]';
(#INCLURE{javascript/mejs-init.min.js})/*\]\]>*/</script>]
[(#ENV{skin}|oui)[<style>(#INCLURE{#CHEMIN{css/mejs-skin-#ENV{skin}.css}|sinon{#CHEMIN{lib/mejs/mejs-skins.css}}|url_absolue_css})</style>]]
</div>
</BOUCLE_tous>
Loading…
Cancel
Save