From: moodler <moodler>
Date: Mon, 21 Oct 2002 08:19:15 +0000 (+0000)
Subject: Don't show column grade when there's nothing to show
X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=4db9d14dad0f9a92cc468b92dbf48f8cf185c879;p=moodle.git

Don't show column grade when there's nothing to show
---

diff --git a/course/grades.php b/course/grades.php
index 95de6f5c82..5d030f0c77 100644
--- a/course/grades.php
+++ b/course/grades.php
@@ -61,28 +61,29 @@
                         require_once($libfile);
                         $gradefunction = $mod->modname."_grades";
                         if (function_exists($gradefunction)) {   // Skip modules without grade function
-                            $modgrades = $gradefunction($mod->instance);
+                            if ($modgrades = $gradefunction($mod->instance)) {
 
-                            if ($modgrades->maxgrade) {
-                                $maxgrade = "<BR>$strmax: $modgrades->maxgrade";
-                            } else {
-                                $maxgrade = "";
-                            }
-
-                            $image = "<A HREF=\"$CFG->wwwroot/mod/$mod->modname/view.php?id=$mod->id\"".
-                                     "   TITLE=\"$mod->modfullname\">".
-                                     "<IMG BORDER=0 VALIGN=absmiddle SRC=\"../mod/$mod->modname/icon.gif\" ".
-                                     "HEIGHT=16 WIDTH=16 ALT=\"$mod->modfullname\"></A>";
-                            $columnhtml[] = "$image ".
-                                         "<A HREF=\"$CFG->wwwroot/mod/$mod->modname/view.php?id=$mod->id\">".
-                                         "$instance->name".
-                                         "</A>$maxgrade";
-                            $columns[] = "$mod->modfullname: $instance->name - $modgrades->maxgrade";
-
-                            foreach ($students as $student) {
-                                $grades[$student->id][] = $modgrades->grades[$student->id]; // may be empty, that's ok
                                 if ($modgrades->maxgrade) {
-                                    $totals[$student->id] = (float)($totals[$student->id]) + (float)($modgrades->grades[$student->id]);
+                                    $maxgrade = "<BR>$strmax: $modgrades->maxgrade";
+                                } else {
+                                    $maxgrade = "";
+                                }
+    
+                                $image = "<A HREF=\"$CFG->wwwroot/mod/$mod->modname/view.php?id=$mod->id\"".
+                                         "   TITLE=\"$mod->modfullname\">".
+                                         "<IMG BORDER=0 VALIGN=absmiddle SRC=\"../mod/$mod->modname/icon.gif\" ".
+                                         "HEIGHT=16 WIDTH=16 ALT=\"$mod->modfullname\"></A>";
+                                $columnhtml[] = "$image ".
+                                             "<A HREF=\"$CFG->wwwroot/mod/$mod->modname/view.php?id=$mod->id\">".
+                                             "$instance->name".
+                                             "</A>$maxgrade";
+                                $columns[] = "$mod->modfullname: $instance->name - $modgrades->maxgrade";
+    
+                                foreach ($students as $student) {
+                                    $grades[$student->id][] = $modgrades->grades[$student->id]; // may be empty, that's ok
+                                    if ($modgrades->maxgrade) {
+                                        $totals[$student->id] = (float)($totals[$student->id]) + (float)($modgrades->grades[$student->id]);
+                                    }
                                 }
                             }
                         }
diff --git a/mod/forum/lib.php b/mod/forum/lib.php
index d981ff2ee1..d3a344ceba 100644
--- a/mod/forum/lib.php
+++ b/mod/forum/lib.php
@@ -366,6 +366,12 @@ function forum_grades($forumid) {
 /// Must return an array of grades, indexed by user, and a max grade.
     global $FORUM_POST_RATINGS;
 
+    if (!$forum = get_record("forum", "id", $forumid)) {
+        return false;
+    }
+    if (!$forum->assessed) {
+        return false;
+    }
     if ($ratings = get_records_sql_menu("SELECT p.user, r.rating
                                           FROM forum_discussions d, forum_posts p, forum_ratings r
                                          WHERE d.forum = '$forumid' 
diff --git a/mod/forum/mod.html b/mod/forum/mod.html
index 0016350d50..83ad44bfa8 100644
--- a/mod/forum/mod.html
+++ b/mod/forum/mod.html
@@ -34,8 +34,8 @@
 <tr valign=top>
     <td align=right><P><B><? print_string("allowdiscussions", "forum", strtolower("$course->student")) ?>:</B></P></TD>
     <td>
-        <?  choose_from_menu($FORUM_OPEN_MODES, "open", $form->open, ""); ?>
-        <? helpbutton("allowdiscussions", get_string("allowdiscussions", "forum"), "forum") ?>
+        <? choose_from_menu($FORUM_OPEN_MODES, "open", $form->open, ""); ?>
+        <? helpbutton("allowdiscussions", get_string("allowdiscussions", "forum", strtolower("$course->student")), "forum") ?>
     </td>
 </tr>