'index.php', 'name' => get_lang('PlatformAdmin'), ]; $interbreadcrumb[] = [ 'url' => 'career_dashboard.php', 'name' => get_lang('CareersAndPromotions'), ]; $action = $_GET['action'] ?? null; $check = Security::check_token('request'); $token = Security::get_token(); if ($action === 'add') { $interbreadcrumb[] = ['url' => 'careers.php', 'name' => get_lang('Careers')]; $tool_name = get_lang('Add'); } elseif ($action === 'edit') { $interbreadcrumb[] = ['url' => 'careers.php', 'name' => get_lang('Careers')]; $interbreadcrumb[] = ['url' => '#', 'name' => get_lang('Edit')]; $tool_name = get_lang('Edit'); } else { $tool_name = get_lang('Careers'); } //jqgrid will use this URL to do the selects $url = api_get_path(WEB_AJAX_PATH).'model.ajax.php?a=get_careers'; //The order is important you need to check the $column variable in the model.ajax.php file $columns = [get_lang('Name'), get_lang('Description'), get_lang('Actions')]; // Column config $column_model = [ [ 'name' => 'name', 'index' => 'name', 'width' => '200', 'align' => 'left', ], [ 'name' => 'description', 'index' => 'description', 'width' => '400', 'align' => 'left', 'sortable' => 'false', ], [ 'name' => 'actions', 'index' => 'actions', 'width' => '100', 'align' => 'left', 'formatter' => 'action_formatter', 'sortable' => 'false', ], ]; $extra_params['autowidth'] = 'true'; $extra_params['height'] = 'auto'; $diagramLink = ''; $allow = api_get_configuration_value('allow_career_diagram'); if ($allow) { $careerDiagramUrl = api_get_path(WEB_CODE_PATH).'admin/career_diagram.php'; if (api_get_configuration_value('use_career_external_id_as_identifier_in_diagrams')) { $diagramLink = ''.get_lang('Diagram').''; } else { $diagramLink = ''.get_lang('Diagram').''; } } // With this function we can add actions to the jgrid (edit, delete, etc) if (api_is_platform_admin()) { $actionLinks = 'function action_formatter(cellvalue, options, rowObject) { return \''.Display::return_icon('edit.png', get_lang('Edit'), '', ICON_SIZE_SMALL).''. $diagramLink. ' '.Display::return_icon('copy.png', get_lang('Copy'), '', ICON_SIZE_SMALL).''. ' '.Display::return_icon('delete.png', get_lang('Delete'), '', ICON_SIZE_SMALL).''. '\'; }'; } else { $actionLinks = "function action_formatter(cellvalue, options, rowObject) { return '".$diagramLink."'; }"; } $career = new Career(); $content = ''; $listUrl = api_get_self(); // Action handling: Add switch ($action) { case 'add': api_protect_admin_script(); if (api_get_session_id() != 0 && !api_is_allowed_to_session_edit(false, true) ) { api_not_allowed(); } Session::write('notebook_view', 'creation_date'); $url = api_get_self().'?action='.Security::remove_XSS($_GET['action']); $form = $career->return_form($url, 'add'); // The validation or display if ($form->validate()) { $values = $form->exportValues(); if (isset($values['parent_id']) && '0' === $values['parent_id']) { $values['parent_id'] = null; } $res = $career->save($values); if ($res) { Display::addFlash( Display::return_message(get_lang('ItemAdded'), 'confirmation') ); } header('Location: '.$listUrl); exit; } else { $content .= '