jueves, 8 de mayo de 2008

Función hook_access Drupal 5.x

El hook access dentro del api drupal 5.x para el desarrollo de módulos nos ayuda a definir los permisos de acceso (por ejemplo para crear un tipo de nodo). La cuenta administrativa (con id #1 en la tabla) no tendrá problema para pasar por los permisos de acceso de cualquier módulo. Si no se define este hook para un módulo que defina un tipo de dato, todos los controles de acceso fallarán y sólo el administrador o los usuarios que tengan el permiso "administrar nodos" podrán verlos.

Parámetros:
$op: es la operación a realizar. Por ejemplo:
  • create
  • delete
  • update
  • delete
  • view
Valor de return
Se retorna true si la acción se puede realizar, de lo contrario, se retorna false.

Ej.
1.    
2.
function hook_access($op, $node) {
3. global $user;
4.
5.
if ($op == 'create') {
6. return user_access('create stories');
7. }
8.
9.
if ($op == 'update' || $op == 'delete') {
10. if (user_access('edit own stories') && ($user->uid == $node->uid)) {
11. return TRUE;
12. }
13. }
14. }
15. ?>
Fuente: http://drupa.org/api/function/hook_access/5

Saludos ...

No hay comentarios: