1 | [(#REM) |
---|
2 | |
---|
3 | Modele html audio |
---|
4 | |
---|
5 | Les paramètres possibles : |
---|
6 | -* logo string : le chemin vers un logo spécifique |
---|
7 | -* controls string "non" : N'affichera pas les controles si la valeur est non ou false |
---|
8 | -* autoplay string "tout sauf non ou false" : Le son se lira dès qu'elle le pourra si la valeur est autre que non ou false |
---|
9 | -* autobuffer|preload string non|auto|metadata : La méthode de preload : auto chargera l'ensemble du son, metadatas s'arrêtera aux metadatas, non ne chargera rien |
---|
10 | -* loop string "tout sauf non ou false" : Le son se lira en boucle |
---|
11 | -* largeur int|% : La largeur par défaut (défaut 350), si valeur en %, % doit être indiqué (ex: 100%), sinon seul l'entier pour les px |
---|
12 | -* hauteur int : La hauteur par défaut (défaut 40) |
---|
13 | -* align string left|right|center : L'alignement par défaut |
---|
14 | -* cookie_volume string oui : garde le volume dans un cookie pour tous les lecteurs |
---|
15 | -* volume int : Un nombre de 0 à 100 correspondant le pourcentage |
---|
16 | -* volume_bloque oui : si oui le niveau de volume restera bloqué |
---|
17 | -* volume_slider_orientation string vertical|horizontal : l'orientation du slider de volume |
---|
18 | -* muted oui : si oui le lecteur sera sur mute à l'initialisation |
---|
19 | -* muted_bloque oui : si oui l'utilisateur ne peut switcher entre mute et unmute |
---|
20 | -* boutons_caches string : liste de boutons séparés par des virgule (ex: fullscreen,loop,volume) |
---|
21 | -* telecharger string "oui" : si oui affiche un lien de téléchargement |
---|
22 | |
---|
23 | ] |
---|
24 | <BOUCLE_tous(DOCUMENTS types_documents){id_document=#ID}{tout}> |
---|
25 | #SET{hauteur,#ENV{hauteur,#HAUTEUR|sinon{40}}} |
---|
26 | #SET{largeur,#ENV{largeur,#LARGEUR|sinon{350}}} |
---|
27 | [(#GET{largeur}|=={0}|oui)#SET{largeur,350}] |
---|
28 | [(#ENV{largeur} |
---|
29 | |et{#ENV{hauteur}|=={''}} |
---|
30 | |et{#ENV{largeur}|match{%}|non} |
---|
31 | |et{#HAUTEUR|>{0}} |
---|
32 | |et{#LARGEUR|>{0}} |
---|
33 | |et{#LARGEUR|>{#ENV{largeur}}}|oui) |
---|
34 | #SET{ratio,#LARGEUR|div{#ENV{largeur}}} |
---|
35 | #SET{hauteur,#HAUTEUR|div{#GET{ratio}}} |
---|
36 | ][(#ENV{hauteur} |
---|
37 | |et{#ENV{largeur}|=={''}} |
---|
38 | |et{#ENV{hauteur}|match{%}|non} |
---|
39 | |et{#HAUTEUR|!={0}} |
---|
40 | |et{#LARGEUR|sinon{350}} |
---|
41 | |et{[(#HAUTEUR|sinon{40}|>{#ENV{hauteur}})]}|oui) |
---|
42 | [(#SET{ratio,[(#HAUTEUR|sinon{40}|div{#ENV{hauteur}})]})] |
---|
43 | #SET{largeur,#LARGEUR|sinon{350}|div{#GET{ratio}}} |
---|
44 | ] |
---|
45 | |
---|
46 | [(#GET{largeur}|match{%}|non) |
---|
47 | [(#LOGO_DOCUMENT{vignette}|extraire_attribut{width}|>{#GET{largeur}}|oui) |
---|
48 | [(#SET{logo,[(#ENV{logo,#LOGO_DOCUMENT{vignette}|extraire_attribut{src}}|image_passe_partout{#GET{largeur},#GET{hauteur}}|image_recadre{#GET{largeur},#GET{hauteur}})]})]] |
---|
49 | [(#LOGO_DOCUMENT{vignette}|extraire_attribut{width}|>{#GET{largeur}}|non) |
---|
50 | [(#SET{logo,[(#ENV{logo,[(#LOGO_DOCUMENT{vignette}|extraire_attribut{src})]}|balise_img)]})]] |
---|
51 | ] |
---|
52 | [(#GET{largeur}|match{%}|oui) |
---|
53 | [(#SET{logo,[(#ENV{logo,[(#LOGO_DOCUMENT{vignette}|extraire_attribut{src})]}|balise_img|inserer_attribut{style,'width:100%;height:auto;'})]})] |
---|
54 | ] |
---|
55 | [(#GET{hauteur,0}|=={0}|oui) |
---|
56 | #SET{hauteur,#GET{logo}|extraire_attribut{height}} |
---|
57 | [(#GET{hauteur,0}|=={0}|oui) |
---|
58 | #SET{hauteur,#CONFIG{mediaspip_player/hauteur_defaut_son,24}] |
---|
59 | ] |
---|
60 | [(#SET{id_document_voir, [(#ID_DOCUMENT)_][(#VAL{0}|rand{100000})]})] |
---|
61 | |
---|
62 | #SET{variantes,#ARRAY} |
---|
63 | |
---|
64 | <BOUCLE_variantes(DOCUMENTS){mode=conversion}{objet=document}{id_objet=#ENV{id_document,#ENV{id}}}{statut==.*}>#SET{variantes,#GET{variantes}|push{#EXTENSION}}</BOUCLE_variantes> |
---|
65 | <div class='spip_document_#ID_DOCUMENT spip_documents[ spip_documents_(#ENV{align})] media audio'[ |
---|
66 | style='[(#ENV{align}|match{^(left|right)$}|?{' '})float:#ENV{align};] (#ENV{align,center}|=={center}|?{'',[(#GET{largeur}|match{%}|oui)width:#GET{largeur}]})'] |
---|
67 | id='media_#GET{id_document_voir}'>[ |
---|
68 | (#GET{logo}) |
---|
69 | ]<audio id="audio_[(#GET{id_document_voir})]"[(#ENV{controls,true}|in_array{#LISTE{false,non,none}}|non) |
---|
70 | controls][(#ENV{autoplay,non}|in_array{#LISTE{false,non,none}}|non) |
---|
71 | autoplay="autoplay"][ |
---|
72 | (#ENV{autobuffer,#ENV{preload,none}}|in_array{#LISTE{false,non,none}}|?{preload="none",[(#ENV{autobuffer,#ENV{preload,none}}|in_array{#LISTE{auto,none}}|?{[preload="(#ENV{autobuffer,#ENV{preload,none}})"],preload="metadata"})]})][(#ENV{loop,non}|in_array{#LISTE{false,non,none}}|non) |
---|
73 | loop][ |
---|
74 | width="(#GET{largeur}|match{%}|?{'',#GET{largeur}})"] |
---|
75 | style="[width:(#GET{largeur}|match{%}|?{#GET{largeur},[(#GET{largeur})px]});][height:(#ENV{hauteur,24})px]"> |
---|
76 | <BOUCLE_ssdoc_mp3(DOCUMENTS){mode=conversion}{objet=document}{id_objet=#ENV{id_document,#ENV{id}}}{statut==.*}{extension = mp3}{tout}> |
---|
77 | [<source[ type='(#MIME_TYPE|trim)[; codecs="(#AUDIOCODECID)"]'] src="(#FICHIER|timestamp|url_absolue)" />] |
---|
78 | </BOUCLE_ssdoc_mp3> |
---|
79 | <BOUCLE_ssdoc(DOCUMENTS){mode=conversion}{objet=document}{id_objet=#ENV{id_document,#ENV{id}}}{statut==.*}{extension != mp3}{tout}>[<source type='[(#MIME_TYPE|=={audio/mp4a-latm}|?{'audio/mp4',#MIME_TYPE}|trim)][; codecs="(#AUDIOCODECID)"]' src="(#FICHIER|timestamp|url_absolue)" />]</BOUCLE_ssdoc> |
---|
80 | [(#EXTENSION|in_array{#LISTE{ogg,oga,weba,mp3,webm,weba,aac,wav,m4a,mp4,3gp}}|et{#EXTENSION|in_array{#GET{variantes}}|non}|oui)[<source type='[(#MIME_TYPE|=={audio/mp4a-latm}|?{audio/mp4,#MIME_TYPE}|trim)][; codecs="(#AUDIOCODECID)"]' src="(#FICHIER|timestamp|url_absolue)" />]] |
---|
81 | [(#EXTENSION|in_array{#LISTE{oga,ogg,flac}}|non) |
---|
82 | <object width='#GET{largeur}' height='#GET{hauteur}' type="#MIME_TYPE"> |
---|
83 | [<param name='movie' value='(#FICHIER|timestamp|url_absolue)' />] |
---|
84 | [<param name='src' value='(#FICHIER|timestamp|url_absolue)' />] |
---|
85 | [(#ENV*|env_to_params)] |
---|
86 | <embed src='[(#FICHIER|timestamp|url_absolue)]' [(#ENV*|env_to_attributs)] width='#GET{largeur}' height='#GET{hauteur}'></embed> |
---|
87 | </object>] |
---|
88 | </audio> |
---|
89 | [(#ENV{infos}|=={non}|non) |
---|
90 | [<div class='#EDIT{titre} spip_doc_titre'><strong>(#TITRE)</strong></div>] |
---|
91 | [<div class='#EDIT{descriptif} spip_doc_descriptif'>(#DESCRIPTIF|PtoBR)[(#NOTES|PtoBR)]</div>]] |
---|
92 | [(#ENV{telecharger,non}|=={oui}|oui) |
---|
93 | <div class='spip_download'><a href="[(#URL_DOCUMENT|url_absolue)]" rel="enclosure"><:bouton_download:></a></div>] |
---|
94 | </div> |
---|
95 | <script type="text/javascript"> |
---|
96 | (function($) { |
---|
97 | var ms_player_init_[(#GET{id_document_voir})] = function(){ |
---|
98 | if(jQuery('#audio_[(#GET{id_document_voir})]').parent('.media_wrapper').size() == 0){ |
---|
99 | jQuery('#audio_[(#GET{id_document_voir})]').ms_player_init({ |
---|
100 | flowurl:'[(#CHEMIN{flash/flowplayer.swf}|url_absolue)]',[ |
---|
101 | (#ENV{min_width}|oui)[minwidth : '(#ENV{min_width}|match{%}|?{null,#ENV{min_width}})',]][(#ENV{cookie_volume,#CONFIG{mediaspip_player/cookie_volume,non}}|=={oui}|oui) |
---|
102 | cookie_volume:true,][(#ENV{autoplay,#ENV{autostart,non}}|in_array{#LISTE{false,non,none}}|non) |
---|
103 | autoplay:true,][(#ENV{volume}|is_numeric|oui) |
---|
104 | volume:#ENV{volume},][(#ENV{volume_bloque}|=={oui}|oui) |
---|
105 | volume_bloque:true,][(#ENV{muted}|=={oui}|oui) |
---|
106 | muted:true,][(#ENV{muted_bloque}|=={oui}|oui) |
---|
107 | muted_bloque:true,][ |
---|
108 | poster:"(#GET{logo}|extraire_attribut{src}|url_absolue)",][(#ENV{boutons_caches}|oui) |
---|
109 | boutons_caches:[(#ENV{boutons_caches}|explode{','}|json_encode)],][(#GET{largeur}|oui)[ |
---|
110 | width:'(#ENV{align}|match{^(left|right)$}|et{#ENV{largeur}|match{%}}|?{100%,[(#ENV{largeur}|replace{px,''})]})',] |
---|
111 | ]volume_slider_orientation:'#ENV{volume_slider_orientation,#CONFIG{mediaspip_player/slider_volume_orientation,horizontal}}' |
---|
112 | }); |
---|
113 | } |
---|
114 | } |
---|
115 | $(function(){ |
---|
116 | ms_player_init_[(#GET{id_document_voir})](); |
---|
117 | onAjaxLoad(function(){setTimeout(function(){ms_player_init_[(#GET{id_document_voir})]();},500)}); |
---|
118 | }); |
---|
119 | })(jQuery); |
---|
120 | </script> |
---|
121 | </BOUCLE_tous> |
---|
122 | #FILTRE{trim} |
---|