Merge branch 'wip-mdl-32759-warning' of git://github.com/rajeshtaneja/moodle
This commit is contained in:
@@ -742,7 +742,8 @@ class grade_item extends grade_object {
|
||||
|
||||
// Standardise score to the new grade range
|
||||
// NOTE: this is not compatible with current assignment grading
|
||||
if ($this->itemmodule != 'assignment' and ($rawmin != $this->grademin or $rawmax != $this->grademax)) {
|
||||
$isassignmentmodule = ($this->itemmodule == 'assignment') || ($this->itemmodule == 'assign');
|
||||
if (!$isassignmentmodule && ($rawmin != $this->grademin or $rawmax != $this->grademax)) {
|
||||
$rawgrade = grade_grade::standardise_score($rawgrade, $rawmin, $rawmax, $this->grademin, $this->grademax);
|
||||
}
|
||||
|
||||
|
||||
@@ -65,6 +65,7 @@ $string['batchoperationconfirmreverttodraft'] = 'Revert selected submissions to
|
||||
$string['batchoperationlock'] = 'lock submissions';
|
||||
$string['batchoperationunlock'] = 'unlock submissions';
|
||||
$string['batchoperationreverttodraft'] = 'revert submissions to draft';
|
||||
$string['changegradewarning'] = 'This assignment has graded submissions and changing the grade will not automatically re-calculate existing submission grades. You must re-grade all existing submissions, if you wish to change the grade.';
|
||||
$string['comment'] = 'Comment';
|
||||
$string['completionsubmit'] = 'Student must submit to this activity to complete it';
|
||||
$string['conversionexception'] = 'Could not convert assignment. Exception was: {$a}.';
|
||||
|
||||
+16
-1
@@ -45,7 +45,7 @@ class mod_assign_mod_form extends moodleform_mod {
|
||||
* @return void
|
||||
*/
|
||||
function definition() {
|
||||
global $CFG, $DB;
|
||||
global $CFG, $DB, $PAGE;
|
||||
$mform = $this->_form;
|
||||
|
||||
$mform->addElement('header', 'general', get_string('general', 'form'));
|
||||
@@ -120,6 +120,21 @@ class mod_assign_mod_form extends moodleform_mod {
|
||||
$this->standard_coursemodule_elements();
|
||||
|
||||
$this->add_action_buttons();
|
||||
|
||||
// Add warning popup/noscript tag, if grades are changed by user.
|
||||
if ($mform->elementExists('grade') && !empty($this->_instance) && $DB->record_exists_select('assign_grades', 'assignment = ? AND grade <> -1', array($this->_instance))) {
|
||||
$module = array(
|
||||
'name' => 'mod_assign',
|
||||
'fullpath' => '/mod/assign/module.js',
|
||||
'requires' => array('node', 'event'),
|
||||
'strings' => array(array('changegradewarning', 'mod_assign'))
|
||||
);
|
||||
$PAGE->requires->js_init_call('M.mod_assign.init_grade_change', null, false, $module);
|
||||
|
||||
// Add noscript tag in case
|
||||
$noscriptwarning = $mform->createElement('static', 'warning', null, html_writer::tag('noscript', get_string('changegradewarning', 'mod_assign')));
|
||||
$mform->insertElementBefore($noscriptwarning, 'grade');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -127,4 +127,16 @@ M.mod_assign.init_grading_options = function(Y) {
|
||||
});
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
M.mod_assign.init_grade_change = function(Y) {
|
||||
var gradenode = Y.one('#id_grade');
|
||||
if (gradenode) {
|
||||
var originalvalue = gradenode.get('value');
|
||||
gradenode.on('change', function() {
|
||||
if (gradenode.get('value') != originalvalue) {
|
||||
alert(M.str.mod_assign.changegradewarning);
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
@@ -35,3 +35,15 @@ M.mod_assignment.init_tree = function(Y, expand_all, htmlid) {
|
||||
tree.render();
|
||||
});
|
||||
};
|
||||
|
||||
M.mod_assignment.init_grade_change = function(Y) {
|
||||
var gradenode = Y.one('#id_grade');
|
||||
if (gradenode) {
|
||||
var originalvalue = gradenode.get('value');
|
||||
gradenode.on('change', function() {
|
||||
if (gradenode.get('value') != originalvalue) {
|
||||
alert(M.str.mod_assignment.changegradewarning);
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
@@ -57,6 +57,7 @@ $string['assignment:view'] = 'View assignment';
|
||||
$string['availabledate'] = 'Available from';
|
||||
$string['cannotdeletefiles'] = 'An error occurred and files could not be deleted';
|
||||
$string['cannotviewassignment'] = 'You can not view this assignment';
|
||||
$string['changegradewarning'] = 'This assignment has graded submissions and changing the grade will not automatically re-calculate existing submission grades. You must re-grade all existing submissions, if you wish to change the grade.';
|
||||
$string['comment'] = 'Comment';
|
||||
$string['commentinline'] = 'Comment inline';
|
||||
$string['commentinline_help'] = 'If enabled, the submission text will be copied into the feedback comment field during grading, making it easier to comment inline (using a different colour, perhaps) or to edit the original text.';
|
||||
|
||||
@@ -9,7 +9,7 @@ class mod_assignment_mod_form extends moodleform_mod {
|
||||
protected $_assignmentinstance = null;
|
||||
|
||||
function definition() {
|
||||
global $CFG, $DB;
|
||||
global $CFG, $DB, $PAGE;
|
||||
$mform =& $this->_form;
|
||||
|
||||
// this hack is needed for different settings of each subtype
|
||||
@@ -76,6 +76,21 @@ class mod_assignment_mod_form extends moodleform_mod {
|
||||
$this->standard_coursemodule_elements();
|
||||
|
||||
$this->add_action_buttons();
|
||||
|
||||
// Add warning popup/noscript tag, if grades are changed by user.
|
||||
if ($mform->elementExists('grade') && !empty($this->_instance) && $DB->record_exists_select('assignment_submissions', 'assignment = ? AND grade <> -1', array($this->_instance))) {
|
||||
$module = array(
|
||||
'name' => 'mod_assignment',
|
||||
'fullpath' => '/mod/assignment/assignment.js',
|
||||
'requires' => array('node', 'event'),
|
||||
'strings' => array(array('changegradewarning', 'mod_assignment'))
|
||||
);
|
||||
$PAGE->requires->js_init_call('M.mod_assignment.init_grade_change', null, false, $module);
|
||||
|
||||
// Add noscript tag in case
|
||||
$noscriptwarning = $mform->createElement('static', 'warning', null, html_writer::tag('noscript', get_string('changegradewarning', 'mod_assignment')));
|
||||
$mform->insertElementBefore($noscriptwarning, 'grade');
|
||||
}
|
||||
}
|
||||
|
||||
// Needed by plugin assignment types if they include a filemanager element in the settings form
|
||||
|
||||
Reference in New Issue
Block a user