diff options
author | msquare <msquare@notrademark.de> | 2016-11-10 13:55:16 +0100 |
---|---|---|
committer | msquare <msquare@notrademark.de> | 2016-11-10 13:55:16 +0100 |
commit | 468a10774cee39d4f649e4e85906f228c8ed79a1 (patch) | |
tree | afab115be92e540d3adf7fbc543f612a314e1dfa /includes | |
parent | f6da9148e7fa2097688613f3dd6e097d9e71293a (diff) |
reduce complexity of user driver license controller
Diffstat (limited to 'includes')
-rw-r--r-- | includes/controller/angeltypes_controller.php | 5 | ||||
-rw-r--r-- | includes/controller/user_driver_licenses_controller.php | 45 | ||||
-rw-r--r-- | includes/model/UserAngelTypes_model.php | 7 | ||||
-rw-r--r-- | includes/model/UserDriverLicenses_model.php | 19 |
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 |