User management for the world wide web

Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members

GenieGate_Api_Plugin Class Reference

This is an example "base" plugin for listening to events. More...

Inheritance diagram for GenieGate_Api_Plugin:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 preCheck (&$ua, &$fields, &$errors)
 This is called prior to creating an account, it is called before anything is entered into the database.

 preConfirm (&$ua, &$fields, $conf_id, &$errors)
 Preconfirm user account, this is called when the user clicks on the link that was sent to them, but BEFORE the account is confirmed.

 setupUser (&$ua, &$fields, $confirm_id)
 setupUser - Sets up the user data.

 removeUser (&$ua, $uid, &$fields)
 Called during the removal of a user.

 groupNameChange (&$gm, $gid, $name, $sign_ok, $is_new)
 Called when a new group definition is created, or an existing one has been modified.

 groupNameDelete (&$gm, $gid, &$info)
 Called when a named group is removed.

 userInfoChanged (&$um, $uid, &$old_values, &$new_values)
 Called whenever the users information has changed.

 userGroupsChanged (&$gm, $uid, &$oldg, &$newg)
 This method is invoked whenever a users groups have changed.

 propertyCreated (&$prop, &$section, &$property, &$description)
 Fired when a new property is being defined.

 propertyChanged (&$prop, $uid, &$section, &$property, &$old_value, &$new_value)
 fired when a property has changed.

 propertyRemoved (&$prop, $uid, $section, $property, $old_value)
 This is fired when a property is removed.

 propertyUndefine (&$prop, $section, $property)
 This is called when a property is about to be removed for all users.

 dispatchStart (&$controller, $trigger, $method)
 This is called just prior to running a dispatch method.

 dispatchEnd (&$controller, $method, &$view)
 Called after running the "model".


Detailed Description

This is an example "base" plugin for listening to events.

The classic problem with User Account management is that it often tends to interface with other applications, Management routines that don't interface well cause problems with usability. (User needing to keep several passwords around)

We've attempted to solve part of this by providing a "plugin" model, of listeners.

By creating a class that extends this one, setting the application up to use it, (calling GenieGate_UserAccount->addListener($your_object) ) you can provide "hooks" for various stages.

Note that some of thes methods are called several times for the duration of the request, an example is propertyRemoved() which is called for each property of each user when users are deleted.

For this reason, it is advised to que up processes like that and do them all at once later.

Definition at line 21 of file Plugin.php.


Member Function Documentation

dispatchEnd &$  controller,
method,
&$  view
 

Called after running the "model".

This is called after the dispatch method has been invoked, but before the view is shown with View::display(). $view can be assigned to.

Parameters:
$controller - The controller object.
$method - The method that ended.
$view - The view that is about to be shown.

Reimplemented in GenieGate_Api_Plugin_Logger.

Definition at line 176 of file Plugin.php.

dispatchStart &$  controller,
trigger,
method
 

This is called just prior to running a dispatch method.

$method should be perferred to using the trigger variable for indication of what is to be run. (because there may be multiple triggers pointing to the same method)

Parameters:
$controller - The Controller object.
$trigger - The form variable name, path, string that triggered this method.
$method - The method that is about to be run.

Reimplemented in GenieGate_Api_Plugin_Logger.

Definition at line 164 of file Plugin.php.

groupNameChange &$  gm,
gid,
name,
sign_ok,
is_new
 

Called when a new group definition is created, or an existing one has been modified.

Parameters:
$gm - The GroupMod object.
$gid - The group ID.
$name - The group name.
$sign_ok - Flag suggesting it's OK for a user to sign self to group.
$is_new - If this is a new group, this flag is set to TRUE, FALSE if it's an update.

Reimplemented in GenieGate_Api_Plugin_Logger.

Definition at line 74 of file Plugin.php.

groupNameDelete &$  gm,
gid,
&$  info
 

Called when a named group is removed.

Note:
This is called PRIOR to removal of group, (because plugins may need to query extra info)
Parameters:
$gm - GroupMod object.
$gid - Group ID that was removed.
$info - Group information that was removed.

Reimplemented in GenieGate_Api_Plugin_Apache, GenieGate_Api_Plugin_ApacheDBM, and GenieGate_Api_Plugin_Logger.

Definition at line 84 of file Plugin.php.

preConfirm &$  ua,
&$  fields,
conf_id,
&$  errors
 

Preconfirm user account, this is called when the user clicks on the link that was sent to them, but BEFORE the account is confirmed.

Parameters:
$ua - The GenieGate_UserAccount object.
$fields - The field info.
$conf_id - The confirmation ID.
$errors - The error codes.
Returns:
$errors - Array of error messages (if any)

Reimplemented in GenieGate_Api_Plugin_Logger.

Definition at line 41 of file Plugin.php.

propertyChanged &$  prop,
uid,
&$  section,
&$  property,
&$  old_value,
&$  new_value
 

fired when a property has changed.

See also:
GenieGate_Properties
Parameters:
$prop - The GenieGate_Properties object.
$uid - The user ID.
$section - The Section ID. (section key)
$property - The name of the property.
$old_value - The original value of this property. (if there was one.)
$new_value - The new value, (What this property has been changed to)

Reimplemented in GenieGate_Api_Plugin_Logger.

Definition at line 128 of file Plugin.php.

propertyCreated &$  prop,
&$  section,
&$  property,
&$  description
 

Fired when a new property is being defined.

Parameters:
$prop - The GenieGate_Properties object.
$section - The section key. (Example: genie.UserProperty)
$property - The property name. (Example: firstName)
$description - The description of this property. (Example: Persons first name)

Reimplemented in GenieGate_Api_Plugin_Logger.

Definition at line 114 of file Plugin.php.

propertyRemoved &$  prop,
uid,
section,
property,
old_value
 

This is fired when a property is removed.

(such as when a user is deleted.)

See also:
GenieGate_Properties
Parameters:
$prop - The GenieGate_Properties object.
$uid - The user ID.
$section - The section code.
$property - The property being removed.
$old_value - The original value of the property.

Reimplemented in GenieGate_Api_Plugin_Logger.

Definition at line 140 of file Plugin.php.

propertyUndefine &$  prop,
section,
property
 

This is called when a property is about to be removed for all users.

Note:
this is called prior to removing the property to give any of the callbacks an opportunity to see what the individual values were.
Parameters:
$prop - The GenieGate_Properties object.
$section - The section code.
$property - The property being removed/undefined.

Reimplemented in GenieGate_Api_Plugin_Logger.

Definition at line 152 of file Plugin.php.

removeUser &$  ua,
uid,
&$  fields
 

Called during the removal of a user.

Parameters:
$ua - The GenieGate_UserAccount object.
$uid - The user ID.
$fields - the fields data.

Reimplemented in GenieGate_Api_Plugin_ApacheDBM, and GenieGate_Api_Plugin_Logger.

Definition at line 62 of file Plugin.php.

setupUser &$  ua,
&$  fields,
confirm_id
 

setupUser - Sets up the user data.

This is called after a user has verified his/her email address. NOTE: this may be called several times for the same user.

Parameters:
$ua - The GenieGate_UserAccount object.
$fields - Associative array of fields for this user.
$confirm_id - Confirmation code.

Reimplemented in GenieGate_Api_Plugin_Logger.

Definition at line 53 of file Plugin.php.

userGroupsChanged &$  gm,
uid,
&$  oldg,
&$  newg
 

This method is invoked whenever a users groups have changed.

Parameters:
$gm - The GroupMod object.
$uid - The User ID the change applies to.
$oldg - Array of what the old gid's were.
$newg - Array of the gid's that are added.

Reimplemented in GenieGate_Api_Plugin_Apache, GenieGate_Api_Plugin_ApacheDBM, and GenieGate_Api_Plugin_Logger.

Definition at line 104 of file Plugin.php.

userInfoChanged &$  um,
uid,
&$  old_values,
&$  new_values
 

Called whenever the users information has changed.

Parameters:
$um - The GenieGate_UserAccount object.
$uid - The user ID.
$old_values - The user info before the change.
$new_values - The user new info.

Reimplemented in GenieGate_Api_Plugin_Apache, GenieGate_Api_Plugin_ApacheDBM, and GenieGate_Api_Plugin_Logger.

Definition at line 94 of file Plugin.php.


The documentation for this class was generated from the following file:
DoxyGen Documentation generated by DoxyGen