Changeset 30333 in spip-zone


Ignore:
Timestamp:
Jul 29, 2009, 11:51:32 PM (10 years ago)
Author:
cy_altern@…
Message:

fusion avec le plugin gallery-embed :

  • modification de la creation des auteurs
  • gestion des imageBlock des modeles par la fonction call_imageblock() histoire d'assurer le coup si le module correspondant de Gallery n’est pas installe...

Du coup ca merite le changement de version: passage a la 1.2.0

Location:
_plugins_/gallery2
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/gallery2/gallery_fonctions.php

    r30285 r30333  
    11<?php
    2 // MODIF-220709 : ajout de la fonction call_imageblock()
    32// fonction pour récuperer le block HTML produit par gallery
    43        function call_imageblock($params) {
     
    1817                return $html;
    1918        }
    20 // Finde MODIF
    21 
     19
     20 
    2221// fonction pour lister les ss-reps de /squelettes du plugin et retourner un array
    2322    function liste_ssreps() {
     
    3332    }
    3433
    35 // MODIF-220709 : suppression de la fonction trouveid()
    36 /*
    37 // fonction pour tester si un user SPIP est user de Gallery2
    38     function trouveid($userName) {
    39         global $gallery;
    40 
    41         $query = 'SELECT [GalleryUser::id]
    42                   FROM [GalleryUser]
    43                   WHERE [GalleryUser::userName] = ?
    44         ';
    45 
    46         // Check to see if we have a collision //
    47         list($ret, $results) =
    48             $gallery->search($query, array($userName), array('limit' => array('count' => 1))); 
    49 
    50         $result = $results->nextResult();
    51         if ($result[0] > 0)
    52             $userspip_exist_in_gallery = array( true, $result[0] ); 
    53         else
    54            $userspip_exist_in_gallery = array( false, 0 ); 
    55        
    56         return($userspip_exist_in_gallery);
    57     }
    58 */ 
    59 // fin de MODIF
    6034 
    6135// fonction d'initialisation de gallery
     
    6943        $cfg['chemin_gallery'] = '/'.trim(rtrim($cfg['chemin_gallery'], '/'), '/').'/';
    7044
    71 //MODIF-220709 : voir autre proposition ci-dessous
    72 /*      // mauvaise bidouille pour gérer l'include du fichier embed.php de Gallery
    73         // selon qu'on est dans le public ou le privé...
     45      // mauvaise bidouille pour gérer l'include du fichier embed.php de Gallery
     46      // selon qu'on est dans le public ou le privé...
    7447        $chem_inclure = trim($cfg['chemin_gallery'],'/').'/';
    7548        $chem_inclure = _DIR_RACINE.$chem_inclure;
     
    8053        else
    8154            die(_T('gallery:fichier_embed_pas_trouve'));
    82 */
    83         $chem_inclure = '/../../../'.trim($cfg['chemin_gallery'],'/').'/';
    84                 //echo dirname(__FILE__).'/../../../'.$chem_inclure.'embed.php';
    85                 if (file_exists(dirname(__FILE__) .$chem_inclure.'embed.php'))
    86                 include_once(dirname(__FILE__) .$chem_inclure.'embed.php');
    87                 else die(_T('gallery:fichier_embed_pas_trouve'));
    88 // fin de MODIF
    8955                 
    9056        $lang = $GLOBALS['auteur_session']['lang'] ;
     
    10571                                         'loginRedirect' => $cfg['chemin_spip'], 
    10672                                         'activeUserId' => $GLOBALS['auteur_session']['id_auteur'] ));
    107                
    108 //MODIF-220709
    109                 //if ($ret) print 'GalleryEmbed::init failed, here is the error message: ' . $ret->getAsHtml(); 
    110 // fin de MODIF
    111 
    11273        return $ret;
    11374    }
     
    11778    function gallery2(){   
    11879        $ret=gallery_init();
    119 
    120 //MODIF-220709 : nouvelle méthode de synchronistation SPIP/GALLERY sans utilisation de trouveid()
    121                 /*        $ret = GalleryEmbed::checkActiveUser( $GLOBALS['auteur_session']['id_auteur']);   
    122         if($ret) {
    123              $extUserId = $GLOBALS['auteur_session']['id_auteur'];
    124 //             $extUserId = $id_auteur;
    125              $args = array('username' => $GLOBALS['auteur_session']['login']);
    126 //             $args = array('username' => $login_auteur);
    127              $spipgallery = trouveid( $args['username']) ;
    128              if(  $spipgallery[0] ) {
    129                 $ret = GalleryEmbed::addExternalIdMapEntry($extUserId, $spipgallery[1], 'GalleryUser') ;
    130              }
    131              else {
    132                 $ret = GalleryEmbed::createUser($extUserId, $args) ;
    133              }
    134          }*/
    135                  
    136          /* Now you *could* do something with $g2moddata['themeData'] */
    137         //$g2data = GalleryEmbed::handleRequest();
    138        
    139         if ($ret) {
    140                  /* Error! */
    141                  /* Did we get an error because the user doesn't exist in g2 yet? */     
    142                 $ret2 =GalleryEmbed::isExternalIdMapped($GLOBALS['auteur_session']['id_auteur'],'GalleryUser');   
    143                  if ($ret2 && $ret2->getErrorCode() & ERROR_MISSING_OBJECT) {
    144                          /* The user does not exist in G2 yet. Create in now on-the-fly */               
    145                                 $extUserId = $GLOBALS['auteur_session']['id_auteur'];
    146                                 $args = array('username' => $GLOBALS['auteur_session']['login']);
    147                                 $ret = GalleryEmbed::createUser($extUserId, $args) ;                                                                                                                   
    148                          if ($ret) {
    149                          /* An error during user creation. Not good, print an error or do whatever is appropriate * in your emApp when an error occurs */
    150                                  print "An error occurred during the on-the-fly user creation <br>";
    151                                  print $ret->getAsHtml();
    152                                  exit;
    153                          }
    154                  } else {
    155                          /* The error we got wasn't due to a missing user, it was a real error */
    156                          if ($ret2) {
    157                                  print "An error occurred while checking if a user already exists<br>";
    158                                  print $ret2->getAsHtml();
    159                          }
    160                          print "An error occurred while trying to initialize G2<br>";
    161                          print $ret->getAsHtml();
    162                          exit;
    163                  }
     80        if ($ret) {
     81                 /* Error! */
     82                 /* Did we get an error because the user doesn't exist in g2 yet? */     
     83                $ret2 =GalleryEmbed::isExternalIdMapped($GLOBALS['auteur_session']['id_auteur'],'GalleryUser');   
     84                 if ($ret2 && $ret2->getErrorCode() & ERROR_MISSING_OBJECT) {
     85                         /* The user does not exist in G2 yet. Create in now on-the-fly */               
     86                                $extUserId = $GLOBALS['auteur_session']['id_auteur'];
     87                                $args = array('username' => $GLOBALS['auteur_session']['login']);
     88                                $ret = GalleryEmbed::createUser($extUserId, $args) ;                                                                                                                   
     89                         if ($ret) {
     90                         /* An error during user creation. Not good, print an error or do whatever is appropriate * in your emApp when an error occurs */
     91                                 print "An error occurred during the on-the-fly user creation <br>";
     92                                 print $ret->getAsHtml();
     93                                 exit;
     94                         }
     95                 } else {
     96                         /* The error we got wasn't due to a missing user, it was a real error */
     97                         if ($ret2) {
     98                                 print "An error occurred while checking if a user already exists<br>";
     99                                 print $ret2->getAsHtml();
     100                         }
     101                         print "An error occurred while trying to initialize G2<br>";
     102                         print $ret->getAsHtml();
     103                         exit;
     104                 }
    164105         }
    165 // fin de MODIF
    166106         
    167107      // balancer le résultat de GalleryEmbed::handleRequest(); dans une GLOBALS pour pouvoir interroger par des filtres plus tard
     
    218158       // si il existe une référence d'item on l'utilise pour envoyer une image unique
    219159         if ($item_id != '' AND intval($item_id)!= 0){
    220 
    221 // MODIF-220709                                                                                                                                           
    222 /*             list($ret,$html,$head1) = GalleryEmbed::getBlock('imageblock', 'ImageBlock', array(
    223                   'blocks' => 'specificItem',
    224                   'show' => $show,
    225                   'link' => $lien,
    226                   'itemId' => intval($item_id),
    227                   'maxSize' => $taille));
    228             if ($ret) {
    229                 return "<blink><span style='color: red;'>"._T('gallery:erreur_insertion')." ".$item_id." ".$ret."</span></blink>";
    230             }*/
    231                         $params= array(
    232                   'blocks' => 'specificItem',
    233                   'show' => $show,
    234                   'link' => $lien,
    235                   'itemId' => intval($item_id),
    236                   'maxSize' => $taille);                       
    237                         $html=call_imageblock($params);
    238         }
    239 // fin de MODIF
     160            $params= array(
     161                          'blocks' => 'specificItem',
     162                          'show' => $show,
     163                          'link' => $lien,
     164                          'itemId' => intval($item_id),
     165                          'maxSize' => $taille);                       
     166            $html=call_imageblock($params);
     167        }
    240168
    241169      // si pas référence d'item mais un nbe de dernières photos, on envoie les X dernières
     
    247175                $sep = '|';
    248176            }
    249                        
    250 //MODIF-220709 : appel de la fn call_imageblock()
    251 /*             list($ret,$html,$head1) = GalleryEmbed::getBlock('imageblock', 'ImageBlock', array(
    252                   'blocks' => $ch_last,
    253                   'show' => $show,
    254                   'link' => $lien,
    255                   'maxSize' => $taille));
    256             if ($ret) {
    257                 return "<blink><span style='color: red;'>"._T('gallery:erreur_insertion')." ".$ret."</span></blink>";
    258             }*/
    259                         $params=  array(
    260                   'blocks' => $ch_last,
    261                   'show' => $show,
    262                   'link' => $lien,
    263                   'maxSize' => $taille);                       
    264                         $html=call_imageblock($params);
    265         }
    266 // fin de MODIF
     177            $params=  array(
     178                          'blocks' => $ch_last,
     179                          'show' => $show,
     180                          'link' => $lien,
     181                          'maxSize' => $taille);                       
     182            $html=call_imageblock($params);
     183        }
    267184
    268185      // si aucun paramètre on envoie une photo au hazard
    269186        else {
    270187            $ch_type =  ($type == 'album' ? 'randomAlbum' :  'randomImage');
    271                        
    272 //MODIF-220709 : appel de la fn call_imageblock()
    273 /*            list($ret,$html,$head1) = GalleryEmbed::getBlock('imageblock', 'ImageBlock', array(
    274                   'blocks' => $ch_type,
    275                   'show' => $show,
    276                   'link' => $lien,
    277                   'maxSize' => $taille));
    278             if ($ret) {
    279                 return "<blink><span style='color: red;'>"._T('gallery:erreur_insertion')." ".$ret."</span></blink>";
    280             }*/
    281                         $params= array(
    282                   'blocks' => $ch_type,
    283                   'show' => $show,
    284                   'link' => $lien,
    285                   'maxSize' => $taille);                       
    286                         $html=call_imageblock($params);
    287         }
    288 // fin de MODIF
    289 
    290 //echo '<br>brut= <br>'.$html.'<br>';   
     188            $params= array(
     189                          'blocks' => $ch_type,
     190                          'show' => $show,
     191                          'link' => $lien,
     192                          'maxSize' => $taille);                       
     193            $html=call_imageblock($params);
     194        }
     195
    291196      // retourner des blocs formatés comme les <docXX> de SPIP 
    292197        // supprimer le <div class="block-imageblock-ImageBlock"> englobant les résultats
     
    349254         else $taille = 640;
    350255         
    351 //MODIF-220709 : appel de la fn call_imageblock()                                                                                                                                       
    352 /*         list($ret,$html,$head1) = GalleryEmbed::getBlock('imageblock', 'ImageBlock', array(
    353               'blocks' => 'specificItem',
    354               'show' => 'none',
    355               'link' => 'none',
    356               'maxSize' => $taille,
    357               'itemId' => intval($item_id)
    358               ));
    359         if ($ret) {
    360             return "<blink><span style='color: red;'>"._T('gallery:erreur_insertion')." ".$item_id." ".$ret."</span></blink>"  };*/
    361                 $params=  array(
    362               'blocks' => 'specificItem',
    363               'show' => 'none',
    364               'link' => 'none',
    365               'maxSize' => $taille,
    366               'itemId' => intval($item_id));                   
    367                 $html=call_imageblock($params);   
    368 // fin de MODIF
     256        $params=  array(
     257                  'blocks' => 'specificItem',
     258                  'show' => 'none',
     259                  'link' => 'none',
     260                  'maxSize' => $taille,
     261                  'itemId' => intval($item_id));                       
     262        $html=call_imageblock($params);   
    369263       
    370264        // triturer le html de retour pour retourner la forme voulue
  • _plugins_/gallery2/plugin.xml

    r29830 r30333  
    77        <auteur>contribution initiale (spip 1.8): E. Lafargue,
    88    portage spip 1.9: job,
    9     passage en plugin (spip 2.0): cy_altern</auteur>
     9    passage en plugin (spip 2.0): philippe GRISON, cy_altern
     10_ &#169; 2009 - distribu&#233; sous licence GNU/LGPL
     11  </auteur>
    1012        <version>
    11            1.1.0
     13           1.2.0
    1214        </version>
    1315        <etat>
Note: See TracChangeset for help on using the changeset viewer.