Fix on seed default track tag groups response
Change-Id: I8a8564406deeccfbf3047aaa1227dcec66640677
This commit is contained in:
parent
fa96c4c1a0
commit
9a5942a8fe
|
@ -370,8 +370,18 @@ final class OAuth2SummitTrackTagGroupsApiController extends OAuth2ProtectedContr
|
|||
try{
|
||||
$summit = SummitFinderStrategyFactory::build($this->summit_repository, $this->resource_server_context)->find($summit_id);
|
||||
if (is_null($summit)) return $this->error404();
|
||||
$this->track_tag_group_service->seedDefaultTrackTagGroups($summit);
|
||||
return $this->updated();
|
||||
$track_tag_groups = $this->track_tag_group_service->seedDefaultTrackTagGroups($summit);
|
||||
|
||||
$response = new PagingResponse
|
||||
(
|
||||
count($track_tag_groups),
|
||||
count($track_tag_groups),
|
||||
1,
|
||||
1,
|
||||
$track_tag_groups
|
||||
);
|
||||
return $this->created($response->toArray());
|
||||
|
||||
}
|
||||
catch (ValidationException $ex1) {
|
||||
Log::warning($ex1);
|
||||
|
|
|
@ -53,7 +53,7 @@ interface ISummitTrackTagGroupService
|
|||
|
||||
/**
|
||||
* @param Summit $summit
|
||||
* @return void
|
||||
* @return TrackTagGroup[]
|
||||
* @throws EntityNotFoundException
|
||||
* @throws ValidationException
|
||||
*/
|
||||
|
|
|
@ -208,28 +208,31 @@ implements ISummitTrackTagGroupService
|
|||
|
||||
/**
|
||||
* @param Summit $summit
|
||||
* @return TrackTagGroup[]
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function seedDefaultTrackTagGroups(Summit $summit)
|
||||
{
|
||||
$this->tx_service->transaction(function() use($summit) {
|
||||
return $this->tx_service->transaction(function() use($summit) {
|
||||
$added_track_tag_groups = [];
|
||||
$default_groups = $this->default_track_tag_group_repository->getAll();
|
||||
foreach($default_groups as $default_track_tag_group){
|
||||
// if already exists ...
|
||||
if($summit->getTrackTagGroupByLabel($default_track_tag_group->getLabel()))
|
||||
continue;
|
||||
|
||||
$new_group = new TrackTagGroup();
|
||||
$new_group = new TrackTagGroup();
|
||||
$new_group->setName($default_track_tag_group->getName());
|
||||
$new_group->setLabel($default_track_tag_group->getLabel());
|
||||
$new_group->setOrder($default_track_tag_group->getOrder());
|
||||
$new_group->setIsMandatory($default_track_tag_group->isMandatory());
|
||||
$summit->addTrackTagGroup($new_group);
|
||||
|
||||
$added_track_tag_groups[] = $new_group;
|
||||
foreach ($default_track_tag_group->getAllowedTags() as $default_allowed_tag){
|
||||
$new_group->addTag($default_allowed_tag->getTag());
|
||||
}
|
||||
}
|
||||
return $added_track_tag_groups;
|
||||
});
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue