diff --git a/classes/output/core/course_renderer.php b/classes/output/core/course_renderer.php
index 120ecc3..3ede56d 100644
--- a/classes/output/core/course_renderer.php
+++ b/classes/output/core/course_renderer.php
@@ -51,6 +51,33 @@ require_once($CFG->dirroot . '/course/renderer.php');
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class course_renderer extends \core_course_renderer {
+
+ // Renderiza caixa de informações de curso
+ // @param $displayCourseInfo indica se deve exibir informações do curso à direita (true)
+ // ou em botão "Mais Informações" (false)
+ public function course_info_box(stdClass $course, $displayCourseInfo = false) {
+ $content = '
';
+
+ $content .= '
';
+ $chelper = new coursecat_helper();
+ $chelper->set_show_courses(self::COURSECAT_SHOW_COURSES_EXPANDED);
+
+ $content .= $this->coursecat_coursebox($chelper, $course, '', $displayCourseInfo);
+ $content .= '
';
+
+ if($displayCourseInfo) {
+ if ($course instanceof stdClass) {
+ $course = new core_course_list_element($course);
+ }
+ $content .= '
';
+ $content .= $chelper->get_course_formatted_summary($course, array('noclean' => true, 'para' => false));
+ $content .= '
';
+ }
+
+ $content .= '
';
+ return $content;
+ }
+
/**
* Renders the list of courses for frontpage and /course
*
@@ -151,7 +178,8 @@ class course_renderer extends \core_course_renderer {
* depend on the course position in list - first/last/even/odd)
* @return string
*/
- protected function coursecat_coursebox(coursecat_helper $chelper, $course, $additionalclasses = '') {
+
+ protected function coursecat_coursebox(coursecat_helper $chelper, $course, $additionalclasses = '', $displayCourseInfo = false) {
global $CFG;
if (!isset($this->strings->summary)) {
$this->strings->summary = get_string('summary');
@@ -176,10 +204,12 @@ class course_renderer extends \core_course_renderer {
'data-courseid' => $course->id,
'data-type' => self::COURSECAT_TYPE_COURSE,
));
- $content .= $this->coursecat_coursebox_content($chelper, $course);
+ $content .= $this->coursecat_coursebox_content($chelper, $course, $displayCourseInfo);
$content .= html_writer::end_tag('div');
+
// End coursebox.
$content .= html_writer::end_tag('div');
+
// End col-md-4.
return $content;
}
@@ -192,7 +222,7 @@ class course_renderer extends \core_course_renderer {
* @param stdClass|core_course_list_element $course
* @return string
*/
- protected function coursecat_coursebox_content(coursecat_helper $chelper, $course) {
+ protected function coursecat_coursebox_content(coursecat_helper $chelper, $course, $displayCourseInfo = false) {
if ($course instanceof stdClass) {
$course = new core_course_list_element($course);
}
@@ -242,7 +272,7 @@ class course_renderer extends \core_course_renderer {
$content .= 'Inscrever';
$content .= html_writer::end_tag('div');
}
- //if ($course->has_summary() && false) {
+ if (!$displayCourseInfo) {
$content .= html_writer::start_tag('div', array('class' => 'btn btn-mais-info m-2',
'id' => "course-popover-{$course->id}", 'role' => 'button', 'data-region' => 'popover-region-toggle',
'data-toggle' => 'popover', 'data-placement' => 'right',
@@ -250,7 +280,7 @@ class course_renderer extends \core_course_renderer {
array('noclean' => true, 'para' => false)), 'data-html' => 'true', 'tabindex' => '0', 'data-trigger' => 'focus'));
$content .= 'Mais informações';
$content .= html_writer::end_tag('div');
- //}
+ }
$content .= html_writer::end_tag('div'); // End summary.
return $content;