mirror of
https://github.com/moodle/moodle.git
synced 2025-08-04 08:26:37 +02:00
MDL-6376 - fix minor errors in the previous commit.
More significantly, this patch changes the '1 Students have made 1 attempts' string. To start with, this code was being produced in five different places, so I made a function to do the work!. Next, as you can see, it is not gramatical. Also, some people find it confusing, as in MDL-6376. Therefore, it now just says 'Attempts: 1'. Merged from MOODLE_19_STABLE.
This commit is contained in:
parent
f63d29223e
commit
6c58e1985b
7 changed files with 25 additions and 41 deletions
|
@ -60,6 +60,7 @@ $string['attemptsallowed'] = 'Attempts allowed';
|
||||||
$string['attemptsdeleted'] = 'Quiz attempts deleted';
|
$string['attemptsdeleted'] = 'Quiz attempts deleted';
|
||||||
$string['attemptselection'] = 'Select which attempts to analyze per user:';
|
$string['attemptselection'] = 'Select which attempts to analyze per user:';
|
||||||
$string['attemptsexist'] = 'You can no longer add or remove questions.';
|
$string['attemptsexist'] = 'You can no longer add or remove questions.';
|
||||||
|
$string['attemptsnum'] = 'Attempts: $a';
|
||||||
$string['attemptsonly'] = 'Show only students with attempts';
|
$string['attemptsonly'] = 'Show only students with attempts';
|
||||||
$string['attemptsunlimited'] = 'Unlimited attempts';
|
$string['attemptsunlimited'] = 'Unlimited attempts';
|
||||||
$string['back'] = 'Back to preview question';
|
$string['back'] = 'Back to preview question';
|
||||||
|
|
|
@ -1891,8 +1891,7 @@ function default_export_filename($course,$category) {
|
||||||
$export_name .= moodle_strtolower($export_categoryname)."-";
|
$export_name .= moodle_strtolower($export_categoryname)."-";
|
||||||
//The date format
|
//The date format
|
||||||
$export_name .= userdate(time(),$export_date_format,99,false);
|
$export_name .= userdate(time(),$export_date_format,99,false);
|
||||||
//The extension - no extension, supplied by format
|
//Extension is supplied by format later.
|
||||||
// $export_name .= ".txt";
|
|
||||||
|
|
||||||
return $export_name;
|
return $export_name;
|
||||||
}
|
}
|
||||||
|
|
|
@ -304,12 +304,8 @@
|
||||||
|
|
||||||
print_box_start();
|
print_box_start();
|
||||||
|
|
||||||
$a->attemptnum = count_records('quiz_attempts', 'quiz', $quiz->id, 'preview', 0);
|
|
||||||
$a->studentnum = count_records_select('quiz_attempts', "quiz = '$quiz->id' AND preview = '0'", 'COUNT(DISTINCT userid)');
|
|
||||||
$a->studentstring = $course->students;
|
|
||||||
|
|
||||||
echo "<div class=\"attemptsnotice\">\n";
|
echo "<div class=\"attemptsnotice\">\n";
|
||||||
echo "<a href=\"report.php?mode=overview&id=$cm->id\">".get_string('numattempts', 'quiz', $a)."</a><br />".get_string("attemptsexist","quiz");
|
echo "<a href=\"report.php?mode=overview&id=$cm->id\">".quiz_num_attempt_summary($quiz)."</a><br />".get_string("attemptsexist","quiz");
|
||||||
echo "</div><br />\n";
|
echo "</div><br />\n";
|
||||||
|
|
||||||
$sumgrades = quiz_print_question_list($quiz, $thispageurl, false, $quiz_showbreaks, $quiz_reordertool);
|
$sumgrades = quiz_print_question_list($quiz, $thispageurl, false, $quiz_showbreaks, $quiz_reordertool);
|
||||||
|
|
|
@ -112,17 +112,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($showing == 'stats') {
|
if ($showing == 'stats') {
|
||||||
|
$data[] = quiz_num_attempt_summary($quiz);
|
||||||
// Number of students who have attempted this quiz.
|
|
||||||
if ($a->attemptnum = count_records('quiz_attempts', 'quiz', $quiz->id, 'preview', 0)) {
|
|
||||||
$a->studentnum = count_records_select('quiz_attempts',
|
|
||||||
"quiz = '$quiz->id' AND preview = '0'", 'COUNT(DISTINCT userid)');
|
|
||||||
$a->studentstring = $course->students;
|
|
||||||
$data[] = "<a href=\"report.php?mode=overview&q=$quiz->id\">" .
|
|
||||||
get_string('numattempts', 'quiz', $a) . '</a>';
|
|
||||||
} else {
|
|
||||||
$data[] = '';
|
|
||||||
}
|
|
||||||
} else if ($showing = 'scores') {
|
} else if ($showing = 'scores') {
|
||||||
|
|
||||||
// Grade and feedback.
|
// Grade and feedback.
|
||||||
|
|
|
@ -1023,7 +1023,7 @@ function quiz_print_overview($courses, &$htmlarray) {
|
||||||
|
|
||||||
/// We want to list quizzes that are currently available, and which have a close date.
|
/// We want to list quizzes that are currently available, and which have a close date.
|
||||||
/// This is the same as what the lesson does, and the dabate is in MDL-10568.
|
/// This is the same as what the lesson does, and the dabate is in MDL-10568.
|
||||||
$now = date();
|
$now = time();
|
||||||
foreach ($quizs as $quiz) {
|
foreach ($quizs as $quiz) {
|
||||||
if ($quiz->timeclose >= $now && $quiz->timeopen < $now) {
|
if ($quiz->timeclose >= $now && $quiz->timeopen < $now) {
|
||||||
/// Give a link to the quiz, and the deadline.
|
/// Give a link to the quiz, and the deadline.
|
||||||
|
@ -1037,15 +1037,7 @@ function quiz_print_overview($courses, &$htmlarray) {
|
||||||
$context = get_context_instance(CONTEXT_MODULE, $quiz->coursemodule);
|
$context = get_context_instance(CONTEXT_MODULE, $quiz->coursemodule);
|
||||||
if (has_capability('mod/quiz:viewreports', $context)) {
|
if (has_capability('mod/quiz:viewreports', $context)) {
|
||||||
/// For teacher-like people, show a summary of the number of student attempts.
|
/// For teacher-like people, show a summary of the number of student attempts.
|
||||||
$a = new stdClass;
|
$str .= '<div class="info">' . quiz_num_attempt_summary($quiz, true) . '</div>';
|
||||||
if ($a->attemptnum = count_records('quiz_attempts', 'quiz', $quiz->id, 'preview', 0)) {
|
|
||||||
$a->studentnum = count_records_select('quiz_attempts', "quiz = '$quiz->id' AND preview = '0'", 'COUNT(DISTINCT userid)');
|
|
||||||
} else {
|
|
||||||
$a->studentnum = 0;
|
|
||||||
$a->attemptnum = 0;
|
|
||||||
}
|
|
||||||
$a->studentstring = $course->students;
|
|
||||||
$str .= '<div class="info">' . get_string('numattempts', 'quiz', $a) . '</div>';
|
|
||||||
} else if (has_capability('mod/quiz:attempt', $context)){ // Student
|
} else if (has_capability('mod/quiz:attempt', $context)){ // Student
|
||||||
/// For student-like people, tell them how many attempts they have made.
|
/// For student-like people, tell them how many attempts they have made.
|
||||||
if (isset($USER->id) && ($attempts = quiz_get_user_attempts($quiz->id, $USER->id))) {
|
if (isset($USER->id) && ($attempts = quiz_get_user_attempts($quiz->id, $USER->id))) {
|
||||||
|
@ -1069,4 +1061,19 @@ function quiz_print_overview($courses, &$htmlarray) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return a textual summary of the number of attemtps that have been made at a particular quiz,
|
||||||
|
* returns '' if no attemtps have been made yet, unless $returnzero is passed as true.
|
||||||
|
* @param object $quiz the quiz object. Only $quiz->id is used at the moment.
|
||||||
|
* @param boolean $returnzero if false (default), when no attempts have been made '' is returned instead of 'Attempts: 0'.
|
||||||
|
* @return string a string like "Attempts: 123".
|
||||||
|
*/
|
||||||
|
function quiz_num_attempt_summary($quiz, $returnzero = false) {
|
||||||
|
$numattempts = count_records('quiz_attempts', 'quiz', $quiz->id, 'preview', 0);
|
||||||
|
if ($numattempts || $returnzero) {
|
||||||
|
return get_string('attemptsnum', 'quiz', $numattempts);
|
||||||
|
}
|
||||||
|
return '';
|
||||||
|
}
|
||||||
?>
|
?>
|
||||||
|
|
|
@ -74,14 +74,8 @@ class quiz_report extends quiz_default_report {
|
||||||
|
|
||||||
// Print information on the number of existing attempts
|
// Print information on the number of existing attempts
|
||||||
if (!$download) { //do not print notices when downloading
|
if (!$download) { //do not print notices when downloading
|
||||||
if ($attemptnum = count_records('quiz_attempts', 'quiz', $quiz->id, 'preview', 0)) {
|
if ($strattemptnum = quiz_num_attempt_summary($quiz)) {
|
||||||
$a = new stdClass;
|
notify($strattemptnum);
|
||||||
$a->attemptnum = $attemptnum;
|
|
||||||
$a->studentnum = count_records_select('quiz_attempts',
|
|
||||||
"quiz = '$quiz->id' AND preview = '0'", 'COUNT(DISTINCT userid)');
|
|
||||||
$a->studentstring = $course->students;
|
|
||||||
|
|
||||||
notify(get_string('numattempts', 'quiz', $a));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -125,11 +125,8 @@
|
||||||
|
|
||||||
// Show number of attempts summary to those who can view reports.
|
// Show number of attempts summary to those who can view reports.
|
||||||
if (has_capability('mod/quiz:viewreports', $context)) {
|
if (has_capability('mod/quiz:viewreports', $context)) {
|
||||||
if ($a->attemptnum = count_records('quiz_attempts', 'quiz', $quiz->id, 'preview', 0)) {
|
if ($strattemptnum = quiz_num_attempt_summary($quiz)) {
|
||||||
$a->studentnum = count_records_select('quiz_attempts', "quiz = '$quiz->id' AND preview = '0'", 'COUNT(DISTINCT userid)');
|
notify("<a href=\"report.php?mode=overview&id=$cm->id\">" . $strattemptnum . '</a>');
|
||||||
$a->studentstring = $course->students;
|
|
||||||
|
|
||||||
notify("<a href=\"report.php?mode=overview&id=$cm->id\">".get_string('numattempts', 'quiz', $a).'</a>');
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue