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

De OviWiki
Aller à : navigation, rechercher
(table des listener)
Ligne 61 : Ligne 61 :
  
 
L'ordre d'appel des fonction enregistrées dans le listener est indéterminé (le premier enregistré est le premier appelé)
 
L'ordre d'appel des fonction enregistrées dans le listener est indéterminé (le premier enregistré est le premier appelé)
 +
 +
 +
== Tout les événements disponibles ==
 +
 +
{border=1
 +
|-
 +
|Evenement
 +
|Module
 +
|Description
 +
|-
 +
|bab_eventCreatePeriods
 +
|core
 +
|Evenement 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
 +
}

Version du 8 janvier 2007 à 13:21

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é)


Tout les événements disponibles

{border=1 |- |Evenement |Module |Description |- |bab_eventCreatePeriods |core |Evenement 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 }