RSS for forums now checks the new posts against the file modification date,
[moodle.git] / rss / rsslib.php
index b6bb328..7a13d01 100644 (file)
@@ -38,17 +38,17 @@ function cron_rss_feeds () {
 
     $status = true;
    
-    echo "    Generating rssfeeds...\n";
+    mtrace("    Generating rssfeeds...");
 
     //Check for required functions...
     if(!function_exists('utf8_encode')) {
-        echo "        ERROR: You need to add XML support to your PHP installation!\n";
+        mtrace("        ERROR: You need to add XML support to your PHP installation!");
         return true;
     }
 
     if ($allmods = get_records("modules") ) {
         foreach ($allmods as $mod) {
-            echo '        '.$mod->name.': ';
+            mtrace('        '.$mod->name.': ', '');
             $modname = $mod->name;
             $modfile = "$CFG->dirroot/mod/$modname/rsslib.php";
             //If file exists and we have selected to restore that type of module
@@ -57,29 +57,29 @@ function cron_rss_feeds () {
                 $generaterssfeeds = $modname.'_rss_feeds';
                 if (function_exists($generaterssfeeds)) {
                     if ($status) {
-                        echo 'generating ';
+                        mtrace('generating ', '');;
                         $status = $generaterssfeeds();
                         if (!empty($status)) {
-                            echo "...OK\n";
+                            mtrace("...OK");
                         } else {
-                            echo "...FAILED\n";
+                            mtrace("...FAILED");
                         }
                     } else {
-                        echo "...SKIPPED (failed above)\n";
+                        mtrace("...SKIPPED (failed above)");
                     }
                 } else {
-                    echo "...NOT SUPPORTED (function)\n";
+                    mtrace("...NOT SUPPORTED (function)");
                 }
             } else {
-                echo "...NOT SUPPORTED (file)\n";
+                mtrace("...NOT SUPPORTED (file)");
             }
         }
     }
-    echo "    Ending  rssfeeds...";
+    mtrace("    Ending  rssfeeds...", '');
     if (!empty($status)) {
-        echo "...OK\n";
+        mtrace("...OK");
     } else {
-        echo "...FAILED\n";
+        mtrace("...FAILED");
     }
 
     return $status;
@@ -98,7 +98,7 @@ function rss_save_file ($modname,$mod,$result) {
     }
 
     if ($status) {
-        $file = $basedir .= "/".$mod->id.".xml";
+        $file = rss_file_name($modname, $mod);
         $rss_file = fopen($file,"w");
         if ($rss_file) {
             $status = fwrite ($rss_file,$result);
@@ -110,6 +110,13 @@ function rss_save_file ($modname,$mod,$result) {
     return $status;
 }
 
+
+function rss_file_name($modname, $mod) {
+    global $CFG;
+
+    return "$CFG->dataroot/rss/$modname/$mod->id.xml";
+}
+
 //This function return all the common headers for every rss feed in the site
 function rss_standard_header($title = NULL, $link = NULL, $description = NULL) {