Support disabling the planned arrival

We also use Engelsystem for single-day events, and the planned
arrival/departure feature doesn't make sense for us.
This commit is contained in:
Janne Heß 2019-04-23 12:23:35 +02:00 committed by msquare
parent 665e444e88
commit 79b30fa3a8
3 changed files with 16 additions and 10 deletions

View File

@ -102,6 +102,9 @@ return [
// Whether the DECT field should be enabled // Whether the DECT field should be enabled
'enable_dect' => true, 'enable_dect' => true,
// Enables the planned arrival/leave date
'enable_planned_arrival' => true,
// Enables the T-Shirt configuration on signup and profile // Enables the T-Shirt configuration on signup and profile
'enable_tshirt_size' => true, 'enable_tshirt_size' => true,

View File

@ -43,6 +43,7 @@ function guest_register()
$tshirt_sizes = config('tshirt_sizes'); $tshirt_sizes = config('tshirt_sizes');
$enable_tshirt_size = config('enable_tshirt_size'); $enable_tshirt_size = config('enable_tshirt_size');
$enable_dect = config('enable_dect'); $enable_dect = config('enable_dect');
$enable_planned_arrival = config('enable_planned_arrival');
$min_password_length = config('min_password_length'); $min_password_length = config('min_password_length');
$config = config(); $config = config();
$request = request(); $request = request();
@ -141,7 +142,7 @@ function guest_register()
), true); ), true);
} }
if ($request->has('planned_arrival_date')) { if ($request->has('planned_arrival_date') && $enable_planned_arrival) {
$tmp = parse_date('Y-m-d H:i', $request->input('planned_arrival_date') . ' 00:00'); $tmp = parse_date('Y-m-d H:i', $request->input('planned_arrival_date') . ' 00:00');
$result = User_validate_planned_arrival_date($tmp); $result = User_validate_planned_arrival_date($tmp);
$planned_arrival_date = $result->getValue(); $planned_arrival_date = $result->getValue();
@ -149,7 +150,7 @@ function guest_register()
$valid = false; $valid = false;
error(__('Please enter your planned date of arrival. It should be after the buildup start date and before teardown end date.')); error(__('Please enter your planned date of arrival. It should be after the buildup start date and before teardown end date.'));
} }
} else { } else if ($enable_planned_arrival) {
$valid = false; $valid = false;
error(__('Please enter your planned date of arrival. It should be after the buildup start date and before teardown end date.')); error(__('Please enter your planned date of arrival. It should be after the buildup start date and before teardown end date.'));
} }
@ -303,11 +304,11 @@ function guest_register()
]), ]),
div('row', [ div('row', [
div('col-sm-6', [ div('col-sm-6', [
form_date( $enable_planned_arrival ? form_date(
'planned_arrival_date', 'planned_arrival_date',
__('Planned date of arrival') . ' ' . entry_required(), __('Planned date of arrival') . ' ' . entry_required(),
$planned_arrival_date, $buildup_start_date, $teardown_end_date $planned_arrival_date, $buildup_start_date, $teardown_end_date
) ) : ''
]), ]),
div('col-sm-6', [ div('col-sm-6', [
$enable_tshirt_size ? form_select('tshirt_size', $enable_tshirt_size ? form_select('tshirt_size',

View File

@ -26,7 +26,9 @@ function User_settings_view(
) { ) {
$personalData = $user_source->personalData; $personalData = $user_source->personalData;
$enable_dect = config('enable_dect'); $enable_dect = config('enable_dect');
return page_with_title(settings_title(), [ $enable_planned_arrival = config('enable_planned_arrival');
return page_with_title(settings_title(), [
msg(), msg(),
div('row', [ div('row', [
div('col-md-6', [ div('col-md-6', [
@ -36,20 +38,20 @@ function User_settings_view(
form_text('nick', __('Nick'), $user_source->name, true), form_text('nick', __('Nick'), $user_source->name, true),
form_text('lastname', __('Last name'), $personalData->last_name), form_text('lastname', __('Last name'), $personalData->last_name),
form_text('prename', __('First name'), $personalData->first_name), form_text('prename', __('First name'), $personalData->first_name),
form_date( $enable_planned_arrival ? form_date(
'planned_arrival_date', 'planned_arrival_date',
__('Planned date of arrival') . ' ' . entry_required(), __('Planned date of arrival') . ' ' . entry_required(),
$personalData->planned_arrival_date ? $personalData->planned_arrival_date->getTimestamp() : '', $personalData->planned_arrival_date ? $personalData->planned_arrival_date->getTimestamp() : '',
$buildup_start_date, $buildup_start_date,
$teardown_end_date $teardown_end_date
), ) : '',
form_date( $enable_planned_arrival ? form_date(
'planned_departure_date', 'planned_departure_date',
__('Planned date of departure'), __('Planned date of departure'),
$personalData->planned_departure_date ? $personalData->planned_departure_date->getTimestamp() : '', $personalData->planned_departure_date ? $personalData->planned_departure_date->getTimestamp() : '',
$buildup_start_date, $buildup_start_date,
$teardown_end_date $teardown_end_date
), ) : '',
$enable_dect ? form_text('dect', __('DECT'), $user_source->contact->dect) : '', $enable_dect ? form_text('dect', __('DECT'), $user_source->contact->dect) : '',
form_text('mobile', __('Mobile'), $user_source->contact->mobile), form_text('mobile', __('Mobile'), $user_source->contact->mobile),
form_text('mail', __('E-Mail') . ' ' . entry_required(), $user_source->email), form_text('mail', __('E-Mail') . ' ' . entry_required(), $user_source->email),
@ -894,7 +896,7 @@ function render_profile_link($text, $user_id = null, $class = '')
*/ */
function render_user_departure_date_hint() function render_user_departure_date_hint()
{ {
if (!auth()->user()->personalData->planned_departure_date) { if (config('enable_planned_arrival') && !auth()->user()->personalData->planned_departure_date) {
$text = __('Please enter your planned date of departure on your settings page to give us a feeling for teardown capacities.'); $text = __('Please enter your planned date of departure on your settings page to give us a feeling for teardown capacities.');
return render_profile_link($text, null, 'alert-link'); return render_profile_link($text, null, 'alert-link');
} }