1<?php
2global $INPUT;
3
4/** @var action_plugin_bez $this */
5
6use \dokuwiki\plugin\bez;
7
8if ($this->model->get_level() < BEZ_AUTH_ADMIN) {
9    throw new bez\meta\PermissionDeniedException();
10}
11
12$task_programs = $this->model->task_programFactory->get_all([], 'name');
13
14$id = null;
15if (isset($_POST['id'])) {
16    $id = (int)$_POST['id'];
17} else {
18    $id = $this->get_param('id');
19}
20
21
22if ($id) {
23    $task_program = $this->model->task_programFactory->get_one($id);
24} else {
25    $task_program = $this->model->task_programFactory->create_object();
26}
27
28$this->tpl->set('task_programs', $task_programs);
29$this->tpl->set('task_program', $task_program);
30
31if ($this->get_param('action') === 'edit') {
32
33    $this->tpl->set_values($task_program->get_assoc());
34} else if ($this->get_param('action') === 'remove') {
35
36    $this->model->task_programFactory->delete($task_program);
37
38    header('Location: '.$this->url('task_programs'));
39
40} elseif (count($_POST) > 0) {
41    $task_program->set_data($_POST);
42    $this->model->task_programFactory->save($task_program);
43
44    header('Location: '.$this->url('task_programs'));
45}
46