summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Machniak <alec@alec.pl>2013-06-11 00:33:21 -0700
committerAleksander Machniak <alec@alec.pl>2013-06-11 00:33:21 -0700
commit174327c25cd68f203e0985df51b94765738c7dce (patch)
tree0b8bba4bc4510e0ce819c2afa6418153ad600119
parent545559307e2cf7d986af5993f7d3ea0fc30a8386 (diff)
parent149f8a00cc51c87fef3afe2fbb51822a3582c583 (diff)
Merge pull request #77 from dpc22/realnames
Add show_real_foldernames preference and configuration option.
-rw-r--r--config/main.inc.php.dist3
-rw-r--r--program/include/rcmail.php9
-rw-r--r--program/localization/en_GB/labels.inc1
-rw-r--r--program/steps/settings/func.inc13
-rw-r--r--program/steps/settings/save_prefs.inc2
5 files changed, 26 insertions, 2 deletions
diff --git a/config/main.inc.php.dist b/config/main.inc.php.dist
index 889d101d9..1091b8718 100644
--- a/config/main.inc.php.dist
+++ b/config/main.inc.php.dist
@@ -481,6 +481,9 @@ $rcmail_config['trash_mbox'] = 'Trash';
// NOTE: Use folder names with namespace prefix (INBOX. on Courier-IMAP)
$rcmail_config['default_folders'] = array('INBOX', 'Drafts', 'Sent', 'Junk', 'Trash');
+// Disable localization of the four default folder names listed above
+$rcmail_config['show_real_foldernames'] = false;
+
// automatically create the above listed default folders on first login
$rcmail_config['create_default_folders'] = false;
diff --git a/program/include/rcmail.php b/program/include/rcmail.php
index 0cb4aad15..17c95d7ed 100644
--- a/program/include/rcmail.php
+++ b/program/include/rcmail.php
@@ -1326,6 +1326,9 @@ class rcmail extends rcube
$msgcounts = $this->storage->get_cache('messagecount');
$collapsed = $this->config->get('collapsed_folders');
+ if ($this->config->get('show_real_foldernames'))
+ $realnames = true;
+
$out = '';
foreach ($arrFolders as $folder) {
$title = null;
@@ -1491,7 +1494,8 @@ class rcmail extends rcube
if ($count > 1) {
for ($i = 0; $i < $count; $i++) {
$folder = implode($delimiter, array_slice($path, 0, -$i));
- if ($folder_class = $this->folder_classname($folder)) {
+ if (!$this->config->get('show_real_foldernames') &&
+ ($folder_class = $this->folder_classname($folder))) {
$name = implode($delimiter, array_slice($path, $count - $i));
return $this->gettext($folder_class) . $delimiter . rcube_charset::convert($name, 'UTF7-IMAP');
}
@@ -1499,7 +1503,8 @@ class rcmail extends rcube
}
}
- if ($folder_class = $this->folder_classname($name)) {
+ if (!$this->config->get('show_real_foldernames') &&
+ ($folder_class = $this->folder_classname($name))) {
return $this->gettext($folder_class);
}
else {
diff --git a/program/localization/en_GB/labels.inc b/program/localization/en_GB/labels.inc
index 275208a98..88e4cfd9c 100644
--- a/program/localization/en_GB/labels.inc
+++ b/program/localization/en_GB/labels.inc
@@ -37,6 +37,7 @@ $labels['drafts'] = 'Drafts';
$labels['sent'] = 'Sent';
$labels['trash'] = 'Deleted Items';
$labels['junk'] = 'Junk';
+$labels['show_real_foldernames'] = 'Show real names for special folders';
// message listing
$labels['subject'] = 'Subject';
diff --git a/program/steps/settings/func.inc b/program/steps/settings/func.inc
index 636941d8c..cbe3bc954 100644
--- a/program/steps/settings/func.inc
+++ b/program/steps/settings/func.inc
@@ -780,6 +780,19 @@ function rcmail_user_prefs($current=null)
'main' => array('name' => Q(rcube_label('mainoptions'))),
);
+
+ if (!isset($no_override['show_real_foldernames'])) {
+ $field_id = 'show_real_foldernames';
+ $input_show_real_foldernames =
+ new html_checkbox(array('name' => '_show_real_foldernames',
+ 'id' => $field_id, 'value' => 1));
+
+ $blocks['main']['options']['show_real_foldernames'] = array(
+ 'title' => html::label($field_id,
+ Q(rcube_label('show_real_foldernames'))),
+ 'content' => $input_show_real_foldernames->show($config['show_real_foldernames']?1:0),
+ );
+ }
// Configure special folders
if (!isset($no_override['default_folders'])) {
// load folders list only when needed
diff --git a/program/steps/settings/save_prefs.inc b/program/steps/settings/save_prefs.inc
index d0a3bec0b..19edb41d4 100644
--- a/program/steps/settings/save_prefs.inc
+++ b/program/steps/settings/save_prefs.inc
@@ -120,6 +120,8 @@ switch ($CURR_SECTION)
case 'folders':
$a_user_prefs = array(
+ 'show_real_foldernames' =>
+ isset($_POST['_show_real_foldernames']) ? TRUE : FALSE,
'drafts_mbox' => get_input_value('_drafts_mbox', RCUBE_INPUT_POST, true),
'sent_mbox' => get_input_value('_sent_mbox', RCUBE_INPUT_POST, true),
'junk_mbox' => get_input_value('_junk_mbox', RCUBE_INPUT_POST, true),