Hi MODxers,
Just want to share about the sequences of system events, especially when updating or creating resource.
Before I examine this stuff, I guess that OnDocFormPrerender has been executed before OnDocFormRender. But I was wrong. I also found that the system events of the plugin did not affect
Quick Create Resource or
Quick Update Resource.
I'm using MODx 2.2.5 pl. The sequences maybe differ from version to version.
THE SEQUENCES & VARIABLES PROVIDED
-----------------------------------------
A. CREATE NEW RESOURCE
- OnHandleRequest
- OnManagerPageInit [$action = 55]
- OnBeforeManagerPageInit [$action = ARRAY]
- OnManagerPageBeforeRender [$controller = OBJECT]
- OnDocFormRender [$id = 0, $resource = OBJECT, $mode = 'new']
- OnResourceTVFormPrerender [$resource = 0]
- OnTVInputRenderList
- OnResourceTVFormRender [$categories = ARRAY, $template = 1, $resource = 0, $tvCounts = ARRAY, $hidden = ARRAY]
- OnRichTextEditorRegister
- OnRichTextEditorInit [$editor = TinyMCE, $elements = ARRAY, $id = 0, $resource = OBJECT, $mode = 'new']
- OnDocFormPrerender [$id = 0, $mode = 'new']
- OnManagerPageAfterRender [$controller = OBJECT]
+++
B. EDIT/UPDATE RESOURCE
In this example, I edited resource with ID=14
- OnHandleRequest
- OnManagerPageInit [$action = 30]
- OnBeforeManagerPageInit [$action = ARRAY]
- OnManagerPageBeforeRender [$controller = OBJECT]
- OnDocFormRender [$id = 14, $resource = OBJECT, $mode = 'upd']
- OnResourceTVFormPrerender [$resource = 14]
- OnTVInputRenderList
- OnResourceTVFormRender [$categories = ARRAY, $template = 1, $resource = 14, $tvCounts = ARRAY, $hidden = ARRAY]
- OnRichTextEditorRegister
- OnRichTextEditorInit [$editor = TinyMCE, $elements = ARRAY, $id = 14, $resource = OBJECT, $mode = 'upd']
- OnDocFormPrerender [$id = 14, $mode = 'upd', $resource = OBJECT]
- OnManagerPageAfterRender
+++
C. SAVE RESOURCE
- OnBeforeDocFormSave
- OnDocFormSave
Hope this help someone who want to create a new plugin...
Cheers,
Zaenal