Added default access level
* added summit seeds ( CHAT, IN_PERSON, VIRTUAL) * fixed is default functionallity Change-Id: Ic0a8b3fb7254a1b8c45dbdea402e2d09f0bedd32 Signed-off-by: smarcet <smarcet@gmail.com>
This commit is contained in:
parent
e43331e77f
commit
3f65bff6cd
@ -3403,6 +3403,14 @@ SQL;
|
|||||||
return $attr === false ? null : $attr;
|
return $attr === false ? null : $attr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public function getDefaultBadgeAccessLevelTypes(){
|
||||||
|
$criteria = Criteria::create();
|
||||||
|
$criteria->where(Criteria::expr()->eq('is_default', true));
|
||||||
|
return $this->badge_access_level_types->matching($criteria);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string $level_name
|
* @param string $level_name
|
||||||
* @return SummitAccessLevelType|null
|
* @return SummitAccessLevelType|null
|
||||||
@ -4636,6 +4644,36 @@ SQL;
|
|||||||
return $list;
|
return $list;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* this define the default access level types
|
||||||
|
* that need to be seeded when a new show is created
|
||||||
|
*/
|
||||||
|
public function seedDefaultAccessLevelTypes():void{
|
||||||
|
|
||||||
|
$defaults = [
|
||||||
|
[
|
||||||
|
'name' => 'CHAT',
|
||||||
|
'description'=> 'Enables Chat Feature.'
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'IN_PERSON',
|
||||||
|
'description'=> 'Allows in person show access.'
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'VIRTUAL',
|
||||||
|
'description'=> 'Allows virtual show access.'
|
||||||
|
]
|
||||||
|
];
|
||||||
|
|
||||||
|
foreach($defaults as $default) {
|
||||||
|
$a = new SummitAccessLevelType();
|
||||||
|
$a->setName($default['name']);
|
||||||
|
$a->setDescription($default['description']);
|
||||||
|
$a->setIsDefault(true);
|
||||||
|
$this->addBadgeAccessLevelType($a);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
|
@ -67,6 +67,12 @@ implements ISummitAccessLevelTypeService
|
|||||||
|
|
||||||
$summit->addBadgeAccessLevelType($access_level);
|
$summit->addBadgeAccessLevelType($access_level);
|
||||||
|
|
||||||
|
if($access_level->isDefault()){
|
||||||
|
// add to all existent badge types
|
||||||
|
foreach($summit->getBadgeTypes() as $badgeType){
|
||||||
|
$badgeType->addAccessLevel($access_level);
|
||||||
|
}
|
||||||
|
}
|
||||||
return $access_level;
|
return $access_level;
|
||||||
|
|
||||||
});
|
});
|
||||||
@ -96,9 +102,7 @@ implements ISummitAccessLevelTypeService
|
|||||||
throw new ValidationException(sprintf("access level with name %s already exists!", $name));
|
throw new ValidationException(sprintf("access level with name %s already exists!", $name));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return SummitAccessLevelTypeFactory::populate($access_level, $data);
|
return SummitAccessLevelTypeFactory::populate($access_level, $data);
|
||||||
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -50,6 +50,11 @@ final class SummitBadgeTypeService extends AbstractService
|
|||||||
throw new ValidationException("there is already a default badge type");
|
throw new ValidationException("there is already a default badge type");
|
||||||
}
|
}
|
||||||
$badge_type = SummitBadgeTypeFactory::build($data);
|
$badge_type = SummitBadgeTypeFactory::build($data);
|
||||||
|
// add default access levels
|
||||||
|
foreach($summit->getDefaultBadgeAccessLevelTypes() as $default_access_level){
|
||||||
|
$badge_type->addAccessLevel($default_access_level);
|
||||||
|
}
|
||||||
|
|
||||||
$summit->addBadgeType($badge_type);
|
$summit->addBadgeType($badge_type);
|
||||||
return $badge_type;
|
return $badge_type;
|
||||||
});
|
});
|
||||||
@ -77,6 +82,7 @@ final class SummitBadgeTypeService extends AbstractService
|
|||||||
throw new ValidationException("badge type name already exists");
|
throw new ValidationException("badge type name already exists");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(isset($data['is_default'])) {
|
if(isset($data['is_default'])) {
|
||||||
$is_default = boolval($data['is_default']);
|
$is_default = boolval($data['is_default']);
|
||||||
if ($is_default && $summit->hasDefaultBadgeType() && !$badge_type->isDefault()) {
|
if ($is_default && $summit->hasDefaultBadgeType() && !$badge_type->isDefault()) {
|
||||||
|
@ -1597,7 +1597,11 @@ final class SummitService extends AbstractService implements ISummitService
|
|||||||
foreach ($this->default_event_types_repository->getAll() as $default_event_type) {
|
foreach ($this->default_event_types_repository->getAll() as $default_event_type) {
|
||||||
$summit->addEventType($default_event_type->buildType($summit));
|
$summit->addEventType($default_event_type->buildType($summit));
|
||||||
}
|
}
|
||||||
|
|
||||||
$summit->seedDefaultEmailFlowEvents();
|
$summit->seedDefaultEmailFlowEvents();
|
||||||
|
|
||||||
|
$summit->seedDefaultAccessLevelTypes();
|
||||||
|
|
||||||
$this->summit_repository->add($summit);
|
$this->summit_repository->add($summit);
|
||||||
|
|
||||||
return $summit;
|
return $summit;
|
||||||
|
Loading…
Reference in New Issue
Block a user