[wellwell-devel] [wellwell/zoom] Add delegation to plugin hooks to backend action map.

Stefan Hornburg wellwell-devel at rt.icdevgroup.org
Wed Sep 15 10:47:35 UTC 2010


commit dd640ef1a5c0c10f30b1c53e4bf38aa5eda46eeb
Author: Stefan Hornburg (Racke) <racke at linuxia.de>
Date:   Wed Sep 15 12:43:49 2010 +0200

    Add delegation to plugin hooks to backend action map.

 plugins/backend/code/backend.sub |   20 ++++++++++++++++++--
 1 files changed, 18 insertions(+), 2 deletions(-)
---
diff --git a/plugins/backend/code/backend.sub b/plugins/backend/code/backend.sub
index 96227bb..3a89eac 100644
--- a/plugins/backend/code/backend.sub
+++ b/plugins/backend/code/backend.sub
@@ -65,8 +65,24 @@ sub {
 		}
 		return 1;
 	} else {
-		$Tag->perl({tables => 'categories'});
-		$CGI->{mv_nextpage} = 'backend/products/list';
+		# delegate to a plugin?
+		my (@ret, @path);
+
+		@path = @args;
+		shift @path;
+		
+		@ret = $Tag->call_hooks({name => 'backend', mode => 'collect', plugins => $args[0],
+			path => \@path});
+
+		if ($ret[0]) {
+			return 1;
+		}
+		else {
+			$Tag->error({name => 'backend', set => 'No appropriate backend action found.'});
+			$Tag->perl({tables => 'categories'});
+			$CGI->{mv_nextpage} = 'backend/products/list';
+		}
+
 		return 1;
 	}
 



More information about the wellwell-devel mailing list