wiki
[ class tree: wiki ] [ index: wiki ] [ all elements ]

Source for file wiki_rss.php

Documentation is available at wiki_rss.php

  1. <?php
  2. /**
  3.  * @version $Header: /cvsroot/bitweaver/_bit_wiki/wiki_rss.php,v 1.15 2007/01/07 10:48:33 squareing Exp $
  4.  * @package wiki
  5.  * @subpackage functions
  6.  */
  7.  
  8. /**
  9.  * Initialization
  10.  */
  11. require_once"../bit_setup_inc.php" );
  12.  
  13. $gBitSystem->verifyPackage'wiki' );
  14. $gBitSystem->verifyPackage'rss' );
  15. $gBitSystem->verifyFeature'wiki_rss' );
  16.  
  17. require_onceWIKI_PKG_PATH."BitPage.php" );
  18. require_onceRSS_PKG_PATH."rss_inc.php" );
  19.  
  20. $rss->title $gBitSystem->getConfig'wiki_rss_title'$gBitSystem->getConfig'site_title' ).' - '.tra'Wiki' ) );
  21. $rss->description $gBitSystem->getConfig'wiki_rss_description'$gBitSystem->getConfig'site_title' ).' - '.tra'RSS Feed' ) );
  22.  
  23. // check permission to view wiki pages
  24. if!$gBitUser->hasPermission'p_wiki_view_page' ) ) {
  25.     require_onceRSS_PKG_PATH."rss_error.php" );
  26. else {
  27.     // check if we want to use the cache file
  28.     $cacheFile TEMP_PKG_PATH.RSS_PKG_NAME.'/'.WIKI_PKG_NAME.'_'.$rss_version_name.'.xml';
  29.     $rss->useCached$rss_version_name$cacheFile$gBitSystem->getConfig'rssfeed_cache_time' ));
  30.  
  31.     $wiki new BitPage();
  32.     $feeds $wiki->getList0$gBitSystem->getConfig'wiki_rss_max_records'10 )'last_modified_desc'NULLNULLFALSEFALSETRUE );
  33.     $feeds $feeds['data'];
  34.  
  35.     // set the rss link
  36.     $rss->link 'http://'.$_SERVER['HTTP_HOST'].WIKI_PKG_URL;
  37.  
  38.     // get all the data ready for the feed creator
  39.     foreach$feeds as $feed {
  40.         $item new FeedItem();
  41.         $item->title $feed['title'];
  42.         $item->link BIT_BASE_URI.$wiki->getDisplayUrl$feed['title');
  43.         $item->description $wiki->parseData$feed );
  44.  
  45.         $item->date = ( int )$feed['last_modified'];
  46.         $item->source 'http://'.$_SERVER['HTTP_HOST'].BIT_ROOT_URL;
  47.         $item->author $gBitUser->getDisplayNameFALSEarray'real_name' => $feed['modifier_real_name']'login' => $feed['modifier_user') );
  48.  
  49.         $item->descriptionTruncSize $gBitSystem->getConfig'rssfeed_truncate'5000 );
  50.         $item->descriptionHtmlSyndicated FALSE;
  51.  
  52.         // pass the item on to the rss feed creator
  53.         $rss->addItem$item );
  54.     }
  55.  
  56.     // finally we are ready to serve the data
  57.     echo $rss->saveFeed$rss_version_name$cacheFile );
  58. }
  59. ?>

Documentation generated on Thu, 15 Feb 2007 20:51:11 +0000 by phpDocumentor 1.3.0