// up or down if page is to be moved up or down if (!($source = get_record('cmsnavi_data', 'pageid', $sourceid))) { error('Page with id ' . $sourceid . ' does not exist'); } if (!($navi = get_record('cmsnavi', 'id', $source->naviid))) { error('Source has invalid menu'); } if (!($course = get_record('course', 'id', $navi->course))) { error('Source has invalid course'); } require_login($course->id); $context = get_context_instance(CONTEXT_COURSE, $course->id); require_capability('moodle/cms:movepage', $context); if ($direction) { // We want to reorder cms_reorder($source->id, $source->parentid, $source->naviid, $direction); } $siblings = get_records_select('cmsnavi_data', "parentid = '{$source->parentid}' AND naviid = '{$source->naviid}'", 'sortorder ASC'); print_header(); $first = true; echo '<ol>'; foreach ($siblings as $sibling) { if ($first) { $uplink = ' '; $first = false; } else { $uplink = '<a href="reorder.php?source=' . $sibling->pageid . '&direction=up">' . '<img src="../pix/t/up.gif" alt="' . get_string('up') . '" /></a> '; } echo '<li>' . $uplink . $sibling->title . '</li>'; } echo '</ol>';
if (!empty($_GET['edit']) && has_capability('format/cms:editpage', $context)) { $id = required_param('id', PARAM_INT); redirect("{$CFG->wwwroot}/cms/pageupdate.php?id={$id}&sesskey={$USER->sesskey}&course={$course->id}"); } else { if (!empty($_GET['purge']) && has_capability('format/cms:deletepage', $context)) { $id = required_param('id', PARAM_INT); redirect("{$CFG->wwwroot}/cms/pagedelete.php?id={$id}&sesskey={$USER->sesskey}&course={$course->id}"); } else { // Sort. $sort = optional_param('sort', '', PARAM_ALPHA); $publish = optional_param('publish', '', PARAM_ALPHA); if ($sort && ($sort == 'up' or $sort == 'down') && has_capability('moodle/cms:movepage', $context)) { $pageid = required_param('pid', PARAM_INT); $parentid = required_param('mid', PARAM_INT); $direction = required_param('sort', PARAM_ALPHA); if (!cms_reorder($pageid, $parentid, $menuid, $direction)) { $strerr = "Couldn't reorder pages!"; } } if ($publish && ($publish == 'yes' or $publish == 'no') && has_capability('format/cms:publishpage', $context)) { $pageid = required_param('pid', PARAM_INT); $publish = $publish != 'no' ? '1' : '0'; set_field("cmspages", "publish", $publish, "id", $pageid); } if (isset($_GET['move']) && has_capability('moodle/cms:movepage', $context)) { $pageid = required_param('pid', PARAM_INT); $move = optional_param('move', '0', PARAM_INT); set_field("cmsnavi_data", "parentid", $move, "pageid", $pageid); } /// Check if there is any menus builded. if (!get_record("cmsnavi", "id", $menuid)) {