feat: make admin users hotel managers with configurable hotel code
This commit is contained in:
@@ -171,6 +171,12 @@ class ResponseParser
|
||||
$groups[] = $group;
|
||||
}
|
||||
|
||||
// Apply additional role and hotel code for testing purposes when provided
|
||||
if ($isAdmin && null !== $this->config['bpn_default_hotel_code']) {
|
||||
$isHouseManager = true;
|
||||
$hotelCode = $this->config['bpn_default_hotel_code'];
|
||||
}
|
||||
|
||||
$response = new CrmAttributesResponse();
|
||||
$response
|
||||
->setAttributeGroups($groups)
|
||||
@@ -252,11 +258,14 @@ class ResponseParser
|
||||
private function resolveOptions(array $options): array
|
||||
{
|
||||
$optionsResolver = new OptionsResolver();
|
||||
$optionsResolver->setRequired(['bpn_crm_id_admin', 'bpn_crm_id_manager', 'bpn_crm_id_house_manager', 'bpn_crm_id_teamer']);
|
||||
$optionsResolver->setRequired(['bpn_crm_id_admin', 'bpn_crm_id_manager', 'bpn_crm_id_teamer']);
|
||||
$optionsResolver->setDefaults([
|
||||
'bpn_default_hotel_code' => null,
|
||||
]);
|
||||
$optionsResolver->setAllowedTypes('bpn_crm_id_admin', 'int');
|
||||
$optionsResolver->setAllowedTypes('bpn_crm_id_manager', 'int');
|
||||
$optionsResolver->setAllowedTypes('bpn_crm_id_house_manager', 'int');
|
||||
$optionsResolver->setAllowedTypes('bpn_crm_id_teamer', 'int');
|
||||
$optionsResolver->setAllowedTypes('bpn_default_hotel_code', ['string', 'null']);
|
||||
|
||||
return $optionsResolver->resolve($options);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user