From 9b94eb64153a7dc6555d6b9a30a35296ce592f82 Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Sat, 06 Feb 2010 13:12:49 -0500
Subject: [PATCH] - Fix setting task name according to auth state. So, any action before user   is authenticated is assigned to 'login' task instead of 'mail'. Now binding   plugins to 'login' task is possible and realy usefull. It's also possible    to bind to all tasks excluding 'login'. 

---
 program/include/rcube_plugin_api.php |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/program/include/rcube_plugin_api.php b/program/include/rcube_plugin_api.php
index 1eeadce..b19c0a3 100644
--- a/program/include/rcube_plugin_api.php
+++ b/program/include/rcube_plugin_api.php
@@ -90,7 +90,7 @@
         if (class_exists($plugin_name, false)) {
           $plugin = new $plugin_name($this);
           // check inheritance and task specification
-          if (is_subclass_of($plugin, 'rcube_plugin') && (!$plugin->task || preg_match('/('.$plugin->task.')/i', $rcmail->task))) {
+          if (is_subclass_of($plugin, 'rcube_plugin') && (!$plugin->task || preg_match('/^('.$plugin->task.')$/i', $rcmail->task))) {
             $plugin->init();
             $this->plugins[] = $plugin;
           }

--
Gitblit v1.9.1