A start for a new change_password master plugin. This is not finished
[squirrelmail.git] / plugins / listcommands / setup.php
index b432ced4f4c3e4159ebd980415b86e40949baf8c..b714513230f8372e7ca1dcc17eebd0d7a3d56bd5 100644 (file)
  * commands such as (un)subscribe, help and list archives.
  *
  * $Id$
+ * @package plugins
+ * @subpackage listcommands
  */
 
+/**
+ * Initialize the listcommands plugin
+ */
 function squirrelmail_plugin_init_listcommands () {
     global $squirrelmail_plugin_hooks;
 
@@ -21,8 +26,7 @@ function squirrelmail_plugin_init_listcommands () {
 }
 
 function plugin_listcommands_menu() {
-    global $passed_id, $passed_ent_id, $color, $mailbox,
-           $message, $compose_new_win;
+    global $passed_id, $passed_ent_id, $color, $mailbox, $message;
 
     /**
      * Array of commands we can deal with from the header. The Reply option
@@ -40,8 +44,11 @@ function plugin_listcommands_menu() {
     foreach ($message->rfc822_header->mlist as $cmd => $actions) {
 
        /* I don't know this action... skip it */
-        /* array_key_exists works only in >= 4.1 */
-        if ( !in_array($cmd, array_keys($fieldsdescr)) ) {
+       if ( ( function_exists('array_key_exists') &&       /* PHP >= 4.1 */
+               !array_key_exists($cmd, $fieldsdescr) ) ||
+             ( function_exists('key_exists') && 
+               !key_exists($cmd, $fieldsdescr) )            /* PHP == 4.0.6 */
+        ) {
             continue;
         }
 
@@ -52,28 +59,23 @@ function plugin_listcommands_menu() {
         if ($proto == 'mailto') {
 
             if (($cmd == 'post') || ($cmd == 'owner')) {
-                $url = 'compose.php?';
+                $url = 'src/compose.php?';
             } else {
-                $url = "../plugins/listcommands/mailout.php?action=$cmd&";
+                $url = "plugins/listcommands/mailout.php?action=$cmd&";
             }
             $url .= 'send_to=' . strtr($act,'?','&');
 
-            if ($compose_new_win == '1') {
-                $output[] = "<a href=\"javascript:void(0)\" onclick=\"comp_in_new('$url')\">" . $fieldsdescr[$cmd] . '</a>';
-            }
-            else {
-                $output[] = '<a href="' . $url . '">' . $fieldsdescr[$cmd] . '</a>';
-            }
+            $output[] = makeComposeLink($url, $fieldsdescr[$cmd]);
+
             if ($cmd == 'post') {
+                if (!isset($mailbox))
+                    $mailbox = 'INBOX';
                $url .= '&amp;passed_id='.$passed_id.
                        '&amp;mailbox='.urlencode($mailbox).
                        (isset($passed_ent_id)?'&amp;passed_ent_id='.$passed_ent_id:'');
-                $url .= '&amp;action=reply';
-                if ($compose_new_win == '1') {
-                    $output[] = "<a href=\"javascript:void(0)\" onclick=\"comp_in_new('$url')\">" . $fieldsdescr['reply'] . '</a>';
-                } else {
-                    $output[] = '<a href="' . $url . '">' . $fieldsdescr['reply'] . '</a>';
-                }
+                $url .= '&amp;smaction=reply';
+
+                $output[] = makeComposeLink($url, $fieldsdescr['reply']);
             }
         } else if ($proto == 'href') {
             $output[] = '<a href="' . $act . '" target="_blank">'