'index.php','name' => get_lang('PlatformAdmin')); $tool_name = null; $action = isset($_GET['action']) ? $_GET['action'] : null; $check = Security::check_token('request'); $token = Security::get_token(); if ($action == 'add') { $interbreadcrumb[]=array('url' => 'session_fields.php','name' => get_lang('SessionFields')); $interbreadcrumb[]=array('url' => '#','name' => get_lang('Add')); } elseif ($action == 'edit') { $interbreadcrumb[]=array('url' => 'session_fields.php','name' => get_lang('SessionFields')); $interbreadcrumb[]=array('url' => '#','name' => get_lang('Edit')); } else { $interbreadcrumb[]=array('url' => '#','name' => get_lang('SessionFields')); } //jqgrid will use this URL to do the selects $url = api_get_path(WEB_AJAX_PATH).'model.ajax.php?a=get_extra_fields&type=session'; //The order is important you need to check the the $column variable in the model.ajax.php file $columns = array(get_lang('Name'), get_lang('FieldLabel'), get_lang('Type'), get_lang('FieldChangeability'), get_lang('Visibility'), get_lang('Filter'), get_lang('FieldOrder'), get_lang('Actions')); //Column config $column_model = array( array('name'=>'field_display_text', 'index'=>'field_display_text', 'width'=>'180', 'align'=>'left'), array('name'=>'field_variable', 'index'=>'field_variable', 'width'=>'', 'align'=>'left','sortable'=>'true'), array('name'=>'field_type', 'index'=>'field_type', 'width'=>'', 'align'=>'left','sortable'=>'true'), array('name'=>'field_changeable', 'index'=>'field_changeable', 'width'=>'50', 'align'=>'left','sortable'=>'true'), array('name'=>'field_visible', 'index'=>'field_visible', 'width'=>'40', 'align'=>'left','sortable'=>'true'), array('name'=>'field_filter', 'index'=>'field_filter', 'width'=>'30', 'align'=>'left','sortable'=>'true'), array('name'=>'field_order', 'index'=>'field_order', 'width'=>'40', 'align'=>'left','sortable'=>'true'), array('name'=>'actions', 'index'=>'actions', 'width'=>'100', 'align'=>'left','formatter'=>'action_formatter','sortable'=>'false') ); //Autowidth $extra_params['autowidth'] = 'true'; //height auto $extra_params['height'] = 'auto'; $extra_params['sortname'] = 'field_order'; //With this function we can add actions to the jgrid (edit, delete, etc) $action_links = 'function action_formatter(cellvalue, options, rowObject) { return \''.Display::return_icon('edit.png',get_lang('Edit'),'',ICON_SIZE_SMALL).''. ' '.Display::return_icon('delete.png',get_lang('Delete'),'',ICON_SIZE_SMALL).''. '\'; }'; $htmlHeadXtra[]=' '; // The header. Display::display_header($tool_name); $obj = new SessionField(); // Action handling: Add switch ($action) { case 'add': if (api_get_session_id() != 0 && !api_is_allowed_to_session_edit(false, true)) { api_not_allowed(); } $url = api_get_self().'?action='.Security::remove_XSS($_GET['action']); $form = $obj->return_form($url, 'add'); // The validation or display if ($form->validate()) { if ($check) { $values = $form->exportValues(); $res = $obj->save($values); if ($res) { Display::display_confirmation_message(get_lang('ItemAdded')); } } $obj->display(); } else { echo '
'; $form->addElement('hidden', 'sec_token'); $form->setConstants(array('sec_token' => $token)); $form->display(); } break; case 'edit': // Action handling: Editing $url = api_get_self().'?action='.Security::remove_XSS($_GET['action']).'&id='.intval($_GET['id']); $form = $obj->return_form($url, 'edit'); // The validation or display if ($form->validate()) { if ($check) { $values = $form->exportValues(); $res = $obj->update($values); Display::display_confirmation_message(sprintf(get_lang('ItemUpdated'), $values['name']), false); } $obj->display(); } else { echo ''; $form->addElement('hidden', 'sec_token'); $form->setConstants(array('sec_token' => $token)); $form->display(); } break; case 'delete': // Action handling: delete if ($check) { $res = $obj->delete($_GET['id']); if ($res) { Display::display_confirmation_message(get_lang('ItemDeleted')); } } $obj->display(); break; default: $obj->display(); break; } Display :: display_footer();