Fix on speaker serializer
Added email obfuscation for non admin members Change-Id: I8ad832f1cff807cd636377abc8d7d6f7d3ab0158
This commit is contained in:
parent
d6dad95b48
commit
79353a59a4
@ -26,6 +26,14 @@ final class AdminPresentationSpeakerSerializer extends PresentationSpeakerSerial
|
||||
'Notes' => 'notes:json_string'
|
||||
];
|
||||
|
||||
/**
|
||||
* @param PresentationSpeaker $speaker
|
||||
* @return null|string|string[]
|
||||
*/
|
||||
protected function getSpeakerEmail(PresentationSpeaker $speaker){
|
||||
return $speaker->getEmail();
|
||||
}
|
||||
|
||||
/**
|
||||
* @param null $expand
|
||||
* @param array $fields
|
||||
@ -41,7 +49,6 @@ final class AdminPresentationSpeakerSerializer extends PresentationSpeakerSerial
|
||||
if(!$speaker instanceof PresentationSpeaker) return [];
|
||||
|
||||
$values = parent::serialize($expand, $fields, $relations, $params);
|
||||
$values['email'] = $speaker->getEmail();
|
||||
$summit = isset($params['summit'])? $params['summit']:null;
|
||||
|
||||
if(!is_null($summit)){
|
||||
|
@ -33,6 +33,15 @@ class PresentationSpeakerSerializer extends SilverStripeSerializer
|
||||
'member',
|
||||
];
|
||||
|
||||
/**
|
||||
* @param PresentationSpeaker $speaker
|
||||
* @return null|string|string[]
|
||||
*/
|
||||
protected function getSpeakerEmail(PresentationSpeaker $speaker){
|
||||
$speaker_email = $speaker->getEmail();
|
||||
return preg_replace('/(?<=.).(?=.*.)/u','*', $speaker_email);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param null $expand
|
||||
* @param array $fields
|
||||
@ -48,7 +57,7 @@ class PresentationSpeakerSerializer extends SilverStripeSerializer
|
||||
if(!$speaker instanceof PresentationSpeaker) return [];
|
||||
|
||||
$values = parent::serialize($expand, $fields, $relations, $params);
|
||||
|
||||
$values['email'] = $this->getSpeakerEmail($speaker);
|
||||
$summit_id = isset($params['summit_id'])? intval($params['summit_id']):null;
|
||||
$published = isset($params['published'])? intval($params['published']):true;
|
||||
if(!is_null($summit_id)) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user