@@ -150,6 +150,13 @@ public static function undo_crosssplit($crosssplitid) {
150150 // Get the Moodle course defaults.
151151 $ coursedefaults = get_config ('moodlecourse ' );
152152
153+ // Apply defaults for any fields not already set.
154+ foreach ($ coursedefaults as $ name => $ value ) {
155+ if (!property_exists ($ coursedata , $ name )) {
156+ $ coursedata ->$ name = $ value ;
157+ }
158+ }
159+
153160 // Start transaction.
154161 $ transaction = $ DB ->start_delegated_transaction ();
155162
@@ -254,7 +261,6 @@ public static function undo_crosssplit($crosssplitid) {
254261 $ coursedata ->category = $ ccat ->id ;
255262 $ coursedata ->visible = 1 ;
256263 $ coursedata ->enablecompletion = $ coursedefaults ->enablecompletion ;
257- $ coursedata ->showcompletionconditions = $ coursedefaults ->showcompletionconditions ;
258264 $ coursedata ->groupmode = $ coursedefaults ->groupmode ;
259265 $ coursedata ->groupmodeforce = $ coursedefaults ->groupmodeforce ;
260266
@@ -561,6 +567,13 @@ public static function create_crosssplit_shell($userid, $periodid, $sectionids,
561567 // Get the Moodle course defaults.
562568 $ coursedefaults = get_config ('moodlecourse ' );
563569
570+ // Apply defaults for any fields not already set.
571+ foreach ($ coursedefaults as $ name => $ value ) {
572+ if (!property_exists ($ course , $ name )) {
573+ $ course ->$ name = $ value ;
574+ }
575+ }
576+
564577 // Get period info.
565578 $ period = self ::get_period_from_periodid ($ periodid );
566579
@@ -760,7 +773,6 @@ public static function create_crosssplit_shell($userid, $periodid, $sectionids,
760773
761774 // Set the completion options.
762775 $ course ->enablecompletion = $ coursedefaults ->enablecompletion ;
763- $ course ->showcompletionconditions = $ coursedefaults ->showcompletionconditions ;
764776
765777 $ excourseidn = $ DB ->get_record ('course ' , ['idnumber ' => $ idnumber ]);
766778 $ excoursesn = $ DB ->get_record ('course ' , ['shortname ' => $ shortname ]);
@@ -1500,6 +1512,13 @@ public static function create_blueprint_shell($userid, $cdid) {
15001512 // Get the Moodle course defaults.
15011513 $ coursedefaults = get_config ('moodlecourse ' );
15021514
1515+ // Apply defaults for any fields not already set.
1516+ foreach ($ coursedefaults as $ name => $ value ) {
1517+ if (!property_exists ($ course , $ name )) {
1518+ $ course ->$ name = $ value ;
1519+ }
1520+ }
1521+
15031522 // Get user's universal_id.
15041523 $ user = $ DB ->get_record ('user ' , ['id ' => $ userid ], '* ' );
15051524
@@ -1576,7 +1595,6 @@ public static function create_blueprint_shell($userid, $cdid) {
15761595
15771596 // Set the completion options.
15781597 $ course ->enablecompletion = $ coursedefaults ->enablecompletion ;
1579- $ course ->showcompletionconditions = $ coursedefaults ->showcompletionconditions ;
15801598
15811599 // Create course in Moodle.
15821600 $ course = create_course ($ course );
0 commit comments