From 9818ec417e50131425ee89444f32f3cef077b701 Mon Sep 17 00:00:00 2001 From: Michael Hughes Date: Thu, 26 Jan 2012 11:48:01 +0000 Subject: [PATCH] Implements grade item visiblity on activity edit form --- course/modedit.php | 11 +++++++++++ course/moodleform_mod.php | 11 +++++++++++ 2 files changed, 22 insertions(+), 0 deletions(-) diff --git a/course/modedit.php b/course/modedit.php index 5865e4a..4b8b01a 100644 --- a/course/modedit.php +++ b/course/modedit.php @@ -195,6 +195,7 @@ if (!empty($add)) { // set category if present $gradecat = false; + $gradehidden = false; foreach ($items as $item) { if ($gradecat === false) { $gradecat = $item->categoryid; @@ -205,11 +206,17 @@ if (!empty($add)) { $gradecat = false; break; } + if ($gradehidden === false) { + $gradehidden = $item->hidden; + } } if ($gradecat !== false) { // do not set if mixed categories present $data->gradecat = $gradecat; } + if ($gradehidden !== false) { + $form->gradehidden = $gradehidden; + } } $sectionname = get_section_name($course, $cw); @@ -518,6 +525,10 @@ if ($mform->is_cancelled()) { $grade_item->idnumber = $fromform->cmidnumber; $grade_item->update(); } + if (isset($fromform->gradehidden)) { + $grade_item->hidden = $fromform->gradehidden; + $grade_item->update(); + } } $items = grade_item::fetch_all(array('itemtype'=>'mod', 'itemmodule'=>$fromform->modulename, diff --git a/course/moodleform_mod.php b/course/moodleform_mod.php index 9fc6c50..724aeb9 100644 --- a/course/moodleform_mod.php +++ b/course/moodleform_mod.php @@ -121,6 +121,7 @@ abstract class moodleform_mod extends moodleform { if ($this->_features->gradecat) { $gradecat = false; + $gradehidden = false; if (!empty($CFG->enableoutcomes) and $this->_features->outcomes) { $outcomes = grade_outcome::fetch_all_available($COURSE->id); if (!empty($outcomes)) { @@ -150,6 +151,8 @@ abstract class moodleform_mod extends moodleform { $gradecat = false; break; } + $gradehidden = $item->hidden; + } } @@ -164,6 +167,11 @@ abstract class moodleform_mod extends moodleform { } } } + if ($gradehidden === false){ + if ($mform->elementExists('gradehidden')){ + $mform->removeElement('gradehidden'); + } + } } } @@ -739,6 +747,9 @@ abstract class moodleform_mod extends moodleform { grade_get_categories_menu($COURSE->id, $this->_outcomesused)); $mform->addHelpButton('gradecat', 'gradecategoryonmodform', 'grades'); } + if($this->_features->gradecat){ + $mform->addElement('select','gradehidden','Embargo Grades',array(0=>"No",1=>"Yes")); + } } } -- 1.7.3.1.msysgit.0