Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-80187

Implement course section API methods to create and destroy delegated sections from a plugin

    XMLWordPrintable

Details

    • MOODLE_404_STABLE
    • MOODLE_404_STABLE
    • MDL-80187-main
    • Hide

      Covered by PHUnit tests.

      Exploratory test

      1. Disable "course recycle bin" (tool_recyclebin | coursebinenable). Otherwise, deleting activities will take long.
      2. Unzip subsection.zipinto your local "mod" folder.
      3. Login as admin and install the mod_subsection.
      4. Create a course in topics format and go to it in edit mode.
      5. Rename the last topic to "Last topic".
      6. Create a Subsection activity and return to the course page once done
      7. Check a new topic has been created below the "Last topic" one.
      8. Now, delete the subsection activity.
      9. Refresh the page. It is important to note that delegated sections won't be displayed as regular sections. However, this will be done in MDL-80190, and manual refresh is needed.
      10. Check the section below "Last topic" has been deleted.
      Show
      Covered by PHUnit tests. Exploratory test Disable "course recycle bin" (tool_recyclebin | coursebinenable). Otherwise, deleting activities will take long. Unzip subsection.zip into your local "mod" folder. Login as admin and install the mod_subsection . Create a course in topics format and go to it in edit mode. Rename the last topic to "Last topic". Create a Subsection activity and return to the course page once done Check a new topic has been created below the "Last topic" one. Now, delete the subsection activity. Refresh the page. It is important to note that delegated sections won't be displayed as regular sections. However, this will be done in MDL-80190 , and manual refresh is needed. Check the section below "Last topic" has been deleted.
    • HQ 2023 Sprint I4.3 Moppies

    Description

      This issue is part of the course hierarchy project.

      Issue Goals

      • Unless it is already created. This issue will implement the section format actions architecture proposed in MDL-80000. This will create the basic format actions structure for all the new course actions related to sections (this will be done in a separate first commit).
      • Add two new sectionactions methods to create and destroy delegated sections:
        • formatactions::section($courseid)->create_delegated($component, $delegateid): sectioninfo
        • formatactions::section($courseid)->delete_delegated($sectioninfo): bool
      • Add the creation and destruction of a delegated section into https://github.com/aanabit/mod_subsection (plugin stub created in MDL-80048)

      Future issues

      The final core mod_subsection module will use those methods to create and destroy their delegated sections.

      Method deprecation

      This issue will involve deprecating several methods. The details can be found in the Course hierarchy deprecation plan documented here:

      https://docs.google.com/document/d/1o-QGQBfHEkkz4-yKDYO-m3EfFKGFImsRcX2VITtkjck/edit#heading=h.w9jj1js0zuft

      Attachments

        Issue Links

          Activity

            People

              tusefomal Ferran Recio
              tusefomal Ferran Recio
              Laurent David Laurent David
              Amaia Anabitarte Amaia Anabitarte
              Kim Jared Lucas Kim Jared Lucas
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 1 week, 2 days, 7 hours, 4 minutes
                  1w 2d 7h 4m

                  Clockify

                    Error rendering 'clockify-timesheets-time-tracking-reports:timer-sidebar'. Please contact your Jira administrators.