
Activities: Subcourse
mod_subcourse
Maintained by
David Mudrák
Subcourse behaves as a graded activity. The grade for each student is automatically fetched from a final grade in another course. This allows course designers to organize the learning content into separate units.
1897 sites
951 downloads
106 fans
Current versions available: 10
Subcourse is an activity module that represents the final grade obtained in another course. This allows to create "meta-gradebook" in one course, where all final grades from other courses are aggregated.
- Grades are fetched automatically or can be fetched manually any time.
- The grade type and other grade item settings are copied from the original grade total item and can not be changed.
- Subcourse can be automatically marked as a completed when the referenced course is completed.
- If the final grade in the referenced course is hidden, the associated subcourse activity grade is hidden, too.
This allows to apply the concept of grades aggregation to a next level and aggregate grades across courses.
Contributors
David Mudrák (Lead maintainer)
Matt Gibson
Vadim Dvorovenko
Arnaud Trouvé
Please login to view contributors details and/or to contact them
Hello Phil. Thanks for the good question! The Subcourse module does one thing and tries to do it well. The use case you describe seems like something that e.g. https://moodle.org/plugins/enrol_coursecompleted could provide.
Hello Stephanie. Yes. The relevant part of the form is actually shown on one of the screenshots here. The primary use case is that the Subcourse activity becomes completed once the associated course is completed. So once the relevant course is completed, it can unlock other modules in the "parent" course, for example.
When i try to add a subcourse activity in a course I obtain an empty page. In debugging mode, I obtain :
Warning: require_once(D:\Bitnami\moodle-latest-310\moodle/lib/coursecatlib.php): failed to open stream: No such file or directory in D:\Bitnami\moodle-latest-310\moodle\mod\subcourse\mod_form.php on line 30
Fatal error: require_once(): Failed opening required 'D:\Bitnami\moodle-latest-310\moodle/lib/coursecatlib.php' (include_path='D:\Bitnami\moodle-latest-310\moodle/lib/pear;.;C:\php\pear') in D:\Bitnami\moodle-latest-310\moodle\mod\subcourse\mod_form.php on line 30
D:\Bitnami\moodle-latest-310\moodle is the root of my Moodle installation.
Did i forgot to install another required plugin ?
finally i found a solution. This problem is related to the deprecation of the coursecatlib.php file. One more problem raises after : coursecat is deprecated also.
The solution I applied consists in editing file /mod/subcourse/mod_form.php :
comment out or suppress line 30
replace coursecat by core_course_category
This patch seems to be sufficient. Every thing seems to work for me now.
@Laurent - what version of the module do you have installed? That has been actually addressed two years ago in https://github.com/mudrd8mz/moodle-mod_subcourse/commit/51bdd843b266a1be28e855fedac448e8e993ddae
Oops.... I see in my instance subcourse version 5.0.1. I uninstalled the plugin and reinstalled it via the "Install now" choosing 9.0.1 in Moodle plugins List. It's 5.0.1 that get installed. If i choose to install it via a download of the zip file, i get 9.0.1.
An issue on the Install Now process ?
I didn't have this problem with other plugins i installed this way.
It could be. When you press "Install now" you should be taken to "My sites" page. What is the Moodle version specified there for your site?
Actually, this illustrates a likely bug in the Moodle / Plugins directory integration. The version number can get easily outdated, and it should not lead to cases like this. May I ask you to report it as a new issue at tracker.moodle.org, project MDLSITE, component "moodle.org/plugins" please. Thanks!
No worries, I was able to move it. Thank you for your report.
I'm not sure when did it happen but previously (Moodle 3.8, not sure about plugin version but the latest for Moodle 3.8) plugin allowed to set completion status for subcourse activity as "Require course completed - Student must complete the referenced course to complete this activity." without any "Expected completed on" date set. And it worked great for us as we do not need the date. Just the subcourse to be completed (according settings for course completion in appropriate subcourse).
Now (Moodle 3.10, plugin 9.0.1) This setting is blocked/disabled until "Expect completed on" is enabled and set.
Just wondering why is has been set like this and can it be enabled again without enabling completion date? We can't enable this date as students are coming and going randomly. We can't set one date for all of them.
Thanks!
@Almants - sorry to hear about your troubles. However, I am not able to reproduce that problem. It still works as expected for me and I am able to enable "Student must complete the referenced course to complete this activity" without "Expected completed on". Maybe there are some other additional plugins installed on your site that are affecting this behaviour? Just guessing. I don't know why it should behave like that.