mirror of
https://github.com/catalyst/moodle-auth_outage.git
synced 2026-05-16 21:41:31 +02:00
Issue #11 - Renderer refactored.
This commit is contained in:
@@ -54,26 +54,32 @@ class manage extends \flexible_table {
|
||||
public function set_data(array $outages) {
|
||||
global $OUTPUT;
|
||||
foreach ($outages as $outage) {
|
||||
$buttons = '';
|
||||
$buttons = \html_writer::link(
|
||||
new \moodle_url('/auth/outage/edit.php', ['id' => $outage->id]),
|
||||
\html_writer::empty_tag('img', [
|
||||
'src' => $OUTPUT->pix_url('t/edit'),
|
||||
'alt' => get_string('edit'),
|
||||
'class' => 'iconsmall'
|
||||
]),
|
||||
['title' => get_string('edit')]
|
||||
)
|
||||
. \html_writer::link(
|
||||
new \moodle_url('/auth/outage/delete.php', ['id' => $outage->id]),
|
||||
\html_writer::empty_tag('img', [
|
||||
'src' => $OUTPUT->pix_url('t/delete'),
|
||||
'alt' => get_string('delete'),
|
||||
'class' => 'iconsmall'
|
||||
]),
|
||||
['title' => get_string('delete')]
|
||||
);
|
||||
|
||||
$url = new \moodle_url('/auth/outage/edit.php', ['id' => $outage->id]);
|
||||
$html = \html_writer::empty_tag('img', array('src' => $OUTPUT->pix_url('t/edit'), 'alt' => get_string('edit'), 'class' => 'iconsmall'));
|
||||
$buttons .= \html_writer::link($url, $html, array('title' => get_string('edit')));
|
||||
|
||||
$url = new \moodle_url('/auth/outage/delete.php', ['id' => $outage->id]);
|
||||
$html = \html_writer::empty_tag('img', array('src' => $OUTPUT->pix_url('t/delete'), 'alt' => get_string('delete'), 'class' => 'iconsmall'));
|
||||
$buttons .= \html_writer::link($url, $html, array('title' => get_string('delete')));
|
||||
|
||||
// Table columns 'name', 'action', 'role', 'parent', 'continue', 'priority', 'data'.
|
||||
$values = [
|
||||
$this->add_data([
|
||||
userdate($outage->starttime, get_string('tablerowstarts', 'auth_outage')),
|
||||
$outage->get_duration_string(),
|
||||
$outage->get_warning_duration_string(),
|
||||
$outage->get_title(),
|
||||
$buttons,
|
||||
];
|
||||
|
||||
$this->add_data($values);
|
||||
]);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -33,8 +33,6 @@ $renderer = outagelib::pagesetup();
|
||||
|
||||
echo $OUTPUT->header();
|
||||
|
||||
$table = new \auth_outage\tables\manage();
|
||||
$table->set_data(outagedb::get_all());
|
||||
echo $table->finish_output();
|
||||
$renderer->renderoutagelist(outagedb::get_all());
|
||||
|
||||
echo $OUTPUT->footer();
|
||||
|
||||
33
renderer.php
33
renderer.php
@@ -43,6 +43,33 @@ class auth_outage_renderer extends plugin_renderer_base {
|
||||
. $this->renderoutage($outage, false);
|
||||
}
|
||||
|
||||
/**
|
||||
* Outputs the HTML data listing all given outages.
|
||||
* @param array $outages Outages to list.
|
||||
*/
|
||||
public function renderoutagelist(array $outages) {
|
||||
global $OUTPUT;
|
||||
|
||||
echo $this->rendersubtitle('outageslist');
|
||||
|
||||
// Generate list of outages.
|
||||
$table = new \auth_outage\tables\manage();
|
||||
$table->set_data($outages);
|
||||
$table->finish_output(); // It will output HTML.
|
||||
|
||||
// Add 'add' button.
|
||||
$url = new moodle_url('/auth/outage/new.php');
|
||||
$img = html_writer::empty_tag('img',
|
||||
['src' => $OUTPUT->pix_url('t/add'), 'alt' => get_string('create'), 'class' => 'iconsmall']);
|
||||
echo html_writer::tag('p',
|
||||
html_writer::link(
|
||||
$url,
|
||||
$img . ' ' . get_string('outagecreate', 'auth_outage'),
|
||||
['title' => get_string('delete')]
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
private function renderoutage(outage $outage, $buttons) {
|
||||
global $OUTPUT;
|
||||
|
||||
@@ -126,6 +153,12 @@ class auth_outage_renderer extends plugin_renderer_base {
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Renders the warning bar.
|
||||
* @param outage $outage The outage to show in the warning bar.
|
||||
* @return string HTML of the warning bar.
|
||||
* @SuppressWarnings("unused") because $message is used inside require(...)
|
||||
*/
|
||||
public function renderoutagebar(outage $outage) {
|
||||
global $CFG;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user