Lenguaje PHP

Detectar usuario ADMIN en moodle

El usuario maestro o ‘administrador principal‘ es el único que puede asignar (o eliminar) otros usuarios para que sean administradores dentro de nuestra plataforma Moodle. Sin embargo, los otros administradores no podrán editar el perfil del usuario administrador principal.

Detectar usuario ADMIN en Moodle

En el CMS Moodle hay una variable global que se llama $USER y que contiene la información del usuario que está ejecutando la página PHP y $DB para gestionar la conexión con MySQL conjuntamente con el requerimiento del fichero config.php.

Si deseas acceder a la detección del usuario administrador en las páginas php que vas a crear para hacer estos detalles se tiene que declarar lo siguiente al inicio del documento.

Luego agregar el requerimiento del fichero.

<?php
global $DB;
require_once("config.php");

Detectar usuario admin con la función get_admins()

Después de declarar la conexión con la base de datos podemos hacer uso de la función get_admins() para verificar si el usuario logueado es un administrador u otro usuario con otro nivel. Por lo tanto, podemos hacer uso de una condicional para mostrar información confidencial al administrador.

<?php

global $DB;
require('config.php');


$admins = get_admins();
$isadmin = false;
foreach($admins as $admin) {
if ($USER->id == $admin->id) {
$isadmin = true;
break;
}
}
if ($isadmin) {
} else {
header("Location:index.php?");
exit();
}

Conclusiones

El uso de esta función es muy sencillo y lo podemos usar en nuestras plantillas de Moodle o modules. en este ejemplo hemos configurado si es que el usuario no es administrador redireccione al fichero index.php

Espero que esta breve explicación les ayude en sus desarrollos de Moodle.

Nestor Tapia

Bloggero, amante de la programación PHP, innovador y me fascina compartir información. Desde que conocí el entorno informatico y el internet me llamó la atención la programación, Por tal motivo he creado mi blog BAULPHP.COM para compartir mis experiencias con todos ustedes. ¡Gracias por leerme!.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba