function printRss($listData, $data) { $link = get_yttinfo('url') . "?list=" . $listData['id']; $buildDate = gmdate('r'); $s = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<rss version=\"2.0\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\">\n<channel>\n" . "<title>{$listData['_feed_title']}</title>\n<link>{$link}</link>\n<description>{$listData['_feed_descr']}</description>\n" . "<lastBuildDate>{$buildDate}</lastBuildDate>\n\n"; foreach ($data as $v) { $d = gmdate('r', $v[$listData['_uid_field']]); $guid = $listData['id'] . '-' . $v['id'] . '-' . $v[$listData['_uid_field']]; $s .= "<item>\n<title><![CDATA[" . str_replace("]]>", "]]]]><![CDATA[>", $v['title']) . "]]></title>\n" . "<link>{$link}</link>\n" . "<pubDate>{$d}</pubDate>\n" . "<description><![CDATA[" . $v['_descr'] . "]]></description>\n" . "<guid isPermaLink=\"false\">{$guid}</guid>\n" . "</item>\n"; } $s .= "</channel>\n</rss>"; header("Content-type: text/xml; charset=utf-8"); print $s; }
function get_yttinfo($v) { global $_yttinfo; if (isset($_yttinfo[$v])) { return $_yttinfo[$v]; } switch ($v) { case 'template_url': $_yttinfo['template_url'] = get_yttinfo('ytt_url') . 'themes/' . Config::get('template') . '/'; return $_yttinfo['template_url']; case 'url': $_yttinfo['url'] = Config::get('url'); if ($_yttinfo['url'] == '') { $_yttinfo['url'] = 'http://' . $_SERVER['HTTP_HOST'] . ($_SERVER['SERVER_PORT'] != 80 ? ':' . $_SERVER['SERVER_PORT'] : '') . url_dir(isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : $_SERVER['SCRIPT_NAME']); } return $_yttinfo['url']; case 'ytt_url': $_yttinfo['ytt_url'] = Config::get('ytt_url'); if ($_yttinfo['ytt_url'] == '') { $_yttinfo['ytt_url'] = url_dir(isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : $_SERVER['SCRIPT_NAME']); } return $_yttinfo['ytt_url']; case 'title': $_yttinfo['title'] = Config::get('title') != '' ? htmlarray(Config::get('title')) : __('Your Tiny Todolist'); return $_yttinfo['title']; } return false; }