summaryrefslogtreecommitdiff
path: root/includes/controller/shifttypes_controller.php
diff options
context:
space:
mode:
Diffstat (limited to 'includes/controller/shifttypes_controller.php')
-rw-r--r--includes/controller/shifttypes_controller.php301
1 files changed, 157 insertions, 144 deletions
diff --git a/includes/controller/shifttypes_controller.php b/includes/controller/shifttypes_controller.php
index 456e39ae..9a470e29 100644
--- a/includes/controller/shifttypes_controller.php
+++ b/includes/controller/shifttypes_controller.php
@@ -1,179 +1,192 @@
<?php
-function shifttype_link($shifttype) {
- return page_link_to('shifttypes') . '&action=view&shifttype_id=' . $shifttype['id'];
+/**
+ * @param array $shifttype
+ * @return string
+ */
+function shifttype_link($shifttype)
+{
+ return page_link_to('shifttypes') . '&action=view&shifttype_id=' . $shifttype['id'];
}
/**
* Delete a shifttype.
+ *
+ * @return array
*/
-function shifttype_delete_controller() {
- if (! isset($_REQUEST['shifttype_id'])) {
- redirect(page_link_to('shifttypes'));
- }
-
- $shifttype = ShiftType($_REQUEST['shifttype_id']);
- if ($shifttype === false) {
- engelsystem_error('Unable to load shifttype.');
- }
-
- if ($shifttype == null) {
- redirect(page_link_to('shifttypes'));
- }
-
- if (isset($_REQUEST['confirmed'])) {
- $result = ShiftType_delete($shifttype['id']);
- if ($result === false) {
- engelsystem_error('Unable to delete shifttype.');
+function shifttype_delete_controller()
+{
+ if (!isset($_REQUEST['shifttype_id'])) {
+ redirect(page_link_to('shifttypes'));
}
-
- engelsystem_log('Deleted shifttype ' . $shifttype['name']);
- success(sprintf(_('Shifttype %s deleted.'), $shifttype['name']));
- redirect(page_link_to('shifttypes'));
- }
-
- return [
- sprintf(_("Delete shifttype %s"), $shifttype['name']),
- ShiftType_delete_view($shifttype)
- ];
-}
-/**
- * Edit or create shift type.
- */
-function shifttype_edit_controller() {
- $shifttype_id = null;
- $name = "";
- $angeltype_id = null;
- $description = "";
-
- $angeltypes = AngelTypes();
-
- if (isset($_REQUEST['shifttype_id'])) {
$shifttype = ShiftType($_REQUEST['shifttype_id']);
- if ($shifttype === false) {
- engelsystem_error('Unable to load shifttype.');
- }
+
if ($shifttype == null) {
- error(_('Shifttype not found.'));
- redirect(page_link_to('shifttypes'));
- }
- $shifttype_id = $shifttype['id'];
- $name = $shifttype['name'];
- $angeltype_id = $shifttype['angeltype_id'];
- $description = $shifttype['description'];
- }
-
- if (isset($_REQUEST['submit'])) {
- $valid = true;
-
- if (isset($_REQUEST['name']) && $_REQUEST['name'] != '') {
- $name = strip_request_item('name');
- } else {
- $valid = false;
- error(_('Please enter a name.'));
+ redirect(page_link_to('shifttypes'));
}
-
- if (isset($_REQUEST['angeltype_id']) && preg_match("/^[0-9]+$/", $_REQUEST['angeltype_id'])) {
- $angeltype_id = $_REQUEST['angeltype_id'];
- } else {
- $angeltype_id = null;
+
+ if (isset($_REQUEST['confirmed'])) {
+ $result = ShiftType_delete($shifttype['id']);
+ if (empty($result)) {
+ engelsystem_error('Unable to delete shifttype.');
+ }
+
+ engelsystem_log('Deleted shifttype ' . $shifttype['name']);
+ success(sprintf(_('Shifttype %s deleted.'), $shifttype['name']));
+ redirect(page_link_to('shifttypes'));
}
-
- if (isset($_REQUEST['description'])) {
- $description = strip_request_item_nl('description');
+
+ return [
+ sprintf(_('Delete shifttype %s'), $shifttype['name']),
+ ShiftType_delete_view($shifttype)
+ ];
+}
+
+/**
+ * Edit or create shift type.
+ *
+ * @return array
+ */
+function shifttype_edit_controller()
+{
+ $shifttype_id = null;
+ $name = '';
+ $angeltype_id = null;
+ $description = '';
+
+ $angeltypes = AngelTypes();
+
+ if (isset($_REQUEST['shifttype_id'])) {
+ $shifttype = ShiftType($_REQUEST['shifttype_id']);
+ if ($shifttype == null) {
+ error(_('Shifttype not found.'));
+ redirect(page_link_to('shifttypes'));
+ }
+ $shifttype_id = $shifttype['id'];
+ $name = $shifttype['name'];
+ $angeltype_id = $shifttype['angeltype_id'];
+ $description = $shifttype['description'];
}
-
- if ($valid) {
- if ($shifttype_id) {
- $result = ShiftType_update($shifttype_id, $name, $angeltype_id, $description);
- if ($result === false) {
- engelsystem_error('Unable to update shifttype.');
+
+ if (isset($_REQUEST['submit'])) {
+ $valid = true;
+
+ if (isset($_REQUEST['name']) && $_REQUEST['name'] != '') {
+ $name = strip_request_item('name');
+ } else {
+ $valid = false;
+ error(_('Please enter a name.'));
+ }
+
+ if (isset($_REQUEST['angeltype_id']) && preg_match('/^\d+$/', $_REQUEST['angeltype_id'])) {
+ $angeltype_id = $_REQUEST['angeltype_id'];
+ } else {
+ $angeltype_id = null;
}
- engelsystem_log('Updated shifttype ' . $name);
- success(_('Updated shifttype.'));
- } else {
- $shifttype_id = ShiftType_create($name, $angeltype_id, $description);
- if ($shifttype_id === false) {
- engelsystem_error('Unable to create shifttype.');
+
+ if (isset($_REQUEST['description'])) {
+ $description = strip_request_item_nl('description');
+ }
+
+ if ($valid) {
+ if ($shifttype_id) {
+ $result = ShiftType_update($shifttype_id, $name, $angeltype_id, $description);
+ if ($result === false) {
+ engelsystem_error('Unable to update shifttype.');
+ }
+ engelsystem_log('Updated shifttype ' . $name);
+ success(_('Updated shifttype.'));
+ } else {
+ $shifttype_id = ShiftType_create($name, $angeltype_id, $description);
+ if ($shifttype_id === false) {
+ engelsystem_error('Unable to create shifttype.');
+ }
+ engelsystem_log('Created shifttype ' . $name);
+ success(_('Created shifttype.'));
+ }
+ redirect(page_link_to('shifttypes') . '&action=view&shifttype_id=' . $shifttype_id);
}
- engelsystem_log('Created shifttype ' . $name);
- success(_('Created shifttype.'));
- }
- redirect(page_link_to('shifttypes') . '&action=view&shifttype_id=' . $shifttype_id);
}
- }
-
- return [
- shifttypes_title(),
- ShiftType_edit_view($name, $angeltype_id, $angeltypes, $description, $shifttype_id)
- ];
+
+ return [
+ shifttypes_title(),
+ ShiftType_edit_view($name, $angeltype_id, $angeltypes, $description, $shifttype_id)
+ ];
}
-function shifttype_controller() {
- if (! isset($_REQUEST['shifttype_id'])) {
- redirect(page_link_to('shifttypes'));
- }
- $shifttype = ShiftType($_REQUEST['shifttype_id']);
- if ($shifttype === false) {
- engelsystem_error('Unable to load shifttype.');
- }
- if ($shifttype == null) {
- redirect(page_link_to('shifttypes'));
- }
-
- $angeltype = null;
- if ($shifttype['angeltype_id'] != null) {
- $angeltype = AngelType($shifttype['angeltype_id']);
- }
-
- return [
- $shifttype['name'],
- ShiftType_view($shifttype, $angeltype)
- ];
+/**
+ * @return array
+ */
+function shifttype_controller()
+{
+ if (!isset($_REQUEST['shifttype_id'])) {
+ redirect(page_link_to('shifttypes'));
+ }
+ $shifttype = ShiftType($_REQUEST['shifttype_id']);
+ if ($shifttype == null) {
+ redirect(page_link_to('shifttypes'));
+ }
+
+ $angeltype = null;
+ if ($shifttype['angeltype_id'] != null) {
+ $angeltype = AngelType($shifttype['angeltype_id']);
+ }
+
+ return [
+ $shifttype['name'],
+ ShiftType_view($shifttype, $angeltype)
+ ];
}
/**
* List all shift types.
+ *
+ * @return array
*/
-function shifttypes_list_controller() {
- $shifttypes = ShiftTypes();
- if ($shifttypes === false) {
- engelsystem_error("Unable to load shifttypes.");
- }
-
- return [
- shifttypes_title(),
- ShiftTypes_list_view($shifttypes)
- ];
+function shifttypes_list_controller()
+{
+ $shifttypes = ShiftTypes();
+ if ($shifttypes === false) {
+ engelsystem_error('Unable to load shifttypes.');
+ }
+
+ return [
+ shifttypes_title(),
+ ShiftTypes_list_view($shifttypes)
+ ];
}
/**
* Text for shift type related links.
+ *
+ * @return string
*/
-function shifttypes_title() {
- return _("Shifttypes");
+function shifttypes_title()
+{
+ return _('Shifttypes');
}
/**
* Route shift type actions
+ *
+ * @return array
*/
-function shifttypes_controller() {
- if (! isset($_REQUEST['action'])) {
- $_REQUEST['action'] = 'list';
- }
-
- switch ($_REQUEST['action']) {
- default:
- case 'list':
- return shifttypes_list_controller();
- case 'view':
- return shifttype_controller();
- case 'edit':
- return shifttype_edit_controller();
- case 'delete':
- return shifttype_delete_controller();
- }
-}
+function shifttypes_controller()
+{
+ if (!isset($_REQUEST['action'])) {
+ $_REQUEST['action'] = 'list';
+ }
-?> \ No newline at end of file
+ switch ($_REQUEST['action']) {
+ case 'view':
+ return shifttype_controller();
+ case 'edit':
+ return shifttype_edit_controller();
+ case 'delete':
+ return shifttype_delete_controller();
+ case 'list':
+ default:
+ return shifttypes_list_controller();
+ }
+}