Browse files

phpdoc additions and spacing cleanup

  • Loading branch information...
1 parent fd9576f commit 706dae5e6e56da2aca9161fd1d68d68c9439e2aa dhawes committed Aug 11, 2005
Showing with 201 additions and 200 deletions.
  1. +8 −8 blocks/rss_client/block_rss_client.php
  2. +193 −192 blocks/rss_client/block_rss_client_action.php
View
16 blocks/rss_client/block_rss_client.php
@@ -1,25 +1,25 @@
<?php //$Id$
/*******************************************************************
-* This file contains one class which...
+* This file contains one class which defines a block for display on
+* any Moodle page. This block can be configured to display the contents
+* of a remote RSS news feed in your web site.
*
-* @todo Finish documenting this file
* @author Daryl Hawes
* @version $Id$
* @license http://www.gnu.org/copyleft/gpl.html GNU Public License
* @package base
******************************************************************/
-/**
- * This class is for a block which....
- * @todo Finish documenting this class
- */
-
// Developer's debug assistant - if true then the display string will not cache, only
// the magpie object's built in caching will be used
define('BLOCK_RSS_SECONDARY_CACHE_ENABLED', true);
-class block_rss_client extends block_base {
+/**
+ * This class is for a block which defines a block for display on
+ * any Moodle page.
+ */
+ class block_rss_client extends block_base {
function init() {
$this->title = get_string('feedstitle', 'block_rss_client');
View
385 blocks/rss_client/block_rss_client_action.php
@@ -1,245 +1,246 @@
<?php //$Id$
/*******************************************************************
-* This file contains one class which...
+* This file contains no classes. It will display a list of existing feeds
+* defined for the site and allow add/edit/delete of site feeds.
*
* @author Daryl Hawes
* @version $Id$
* @license http://www.gnu.org/copyleft/gpl.html GNU Public License
* @package base
******************************************************************/
- require_once('../../config.php');
- require_once($CFG->libdir .'/rsslib.php');
- require_once(MAGPIE_DIR .'rss_fetch.inc');
-
- require_login();
- global $USER;
-
- //ensure that the logged in user is not using the guest account
- if (isset($_SERVER['HTTP_REFERER'])) {
- $referrer = $_SERVER['HTTP_REFERER'];
- } else {
- $referrer = $CFG->wwwroot;
- }
- if (isguest()) {
- error(get_string('noguestpost', 'forum'), $referrer);
- }
+require_once('../../config.php');
+require_once($CFG->libdir .'/rsslib.php');
+require_once(MAGPIE_DIR .'rss_fetch.inc');
+
+require_login();
+global $USER;
+
+//ensure that the logged in user is not using the guest account
+if (isset($_SERVER['HTTP_REFERER'])) {
+ $referrer = $_SERVER['HTTP_REFERER'];
+} else {
+ $referrer = $CFG->wwwroot;
+}
+if (isguest()) {
+ error(get_string('noguestpost', 'forum'), $referrer);
+}
+
+$act = optional_param('act', 'none' );
+$rssid = optional_param('rssid', 'none' );
+$id = optional_param('id', SITEID, PARAM_INT);
+$url = optional_param('url');
+$preferredtitle = optional_param('preferredtitle', '');
+$item = optional_param('item');
+
+if (!defined('MAGPIE_OUTPUT_ENCODING')) {
+ define('MAGPIE_OUTPUT_ENCODING', get_string('thischarset')); // see bug 3107
+}
+
+if (!empty($id)) {
+ // we get the complete $course object here because print_header assumes this is
+ // a complete object (needed for proper course theme settings)
+ $course = get_record('course', 'id', $id);
+}
+
+$straddedit = get_string('feedsaddedit', 'block_rss_client');
+if ( isadmin() ) {
+ $stradmin = get_string('administration');
+ $strconfiguration = get_string('configuration');
+ $navigation = "<a href=\"$CFG->wwwroot/$CFG->admin/index.php\">$stradmin</a> -> ".
+ "<a href=\"$CFG->wwwroot/$CFG->admin/configure.php\">$strconfiguration</a> -> $straddedit";
+} else if (!empty($course)) {
+ $navigation = "<a href=\"$CFG->wwwroot/course/view.php?id=$id\">$course->shortname</a> -> $straddedit";
+} else {
+ $navigation = $straddedit;
+}
+
+print_header(get_string('feedsaddedit', 'block_rss_client'),
+ get_string('feedsaddedit', 'block_rss_client'),
+ $navigation );
+
+//check to make sure that the user is allowed to post new feeds
+$submitters = $CFG->block_rss_client_submitters;
+$isteacher = false;
+if (!empty($course)) {
+ $isteacher = isteacher($id);
+}
+
+$rss_record = get_record('block_rss_client', 'id', $rssid);
+
+//if the user is an admin or course teacher then allow the user to
+//assign categories to other uses than personal
+if (!( isadmin() || $submitters == SUBMITTERS_ALL_ACCOUNT_HOLDERS ||
+ ($submitters == SUBMITTERS_ADMIN_AND_TEACHER && $isteacher) ||
+ ( ($act == 'rss_edit' || $act == 'delfeed') && $USER->id == $rss_record->userid) ) ) {
+ error(get_string('noguestpost', 'forum').' You are not allowed to make modifications to this RSS feed at this time.', $referrer);
+}
- $act = optional_param('act', 'none' );
- $rssid = optional_param('rssid', 'none' );
- $id = optional_param('id', SITEID, PARAM_INT);
- $url = optional_param('url');
- $preferredtitle = optional_param('preferredtitle', '');
- $item = optional_param('item');
+if ($act == 'none') {
+ rss_display_feeds($id);
+ rss_print_form($act, $url, $rssid, $preferredtitle, $id);
- if (!defined('MAGPIE_OUTPUT_ENCODING')) {
- define('MAGPIE_OUTPUT_ENCODING', get_string('thischarset')); // see bug 3107
+} else if ($act == 'updfeed') {
+ if (empty($url)) {
+ error( 'url not defined for rss feed' );
}
- if (!empty($id)) {
- // we get the complete $course object here because print_header assumes this is
- // a complete object (needed for proper course theme settings)
- $course = get_record('course', 'id', $id);
+ // By capturing the output from fetch_rss this way
+ // error messages do not display and clutter up the moodle interface
+ // however, we do lose out on seeing helpful messages like "cache hit", etc.
+ $message = '';
+ ob_start();
+ $rss = fetch_rss($url);
+ if ($CFG->debug) {
+ $message .= ob_get_contents();
}
+ ob_end_clean();
- $straddedit = get_string('feedsaddedit', 'block_rss_client');
- if ( isadmin() ) {
- $stradmin = get_string('administration');
- $strconfiguration = get_string('configuration');
- $navigation = "<a href=\"$CFG->wwwroot/$CFG->admin/index.php\">$stradmin</a> -> ".
- "<a href=\"$CFG->wwwroot/$CFG->admin/configure.php\">$strconfiguration</a> -> $straddedit";
- } else if (!empty($course)) {
- $navigation = "<a href=\"$CFG->wwwroot/course/view.php?id=$id\">$course->shortname</a> -> $straddedit";
+ $dataobject->id = $rssid;
+ if ($rss === false) {
+ $dataobject->description = '';
+ $dataobject->title = '';
+ $dataobject->preferredtitle = '';
} else {
- $navigation = $straddedit;
+ $dataobject->description = addslashes(rss_unhtmlentities($rss->channel['description']));
+ $dataobject->title = addslashes(rss_unhtmlentities($rss->channel['title']));
+ $dataobject->preferredtitle = addslashes($preferredtitle);
}
+ $dataobject->url = addslashes($url);
- print_header(get_string('feedsaddedit', 'block_rss_client'),
- get_string('feedsaddedit', 'block_rss_client'),
- $navigation );
-
- //check to make sure that the user is allowed to post new feeds
- $submitters = $CFG->block_rss_client_submitters;
- $isteacher = false;
- if (!empty($course)) {
- $isteacher = isteacher($id);
+ if (!update_record('block_rss_client', $dataobject)) {
+ error('There was an error trying to update rss feed with id:'. $rssid);
}
- $rss_record = get_record('block_rss_client', 'id', $rssid);
+ $message .= '<br />'. get_string('feedupdated', 'block_rss_client');
+ redirect($referrer, $message);
- //if the user is an admin or course teacher then allow the user to
- //assign categories to other uses than personal
- if (!( isadmin() || $submitters == SUBMITTERS_ALL_ACCOUNT_HOLDERS ||
- ($submitters == SUBMITTERS_ADMIN_AND_TEACHER && $isteacher) ||
- ( ($act == 'rss_edit' || $act == 'delfeed') && $USER->id == $rss_record->userid) ) ) {
- error(get_string('noguestpost', 'forum').' You are not allowed to make modifications to this RSS feed at this time.', $referrer);
- }
+} else if ($act == 'addfeed' ) {
- if ($act == 'none') {
- rss_display_feeds($id);
- rss_print_form($act, $url, $rssid, $preferredtitle, $id);
+ if (empty($url)) {
+ error('url not defined for rss feed');
+ }
+ $dataobject->userid = $USER->id;
+ $dataobject->description = '';
+ $dataobject->title = '';
+ $dataobject->url = addslashes($url);
+ $dataobject->preferredtitle = addslashes($preferredtitle);
+
+ $rssid = insert_record('block_rss_client', $dataobject);
+ if (!$rssid) {
+ error('There was an error trying to add a new rss feed:'. $url);
+ }
- } else if ($act == 'updfeed') {
- if (empty($url)) {
- error( 'url not defined for rss feed' );
- }
+ // By capturing the output from fetch_rss this way
+ // error messages do not display and clutter up the moodle interface
+ // however, we do lose out on seeing helpful messages like "cache hit", etc.
+ $message = '';
+ ob_start();
+ $rss = fetch_rss($url);
+ if ($CFG->debug) {
+ $message .= ob_get_contents();
+ }
+ ob_end_clean();
- // By capturing the output from fetch_rss this way
- // error messages do not display and clutter up the moodle interface
- // however, we do lose out on seeing helpful messages like "cache hit", etc.
- $message = '';
- ob_start();
- $rss = fetch_rss($url);
- if ($CFG->debug) {
- $message .= ob_get_contents();
- }
- ob_end_clean();
+ if ($rss === false) {
+ $message .= '<br /><br />There was an error loading this rss feed. You may want to verify the url you have specified before using it.'; //Daryl Hawes note: localize this line
+ } else {
$dataobject->id = $rssid;
- if ($rss === false) {
- $dataobject->description = '';
- $dataobject->title = '';
- $dataobject->preferredtitle = '';
- } else {
+ if (!empty($rss->channel['description'])) {
$dataobject->description = addslashes(rss_unhtmlentities($rss->channel['description']));
- $dataobject->title = addslashes(rss_unhtmlentities($rss->channel['title']));
- $dataobject->preferredtitle = addslashes($preferredtitle);
}
- $dataobject->url = addslashes($url);
-
+ if (!empty($rss->channel['title'])) {
+ $dataobject->title = addslashes(rss_unhtmlentities($rss->channel['title']));
+ }
if (!update_record('block_rss_client', $dataobject)) {
error('There was an error trying to update rss feed with id:'. $rssid);
}
+ $message .= '<br />'. get_string('feedadded', 'block_rss_client');
+ }
+ redirect($referrer, $message);
+/*
+ rss_display_feeds($id);
+ rss_print_form($act, $dataobject->url, $dataobject->id, $dataobject->preferredtitle, $id);
+*/
+} else if ( $act == 'rss_edit') {
- $message .= '<br />'. get_string('feedupdated', 'block_rss_client');
- redirect($referrer, $message);
+ $preferredtitle = stripslashes_safe($rss_record->preferredtitle);
+ if (empty($preferredtitle)) {
+ $preferredtitle = stripslashes_safe($rss_record->title);
+ }
+ $url = stripslashes_safe($rss_record->url);
+ rss_display_feeds($id, '', $rssid);
+ rss_print_form($act, $url, $rssid, $preferredtitle, $id);
- } else if ($act == 'addfeed' ) {
+} else if ($act == 'delfeed') {
- if (empty($url)) {
- error('url not defined for rss feed');
- }
- $dataobject->userid = $USER->id;
- $dataobject->description = '';
- $dataobject->title = '';
- $dataobject->url = addslashes($url);
- $dataobject->preferredtitle = addslashes($preferredtitle);
+ $file = $CFG->dataroot .'/cache/rsscache/'. $rssid .'.xml';
+ if (file_exists($file)) {
+ unlink($file);
+ }
- $rssid = insert_record('block_rss_client', $dataobject);
- if (!$rssid) {
- error('There was an error trying to add a new rss feed:'. $url);
- }
+ // echo "DEBUG: act = delfeed"; //debug
+ //Daryl Hawes note: convert this sql statement to a moodle function call
+ $sql = 'DELETE FROM '. $CFG->prefix .'block_rss_client WHERE id='. $rssid;
+ $res= $db->Execute($sql);
+
+ redirect($referrer, get_string('feeddeleted', 'block_rss_client') );
+} else if ($act == 'view') {
+ // echo $sql; //debug
+ // print_object($res); //debug
+ if (!$rss_record->id) {
+ print '<strong>'. get_string('couldnotfindfeed', 'block_rss_client') .': '. $rssid .'</strong>';
+ } else {
// By capturing the output from fetch_rss this way
// error messages do not display and clutter up the moodle interface
// however, we do lose out on seeing helpful messages like "cache hit", etc.
- $message = '';
ob_start();
- $rss = fetch_rss($url);
- if ($CFG->debug) {
- $message .= ob_get_contents();
- }
+ $rss = fetch_rss($rss_record->url);
ob_end_clean();
- if ($rss === false) {
- $message .= '<br /><br />There was an error loading this rss feed. You may want to verify the url you have specified before using it.'; //Daryl Hawes note: localize this line
+ if (empty($rss_record->preferredtitle)) {
+ $feedtitle = stripslashes_safe($rss_record->preferredtitle);
} else {
-
- $dataobject->id = $rssid;
- if (!empty($rss->channel['description'])) {
- $dataobject->description = addslashes(rss_unhtmlentities($rss->channel['description']));
- }
- if (!empty($rss->channel['title'])) {
- $dataobject->title = addslashes(rss_unhtmlentities($rss->channel['title']));
- }
- if (!update_record('block_rss_client', $dataobject)) {
- error('There was an error trying to update rss feed with id:'. $rssid);
- }
- $message .= '<br />'. get_string('feedadded', 'block_rss_client');
+ $feedtitle = stripslashes_safe(rss_unhtmlentities($rss->channel['title']));
}
- redirect($referrer, $message);
-/*
- rss_display_feeds($id);
- rss_print_form($act, $dataobject->url, $dataobject->id, $dataobject->preferredtitle, $id);
-*/
- } else if ( $act == 'rss_edit') {
-
- $preferredtitle = stripslashes_safe($rss_record->preferredtitle);
- if (empty($preferredtitle)) {
- $preferredtitle = stripslashes_safe($rss_record->title);
- }
- $url = stripslashes_safe($rss_record->url);
- rss_display_feeds($id, '', $rssid);
- rss_print_form($act, $url, $rssid, $preferredtitle, $id);
-
- } else if ($act == 'delfeed') {
-
- $file = $CFG->dataroot .'/cache/rsscache/'. $rssid .'.xml';
- if (file_exists($file)) {
- unlink($file);
- }
-
- // echo "DEBUG: act = delfeed"; //debug
- //Daryl Hawes note: convert this sql statement to a moodle function call
- $sql = 'DELETE FROM '. $CFG->prefix .'block_rss_client WHERE id='. $rssid;
- $res= $db->Execute($sql);
+ print '<table align="center" width="50%" cellspacing="1">'."\n";
+ print '<tr><td colspan="2"><strong>'. $feedtitle .'</strong></td></tr>'."\n";
+ for($y=0; $y < count($rss->items); $y++) {
+ $rss->items[$y]['title'] = stripslashes_safe(rss_unhtmlentities($rss->items[$y]['title']));
+ $rss->items[$y]['description'] = stripslashes_safe(rss_unhtmlentities($rss->items[$y]['description']));
+ if ($rss->items[$y]['link'] == '') {
+ $rss->items[$y]['link'] = $rss->items[$y]['guid'];
+ }
- redirect($referrer, get_string('feeddeleted', 'block_rss_client') );
+ if ($rss->items[$y]['title'] == '') {
+ $rss->items[$y]['title'] = '&gt;&gt;';
+ }
- } else if ($act == 'view') {
- // echo $sql; //debug
- // print_object($res); //debug
- if (!$rss_record->id) {
- print '<strong>'. get_string('couldnotfindfeed', 'block_rss_client') .': '. $rssid .'</strong>';
- } else {
- // By capturing the output from fetch_rss this way
- // error messages do not display and clutter up the moodle interface
- // however, we do lose out on seeing helpful messages like "cache hit", etc.
- ob_start();
- $rss = fetch_rss($rss_record->url);
- ob_end_clean();
-
- if (empty($rss_record->preferredtitle)) {
- $feedtitle = stripslashes_safe($rss_record->preferredtitle);
+ print '<tr><td valign="middle">'."\n";
+ print '<a href="'. $rss->items[$y]['link'] .'" target="_blank"><strong>'. $rss->items[$y]['title'];
+ print '</strong></a>'."\n";
+ print '</td>'."\n";
+ if (file_exists($CFG->dirroot .'/blog/lib.php')) {
+ //Blog module is installed - provide "blog this" link
+ print '<td align="right">'."\n";
+ print '<img src="'. $CFG->pixpath .'/blog/blog.gif" alt="'. get_string('blogthis', 'blog').'" title="'. get_string('blogthis', 'blog') .'" border="0" align="middle" />'."\n";
+ print '<a href="'. $CFG->wwwroot .'/blog/blogthis.php?userid='. $userid .'&act=use&item='. $y .'&rssid='. $rssid .'"><small><strong>'. get_string('blogthis', 'blog') .'</strong></small></a>'."\n";
} else {
- $feedtitle = stripslashes_safe(rss_unhtmlentities($rss->channel['title']));
+ print '<td>&nbsp;';
}
- print '<table align="center" width="50%" cellspacing="1">'."\n";
- print '<tr><td colspan="2"><strong>'. $feedtitle .'</strong></td></tr>'."\n";
- for($y=0; $y < count($rss->items); $y++) {
- $rss->items[$y]['title'] = stripslashes_safe(rss_unhtmlentities($rss->items[$y]['title']));
- $rss->items[$y]['description'] = stripslashes_safe(rss_unhtmlentities($rss->items[$y]['description']));
- if ($rss->items[$y]['link'] == '') {
- $rss->items[$y]['link'] = $rss->items[$y]['guid'];
- }
-
- if ($rss->items[$y]['title'] == '') {
- $rss->items[$y]['title'] = '&gt;&gt;';
- }
-
- print '<tr><td valign="middle">'."\n";
- print '<a href="'. $rss->items[$y]['link'] .'" target="_blank"><strong>'. $rss->items[$y]['title'];
- print '</strong></a>'."\n";
- print '</td>'."\n";
- if (file_exists($CFG->dirroot .'/blog/lib.php')) {
- //Blog module is installed - provide "blog this" link
- print '<td align="right">'."\n";
- print '<img src="'. $CFG->pixpath .'/blog/blog.gif" alt="'. get_string('blogthis', 'blog').'" title="'. get_string('blogthis', 'blog') .'" border="0" align="middle" />'."\n";
- print '<a href="'. $CFG->wwwroot .'/blog/blogthis.php?userid='. $userid .'&act=use&item='. $y .'&rssid='. $rssid .'"><small><strong>'. get_string('blogthis', 'blog') .'</strong></small></a>'."\n";
- } else {
- print '<td>&nbsp;';
- }
- print '</td></tr>'."\n";
- print '<tr><td colspan=2><small>';
- print $rss->items[$y]['description'] .'</small></td></tr>'."\n";
- }
- print '</table>'."\n";
+ print '</td></tr>'."\n";
+ print '<tr><td colspan=2><small>';
+ print $rss->items[$y]['description'] .'</small></td></tr>'."\n";
}
- } else {
- rss_display_feeds($id);
- rss_print_form($act, $url, $rssid, $preferredtitle, $id);
+ print '</table>'."\n";
}
+} else {
+ rss_display_feeds($id);
+ rss_print_form($act, $url, $rssid, $preferredtitle, $id);
+}
- print_footer();
+print_footer();
?>

0 comments on commit 706dae5

Please sign in to comment.