throw new moodle_exception('cannotregisternotavailablesite', 'local_hub', $url, $url); } //check if the registration password is correct $hubpassword = get_config('local_hub', 'password'); if (!empty($hubpassword) and $hubpassword != $password) { throw new moodle_exception('wronghubpassword', 'local_hub', $url . '/admin/registration/hubselector.php'); } //check if the site url is already registered $sitewithsameurl = $hub->get_site_by_url($url); if (!empty($sitewithsameurl)) { $urlexists = true; } else { $urlexists = false; } //check if the secret already exists $sitewithsamesecret = $hub->get_site_by_secret(md5($token)); if (!empty($sitewithsamesecret)) { $secretexists = true; } else { $secretexists = false; } if ($secretexists and !$urlexists) { //the site has been moved or the site has been copied $action = optional_param('action', '', PARAM_ALPHA); switch ($action) { case 'moved': //update the registration $newsitevalues = (object) $sitevalues; $newsitevalues->id = $sitewithsamesecret->id; unset($newsitevalues->password); $newtoken = $hub->register_site($newsitevalues, $sitewithsamesecret->url);
} else { $hackedsite = $hub->get_site($stolen); echo $OUTPUT->header(); echo $OUTPUT->heading(get_string('stolensecret', 'local_hub')); echo $renderer->stolensecret_confirmation($hackedsite); echo $OUTPUT->footer(); die; } } $mform = new hub_search_stolen_secret(); if ($data = $mform->get_data()) { $sites = array(); //search site if (!empty($data->secret)) { //by token $site = $hub->get_site_by_secret($data->secret); if (!empty($site)) { $search = $data->secret; $sites[] = $site; } } else { if (!empty($data->sitename)) { //by site name $sites = $hub->get_sites(array('search' => $data->sitename)); $search = $data->sitename; } } } /// OUTPUT echo $OUTPUT->header(); echo $OUTPUT->heading(get_string('stolensecret', 'local_hub'));