"index.php","name" => get_lang('PlatformAdmin')); $tool_name = get_lang('SessionList'); Display::display_header($tool_name); $error_message = ''; // Avoid conflict with the global variable $error_msg (array type) in add_course.conf.php. if (isset($_GET['action']) && $_GET['action'] == 'show_message') { $error_message = Security::remove_XSS($_GET['message']); } if (!empty($error_message)) { Display::display_normal_message($error_message, false); } //jqgrid will use this URL to do the selects $url = api_get_path(WEB_AJAX_PATH).'model.ajax.php?a=get_sessions'; if (isset($_REQUEST['keyword'])) { //Begin with see the searchOper param $url = api_get_path(WEB_AJAX_PATH).'model.ajax.php?a=get_sessions&_search=true&rows=20&page=1&sidx=&sord=asc&filters=&searchField=name&searchString='.Security::remove_XSS($_REQUEST['keyword']).'&searchOper=bw'; } //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('display_start_date'), get_lang('display_end_date'), get_lang('SessionCategoryName'), get_lang('StartDate'), get_lang('EndDate'), get_lang('Coach'), get_lang('Status'), get_lang('Visibility'), get_lang('Actions')); //$activeurl = '?sidx=session_active'; //Column config $column_model = array ( array('name'=>'name', 'index'=>'name', 'width'=>'120', 'align'=>'left', 'search' => 'true'), // array('name'=>'nbr_courses', 'index'=>'nbr_courses', 'width'=>'30', 'align'=>'left', 'search' => 'true'), // array('name'=>'nbr_users', 'index'=>'nbr_users', 'width'=>'30', 'align'=>'left', 'search' => 'true'), array('name'=>'display_start_date', 'index'=>'display_start_date', 'hidden' => 'true', 'width'=>'70', 'align'=>'left', 'search' => 'true', 'searchoptions' => array('searchhidden' =>'true')), array('name'=>'display_end_date', 'index'=>'display_end_date', 'hidden' => 'true', 'width'=>'70', 'align'=>'left', 'search' => 'true', 'searchoptions' => array('searchhidden' =>'true')), array('name'=>'category_name', 'index'=>'category_name', 'hidden' => 'true', 'width'=>'70', 'align'=>'left', 'search' => 'true', 'searchoptions' => array('searchhidden' =>'true')), array('name'=>'access_start_date', 'index'=>'access_start_date', 'width'=>'60', 'align'=>'left', 'search' => 'true', 'searchoptions' => array()), array('name'=>'access_end_date', 'index'=>'access_end_date', 'width'=>'60', 'align'=>'left', 'search' => 'true'), array('name'=>'coach_name', 'index'=>'coach_name', 'width'=>'70', 'align'=>'left', 'search' => 'false'), array('name'=>'status', 'index'=>'session_active','width'=>'40', 'align'=>'left', 'search' => 'true', 'stype'=>'select', //for the bottom bar 'searchoptions' => array( 'defaultValue' => '1', 'value' => '1:'.get_lang('Active').';0:'.get_lang('Inactive')), //for the top bar // 'editoptions' => array('value' => '" ":'.get_lang('All').';1:'.get_lang('Active').';0:'.get_lang('Inactive')) ), array('name'=>'visibility', 'index'=>'visibility', 'width'=>'40', 'align'=>'left', 'search' => 'false'), array('name'=>'actions', 'index'=>'actions', 'width'=>'80', 'align'=>'left','formatter'=>'action_formatter','sortable'=>'false', 'search' => 'false') ); //Inject extra session fields $session_field = new SessionField(); $session_field_option = new SessionFieldOption(); $fields = $session_field->get_all(); $rules = array(); $rules[] = array( "field" => "display_start_date", "op" => "eq", "data" => ""); $rules[] = array( "field" => "display_end_date", "op" => "eq", "data" => ""); if (!empty($fields)) { foreach ($fields as $field) { $type = 'text'; if ($field['field_type'] == UserManager::USER_FIELD_TYPE_SELECT) { $type = 'select'; } $search_options = array(); $search_options['searchhidden'] = true; $search_options['defaultValue'] = $search_options['field_default_value']; $search_options['value'] = $session_field_option->get_field_options_to_string($field['id']); $column_model[] = array( 'name' => $field['field_variable'], 'index' => $field['field_variable'], 'width' => '100', 'hidden' => 'true', 'search' => 'true', 'stype' => $type, 'searchoptions' => $search_options ); $columns[] = $field['field_display_text']; $rules[] = array('field' => $field['field_variable'], 'op' => 'eq', 'data' => ''); } $groups = array( 'groupOp'=> 'OR', 'rules' => $rules ); } //Autowidth $extra_params['autowidth'] = 'true'; //height auto $extra_params['height'] = 'auto'; //$extra_params['excel'] = 'excel'; $extra_params['rowList'] = array(10, 20 ,30); $extra_params['postData'] =array ( 'filters' => array( "groupOp" => "AND", "rules" => $rules, /*array( array( "field" => "display_start_date", "op" => "gt", "data" => ""), array( "field" => "display_end_date", "op" => "gt", "data" => "") ),*/ //'groups' => $groups ), ); /* $filters = array('filters' => array( "groupOp" => "AND", "rules" => $rules)); $filters = json_encode($filters); var_dump($filters);*/ //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('user_subscribe_session.png',get_lang('SubscribeUsersToSession'),'',ICON_SIZE_SMALL).''. ' '.Display::return_icon('courses_to_session.png',get_lang('SubscribeCoursesToSession'),'',ICON_SIZE_SMALL).''. ' '.Display::return_icon('copy.png',get_lang('Copy'),'',ICON_SIZE_SMALL).''. ' '.Display::return_icon('delete.png',get_lang('Delete'),'',ICON_SIZE_SMALL).''. '\'; }'; ?>
'.Display::return_icon('new_session.png',get_lang('AddSession'),'',ICON_SIZE_MEDIUM).''; echo ''.Display::return_icon('session_to_category.png',get_lang('AddSessionsInCategories'),'',ICON_SIZE_MEDIUM).''; echo ''.Display::return_icon('folder.png',get_lang('ListSessionCategory'),'',ICON_SIZE_MEDIUM).''; echo '
'; $form = new FormValidator('search'); $form->addElement('header', get_lang('Filter')); $form->addElement('text', 'start_date_start', get_lang('Between'), array('id' =>'start_date_start')); $form->addElement('text', 'start_date_end', get_lang('And'), array('id' =>'start_date_end')); $renderer = $form->defaultRenderer(); $renderer->setElementTemplate(get_lang('StartDate').' {label} {element}', 'start_date_start'); $renderer->setElementTemplate('{label} {element}', 'start_date_end'); $form->addElement('html', '
'); $form->addElement('text', 'end_date_start', get_lang('Between'), array('id' =>'end_date_start')); $form->addElement('text', 'end_date_end', get_lang('And'), array('id' =>'end_date_end')); $renderer->setElementTemplate(get_lang('EndDate').' {label} {element}', 'end_date_start'); $renderer->setElementTemplate('{label} {element}', 'end_date_end'); $options = CourseManager::get_course_list_of_user_as_course_admin(api_get_user_id()); $form->addElement('select', 'course', get_lang('Course'), $options); //$session_field->add_elements($form); $form->addElement('button', 'submit', get_lang('Search'), array('id' => 'search_button')); //$form->display(); echo Display::grid_html('sessions'); Display::display_footer();