message
This commit is contained in:
80
system/modules/rss.php
Normal file
80
system/modules/rss.php
Normal file
@@ -0,0 +1,80 @@
|
||||
<?php
|
||||
if(!defined('DATALIFEENGINE')){die("Hacking attempt!");}
|
||||
|
||||
$rss_content = <<<XML
|
||||
<?xml version="1.0" encoding="{$config['charset']}"?>
|
||||
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
|
||||
<channel>
|
||||
<title>{$config['home_title']}</title>
|
||||
<link>{$config['http_home_url']}</link>
|
||||
<language>ru</language>
|
||||
<description>{$config['description']}</description>
|
||||
<generator>Files-Sib.NET</generator>
|
||||
XML;
|
||||
|
||||
if($doaction=="comments"){
|
||||
if($id = intval($_GET['news'])){
|
||||
$where = "AND post_id = '".intval($id)."'";
|
||||
}else{$where = "";}
|
||||
|
||||
$sql_comments = "SELECT c.autor, c.text, c.post_id, c.autor, p.alt_name FROM " . PREFIX . "_comments c, " . PREFIX . "_post p WHERE c.post_id=p.id $where order by c.date desc limit 0,". $config['rss_comm_number'];
|
||||
$sql_result = $db->query ($sql_comments);
|
||||
$i = 0;
|
||||
|
||||
while ($row = $db->get_row ($sql_result)){
|
||||
$i++;
|
||||
$author = "<a href=\"".$config['http_home_url']."user/".urlencode($row['autor'])."/\">".$row['autor']."</a>";
|
||||
$row['text'] = preg_replace ( "#\[hide\](.+?)\[/hide\]#is", "ТекÑ<EFBFBD>Ñ‚ только длÑ<C2BB> зарегиÑ<C2B8>трированных", $row['text'] );
|
||||
$full_link = $config['http_home_url'] . $row['post_id'] . "-" . $row['alt_name'] . ".html";
|
||||
|
||||
$rss_content .= <<<XML
|
||||
<item>
|
||||
<title>#{$i}</title>
|
||||
<link>{$full_link}</link>
|
||||
<description><![CDATA[{$row['text']}<br><br><b>Àâòîð:</b> {$author}]]></description>
|
||||
<author>{$row['autor']}</author>
|
||||
</item>
|
||||
XML;
|
||||
|
||||
}
|
||||
} elseif ($doaction=="news") {
|
||||
if($category_id = get_ID ( $cat_info, $_GET['category'])){
|
||||
$get_cats = get_sub_cats ( $category_id );
|
||||
if ($config['allow_multi_category']) {
|
||||
$where_category = "AND category regexp '[[:<:]](" . $get_cats . ")[[:>:]]'";
|
||||
} else {
|
||||
$get_cats = str_replace ( "|", "','", $get_cats );
|
||||
$where_category = "AND category IN ('" . $get_cats . "')";
|
||||
}
|
||||
} else $where_category = "";
|
||||
$sql_select = "SELECT id, autor, date, short_story, title, category, alt_name, remote_addr FROM cms_post WHERE approve {$where_category}";
|
||||
|
||||
if ($config['rss_mtype']) $sql_select .= " AND allow_main=1";
|
||||
$sql_select .= " ORDER BY " . $config['news_sort'] . " " . $config['news_msort'] . " LIMIT 0," . $config['rss_number'];
|
||||
|
||||
$sql_results = $db->query($sql_select);
|
||||
$i = 0;
|
||||
while($row = $db->get_row($sql_results)){
|
||||
$i++;
|
||||
$date = date( $row['date'] );
|
||||
if( $row['remote_addr'] != "" ) {$full_link = $config['http_home_url'] . "out.php?url=" . rawurlencode( base64_encode( $row['remote_addr'] ) );
|
||||
} else {$full_link = $config['http_home_url'] . $row['id'] . "-" . $row['alt_name'] . ".html";}
|
||||
|
||||
$rss_content .= <<<XML
|
||||
<item>
|
||||
<title>{$row['title']}</title>
|
||||
<guid isPermaLink="true">{$full_link}</guid>
|
||||
<link>{$full_link}</link>
|
||||
<description><![CDATA[{$row['short_story']}]]></description>
|
||||
<category><![CDATA[{category}]]></category>
|
||||
<dc:creator>{$row['autor']}</dc:creator>
|
||||
<pubDate>{$date}</pubDate>
|
||||
</item>
|
||||
XML;
|
||||
|
||||
}
|
||||
}
|
||||
$rss_content .= '</channel></rss>';
|
||||
header( 'Content-type: application/xml' );
|
||||
die($rss_content);
|
||||
?>
|
||||
Reference in New Issue
Block a user