Moodle
  1. Moodle
  2. MDL-6834

Advanced Upload of files assignment type not correctly reported by My Moodle

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Won't Fix
    • Affects Version/s: 1.7.1, 1.8, 2.0.7, 2.1
    • Fix Version/s: 2.0.10
    • Component/s: Assignment (2.2), Course
    • Labels:
      None
    • Database:
      MySQL
    • Affected Branches:
      MOODLE_17_STABLE, MOODLE_18_STABLE, MOODLE_20_STABLE, MOODLE_21_STABLE
    • Fixed Branches:
      MOODLE_20_STABLE
    • Rank:
      498

      Description

      The my moodle page improperly reports the status of assignments that use the advanced upload of file type.

      Any assignment uploaded by the student is automatically reported as submitted (It doesn't matter if the student has clicked the send for marking or not). The assignment is reported as graded if the teacher makes any comments on the file (even if the assignment is still in draft.)

      There should be some distinction between files that have been submitted and files posted as a draft. Also there should be some distinction between files that have been graded and files that have been reset to draft status.

        Activity

        Hide
        Martin Dougiamas added a comment -

        Stephen, just to check, are you the very latest CVS version of Moodle 1.7?

        Show
        Martin Dougiamas added a comment - Stephen, just to check, are you the very latest CVS version of Moodle 1.7?
        Hide
        Petr Škoda added a comment -

        This is a known issue, the problem is that the submission status is a special hack in advanced upload assignment type. The rest of the code - assignment_print_overview() in this case - knows nothing about it. Correct solution is to add new table column to assignment and implement submission status in all types and fix assignment_print_overview() to display the status properly. We could also use some ugly hack to give the advanced upload some special treatment, I would not vote for this solution. I am afraid this will not be solved before 1.8

        In any case there should be more status codes - such as 'returned'.

        Show
        Petr Škoda added a comment - This is a known issue, the problem is that the submission status is a special hack in advanced upload assignment type. The rest of the code - assignment_print_overview() in this case - knows nothing about it. Correct solution is to add new table column to assignment and implement submission status in all types and fix assignment_print_overview() to display the status properly. We could also use some ugly hack to give the advanced upload some special treatment, I would not vote for this solution. I am afraid this will not be solved before 1.8 In any case there should be more status codes - such as 'returned'.
        Hide
        Stephen Bourget added a comment -

        I agree that the ideal solution would be to add the additional column for submission status in Moodle 1.8.

        For Moodle 1.7 I would like to suggest a partial solution. The function assignment_print_overview uses only two fields to determine the status of the assignment. It looks specifically for a value to be set in the teacher and timemarked fields in the table mdl_assignment_submissions. What if we were to add a third field to test against to deal with the "draft" status of advanced uploading of files.

        In mod/assignment/lib.php the code that echos the status of assignments to students reads: (Starts around line 2434)

        if ($submission = get_record_sql($sql)) {
        if ($submission->teacher == 0 && $submission->timemarked == 0)

        { $str .= $strsubmitted . ', ' . $strnotgradedyet; }

        else

        { $str .= $strsubmitted . ', ' . $strgraded; }

        } else

        { $str .= $strnotsubmittedyet . ' ' . assignment_display_lateness(time(), $assignment->timedue); }

        I propose it to be changed to:

        if ($submission = get_record_sql($sql)) {
        if ($submission->teacher == 0 && $submission->timemarked == 0)

        { $str .= $strsubmitted . ', ' . $strnotgradedyet; }

        else if ($submission->grade <= 0)

        { $str .= $strsubmitted . ', ' . $strreviewed; }

        else

        { $str .= $strsubmitted . ', ' . $strgraded; }

        } else

        { $str .= $strnotsubmittedyet . ' ' . assignment_display_lateness(time(), $assignment->timedue); }

        (this would also require the declaration of of the string:

        $strreviewed = get_string('reviewed','assignment');

        somewhere around line 2400 of mod/assignment/lib.php

        and the line:

        $string['reviewed'] = 'Reviewed';

        to be added into the language file)

        This would implement a third status for assignments called "reviewed" This status would only be shown when a teacher has viewed and commented on an assignment but has not set a grade. This would help eliminate the false reporting of "graded" when an assignment is reverted to draft status.

        Show
        Stephen Bourget added a comment - I agree that the ideal solution would be to add the additional column for submission status in Moodle 1.8. For Moodle 1.7 I would like to suggest a partial solution. The function assignment_print_overview uses only two fields to determine the status of the assignment. It looks specifically for a value to be set in the teacher and timemarked fields in the table mdl_assignment_submissions. What if we were to add a third field to test against to deal with the "draft" status of advanced uploading of files. In mod/assignment/lib.php the code that echos the status of assignments to students reads: (Starts around line 2434) if ($submission = get_record_sql($sql)) { if ($submission->teacher == 0 && $submission->timemarked == 0) { $str .= $strsubmitted . ', ' . $strnotgradedyet; } else { $str .= $strsubmitted . ', ' . $strgraded; } } else { $str .= $strnotsubmittedyet . ' ' . assignment_display_lateness(time(), $assignment->timedue); } I propose it to be changed to: if ($submission = get_record_sql($sql)) { if ($submission->teacher == 0 && $submission->timemarked == 0) { $str .= $strsubmitted . ', ' . $strnotgradedyet; } else if ($submission->grade <= 0) { $str .= $strsubmitted . ', ' . $strreviewed; } else { $str .= $strsubmitted . ', ' . $strgraded; } } else { $str .= $strnotsubmittedyet . ' ' . assignment_display_lateness(time(), $assignment->timedue); } (this would also require the declaration of of the string: $strreviewed = get_string('reviewed','assignment'); somewhere around line 2400 of mod/assignment/lib.php and the line: $string ['reviewed'] = 'Reviewed'; to be added into the language file) This would implement a third status for assignments called "reviewed" This status would only be shown when a teacher has viewed and commented on an assignment but has not set a grade. This would help eliminate the false reporting of "graded" when an assignment is reverted to draft status.
        Hide
        Petr Škoda added a comment -

        I like this workaround
        I will test/commit it tomorrow...

        Show
        Petr Škoda added a comment - I like this workaround I will test/commit it tomorrow...
        Hide
        Petr Škoda added a comment -

        Committed into cvs, thanks for the patch!

        Show
        Petr Škoda added a comment - Committed into cvs, thanks for the patch!
        Hide
        Martin Dougiamas added a comment -

        I'm assuming this is fixed and finished.

        Show
        Martin Dougiamas added a comment - I'm assuming this is fixed and finished.
        Hide
        Stephen Bourget added a comment -

        Unfortunately this is not fixed,

        Moodle 1.7 and the latest build of Moodle 1.8 beta+ both incorrectly report the Advanced assignment type. If a student has the assignment in "draft" mode, The MyMoodle page reports the assignment as Submitted and not as draft for that student.

        On the "teacher" page the assignment is included in the "submitted but not graded" list.

        The MyMoodle page is not aware at all of the "draft" status

        Show
        Stephen Bourget added a comment - Unfortunately this is not fixed, Moodle 1.7 and the latest build of Moodle 1.8 beta+ both incorrectly report the Advanced assignment type. If a student has the assignment in "draft" mode, The MyMoodle page reports the assignment as Submitted and not as draft for that student. On the "teacher" page the assignment is included in the "submitted but not graded" list. The MyMoodle page is not aware at all of the "draft" status
        Hide
        Martin Dougiamas added a comment -

        Petr can you take care of this?

        Show
        Martin Dougiamas added a comment - Petr can you take care of this?
        Hide
        Petr Škoda added a comment -

        To do it properly I would have to add one new db field to store the submission status and add some new methods to the parent class to enable it in all assignment plugins.

        Show
        Petr Škoda added a comment - To do it properly I would have to add one new db field to store the submission status and add some new methods to the parent class to enable it in all assignment plugins.
        Hide
        Martin Dougiamas added a comment -

        Since we can't add fields in 1.8 is there some interim solution for 1.8? +1 for a new field in 1.9 though.

        Show
        Martin Dougiamas added a comment - Since we can't add fields in 1.8 is there some interim solution for 1.8? +1 for a new field in 1.9 though.
        Hide
        Petr Škoda added a comment -

        Unfortunaly tehre is not enough time to fix all known issues in assignemnt before 1.9 - this will have to wait till 2.0, sorry

        Show
        Petr Škoda added a comment - Unfortunaly tehre is not enough time to fix all known issues in assignemnt before 1.9 - this will have to wait till 2.0, sorry
        Hide
        Heikki Wilenius added a comment -

        Our teachers have complained that the main missing functionality is that when teachers send an assignment back to students for revision, and students subsequently re-send it for grading, the submission does not show up on the My Moodle screen any more as an ungraded submission. When juggling multiple assignments on a high-level course, this would be a helpful addition.

        We're using 2.2.5 btw, but I guess the assignment in 2.3 still lacks this functionality?

        Show
        Heikki Wilenius added a comment - Our teachers have complained that the main missing functionality is that when teachers send an assignment back to students for revision, and students subsequently re-send it for grading, the submission does not show up on the My Moodle screen any more as an ungraded submission. When juggling multiple assignments on a high-level course, this would be a helpful addition. We're using 2.2.5 btw, but I guess the assignment in 2.3 still lacks this functionality?
        Hide
        Michael de Raadt added a comment -

        Thanks for reporting this issue.

        We have detected that this issue has been inactive for over a year. It was reported as affecting versions that are no longer supported.

        If you believe that this issue is still relevant to current versions (2.5 and beyond), please comment on the issue. Issues left inactive for a further month will be closed.

        Michael d.

        TW9vZGxlDQo=

        Show
        Michael de Raadt added a comment - Thanks for reporting this issue. We have detected that this issue has been inactive for over a year. It was reported as affecting versions that are no longer supported. If you believe that this issue is still relevant to current versions (2.5 and beyond), please comment on the issue. Issues left inactive for a further month will be closed. Michael d. TW9vZGxlDQo=
        Hide
        Michael de Raadt added a comment -

        I'm closing this issue as it has been inactive for over a year has been recorded as affecting versions that are no longer supported.

        This is being done as part of a bulk annual clean-up of issues.

        If you still believe this is an issue in supported versions, please create a new issue.

        Show
        Michael de Raadt added a comment - I'm closing this issue as it has been inactive for over a year has been recorded as affecting versions that are no longer supported. This is being done as part of a bulk annual clean-up of issues. If you still believe this is an issue in supported versions, please create a new issue.

          People

          • Votes:
            3 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: