learnweb / moodle-tool_lifecycle

:recycle: Extensible Moodle plugin for managing course life cycles, e.g., deprovisioning
GNU General Public License v3.0
21 stars 32 forks source link

Feature: new tiggers and steps #181

Open noisyjerm opened 1 year ago

noisyjerm commented 1 year ago

I am looking at extending your plugin to meet our end of semester workflow whereby we retain the course and put it into a kind of read-only state. The actions we will take are:

By adding a few sub-plugins, I believe I can achieve this workflow. The sub-plugins I am considering developing are: Triggers

Steps

I’d appreciate any thoughts and guidance from you before I start development so I can make sure it is useful for others also. Please let me know if you think these triggers and steps will be useful or if you suggest any changes.

Many thanks

Jeremy

NinaHerrmann commented 1 year ago

Hey @noisyjerm :)

Triggers:

How can I help you discussing the plugins, is there anything else I can comment on? Cheers, Nina

noisyjerm commented 1 year ago

Hi Nina

Thanks for your reply. Your plugin is pretty easy to work with and I have made a start on 3 plugins

I used a translator for the German language pack so apologies if the language strings are a bit strange. Also, I'm not so experienced in writing the tests but I'll give that a try this week.

I am not sure if I will need to develop the custom field trigger and steps. The email step gives me most of the functionality I need for managing the flow. I just need to decide on a way to limit the number of courses to be processed. This could be done by custom fields, or a new "start date is after a given date" tigger, or just re-organising our categories and using the existing categories filter.

As for the changing student roles, here is a use case:

So to do this we do not delete the course but "lock" it. We can create a custom role similar to guest role and give the students this new role. They can now view everything in the course but not post or submit.

Thanks

Jeremy

NinaHerrmann commented 1 year ago

Hey Jeremy,

You are working fast! I can look over the German translation if you want me to :slightly_smiling_face:

Ah so you have a special role which prohibits editing activities :bulb: That is indeed a good use case. I guess it is not to complicated as you would just need to get all enrollments of the course and change all student enrollments to role x. However, I am not sure about the performance of changing enrollments so you might want to batch process them.

I hope this help, best regards, Nina