Changeset 74817 in spip-zone


Ignore:
Timestamp:
Aug 18, 2013, 6:37:56 PM (6 years ago)
Author:
joseph@…
Message:

gestion des connexions pour les crayons et la mediabox

Location:
_plugins_/modeles_media/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/modeles_media/trunk/media_fonctions.php

    r74807 r74817  
    1818        $sql_type = champ_sql('type_document', $p);
    1919        $sql_poids = champ_sql('taille', $p);
    20         $p->code = "calculer_balise_MEDIA_LEGENDE($conteneur,$width,$sql_id_document,$sql_titre,$sql_descriptif,$sql_credits,$sql_type,$sql_poids,\$Pile[0]['args'])";
    21         return $p;
    22 }
    23 
    24 function calculer_balise_MEDIA_LEGENDE($conteneur,$width,$sql_id_document,$sql_titre,$sql_descriptif,$sql_credits,$sql_type,$sql_poids,$args){
     20        $connect = '';
     21        if (isset($p->boucles[$p->id_boucle]))
     22                $connect = $p->boucles[$p->id_boucle]->sql_serveur;
     23        $connect = _q($connect);
     24        $p->code = "calculer_balise_MEDIA_LEGENDE($conteneur,$width,$sql_id_document,$sql_titre,$sql_descriptif,$sql_credits,$sql_type,$sql_poids,\$Pile[0]['args'],$connect)";
     25        return $p;
     26}
     27
     28function calculer_balise_MEDIA_LEGENDE($conteneur,$width,$sql_id_document,$sql_titre,$sql_descriptif,$sql_credits,$sql_type,$sql_poids,$args,$connect=''){
    2529        $ret = '';
    2630        $env_legende = $args['legende'];
     
    4751                                'width' => $width,
    4852                                'conteneur' => $conteneur
    49                         ));
     53                        ),array(),$connect);
    5054                } else {
    5155                        $width = is_numeric($width) ? 'width: '.intval($width).'px;' : '';
    5256                        $dt = $conteneur=='dl' ? 'dt' : 'div';
    5357                        $dd = $conteneur=='dl' ? 'dd' : 'div';
     58                        $distant = ($connect) ? $connect.'__' : '';
    5459                        // Titre
    5560                        if ($env_titre && $env_titre!='titre') {
     
    5863                        } elseif ($env_titre=='titre' || $env_legende) {
    5964                                $titre = typo(supprimer_numero($sql_titre));
    60                                 $crayons_titre = defined('_DIR_PLUGIN_CRAYONS') ? ' crayon document-titre-'.$sql_id_document : '';
     65                                $crayons_titre = defined('_DIR_PLUGIN_CRAYONS') ? ' crayon '.$distant.'document-titre-'.$sql_id_document : '';
    6166                        } else {
    6267                                $titre = '';
     
    6974                        } elseif ($env_descriptif=='descriptif' || $env_legende) {
    7075                                $descriptif = propre($sql_descriptif);
    71                                 $crayons_descriptif = defined('_DIR_PLUGIN_CRAYONS') ? ' crayon document-descriptif-'.$sql_id_document : '';
     76                                $crayons_descriptif = defined('_DIR_PLUGIN_CRAYONS') ? ' crayon '.$distant.'document-descriptif-'.$sql_id_document : '';
    7277                        } else {
    7378                                $descriptif = '';
     
    8489                        } elseif ($env_credits=='credits' || $env_legende=='complete') {
    8590                                $credits = typo($sql_credits);
    86                                 $crayons_credits = defined('_DIR_PLUGIN_CRAYONS') && defined('_DIR_PLUGIN_MEDIAS') ? ' crayon document-credits-'.$sql_id_document : '';
     91                                $crayons_credits = defined('_DIR_PLUGIN_CRAYONS') && defined('_DIR_PLUGIN_MEDIAS') ? ' crayon '.$distant.'document-credits-'.$sql_id_document : '';
    8792                        } else {
    8893                                $credits = '';
     
    200205        $forcer_lien = is_null($forcer_lien) ? "''" : $forcer_lien;
    201206        $id_document = champ_sql('id_document', $p);
    202         $p->code = "calculer_balise_MEDIA_LIEN($objet,$forcer_lien,$id_document,\$Pile[0]['args'])";
    203         return $p;
    204 }
    205 
    206 function calculer_balise_MEDIA_LIEN($objet,$forcer_lien,$id_document,$args) {
     207        $connect = '';
     208        if (isset($p->boucles[$p->id_boucle]))
     209                $connect = $p->boucles[$p->id_boucle]->sql_serveur;
     210        $connect = _q($connect);
     211        $p->code = "calculer_balise_MEDIA_LIEN($objet,$forcer_lien,$id_document,\$Pile[0]['args'],$connect)";
     212        return $p;
     213}
     214
     215function calculer_balise_MEDIA_LIEN($objet,$forcer_lien,$id_document,$args,$connect='') {
    207216        $lien = $args['lien'];
    208217        $titre_lien = $args['titre_lien'];
     
    219228                        $titre_lien = $titre;
    220229        }
    221         $l = calculer_url($lien, $titre_lien, 'tout');
     230        $l = calculer_url($lien, $titre_lien, 'tout', $connect);
    222231        if (!$l['url'])
    223232                return $object;
    224         $a = '<a href="'.$l['url'].'"';
     233        if ($connect) #Si connexion précisée, alors on fournit une URL absolue
     234                $a = '<a href="'.url_absolue($l['url']).'"';
     235        else
     236                $a = '<a href="'.$l['url'].'"';
    225237        $a .= $l['class'] ? ' class="'.$l['class'].'"' : '';
    226238        $a .= $l['titre'] ? ' title="'.attribut_html($l['titre']).'"' : '';
  • _plugins_/modeles_media/trunk/paquet.xml

    r74809 r74817  
    22        prefix="media"
    33        categorie="edition"
    4         version="1.2.1"
     4        version="1.2.2"
    55        etat="stable"
    66        compatibilite="[3.0.0;3.0.99]"
Note: See TracChangeset for help on using the changeset viewer.