From 468a10774cee39d4f649e4e85906f228c8ed79a1 Mon Sep 17 00:00:00 2001 From: msquare Date: Thu, 10 Nov 2016 13:55:16 +0100 Subject: reduce complexity of user driver license controller --- includes/controller/angeltypes_controller.php | 5 --- .../controller/user_driver_licenses_controller.php | 45 ++++++++++------------ 2 files changed, 20 insertions(+), 30 deletions(-) (limited to 'includes/controller') 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.")); -- cgit v1.2.3-54-g00ecf