aboutsummaryrefslogtreecommitdiffstats
path: root/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'plugins')
-rw-r--r--plugins/event_tracer/main.inc.php (renamed from plugins/event_tracer/index.php)52
-rw-r--r--plugins/event_tracer/tracer_admin.tpl2
-rw-r--r--plugins/hello_world/index.php18
-rw-r--r--plugins/hello_world/main.inc.php30
4 files changed, 61 insertions, 41 deletions
diff --git a/plugins/event_tracer/index.php b/plugins/event_tracer/main.inc.php
index cc9130b67..fef23296a 100644
--- a/plugins/event_tracer/index.php
+++ b/plugins/event_tracer/main.inc.php
@@ -19,7 +19,7 @@ class EventTracer
function load_config()
{
- $x = @file_get_contents( dirname(__FILE__).'/tracer.dat' );
+ $x = @file_get_contents( dirname(__FILE__).'/data.dat' );
if ($x!==false)
{
$c = unserialize($x);
@@ -37,39 +37,45 @@ class EventTracer
function save_config()
{
- $file = fopen( dirname(__FILE__).'/tracer.dat', 'w' );
+ $file = fopen( dirname(__FILE__).'/data.dat', 'w' );
fwrite($file, serialize($this->my_config) );
fclose( $file );
}
- function pre_trigger_event($event_info)
+ function on_pre_trigger_event($event_info)
{
- if (!$this->me_working)
+ $this->dump('pre_trigger_event', $event_info);
+ }
+ function on_post_trigger_event($event_info)
+ {
+ $this->dump('post_trigger_event', $event_info);
+ }
+
+ function on_trigger_action($event_info)
+ {
+ $this->dump('trigger_action', $event_info);
+ }
+
+ function dump($event, $event_info)
+ {
+ foreach( $this->my_config['filters'] as $filter)
{
- foreach( $this->my_config['filters'] as $filter)
+ if ( preg_match( '/'.$filter.'/', $event_info['event'] ) )
{
- if ( preg_match( '/'.$filter.'/', $event_info['event'] ) )
+ if ($this->my_config['show_args'])
{
- if ($this->my_config['show_args'])
- $s = var_export( $event_info['data'], true );
- else
- $s = '';
- pwg_debug('begin trigger_event "'.$event_info['event'].'" '.htmlspecialchars($s) );
- break;
+ $s = '<pre>';
+ $s .= htmlspecialchars( var_export( $event_info['data'], true ) );
+ $s .= '</pre>';
}
+ else
+ $s = '';
+ pwg_debug($event.' "'.$event_info['event'].'" '.($s) );
+ break;
}
}
}
- /*function post_trigger_event($filter_info)
- {
- if (!$this->me_working)
- {
- $s = var_export( $filter_info['data'], true );
- pwg_debug('end trigger_event '.$filter_info['event'].' '.$s );
- }
- }*/
-
function plugin_admin_menu()
{
add_plugin_admin_menu( "Event Tracer", array(&$this, 'do_admin') );
@@ -86,5 +92,7 @@ $eventTracer = new EventTracer();
$eventTracer->load_config();
add_event_handler('plugin_admin_menu', array(&$eventTracer, 'plugin_admin_menu') );
-add_event_handler('pre_trigger_event', array(&$eventTracer, 'pre_trigger_event') );
+add_event_handler('pre_trigger_event', array(&$eventTracer, 'on_pre_trigger_event') );
+add_event_handler('post_trigger_event', array(&$eventTracer, 'on_post_trigger_event') );
+add_event_handler('trigger_action', array(&$eventTracer, 'on_trigger_action') );
?> \ No newline at end of file
diff --git a/plugins/event_tracer/tracer_admin.tpl b/plugins/event_tracer/tracer_admin.tpl
index 38fbd2796..95ee65907 100644
--- a/plugins/event_tracer/tracer_admin.tpl
+++ b/plugins/event_tracer/tracer_admin.tpl
@@ -8,7 +8,7 @@ You can use this plugin to see what events is PhpWebGallery calling.
<legend>Event Tracer</legend>
<label>Show event argument
- <input type="checkbox" name="eventTracer_show_args" value="{EVENT_TRACER_SHOW_ARGS}" />
+ <input type="checkbox" name="eventTracer_show_args" {EVENT_TRACER_SHOW_ARGS} />
</label>
<br/>
<label>Fill below a list of regular expressions (one per line).
diff --git a/plugins/hello_world/index.php b/plugins/hello_world/index.php
deleted file mode 100644
index d2a8bcddb..000000000
--- a/plugins/hello_world/index.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php /*
-Plugin Name: Hello World !
-Author: PhpWebGallery team
-Description: This example plugin changes the page banner for the administration page
-*/
-
-add_event_handler('page_banner', 'hello_world_banner' );
-
-function hello_world_banner($banner)
-{
- global $page;
- if ( isset($page['body_id']) and $page['body_id']=='theAdminPage')
- {
- return '<h1>Hello world from PhpWebGallery plugin!</h1>';
- }
- return $banner;
-}
-?>
diff --git a/plugins/hello_world/main.inc.php b/plugins/hello_world/main.inc.php
new file mode 100644
index 000000000..eb5f98b82
--- /dev/null
+++ b/plugins/hello_world/main.inc.php
@@ -0,0 +1,30 @@
+<?php /*
+Plugin Name: Hello World !
+Author: PhpWebGallery team
+Description: This example plugin changes the page banner for the administration page.
+*/
+
+add_event_handler('loc_begin_page_header', 'hello_world_begin_header' );
+
+function hello_world_begin_header()
+{
+ global $page;
+ if ( isset($page['body_id']) and $page['body_id']=='theAdminPage')
+ {
+ $hellos = array( 'Aloha', 'Ahoy', 'Guten tag', 'Hello', 'Hoi', 'Hola', 'Salut', 'Yo' );
+ shuffle($hellos);
+ $page['page_banner'] = $hellos[0];
+ // just as an example we modify it a little bit later
+ add_event_handler('loc_end_page_header', 'hello_world_end_header');
+ }
+}
+
+
+function hello_world_end_header()
+{
+ global $template, $page;
+ $template->assign_var( 'PAGE_BANNER',
+ '<h1>"'.$page['page_banner'].'" from PhpWebGallery plugin!</h1>');
+}
+
+?> \ No newline at end of file