From 6649b1f0a5db6160d197a13ca79cfd67fbb02d77 Mon Sep 17 00:00:00 2001
From: svncommit <devs@roundcube.net>
Date: Sat, 23 Sep 2006 19:37:29 -0400
Subject: [PATCH] added TinyMCE spellchecker plugin, configured to use GoogleSpell

---
 program/steps/settings/edit_identity.inc |   40 +++++++++++++++++++++++++++++++++++-----
 1 files changed, 35 insertions(+), 5 deletions(-)

diff --git a/program/steps/settings/edit_identity.inc b/program/steps/settings/edit_identity.inc
index 6649c20..af9cb26 100644
--- a/program/steps/settings/edit_identity.inc
+++ b/program/steps/settings/edit_identity.inc
@@ -21,12 +21,11 @@
 
 if (($_GET['_iid'] || $_POST['_iid']) && $_action=='edit-identity')
   {
-  $id = $_POST['_iid'] ? $_POST['_iid'] : $_GET['_iid'];
   $DB->query("SELECT * FROM ".get_table_name('identities')."
               WHERE  identity_id=?
               AND    user_id=?
-              AND    del<>'1'",
-              $id,
+              AND    del<>1",
+              get_input_value('_iid', RCUBE_INPUT_GPC),
               $_SESSION['user_id']);
   
   $IDENTITY_RECORD = $DB->fetch_assoc();
@@ -43,7 +42,17 @@
 
 function rcube_identity_form($attrib)
   {
-  global $IDENTITY_RECORD, $JS_OBJECT_NAME;
+  global $IDENTITY_RECORD, $JS_OBJECT_NAME, $OUTPUT;
+
+  $OUTPUT->include_script('tiny_mce/tiny_mce_src.js');
+  $OUTPUT->add_script("tinyMCE.init({ mode : 'specific_textareas'," .
+                                    "apply_source_formatting : true," .
+                                    "theme : 'advanced'," .
+                                    "theme_advanced_toolbar_location : 'top'," .
+                                    "theme_advanced_toolbar_align : 'left'," .
+                                    "theme_advanced_buttons1 : 'bold,italic,underline,strikethrough,justifyleft,justifycenter,justifyright,justifyfull,separator,outdent,indent,charmap,hr'," .
+                                    "theme_advanced_buttons2 : 'link,unlink,forecolor,fontselect,fontsizeselect'," .
+                                    "theme_advanced_buttons3 : '' });");
 
   if (!$IDENTITY_RECORD && $GLOBALS['_action']!='add-identity')
     return rcube_label('notfound');
@@ -63,7 +72,9 @@
                        'organization' => array('type' => 'text'),
                        'reply-to'     => array('type' => 'text', 'label' => 'replyto'),
                        'bcc'          => array('type' => 'text'),
-                       'default'      => array('type' => 'checkbox', 'label' => 'setdefault'));
+                       'signature'	  => array('type' => 'textarea', 'size' => "40", 'rows' => "6"),
+                       'html_signature'=>array('type' => 'checkbox', 'label' => 'htmlsignature', 'onclick' => 'return rcmail.toggle_editor(this, \'_signature\');'),
+                       'standard'     => array('type' => 'checkbox', 'label' => 'setdefault'));
 
 
   // a specific part is requested
@@ -87,6 +98,25 @@
   foreach ($a_show_cols as $col => $colprop)
     {
     $attrib['id'] = 'rcmfd_'.$col;
+
+    if (strlen($colprop['onclick']))
+      $attrib['onclick'] = $colprop['onclick'];
+    else
+      unset($attrib['onclick']);
+
+    if ($col == 'signature')
+      {
+      $attrib['size'] = $colprop['size'];
+      $attrib['rows'] = $colprop['rows'];
+      $attrib['mce_editable'] = $IDENTITY_RECORD['html_signature'] ? "true" : "false";
+      }
+    else
+      {
+      unset($attrib['size']);
+      unset($attrib['rows']);
+      unset($attrib['mce_editable']);
+      }
+
     $label = strlen($colprop['label']) ? $colprop['label'] : $col;
     $value = rcmail_get_edit_field($col, $IDENTITY_RECORD[$col], $attrib, $colprop['type']);
 

--
Gitblit v1.9.1