From fbf77b4493f1b77c99751d8a86365c712ae3fb1b Mon Sep 17 00:00:00 2001
From: thomascube <thomas@roundcube.net>
Date: Fri, 18 Nov 2005 10:35:15 -0500
Subject: [PATCH] Added Japanese localization

---
 program/steps/mail/compose.inc |   56 ++++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 46 insertions(+), 10 deletions(-)

diff --git a/program/steps/mail/compose.inc b/program/steps/mail/compose.inc
index d01e399..9509b49 100644
--- a/program/steps/mail/compose.inc
+++ b/program/steps/mail/compose.inc
@@ -50,15 +50,18 @@
   $MESSAGE['structure'] = $mmd->decode(array('include_bodies' => TRUE,
                                              'decode_headers' => TRUE,
                                              'decode_bodies' => FALSE));
-                                             
+
   $MESSAGE['subject'] = $IMAP->decode_header($MESSAGE['headers']->subject);
   $MESSAGE['parts'] = $mmd->getMimeNumbers($MESSAGE['structure']);
   
   if ($_GET['_reply_uid'])
     {
-    $REPLY_MESSAGE = $MESSAGE;
+    $REPLY_MESSAGE = &$MESSAGE;
     $_SESSION['compose']['reply_uid'] = $_GET['_reply_uid'];
     $_SESSION['compose']['reply_msgid'] = $REPLY_MESSAGE['headers']->messageID;
+
+    if ($_GET['_all'])
+      $REPLY_MESSAGE['reply_all'] = 1;
     }
   else
     {
@@ -75,6 +78,7 @@
 function rcmail_compose_headers($attrib)
   {
   global $IMAP, $REPLY_MESSAGE, $DB;
+  static $sa_recipients = array();
 
   list($form_start, $form_end) = get_form_tags($attrib);
   
@@ -144,7 +148,7 @@
       if (!$fname)
         {
         $fname = '_cc';
-        //$header = 'cc';
+        $header = 'cc';
         }
     case 'bcc':
       if (!$fname)
@@ -162,7 +166,7 @@
       break;
     
     }
-    
+
     
   if ($fname && !empty($_POST[$fname]))
     $fvalue = $_POST[$fname];
@@ -173,14 +177,37 @@
       $fvalue = $IMAP->decode_header($REPLY_MESSAGE['headers']->replyto);
     else if ($header=='to' && $REPLY_MESSAGE['headers']->from)
       $fvalue = $IMAP->decode_header($REPLY_MESSAGE['headers']->from);
-    
+    // add recipent of original message if reply to all
+    else if ($header=='cc' && $REPLY_MESSAGE['reply_all'])
+      {
+      if ($IMAP->decode_header($REPLY_MESSAGE['headers']->to))
+        $fvalue .= $IMAP->decode_header($REPLY_MESSAGE['headers']->to);
+
+      if ($IMAP->decode_header($REPLY_MESSAGE['headers']->cc))
+        {
+        if($fvalue)
+          $fvalue .= ', ';
+
+        $fvalue .= $IMAP->decode_header($REPLY_MESSAGE['headers']->cc);
+        }
+      }
+
     // split recipients and put them back together in a unique way
-    $to_addresses = $IMAP->decode_address_list($fvalue);
-    $fvalue = '';
-    foreach ($to_addresses as $addr_part)
-      $fvalue .= (strlen($fvalue) ? ', ':'').$addr_part['string'];
+    if (!empty($fvalue))
+      {
+      $to_addresses = $IMAP->decode_address_list($fvalue);
+      $fvalue = '';
+      foreach ($to_addresses as $addr_part)
+        {
+        if (!in_array($addr_part['mailto'], $sa_recipients))
+          {
+          $fvalue .= (strlen($fvalue) ? ', ':'').$addr_part['string'];
+          $sa_recipients[] = $addr_part['mailto'];
+          }
+        }
+      }
     }
-    
+
         
   if ($fname && $field_type)
     {
@@ -556,6 +583,15 @@
   }
 
 
+function rcmail_charset_pulldown($selected='ISO-8859-1')
+  {
+  $select = new select();
+  
+  
+  return $select->show($selected);
+  }
+
+
 /****** get contacts for this user and add them to client scripts ********/
 
 $sql_result = $DB->query("SELECT name, email

--
Gitblit v1.9.1