Example #1
0
 /**
  * Unregister courses
  * @return array 1 if unregistration was successfull
  */
 public static function unregister_courses($courseids)
 {
     global $DB;
     // Ensure the current user is allowed to run this function
     $context = context_system::instance();
     self::validate_context($context);
     require_capability('local/hub:unregistercourse', $context);
     $params = self::validate_parameters(self::unregister_courses_parameters(), array('courseids' => $courseids));
     $transaction = $DB->start_delegated_transaction();
     //retieve site url
     $token = optional_param('wstoken', '', PARAM_ALPHANUM);
     $hub = new local_hub();
     $siteurl = $hub->get_communication(WSSERVER, REGISTEREDSITE, null, $token)->remoteurl;
     foreach ($params['courseids'] as $courseid) {
         $hub->unregister_course($courseid, $siteurl);
         //'true' indicates registration update mode
     }
     $transaction->allow_commit();
     return true;
 }