Set api role for rider api user. #617
This commit is contained in:
parent
ff5e747d7a
commit
25954afe63
1 changed files with 18 additions and 1 deletions
|
|
@ -11,6 +11,7 @@ use Symfony\Component\Console\Output\OutputInterface;
|
||||||
use Doctrine\ORM\EntityManagerInterface;
|
use Doctrine\ORM\EntityManagerInterface;
|
||||||
|
|
||||||
use Catalyst\APIBundle\Entity\User as APIUser;
|
use Catalyst\APIBundle\Entity\User as APIUser;
|
||||||
|
use Catalyst\APIBundle\Entity\Role as APIRole;
|
||||||
|
|
||||||
use App\Entity\Rider;
|
use App\Entity\Rider;
|
||||||
|
|
||||||
|
|
@ -31,7 +32,8 @@ class CreateRiderAPIUserCommand extends Command
|
||||||
{
|
{
|
||||||
$this->setName('api:user-create-for-rider')
|
$this->setName('api:user-create-for-rider')
|
||||||
->setDescription('Create API users for existing riders.')
|
->setDescription('Create API users for existing riders.')
|
||||||
->setHelp('Creates API users for existing riders.');
|
->setHelp('Creates API users for existing riders.')
|
||||||
|
->addArgument('role_id', InputArgument::REQUIRED, 'Role ID for api_user.');
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function execute(InputInterface $input, OutputInterface $output)
|
protected function execute(InputInterface $input, OutputInterface $output)
|
||||||
|
|
@ -40,6 +42,15 @@ class CreateRiderAPIUserCommand extends Command
|
||||||
// get all existing riders
|
// get all existing riders
|
||||||
$riders = $this->em->getRepository(Rider::class)->findAll();
|
$riders = $this->em->getRepository(Rider::class)->findAll();
|
||||||
|
|
||||||
|
// get role for rider api user
|
||||||
|
$role_id = $input->getArgument('role_id');
|
||||||
|
$role = $this->em->getRepository(APIRole::class)->find($role_id);
|
||||||
|
if ($role == null)
|
||||||
|
{
|
||||||
|
error_log('Cannot find role with id ' . $role_id);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
foreach ($riders as $rider)
|
foreach ($riders as $rider)
|
||||||
{
|
{
|
||||||
// create api user for each rider
|
// create api user for each rider
|
||||||
|
|
@ -47,6 +58,9 @@ class CreateRiderAPIUserCommand extends Command
|
||||||
// Secret and API keys are generated in constructor
|
// Secret and API keys are generated in constructor
|
||||||
$api_user = new APIUser();
|
$api_user = new APIUser();
|
||||||
|
|
||||||
|
// set enabled to true
|
||||||
|
$api_user->setEnabled(true);
|
||||||
|
|
||||||
// set name to rider's last name + first name
|
// set name to rider's last name + first name
|
||||||
$rider_name = $rider->getLastName() . '_' . $rider->getFirstName();
|
$rider_name = $rider->getLastName() . '_' . $rider->getFirstName();
|
||||||
$api_user->setName($rider_name);
|
$api_user->setName($rider_name);
|
||||||
|
|
@ -58,6 +72,9 @@ class CreateRiderAPIUserCommand extends Command
|
||||||
$meta = ['rider_id' => $rider->getID()];
|
$meta = ['rider_id' => $rider->getID()];
|
||||||
$api_user->setMetaData($meta);
|
$api_user->setMetaData($meta);
|
||||||
|
|
||||||
|
// set role
|
||||||
|
$api_user->addRole($role);
|
||||||
|
|
||||||
// set rider's api user
|
// set rider's api user
|
||||||
$rider->setAPIUser($api_user);
|
$rider->setAPIUser($api_user);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue