public static function delete_modules($cmids) {
        global $CFG, $DB;

        // Require course file containing the course delete module function.
        require_once($CFG->dirroot . "/course/lib.php");

        // Clean the parameters.
        $params = self::validate_parameters(self::delete_modules_parameters(), array('cmids' => $cmids));

        // Keep track of the course ids we have performed a capability check on to avoid repeating.
        $arrcourseschecked = array();

        foreach ($params['cmids'] as $cmid) {
            // Get the course module.
            $cm = $DB->get_record('course_modules', array('id' => $cmid), '*', MUST_EXIST);

            // Check if we have not yet confirmed they have permission in this course.
            if (!in_array($cm->course, $arrcourseschecked)) {
                // Ensure the current user has required permission in this course.
                $context = context_course::instance($cm->course);
                self::validate_context($context);
                // Add to the array.
                $arrcourseschecked[] = $cm->course;
            }

            // Ensure they can delete this module.
            $modcontext = context_module::instance($cm->id);
            require_capability('moodle/course:manageactivities', $modcontext);

            // Delete the module.
            course_delete_module($cm->id);
        }
    }
public static function delete_modules($cmids) {
        global $CFG, $DB;

        // Require course file containing the course delete module function.
        require_once($CFG->dirroot . "/course/lib.php");

        // Clean the parameters.
        $params = self::validate_parameters(self::delete_modules_parameters(), array('cmids' => $cmids));

        // Keep track of the course ids we have performed a capability check on to avoid repeating.
        $arrcourseschecked = array();

        foreach ($params['cmids'] as $cmid) {
            // Get the course module.
            $cm = $DB->get_record('course_modules', array('id' => $cmid), '*', MUST_EXIST);

            // Check if we have not yet confirmed they have permission in this course.
            if (!in_array($cm->course, $arrcourseschecked)) {
                // Ensure the current user has required permission in this course.
                $context = context_course::instance($cm->course);
                self::validate_context($context);
                // Add to the array.
                $arrcourseschecked[] = $cm->course;
            }

            // Ensure they can delete this module.
            $modcontext = context_module::instance($cm->id);
            require_capability('moodle/course:manageactivities', $modcontext);

            // Delete the module.
            course_delete_module($cm->id);
        }
    }
public static function delete_modules ( $ cmids ) { global $ CFG , $ DB ; // Require course file containing the course delete module function. require_once ( $ CFG -> dirroot . "/course/lib.php" ) ; // Clean the parameters. $ params = self :: validate_parameters ( self :: delete_modules_parameters ( ) , array ( 'cmids' => $ cmids ) ) ; // Keep track of the course ids we have performed a capability check on to avoid repeating. $ arrcourseschecked = array ( ) ; foreach ( $ params [ 'cmids' ] as $ cmid ) { // Get the course module. $ cm = $ DB -> get_record ( 'course_modules' , array ( 'id' => $ cmid ) , '*' , MUST_EXIST ) ; // Check if we have not yet confirmed they have permission in this course. if ( ! in_array ( $ cm -> course , $ arrcourseschecked ) ) { // Ensure the current user has required permission in this course. $ context = context_course :: instance ( $ cm -> course ) ; self :: validate_context ( $ context ) ; // Add to the array. $ arrcourseschecked [ ] = $ cm -> course ; } // Ensure they can delete this module. $ modcontext = context_module :: instance ( $ cm -> id ) ; require_capability ( 'moodle/course:manageactivities' , $ modcontext ) ; // Delete the module. course_delete_module ( $ cm -> id ) ; } }
Deletes a list of provided module instances.

@param array $cmids the course module ids
@since Moodle 2.5
Deletes a list of provided module instances .