[ Index ]
 

Code source de SPIP 1.9.2c

Accédez au Source d'autres logiciels libres

title

Body

[fermer]

/ecrire/exec/ -> auteur_infos.php (source)

   1  <?php
   2  
   3  /***************************************************************************\
   4   *  SPIP, Systeme de publication pour l'internet                           *
   5   *                                                                         *
   6   *  Copyright (c) 2001-2007                                                *
   7   *  Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James  *
   8   *                                                                         *
   9   *  Ce programme est un logiciel libre distribue sous licence GNU/GPL.     *
  10   *  Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne.   *
  11  \***************************************************************************/
  12  
  13  if (!defined("_ECRIRE_INC_VERSION")) return;
  14  include_spip('inc/presentation');
  15  include_spip('inc/acces');
  16  include_spip('inc/autoriser');
  17  
  18  // http://doc.spip.org/@exec_auteur_infos_dist
  19  function exec_auteur_infos_dist() {
  20      global $connect_id_auteur;
  21  
  22      $id_auteur = intval(_request('id_auteur'));
  23  
  24      pipeline('exec_init',
  25          array('args' => array(
  26              'exec'=> 'auteur_infos',
  27              'id_auteur'=>$id_auteur),
  28              'data'=>''
  29          )
  30      );
  31  
  32      if ($id_auteur) {
  33          $s = spip_query("SELECT * FROM spip_auteurs WHERE id_auteur=$id_auteur");
  34          $auteur = spip_fetch_array($s);
  35      } else {
  36          $auteur = array();
  37          if (strlen(_request('nom')))
  38              $auteur['nom'] = _request('nom');
  39      }
  40  
  41      $auteur_infos = charger_fonction('auteur_infos', 'inc');
  42      $fiche = $auteur_infos($auteur, _request('redirect'));
  43  
  44  
  45  /*    // Si on est appele en ajax, on renvoie la fiche
  46      if (_request('var_ajaxcharset')) {
  47          ajax_retour($fiche);
  48      }
  49      
  50      // Sinon on la met en page
  51      else {
  52  */
  53          // Entete
  54          if ($connect_id_auteur == $id_auteur) {
  55              $commencer_page = charger_fonction('commencer_page', 'inc');
  56              echo $commencer_page($auteur['nom'], "auteurs", "perso");
  57          } else {
  58              $commencer_page = charger_fonction('commencer_page', 'inc');
  59              echo $commencer_page($auteur['nom'],"auteurs","redacteurs");
  60          }
  61          echo "<br /><br /><br />";
  62  
  63          debut_gauche();
  64  
  65          echo cadre_auteur_infos($id_auteur, $auteur);
  66  
  67          echo pipeline('affiche_gauche',
  68              array('args' => array (
  69                  'exec'=>'auteur_infos',
  70                  'id_auteur'=>$id_auteur),
  71              'data'=>'')
  72          );
  73  
  74  
  75          creer_colonne_droite();
  76          echo pipeline('affiche_droite',
  77                    array('args' => array(
  78                              'exec'=>'auteur_infos',
  79                              'id_auteur'=>$id_auteur),
  80                      'data'=>'')
  81                    );
  82  
  83  
  84          // Interface de logo
  85          if ($spip_display != 4) {
  86              $iconifier = charger_fonction('iconifier', 'inc');
  87  
  88              if ($id_auteur > 0)
  89                  echo $iconifier('id_auteur', $id_auteur, 'auteur_infos');
  90  
  91              // nouvel auteur : le hack classique
  92              else if ($fiche)
  93                  echo $iconifier('id_auteur',
  94                  0 - $GLOBALS['auteur_session']['id_auteur'],
  95                  'auteur_infos');
  96          }
  97  
  98          echo debut_droite();
  99  
 100          echo debut_cadre_relief("redacteurs-24.gif", true);
 101  
 102          // $fiche est vide si on demande par exemple
 103          // a creer un auteur alors que c'est interdit
 104          if ($fiche) {
 105              echo $fiche;
 106          } else {
 107              gros_titre(_T('info_acces_interdit'));
 108          }
 109  
 110          echo pipeline('affiche_milieu',
 111                    array('args' => array(
 112                              'exec'=>'auteur_infos',
 113                              'id_auteur'=>$id_auteur),
 114                      'data'=>''));
 115          
 116          auteurs_interventions($auteur);
 117          
 118          echo fin_cadre_relief(true),
 119              fin_gauche(),
 120              fin_page();
 121  /*    } */
 122  
 123  }
 124  
 125  // http://doc.spip.org/@cadre_auteur_infos
 126  function cadre_auteur_infos($id_auteur, $auteur)
 127  {
 128      global $connect_statut;
 129  
 130      if (!$id_auteur) return '';
 131  
 132      $res = "\n<div style='font-weight: bold; text-align: center' class='verdana1 spip_xx-small'>" 
 133      . _T('titre_cadre_numero_auteur')
 134      . "<br /><span class='spip_xx-large'>"
 135      . $id_auteur
 136      . '</span></div>';
 137  
 138  // "Voir en ligne" si l'auteur a un article publie
 139  // seuls les admins peuvent "previsualiser" une page auteur
 140      $n = spip_num_rows(spip_query("SELECT lien.id_article FROM spip_auteurs_articles AS lien, spip_articles AS articles WHERE lien.id_auteur=$id_auteur AND lien.id_article=articles.id_article AND articles.statut='publie'"));
 141  
 142      if ($n)
 143        $res .= voir_en_ligne ('auteur', $id_auteur, 'publie', 'racine-24.gif', false);
 144      else if ($connect_statut == '0minirezo')
 145        $res .= voir_en_ligne ('auteur', $id_auteur, 'prop', 'racine-24.gif', false);
 146  
 147      return debut_boite_info(true) . $res . fin_boite_info(true);
 148  }
 149  
 150  
 151  // http://doc.spip.org/@auteurs_interventions
 152  function auteurs_interventions($auteur) {
 153      $id_auteur = $auteur['id_auteur'];
 154      $statut = $auteur['statut'];
 155  
 156      global $connect_statut, $connect_id_auteur;
 157  
 158      include_spip('inc/message_select');
 159  
 160      if ($connect_statut == "0minirezo") $aff_art = "'prepa','prop','publie','refuse'";
 161      else if ($connect_id_auteur == $id_auteur) $aff_art = "'prepa','prop','publie'";
 162      else $aff_art = "'prop','publie'";
 163  
 164      echo afficher_articles(_T('info_articles_auteur'),  array('FROM' => "spip_articles AS articles, spip_auteurs_articles AS lien",  "WHERE" => "lien.id_auteur='$id_auteur' AND lien.id_article=articles.id_article AND articles.statut IN ($aff_art)",  'ORDER BY' => "articles.date DESC"));
 165  
 166      if ($id_auteur != $connect_id_auteur
 167          AND ($statut == '0minirezo' OR $statut == '1comite')) {
 168          echo "<div>&nbsp;</div>";
 169          debut_cadre_couleur();
 170  
 171          $vus = array();
 172      
 173          echo afficher_messages('<b>' . _T('info_discussion_cours') . '</b>', ", spip_auteurs_messages AS lien, spip_auteurs_messages AS lien2", "lien.id_auteur=$connect_id_auteur AND lien2.id_auteur = $id_auteur AND statut='publie' AND type='normal' AND rv!='oui' AND lien.id_message=messages.id_message AND lien2.id_message=messages.id_message", $vus, false, false);
 174      
 175          echo afficher_messages('<b>' . _T('info_vos_rendez_vous') . '</b>', ", spip_auteurs_messages AS lien, spip_auteurs_messages AS lien2", "lien.id_auteur=$connect_id_auteur AND lien2.id_auteur = $id_auteur AND statut='publie' AND type='normal' AND rv='oui' AND date_fin > NOW() AND lien.id_message=messages.id_message AND lien2.id_message=messages.id_message", $vus, false, false);
 176      
 177          icone_horizontale(_T('info_envoyer_message_prive'), generer_action_auteur("editer_message","normal/$id_auteur"),
 178                    "message.gif");
 179          fin_cadre_couleur();
 180      }
 181  }
 182  ?>


Généré le : Wed Nov 21 10:20:27 2007 par Balluche grâce à PHPXref 0.7
  Clicky Web Analytics