diff --git a/activeworkflows.php b/activeworkflows.php index 75d91b68c5b0976f4169500afa66f88d561fb4ad..98cd86127b110a15aec73261275454b2209f02f3 100644 --- a/activeworkflows.php +++ b/activeworkflows.php @@ -48,6 +48,7 @@ $PAGE->set_heading(get_string('active_workflows_header', 'tool_lifecycle')); $renderer = $PAGE->get_renderer('tool_lifecycle'); echo $renderer->header(' '); +echo $renderer->render_extra_navigation(); echo $renderer->render_from_template('tool_lifecycle/search_input', [ 'action' => (new moodle_url(urls::ACTIVE_PROCESSES))->out(false), diff --git a/coursebackups.php b/coursebackups.php index 711b524d7bbcb759ac3338ce582d875cff5282f5..1c45bb0ad6b8977cc45ad57ab59639e9d4fe53ea 100644 --- a/coursebackups.php +++ b/coursebackups.php @@ -56,7 +56,7 @@ $PAGE->set_heading(get_string('course_backups_list_header', 'tool_lifecycle')); $renderer = $PAGE->get_renderer('tool_lifecycle'); echo $renderer->header(); - +echo $renderer->render_extra_navigation(); echo '<br>'; $mform->display(); diff --git a/delayedcourses.php b/delayedcourses.php index 923cd36b9ce23a84bbeb02687680f2d537cbadcb..41653a85258e127189f81bad8255d1cc60c8d0e0 100644 --- a/delayedcourses.php +++ b/delayedcourses.php @@ -143,6 +143,9 @@ $table = new delayed_courses_table($data); $table->define_baseurl($PAGE->url); echo $OUTPUT->header(); +$renderer = $PAGE->get_renderer('tool_lifecycle'); +echo $renderer->render_extra_navigation(); + $mform->display(); $table->out(100, false); diff --git a/errors.php b/errors.php index 40c80bccf471728ec59bca390772f38eb9a26469..1ff38a00e770fb569c75733edec3a6532d45fb49 100644 --- a/errors.php +++ b/errors.php @@ -65,6 +65,8 @@ $table->define_baseurl($PAGE->url); $PAGE->requires->js_call_amd('tool_lifecycle/tablebulkactions', 'init'); echo $OUTPUT->header(); +$renderer = $PAGE->get_renderer('tool_lifecycle'); +echo $renderer->render_extra_navigation(); $table->out(100, false); echo $OUTPUT->footer(); diff --git a/renderer.php b/renderer.php index f17197d3a4fc6dbc8f2aca62227c8ed0da8b9124..0d67f4b7998e21d2c0f31f49f81f4174a7454d6b 100644 --- a/renderer.php +++ b/renderer.php @@ -64,5 +64,33 @@ class tool_lifecycle_renderer extends plugin_renderer_base { echo $form->render(); $this->footer(); } + public function render_extra_navigation () { + $data2 = new stdClass(); + $children = array(); + $urls = array('/admin/settings.php?section=tool_lifecycle', '/admin/tool/lifecycle/workflowdrafts.php', + '/admin/tool/lifecycle/activeworkflows.php', '/admin/tool/lifecycle/delayedcourses.php', + '/admin/tool/lifecycle/step/adminapprove/index.php', '/admin/tool/lifecycle/errors.php', + '/admin/tool/lifecycle/coursebackups.php'); + $names = array(get_string('edit') . ' ' . get_string('general_settings_header', 'tool_lifecycle'), + get_string('edit') . ' ' . get_string('workflow_drafts_header', 'tool_lifecycle'), + get_string('edit') . ' ' . get_string('active_workflows_header', 'tool_lifecycle'), + get_string('view') . ' ' . get_string('delayed_courses_header', 'tool_lifecycle'), + get_string('manage-adminapprove', 'lifecyclestep_adminapprove'), + get_string('process_errors_header', 'tool_lifecycle'), + get_string('course_backups_list_header', 'tool_lifecycle')); + + for ($i = 0; $i < count($names); $i++) { + $navitem = new stdClass(); + $navitem->active = true; + $navitem->showchildreninsubmenu = false; + $navitem->url = new moodle_url($urls[$i]); + $navitem->text = $names[$i]; + array_push($children, $navitem); + } + $data2->children = $children; + $moremenu = new \core\navigation\output\more_menu($data2, 'nav', true); + $secondarynavigation = $moremenu->export_for_template($this->output); + return $this->output->render_from_template('tool_lifecycle/navigation_helper', $secondarynavigation); + } } diff --git a/styles.css b/styles.css index 8ecb11978bf316c3a004557c8ffcd4a78b027b64..7ab7e12435bcd20c373f5d3127e294d46a07653d 100644 --- a/styles.css +++ b/styles.css @@ -13,7 +13,9 @@ body.path-admin-tool-lifecycle .wf-secondary-info, .lifecycle-highlighted { background-color: rgba(0, 178, 255, 0.15); } - +nav.moremenu { + opacity: 1; +} span.tool_lifecycle-hint { text-decoration: underline dashed #444; } diff --git a/templates/workflowoverview.mustache b/templates/workflowoverview.mustache index a3d6b7e2413295d81532fa2bf1598237ea8f6276..6bc654a4031e81239eb2d985a614b024923e13ff 100644 --- a/templates/workflowoverview.mustache +++ b/templates/workflowoverview.mustache @@ -71,6 +71,11 @@ } }} <div class="d-flex" id="lifecycle-workflow-details"> + <div class="navigation" style="width: 100%"> + {{#navitems}} + <a href="{{navlink}}"> {{navname}}</a> - + {{/navitems}} + </div> <div class="wf-wrapper"> <div class="bg-light d-inline-block p-3 position-relative" style="max-width: 800px;"> <a class="edit-pen" href="{{{editsettingslink}}}">{{#pix}} i/edit, core, {{/pix}}</a> diff --git a/workflowdrafts.php b/workflowdrafts.php index d86b6a362d22075faed66d6c2d03295209019c30..64f057849bcda5ab2157e19d91f9e7b3f953261d 100644 --- a/workflowdrafts.php +++ b/workflowdrafts.php @@ -48,6 +48,8 @@ $PAGE->set_heading(get_string('workflow_drafts_header', 'tool_lifecycle')); $renderer = $PAGE->get_renderer('tool_lifecycle'); echo $renderer->header(); +echo $renderer->render_extra_navigation(); + echo html_writer::link(new \moodle_url(urls::EDIT_WORKFLOW), get_string('add_workflow', 'tool_lifecycle'), ['class' => 'btn btn-primary mx-1']); @@ -63,9 +65,6 @@ echo $OUTPUT->box_start("lifecycle-enable-overflow lifecycle-table"); $table->out(10, false); echo $OUTPUT->box_end(); -echo \html_writer::link(new \moodle_url(urls::ACTIVE_WORKFLOWS), - get_string('active_workflows_list', 'tool_lifecycle')); -echo '<br>'; echo \html_writer::link(new \moodle_url(urls::DEACTIVATED_WORKFLOWS), get_string('deactivated_workflows_list', 'tool_lifecycle'));