Go to the source code of this file.
elgg provide |
( |
'elgg.config.hooks' |
| ) |
|
Initial value: return elgg.is_in_object_array(
elgg.config.instant_hooks, name,
type);
}
Is this hook registered as an instant hook?
- Parameters
-
{String} | name The hook name. |
{String} | type The hook type. |
Definition at line 150 of file hooks.js.
Initial value: return elgg.is_in_object_array(
elgg.config.triggered_hooks, name,
type);
}
Has this hook been triggered yet?
- Parameters
-
{String} | name The hook name. |
{String} | type The hook type. |
Definition at line 170 of file hooks.js.
elgg register_hook_handler |
Initial value:=
function(name,
type, handler, priority) {
elgg.assertTypeOf(
'string', name);
elgg.assertTypeOf(
'function', handler);
return false;
}
var priorities =
elgg.config.hooks;
elgg.provide(name +
'.' +
type, priorities);
if (!(priorities[name][
type] instanceof
elgg.ElggPriorityList)) {
priorities[name][
type] =
new elgg.ElggPriorityList();
}
handler(name,
type, null, null);
}
return priorities[name][
type].insert(handler, priority);
}
Registers a hook handler with the event system.
The special keyword "all" can be used for either the name or the type or both and means to call that handler for all of those hooks.
Note that handlers registering for instant hooks will be executed immediately if the instant hook has been previously triggered.
- Parameters
-
{String} | name Name of the plugin hook to register for |
{String} | type Type of the event to register for |
{Function} | handler Handle to call |
{Number} | priority Priority to call the event handler |
- Returns
- {Bool}
Definition at line 24 of file hooks.js.
elgg register_instant_hook |
Initial value: elgg.assertTypeOf(
'string', name);
return elgg.push_to_object_array(
elgg.config.instant_hooks, name,
type);
}
Registers a hook as an instant hook.
After being trigger once, registration of a handler to an instant hook will cause the handle to be executed immediately.
- Note
- Instant hooks must be triggered without params or defaults. Any params or default passed will not be passed to handlers executed upon registration.
- Parameters
-
{String} | name The hook name. |
{String} | type The hook type. |
- Returns
- {Int}
Definition at line 137 of file hooks.js.
Initial value: return elgg.push_to_object_array(
elgg.config.triggered_hooks, name,
type);
}
Records that a hook has been triggered.
- Parameters
-
{String} | name The hook name. |
{String} | type The hook type. |
Definition at line 160 of file hooks.js.
Emits a hook.
Loops through all registered hooks and calls the handler functions in order. Every handler function will always be called, regardless of the return value.
- Warning
- Handlers take the same 4 arguments in the same order as when calling this function. This is different from the PHP version!
- Note
- Instant hooks do not support params or values.
Hooks are called in this order: specifically registered (event_name and event_type match) all names, specific type specific name, all types all names, all types
- Parameters
-
{String} | name Name of the hook to emit |
{String} | type Type of the hook to emit |
{Object} | params Optional parameters to pass to the handlers |
{Object} | value Initial value of the return. Can be mangled by handlers |
- Returns
- {Bool}
Definition at line 73 of file hooks.js.