summaryrefslogtreecommitdiff
path: root/includes
diff options
context:
space:
mode:
authormsquare <msquare@notrademark.de>2016-11-10 13:55:16 +0100
committermsquare <msquare@notrademark.de>2016-11-10 13:55:16 +0100
commit468a10774cee39d4f649e4e85906f228c8ed79a1 (patch)
treeafab115be92e540d3adf7fbc543f612a314e1dfa /includes
parentf6da9148e7fa2097688613f3dd6e097d9e71293a (diff)
reduce complexity of user driver license controller
Diffstat (limited to 'includes')
-rw-r--r--includes/controller/angeltypes_controller.php5
-rw-r--r--includes/controller/user_driver_licenses_controller.php45
-rw-r--r--includes/model/UserAngelTypes_model.php7
-rw-r--r--includes/model/UserDriverLicenses_model.php19
4 files changed, 42 insertions, 34 deletions
diff --git a/includes/controller/angeltypes_controller.php b/includes/controller/angeltypes_controller.php
index ea451481..3476f3e6 100644
--- a/includes/controller/angeltypes_controller.php
+++ b/includes/controller/angeltypes_controller.php
@@ -192,12 +192,7 @@ function angeltype_controller() {
}
$user_angeltype = UserAngelType_by_User_and_AngelType($user, $angeltype);
-
$user_driver_license = UserDriverLicense($user['UID']);
- if ($user_driver_license === false) {
- engelsystem_error("Unable to load user driver license.");
- }
-
$members = Users_by_angeltype($angeltype);
if ($members === false) {
engelsystem_error("Unable to load members.");
diff --git a/includes/controller/user_driver_licenses_controller.php b/includes/controller/user_driver_licenses_controller.php
index 88d25395..49f21d14 100644
--- a/includes/controller/user_driver_licenses_controller.php
+++ b/includes/controller/user_driver_licenses_controller.php
@@ -7,13 +7,7 @@ function user_driver_license_required_hint() {
global $user;
$angeltypes = User_angeltypes($user);
- if ($angeltypes === false) {
- engelsystem_error("Unable to load user angeltypes.");
- }
$user_driver_license = UserDriverLicense($user['UID']);
- if ($user_driver_license === false) {
- engelsystem_error("Unable to load user driver license.");
- }
$driving_license_information_required = false;
foreach ($angeltypes as $angeltype) {
@@ -64,10 +58,10 @@ function user_driver_license_edit_link($user = null) {
}
/**
- * Edit a users driver license information.
+ * Loads the user for the driver license.
*/
-function user_driver_license_edit_controller() {
- global $privileges, $user;
+function user_driver_license_load_user() {
+ global $user;
$user_source = $user;
@@ -76,11 +70,22 @@ function user_driver_license_edit_controller() {
if ($user_source == null) {
redirect(user_driver_license_edit_link());
}
-
- // only privilege admin_user can edit other users driver license information
- if ($user['UID'] != $user_source['UID'] && ! in_array('admin_user', $privileges)) {
- redirect(user_driver_license_edit_link());
- }
+ }
+
+ return $user_source;
+}
+
+/**
+ * Edit a users driver license information.
+ */
+function user_driver_license_edit_controller() {
+ global $privileges, $user;
+
+ $user_source = user_driver_license_load_user();
+
+ // only privilege admin_user can edit other users driver license information
+ if ($user['UID'] != $user_source['UID'] && ! in_array('admin_user', $privileges)) {
+ redirect(user_driver_license_edit_link());
}
$wants_to_drive = false;
@@ -92,9 +97,6 @@ function user_driver_license_edit_controller() {
$has_license_forklift = false;
$user_driver_license = UserDriverLicense($user_source['UID']);
- if ($user_driver_license === false) {
- engelsystem_error('Unable to load user driver license.');
- }
if ($user_driver_license != null) {
$wants_to_drive = true;
$has_car = $user_driver_license['has_car'];
@@ -122,10 +124,7 @@ function user_driver_license_edit_controller() {
if ($valid) {
if (! $wants_to_drive && $user_driver_license != null) {
- $result = UserDriverLicenses_delete($user_source['UID']);
- if ($result === false) {
- engelsystem_error("Unable to remove user driver license information");
- }
+ UserDriverLicenses_delete($user_source['UID']);
engelsystem_log("Driver license information removed.");
success(_("Your driver license information has been removed."));
} else {
@@ -135,10 +134,6 @@ function user_driver_license_edit_controller() {
} else {
$result = UserDriverLicenses_update($user_source['UID'], $has_car, $has_license_car, $has_license_3_5t_transporter, $has_license_7_5t_truck, $has_license_12_5t_truck, $has_license_forklift);
}
-
- if ($result === false) {
- engelsystem_error("Unable to save user driver license information.");
- }
engelsystem_log("Driver license information updated.");
}
success(_("Your driver license information has been saved."));
diff --git a/includes/model/UserAngelTypes_model.php b/includes/model/UserAngelTypes_model.php
index 74b298cc..02ad5065 100644
--- a/includes/model/UserAngelTypes_model.php
+++ b/includes/model/UserAngelTypes_model.php
@@ -28,12 +28,17 @@ function UserAngelType_exists($user, $angeltype) {
* @param User $user
*/
function User_angeltypes($user) {
- return sql_select("
+ $result = sql_select("
SELECT `AngelTypes`.*, `UserAngelTypes`.`confirm_user_id`, `UserAngelTypes`.`coordinator`
FROM `UserAngelTypes`
JOIN `AngelTypes` ON `UserAngelTypes`.`angeltype_id` = `AngelTypes`.`id`
WHERE `UserAngelTypes`.`user_id`='" . sql_escape($user['UID']) . "'
");
+ if ($result === false) {
+ engelsystem_error("Unable to load user angeltypes.");
+ return false;
+ }
+ return $result;
}
/**
diff --git a/includes/model/UserDriverLicenses_model.php b/includes/model/UserDriverLicenses_model.php
index 19f87e63..32785c92 100644
--- a/includes/model/UserDriverLicenses_model.php
+++ b/includes/model/UserDriverLicenses_model.php
@@ -7,6 +7,7 @@
function UserDriverLicense($user_id) {
$user_driver_license = sql_select("SELECT * FROM `UserDriverLicenses` WHERE `user_id`='" . sql_escape($user_id) . "'");
if ($user_driver_license === false) {
+ engelsystem_error('Unable to load user driver license.');
return false;
}
if (count($user_driver_license) > 0) {
@@ -27,7 +28,7 @@ function UserDriverLicense($user_id) {
* @param bool $has_license_forklift
*/
function UserDriverLicenses_create($user_id, $has_car, $has_license_car, $has_license_3_5t_transporter, $has_license_7_5t_truck, $has_license_12_5t_truck, $has_license_forklift) {
- return sql_query("
+ $result = sql_query("
INSERT INTO `UserDriverLicenses` SET
`user_id`=" . sql_escape($user_id) . ",
`has_car`=" . sql_bool($has_car) . ",
@@ -36,6 +37,10 @@ function UserDriverLicenses_create($user_id, $has_car, $has_license_car, $has_li
`has_license_7_5t_truck`=" . sql_bool($has_license_7_5t_truck) . ",
`has_license_12_5t_truck`=" . sql_bool($has_license_12_5t_truck) . ",
`has_license_forklift`=" . sql_bool($has_license_forklift));
+ if ($result === false) {
+ engelsystem_error('Unable to create user driver license');
+ }
+ return $result;
}
/**
@@ -50,7 +55,7 @@ function UserDriverLicenses_create($user_id, $has_car, $has_license_car, $has_li
* @param bool $has_license_forklift
*/
function UserDriverLicenses_update($user_id, $has_car, $has_license_car, $has_license_3_5t_transporter, $has_license_7_5t_truck, $has_license_12_5t_truck, $has_license_forklift) {
- return sql_query("UPDATE `UserDriverLicenses` SET
+ $result = sql_query("UPDATE `UserDriverLicenses` SET
`has_car`=" . sql_bool($has_car) . ",
`has_license_car`=" . sql_bool($has_license_car) . ",
`has_license_3_5t_transporter`=" . sql_bool($has_license_3_5t_transporter) . ",
@@ -58,6 +63,10 @@ function UserDriverLicenses_update($user_id, $has_car, $has_license_car, $has_li
`has_license_12_5t_truck`=" . sql_bool($has_license_12_5t_truck) . ",
`has_license_forklift`=" . sql_bool($has_license_forklift) . "
WHERE `user_id`='" . sql_escape($user_id) . "'");
+ if ($result === false) {
+ engelsystem_error("Unable to update user driver license information");
+ }
+ return $result;
}
/**
@@ -66,6 +75,10 @@ function UserDriverLicenses_update($user_id, $has_car, $has_license_car, $has_li
* @param int $user_id
*/
function UserDriverLicenses_delete($user_id) {
- return sql_query("DELETE FROM `UserDriverLicenses` WHERE `user_id`=" . sql_escape($user_id));
+ $result = sql_query("DELETE FROM `UserDriverLicenses` WHERE `user_id`=" . sql_escape($user_id));
+ if ($result === false) {
+ engelsystem_error("Unable to remove user driver license information");
+ }
+ return $result;
}
?> \ No newline at end of file