Commit 87b57f07 authored by Patrick Etcheverry's avatar Patrick Etcheverry

Travail sur la conception d'un scénario

parent fb347011
......@@ -13,6 +13,9 @@ use Sensio\Bundle\FrameworkExtraBundle\Configuration\Security;
use Symfony\Bridge\Doctrine\Form\Type\EntityType;
use ScenarioBundle\Entity\Project;
use ScenarisationProcessBundle\Entity\ScenarisationStage;
use ScenarisationProcessBundle\Entity\QuestionOrder;
use ScenarisationProcessBundle\Entity\Question;
use UserBundle\Entity\User;
/**
......@@ -278,4 +281,49 @@ class PedagogicalScenarioController extends Controller
return $this->redirectToRoute('pedagogicalscenario_define_teachers', array('id' => $pedagogicalScenario->getId(), 'userRole' => "pedagogical-engineer"));
}
public function designAction(PedagogicalScenario $pedagogicalScenario)
{
// Récupérer les étapes de ce scénario pédagogique.
$etapes = $pedagogicalScenario->getScenarisationProcess()->getScenarisationStageOrder();
$em = $this->getDoctrine()->getManager();
// On récupère la liste des formations dans lesquelles le scenarioPedagogique est déjà associé
$dql_etapes = $em->createQuery ('
select etapesOrdre, etapes
FROM ScenarisationProcessBundle:ScenarisationStageOrder etapesOrdre
JOIN etapesOrdre.scenarisationStage etapes
JOIN etapesOrdre.scenarisationProcess p
WHERE p = :scenarisationProcess');
$dql_etapes->setParameter('scenarisationProcess', $pedagogicalScenario->getScenarisationProcess());
return $this->render('ScenarioBundle:pedagogicalscenario:design.html.twig',array(
'etapes' => $dql_etapes->getResult(),
'pedagogicalScenario' => $pedagogicalScenario
));
}
public function stageQuestionsAnswersViewAction(PedagogicalScenario $pedagogicalScenario, ScenarisationStage $scenarisationStage)
{
$em = $this->getDoctrine()->getManager();
// Récupérer les questions de l'étape et pour chaque question récupérer sa réponse
$dql_questionsAndAnswers = $em->createQuery ('
select questionOrders, question
FROM ScenarisationProcessBundle:QuestionOrder questionOrders
JOIN questionOrders.question question
WHERE questionOrders.scenarisationStage = :currentStage
ORDER BY questionOrders.position');
$dql_questionsAndAnswers->setParameter('currentStage', $scenarisationStage);
return $this->render('ScenarioBundle:pedagogicalscenario:stagequestionsanswersview.html.twig', array('questionsAnswers' => $dql_questionsAndAnswers->getResult()));
}
public function stageQuestionsAnswersEditAction(PedagogicalScenario $pedagogicalScenario, ScenarisationStage $scenarisationStage)
{
return $this->render('ScenarioBundle:pedagogicalscenario:stagequestionsanswersedit.html.twig');
}
}
......@@ -23,7 +23,8 @@ class PedagogicalScenarioTypeNew extends AbstractType
'multiple' => false,
'expanded' => false,
'required' => false,
'empty_data' => null
'empty_value' => null,
'placeholder' => '(none)',
));
$builder->add('shortname','text', array( 'label' => 'shortname'));
......
......@@ -60,3 +60,18 @@ pedagogicalscenario_remove_teacher:
path: /{id}/remove-teacher/{teacher}
defaults: { _controller: "ScenarioBundle:PedagogicalScenario:removeTeacher" }
methods: GET
pedagogicalscenario_design:
path: /{id}/design
defaults: { _controller: "ScenarioBundle:PedagogicalScenario:design" }
methods: GET
pedagogicalscenario_questionsanswers_view:
path: /{id}/view/{scenarisationStage}
defaults: { _controller: "ScenarioBundle:PedagogicalScenario:stageQuestionsAnswersView" }
methods: GET
pedagogicalscenario_questionsanswers_edit:
path: /{id}/edit/{scenarisationStage}
defaults: { _controller: "ScenarioBundle:PedagogicalScenario:stageQuestionsAnswersEdit" }
methods: GET
......@@ -9,8 +9,10 @@
<h2>{{ pedagogicalScenario.shortname }} - Enseignant référent : {{ pedagogicalScenario.referentTeacher.firstname }} {{ pedagogicalScenario.referentTeacher.lastname }} </h2>
<hr/>
<p> Liste des enseignants concevant le scénario pédagogique : </p>
{# Si le cours est designé par des enseignants #}
{% if teachersDesigning is not empty %}
{# On parcourt la liste des utilisateurs #}
<table class="table table-striped">
<thead>
......@@ -30,11 +32,11 @@
</tbody>
</table>
{% else %}
<p> Aucun enseignant inscrit dans la conception de ce scénario pédagogique</p>
<p> <i> &nbsp; &nbsp; Aucun enseignant inscrit dans la conception de ce scénario pédagogique </i> </p>
{% endif %}
<p> Liste des enseignants disponibles à la conception : </p>
{% if teachersNotDesigning is not empty %}
<table class="table table-striped">
<thead>
<tr>
......@@ -53,7 +55,7 @@
</tbody>
</table>
{% else %}
<p> Aucun enseignant disponible </p>
<p><i> &nbsp; &nbsp; Aucun enseignant disponible </i> </p>
{% endif %}
<ul>
<li>
......
{% extends 'base.html.twig' %}
{% block body %}
{{ dump() }}
{% if etapes is not empty %}
<table class="table">
<thead>
<tr>
<th>Etape</th>
<th>Nom</th>
<th>Avancement</th>
<th>Ingénieur pédagogique</th>
<th>Enseignant</th>
<th>Exporter</th>
<th>Actions</th>
</tr>
</thead>
<tbody>
{% for stageOrder in etapes %}
<tr>
<td>{{stageOrder.position}}</td>
<td>{{stageOrder.scenarisationStage.title}}</td>
<td>{{stageOrder.scenarisationStage.progress}}%</td>
<td></td>
<td></td>
<td><a href=""> <i class="fa fa-file-pdf-o" aria-hidden="true"></i></a></td>
<td>
<a href="{{ path('pedagogicalscenario_questionsanswers_view', { 'userRole': currentRole, 'id': pedagogicalScenario.id, 'scenarisationStage' : stageOrder.scenarisationStage.id }) }}">
<i class="fa fa-eye" aria-hidden="true"></i>
</a>
<a href="{{ path('pedagogicalscenario_questionsanswers_edit', { 'userRole': currentRole, 'id': pedagogicalScenario.id, 'scenarisationStage' : stageOrder.scenarisationStage.id }) }}">
<i class="fa fa-pencil" aria-hidden="true"></i>
</a>
</td>
</tr>
{% endfor %}
</tbody>
</table>
{% else %}
<p> La démarche suivie par le scénario courant contient aucune étape de scénarisation. </p>
{% endif %}
{% endblock %}
......@@ -21,6 +21,9 @@
<li>
<a href="{{ path('pedagogicalscenario_show', { 'userRole': currentRole, 'id': pedagogicalScenario.id }) }}">{{ 'show'|trans }}</a>
</li>
<li>
<a href="{{ path('pedagogicalscenario_design', { 'userRole': currentRole, 'id': pedagogicalScenario.id }) }}">{{ 'design'|trans }}</a>
</li>
{% if currentRole == "pedagogical-engineer" %}
<li>
<a href="{{ path('pedagogicalscenario_edit', { 'userRole': "pedagogical-engineer", 'id': pedagogicalScenario.id }) }}">{{ 'edit'|trans }}</a>
......
{% extends 'base.html.twig' %}
{% block body %}
{{ dump() }}
<p> prochainement, ici la vue relative à la réponses aux questions et des réponses. </p>
{% endblock %}
{% extends 'base.html.twig' %}
{% block body %}
{{ dump() }}
<p> prochainement, ici la vue relative à la consultation des questions et des réponses. </p>
{% endblock %}
......@@ -213,4 +213,14 @@ class ScenarisationStage
{
return $this->scenarisationStageOrder;
}
/**
* Get progress of answers completion
*
* @return integer
*/
public function getprogress()
{
return 33;
}
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment