<?php
namespace App\Controller;
use PhpParser\Node\Stmt\Foreach_;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
class FormationController extends AbstractController
{
/**
* @Route("/formation.html", name="formation")
*/
public function index(): Response
{
$meta = array(
'title' => \App\Ressources\metadata::FORM_ACC_TITLE,
'description' => \App\Ressources\metadata::FORM_ACC_DESCRIPTION,
'keyword' => \App\Ressources\metadata::FORM_ACC_KEYWORD
);
$headerAirT = array();
$headerAirT[] = 'Authorization: Bearer keyI32yOJYG5jgN46';
$ch_Air_API = curl_init();
curl_setopt($ch_Air_API, CURLOPT_CUSTOMREQUEST, 'GET' );
curl_setopt($ch_Air_API, CURLOPT_HTTPHEADER,$headerAirT);
curl_setopt($ch_Air_API, CURLOPT_URL,'https://api.airtable.com/v0/appdOHxiaaxIUO8r9/Suivi_Formation?filterByFormula=Date_Debut_Formation+%3E+TODAY()&sort%5B0%5D%5Bfield%5D=Date_Debut_Formation&sort%5B0%5D%5Bdirection%5D=asc');
curl_setopt($ch_Air_API, CURLOPT_RETURNTRANSFER, true);
$data = json_decode(curl_exec($ch_Air_API));
$listeForm = array();
//var_dump($data);
foreach ($data->{'records'} as $form){
//var_dump($form->{'fields'}->{'Formation'}['0']);
$info = $this->getformationInfo($form->{'fields'}->{'Formation'}['0']);
$listeForm [] = array(
'Nom' => $info['Name'],
'Date' => $form->{'fields'}->{'Date_Debut_Formation'},
'URL' => $info['URL'],
);
}
curl_close($ch_Air_API);
//var_dump($listeForm);
return $this->render('main/Pages/Formation/formation_Accueil.html.twig', [
'controller_name' => 'FormationController',
'meta' => $meta,
'data' => $data,
'liste' => $listeForm
]);
}
/**
* @Route("/formation-coonduite-handicap-Ergo.html", name="formation-ch-ergo")
*/
public function formationActionCHErgo(): Response
{
$meta = array(
'title' => \App\Ressources\metadata::FORM_CH_ERGO_TITLE,
'description' => \App\Ressources\metadata::FORM_CH_ERGO_DESCRIPTION,
'keyword' => \App\Ressources\metadata::FORM_CH_ERGO_KEYWORD
);
$AT_id_formation = "rec9tMzjG0rJK9P9l";
$formdate = $this->getformationdate($AT_id_formation);
return $this->render('main/Pages/Formation/formation_Prog_CH_Ergo.html.twig', [
'controller_name' => 'FormationController',
'meta' => $meta,
'formdate' => $formdate
]);
}
/**
* @Route("/formation-conduite-handicap-enseignant-conduite.html", name="formation-ch-ensc")
*/
public function formationActionCHEnsC(): Response
{
$meta = array(
'title' => \App\Ressources\metadata::FORM_CH_ENSC_TITLE,
'description' => \App\Ressources\metadata::FORM_CH_ENSC_DESCRIPTION,
'keyword' => \App\Ressources\metadata::FORM_CH_ENSC_KEYWORD
);
$AT_id_formation = "recfyg9AdVxFsV1wW";
$formdate = $this->getformationdate($AT_id_formation);
return $this->render('main/Pages/Formation/formation_Prog_CH_EnsC.html.twig', [
'controller_name' => 'FormationController',
'meta' => $meta,
'formdate' => $formdate
]);
}
/**
* @Route("/formation-conduite-handicap-esat.html", name="formation-ch-esat")
*/
public function formationActionCHEsat(): Response
{
$meta = array(
'title' => \App\Ressources\metadata::FORM_CH_ESAT_TITLE,
'description' => \App\Ressources\metadata::FORM_CH_ESAT_DESCRIPTION,
'keyword' => \App\Ressources\metadata::FORM_CH_ESAT_KEYWORD
);
return $this->render('main/Pages/Formation/formation_Prog_CH_Esat.html.twig', [
'controller_name' => 'FormationController',
'meta' => $meta
]);
}
/**
* @Route("/formation-conduite-handicap-visio-conference.html", name="formation-visio-ch")
*/
public function formationActionVisioCH(): Response
{
$meta = array(
'title' => \App\Ressources\metadata::FORM_CH_VISIO_TITLE,
'description' => \App\Ressources\metadata::FORM_CH_VISIO_DESCRIPTION,
'keyword' => \App\Ressources\metadata::FORM_CH_VISIO_KEYWORD
);
$AT_id_formation_M1 = "recl8gu5cBMCm8f0w";
$formdateM1 = $this->getformationdate($AT_id_formation_M1);
$AT_id_formation_M2 = "rec8u8PE8fr34BMnP";
$formdateM2 = $this->getformationdate($AT_id_formation_M2);
$AT_id_formation_M3 = "recOYa7Q00OKSCR2A";
$formdateM3 = $this->getformationdate($AT_id_formation_M3);
return $this->render('main/Pages/Formation/formation_Prog_Visio_C&H.html.twig', [
'controller_name' => 'FormationController',
'meta' => $meta,
'formdateM1' => $formdateM1,
'formdateM2' => $formdateM2,
'formdateM3' => $formdateM3,
]);
}
/**
* @Route("/formation-conduite-dys-enseignant-conduite.html", name="formation-cd-ensc")
*/
public function formationActionCDEnsC(): Response
{
$meta = array(
'title' => \App\Ressources\metadata::FORM_CD_ENSC_TITLE,
'description' => \App\Ressources\metadata::FORM_CD_ENSC_DESCRIPTION,
'keyword' => \App\Ressources\metadata::FORM_CD_ENSC_KEYWORD
);
$AT_id_formation = "recvvWhMOqrWpDPRU";
$formdate = $this->getformationdate($AT_id_formation);
return $this->render('main/Pages/Formation/formation_Prog_CD_EnsC.html.twig', [
'controller_name' => 'FormationController',
'meta' => $meta,
'formdate' => $formdate
]);
}
function getformationInfo($id){
$headerAirT = array();
$headerAirT[] = 'Authorization: Bearer keyI32yOJYG5jgN46';
$ch_Air_API = curl_init();
curl_setopt($ch_Air_API, CURLOPT_CUSTOMREQUEST, 'GET' );
curl_setopt($ch_Air_API, CURLOPT_HTTPHEADER,$headerAirT);
curl_setopt($ch_Air_API, CURLOPT_URL,'https://api.airtable.com/v0/appdOHxiaaxIUO8r9/Liste_Formation/' . $id);
curl_setopt($ch_Air_API, CURLOPT_RETURNTRANSFER, true);
$data = json_decode(curl_exec($ch_Air_API));
//var_dump($data);
$info['Name'] = $data->{'fields'}->{'Name'};
$info['URL'] = $data->{'fields'}->{'Url_Presentation'};
return $info;
}
function getformationdate($id){
$headerAirT = array();
$headerAirT[] = 'Authorization: Bearer keyI32yOJYG5jgN46';
$ch_Air_API = curl_init();
curl_setopt($ch_Air_API, CURLOPT_CUSTOMREQUEST, 'GET' );
curl_setopt($ch_Air_API, CURLOPT_HTTPHEADER,$headerAirT);
curl_setopt($ch_Air_API, CURLOPT_URL,'https://api.airtable.com/v0/appdOHxiaaxIUO8r9/Liste_Formation/' . $id);
curl_setopt($ch_Air_API, CURLOPT_RETURNTRANSFER, true);
$data = json_decode(curl_exec($ch_Air_API));
if (isset($data->{'fields'}->{'Realisation_Formation'})) {
$listeDate[] = array();
foreach ($data->{'fields'}->{'Realisation_Formation'} as $form) {
curl_setopt($ch_Air_API, CURLOPT_CUSTOMREQUEST, 'GET' );
curl_setopt($ch_Air_API, CURLOPT_HTTPHEADER,$headerAirT);
curl_setopt($ch_Air_API, CURLOPT_URL,'https://api.airtable.com/v0/appdOHxiaaxIUO8r9/Suivi_Formation/' . $form);
curl_setopt($ch_Air_API, CURLOPT_RETURNTRANSFER, true);
$dataform = json_decode(curl_exec($ch_Air_API));
//var_dump($dataform);
$listeDate[] = $dataform->{'fields'}->{'Date_Debut_Formation'};
}
return $listeDate;
}else{
return $listeDate = NULL;
}
}
}