12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- <?php
- /* For licensing terms, see /license.txt */
- use Fhaculty\Graph\Graph;
- require_once __DIR__.'/../inc/global.inc.php';
- if (api_get_configuration_value('allow_career_diagram') == false) {
- api_not_allowed(true);
- }
- $htmlHeadXtra[] = api_get_js('jsplumb2.js');
- $sessionCategories = UserManager::get_sessions_by_category(api_get_user_id(), false);
- $content = '';
- $extraFieldValue = new ExtraFieldValue('session');
- $extraFieldValueCareer = new ExtraFieldValue('career');
- $career = new Career();
- foreach ($sessionCategories as $category) {
- $sessions = $category['sessions'];
- foreach ($sessions as $session) {
- $sessionId = $session['session_id'];
- // Getting session extra field 'external_career_id'
- $item = $extraFieldValue->get_values_by_handler_and_field_variable(
- $sessionId,
- 'external_career_id'
- );
- if ($item && isset($item['value']) && !empty($item['value'])) {
- // External career id
- $externalCareerId = $item['value'];
- // Getting career id from external career id
- $itemCareer = $extraFieldValueCareer->get_item_id_from_field_variable_and_field_value(
- 'external_career_id',
- $externalCareerId
- );
- if ($itemCareer && !empty($itemCareer['item_id'])) {
- $careerId = $itemCareer['item_id'];
- $careerInfo = $career->find($careerId);
- if (!empty($careerInfo)) {
- $diagram = $extraFieldValueCareer->get_values_by_handler_and_field_variable(
- $careerId,
- 'career_diagram'
- );
- if ($diagram && !empty($diagram['value'])) {
- /** @var Graph $graph */
- $graph = UnserializeApi::unserialize('career', $diagram['value']);
- $content .= Career::renderDiagram($careerInfo, $graph);
- }
- }
- }
- }
- }
- }
- $view = new Template('');
- $view->assign('content', $content);
- $view->display_one_col_template();
|