diff --git a/course/format/classes/output/local/content/section/controlmenu.php b/course/format/classes/output/local/content/section/controlmenu.php index 8b0d98fc711..9cab6c5c37a 100644 --- a/course/format/classes/output/local/content/section/controlmenu.php +++ b/course/format/classes/output/local/content/section/controlmenu.php @@ -193,19 +193,21 @@ class controlmenu implements named_templatable, renderable { 'attr' => ['class' => 'icon edit'], ]; - $duplicatesectionurl = clone($baseurl); - $duplicatesectionurl->param('section', $section->section); - $duplicatesectionurl->param('duplicatesection', $section->section); - if (!is_null($sectionreturn)) { - $duplicatesectionurl->param('sr', $sectionreturn); + if ($section->section) { + $duplicatesectionurl = clone($baseurl); + $duplicatesectionurl->param('section', $section->section); + $duplicatesectionurl->param('duplicatesection', $section->section); + if (!is_null($sectionreturn)) { + $duplicatesectionurl->param('sr', $sectionreturn); + } + $controls['duplicate'] = [ + 'url' => $duplicatesectionurl, + 'icon' => 't/copy', + 'name' => get_string('duplicate'), + 'pixattr' => ['class' => ''], + 'attr' => ['class' => 'icon duplicate'], + ]; } - $controls['duplicate'] = [ - 'url' => $duplicatesectionurl, - 'icon' => 't/copy', - 'name' => get_string('duplicate'), - 'pixattr' => ['class' => ''], - 'attr' => ['class' => 'icon duplicate'], - ]; } if ($section->section) {