format = "social"; // override } /// If data submitted, then process and store. if ($form = data_submitted()) { if (!empty($USER->id)) { // Additional identity check if (!confirm_sesskey()) { error(get_string('confirmsesskeybad', 'error')); } } validate_form($form, $err); if (count($err) == 0) { set_config("frontpage", $form->frontpage); if ($form->frontpage == FRONTPAGETOPICONLY) { $form->numsections = 1; // Force the topic display for this format } $form->timemodified = time(); if ($form->id) { if (update_record("course", $form)) { redirect("$CFG->wwwroot/", get_string("changessaved")); } else { error("Serious Error! Could not update the site record! (id = $form->id)"); } } else { // We are about to create the site "course" require_once($CFG->dirroot.'/lib/blocklib.php'); if ($newid = insert_record('course', $form)) { // Site created, add blocks for it $page = page_create_object(PAGE_COURSE_VIEW, $newid); blocks_repopulate_page($page); // Return value not checked because you can always edit later $cat->name = get_string('miscellaneous'); if (insert_record('course_categories', $cat)) { redirect("$CFG->wwwroot/$CFG->admin/index.php", get_string("changessaved"), 1); } else { error("Serious Error! Could not set up a default course category!"); } } else { error("Serious Error! Could not set up the site!"); } } die; } else { foreach ($err as $key => $value) { $focus = "form.$key"; } } } /// Otherwise fill and print the form. if ($site and empty($form)) { $form = $site; $course = $site; $firsttime = false; } else { $form->fullname = ""; $form->shortname = ""; $form->summary = ""; $form->newsitems = 3; $form->numsections = 0; $form->id = ""; $form->category = 0; $form->format = 'site'; // Only for this course $form->teacher = get_string("defaultcourseteacher"); $form->teachers = get_string("defaultcourseteachers"); $form->student = get_string("defaultcoursestudent"); $form->students = get_string("defaultcoursestudents"); $firsttime = true; } if (isset($CFG->frontpage)) { $form->frontpage = $CFG->frontpage; } else { $form->frontpage = FRONTPAGECOURSELIST; // Show course list by default set_config("frontpage", $form->frontpage); } if (empty($focus)) { $focus = "form.fullname"; } $stradmin = get_string("administration"); $strconfiguration = get_string("configuration"); $strsitesettings = get_string("sitesettings"); if ($firsttime) { print_header(); print_heading($strsitesettings); print_simple_box(get_string("configintrosite", 'admin'), "center", "50%"); echo "
"; } else { print_header("$site->shortname: $strsitesettings", "$site->fullname", "$stradmin -> ". "$strconfiguration -> $strsitesettings", "$focus"); print_heading($strsitesettings); } if (empty($USER->id)) { // New undefined admin user $USER->htmleditor = true; $sesskey = ''; } else { $sesskey = $USER->sesskey; } $usehtmleditor = can_use_html_editor(); $defaultformat = FORMAT_HTML; print_simple_box_start("center", ""); include("site.html"); print_simple_box_end(); if ($usehtmleditor) { use_html_editor(); } if (!$firsttime) { print_footer(); } exit; /// Functions ///////////////////////////////////////////////////////////////// function validate_form(&$form, &$err) { if (empty($form->fullname)) $err["fullname"] = get_string("missingsitename"); if (empty($form->shortname)) $err["shortname"] = get_string("missingshortsitename"); return; } ?>