diff --git a/app/controllers/admin/cronjobs/schedules.php b/app/controllers/admin/cronjobs/schedules.php index 5a1d12aeb70d3f3f62a039f15ea8180b4ea3487d..294d78d0b2d8942617a883f07111f561ed312c00 100644 --- a/app/controllers/admin/cronjobs/schedules.php +++ b/app/controllers/admin/cronjobs/schedules.php @@ -61,24 +61,14 @@ class Admin_Cronjobs_SchedulesController extends AuthenticatedController /** * Displays all available schedules according to the set filters. - * - * @param int $page Which page to display */ - public function index_action($page = 0) + public function index_action() { $filter = $_SESSION['cronjob-filter']; $this->total = CronjobSchedule::countBySql('1'); - $this->pagination = Pagination::create( - CronjobSchedule::countBySql($filter['where']), - $page - ); - - $this->schedules = $this->pagination->loadSORMCollection( - CronjobSchedule::class, - $filter['where'] - ); + $this->schedules = CronjobSchedule::findBySQL($filter['where']); // Filters $this->tasks = CronjobTask::findBySql('1'); @@ -134,9 +124,8 @@ class Admin_Cronjobs_SchedulesController extends AuthenticatedController * Edits a schedule. * * @param String $id Id of the schedule in question (null to create) - * @param int $page Return to this page after editing (optional) */ - public function edit_action(CronjobSchedule $schedule = null, $page = 0) + public function edit_action(CronjobSchedule $schedule = null) { if (Request::submitted('store')) { $parameters = Request::getArray('parameters'); @@ -173,7 +162,7 @@ class Admin_Cronjobs_SchedulesController extends AuthenticatedController $schedule->store(); PageLayout::postSuccess(_('Die Änderungen wurden gespeichert.')); - $this->redirect('admin/cronjobs/schedules/index/' . $page); + $this->redirect('admin/cronjobs/schedules/index'); return; } @@ -182,11 +171,10 @@ class Admin_Cronjobs_SchedulesController extends AuthenticatedController $actions = Sidebar::get()->addWidget(new ActionsWidget()); $actions->addLink( _('Zurück zur Übersicht'), - $this->indexURL($page), + $this->indexURL(), Icon::create('link-intern') ); - $this->page = $page; $this->tasks = CronjobTask::findBySql('1'); } @@ -214,56 +202,51 @@ class Admin_Cronjobs_SchedulesController extends AuthenticatedController * Activates a schedule. * * @param CronjobSchedule $schedule Schedule to activate - * @param int $page Return to this page after activating (optional) */ - public function activate_action(CronjobSchedule $schedule, $page = 0) + public function activate_action(CronjobSchedule $schedule) { $schedule->activate(); if (!Request::isXhr()) { PageLayout::postSuccess(_('Der Cronjob wurde aktiviert.')); } - $this->redirect("admin/cronjobs/schedules/index/{$page}#job-{$schedule->id}"); + $this->redirect("admin/cronjobs/schedules/index#job-{$schedule->id}"); } /** * Deactivates a schedule. * * @param CronjobSchedule $schedule Schedule to deactivate - * @param int $page Return to this page after deactivating (optional) */ - public function deactivate_action(CronjobSchedule $schedule, $page = 0) + public function deactivate_action(CronjobSchedule $schedule) { $schedule->deactivate(); if (!Request::isXhr()) { PageLayout::postSuccess(_('Der Cronjob wurde deaktiviert.')); } - $this->redirect("admin/cronjobs/schedules/index/{$page}#job-{$schedule->id}"); + $this->redirect("admin/cronjobs/schedules/index#job-{$schedule->id}"); } /** * Cancels/deletes a schedule. * * @param CronjobSchedule $schedule Schedule to cancel - * @param int $page Return to this page after canceling (optional) */ - public function cancel_action(CronjobSchedule $schedule, $page = 0) + public function cancel_action(CronjobSchedule $schedule) { CSRFProtection::verifyUnsafeRequest(); $schedule->delete(); PageLayout::postSuccess(_('Der Cronjob wurde gelöscht.')); - $this->redirect("admin/cronjobs/schedules/index/{$page}"); + $this->redirect('admin/cronjobs/schedules/index'); } /** * Performs a bulk operation on a set of schedules. Operation can be * either activating, deactivating or canceling/deleting. - * - * @param int $page Return to this page afterwarsd (optional) */ - public function bulk_action($page = 0) + public function bulk_action() { $action = Request::option('action'); $ids = Request::optionArray('ids'); @@ -310,6 +293,6 @@ class Admin_Cronjobs_SchedulesController extends AuthenticatedController PageLayout::postSuccess($message); } - $this->redirect("admin/cronjobs/schedules/index/{$page}"); + $this->redirect('admin/cronjobs/schedules/index'); } } diff --git a/app/controllers/admin/cronjobs/tasks.php b/app/controllers/admin/cronjobs/tasks.php index 1e9a5e7494b0f2feb86d243abf10b9c9152fbcb0..94a4fcaa87ae05370ca5c7bee2f73af64ba548dd 100644 --- a/app/controllers/admin/cronjobs/tasks.php +++ b/app/controllers/admin/cronjobs/tasks.php @@ -47,26 +47,18 @@ class Admin_Cronjobs_TasksController extends AuthenticatedController /** * Displays all available tasks. - * - * @param int $page Which page to display */ - public function index_action($page = 0) + public function index_action() { - $this->pagination = Pagination::create( - CronjobTask::countBySql('1'), - $page - ); - - $this->tasks = $this->pagination->loadSORMCollection(CronjobTask::class); + $this->tasks = CronjobTask::findBySQL('1'); } /** * Activates a tasks. * * @param CronjobTask $task Task to activate - * @param int $page Return to this page after activating (optional) */ - public function activate_action(CronjobTask $task, $page = 0) + public function activate_action(CronjobTask $task) { $task->active = true; $task->store(); @@ -80,16 +72,15 @@ class Admin_Cronjobs_TasksController extends AuthenticatedController $message = sprintf(_('Die Aufgabe und %u Cronjob(s) wurden aktiviert.'), $activated); PageLayout::postSuccess($message); } - $this->redirect("admin/cronjobs/tasks/index/{$page}#task-{$task->id}"); + $this->redirect("admin/cronjobs/tasks/index#task-{$task->id}"); } /** * Deactivates a tasks. * * @param CronjobTask $task Task to deactivate - * @param int $page Return to this page after deactivating (optional) */ - public function deactivate_action(CronjobTask $task, $page = 0) + public function deactivate_action(CronjobTask $task) { $task->active = false; $task->store(); @@ -103,16 +94,15 @@ class Admin_Cronjobs_TasksController extends AuthenticatedController $message = sprintf(_('Die Aufgabe und %u Cronjob(s) wurden deaktiviert.'), $deactivated); PageLayout::postSuccess($message); } - $this->redirect("admin/cronjobs/tasks/index/{$page}#task-{$task->id}"); + $this->redirect("admin/cronjobs/tasks/index#task-{$task->id}"); } /** * Deletes a tasks. * * @param CronjobTask $task Task to delete - * @param int $page Return to this page after deleting (optional) */ - public function delete_action(CronjobTask $task, $page = 0) + public function delete_action(CronjobTask $task) { CSRFProtection::verifyUnsafeRequest(); $deleted = $task->schedules->count(); @@ -121,16 +111,14 @@ class Admin_Cronjobs_TasksController extends AuthenticatedController $message = sprintf(_('Die Aufgabe und %u Cronjob(s) wurden gelöscht.'), $deleted); PageLayout::postSuccess($message); - $this->redirect("admin/cronjobs/tasks/index/{$page}"); + $this->redirect('admin/cronjobs/tasks/index'); } /** * Performs a bulk operation on a set of tasks. Operation can be either * activating, deactivating or deleting. - * - * @param int $page Return to this page afterwarsd (optional) */ - public function bulk_action($page = 0) + public function bulk_action() { $action = Request::option('action'); $ids = Request::optionArray('ids'); @@ -170,7 +158,7 @@ class Admin_Cronjobs_TasksController extends AuthenticatedController PageLayout::postSuccess($message); } - $this->redirect('admin/cronjobs/tasks/index/' . $page); + $this->redirect('admin/cronjobs/tasks/index'); } /** diff --git a/app/views/admin/cronjobs/schedules/edit.php b/app/views/admin/cronjobs/schedules/edit.php index b73aa3a0a9f0e6304ef3c5bf3efba9ddae005801..96be249d333443f9527fddb9d304a6acd347d7e9 100644 --- a/app/views/admin/cronjobs/schedules/edit.php +++ b/app/views/admin/cronjobs/schedules/edit.php @@ -18,7 +18,7 @@ $days_of_week = [ 7 => _('Sonntag'), ]; ?> -<form action="<?= $controller->edit($schedule, $page) ?>" method="post" class="cronjobs-edit default"> +<form action="<?= $controller->edit($schedule) ?>" method="post" class="cronjobs-edit default"> <?= CSRFProtection::tokenTag() ?> <h1> @@ -242,6 +242,6 @@ $days_of_week = [ <footer class="buttons"> <?= Button::createAccept(_('Speichern'), 'store') ?> - <?= LinkButton::createCancel('Abbrechen', $controller->indexURL($page)) ?> + <?= LinkButton::createCancel('Abbrechen', $controller->indexURL()) ?> </footer> </form> diff --git a/app/views/admin/cronjobs/schedules/index.php b/app/views/admin/cronjobs/schedules/index.php index 2db97d1af1e7d24d9bc756abf3607c324c8e4391..61608758899ea406f0ce69c0cc41fa4588927f4c 100644 --- a/app/views/admin/cronjobs/schedules/index.php +++ b/app/views/admin/cronjobs/schedules/index.php @@ -3,7 +3,6 @@ * @var CronjobTask[] $tasks * @var CronjobSchedule[] $schedules * @var Admin_Cronjobs_SchedulesController $controller - * @var Pagination $pagination * @var int $total * @var array $filter */ @@ -15,8 +14,8 @@ use Studip\Button, Studip\LinkButton; <fieldset> <legend> <?= _('Darstellung einschränken') ?> - <? if ($pagination->getTotal() != $total): ?> - <?= sprintf(_('Passend: %u von %u Cronjobs'), $pagination->getTotal(), $total) ?> + <? if (count($schedules) != $total): ?> + <?= sprintf(_('Passend: %u von %u Cronjobs'), count($schedules), $total) ?> <? endif; ?> </legend> <label class="col-2"> @@ -67,7 +66,7 @@ use Studip\Button, Studip\LinkButton; </form> -<form class="cronjobs" action="<?= $controller->bulk($pagination->getCurrentPage()) ?>" method="post"> +<form class="cronjobs" action="<?= $controller->bulk() ?>" method="post"> <?= CSRFProtection::tokenTag() ?> <table class="default cronjobs sortable-table" data-sortlist="[[1, 0]]"> @@ -114,12 +113,12 @@ use Studip\Button, Studip\LinkButton; <? if (!$schedule->task->active): ?> <?= Icon::create('checkbox-unchecked', Icon::ROLE_INACTIVE)->asImg(['title' => _('Cronjob kann nicht aktiviert werden, da die zugehörige ' . 'Aufgabe deaktiviert ist.')]) ?> <? elseif ($schedule->active): ?> - <a href="<?= $controller->deactivate($schedule, $pagination->getCurrentPage()) ?>" + <a href="<?= $controller->deactivate($schedule) ?>" data-behaviour="ajax-toggle"> <?= Icon::create('checkbox-checked')->asImg(['title' => _('Cronjob deaktivieren')]) ?> </a> <? else: ?> - <a href="<?= $controller->activate($schedule, $pagination->getCurrentPage()) ?>" + <a href="<?= $controller->activate($schedule) ?>" data-behaviour="ajax-toggle"> <?= Icon::create('checkbox-unchecked')->asImg(['title' => _('Cronjob aktivieren')]) ?> </a> @@ -137,7 +136,7 @@ use Studip\Button, Studip\LinkButton; <a data-dialog href="<?= $controller->display($schedule) ?>"> <?= Icon::create('admin')->asImg(['title' => _('Cronjob anzeigen')]) ?> </a> - <a href="<?= $controller->edit($schedule, $pagination->getCurrentPage()) ?>"> + <a href="<?= $controller->edit($schedule) ?>"> <?= Icon::create('edit')->asImg(['title' => _('Cronjob bearbeiten')]) ?> </a> <a href="<?= $controller->link_for('admin/cronjobs/logs/schedule', $schedule) ?>"> @@ -145,7 +144,7 @@ use Studip\Button, Studip\LinkButton; </a> <?= Icon::create('trash')->asInput([ 'data-confirm' => _('Wollen Sie den ausgewählten Cronjob wirklich löschen?'), - 'formaction' => $controller->cancelURL($schedule, $pagination->getCurrentPage()), + 'formaction' => $controller->cancelURL($schedule), ]) ?> </td> </tr> @@ -161,12 +160,6 @@ use Studip\Button, Studip\LinkButton; <option value="cancel"><?= _('Löschen') ?></option> </select> <?= Button::createAccept(_('Ausführen'), 'bulk') ?> - - <section style="float: right"> - <?= $pagination->asLinks(function ($page) use ($controller) { - return $controller->index($page); - }) ?> - </section> </td> </tr> </tfoot> diff --git a/app/views/admin/cronjobs/tasks/index.php b/app/views/admin/cronjobs/tasks/index.php index 2e0adde53d15946cc26a457d823b9138d885a446..c39df93f0e8dae4a125a0476e4654618e44e1f4f 100644 --- a/app/views/admin/cronjobs/tasks/index.php +++ b/app/views/admin/cronjobs/tasks/index.php @@ -1,14 +1,13 @@ <?php /** * @var Admin_Cronjobs_TasksController $controller - * @var Pagination $pagination * @var CronjobTask[] $tasks */ use Studip\Button; ?> -<form action="<?= $controller->bulk($pagination->getCurrentPage()) ?>" method="post" class="default"> +<form action="<?= $controller->bulk() ?>" method="post" class="default"> <?= CSRFProtection::tokenTag() ?> <table class="default cronjobs sortable-table" data-sortlist="[[1,0]]"> @@ -50,11 +49,11 @@ use Studip\Button; <td><?= $task->isCore() ? _('Kern') : _('Plugin') ?></td> <td style="text-align: center;" data-sort-value="'<?= (int) $task->active ?>'"> <? if ($task->active): ?> - <a href="<?= $controller->deactivate($task, $pagination->getCurrentPage()) ?>" data-behaviour="ajax-toggle"> + <a href="<?= $controller->deactivate($task) ?>" data-behaviour="ajax-toggle"> <?= Icon::create('checkbox-checked')->asImg(['title' => _('Aufgabe deaktivieren')]) ?> </a> <? else: ?> - <a href="<?= $controller->activate($task, $pagination->getCurrentPage()) ?>" data-behaviour="ajax-toggle"> + <a href="<?= $controller->activate($task) ?>" data-behaviour="ajax-toggle"> <?= Icon::create('checkbox-unchecked')->asImg(['title' => _('Aufgabe aktivieren')]) ?> </a> <? endif; ?> @@ -70,7 +69,7 @@ use Studip\Button; </a> <?= Icon::create('trash')->asInput([ 'data-confirm' => _('Wollen Sie die ausgewählte Aufgabe wirklich löschen?'), - 'formaction' => $controller->deleteURL($task, $pagination->getCurrentPage()), + 'formaction' => $controller->deleteURL($task), ]) ?> </td> </tr> @@ -86,12 +85,6 @@ use Studip\Button; <option value="delete"><?= _('Löschen') ?></option> </select> <?= Button::createAccept(_('Ausführen'), 'bulk') ?> - - <section style="float: right"> - <?= $pagination->asLinks(function ($page) use ($controller) { - return $controller->index($page); - }) ?> - </section> </td> </tr> </tfoot>