summaryrefslogtreecommitdiff
path: root/inc/events.php
Commit message (Collapse)AuthorAge
* Changes for PHP 7 CompatibilityChristopher Smith2015-05-15
| | | | | | | - replace PHP4 style class constructor function names (based on class name) with php 5 __construct() Also remove some '&' reference operators used with objects And add some object type hints
* PHPDocs and some improvementsGerrit Uitslag2014-10-02
|
* Many PHPDocs, some unused and dyn declared varsGerrit Uitslag2014-10-01
| | | | | | many PHPDocs some unused variables some dynamically declared variables declared
* Events: Trigger a warning if the default action is not callableMichael Hamann2014-03-14
| | | | | | This adds a warning in the case that the default action is not null but also not callable which can happen when the supplied method is not public.
* PHPDocs for Doku_Event and handlerGerrit Uitslag2014-02-17
|
* remove '' from list, its not part of the hook arrayChristopher Smith2014-02-17
|
* Ensure hook array is always in the correct sequenceChristopher Smith2014-02-16
| | | | | | Changed to sort on add from sort on process for efficiency. Some events (e.g. AUTH_ACL_CHECK) could be trigged many times in a single page request.
* remove reference operator from object, no longer requiredChristopher Smith2014-02-16
|
* add appropriate visibility keywords to event propertiesChristopher Smith2014-02-16
|
* since php 5, no need to access objects by referenceChristopher Smith2014-02-16
|
* An event object used as a string will return its name - the event nameChristopher Smith2014-02-16
|
* Add ordering to event handlersChristopher Smith2014-02-16
| | | | | | | | | | | | | Allows a sequence integer to be supplied when registering to handle an event. When processing an event, handlers (hooks) will be executed in ascending order of their sequence number. If two or more handlers have the same sequence number their order of execution is undefined. A handler wanting to be first, should use -PHP_MAX_INT. A handler wanting to be last can use PHP_MAX_INT. There may be conflicts if two or more plugins use these values in the expectation that they will guarantee being first or last.
* fix E_STRICT errors FS#2427Andreas Gohr2012-07-28
| | | | | | | | This commit fixes all E_STRICT messages shown when running the test suite. There might be more problems not covered by tests, yet. For compatibility reasons with plugins, E_STRICT errors are still supressed.
* Fix nested triggering of the same eventMichael Hamann2012-05-11
| | | | | | | | | | Previously when in an event handler the same event was triggered again, only the handlers for the second event invocation were all executed, the handling of the "outer" event stopped after the handling of the inner event as they both used the same iterator of the hooks array. This caused caching bugs e.g. when both the include and the indexmenu plugin were enabled as both of them load metadata in the cache handler which triggers another renderer cache event.
* no need to pass objects by referenceAndreas Gohr2012-04-17
| | | | fixes passing null to event hook registration
* moved plugincontroller and event handler creation to init.phpMichael Klier2010-03-26
|
* first attempt to centralize all include loadingAndreas Gohr2010-01-31
| | | | | | | | Classes are loaded throug PHP5's class autoloader, all other includes are just loaded by default. This skips a lot of require_once calls. Parser and Plugin stuff isn't handled by the class loader yet.
* some more coding standard compliance updatesAndreas Gohr2010-01-15
|
* removed some illogical path setupsAndreas Gohr2008-12-13
| | | | darcs-hash:20081213090400-7ad00-4e21cd75978bb07513f32f5d750658e8d777c59e.gz
* don't use realpath() anymore (FS#1261 and others)Andreas Gohr2007-09-30
| | | | | | | | | | | The use of realpath() to clean up relative file names caused some trouble in certain setups relying on symlinks or having restricitve file structure setups. This patch replaces all realpath() calls with a PHP only replacement which should solve those problems. darcs-hash:20070930184250-7ad00-512ff04c95f57fc9eaf104f80372237a3c94286f.gz
* two more event hooksAndreas Gohr2006-11-16
| | | | darcs-hash:20061116212937-7ad00-2ac647a9040f75650bdbe1047e76370f9c900dff.gz
* unittest fixeschris2006-08-04
| | | | darcs-hash:20060804142243-9b6ab-d208f7f1a67a9958fda05c519c8407ad5e733cea.gz
* events.php updatechris2006-07-25
| | | | | | | fixes issue whereby event handler objects (e.g. action plugins) were being copied rather than accessed by reference. darcs-hash:20060725123219-9b6ab-d684db577251b108a062a41a2b1ee1eda472f835.gz
* fixing undefined variablesBen Coburn2006-07-10
| | | | | | | Fixing undefined variable notices and sometimes the underlying error that produced them. darcs-hash:20060710114655-05dcb-073948171847f1f43f153e96c8382abd421da36a.gz
* event (minor) updatechris2006-04-25
| | | | | | | correct handling of enablePreventDefault in advise_before() improved comments for trigger_event() wrapper darcs-hash:20060424234541-9b6ab-b07040f60b86c40466b95d92514b0a0d60674a83.gz
* event system revisionchris2006-04-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a major revision of DokuWiki's event system. There are changes to class names, function names, function parameters and their order and event names. For action plugin writers the following changes are important: - <event_name> is no longer signalled, only <event_name>_BEFORE and <event_name>_AFTER. - note the case change for _BEFORE and _AFTER - calling stopPropagation while processing a _BEFORE signal no longer prevents an _AFTER signal. The events _continue value is reset before the _AFTER signal is made. - events have a new readonly property, canPreventDefault. This lets the event handling hook know whether or not the event honours preventDefault calls. - parameters have changed for the register_hook method, parameters are now $event_name, $advise (can be 'BEFORE' or 'AFTER') $object $method $param (this parameter is now optional) - parameter order has changed for the hook event handler callback functions &$event $param (can now be left off) Event names have changed, they are now structured <dokuwiki name>_<event data name>_<action_name or state if no action> DOKUWIKI_START darcs-hash:20060424220152-9b6ab-00e366288f7ec8a85b85dc83694a5f43a07aa082.gz
* action pluginschris2006-04-14
This patch adds events and a third plugin type, "action" plugins, to DokuWiki. The patch doesn't include any event signalling, that will be added in later patches. Action plugins are loaded before most Dokuwiki processing takes place and at the same time are given the opportunity to register handlers (or hooks) to receive specific dokuwiki events. Other parts of Dokuwiki (e.g. templates and syntax plugins) can also register handlers to receive events. Any part of Dokuwiki can create and signal events, including templates and plugins. This patch also revises the admin plugin class by making it an extension of a new class, DokuWiki_Plugin. The DokuWiki_Plugin_Action class also extends this new class. Further details of events, their signalling and handling, and of action plugins will be added to wiki.splitbrain.org in due course :-) darcs-hash:20060414193737-9b6ab-f23d3d9b93e4c50a3ad97ced03eabc6c0363650b.gz