Project

General

Profile

Revision 1218

Added by Ruud about 13 years ago

Ticket #894: Bugfixes in newsmodule > rss.php

View differences:

rss.php
1
<?php
2

  
3
// $Id$
4

  
5
/*
6

  
7
 Website Baker Project <http://www.websitebaker.org/>
8
 Copyright (C) 2004-2009, 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
{
29
	$page_id = $_GET['page_id'];
30
	define('PAGE_ID', $page_id);
31
}
32
else
33
{
34
	header('Location: '.WB_URL);
35
	exit( 0 );
36
}
37
if(isset($_GET['group_id']) AND is_numeric($_GET['group_id'])) {
38
	$group_id = $_GET['group_id'];
39
	define('GROUP_ID', $group_id);
40
}
41

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

  
51
//checkout if a charset is defined otherwise use UTF-8
52
if(defined('DEFAULT_CHARSET')) {
53
	$charset=DEFAULT_CHARSET;
54
} else {
55
	$charset='utf-8';
56
}
57

  
58
// Sending XML header
59
header("Content-type: text/xml; charset=$charset" );
60

  
61
// Header info
62
// Required by CSS 2.0
63
echo '<?xml version="1.0" encoding="'.$charset.'"?>';
64
?>
65
<rss version="2.0">
66
<channel>
67
<title><?php echo PAGE_TITLE; ?></title>
68
<link>http://<?php echo $_SERVER['SERVER_NAME']; ?></link>
69
<description> <?php echo PAGE_DESCRIPTION; ?></description>
70
<?php
71
// Optional header info
72
?>
73
<language><?php echo strtolower(DEFAULT_LANGUAGE); ?></language>
74
<copyright><?php $thedate = date('Y'); $websitetitle = WEBSITE_TITLE; echo "Copyright {$thedate}, {$websitetitle}"; ?></copyright>
75
<managingEditor><?php echo SERVER_EMAIL; ?></managingEditor>
76
<webMaster><?php echo SERVER_EMAIL; ?></webMaster>
77
<category><?php echo WEBSITE_TITLE; ?></category>
78
<generator>Website Baker Content Management System</generator>
79

  
80
<?php
81
// Get news items from database
82
$t = TIME();
83
$time_check_str= "(published_when = '0' OR published_when <= ".$t.") AND (published_until = 0 OR published_until >= ".$t.")";
84
//Query
85
if(isset($group_id)) {
86
	$query = "SELECT * FROM ".TABLE_PREFIX."mod_news_posts WHERE group_id=".$group_id." AND page_id = ".$page_id." AND active=1 AND ".$time_check_str." ORDER BY posted_when DESC";
87
} else {
88
	$query = "SELECT * FROM ".TABLE_PREFIX."mod_news_posts WHERE page_id=".$page_id." AND active=1 AND ".$time_check_str." ORDER BY posted_when DESC";
89
}
90
$result = $database->query($query);
91

  
92
//Generating the news items
93
while($item = $result->fetchRow($result)){ ?>
94

  
95
<item>
96
<title><![CDATA[<?php echo stripslashes($item["title"]); ?>]]></title>
97
<description><![CDATA[<?php echo stripslashes($item["content_short"]); ?>]]></description>
98
<guid><?php echo WB_URL.PAGES_DIRECTORY.$item["link"].PAGE_EXTENSION; ?></guid>
99
<link><?php echo WB_URL.PAGES_DIRECTORY.$item["link"].PAGE_EXTENSION; ?></link>
100
</item>
101

  
102
<?php } ?>
103

  
104
</channel>
1
<?php
2

  
3
// $Id$
4

  
5
/*
6

  
7
 Website Baker Project <http://www.websitebaker.org/>
8
 Copyright (C) 2004-2009, 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
} else {
30
	header('Location: /');
31
	exit(0);
32
}
33
if(isset($_GET['group_id']) AND is_numeric($_GET['group_id'])) {
34
	$group_id = $_GET['group_id'];
35
	define('GROUP_ID', $group_id);
36
}
37

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

  
47
//checkout if a charset is defined otherwise use UTF-8
48
if(defined('DEFAULT_CHARSET')) {
49
	$charset=DEFAULT_CHARSET;
50
} else {
51
	$charset='utf-8';
52
}
53

  
54
// Sending XML header
55
header("Content-type: text/xml; charset=$charset" );
56

  
57
// Header info
58
// Required by CSS 2.0
59
echo '<?xml version="1.0" encoding="'.$charset.'"?>';
60
?> 
61
<rss version="2.0">
62
	<channel>
63
		<title><?php echo PAGE_TITLE; ?></title>
64
		<link>http://<?php echo $_SERVER['SERVER_NAME']; ?></link>
65
		<description> <?php echo PAGE_DESCRIPTION; ?></description>
66
<?php
67
// Optional header info 
68
?>
69
		<language><?php echo strtolower(DEFAULT_LANGUAGE); ?></language>
70
		<copyright><?php $thedate = date('Y'); $websitetitle = WEBSITE_TITLE; echo "Copyright {$thedate}, {$websitetitle}"; ?></copyright>
71
		<managingEditor><?php echo SERVER_EMAIL; ?></managingEditor>
72
		<webMaster><?php echo SERVER_EMAIL; ?></webMaster>
73
		<category><?php echo WEBSITE_TITLE; ?></category>
74
		<generator>WebsiteBaker Content Management System</generator>
75
<?php
76
// Get news items from database
77
$t = TIME();
78
$time_check_str= "(published_when = '0' OR published_when <= ".$t.") AND (published_until = 0 OR published_until >= ".$t.")";
79
//Query
80
if(isset($group_id)) {
81
	$query = "SELECT * FROM ".TABLE_PREFIX."mod_news_posts WHERE group_id=".$group_id." AND page_id = ".$page_id." AND active=1 AND ".$time_check_str." ORDER BY posted_when DESC";
82
} else {
83
	$query = "SELECT * FROM ".TABLE_PREFIX."mod_news_posts WHERE page_id=".$page_id." AND active=1 AND ".$time_check_str." ORDER BY posted_when DESC";	
84
}
85
$result = $database->query($query);
86

  
87
//Generating the news items
88
while($item = $result->fetchRow()){ ?>
89
		<item>
90
			<title><![CDATA[<?php echo stripslashes($item["title"]); ?>]]></title>
91
			<description><![CDATA[<?php echo stripslashes($item["content_short"]); ?>]]></description>
92
			<guid><?php echo WB_URL.PAGES_DIRECTORY.$item["link"].PAGE_EXTENSION; ?></guid>
93
			<link><?php echo WB_URL.PAGES_DIRECTORY.$item["link"].PAGE_EXTENSION; ?></link>
94
		</item>
95
<?php } ?>
96
	</channel>
105 97
</rss>

Also available in: Unified diff