// Iterate through items while ($row = $feed->get_item()) { // BBCode options to correctly disable urls, smilies, bbcode... if ($feed->get('options') === NULL) { // Allow all combinations $options = 7; if ($feed->get('enable_bbcode') !== NULL && $feed->get('enable_smilies') !== NULL && $feed->get('enable_magic_url') !== NULL) { $options = ($row[$feed->get('enable_bbcode')] ? OPTION_FLAG_BBCODE : 0) + ($row[$feed->get('enable_smilies')] ? OPTION_FLAG_SMILIES : 0) + ($row[$feed->get('enable_magic_url')] ? OPTION_FLAG_LINKS : 0); } } else { $options = $row[$feed->get('options')]; } $title = isset($row[$feed->get('title')]) && $row[$feed->get('title')] !== '' ? $row[$feed->get('title')] : (isset($row[$feed->get('title2')]) ? $row[$feed->get('title2')] : ''); $published = $feed->get('published') !== NULL ? (int) $row[$feed->get('published')] : 0; $updated = $feed->get('updated') !== NULL ? (int) $row[$feed->get('updated')] : 0; $item_row = array('author' => $feed->get('creator') !== NULL ? $row[$feed->get('creator')] : '', 'published' => $published > 0 ? feed_format_date($published) : '', 'updated' => $updated > 0 ? feed_format_date($updated) : '', 'link' => '', 'title' => censor_text($title), 'category' => $config['feed_item_statistics'] && !empty($row['forum_id']) ? $board_url . '/viewforum.' . $phpEx . '?f=' . $row['forum_id'] : '', 'category_name' => $config['feed_item_statistics'] && isset($row['forum_name']) ? $row['forum_name'] : '', 'description' => censor_text(feed_generate_content($row[$feed->get('text')], $row[$feed->get('bbcode_uid')], $row[$feed->get('bitfield')], $options)), 'statistics' => ''); // Adjust items, fill link, etc. $feed->adjust_item($item_row, $row); $item_vars[] = $item_row; $feed_updated_time = max($feed_updated_time, $published, $updated); } // If we do not have any items at all, sending the current time is better than sending no time. if (!$feed_updated_time) { $feed_updated_time = time(); } // Some default assignments // FEED_IMAGE is not used (atom) $global_vars = array_merge($global_vars, array('FEED_IMAGE' => $user->img('site_logo', '', false, '', 'src') ? $board_url . '/' . substr($user->img('site_logo', '', false, '', 'src'), strlen($phpbb_root_path)) : '', 'SELF_LINK' => feed_append_sid('/feed.' . $phpEx, $params), 'FEED_LINK' => $board_url . '/index.' . $phpEx, 'FEED_TITLE' => $config['sitename'], 'FEED_SUBTITLE' => $config['site_desc'], 'FEED_UPDATED' => feed_format_date($feed_updated_time), 'FEED_LANG' => $user->lang['USER_LANG'], 'FEED_AUTHOR' => $config['sitename'])); $feed->close(); // Output page // gzip_compression
$global_vars = array('FEED_IMAGE' => $user->img('site_logo', '', false, '', 'src') ? $board_url . '/' . substr($user->img('site_logo', '', false, '', 'src'), strlen($phpbb_root_path)) : '', 'SELF_LINK' => feed_append_sid('/feed.' . $phpEx, $params), 'FEED_LINK' => $board_url . '/index.' . $phpEx, 'FEED_TITLE' => $config['sitename'], 'FEED_SUBTITLE' => $config['site_desc'], 'FEED_UPDATED' => $user->format_date(time(), $feed_date_format, true), 'FEED_LANG' => $user->lang['USER_LANG'], 'FEED_AUTHOR' => $config['sitename']); // Iterate through items while ($row = $feed->get_item()) { // BBCode options to correctly disable urls, smilies, bbcode... if ($feed->get('options') === NULL) { // Allow all combinations $options = 7; if ($feed->get('enable_bbcode') !== NULL && $feed->get('enable_smilies') !== NULL && $feed->get('enable_magic_url') !== NULL) { $options = ($row[$feed->get('enable_bbcode')] ? OPTION_FLAG_BBCODE : 0) + ($row[$feed->get('enable_smilies')] ? OPTION_FLAG_SMILIES : 0) + ($row[$feed->get('enable_magic_url')] ? OPTION_FLAG_LINKS : 0); } } else { $options = $row[$feed->get('options')]; } $title = $row[$feed->get('title')] ? $row[$feed->get('title')] : (isset($row[$feed->get('title2')]) ? $row[$feed->get('title2')] : ''); $title = censor_text($title); $item_row = array('author' => $feed->get('creator') !== NULL ? $row[$feed->get('creator')] : '', 'pubdate' => $user->format_date($row[$feed->get('date')], $feed_date_format, true), 'link' => '', 'title' => censor_text($title), 'category' => $config['feed_item_statistics'] ? $board_url . '/viewforum.' . $phpEx . '?f=' . $row['forum_id'] : '', 'category_name' => $config['feed_item_statistics'] ? utf8_htmlspecialchars($row['forum_name']) : '', 'description' => censor_text(feed_generate_content($row[$feed->get('text')], $row[$feed->get('bbcode_uid')], $row[$feed->get('bitfield')], $options)), 'statistics' => ''); // Adjust items, fill link, etc. $feed->adjust_item($item_row, $row); $item_vars[] = $item_row; } $feed->close(); // Output page // gzip_compression if ($config['gzip_compress']) { if (@extension_loaded('zlib') && !headers_sent()) { ob_start('ob_gzhandler'); } } // IF debug extra is enabled and admin want to "explain" the page we need to set other headers... if (!defined('DEBUG_EXTRA') || !request_var('explain', 0) || !$auth->acl_get('a_')) { header("Content-Type: application/atom+xml; charset=UTF-8");