From 6f83b034e099532913db7820fca304fc3a626e55 Mon Sep 17 00:00:00 2001 From: thepurpleblob <thepurpleblob> Date: Wed, 25 Jul 2007 14:02:27 +0000 Subject: [PATCH] MDL-10604: Add ability to add sub categories directly from category screens. Merged from STABLE_18 --- course/category.php | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/course/category.php b/course/category.php index 45da9e9647..07a0d3d9ba 100644 --- a/course/category.php +++ b/course/category.php @@ -18,6 +18,7 @@ $rename = optional_param('rename', '', PARAM_NOTAGS); $resort = optional_param('resort', 0, PARAM_BOOL); $categorytheme= optional_param('categorytheme', false, PARAM_CLEAN); + $addsubcategory=optional_param('addsubcategory', '', PARAM_NOTAGS); if (!$site = get_site()) { error("Site isn't defined!"); @@ -51,6 +52,18 @@ } + if (has_capability('moodle/category:create', $context)) { + if (!empty($addsubcategory) and confirm_sesskey()) { + $subcategory = new stdClass; + $subcategory->name = $addsubcategory; + $subcategory->sortorder = 999; + $subcategory->parent = $id; + if (!insert_record('course_categories', $subcategory )) { + notify( "Could not insert the new subcategory '$addsubcategory' " ); + } + } + } + if (has_capability('moodle/category:update', $context)) { /// Rename the category if requested if (!empty($rename) and confirm_sesskey()) { @@ -250,6 +263,21 @@ } } +/// print option to add a subcategory + if (has_capability('moodle/category:create', $context)) { + $straddsubcategory = get_string('addsubcategory'); + echo '<div class="addcategory">'; + echo '<form id="addform" action="category.php" method="post">'; + echo '<fieldset class="invisiblefieldset">'; + echo '<input type="text" size="30" alt="'.$straddsubcategory.'" name="addsubcategory" />'; + echo '<input type="submit" value="'.$straddsubcategory.'" />'; + echo '<input type="hidden" name="sesskey" value="'.sesskey().'" />'; + echo '<input type="hidden" name="id" value="'.$id.'" />'; + // echo '<input type="hidden" name="categoryedit" value="'.$categoryedit.'" />'; + echo '</fieldset>'; + echo '</form>'; + echo '</div>'; + } /// Print out all the courses unset($course); // To avoid unwanted language effects later -- 2.39.5