From non non (nbhansen at midway.uchicago.edu) Saturday, 10 June 2006, 08:14 PM:
Maybe there needs to be is a no grade by default (as opposed to 0 grade option), or to determine whether a question has been graded both the grade field and the comment field should be checked. The reason I say this is that as of now a grade of 0 does not necessarily mean that the teacher has graded a question. If a teacher has 50 questions to grade, and they only get through 20 in a sitting, that means 30 remain ungraded even though they have a score of 0 now. If you were to change it so that any questions saved by the teacher were considered graded, then teachers would have to grade all questions in sitting.
From non non (nbhansen at midway.uchicago.edu) Saturday, 10 June 2006, 08:18 PM:
The no grade option is available in the assignment module, so perhaps that code could be used in quiz as well.
From (daan at westnet.com.au) Sunday, 11 June 2006, 08:28 AM:
Thanks for the informative reply.
When you say sitting I guess that means you are using the Grade All feature. If so, I can see your point. You would have to grade every single question in one sitting or else they will be marked as 0.
The only other thing I could think of was to have a question mark ? in the grade box and the marker could then set the grade to 0 or 1 ( or whatever the max grade is ) and if you don't happen to grade all questions, that would be fine because the rest would have a ? as the grade. The code would just check for grades with ? and leave as ungraded.
From non non (nbhansen at midway.uchicago.edu) Monday, 12 June 2006, 02:28 AM:
I bet the database just stores 0 by default. It probably is a numerical field, and therefore couldn't store a question mark, but it probably could just be null by default when a question hadn't been graded rather than 0 by default and that way there could be a distinction between a zero grade and no grade. But an ungraded question could be displayed to the teacher as ? or anything else.
From (daan at westnet.com.au) Tuesday, 13 June 2006, 01:21 PM:
What I was thinking was that the database must have the questions as being ungraded or graded.
When you go and manually grade a question, or all of them at once, the code could do something like...
Foreach question
if ungraded print ? in grade field // eg Grade: ? / 1
else print grade // eg 1/1
Then do this when submitting the form.
Foreach question
if grade field ? then leave as ungraded
else store grade and mark question as graded.
Dave
From (eburling at class.com) Saturday, 1 July 2006, 01:37 AM:
This is easily fixed....My fix actually sets the feedback to teacher will grade essay instead of incorrect. But now after you leave a 0, it will remember that the quiz has been graded, and 0 will be the grade instead of the ungraded.
Go into mod/quiz/locallib.php and find the function... print_question_grading_details()
here you can change how esssays are graded.
echo '<div class=correctness>';
if ($grade->raw >= $grade->max) {
print_string('correct', 'quiz');
} else if ($grade->raw > 0) {
print_string('partiallycorrect', 'quiz');
} else if ($question->qtype==12&&$state->options->graded!=1)
{
printTeacher will grade essay.;
}
else
{
print_string('incorrect', 'quiz');
}
echo '</div>';
If you dont' want the teacher will grade essay then use this code instead....
echo '<div class=correctness>';
if ($grade->raw >= $grade->max) {
print_string('correct', 'quiz');
} } else if ($grade->raw > 0) {
print_string('partiallycorrect', 'quiz');
} else if ($question->qtype==12&&$state->options->graded!=1)/
{ //this means that teacher hasn't graded yet
print_string('incorrect', 'quiz');
} else {
//this is what is printed when teacher has graded
print_string('incorrect', 'quiz');
}
echo '</div>';
From non non (nbhansen at midway.uchicago.edu) Saturday, 10 June 2006, 08:14 PM:
Maybe there needs to be is a no grade by default (as opposed to 0 grade option), or to determine whether a question has been graded both the grade field and the comment field should be checked. The reason I say this is that as of now a grade of 0 does not necessarily mean that the teacher has graded a question. If a teacher has 50 questions to grade, and they only get through 20 in a sitting, that means 30 remain ungraded even though they have a score of 0 now. If you were to change it so that any questions saved by the teacher were considered graded, then teachers would have to grade all questions in sitting.
From non non (nbhansen at midway.uchicago.edu) Saturday, 10 June 2006, 08:18 PM:
The no grade option is available in the assignment module, so perhaps that code could be used in quiz as well.
From (daan at westnet.com.au) Sunday, 11 June 2006, 08:28 AM:
Thanks for the informative reply.
When you say sitting I guess that means you are using the Grade All feature. If so, I can see your point. You would have to grade every single question in one sitting or else they will be marked as 0.
The only other thing I could think of was to have a question mark ? in the grade box and the marker could then set the grade to 0 or 1 ( or whatever the max grade is ) and if you don't happen to grade all questions, that would be fine because the rest would have a ? as the grade. The code would just check for grades with ? and leave as ungraded.
From non non (nbhansen at midway.uchicago.edu) Monday, 12 June 2006, 02:28 AM:
I bet the database just stores 0 by default. It probably is a numerical field, and therefore couldn't store a question mark, but it probably could just be null by default when a question hadn't been graded rather than 0 by default and that way there could be a distinction between a zero grade and no grade. But an ungraded question could be displayed to the teacher as ? or anything else.
From (daan at westnet.com.au) Tuesday, 13 June 2006, 01:21 PM:
What I was thinking was that the database must have the questions as being ungraded or graded.
When you go and manually grade a question, or all of them at once, the code could do something like...
Foreach question
if ungraded print ? in grade field // eg Grade: ? / 1
else print grade // eg 1/1
Then do this when submitting the form.
Foreach question
if grade field ? then leave as ungraded
else store grade and mark question as graded.
Dave
From (eburling at class.com) Saturday, 1 July 2006, 01:37 AM:
This is easily fixed....My fix actually sets the feedback to teacher will grade essay instead of incorrect. But now after you leave a 0, it will remember that the quiz has been graded, and 0 will be the grade instead of the ungraded.
Go into mod/quiz/locallib.php and find the function... print_question_grading_details()
here you can change how esssays are graded.
echo '<div class=correctness>';
if ($grade->raw >= $grade->max) { print_string('correct', 'quiz'); } else if ($grade->raw > 0) { print_string('partiallycorrect', 'quiz'); } else if ($question->qtype==12&&$state->options->graded!=1)
{ printTeacher will grade essay.; }
else
{ print_string('incorrect', 'quiz'); }
echo '</div>';
If you dont' want the teacher will grade essay then use this code instead....
echo '<div class=correctness>';
if ($grade->raw >= $grade->max) { print_string('correct', 'quiz'); } } else if ($grade->raw > 0) { print_string('partiallycorrect', 'quiz'); } else if ($question->qtype==12&&$state->options->graded!=1)/
{ //this means that teacher hasn't graded yet print_string('incorrect', 'quiz'); } else { //this is what is printed when teacher has graded print_string('incorrect', 'quiz'); }
echo '</div>';