Changeset 71012 in spip-zone


Ignore:
Timestamp:
Mar 22, 2013, 3:30:23 PM (9 years ago)
Author:
kent1@…
Message:

On touve une solution pour le ticket http://www.mediaspip.net/ticket/les-conteneurs-sons-et-videos-n

Si un fichier ogg est détecté comme ayant une piste vidéo, on le renomme à l'upload en ogv pour le traiter comme tel

Version 1.2.7

Location:
_plugins_/spipmotion/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/spipmotion/trunk/paquet.xml

    r71008 r71012  
    22        prefix="spipmotion"
    33        categorie="multimedia"
    4         version="1.2.6"
     4        version="1.2.7"
    55        etat="stable"
    66        compatibilite="[3.0.0;3.0.99]"
  • _plugins_/spipmotion/trunk/spipmotion_pipelines.php

    r71009 r71012  
    5050 * notamment lors de l'ajout d'un document
    5151 *
     52 * Lors de l'ajout d'un document, si c'est un ogg, on vérifie bien que le document n'est qu'un fichier audio,
     53 * si c'est une vidéo, on le renome en .ogv et on update la base de donnée
     54 *
    5255 * Lors de la suppression de document, supprime les versions encodées créées par spipmotion s'il y a lieu
    5356 *
     
    5861        if(isset($flux['args']['operation']) && in_array($flux['args']['operation'], array('ajouter_document','document_copier_local'))){
    5962                $id_document = isset($flux['args']['id_objet']) ? intval($flux['args']['id_objet']) : 0;
     63                $infos_doc = sql_fetsel('*','spip_documents','id_document='.intval($id_document));
     64               
     65                /**
     66                 * Si on ajoute le document et que :
     67                 * -* son extension est ogg
     68                 * -* il a une piste vidéo
     69                 *
     70                 * On le renomme en ogv et on update son media en video
     71                 *
     72                 * On refait la requête pour les infos du document
     73                 *
     74                 * Correction du ticket http://www.mediaspip.net/ticket/les-conteneurs-sons-et-videos-n
     75                 */
     76                if(
     77                        ($flux['args']['operation'] == 'ajouter_document')
     78                        && ($infos_doc['extension'] == 'ogg')
     79                        && ($infos_doc['hasvideo'] == 'oui')
     80                ){
     81                        include_spip('inc/documents');
     82                        spip_log('On renomme de ogg en ogv','spipmotion.'._LOG_ERREUR);
     83                        $rep_ogv = creer_repertoire_documents('ogv');
     84                       
     85                        $new_file = str_replace('.ogg','.ogv',basename($infos_doc['fichier']));
     86                        $renomme = rename(get_spip_doc($infos_doc['fichier']),$rep_ogv.$new_file);
     87                        if($renomme){
     88                                sql_updateq('spip_documents',array('media'=>'video','extension'=>'ogv','fichier'=> set_spip_doc($rep_ogv.$new_file)),'id_document ='.intval($id_document));
     89                                $infos_doc = sql_fetsel('*','spip_documents','id_document='.intval($id_document));
     90                        }
     91                }
    6092                /**
    6193                 * Il n'est pas nécessaire de récupérer la vignette d'une vignette ni d'un document distant
    6294                 * ni ses infos.
    6395                 */
    64                 $infos_doc = sql_fetsel('mode,distant,extension','spip_documents','id_document='.intval($id_document));
     96               
    6597                if(($infos_doc['mode'] != 'vignette') && ($infos_doc['distant'] == 'non')){
    6698                        include_spip('inc/config');
Note: See TracChangeset for help on using the changeset viewer.