} } if ($node = $PAGE->settingsnav->get('root')) { $node->forceopen = false; } // Toggle the editing state and switches if ($PAGE->user_allowed_editing()) { if ($edit !== null) { // Editing state was specified $USER->editing = $edit; // Change editing state if (!$currentpage->userid && $edit) { // If we are viewing a system page as ordinary user, and the user turns // editing on, copy the system pages as new user pages, and get the // new page record if (!($currentpage = my_copy_page($USER->id, MY_PAGE_PUBLIC, 'user-profile'))) { print_error('mymoodlesetup'); } $PAGE->set_context($usercontext); $PAGE->set_subpage($currentpage->id); } } else { // Editing state is in session if ($currentpage->userid) { // It's a page we can edit, so load from session if (!empty($USER->editing)) { $edit = 1; } else { $edit = 0; } } else {
} redirect(new moodle_url('/user/profile.php', array('id' => $userid))); } } else if ($edit !== null) { // Editing state was specified. $USER->editing = $edit; // Change editing state. } else { // Editing state is in session. if ($currentpage->userid) { // It's a page we can edit, so load from session. if (!empty($USER->editing)) { $edit = 1; } else { $edit = 0; } } else { // For the page to display properly with the user context header the page blocks need to // be copied over to the user context. if (!$currentpage = my_copy_page($userid, MY_PAGE_PUBLIC, 'user-profile')) { print_error('mymoodlesetup'); } $PAGE->set_context($usercontext); $PAGE->set_subpage($currentpage->id); // It's a system page and they are not allowed to edit system pages. $USER->editing = $edit = 0; // Disable editing completely, just to be safe. } } // Add button for editing page. $params = array('edit' => !$edit, 'id' => $userid); $resetbutton = ''; $resetstring = get_string('resetpage', 'my'); $reseturl = new moodle_url("$CFG->wwwroot/user/profile.php", array('edit' => 1, 'reset' => 1, 'id' => $userid));
if ($PAGE->user_allowed_editing()) { if ($reset !== null) { if (!is_null($userid)) { require_sesskey(); if(!$currentpage = my_reset_page($userid, MY_PAGE_PRIVATE)){ print_error('reseterror', 'my'); } redirect(new moodle_url('/my')); } } else if ($edit !== null) { // Editing state was specified $USER->editing = $edit; // Change editing state if (!$currentpage->userid && $edit) { // If we are viewing a system page as ordinary user, and the user turns // editing on, copy the system pages as new user pages, and get the // new page record if (!$currentpage = my_copy_page($USER->id, MY_PAGE_PRIVATE)) { print_error('mymoodlesetup'); } $context = context_user::instance($USER->id); $PAGE->set_context($context); $PAGE->set_subpage($currentpage->id); } } else { // Editing state is in session if ($currentpage->userid) { // It's a page we can edit, so load from session if (!empty($USER->editing)) { $edit = 1; } else { $edit = 0; } } else { // It's a system page and they are not allowed to edit system pages $USER->editing = $edit = 0; // Disable editing completely, just to be safe