function action_default() { global $CFG; $type = cm_get_param('type', ''); $sort = cm_get_param('sort', ''); $dir = cm_get_param('dir', 'ASC'); $page = cm_get_param('page', 0); $perpage = cm_get_param('perpage', 30); $download = cm_get_param('download', ''); $frompage = cm_get_param('frompage', ''); if (!empty($type) && file_exists(CURMAN_DIRLOCATION . '/lib/' . $type . 'report.class.php')) { require_once CURMAN_DIRLOCATION . '/lib/' . $type . 'report.class.php'; $repclass = $type . 'report'; $report = new $repclass($repclass); $report->set_baseurl('index.php?s=rep§ion=rept&type=' . $type); $report->main($sort, $dir, $page, $perpage, $download, $frompage); return; } $bc = '<span class="breadcrumb">' . get_string('reports', 'block_curr_admin') . '</span>'; echo cm_print_heading_block($bc, '', true); echo '<br clear="all" />' . "\n"; echo get_string('choose_report_from_menu', 'block_curr_admin'); }
/** * Main display function. * * Fetch and display (or download) the required data. * * @param string $sort The column to sort results by. * @param string $dir The direction to sort by. * @param int $page The page number to display results for. * @param int $perpage The number of results per page. * @param string $search A string to search for. * @param string $alpha An initial to filter results by. * @param string $download The format to download the report in. */ function main($sort = '', $dir = '', $page = 0, $perpage = 20, $download = '') { $this->clsid = cm_get_param('id', 0); $this->hideins = cm_get_param('hideins', false); $this->hidestu = cm_get_param('hidestu', false); $this->hidesyl = cm_get_param('hidesyl', false); $class = new cmclass($this->clsid); $this->set_title('Class Roster Report for ' . $class->course->name . ' ' . $class->idnumber); $this->set_default_sort('fullname', 'ASC'); $this->baseurl .= '&id=' . $this->clsid . '&hideins=' . $this->hideins . '&hidestu=' . $this->hidestu . '&hidesyl=' . $this->hidesyl; $this->sort = !empty($sort) ? $sort : $this->defsort; $this->dir = !empty($dir) ? $dir : $this->defdir; $this->page = $page; $this->perpage = !empty($download) ? 9999 : $perpage; // create the user filter form $this->filter = new cm_user_filtering(null, $this->baseurl); $this->extrasql = $this->filter->get_sql_filter(); $this->get_data(!empty($download)); $this->add_column('idnumber', 'ID', 'left', true); if (!$this->hidestu) { $this->add_column('fullname', 'Student', 'left', true); } else { if ($sort == 'fullname') { $sort = 'idnumber'; } } for ($i = 1; $i <= $this->num_grade_fields; $i++) { $this->add_column('timegraded' . $i, 'Completed ' . $i, 'left'); $this->add_column('grade' . $i, 'Grade ' . $i, 'left'); } // $this->add_column('completestatus', 'Completion Status', 'left'); $this->add_column('completetime', 'Completion Time', 'left', true); $this->add_column('grade', 'Completion Grade', 'left', true); $this->add_column('credits', 'Credits Awarded', 'left'); if (empty($download)) { $output = ''; $bc = '<div style="float:right;">' . $this->numrecs . ' users found.</div>' . '<span class="breadcrumb"><a href="index.php?s=rep&section=rept">Reports</a> ' . '» ' . $this->title . '</span>'; $output .= cm_print_heading_block($bc, '', true); $output .= '<br />' . "\n"; $output .= $this->print_download_menu(); $output .= $this->print_header(); $output .= '<br /><fieldset>' . "\n"; $output .= '<legend>Class Information</legend>'; $output .= '<form action="index.php" method="post">'; $output .= '<input type="hidden" name="s" value="rep" />'; $output .= '<input type="hidden" name="type" value="classroster" />'; $output .= '<input type="hidden" name="sort" value="' . $this->sort . '" />'; $output .= '<input type="hidden" name="dir" value="' . $this->dir . '" />'; $output .= '<input type="hidden" name="id" value="' . $this->clsid . '" />'; $output .= 'Hide student name <input type="checkbox" name="hidestu" value="1" ' . (!empty($this->hidestu) ? ' checked' : '') . ' /> '; $output .= 'Hide syllabus <input type="checkbox" name="hidesyl" value="1" ' . (!empty($this->hidesyl) ? ' checked' : '') . ' /> '; $output .= '<input type="submit" value="Update Display" />'; $output .= '</form>'; $output .= '<table width="100%"><tr>'; $output .= '<tr><td colspan="2" rowspan="1"> </td></tr>'; $output .= '<td align="left" width="50%"><b>Course name</b>: <i>' . $class->course->name . '</i></td>'; $output .= '<td align="left" width="50%"><b>Class code</b>: ' . '<i>' . $class->idnumber . '</i></td></tr>'; $startdate = !empty($class->startdate) ? date('M j, Y', $class->startdate) : '-'; $enddate = !empty($class->enddate) ? date('M j, Y', $class->enddate) : '-'; $output .= '<tr><td align="left"><b>Start Date</b>: <i>' . $startdate . '</i></td>'; $output .= '<td align="left"><b>End Date</b>: <i>' . $enddate . '</i></td></tr>'; // $ins = new instructor(); // // if ($instructors = $ins->get_instructors($this->clsid)) { // $output .= '<tr><td colspan="2" rowspan="1"> </td></tr>'; // $output .= '<tr><th align="left" colspan="2">Instructors</th></tr>'; // // foreach ($instructors as $instructor) { // if ($this->hideins) { // $output .= '<tr><td align="left" colspan="2"><b>ID</b>: <i>' . // $instructor->idnumber . '</i></td></tr>'; // } else { // $output .= '<tr><td><b>Instructor</b>: <i>' . cm_fullname($instructor) . // '</i></td>'; // $output .= '<td><b>ID</b>: <i>' . $instructor->idnumber . // '</i></td></tr>'; // } // } // } if (!$this->hidesyl && !empty($class->course->syllabus)) { $output .= '<tr><td colspan="2" rowspan="1"> </td></tr>'; $output .= '<tr><td colspan="2">'; $output .= '<fieldset>'; $output .= '<legend>Syllabus</legend>'; $output .= '<i>' . $class->course->syllabus . '</i>'; $output .= '</fieldset></td></tr>'; } $output .= '</table></fieldset><br />'; $output .= $this->display(); echo $output; } else { $this->download($download); } }
/** * Main display function. * * Fetch and display (or download) the required data. * * @param string $sort The column to sort results by. * @param string $dir The direction to sort by. * @param int $page The page number to display results for. * @param int $perpage The number of results per page. * @param string $search A string to search for. * @param string $alpha An initial to filter results by. * @param string $download The format to download the report in. */ function main($sort = '', $dir = '', $page = 0, $perpage = 20, $download = '', $frompage = '') { $this->daywindow = cm_get_param('daywindow', 90); if (!isset($this->valid_windows[$this->daywindow])) { $this->daywindow = key($this->valid_windows); } $this->add_column('idnumber', get_string('student_id', 'block_curr_admin'), 'left', true); $this->add_column('student', get_string('student_name', 'block_curr_admin'), 'left', true); $this->add_column('email', get_string('student_email', 'block_curr_admin'), 'left', true); $this->add_column('origenroldate', get_string('curenroldate', 'block_curr_admin'), 'left', true); $this->add_column('birthdate', get_string('userbirthdate', 'block_curr_admin'), 'left', true); $this->add_column('gender', get_string('usergender', 'block_curr_admin'), 'left', true); $this->add_column('timegraded', get_string('last_activity', 'block_curr_admin'), 'left', true); $this->add_column('clustername', get_string('cluster', 'block_curr_admin'), 'left', true); $this->add_column('curricula', get_string('curriculum', 'block_curr_admin'), 'left', false); $this->add_column('country', get_string('country', 'block_curr_admin'), 'left', true); $this->set_default_sort('student', 'ASC'); $this->sort = !empty($sort) ? $sort : $this->defsort; $this->dir = !empty($dir) ? $dir : $this->defdir; $this->page = $page; $this->perpage = !empty($download) ? 9999 : $perpage; // create the user filter form $this->filter = new enrollment_filtering(null, $this->baseurl); $this->extrasql = $this->filter->get_sql_filter(); $this->get_data(!empty($download)); if (empty($download)) { $output = ''; /// Nav bar information: $bc = '<div style="float:right;">' . $this->numrecs . get_string('users_found', 'block_curr_admin') . '</div>' . '<span class="breadcrumb"><a href="index.php?s=rep&section=rept">' . get_string('reports', 'block_curr_admin') . '</a> ' . '» ' . $this->title . '</span>'; $output .= cm_print_heading_block($bc, '', true); $output .= '<br />' . "\n"; $output .= $this->print_download_menu(); $output .= $this->print_header(); if (!empty($this->data)) { $output .= $this->display(); } else { $output .= '<h2>' . get_string('no_matching_users', 'block_curr_admin') . '</h2>'; } $output .= $this->print_footer(); echo $output; } else { $this->download($download); } }
/** * Main display function. * * Fetch and display (or download) the required data. * * @param string $sort The column to sort results by. * @param string $dir The direction to sort by. * @param int $page The page number to display results for. * @param int $perpage The number of results per page. * @param string $search A string to search for. * @param string $alpha An initial to filter results by. * @param string $download The format to download the report in. */ function main($sort = '', $dir = '', $page = 0, $perpage = 20, $download = '', $frompage = '') { global $CFG; $this->usrid = cm_get_param('user', 0); // $this->hideins = cm_get_param('hideins', false); $this->user = new user($this->usrid); $this->baseurl .= '&user='******'&hideins=' . $this->hideins; $this->set_title(get_string('individual_report', 'block_curr_admin') . cm_fullname($this->user)); if (empty($download)) { $output = ''; if ($frompage == '') { $frompage = 'users'; } $pagename = get_string("report{$frompage}", 'block_curr_admin'); $bc = '<span class="breadcrumb"><a href="index.php?s=rep&section=rept&type=' . $frompage . '">' . $pagename . '</a> » ' . $this->title . '</span>'; $output .= cm_print_heading_block($bc, '', true); $output .= '<br />' . "\n"; } $this->get_data(!empty($download)); $this->add_column('datecomplete', get_string('completed_label', 'block_curr_admin'), 'left', false); $this->add_column('courseidnumber', get_string('course_id', 'block_curr_admin'), 'left', false); $this->add_column('coursename', get_string('coursename', 'block_curr_admin'), 'left', false); for ($i = 1; $i <= $this->_maxexams; $i++) { $this->add_column('ccgrade' . $i, get_string('exam', 'block_curr_admin') . $i, 'left', false); } $this->add_column('classgrade', get_string('grade', 'block_curr_admin'), 'left', false); $this->add_column('credits', get_string('credits', 'block_curr_admin'), 'left', false); $this->set_default_sort('datecomplete', 'ASC'); $this->sort = !empty($sort) ? $sort : $this->defsort; $this->dir = !empty($dir) ? $dir : $this->defdir; $this->page = 0; $this->perpage = 9999; if (empty($download)) { $tlink = $CFG->wwwroot . '/curriculum/index.php'; $toptions = array('s' => 'rep', 'section' => 'rept', 'type' => 'induser', 'user' => $this->usrid); $tlabel = get_string('userreport', 'block_curr_admin'); $output .= '<div class="trans-button">' . print_single_button($tlink, $toptions, $tlabel, NULL, NULL, true) . '</div>'; if (!empty($this->rawdata)) { $output .= $this->print_download_menu(); } $output .= '<br />'; $output .= '<fieldset>' . "\n"; $output .= '<legend>' . get_string('user_information', 'block_curr_admin') . '</legend>'; switch ($this->user->gender) { case 'M': case 'm': $gender = get_string('male', 'block_curr_admin'); break; case 'F': case 'f': $gender = get_string('female', 'block_curr_admin'); break; default: $gender = get_string('unknown', 'block_curr_admin'); break; } $output .= '<div class="trans-userarea">'; $output .= '<div class="trans-leftside">'; $output .= cm_fullname($this->user) . "<br />\n"; $output .= $this->user->address . "<br />\n"; if (!empty($this->user->address2)) { $output .= $this->user->address2 . "<br />\n"; } $output .= $this->user->city; if (!empty($this->user->city)) { $output .= ', ' . $this->user->state; } $output .= ' ' . s($this->user->postalcode) . ' ' . cm_get_country($this->user->country) . "<br />\n"; $output .= '</div>'; $output .= '<div class="trans-rightside">'; $output .= '<div class="trans-innerleft">Sex:</div>'; $output .= '<div class="trans-innerright">' . $gender . '</div>'; $output .= '<div class="trans-innerleft">Born:</div>'; $bday = cm_timestring_to_date($this->user->birthdate); $output .= '<div class="trans-innerright">' . $bday . '</div>'; $output .= '<div class="trans-innerleft">Registration Date:</div>'; if (!empty($this->user->origenroldate)) { $enroldate = cm_timestring_to_date($this->user->origenroldate); } else { if (!empty($this->user->timecreated)) { $enroldate = cm_timestamp_to_date($this->user->timecreated); } else { $enroldate = get_string('unknown', 'block_curr_admin'); } } $output .= '<div class="trans-innerright">' . $enroldate . '</div>'; $output .= '<div class="trans-innerleft">Identification No:</div>'; $output .= '<div class="trans-innerright">' . $this->user->idnumber . '</div>'; $output .= '</div>'; $output .= '</div>'; $output .= '</fieldset><br />'; $summary = ''; if (!empty($this->rawdata)) { foreach ($this->rawdata as $curid => $curlist) { $output .= '<strong>' . $curlist->curriculumname . ' - ' . get_string('enrolled_classes', 'block_curr_admin') . '</strong>'; $this->data = $curlist->data; $output .= $this->display(); unset($this->table); if ($curlist->numcredits > 0) { $gpa = sprintf('%1.2f', (double) $curlist->gpa / (double) $curlist->numcredits); } else { $gpa = '0.0'; } $summary .= "<div style=\"float:left; width: 30%;\">' . get_string('total_credits', 'block_curr_admin', {$curlist->curriculumname}) . '</div>\n <div style=\"float:left; width: 20%;\">{$curlist->numcredits}</div>\n <div style=\"float:left; width: 30%;\">{$curlist->curriculumname}' . get_string('gpa', 'block_curr_admin') . ': </div>\n <div style=\"float:left; width: 20%;\">{$gpa}</div><br />"; $output .= '<br /><br />'; } } else { $output .= '<h2>' . get_string('no_classes_completed', 'block_curr_admin') . '</h2>'; } $output .= $summary; $output .= "<br />" . get_string('transfercredits', 'block_curr_admin') . ": {$this->user->transfercredits}<br />"; echo $output; } else { $this->download($download); } }
?> "; //]]> </script> <?php } else { $a = new object(); $a->site = $site->shortname; $a->name = $cluster->name; print_header(get_string('assign_user_cluster', 'block_curr_admin', $a)); $user = new user($userid); $a = new object(); $a->fullname = cm_fullname($user); $a->name = $cluster->name; $bc = '<span class="breadcrumb">' . get_string('cluster_manual_options', 'block_curr_admin', $a) . '</span>'; echo cm_print_heading_block($bc, '', true); $murl = new moodle_url(make_link()); $data = $murl->params; $data['userid'] = $userid; $data['autoenrol'] = true; $assignform->set_data($data); $assignform->display(); print_footer(get_string('empty', 'block_curr_admin')); exit; } } // find all users not assigned to the cluster $FULLNAME = sql_concat('usr.firstname', "' '", 'usr.lastname'); $LIKE = $CURMAN->db->sql_compare(); $select = 'SELECT usr.*, ' . $FULLNAME . ' AS name '; $sql = 'FROM ' . $CURMAN->db->prefix_table(USRTABLE) . ' usr ' . 'LEFT OUTER JOIN ' . $CURMAN->db->prefix_table(CLSTASSTABLE) . ' ca ON ca.userid = usr.id AND ca.clusterid = ' . $clusterid . ' AND ca.plugin = \'manual\' ' . 'WHERE ca.userid IS NULL ';
/** * Main display function. * * Fetch and display (or download) the required data. * * @param string $sort The column to sort results by. * @param string $dir The direction to sort by. * @param int $page The page number to display results for. * @param int $perpage The number of results per page. * @param string $search A string to search for. * @param string $download The format to download the report in. */ function main($sort = '', $dir = '', $page = 0, $perpage = 20, $download = '') { $context = get_context_instance(CONTEXT_SYSTEM, SITEID); if (has_capability('block/curr_admin:viewreports', $context)) { // Okay } else { if (has_capability('block/curr_admin:viewgroupreports', $context)) { // Verify userid } else { error("No access allowed."); } } $this->daywindow = cm_get_param('daywindow', 90); if (!isset($this->valid_windows[$this->daywindow])) { $this->daywindow = key($this->valid_windows); } $this->add_column('idnumber', get_string('idnumber', 'block_curr_admin'), 'left', true); $this->add_column('student', get_string('student_name', 'block_curr_admin'), 'left', true); $this->add_column('curname', get_string('curriculum', 'block_curr_admin'), 'left', empty($this->curname) ? true : false); $this->add_column('clustername', get_string('proctor', 'block_curr_admin'), 'left', true); $this->add_column('reqcredits', get_string('required_credits', 'block_curr_admin'), 'left', true); $this->add_column('numcredits', get_string('completed_credits', 'block_curr_admin'), 'left', true); $this->add_column('transfercredits', get_string('transfercredits', 'block_curr_admin'), 'left', true); $this->add_column('completiondate', get_string('completiondate', 'block_curr_admin'), 'left', true); $this->set_default_sort('student', 'ASC'); $this->sort = !empty($sort) ? $sort : $this->defsort; $this->dir = !empty($dir) ? $dir : $this->defdir; $this->page = $page; $this->perpage = !empty($download) ? 9999 : $perpage; // create the user filter form $this->filter = new curricula_filtering(null, $this->baseurl); $this->extrasql = $this->filter->get_sql_filter(); $this->get_data(!empty($download)); if (empty($download)) { $output = ''; /// Nav bar information: $bc = '<div style="float:right;">' . $this->numrecs . get_string('users_found', 'block_curr_admin') . '</div>' . '<span class="breadcrumb"><a href="index.php?s=rep&section=rept">' . get_string('reports', 'block_curr_admin') . '</a> ' . '» ' . $this->title . '</span>'; $output .= cm_print_heading_block($bc, '', true); $output .= '<br />' . "\n"; $output .= $this->print_download_menu(); $output .= $this->print_header(); if (!empty($this->data)) { $output .= $this->display(); } else { $output .= '<h2>' . get_string('no_matching_users', 'block_curr_admin') . '</h2>'; } $output .= $this->print_footer(); echo $output; } else { $this->download($download); } }
/** * Main display function. * * Fetch and display (or download) the required data. * * @param string $sort The column to sort results by. * @param string $dir The direction to sort by. * @param int $page The page number to display results for. * @param int $perpage The number of results per page. * @param string $search A string to search for. * @param string $alpha An initial to filter results by. * @param string $download The format to download the report in. */ function main($sort = '', $dir = '', $page = 0, $perpage = 20, $download = '', $frompage = '') { global $CFG, $USER; $context = get_context_instance(CONTEXT_SYSTEM, SITEID); $canaccessum = false; if (has_capability('block/curr_admin:viewreports', $context)) { $this->usrid = cm_get_param('user', 0); $canaccessum = true; } else { if (has_capability('block/curr_admin:viewgroupreports', $context)) { // Verify userid $this->usrid = cm_get_param('user', 0); if (!cm_can_access_userreport($this->usrid)) { error("No access allowed."); } $canaccessum = false; } else { if (has_capability('block/curr_admin:viewownreports', $context)) { // Make sure only this user. if (!($this->usrid = cm_get_crlmuserid($USER->id))) { error("No account found."); } } else { error("No access allowed."); } } } $user = new user($this->usrid); $this->baseurl .= '&user='******'&hideins=' . $this->hideins; $this->set_title('Individual User Report for ' . cm_fullname($user)); if (empty($download)) { $output = ''; if ($frompage == '') { $frompage = 'users'; } $pagename = get_string("report{$frompage}", 'block_curr_admin'); $bc = '<span class="breadcrumb"><a href="index.php?s=rep&section=rept&type=' . $frompage . '">' . $pagename . '</a> » ' . $this->title . '</span>'; $output .= cm_print_heading_block($bc, '', true); $output .= '<br />' . "\n"; } $this->get_data(!empty($download)); $this->add_column('courseidnumber', 'Course ID', 'left', false); $this->add_column('coursename', 'Course Name', 'left', false); $this->add_column('classidnumber', 'Class ID', 'left', false); if (!empty($this->_maxexams)) { for ($i = 1; $i <= $this->_maxexams; $i++) { $this->add_column('ccgrade' . $i, 'Exam ' . $i, 'left', false); $this->add_column('cctimegraded' . $i, 'Date ' . $i, 'left', false); } } $this->add_column('classgrade', 'Class Grade', 'left', false); $this->add_column('credits', 'Credits', 'left', false); $this->add_column('datecomplete', 'Completed', 'left', false); $this->add_column('completestatus', 'Status', 'left', false); // $this->add_column('nextdue', 'Next Due', 'left', true); // $this->add_column('insid', 'Instructor ID', 'left', true); /* if (!$this->hideins) { $this->add_column('insname', 'Instructor Name', 'left', true); } */ $this->set_default_sort('coursename', 'ASC'); $this->sort = !empty($sort) ? $sort : $this->defsort; $this->dir = !empty($dir) ? $dir : $this->defdir; $this->page = 0; $this->perpage = 9999; if (empty($download)) { $tlink = $CFG->wwwroot . '/curriculum/index.php'; $toptions = array('s' => 'rep', 'section' => 'rept', 'type' => 'transcript', 'user' => $this->usrid); $tlabel = get_string('transcript', 'block_curr_admin'); $output .= '<div class="trans-button">' . print_single_button($tlink, $toptions, $tlabel, NULL, NULL, true) . '</div>'; if (!empty($this->rawdata)) { $output .= $this->print_download_menu(); } $output .= '<br />'; $output .= '<fieldset>' . "\n"; /* $output .= '<form action="index.php" method="post">'; $output .= '<input type="hidden" name="s" value="rep" />'; $output .= '<input type="hidden" name="section" value="rept" />'; $output .= '<input type="hidden" name="type" value="induser" />'; $output .= '<input type="hidden" name="sort" value="' . $this->sort . '" />'; $output .= '<input type="hidden" name="dir" value="' . $this->dir . '" />'; $output .= '<input type="hidden" name="user" value="' . $this->usrid . '" />'; $output .= 'Hide instructor name <input type="checkbox" name="hideins" value="1" ' . (!empty($this->hideins) ? ' checked' : '') . ' /> '; $output .= '<input type="submit" value="Update Display" />'; $output .= '</form><br />'; */ if (empty($user->origenroldate)) { if (empty($user->timecreated)) { $origdate = get_string('unknown', 'block_curr_admin'); } else { $origdate = cm_timestamp_to_date($user->timecreated); } } else { if (!($origdate = cm_timestring_to_date($user->origenroldate))) { $origdate = get_string('unknown', 'block_curr_admin'); } } $output .= '<legend>' . get_string('user_information', 'block_curr_admin') . '</legend>'; $output .= '<div style="float: left; width: 50%;"><b>' . get_string('user_id', 'block_curr_admin') . '</b> '; if ($canaccessum) { $output .= '<a href="' . $CFG->wwwroot . '/curriculum/index.php?s=usr&userid=' . $user->id . '&action=view">' . $user->idnumber . '</a></div>'; } else { $output .= $user->idnumber . '</div>'; } $output .= '<div style="float: left; width: 50%;"><b>' . get_string('student_email', 'block_curr_admin') . ':</b> ' . $user->email . '</div><br />'; $output .= '<div style="float: left; width: 50%;"><b>' . get_string('firstname', 'block_curr_admin') . ':</b> ' . $user->firstname . '</div>'; $output .= '<div style="float: left; width: 50%;"><b>' . get_string('original_reg_date', 'block_curr_admin') . ':</b> ' . $origdate . '</div><br />'; $output .= '<div style="float: left; width: 35%;"><b>' . get_string('lastname', 'block_curr_admin') . ':</b> ' . $user->lastname . '</div><br />'; $output .= '</fieldset><br />'; if (!empty($this->rawdata)) { foreach ($this->rawdata as $curid => $curlist) { $output .= '<strong>' . $curlist->curriculumname . ' - ' . get_string('enrolled_classes', 'block_curr_admin') . '</strong>'; $this->data = $curlist->data; $output .= $this->display(); unset($this->table); $output .= '<br /><br />'; } } else { $output .= '<h2>' . get_string('no_classes_completed', 'block_curr_admin') . '</h2>'; } $output .= $this->print_footer(); echo $output; } else { $this->download($download); } }
/** * Main display function. * * Fetch and display (or download) the required data. * * @uses $CURMAN * @param string $sort The column to sort results by. * @param string $dir The direction to sort by. * @param int $page The page number to display results for. * @param int $perpage The number of results per page. * @param string $search A string to search for. * @param string $alpha An initial to filter results by. * @param string $download The format to download the report in. */ function main($sort = '', $dir = '', $page = 0, $perpage = 20, $search = '', $alpha = '', $download = '') { global $CURMAN; $this->loc = cm_get_param('loc', ''); $this->baseurl .= '&loc=' . $this->loc; $this->set_title('Recurrent Course Report for ' . $this->loc); if (empty($download)) { $output = ''; $bc = '<span class="breadcrumb"><a href="index.php?s=usr&section=users">' . get_string('user_management', 'block_curr_admin') . '</a> ' . '» ' . $this->title . '</span>'; $output .= cm_print_heading_block($bc, '', true); $output .= '<br />' . "\n"; } $this->add_column('idnumber', get_string('class_id', 'block_curr_admin'), 'left', true); $this->add_column('username', get_string('student_name', 'block_curr_admin'), 'left', true); $this->add_column('classname', get_string('class_name', 'block_curr_admin'), 'left', true); $this->add_column('datecomplete', get_string('completed_label', 'block_curr_admin'), 'left', true); $this->add_column('nextdue', get_string('next_due', 'block_curr_admin'), 'left', true); $this->set_default_sort('username', 'ASC'); $this->sort = !empty($sort) ? $sort : $this->defsort; $this->dir = !empty($dir) ? $dir : $this->defdir; $this->page = 0; $this->perpage = 9999; $this->search = $search; $this->alpha = $alpha; $this->get_data(!empty($download)); if (empty($download)) { if (!empty($this->data)) { $output .= $this->print_download_menu() . '<br />'; } $usercount = $CURMAN->db->count_records(USRTABLE, 'local', $this->loc); $output .= '<fieldset>' . "\n"; $output .= '<legend>' . get_string('station_location_info', 'block_curr_admin') . '</legend>'; $output .= '<b>' . get_string('location', 'block_curr_admin') . ':</b> ' . $this->loc . '<br />'; $output .= '<b>' . get_string('total_users_at_location', 'block_curr_admin') . ':</b> ' . $usercount . '<br />'; $output .= '</fieldset><br />'; if (!empty($this->data)) { $output .= $this->display(); } else { $output .= '<h2>' . get_string('no_users_with_upcoming_renew', 'block_curr_admin') . '</h2>'; } echo $output; } else { $this->download($download); } }
/** * Main display function. * * Fetch and display (or download) the required data. * * @param string $sort The column to sort results by. * @param string $dir The direction to sort by. * @param int $page The page number to display results for. * @param int $perpage The number of results per page. * @param string $search A string to search for. * @param string $alpha An initial to filter results by. * @param string $download The format to download the report in. */ function main($sort = '', $dir = '', $page = 0, $perpage = 20, $search = '', $alpha = '', $download = '') { $this->daywindow = cm_get_param('daywindow', 90); if (!isset($this->valid_windows[$this->daywindow])) { $this->daywindow = key($this->valid_windows); } $this->set_title('Non-Qualification report for ' . $this->daywindow . ' day window'); if (empty($download)) { $output = ''; $bc = '<span class="breadcrumb"><a href="index.php?s=rep&section=rept">Reports</a> ' . '» ' . $this->title . '</span>'; $output .= cm_print_heading_block($bc, '', true); $output .= '<br />' . "\n"; } $this->add_column('idnumber', 'ID', 'left', true); $this->add_column('student', 'Student', 'left', true); $this->add_column('classname', 'Class', 'left', true); $this->add_column('strnextdue', 'Next Due', 'left', false); $this->set_default_sort('crewmember', 'ASC'); $this->sort = !empty($sort) ? $sort : $this->defsort; $this->dir = !empty($dir) ? $dir : $this->defdir; $this->page = 0; $this->perpage = 9999; $this->search = $search; $this->alpha = $alpha; $this->get_data(!empty($download)); if (empty($download)) { $this->baseurl .= '&daywindow=' . $this->daywindow; $output .= $this->print_download_menu(); $output .= '<br /><fieldset>' . "\n"; $output .= '<form action="index.php" method="post">'; $output .= '<input type="hidden" name="s" value="rep" />'; $output .= '<input type="hidden" name="section" value="rept" />'; $output .= '<input type="hidden" name="type" value="nonqual" />'; $output .= '<input type="hidden" name="sort" value="' . $this->sort . '" />'; $output .= '<input type="hidden" name="dir" value="' . $this->dir . '" />'; $output .= 'Display report for users who will be non-qualifieid within '; $output .= cm_choose_from_menu($this->valid_windows, 'daywindow', $this->daywindow, '', '', '', true); $output .= '<input type="submit" value="' . get_string('display', 'block_curr_admin') . '" />'; $output .= '</form>'; $output .= '</fieldset><br />'; if (!empty($this->data)) { $output .= $this->display(); } else { $output .= '<h2>' . get_string('hide_nonqualified_users', 'block_curr_admin') . ' ' . $this->valid_windows[$this->daywindow] . '</h2>'; } echo $output; } else { $this->download($download); } }
function get_edit_form($trkassignid) { $output = ''; $trkassign = new trackassignmentclass($trkassignid); $bc = '<span class="breadcrumb"><a href="index.php?s=trkcls&section=curr' . '&trackid=' . $trkassign->trackid . '">' . get_string('trackasso_genericmanage_crumb', 'block_curr_admin') . '</a> ' . '» ' . get_string('trackasso_genericedit_crumb', 'block_curr_admin') . '</span>'; $output .= cm_print_heading_block($bc, '', true); $output .= '<br clear="all" />' . "\n"; $output .= '<form method="post" action="index.php?s=trkcls&section=curr&trackid=' . $trkassign->trackid . '" >' . "\n"; $output .= '<input type="hidden" name="action" value="update" />' . "\n"; $output .= '<input type="hidden" name="id" value="' . $trkassign->id . '" />' . "\n"; $output .= $trkassign->edit_assocation_form_html(); $output .= '<input type="submit" value="' . get_string('save', 'block_curr_admin') . '">' . "\n"; $output .= '</form>' . "\n"; return $output; }
/** * Main display function. * * Fetch and display (or download) the required data. * * @param string $sort The column to sort results by. * @param string $dir The direction to sort by. * @param int $page The page number to display results for. * @param int $perpage The number of results per page. * @param string $search A string to search for. * @param string $alpha An initial to filter results by. * @param string $download The format to download the report in. */ function main($sort = '', $dir = '', $page = 0, $perpage = 20, $search = '', $alpha = '', $download = '') { $this->set_title(get_string('coursereport', 'block_curr_admin')); if (empty($download)) { $output = ''; $bc = '<span class="breadcrumb"><a href="index.php?s=rep&section=rept">' . get_string('reports', 'block_curr_admin') . '</a> ' . '» ' . $this->title . '</span>'; $output .= cm_print_heading_block($bc, '', true); $output .= '<br />' . "\n"; } $this->add_column('student', get_string('student', 'block_curr_admin'), 'left', true); $this->add_column('coursename', get_string('course', 'block_curr_admin'), 'left', true); $this->add_column('completestatus', get_string('completion_status', 'block_curr_admin'), 'left'); $this->add_column('clsend', get_string('class_end', 'block_curr_admin'), 'left', true, true); $this->add_column('recurrenttraining', get_string('recruitment_training_info', 'block_curr_admin'), 'left', false, true); // if (empty($download)) { // $this->add_column('syllabus', 'Syllabus', 'left'); // } $this->set_default_sort('coursename', 'ASC'); $this->sort = !empty($sort) ? $sort : $this->defsort; $this->dir = !empty($dir) ? $dir : $this->defdir; $this->page = $page; $this->perpage = empty($download) ? $perpage : 0; /// Check if we need to build a search... $this->searchu = trim(cm_get_param('searchu', '')); $this->searchc = trim(cm_get_param('searchc', '')); $this->searchl = trim(cm_get_param('searchl', '')); $this->search = ''; $this->alpha = $alpha; $this->get_data(!empty($download)); if (empty($download)) { $searchstring = !empty($this->searchu) ? '&searchu=' . urlencode(stripslashes($this->searchu)) : ''; $searchstring .= !empty($this->searchc) ? '&searchc=' . urlencode(stripslashes($this->searchc)) : ''; $searchstring .= !empty($this->searchl) ? '&searchl=' . urlencode(stripslashes($this->searchl)) : ''; $this->set_baseurl($this->baseurl . $searchstring); $output .= $this->print_download_menu(); $output .= $this->print_header(); $output .= $this->display(); $output .= $this->print_footer(); echo $output; } else { $this->download($download); } }
/** * Main display function. * * Fetch and display (or download) the required data. * * @param string $sort The column to sort results by. * @param string $dir The direction to sort by. * @param int $page The page number to display results for. * @param int $perpage The number of results per page. * @param string $search A string to search for. * @param string $alpha An initial to filter results by. * @param string $download The format to download the report in. */ function main($sort = '', $dir = '', $page = 0, $perpage = 20, $search = '', $alpha = '', $download = '') { $this->usrid = cm_get_param('user', 0); // $this->hideins = cm_get_param('hideins', false); $user = new user($this->usrid); $this->baseurl .= '&user='******'&hideins=' . $this->hideins; $this->set_title('Individual User Report for ' . cm_fullname($user)); if (empty($download)) { $output = ''; $bc = '<span class="breadcrumb"><a href="index.php?s=usr&section=users&search=' . urlencode(cm_fullname($user)) . '">User Management</a> » ' . $this->title . '</span>'; $output .= cm_print_heading_block($bc, '', true); $output .= '<br />' . "\n"; } $this->get_data(!empty($download)); $this->add_column('idnumber', 'ID', 'left', false); $this->add_column('coursename', 'Name', 'left', false); for ($i = 1; $i <= $this->_maxexams; $i++) { $this->add_column('ccgrade' . $i, 'Exam ' . $i, 'left', false); $this->add_column('cctimegraded' . $i, 'Date ' . $i, 'left', false); } $this->add_column('classgrade', 'Class Grade', 'left', false); $this->add_column('datecomplete', 'Completed', 'left', false); $this->add_column('completestatus', 'Status', 'left', false); // $this->add_column('nextdue', 'Next Due', 'left', true); // $this->add_column('insid', 'Instructor ID', 'left', true); /* if (!$this->hideins) { $this->add_column('insname', 'Instructor Name', 'left', true); } */ $this->set_default_sort('coursename', 'ASC'); $this->sort = !empty($sort) ? $sort : $this->defsort; $this->dir = !empty($dir) ? $dir : $this->defdir; $this->page = 0; $this->perpage = 9999; $this->search = $search; $this->alpha = $alpha; if (empty($download)) { if (!empty($this->data)) { $output .= $this->print_download_menu() . '<br />'; } $output .= '<fieldset>' . "\n"; /* $output .= '<form action="index.php" method="post">'; $output .= '<input type="hidden" name="s" value="rep" />'; $output .= '<input type="hidden" name="section" value="rept" />'; $output .= '<input type="hidden" name="type" value="induser" />'; $output .= '<input type="hidden" name="sort" value="' . $this->sort . '" />'; $output .= '<input type="hidden" name="dir" value="' . $this->dir . '" />'; $output .= '<input type="hidden" name="user" value="' . $this->usrid . '" />'; $output .= 'Hide instructor name <input type="checkbox" name="hideins" value="1" ' . (!empty($this->hideins) ? ' checked' : '') . ' /> '; $output .= '<input type="submit" value="Update Display" />'; $output .= '</form><br />'; */ $output .= '<legend>' . get_string('user_information', 'block_curr_admin') . '</legend>'; $output .= '<b>' . get_string('user_id', 'block_curr_admin') . ':</b> ' . $user->idnumber . '<br />'; $output .= '<b>' . get_string('firstname', 'block_curr_admin') . ':</b> ' . $user->firstname . '<br />'; $output .= '<b>' . get_string('lastname', 'block_curr_admin') . ':</b> ' . $user->lastname . '<br />'; $output .= '</fieldset><br />'; if (!empty($this->data)) { $datum = reset($this->data); $output .= '<strong>' . $datum->curriculumname . ' - ' . get_string('enrolled_classes', 'block_curr_admin') . '</strong>'; $output .= $this->display(); } else { $output .= '<h2>' . get_string('no_classes_completed', 'block_curr_admin') . '</h2>'; } if (isset($this->data2)) { unset($this->headers); unset($this->align); unset($this->sortable); unset($this->wrap); $output .= '<br />' . get_string('courses_not_in', 'block_curr_admin') . ': '; foreach ($this->data2 as $datum) { $output .= s($datum->coursename) . ', '; } } echo $output; } else { $this->download($download); } }