Moodle
  1. Moodle
  2. MDL-35476

enhancement to assign::submissions_open

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 2.3, 2.3.3
    • Fix Version/s: 2.4.1
    • Component/s: Assignment
    • Labels:
    • Rank:
      44182

      Description

      The submissions_open method in the assign class is currently private. It also depends on the global $USER, with no way to invoke it for a user other than the current global $USER.

      We need to be able to check whether submissions are open for a particular user for a particular assignment as part of a plugin we are considering developing, so it would be nice if this function were public and general, rather than private and specific. We could then use this method, rather than rewriting the same functionality ourselves.

      Suggested implementation:

      1) Make submissions_open take an optional $userid parameter (default: 0).
      2) Default to using the current $USER if $userid is 0.
      3) Change submissions_open to be public rather than private.

      No changes to calling code are required, as the previous behaviour (no arguments, use $USER) remains supported.

        Activity

        Hide
        daniel hyde added a comment -

        This patch implements the "suggested implementation" and applies cleanly against MOODLE_23_STABLE

        Show
        daniel hyde added a comment - This patch implements the "suggested implementation" and applies cleanly against MOODLE_23_STABLE
        Hide
        Damyon Wiese added a comment -

        Thanks for reporting this issue,

        In 2.4 the userid parameter has already been added to that function, but it is still private. I updated the patch to apply cleanly to 2.4 master.

        Show
        Damyon Wiese added a comment - Thanks for reporting this issue, In 2.4 the userid parameter has already been added to that function, but it is still private. I updated the patch to apply cleanly to 2.4 master.
        Hide
        Dan Poltawski added a comment -

        Technically we do not allow improvements in the stable branches.

        But we are a little bit flexible around a new major release and this seems not too dangerous and a benefit to plugin authors. So i've integrated this to 24 and master. Thanks!

        Show
        Dan Poltawski added a comment - Technically we do not allow improvements in the stable branches. But we are a little bit flexible around a new major release and this seems not too dangerous and a benefit to plugin authors. So i've integrated this to 24 and master. Thanks!
        Hide
        Michael de Raadt added a comment - - edited

        Test result: Like taking candy from a baby.

        (Note: I did confirm that testing was not really required on this. There are unit tests incoming for this functionality and Damyon has tested this from code.)

        Show
        Michael de Raadt added a comment - - edited Test result: Like taking candy from a baby. (Note: I did confirm that testing was not really required on this. There are unit tests incoming for this functionality and Damyon has tested this from code.)
        Hide
        Dan Poltawski added a comment -

        Sorry, should've passed that one!

        Show
        Dan Poltawski added a comment - Sorry, should've passed that one!
        Hide
        Eloy Lafuente (stronk7) added a comment -

        Many thanks for your effort, the whole Moodle Community will be enjoying your great solutions starting now!

        Closing, ciao

        Show
        Eloy Lafuente (stronk7) added a comment - Many thanks for your effort, the whole Moodle Community will be enjoying your great solutions starting now! Closing, ciao

          People

          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: