Skip to content
Snippets Groups Projects
Commit 046d810c authored by François Agneray's avatar François Agneray
Browse files

Generation code formation

parent 7ed03d37
No related branches found
No related tags found
No related merge requests found
......@@ -104,6 +104,10 @@ $container[App\Action\DashboardParticipantPresenceAction::class] = function ($c)
return new App\Action\DashboardParticipantPresenceAction($c->get('view'), $c->get('logger'), $c->get('em'));
};
$container[App\Action\DashboardAdminGenCodeFormationAction::class] = function ($c) {
return new App\Action\DashboardAdminGenCodeFormationAction($c->get('logger'), $c->get('em'));
};
// =============================================================
// Dashboard Admin
......
......@@ -223,3 +223,7 @@ $app->get('/dashboard-admin-annuler-session', App\Action\DashboardAdminAnnulerSe
$app->map(['GET', 'POST'],'/dashboard-admin-participant-parcours-formation', App\Action\DashboardAdminParticipantParcoursFormationAction::class)
->add(App\Middleware\TokenMiddleware::class)
->setName('dashboard_participant_parcours_formation');
$app->map(['GET', 'POST'],'/dashboard-admin-gen-code-formation', App\Action\DashboardAdminGenCodeFormationAction::class)
->add(App\Middleware\TokenMiddleware::class)
->setName('dashboard_admin_gen_code_formation');
<?php
namespace App\Action;
use Slim\Views\Twig;
use Psr\Log\LoggerInterface;
use Doctrine\ORM\EntityManagerInterface;
use Psr\Http\Message\ServerRequestInterface as Request;
use Psr\Http\Message\ResponseInterface as Response;
final class DashboardAdminGenCodeFormationAction
{
private $logger;
private $em;
public function __construct(LoggerInterface $logger, EntityManagerInterface $em)
{
$this->logger = $logger;
$this->em = $em;
}
public function __invoke(Request $request, Response $response, $args)
{
$this->logger->info("dashboard admin generation code formation");
$params = $request->getQueryParams();
$token = $params['token'];
$roleSI = $request->getAttribute('roleSI');
if ( ($roleSI != 'admin') ){
return $response->withStatus(401);
}
$agendaRepository = $this->em->getRepository('App\Entity\Agenda');
$agendas = $agendaRepository->findAll();
foreach($agendas as $agenda) {
if (empty($agenda->getCodeFormation())) {
$agenda->setCodeFormation(uniqid());
}
}
$this->em->flush();
return $response->write('ok');
}
public function getAgendas() {
$dql = "SELECT agenda ";
$dql .= "FROM App\Entity\Agenda a ";
$query = $this->em->createQuery($dql);
return $query->getResult();
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment