Skip to content
Extraits de code Groupes Projets
Valider 5df7ada7 rédigé par cerdic's avatar cerdic
Parcourir les fichiers

Retour sur la gestion des <emb> pour ameliorer le support et la migration : ce...

Retour sur la gestion des <emb> pour ameliorer le support et la migration : ce n'est pas seulement les media=file qui peuvent etre emb mais aussi les autres
on generalise le mecanisme en renommant le filtre en medias_trouver_modele_emb qui prend en 3eme argument la racine du modele cherche, et si aucun modele specifique n'utilise pour l'extention ou le mime type on revient sur le modele racine initial
De cette façon les plugins peuvent proposer des modeles emb specifiques pour tout type de media (cf oembed). Par defaut seule le modele file propose des declinaisons historiques pour text/html et text/csv
parent 1ef0cf9b
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -380,4 +380,37 @@ function duree_en_secondes($duree, $precis = false) {
$out .= intval($duree).'s';
}
return $out;
}
\ No newline at end of file
}
/**
* Trouver le fond pour embarquer un document
* - avec une extension
* - avec un mime_type donne
*
* => modeles/{modele_base}_emb_html.html si il existe
* => modeles/{modele_base}_text_html.html si il existe,
* => modeles/{modele_base}_text.html si il existe,
* => modeles/{modele_base}.html sinon
*
* @param $extension
* @param $mime_type
* @return mixed
*/
function medias_trouver_modele_emb($extension, $mime_type, $modele_base='file') {
if ($extension and trouve_modele($fond = $modele_base . '_emb_' . $extension)) {
return $fond;
}
$fond = $modele_base . '_emb_' . preg_replace(',\W,', '_', $mime_type);
if (trouve_modele($fond)) {
return $fond;
}
$fond = $modele_base . '_emb_' . preg_replace(',\W.*$,', '', $mime_type);
if (trouve_modele($fond)) {
return $fond;
}
return $modele_base;
}
<BOUCLE_ext(DOCUMENTS types_documents) {id_document=#ENV{id,#ENV{id_document}}} {tout}>
<INCLURE{fond=modeles/#EXTENSION|medias_trouver_modele_emb{#MIME_TYPE,audio}}{id=#ID_DOCUMENT}{env}{emb=' '}/>
</BOUCLE_ext>
<BOUCLE_ext(DOCUMENTS types_documents) {id_document=#ENV{id,#ENV{id_document}}} {tout}>
<INCLURE{fond=modeles/#EXTENSION|trouver_modele_emb{#MIME_TYPE}}{id=#ID_DOCUMENT}{env}{emb=' '}/>
<INCLURE{fond=modeles/#EXTENSION|medias_trouver_modele_emb{#MIME_TYPE,file}}{id=#ID_DOCUMENT}{env}{emb=' '}/>
</BOUCLE_ext>
<?php
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
/**
* Trouver le fond pour embarquer un document
* - avec une extension
* - avec un mime_type donne
*
* => modeles/emb_html.html si il existe
* => modeles/text_html.html si il existe,
* => modeles/text.html sinon
*
* @param $extension
* @param $mime_type
* @return mixed
*/
function trouver_modele_emb($extension, $mime_type) {
if ($extension and trouve_modele($fond = 'file_emb_' . $extension)) {
return $fond;
}
$fond = 'file_emb_' . preg_replace(',\W,', '_', $mime_type);
if (trouve_modele($fond)) {
return $fond;
} else {
return 'file_emb_' . preg_replace(',\W.*$,', '', $mime_type);
}
}
<BOUCLE_ext(DOCUMENTS types_documents) {id_document=#ENV{id,#ENV{id_document}}} {tout}>
<INCLURE{fond=modeles/#EXTENSION|medias_trouver_modele_emb{#MIME_TYPE,image}}{id=#ID_DOCUMENT}{env}{emb=' '}/>
</BOUCLE_ext>
<BOUCLE_ext(DOCUMENTS types_documents) {id_document=#ENV{id,#ENV{id_document}}} {tout}>
<INCLURE{fond=modeles/#EXTENSION|medias_trouver_modele_emb{#MIME_TYPE,video}}{id=#ID_DOCUMENT}{env}{emb=' '}/>
</BOUCLE_ext>
<paquet
prefix="medias"
categorie="multimedia"
version="2.26.1"
version="2.27.0"
etat="stable"
compatibilite="[3.3.0-dev;3.3.*]"
logo="prive/themes/spip/images/portfolio-32.png"
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter