Project

General

Profile

1
<?php
2

    
3
// $Id: rss.php 399 2006-12-24 07:50:44Z Ruebenwurzel $
4

    
5
/*
6

    
7
 Website Baker Project <http://www.websitebaker.org/>
8
 Copyright (C) 2004-2007, Ryan Djurovich
9

    
10
 Website Baker is free software; you can redistribute it and/or modify
11
 it under the terms of the GNU General Public License as published by
12
 the Free Software Foundation; either version 2 of the License, or
13
 (at your option) any later version.
14

    
15
 Website Baker is distributed in the hope that it will be useful,
16
 but WITHOUT ANY WARRANTY; without even the implied warranty of
17
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18
 GNU General Public License for more details.
19

    
20
 You should have received a copy of the GNU General Public License
21
 along with Website Baker; if not, write to the Free Software
22
 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
23

    
24
*/
25

    
26
// Check that GET values have been supplied
27
if(isset($_GET['page_id']) AND is_numeric($_GET['page_id'])) {
28
	$page_id = $_GET['page_id'];
29
	define('PAGE_ID', $page_id);
30
} else {
31
	header('Location: '.WB_URL);
32
	exit(0);
33
}
34
if(isset($_GET['group_id']) AND is_numeric($_GET['group_id'])) {
35
	$group_id = $_GET['group_id'];
36
	define('GROUP_ID', $group_id);
37
}
38

    
39
// Include WB files
40
require_once('../../config.php');
41
require_once(WB_PATH.'/framework/class.frontend.php');
42
$database = new database();
43
$wb = new frontend();
44
$wb->page_id = $page_id;
45
$wb->get_page_details();
46
$wb->get_website_settings();
47

    
48
// Sending XML header
49
header("Content-type: text/xml");
50

    
51
// Header info
52
// Required by CSS 2.0
53

    
54
echo "<rss version='2.0'>";
55
echo "<channel>";
56
echo "<title>".PAGE_TITLE."</title>";
57
echo "<link>".WB_URL."</link>";
58
echo "<description>".PAGE_DESCRIPTION."</description>";
59

    
60
// Optional header info
61
echo "<language>".DEFAULT_LANGUAGE."</language>";
62
echo "<copyright>".WB_URL."</copyright>";
63
echo "<managingEditor>".SERVER_EMAIL."</managingEditor>";
64
echo "<webMaster>".SERVER_EMAIL."</webMaster>";
65
echo "<category>".WEBSITE_TITLE."</category>";
66
echo "<generator>Website Baker Content Management System</generator>";
67

    
68
// Get news items from database
69

    
70
//Query
71
if(isset($group_id)) {
72
	$query = "SELECT * FROM ".TABLE_PREFIX."mod_news_posts WHERE group_id=".$group_id." AND page_id = ".$page_id." AND active=1 ORDER BY posted_when DESC";
73
} else {
74
	$query = "SELECT * FROM ".TABLE_PREFIX."mod_news_posts WHERE page_id=".$page_id." AND active=1 ORDER BY posted_when DESC";	
75
}
76
$result = $database->query($query);
77

    
78
//Generating the news items
79
while($item = $result->fetchRow($result)){
80

    
81
    echo "<item>";
82
    echo "<title>".$item["title"]."</title>";
83
    // Stripping HTML Tags for text-only visibility
84
    echo "<description>".strip_tags($item["content_short"])."</description>";
85
    echo "<link>".WB_URL."/pages".$item["link"].PAGE_EXTENSION."</link>";
86
    /* Add further (non required) information here like ie.
87
    echo "<author>".$item["posted_by"]."</author>");
88
    etc.
89
    */
90
    echo "</item>";
91

    
92
}
93

    
94
// Writing footer information
95
echo "</channel>";
96
echo "</rss>";
97

    
98
?>
(20-20/27)