File: /var/www/html/demo.sumarbc.com.py/local/presentialtracker/grades.php
<?php
require_once('../../config.php');
require_login();
$userid = required_param('id', PARAM_INT);
// Permitir ver solo al usuario o a un admin
if ($USER->id != $userid && !is_siteadmin()) {
print_error('No tienes permiso para ver estas calificaciones.');
}
$context = context_user::instance($userid);
$PAGE->set_context($context);
$PAGE->set_url(new moodle_url('/local/presentialtracker/grades.php', ['id' => $userid]));
$PAGE->set_pagelayout('standard');
$PAGE->set_title('Calificaciones de cursos presenciales');
$PAGE->set_heading('Calificaciones de cursos presenciales');
echo $OUTPUT->header();
$records = $DB->get_records('local_presentialtracker', ['userid' => $userid]);
if (!$records) {
echo $OUTPUT->notification('No tienes registradas calificaciones de cursos presenciales.', 'info');
echo $OUTPUT->footer();
exit;
}
$table = new html_table();
$table->head = ['Curso', 'Calificación', 'Comentarios', 'Fecha de finalización'];
foreach ($records as $r) {
$table->data[] = [
s($r->coursename),
s($r->grade),
s($r->comments),
$r->completiondate ? userdate($r->completiondate) : '-'
];
}
echo html_writer::table($table);
echo $OUTPUT->footer();