[ Index ]
 

Code source de e107 0.7.8

Accédez au Source d'autres logiciels libresSoutenez Angelica Josefina !

title

Body

[fermer]

/e107_plugins/newsfeed/ -> newsfeed.php (source)

   1  <?php
   2  /*
   3  + ----------------------------------------------------------------------------+
   4  |     e107 website system
   5  |
   6  |     ©Steve Dunstan 2001-2002
   7  |     http://e107.org
   8  |     jalist@e107.org
   9  |
  10  |     Released under the terms and conditions of the
  11  |     GNU General Public License (http://gnu.org).
  12  |
  13  |     $Source: /cvsroot/e107/e107_0.7/e107_plugins/newsfeed/newsfeed.php,v $
  14  |     $Revision: 1.13 $
  15  |     $Date: 2006/11/04 18:26:47 $
  16  |     $Author: e107coders $
  17  +----------------------------------------------------------------------------+
  18  */
  19  require_once ("../../class2.php");
  20  
  21  @include_once(e_PLUGIN."newsfeed/languages/".e_LANGUAGE.".php");
  22  @include_once(e_PLUGIN."newsfeed/languages/English.php");
  23  if(!function_exists("checkUpdate"))
  24  {
  25      require(e_PLUGIN."newsfeed/newsfeed_functions.php");
  26  }
  27  require_once(HEADERF);
  28  
  29  /* get template */
  30  if (file_exists(THEME."newsfeed_template.php"))
  31  {
  32      require_once(THEME."newsfeed_template.php");
  33  }
  34  else if(!$NEWSFEED_LIST_START)
  35  {
  36      require_once(e_PLUGIN."newsfeed/templates/newsfeed_template.php");
  37  }
  38  
  39  $action = FALSE;
  40  if(e_QUERY)
  41  {
  42      list($action, $id) = explode(".", e_QUERY);
  43      $id = intval($id);
  44  }
  45  
  46  if($action == "show")
  47  {
  48      /* 'show' action - show feed */
  49      checkUpdate();
  50  
  51      if ($feeds = $sql -> db_Select("newsfeed", "*", "(newsfeed_active=2 OR newsfeed_active=3) AND newsfeed_id=$id"))
  52      {
  53          $row = $sql->db_Fetch();
  54          extract ($row);
  55          list($newsfeed_image, $newsfeed_showmenu, $newsfeed_showmain) = explode("::", $newsfeed_image);                
  56          $numtoshow = $newsfeed_showmain;
  57          $numtoshow = (intval($numtoshow) > 0 ? $numtoshow : 999);
  58  
  59          $rss = unserialize($newsfeed_data);
  60  
  61          if(!is_object($rss))
  62          {
  63              $text = NFLAN_49;
  64              $ns->tablerender(NFLAN_01, $text);
  65              require_once(FOOTERF);
  66              exit;
  67          }
  68  
  69          $FEEDNAME = "<a href='".e_SELF."?show.$newsfeed_id'>$newsfeed_name</a>";
  70          $FEEDDESCRIPTION = $newsfeed_description;
  71          if($newsfeed_image == "default")
  72          {
  73              if($file = fopen ($rss -> image['url'], "r"))
  74              {
  75                  /* remote image exists - use it! */
  76                  $FEEDIMAGE = "<a href='".$rss -> image['link']."' rel='external'><img src='".$rss -> image['url']."' alt='".$rss -> image['title']."' style='border: 0; vertical-align: middle;' /></a>";
  77              }
  78              else
  79              {
  80                  /* remote image doesn't exist - ghah! */
  81                  $FEEDIMAGE = "";
  82              }
  83  
  84  
  85          }else if ($newsfeed_image)
  86          {
  87              $FEEDIMAGE = "<img src='".$newsfeed_image."' alt='' />";
  88          }
  89          else
  90          {
  91              $FEEDIMAGE = "";
  92          }
  93          $FEEDLANGUAGE = $rss -> channel['language'];
  94  
  95          if($rss -> channel['lastbuilddate'])
  96          {
  97              $pubbed = $rss -> channel['lastbuilddate'];
  98          }
  99          else if($rss -> channel['dc']['date'])
 100          {
 101              $pubbed = $rss -> channel['dc']['date'];
 102          }
 103          else
 104          {
 105              $pubbed = NFLAN_34;
 106          }
 107  
 108          $FEEDLASTBUILDDATE = NFLAN_33.$pubbed;
 109          $FEEDCOPYRIGHT = $tp -> toHTML($rss -> channel['copyright'], TRUE);
 110          $FEEDDOCS = $rss -> channel['docs'];
 111          $FEEDTITLE = "<a href='".$rss -> channel['link']."' rel='external'>".$rss -> channel['title']."</a>";
 112          $FEEDLINK = $rss -> channel['link'];
 113  
 114          $data = "";
 115          
 116          $i = 0;
 117          while($i < $numtoshow && $rss->items[$i])
 118          {
 119              $item = $rss->items[$i];
 120  //        foreach ($rss -> items as $item)
 121  //        {
 122      
 123              if($NEWSFEED_COLLAPSE)
 124              {
 125                  $FEEDITEMLINK = "<a href='#' onclick='expandit(this)'>".$tp -> toHTML($item['title'], TRUE)."</a>
 126                  <div style='display:none' >
 127                  ";
 128                  $FEEDITEMTEXT = preg_replace("/&#091;.*]/", "", $tp -> toHTML($item['description'], TRUE))."
 129                  <br /><br /><a href='".$item['link']."' rel='external'>".NFLAN_44."</a><br /><br />
 130                  </div>";
 131              }
 132              else
 133              {
 134                  $FEEDITEMLINK = "<a href='".$item['link']."' rel='external'>".$tp -> toHTML($item['title'], TRUE)."</a>\n";
 135                  $feeditemtext = preg_replace("#\[[a-z0-9=]+\]|\[\/[a-z]+\]|\{[A-Z_]+\}#si", "", $item['description']);
 136                  $FEEDITEMTEXT = $tp -> toHTML($feeditemtext, TRUE)."\n";
 137              }
 138              $FEEDITEMCREATOR = $tp -> toHTML($item['author'], TRUE);
 139              $data .= preg_replace("/\{(.*?)\}/e", '$\1', $NEWSFEED_MAIN);
 140              $i++;
 141          }
 142          $BACKLINK = "<a href='".e_SELF."'>".NFLAN_31."</a>";
 143          $text = preg_replace("/\{(.*?)\}/e", '$\1', $NEWSFEED_MAIN_START) . $data . preg_replace("/\{(.*?)\}/e", '$\1', $NEWSFEED_MAIN_END);
 144          $ns->tablerender(NFLAN_01, $text);
 145          require_once(FOOTERF);
 146          exit;
 147      }
 148  }
 149      
 150  /* no action - display feed list ... */
 151  if ($feeds = $sql -> db_Select("newsfeed", "*", "newsfeed_active=2 OR newsfeed_active=3"))
 152  {
 153      $data = "";
 154      while ($row = $sql->db_Fetch())
 155      {
 156          extract($row);
 157          $FEEDNAME = "<a href='".e_SELF."?show.$newsfeed_id'>$newsfeed_name</a>";
 158          $FEEDDESCRIPTION = ((!$newsfeed_description || $newsfeed_description == "default") ? "&nbsp;" : $newsfeed_description);
 159          $FEEDIMAGE = $newsfeed_image;
 160          $data .= preg_replace("/\{(.*?)\}/e", '$\1', $NEWSFEED_LIST);
 161      }
 162  }
 163  
 164  $text = $NEWSFEED_LIST_START . $data . $NEWSFEED_LIST_END;
 165  $ns->tablerender(NFLAN_29, $text);
 166  require_once(FOOTERF);
 167  
 168  ?>


Généré le : Sun Apr 1 01:23:32 2007 par Balluche grâce à PHPXref 0.7