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.