diff -Naur dokufreaks-plugin-feed-b1bc603/feed.php feed/feed.php --- dokufreaks-plugin-feed-b1bc603/feed.php 2010-01-07 15:56:22.000000000 +0200 +++ feed/feed.php 2010-08-18 18:03:43.200353779 +0300 @@ -7,6 +7,7 @@ * @author Esther Brunner */ +global $conf; if (!defined('DOKU_INC')) define('DOKU_INC',realpath(dirname(__FILE__).'/../../../').'/'); if (!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/'); require_once(DOKU_INC.'inc/init.php'); @@ -29,6 +30,9 @@ $title = urldecode($_REQUEST['title']); $type = $_REQUEST['type']; +if(!$num) $num=$conf['recent']; +$num=min(15,$num); + if ($type == '') $type = $conf['rss_type']; switch ($type) { @@ -126,18 +130,25 @@ list($id, $hash) = explode('#', $page['id'], 2); $meta = p_get_metadata($id); + // creator + if ($page['name']) $item->author = $page['name']; + else if ($page['user']) $item->author = $page['user']; + else $item->author = $meta['creator']; + + // description + if ($page['desc']) $item->description = htmlspecialchars($page['desc']); + else $item->description = htmlspecialchars($meta['description']['abstract']); + $wn=4; //number of words + $short=implode(" ",array_slice(preg_split("/\s+/",$item->description,$wn+1,PREG_SPLIT_NO_EMPTY),0,$wn)); + // title - if ($page['title']) $item->title = $page['title']; - elseif ($meta['title']) $item->title = $meta['title']; + if ($page['title']) $item->title = sprintf('%s:%s: %s ...',$page['title'].$item->author,$short); + elseif ($meta['title']) $item->title = sprintf('%s:%s: %s ...',$meta['title'],$item->author,$short); else $item->title = ucwords($id); // link $item->link = wl($page['id'], '', true, '&') . '#' . $page['anchor']; - // description - if ($page['desc']) $item->description = htmlspecialchars($page['desc']); - else $item->description = htmlspecialchars($meta['description']['abstract']); - // date $item->date = date('r', $page['date']); @@ -149,10 +160,6 @@ else $item->category = $meta['subject']; } - // creator - if ($page['user']) $item->author = $page['user']; - else $item->author = $meta['creator']; - $rss->addItem($item); } }