silly typo and a fix for browsers which don't understand target _self
[squirrelmail.git] / src / options_identities.php
index aff95a75c31fe7aa32ff05548d3cae94ca663fc9..310f06079af83abcd0b58d37172a60eed2e040d3 100644 (file)
  * $Id$
  */
 
-/*****************************************************************/
-/*** THIS FILE NEEDS TO HAVE ITS FORMATTING FIXED!!!           ***/
-/*** PLEASE DO SO AND REMOVE THIS COMMENT SECTION.             ***/
-/***    + Base level indent should begin at left margin, as    ***/
-/***      the require_once below looks.                        ***/
-/***    + All identation should consist of four space blocks   ***/
-/***    + Tab characters are evil.                             ***/
-/***    + all comments should use "slash-star ... star-slash"  ***/
-/***      style -- no pound characters, no slash-slash style   ***/
-/***    + FLOW CONTROL STATEMENTS (if, while, etc) SHOULD      ***/
-/***      ALWAYS USE { AND } CHARACTERS!!!                     ***/
-/***    + Please use ' instead of ", when possible. Note "     ***/
-/***      should always be used in _( ) function calls.        ***/
-/*** Thank you for your help making the SM code more readable. ***/
-/*****************************************************************/
-
 require_once('../src/validate.php');
 require_once('../functions/display_messages.php');
 
-   if (isset($return)) {
-      SaveUpdateFunction();
-      header('Location: options_personal.php');
-      exit();
-   }
-   
-   displayPageHeader($color, 'None');
-
-   $Info = do_hook('options_identities_process', 0);
-   if ($Info[1])
-      SaveUpdateFunction();
-
-   if (CheckAndDoDefault() || CheckAndDoPromote()) {
-      SaveUpdateFunction();
-   }
-   if (isset($update) || CheckForDelete())
-      SaveUpdateFunction();
-
-   LoadInfo($full_name, $email_address, $reply_to, '');
+    if (isset($return)) {
+       SaveUpdateFunction();
+       header('Location: options_personal.php');
+       exit();
+    }
+    
+    displayPageHeader($color, 'None');
+    $Info = do_hook('options_identities_process', 0);
+    if ($Info[1]) {
+        SaveUpdateFunction();
+    }
+    
+    if (CheckAndDoDefault() || CheckAndDoPromote()) {
+       SaveUpdateFunction();
+    }
+    if (isset($update) || CheckForDelete()) {
+        SaveUpdateFunction();
+    }
+   LoadInfo($full_name, $email_address, $reply_to, $signature, '');
 
 ?>
 <br>
-<table width=95% align=center border=0 cellpadding=2 cellspacing=0>
+<table width="95%" align=center border=0 cellpadding=2 cellspacing=0>
 <tr><td bgcolor="<?php echo $color[0] ?>" align="center">
 
       <b><?php echo _("Options") . ' - ' . _("Advanced Identities"); ?></b>
@@ -60,38 +46,37 @@ require_once('../functions/display_messages.php');
     <table width="100%" border="0" cellpadding="1" cellspacing="1">
     <tr><td bgcolor="<?php echo $color[4] ?>" align="center">
 
-<form name=f action="options_identities.php" method=post><br>
+<form name="f" action="options_identities.php" method="post"><br>
 
-<?PHP do_hook('options_identities_top'); ?>
+<?php do_hook('options_identities_top'); ?>
 
-<table width=80% cellpadding=2 cellspacing=0 border=0>
-  <tr bgcolor="<?PHP echo $color[9] ?>">
-    <th colspan=2 align=center><?PHP echo _("Default Identity") ?></th>
+<table width="80%" cellpadding=2 cellspacing=0 border=0>
+  <tr bgcolor="<?php echo $color[9] ?>">
+    <th colspan=2 align=center><?php echo _("Default Identity") ?></th>
   </tr>
 <?PHP
 
-   ShowTableInfo($full_name, $email_address, $reply_to, '');
+   ShowTableInfo($full_name, $email_address, $reply_to, $signature, '');
   
-   $num = 1;
-   while (LoadInfo($full_name, $email_address, $reply_to, $num))
-   {
+    $num = 1;
+   while (LoadInfo($full_name, $email_address, $reply_to, $signature, $num))
+    {
 ?>
   <tr bgcolor="<?PHP echo $color[9] ?>">
     <th colspan=2 align=center><?PHP printf (_("Alternate Identity %d"),
     $num) ?></th>
   </tr>
 <?PHP
-       ShowTableInfo($full_name, $email_address, $reply_to, $num);
-       $num ++;
-   }
+       ShowTableInfo($full_name, $email_address, $reply_to, $signature, $num);
+        $num ++;
+    }
    
 ?>
-  <tr bgcolor="<?PHP echo $color[9] ?>">
+  <tr bgcolor="<?php echo $color[9] ?>">
     <th colspan=2 align=center><?PHP echo _("Add a New Identity") ?></th>
   </tr>
-<?
-
-   ShowTableInfo('', '', '', $num);
+<?php
+    ShowTableInfo('', '', '', '', $num);
 ?>
 </table>
 </form>
@@ -106,7 +91,7 @@ require_once('../functions/display_messages.php');
 <?PHP
 
     function SaveUpdateFunction() {
-        global $username, $data_dir, $full_name, $email_address, $reply_to;
+        global $username, $data_dir, $full_name, $email_address, $reply_to, $signature;
 
         $i = 1;
         $fakeI = 1;
@@ -140,6 +125,12 @@ require_once('../functions/display_messages.php');
                 $filled ++;
                 setPref($data_dir, $username, 'reply_to' . $fakeI, $$name);
 
+                $name = 'signature' . $i;
+                global $$name;
+            if ($$name != '')
+                $filled ++;
+                setSig($data_dir, $username, $fakeI, $$name);
+
             if ($filled == 0)
                 $fakeI --;
             }
@@ -157,16 +148,19 @@ require_once('../functions/display_messages.php');
             removePref($data_dir, $username, 'full_name' . $fakeI);
             removePref($data_dir, $username, 'email_address' . $fakeI);
             removePref($data_dir, $username, 'reply_to' . $fakeI);
+            setSig($data_dir, $username, $fakeI, "");
             $fakeI ++;
         }
 
         setPref($data_dir, $username, 'full_name', $full_name);
         setPref($data_dir, $username, 'email_address', $email_address);
         setPref($data_dir, $username, 'reply_to', $reply_to);
+        setSig($data_dir, $username, "g", $signature);
+        
     }
 
     function CheckAndDoDefault() {
-        global $username, $data_dir, $full_name, $email_address, $reply_to;
+        global $username, $data_dir, $full_name, $email_address, $reply_to, $signature;
 
         $i = 1;
         $name = 'form_for_' . $i;
@@ -177,7 +171,7 @@ require_once('../functions/display_messages.php');
             global $$name;
             if (isset($$name)) {
                 do_hook('options_identities_renumber', $i, 'default');
-                global $full_name, $email_address, $reply_to;
+                global $full_name, $email_address, $reply_to, $signature;
 
                 $name = 'full_name' . $i;
                 global $$name;
@@ -197,6 +191,13 @@ require_once('../functions/display_messages.php');
                 $reply_to = $$name;
                 $$name = $temp;
 
+                $name = 'signature' . $i;
+                global $$name;
+                $temp = $signature;
+                $signature = $$name;
+                $$name = $temp;
+
+
                 return true;
             }
 
@@ -208,7 +209,7 @@ require_once('../functions/display_messages.php');
     }
 
     function CheckForDelete() {
-        global $username, $data_dir, $full_name, $email_address, $reply_to;
+        global $username, $data_dir, $full_name, $email_address, $reply_to, $signature;
 
         $i = 1;
         $name = 'form_for_' . $i;
@@ -240,28 +241,35 @@ require_once('../functions/display_messages.php');
             if (isset($$name) && $i > 1) {
                 do_hook('options_identities_renumber', $i, $i - 1);
 
-            $nameA = 'full_name' . $i;
-            $nameB = 'full_name' . ($i - 1);
-            global $$nameA, $$nameB;
-            $temp = $$nameA;
-            $$nameA = $$nameB;
-            $$nameB = $temp;
-
-            $nameA = 'email_address' . $i;
-            $nameB = 'email_address' . ($i - 1);
-            global $$nameA, $$nameB;
-            $temp = $$nameA;
-            $$nameA = $$nameB;
-            $$nameB = $temp;
-
-            $nameA = 'reply_to' . $i;
-            $nameB = 'reply_to' . ($i - 1);
+                $nameA = 'full_name' . $i;
+                $nameB = 'full_name' . ($i - 1);
+                global $$nameA, $$nameB;
+                $temp = $$nameA;
+                $$nameA = $$nameB;
+                $$nameB = $temp;
+    
+                $nameA = 'email_address' . $i;
+                $nameB = 'email_address' . ($i - 1);
+                global $$nameA, $$nameB;
+                $temp = $$nameA;
+                $$nameA = $$nameB;
+                $$nameB = $temp;
+    
+                $nameA = 'reply_to' . $i;
+                $nameB = 'reply_to' . ($i - 1);
+                global $$nameA, $$nameB;
+                $temp = $$nameA;
+                $$nameA = $$nameB;
+                $$nameB = $temp;
+
+            $nameA = 'signature' . $i;
+            $nameB = 'signature' . ($i - 1);
             global $$nameA, $$nameB;
             $temp = $$nameA;
             $$nameA = $$nameB;
             $$nameB = $temp;
 
-            return true;
+                return true;
             }
 
             $i ++;
@@ -271,14 +279,17 @@ require_once('../functions/display_messages.php');
         return false;
     }
 
-    function LoadInfo(&$n, &$e, &$r, $post) {
+    function LoadInfo(&$n, &$e, &$r, &$s, $post) {
         global $username, $data_dir;
 
         $n = getPref($data_dir, $username, 'full_name' . $post);
         $e = getPref($data_dir, $username, 'email_address' . $post);
         $r = getPref($data_dir, $username, 'reply_to' . $post);
+        if ($post == '')
+           $post = 'g';
+        $s = getSig($data_dir,$username,$post);
 
-        if ($n != '' || $e != '' || $r != '')
+        if ($n != '' || $e != '' || $r != '' || $s != '')
             return true;
     }
 
@@ -291,14 +302,23 @@ function sti_input( $title, $hd, $data, $post, $bg ) {
 
 }
 
-function ShowTableInfo($full_name, $email_address, $reply_to, $post) {
+function sti_textarea( $title, $hd, $data, $post, $bg ) {
+
+    echo "<tr$bg><td align=right nowrap>$title:".
+         '</td><td>'.
+         "<textarea cols=50 rows=5 name=\"$hd$post\">" . htmlspecialchars($data) .
+         "</textarea></td></tr>";
+
+}
+
+function ShowTableInfo($full_name, $email_address, $reply_to, $signature, $post) {
     global $color;
 
     $OtherBG = ' bgcolor="' . $color[0] . '"';
-    if ($full_name == '' && $email_address == '' && $reply_to == '')
+    if ($full_name == '' && $email_address == '' && $reply_to == '' && $signature == '')
         $OtherBG = '';
 
-    if ($full_name == '' && $email_address == '' && $reply_to == '')
+    if ($full_name == '' && $email_address == '' && $reply_to == '' && $signature == '')
         $isEmptySection = true;
     else
         $isEmptySection = false;
@@ -306,6 +326,7 @@ function ShowTableInfo($full_name, $email_address, $reply_to, $post) {
     sti_input( _("Full Name"), 'full_name', $full_name, $post, $OtherBG );
     sti_input( _("E-Mail Address"), 'email_address', $email_address, $post, $OtherBG );
     sti_input( _("Reply To"), 'reply_to', $reply_to, $post, $OtherBG );
+    sti_textarea( _("Signature"), 'signature', $signature, $post, $OtherBG );
 
     do_hook('options_identities_table', $OtherBG, $isEmptySection, $post);
     echo "<tr$OtherBG>".
@@ -327,4 +348,4 @@ function ShowTableInfo($full_name, $email_address, $reply_to, $post) {
     echo '</td></tr>'.
          '<tr><td colspan="2">&nbsp;</td></tr>';
 }
-?>
+?>
\ No newline at end of file