reduce complexity of user driver license controller

main
msquare 8 years ago
parent f6da9148e7
commit 468a10774c

@ -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.");

@ -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."));

@ -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;
}
/**

@ -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;
}
?>
Loading…
Cancel
Save