diff --git a/main/inc/ajax/sequence.ajax.php b/main/inc/ajax/sequence.ajax.php
index 55d08443d0..d7c119e8a8 100644
--- a/main/inc/ajax/sequence.ajax.php
+++ b/main/inc/ajax/sequence.ajax.php
@@ -47,6 +47,9 @@ switch ($action) {
try {
$graphImage = $graphviz->createImageSrc($graph);
+ //echo $graphviz->createScript($graph);
+ //$graphviz->display($graph);
+
echo Display::img(
$graphImage,
get_lang('GraphDependencyTree'),
@@ -130,7 +133,7 @@ switch ($action) {
$link .= '
'.$resourceName.'
';
$link .= Display::tag(
'button',
- $id,
+ $resourceName,
[
'class' => 'sequence-id',
'title' => get_lang('UseAsReference'),
@@ -344,16 +347,24 @@ switch ($action) {
$main = $graph->createVertex($id);
}
+ $item = $sequenceRepository->getItem($id, $type);
+ $main->setAttribute('graphviz.shape', 'record');
+ $main->setAttribute('graphviz.label', $item->getName());
+
foreach ($parents as $parentId) {
+ $item = $sequenceRepository->getItem($parentId, $type);
if ($graph->hasVertex($parentId)) {
$parent = $graph->getVertex($parentId);
if (!$parent->hasEdgeTo($main)) {
- $parent->createEdgeTo($main);
+ $newEdge = $parent->createEdgeTo($main);
}
} else {
$parent = $graph->createVertex($parentId);
- $parent->createEdgeTo($main);
+ $newEdge = $parent->createEdgeTo($main);
}
+
+ $parent->setAttribute('graphviz.shape', 'record');
+ $parent->setAttribute('graphviz.label', $item->getName());
}
foreach ($parents as $parentId) {
@@ -426,8 +437,10 @@ switch ($action) {
$courseController = new CoursesController();
$view = new Template(null, false, false, false, false, false);
$view->assign('sequences', $sequenceList);
+ $view->assign('sequence_type', $type);
$view->assign('allow_subscription', $allowSubscription);
+
if ($allowSubscription) {
$view->assign(
'subscribe_button',
diff --git a/main/template/default/sequence_resource/course_requirements.tpl b/main/template/default/sequence_resource/course_requirements.tpl
index 7d2611fb79..6a28233d24 100644
--- a/main/template/default/sequence_resource/course_requirements.tpl
+++ b/main/template/default/sequence_resource/course_requirements.tpl
@@ -1,6 +1,6 @@
-{% for item in sequences %}
+{% for key, item in sequences %}
{{ item.name }}
{% for course in item.requirements %}
@@ -26,6 +26,20 @@
{% endif %}
{% endfor %}
+
+
+ {{ graph }}
{% endfor %}
{% if allow_subscription %}
diff --git a/src/Chamilo/CoreBundle/Entity/Course.php b/src/Chamilo/CoreBundle/Entity/Course.php
index ce484460a2..bda7088446 100644
--- a/src/Chamilo/CoreBundle/Entity/Course.php
+++ b/src/Chamilo/CoreBundle/Entity/Course.php
@@ -600,6 +600,11 @@ class Course
return $this->title;
}
+ public function getName()
+ {
+ return $this->getTitle();
+ }
+
/**
* @return string
*/
diff --git a/src/Chamilo/CoreBundle/Entity/Repository/SequenceRepository.php b/src/Chamilo/CoreBundle/Entity/Repository/SequenceRepository.php
index c5ad6099c1..f06a1b6995 100644
--- a/src/Chamilo/CoreBundle/Entity/Repository/SequenceRepository.php
+++ b/src/Chamilo/CoreBundle/Entity/Repository/SequenceRepository.php
@@ -48,6 +48,27 @@ class SequenceRepository extends EntityRepository
return $list;
}
+ public function getItem($itemId, $type)
+ {
+ $resource = null;
+ switch ($type) {
+ case SequenceResource::COURSE_TYPE:
+ $repo = $this->getEntityManager()->getRepository('ChamiloCoreBundle:Course');
+
+ break;
+ case SequenceResource::SESSION_TYPE:
+ $repo = $this->getEntityManager()->getRepository('ChamiloCoreBundle:Session');
+
+ break;
+ }
+
+ if ($repo) {
+ $resource = $repo->find($itemId);
+ }
+
+ return $resource;
+ }
+
/**
* @param int $id
*/
diff --git a/src/Chamilo/CoreBundle/Entity/Repository/SequenceResourceRepository.php b/src/Chamilo/CoreBundle/Entity/Repository/SequenceResourceRepository.php
index 4217efaea6..81093f924c 100644
--- a/src/Chamilo/CoreBundle/Entity/Repository/SequenceResourceRepository.php
+++ b/src/Chamilo/CoreBundle/Entity/Repository/SequenceResourceRepository.php
@@ -366,8 +366,6 @@ class SequenceResourceRepository extends EntityRepository
true
);
- //var_dump($gradebook, $userFinishedCourse);
-
if (0 === $sessionId) {
if (false === $userFinishedCourse) {
$status = false;