Commit 07dc4ce2 authored by Chrystel Moreau's avatar Chrystel Moreau
Browse files

mise à jour de la dernière version

parent c52088d8
......@@ -4,7 +4,7 @@
// Action factories
// -----------------------------------------------------------------------------
$container[App\Action\HomeAction::class] = function ($c) {
return new App\Action\HomeAction($c->get('view'), $c->get('logger'));
return new App\Action\HomeAction($c->get('view'), $c->get('logger'), $c->get('settings'));
};
$container[App\Action\VerifEmailAction::class] = function ($c) {
......
......@@ -101,6 +101,10 @@ $app->get('/dashboard-admin', App\Action\DashboardAdminAction::class)
->add(App\Middleware\TokenMiddleware::class)
->setName('dashboard_admin_home');
$app->get('/dashboard-admin-profil', App\Action\DashboardAction::class)
->add(App\Middleware\TokenMiddleware::class)
->setName('dashboard_admin_profil');
$app->post('/admin-valid-role', App\Action\AdminValidRoleAction::class)
->add(App\Middleware\TokenMiddleware::class)
->setName('admin_valid_role');
......
......@@ -46,7 +46,7 @@ return [
'j2' => '2017-07-05',
'j3' => '2017-07-06',
'j4' => '2017-07-07',
'version' => 4, // 1 version de base, 2 version avec le sondage actif, 3 version avec racap sondage & parcours, 4 version durant les JDEVs
'version' => 3, // 1 version de base, 2 version avec le sondage actif, 3 version avec le parcours actif , 4 version durant les JDEVs, 5 apres les JDEVs
]
]
];
......@@ -30,14 +30,27 @@ final class DashboardAction
$token = $params['token'];
$email = $request->getAttribute('email');
$participant = $this->getParticipant($email);
$this->view->render($response, 'dashboard_home.twig', [
'page' => 'dashboard',
$roleSI = $request->getAttribute('roleSI');
$a = [
'token' => $token,
'participant' => $participant,
'role_si'=> $roleSI,
'jdev' => $this->settings['jdev']
]);
];
// $this->view->render($response, 'dashboard_home.twig', [
// 'page' => 'dashboard',
// 'token' => $token,
// 'participant' => $participant,
// 'jdev' => $this->settings['jdev']
// ]);
if ( ($roleSI == 'admin') || ($roleSI == 'clo') || ($roleSI == 'clo_pgm') ){
$this->view->render($response, 'dashboard_admin_profil.twig', $a);
}
else {
$this->view->render($response, 'dashboard_home.twig', $a);
}
return $response;
}
......
......@@ -36,6 +36,7 @@ final class DashboardAdminSessionAgendaAction {
$agenda = $this->em->find('App\Entity\Agenda', $params['agenda_id']);
$participants = $agenda->getParticipants();
$formation = $agenda->getFormation();
$intervenants = $this->getIntervenants();
$a = [
'page' => 'dashboard-admin-session-agenda',
......@@ -44,11 +45,19 @@ final class DashboardAdminSessionAgendaAction {
'agenda' => $agenda,
'formation'=> $formation,
'participants' => $participants,
'intervenants' => $intervenants,
'jdev' => $this->settings['jdev']
];
$this->view->render($response, 'dashboard_admin_session_agenda.twig', $a);
return $response;
}
private function getIntervenants()
{
$dql = "SELECT distinct p.nom,p.id,p.prenom FROM App\Entity\ParticipantContribution pc LEFT JOIN pc.participant p where pc.contribution != 5 ORDER BY p.nom ASC";
$query = $this->em->createQuery($dql);
return $query->getResult();
}
}
......@@ -10,11 +10,13 @@ final class HomeAction
{
private $view;
private $logger;
private $settings;
public function __construct(Twig $view, LoggerInterface $logger)
public function __construct(Twig $view, LoggerInterface $logger, $settings)
{
$this->view = $view;
$this->logger = $logger;
$this->settings = $settings;
}
public function __invoke(Request $request, Response $response, $args)
......@@ -22,7 +24,8 @@ final class HomeAction
$this->logger->info("Home page action dispatched");
$this->view->render($response, 'home.twig', [
'page' => 'home'
'page' => 'home',
'jdev' => $this->settings['jdev']
]);
return $response;
}
......
......@@ -41,9 +41,11 @@
<a class="dropdown-item navbar-jdev-sitem" href="info-generales">Informations générales</a>
<a class="dropdown-item navbar-jdev-sitem" href="contact">Contacts</a>
</div>
</div>
<a href="connexion" class="navbar-jdev-item navbar-jdev-btn btn-treehouse">Connexion</a>
</div>
{% if jdev.version < 5 %}
<a href="connexion" class="navbar-jdev-item navbar-jdev-btn btn-treehouse">Connexion</a>
{% endif %}
</div>
<!-- Dropdown appearing on mobile only -->
......
......@@ -23,7 +23,8 @@
{% endif %}
{% if role_si == 'clo' %}
<a class="btn btn-default" href="dashboard-admin-participant-gestion?token={{ token }}">Home</a>
<a class="btn btn-default" href="dashboard-admin-profil?token={{ token }}">Home</a>
<a class="btn btn-default" href="dashboard-admin-participant-gestion?token={{ token }}">Inscrits</a><br>
{% if jdev.version >= 4 %}
<a class="btn btn-default" href="dashboard-admin-emargement?token={{ token }}">Emargement</a>
{% endif %}
......@@ -39,7 +40,8 @@
{% if role_si == 'clo_pgm' %}
<a class="btn btn-default" href="dashboard-admin-thematique?token={{ token }}">Home</a>
<a class="btn btn-default" href="dashboard-admin-profil?token={{ token }}">Home</a>
<a class="btn btn-default" href="dashboard-admin-thematique?token={{ token }}">Thématique</a>
<a class="btn btn-default" href="dashboard-admin-sondage-stat?token={{ token }}">Sondage</a>
<a class="btn btn-default" href="dashboard-admin-agenda?token={{ token }}">Agenda Final</a><br>
{% if jdev.version >= 2 %}
......@@ -129,8 +131,13 @@
{% if role_si == 'clo' %}
<li class="navbar-dashboard-item active">
<a href="dashboard-admin-participant-gestion?token={{ token }}"><i class="fa fa-home"></i> Home</a>
<a href="dashboard-admin-profil?token={{ token }}"><i class="fa fa-home"></i> Home</a>
</li>
<li class="navbar-dashboard-item">
<a href="dashboard-admin-participant-gestion?token={{ token }}"
data-toggle="tooltip" data-placement="top" title="Gestion des inscrits">
<i class="fa fa-user"></i> Inscrits</a>
</li>
{% if jdev.version >= 3 %}
<li class="navbar-dashboard-item">
<a href="dashboard-admin-emargement?token={{ token }}"><i class="fa fa-list-alt"></i> Emargement</a>
......@@ -163,8 +170,11 @@
{% endif %}
{% if role_si == 'clo_pgm' %}
<li class="navbar-dashboard-item active">
<a href="dashboard-admin-profil?token={{ token }}"><i class="fa fa-home"></i> Home</a>
</li>
<li class="navbar-dashboard-item">
<a href="dashboard-admin-thematique?token={{ token }}"><i class="fa fa-cogs"></i> Home</a>
<a href="dashboard-admin-thematique?token={{ token }}"><i class="fa fa-cogs"></i> Thématique</a>
</li>
<li class="navbar-dashboard-item">
<a href="dashboard-admin-sondage-stat?token={{ token }}"
......
......@@ -13,13 +13,20 @@
<div id="tabs_agenda" hidden>
<ul>
<li><a href="#tabs_agenda_gestion" active>Gestion de l'agenda</a></li>
<li><a href="#tabs_agenda_gestion" active>
{% if role_si == 'clo' %}
Visualisation par demi-journée de l'agenda
{% else %}
Gestion de l'agenda
{% endif %}
</a>
</li>
<li><a href="#tabs_agenda_visu">Visualisation complète de l'agenda</a></li>
</ul>
<div id="tabs_agenda_gestion">
{% if role_si == 'admin' %}
{% if role_si == 'admin' or role_si == 'clo_pgm' %}
<div class="row">
<a href="dashboard-admin-agenda-form?token={{ token }}" class="btn btn-treehouse pull-right">Ajouter une session dans l'Agenda</a>
</div>
......@@ -112,7 +119,7 @@
<td>{{ agenda.agenda.getDateFin() | date("H:i") }}</td>
<td>{{ agenda.agenda.getDisplay() }}</td>
<td class="text-center">
{% if role_si == 'admin' %}
{% if role_si == 'admin' or role_si == 'clo_pgm' %}
<a href="dashboard-admin-agenda-form?token={{ token }}&agenda_id={{ agenda.agenda.getId() }}"
class="btn btn-sky fa fa-pencil-square-o btn-info"
data-toggle="tooltip" title="Éditer">
......
......@@ -13,7 +13,7 @@
<div id="tabs_participants" hidden>
<ul>
<li><a href="#tabs_participant_gestion" active data-toggle="tooltip" data-placement="top" title="Gestion de l'emargement JDEV de tous les inscrits">Emargement JDEV</a></li>
<li><a href="#tabs_jdev" active data-toggle="tooltip" data-placement="top" title="Gestion de l'emargement JDEV de tous les inscrits">Emargement JDEV</a></li>
<li><a href="#tabs_sessions" data-toggle="tooltip" data-placement="top" title="Liste des emargements des sessions de formation">Emargement sessions de formation</a></li>
</ul>
......@@ -23,10 +23,10 @@
===============================================
-->
{% if role_si == 'admin' or role_si == 'clo'%}
<div id="tabs_participant_gestion">
<div id="tabs_jdev">
{% if participants %}
<div class="table-responsive">
<table id="tab-admin-participants" class="table table-striped table-bordered">
<table id="tab-jdev" class="table table-striped table-bordered">
<thead>
<tr>
<th>Participant</th>
......@@ -84,7 +84,7 @@
{% endfor %}
<hr>
</div>
Vous devez selectionner une formation pour lister les participants et générer la feuille d'émargement.<p>
Vous devez selectionner une formation (dans le tableau ci-dessous) pour lister les participants et générer la feuille d'émargement de cette session.<p>
<form id="form_inscription">
<input type="hidden" id="token" name="token" value="{{ token }}">
......
{% extends "base_dashboard_admin.twig" %}
{% block title %}Admin{% endblock %}
{% block content_dashboard_admin %}
<div class="content-dashboard-admin">
<div class="title-main">
<div class="title-main-content">Gestion des Emargements</div>
</div>
<div class="row">
<div class="col-md-8 col-md-offset-2">
<form id="form_emargement" role="form" data-toggle="validator">
<input type="hidden" id="token" name="token" value="{{ token }}">
<div class="form-group">
<label for="em-thematique">Sélectionnez une thématique</label> <span style="color: red;">*</span>
<select name="em-thematique" id="em-thematique" class="form-control" required>
<option value="0"></option>
{% for thematique in thematiques %}
<option value="{{ thematique.id }}" >{{ thematique.nom }}</option>
{% endfor %}
</select>
</div>
<div class="form-group">
<label for="em-formation">Sélectionnez une formation</label> <span style="color: red;">*</span>
<select name="em-formation" id="em-formation" class="form-control" required disabled>
</select>
</div>
</form>
</div>
</div>
<hr>
{% if participants %}
<div class="panel panel-default" id="inscription">
<div class="panel-heading" id="panel-inscription">Liste des participants {{ formation.getNom()|upper }}</div>
<div class="panel-body">
<div>
<div class="table-responsive">
<table id="tab-emargement-participants" class="table table-striped table-bordered">
<thead>
<tr>
<th>Participant</th>
<th>Email</th>
<th>Emploi</th>
<th>Présence</th>
</tr>
</thead>
<tbody>
{% for participant in participants %}
<tr>
<td>{{ participant.getParticipant().getNom()|upper }} {{ participant.getParticipant().getPrenom() }}</td>
<td><a href="mailto:{{ participant.getParticipant().getEmail() }}"><i class="fa fa-envelope-o"></i></a></td>
<td>{{ participant.getParticipant().getEmploi() }}</td>
<td class="text-center">
{% if participant.getPresent() == true %}
<i class="fa fa-check-circle-o"></i> &nbsp;
<a href="dashboard-admin-emargement-form?token={{ token }}&id={{ participant.id }}&present=false"
class="btn btn-danger btn-admin-nopresent fa fa-check-square-o"
data-toggle="tooltip" title="Invalider la presence aux JDEVs du participant">
</a>
{% else %}
<a href="dashboard-admin-emargement-form?token={{ token }}&id={{ participant.id }}&present=true"
class="btn btn-success btn-admin-present fa fa-check-square-o"
data-toggle="tooltip" title="Valider la presence aux JDEVs du participant">
</a>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
</div>
{% endif %}
</div>
{% endblock %}
......@@ -154,8 +154,7 @@
<td>Organisme</td>
<td>Service</td>
<td>Statut</td>
<td>Paiement</td>
<td>Badge</td>
<td>Paiement</td>
</tr>
</thead>
<tbody>
......@@ -186,12 +185,6 @@
{% else %}
<td><i class="fa fa-pause"></i></td>
{% endif %}
<td class="text-center">
<a target="_blank" href="dashboard-generate-badge?token={{ token }}&email={{ invite.email }}"
class="btn btn-primary fa fa-id-badge btn-info"
data-toggle="tooltip" title="Génération du badge">
</a>
</td>
</tr>
{% endfor %}
</tbody>
......@@ -218,8 +211,7 @@
<td>Organisme</td>
<td>Unité</td>
<td>Statut</td>
<td>Paiement</td>
<td>Badge</td>
<td>Paiement</td>
</tr>
</thead>
<tbody>
......@@ -250,13 +242,6 @@
{% else %}
<td><i class="fa fa-pause"></i></td>
{% endif %}
<td class="text-center">
<a target="_blank" href="dashboard-generate-badge?token={{ token }}&email={{ sponsor.email }}"
class="btn btn-primary fa fa-id-badge btn-info"
data-toggle="tooltip" title="Génération du badge">
</a>
</td>
</tr>
{% endfor %}
</tbody>
......@@ -283,8 +268,7 @@
<td>Organisme</td>
<td>Unité</td>
<td>Statut</td>
<td>Paiement</td>
<td>Badge</td>
<td>Paiement</td>
</tr>
</thead>
<tbody>
......@@ -315,12 +299,6 @@
{% else %}
<td><i class="fa fa-pause"></i></td>
{% endif %}
<td class="text-center">
<a target="_blank" href="dashboard-generate-badge?token={{ token }}&email={{ exposant.email }}"
class="btn btn-primary fa fa-id-badge btn-info"
data-toggle="tooltip" title="Génération du badge">
</a>
</td>
</tr>
{% endfor %}
</tbody>
......@@ -347,8 +325,7 @@
<td>Email</td>
<td>Organisme</td>
<td>Region</td>
<td>Paiement</td>
<td>Badge</td>
<td>Paiement</td>
</tr>
</thead>
<tbody>
......@@ -369,12 +346,6 @@
{% else %}
<td><i class="fa fa-pause"></i></td>
{% endif %}
<td class="text-center">
<a target="_blank" href="dashboard-generate-badge?token={{ token }}&email={{ accompagnant.email }}"
class="btn btn-primary fa fa-id-badge btn-info"
data-toggle="tooltip" title="Génération du badge">
</a>
</td>
</tr>
{% endfor %}
</tbody>
......
......@@ -20,7 +20,7 @@
<tr>
<th>Participant</th>
<th>Email</th>
<th>Inscription</th>
<th>Inscrit</th>
<th>Organisme</th>
<th>Region</th>
<th>Unité</th>
......
{% extends "base_dashboard_admin.twig" %}
{% block title %}Admin{% endblock %}
{% block content_dashboard_admin %}
<div class="content-dashboard">
<div class="title-main">
<div class="title-main-content">Statut de votre inscription aux {{ jdev.label }}</div>
</div>
<div>
<h4><i class="fa fa-id-card-o"></i> Votre inscription</h4>
<div class='inscription'>
<p>
<b>NOM <i class="fa fa-arrow-circle-right"></i></b> {{ participant.getNom() | upper }}<br>
<b>PRENOM <i class="fa fa-arrow-circle-right"></i></b> {{ participant.getPrenom() }}<br>
<b>ROLE <i class="fa fa-arrow-circle-right"></i> {{ participant.getRole() | upper}}</b><br>
{% if participant.getContributions()[0] %}
<b> Contribution <i class="fa fa-arrow-circle-right"></i></b>
<ul>
{% for contribution in participant.getContributions() %}
<li>{{ contribution.getContribution().getLabel() }}</li>
{% endfor %}
</ul>
{% endif %}
</p>
<hr>
<p>
<b>E-MAIL <i class="fa fa-arrow-circle-right"></i></b> {{ participant.getEmail() }}<br>
<b>STATUT <i class="fa fa-arrow-circle-right"></i></b> {{ participant.getStatut() }}<br>
<b>EMPLOI <i class="fa fa-arrow-circle-right"></i></b> {{ participant.getEmploi() }}<br>
<b>ORGANISME DE TUTELLE <i class="fa fa-arrow-circle-right"></i></b> {{ participant.getOrganisme().getLabel() }}<br>
<b>UNITE/SERVICE <i class="fa fa-arrow-circle-right"></i></b> {{ participant.getUnite() }}<br>
<b>REGION <i class="fa fa-arrow-circle-right"></i></b> {{ participant.getRegion() }}<br>
</p>
<hr>
<p>
<b>Réseau/Métier/IT <i class="fa fa-arrow-circle-right"></i></b>
{% if participant.getReseaux()[0] %}
<ul>
{% for reseau in participant.getReseaux() %}
<li>{{ reseau.getReseau().getLabel() }}</li>
{% endfor %}
</ul>
{% else %}
Aucun <br>
{% endif %}
</p>
<p>
<p>
<b>Communauté/Thématique scientifique <i class="fa fa-arrow-circle-right"></i></b>
{% if participant.getCommunautes()[0] %}
<ul>
{% for communaute in participant.getCommunautes() %}
<li> {{ communaute.getCommunaute().getLabel() }}</li>
{% endfor %}
</ul>
{% else %}
Aucune <br>
{% endif %}
</p>
<hr>
<p>
<b>Régime alimentaire <i class="fa fa-arrow-circle-right"></i></b> {{ participant.getRegimeAlimentaire() }}<br>
<b>Personne à mobilité réduite <i class="fa fa-arrow-circle-right"></i></b> {% if participant.getMobiliteReduite() %} oui {% else %} non {% endif %}<br>
<b>Besoin de code wifi <i class="fa fa-arrow-circle-right"></i></b> {% if participant.getCodeWifi() %} oui {% else %} non {% endif %}<br>
<b>Inscrit sur la mailing-liste <i class="fa fa-arrow-circle-right"></i></b> {% if participant.getMailingList() %} oui {% else %} non {% endif %}<br>
<b>Inscrit à l'évènement social <i class="fa fa-arrow-circle-right"></i></b> {% if participant.getEvenementSocial() %} oui {% else %} non {% endif %}<br>
</p>
<hr>
<p>
<a href="dashboard-participant-edit-form?token={{ token }}" class="btn btn-treehouse">Editer mon profil</a>
</p>
</div>
<hr>
{% if not participant.getCloValide() %}
<h4><i class="fa fa-check-square-o"></i> En attente de validation</h4>
<p>Nous avons acté votre inscription aux {{ jdev.label }} en tant que <b>{{ participant.getRole() }}</b>.<br>
Votre inscription nécessite une validation complémentaire par un membre du comité d'oganisation.<br>
Vous recevrez très prochainement un e-mail pour vous prévenir de la validation de votre compte.<br>
</p>
{% elseif participant.getPassPrepaye() %}
<h4><i class="fa fa-check-square-o"></i> Droits d'inscription validés</h4>
<p>Nous avons acté votre inscription aux {{ jdev.label }} en tant que <b>{{ participant.getRole() }}</b>.<br>
Vos frais d'inscription sont pris en charge par votre organisme.<br>
</p>
{% elseif participant.getAccesValide() %}
<h4><i class="fa fa-check-square-o"></i> Droits d'inscription validés</h4>
<p>Nous avons acté votre inscription aux {{ jdev.label }} en tant que <b>{{ participant.getRole() }}</b>.<br>
</p>
{% else %}
<h4><i class="fa fa-credit-card"></i> Finaliser votre inscription</h4>
<p>Nous avons acté votre inscription aux {{ jdev.label }} en tant que <b>{{ participant.getRole() }}</b> avec un {{ participant.getTypeInscription() }}.<br>
Cependant pour que votre inscription soit prise en compte,
vous devez la finaliser par le paiement des frais d'inscription sur
la plate-forme <a href="https://www.azur-colloque.fr/DR12/" target="_blank">AZUR-COLLOQUE</a>
avant la clôture des inscriptions au 30 mai 2017.<br>
Il est important d'aller au bout du processus,
ceci validant votre inscription.<br>
</p>
{% endif %}
{% if participant.getAccesValide() %}
{% if participant.Role() == 'Participant' %}
<hr>
<h4><i class="fa fa-info-circle"></i> Les frais d'inscription couvrent les prestations suivantes</h4>
<ul>
<li>La participation aux journées {{ jdev.label }} (présentations, ateliers, groupes de travail, posters),</li>
<li>Les documents fournis et les goodies,</li>
<li>Les pauses-café, les buffets du midi, le concert et le buffet dînatoire du mercredi soir.</li>
</ul>
<hr>
<!--<p><i class="fa fa-calendar"></i> <i>Ouverture des inscriptions aux ateliers fin avril</i>-->
</p>
{% endif %}
{% endif %}
<p>
<a href="mailto:jdev2017-inscription@univ-amu.fr">
<i class="fa fa-envelope"></i> Contact Inscription
</a>
</p>
</div>
</div>
{% endblock %}
\ No newline at end of file
......@@ -5,7 +5,7 @@
<div class="content-dashboard-admin">
<div class="title-main">
<div class="title-main-content">Session {{ formation.getNom()|upper }}</div>
<input type="hidden" id="form-id" name="form-id" value="{{formation.getNom()}}">
<input type="hidden" id="form-id" name="form-id" value="{{formation.getNom()|upper}}">
</div>
{% if participants|length > 0 %}
......@@ -14,15 +14,31 @@
<div class="panel-body">
<p class="text-right">
Intervenant: <strong>{{ agenda.getFormation().getIntervenant() }}</strong><br />
{% set liste=agenda.getFormation().getIntervenant()|split(',') %}
{% set formateur='' %}
{% for i in 1..agenda.getFormation().getNbIntervenant() %}
{% if liste[i-1] == 0 %}
{% set formateur='Pas encore défini' %}
{% else %}
{% for intervenant in intervenants %}
{% if liste[i-1] == intervenant.id %}
{% if i > 1 %} /
{% set formateur = formateur ~ ' / ' %}
{% endif %}