Changeset 60873 in spip-zone


Ignore:
Timestamp:
May 2, 2012, 7:39:44 PM (9 years ago)
Author:
marcimat@…
Message:

Permettre à tous les objets autorisant des documents (pas seulement les articles & rubriques) d'insérer des documents (et de les prendre en compte surtout ensuite) au moment de la première création de l'objet.
(Eric Ouvrard - http://thread.gmane.org/gmane.comp.web.spip.user/173775)

Location:
_core_/plugins/medias
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _core_/plugins/medias/action/ajouter_documents.php

    r54453 r60873  
    7474 */
    7575function action_ajouter_un_document_dist($id_document, $file, $objet, $id_objet, $mode) {
    76        
     76
    7777        $source = $file['tmp_name'];
    7878        $nom_envoye = $file['name'];
  • _core_/plugins/medias/medias_pipelines.php

    r55126 r60873  
    2626}
    2727
     28
     29/**
     30 * A chaque insertion d'un nouvel objet editorial
     31 * auquel on a attache des documents, restituer l'identifiant
     32 * du nouvel objet cree sur les liaisons documents/objet,
     33 * qui ont ponctuellement un identifiant id_objet negatif.
     34 * cf. medias_affiche_gauche()
     35**/
    2836function medias_post_insertion($flux){
    2937
    30         $objet = objet_type($flux['args']['table']);
    31         if (in_array($objet,array('article','rubrique'))
     38        $objet    = objet_type($flux['args']['table']);
     39        $id_objet = $flux['args']['id_objet'];
     40
     41        if (autoriser('joindredocument', $objet, $id_objet)
    3242          AND $id_auteur = intval($GLOBALS['visiteur_session']['id_auteur'])){
    3343
    34                 # cf. GROS HACK ecrire/inc/getdocument
     44                # cf. HACK medias_affiche_gauche()
    3545                # rattrapper les documents associes a cet objet nouveau
    3646                # ils ont un id = 0-id_auteur
    37                 $id_objet = $flux['args']['id_objet'];
     47
    3848                # utiliser l'api editer_lien pour les appels aux pipeline edition_lien
    3949                include_spip('action/editer_liens');
     
    125135}
    126136
     137/**
     138 * Pipeline affiche_gauche
     139 * Affiche le formulaire d'ajout de document sur le formulaire d'edition
     140 * d'un objet (lorsque cet objet peut recevoir des documents).
     141 *
     142 * HACK : Lors d'une premiere creation de l'objet, celui-ci n'ayant pas
     143 * encore d'identifiant tant que le formulaire d'edition n'est pas enregistre,
     144 * les liaisions entre les documents lies et l'objet a creer sauvegardent
     145 * un identifiant d'objet negatif de la valeur de id_auteur (l'auteur
     146 * connecte). Ces liaisons seront corrigees apres validation dans
     147 * medias_post_insertion()
     148 */
    127149function medias_affiche_gauche($flux){
    128150        if ($en_cours = trouver_objet_exec($flux['args']['exec'])
  • _core_/plugins/medias/paquet.xml

    r60826 r60873  
    22        prefix="medias"
    33        categorie="multimedia"
    4         version="2.7.24"
     4        version="2.7.25"
    55        etat="stable"
    66        compatibilite="[3.0.0-alpha2;["
    77        logo="prive/themes/spip/images/portfolio-32.png"
    88        schema="1.1.1"
    9 >       
     9>
    1010
    1111        <nom>Medias</nom>
Note: See TracChangeset for help on using the changeset viewer.