3 * Copyright (c) Xerox Corporation, Codendi Team, 2001-2009. All rights reserved
5 * This file is a part of Codendi.
7 * Codendi is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
12 * Codendi is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with Codendi. If not, see <http://www.gnu.org/licenses/>.
21 require_once('Widget.class.php');
24 * Widget_ProjectLatestNews
26 class Widget_ProjectLatestNews extends Widget {
29 function __construct() {
31 $this->Widget('projectlatestnews');
32 $request =& HTTPRequest::instance();
33 $pm = ProjectManager::instance();
34 $project = $pm->getProject($request->get('group_id'));
35 if ($project && $this->canBeUsedByProject($project)) {
36 require_once('www/news/news_utils.php');
37 $this->content = news_show_latest($request->get('group_id'), 10, false);
42 return _('Latest News');
45 function getContent() {
46 return $this->content;
49 function isAvailable() {
50 return $this->content ? true : false;
57 function displayRss() {
58 $request =& HTTPRequest::instance();
59 $owner = $request->get('owner');
60 $group_id = (int)substr($owner, 1);
61 require_once 'www/export/rss_utils.inc';
62 rss_display_news($group_id, 10);
65 function canBeUsedByProject(&$project) {
66 return $project->usesNews();
69 function getDescription() {
70 return _('List the last 10 pieces of news posted by the project members.');