API du gestionnaire d'événement : Différence entre versions

De OviWiki
Aller à : navigation, rechercher
(Tout les événements disponibles)
(Ovidentia)
Ligne 111 : Ligne 111 :
 
|bab_eventDirectory
 
|bab_eventDirectory
 
|Événement appelé lors de la suppression d'un utilisateur
 
|Événement appelé lors de la suppression d'un utilisateur
 +
|-
 +
|bab_eventGroupDeleted
 +
|bab_event
 +
|Événement appelé lors de la suppression d'un groupe
 
|}
 
|}
  
 
=== Module ===
 
=== Module ===

Version du 17 janvier 2007 à 11:46

table des listener

  • id
  • event_class_name
  • function_name
  • require_file
  • addon_name

event_class_name est le nom d'une classe héritée de bab_event

function_name est le nom d'une fonction déclarée dans le ficher spécifié dans la colonne require_file

le paramètre require_file est le chemin relatif au noyau d'ovidentia d'un fichier php

Ajouter un listener :

bab_addEventListener('event_class_name', 'function_name', 'require_file', 'addon_name');

Enlever un listener :

bab_removeEventListener('event_class_name', 'function_name', 'require_file', 'addon_name');


La fonction inscrite dans la colonne function_name sera délarée dans le fichier 'require_file' comme ceci :

function ats_onBabPasswordModified(&$event) {

}

Appel d'événement

Lors de l'appel d'un événement, toutes les fonctions enregistrées dans la tables des "listener" qui ont pour event_class_name, le nom de l'objet ou le nom d'un des parentsde l'objet sont appelés, pour chaque enregistrement on effectue les actions suivantes :

  1. si 'addon_name' est un nom de module valide, le contexte du module est créé
  2. le nom du fichier contenu dans 'require_file' est inclu avec la fonction require_once
  3. la fonction 'function_name' est appelée avec un seul paramètre qui est l'instance de l'événement

class bab_userModified extends bab_event {

}

class bab_passwordModified extends bab_userModified {

}

$event_obj = new bab_passwordModified();

bab_fireEvent($event_obj);


L'ordre d'appel des fonction enregistrées dans le listener est indéterminé (le premier enregistré est le premier appelé)


Tous les événements disponibles

Ovidentia

Evenement Parent Description
bab_eventBeforePeriodsCreated bab_event Événement appelé au moment de la création d'un planning (agenda, planning de congés...), il est utilisé pour collecter les événements à afficher pour une période donnée
bab_eventPeriodModified bab_event Événement appelé lors de la modification d'un ou plusieurs événements sur une période donnée
bab_eventBeforeWaitingItemsDisplayed bab_event Événement appelé lors de l'affichage des instances d'approbation en attente sur la page "approbations"
bab_eventDirectory bab_event Événement appelé lors d'une intervention sur une fiche d'annuaire ou d'un utilisateur d'ovidentia
bab_eventDirectoryEntryCreated bab_eventDirectory Événement appelé lors de la création d'une fiche d'annuaire
bab_eventDirectoryEntryModified bab_eventDirectory Événement appelé lors de la modification d'une fiche d'annuaire
bab_eventDirectoryEntryDeleted bab_eventDirectory Événement appelé lors de la suppression d'une fiche d'annuaire
bab_eventUserCreated bab_eventDirectory Événement appelé lors de la création d'un utilisateur
bab_eventUserModified bab_eventDirectory Événement appelé lors de la modification d'un utilisateur
bab_eventUserDeleted bab_eventDirectory Événement appelé lors de la suppression d'un utilisateur
bab_eventGroupDeleted bab_event Événement appelé lors de la suppression d'un groupe

Module