diff --git a/main/mySpace/myStudents.php b/main/mySpace/myStudents.php index c25ed766ab..7030373795 100755 --- a/main/mySpace/myStudents.php +++ b/main/mySpace/myStudents.php @@ -665,6 +665,8 @@ $userGroups = $userGroupManager->getNameListByUser( + + getNameListByUser( '; + + $startDate = UserManager::get_extra_user_data_by_field( + $user_info['user_id'], + 'datedebutstage' + ); + + $endDate = UserManager::get_extra_user_data_by_field( + $user_info['user_id'], + 'datefinstage' + ); + + $extraField = new ExtraField('user'); + $extraFieldInfoStart = $extraField->get_handler_field_info_by_field_variable( + 'datedebutstage' + ); + + $extraFieldInfoEnd = $extraField->get_handler_field_info_by_field_variable( + 'datefinstage' + ); + + echo ''; + echo $extraFieldInfoStart['display_text'].' : '; + if (isset($startDate['datedebutstage'])) { + echo $startDate['datedebutstage']; + } + echo ''; + + echo ''; + echo $extraFieldInfoEnd['display_text'].' : '; + if (isset($endDate['datefinstage'])) { + echo $endDate['datefinstage']; + } + echo ''; + + /** @var ExtraFieldSavedSearch $saved */ + $search = [ + 'user' => $student_id, + ]; + + $items = $em->getRepository('ChamiloCoreBundle:ExtraFieldSavedSearch')->findBy($search); + $listVariables = [ + 'ecouter', + 'lire', + 'ecrire', + 's_exprimer_oralement_en_continu', + 'participer_a_une_conversation', + ]; + + $extraField = new ExtraField('session'); + + if ($items) { + /** @var ExtraFieldSavedSearch $item */ + foreach ($items as $item) { + $variable = $item->getField()->getVariable(); + if (in_array($variable, $listVariables)) { + $extraFieldInfo = $extraField->get_handler_field_info_by_field_variable($variable); + if ($extraFieldInfo) { + echo ''; + $options = $extraFieldInfo['options']; + $optionValues = array_column($options, 'display_text', 'option_value'); + //var_dump($optionValues); + echo $extraFieldInfo['display_text'].' : '; + $answers = $item->getValue(); + $list = []; + if (is_array($answers)) { + foreach ($answers as $answer) { + $list[] = $optionValues[$answer]; + } + } else { + foreach ($options as $option) { + $answers = trim($answers, '.'); + $answers = str_replace('-', '_', $answers); + + if ($option['option_value'] != api_underscore_to_camel_case($answers)) { + continue; + } + + $list[] = $option['display_text']; + } + } + echo ''; + + echo ''; + } + } + } + } + + // Display timezone if the user selected one and if the admin allows the use of user's timezone $timezone = null; $timezone_user = UserManager::get_extra_user_data_by_field( @@ -800,6 +902,18 @@ $userGroups = $userGroupManager->getNameListByUser( echo ''; } } + + $icon = ' '.Display::url( + get_lang('Generate'), + api_get_self().'?action=generate_certificate&student='.$student_id.'&cidReq='.$course_code.'&course='.$course_code, + ['class' => 'btn btn-primary btn-xs'] + ); + + echo ' + '; + echo get_lang('Certificate').' '.$icon; + echo ''; + ?> diff --git a/main/template/rainbow/skill/student_report.tpl b/main/template/rainbow/skill/student_report.tpl new file mode 100644 index 0000000000..e2f36d7abb --- /dev/null +++ b/main/template/rainbow/skill/student_report.tpl @@ -0,0 +1,52 @@ + + +

{{ 'MyBadges' | get_lang }}

+

+ {{ 'MySkillsReportIntroduction' | get_lang }} +

+{% if rows %} +
+ {% if skill_table %} + {{ skill_table }} + {% endif %} +
+
{{ 'SkillsHistory' | get_lang }}
+ + + + + + + + + + + {% for row in rows %} + + + + + {% if row.course_name %} + + {% else %} + + {% endif %} + + {% endfor %} + +
{{ 'Badge' | get_lang }}{{ 'Skill' | get_lang }}{{ 'Date' | get_lang }}{{ 'Course' | get_lang }}
{{ row.skill_badge }}{{ row.skill_name }}{{ row.achieved_at }} + {{ row.course_name }} + {{ row.course_name }} + -
+{% endif %} \ No newline at end of file diff --git a/user_portal.php b/user_portal.php index a242d2badb..1145b85215 100755 --- a/user_portal.php +++ b/user_portal.php @@ -336,9 +336,9 @@ $controller->tpl->assign('user_image_block', $controller->return_user_image_bloc //$controller->tpl->assign('course_block', $controller->return_course_block()); //$controller->tpl->assign('navigation_course_links', $controller->return_navigation_links()); //$controller->tpl->assign('search_block', $controller->return_search_block()); -//$controller->tpl->assign('notice_block', $controller->return_notice()); +$controller->tpl->assign('notice_block', $controller->return_notice()); //$controller->tpl->assign('classes_block', $controller->returnClassesBlock()); -//$controller->tpl->assign('skills_block', $controller->returnSkillLinks()); +$controller->tpl->assign('skills_block', $controller->returnSkillLinks()); $historyClass = ''; if (!empty($_GET['history'])) {