HEX
Server: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/8.0.30
System: Linux multiplicar 3.10.0-1160.102.1.el7.x86_64 #1 SMP Tue Oct 17 15:42:21 UTC 2023 x86_64
User: root (0)
PHP: 8.0.30
Disabled: NONE
Upload Files
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();