function action_default() { // Get parameters $sort = optional_param('sort', 'name', PARAM_ALPHA); $dir = optional_param('dir', 'ASC', PARAM_ALPHA); $page = optional_param('page', 0, PARAM_INT); $perpage = optional_param('perpage', 30, PARAM_INT); // how many per page $namesearch = trim(optional_param('search', '', PARAM_TEXT)); $alpha = optional_param('alpha', '', PARAM_ALPHA); // Define columns $columns = array('name' => get_string('course_name', 'block_curr_admin'), 'code' => get_string('course_code', 'block_curr_admin'), 'envname' => get_string('environment', 'block_curr_admin'), 'version' => get_string('course_version', 'block_curr_admin'), 'curricula' => get_string('course_curricula', 'block_curr_admin')); $items = course_get_listing($sort, $dir, $page * $perpage, $perpage, $namesearch, $alpha, coursepage::get_contexts('block/curr_admin:course:view')); $numitems = course_count_records($namesearch, $alpha, coursepage::get_contexts('block/curr_admin:course:view')); coursepage::get_contexts('block/curr_admin:course:edit'); coursepage::get_contexts('block/curr_admin:course:delete'); $this->print_list_view($items, $numitems, $columns, $filter = null, $alphaflag = true, $searchflag = true); }
function display_default() { global $DB, $USER; // Get parameters $sort = optional_param('sort', 'name', PARAM_ALPHA); $dir = optional_param('dir', 'ASC', PARAM_ALPHA); $page = optional_param('page', 0, PARAM_INT); $perpage = optional_param('perpage', 30, PARAM_INT); // how many per page $namesearch = trim(optional_param('search', '', PARAM_TEXT)); $alpha = optional_param('alpha', '', PARAM_ALPHA); // Define columns $columns = array('name' => array('header' => get_string('course_name', 'local_elisprogram')), 'code' => array('header' => get_string('course_code', 'local_elisprogram')), 'version' => array('header' => get_string('course_version', 'local_elisprogram')), 'curricula' => array('header' => get_string('course_curricula', 'local_elisprogram'), 'display_function' => 'count_curricula')); // Set sorting if ($dir !== 'DESC') { $dir = 'ASC'; } if (isset($columns[$sort])) { $columns[$sort]['sortable'] = $dir; } // TBD: get context set ... $contextset = coursepage::get_contexts('local/elisprogram:course_view'); //$contextset = pm_context_set::for_user_with_capability('course','local/elisprogram:course_view', $USER->id); // Get list of courses $items = course_get_listing($sort, $dir, $page * $perpage, $perpage, $namesearch, $alpha, $contextset); $numitems = course_count_records($namesearch, $alpha, $contextset); // Cache the context capabilities coursepage::get_contexts('local/elisprogram:course_edit'); coursepage::get_contexts('local/elisprogram:course_delete'); $this->print_list_view($items, $numitems, $columns, $filter = null, $alphaflag = true, $searchflag = true); }