diff --git a/dev/Settings/User/General.js b/dev/Settings/User/General.js index 8fbe4ed3f..142996d0f 100644 --- a/dev/Settings/User/General.js +++ b/dev/Settings/User/General.js @@ -15,6 +15,7 @@ import { showScreenPopup } from 'Knoin/Knoin'; import { AppUserStore } from 'Stores/User/App'; import { LanguageStore } from 'Stores/Language'; +import { FolderUserStore } from 'Stores/User/Folder'; import { SettingsUserStore } from 'Stores/User/Settings'; import { IdentityUserStore } from 'Stores/User/Identity'; import { NotificationUserStore } from 'Stores/User/Notification'; @@ -32,14 +33,6 @@ export class UserSettingsGeneral extends AbstractViewSettings { this.language = LanguageStore.language; this.languages = LanguageStore.languages; this.hourCycle = LanguageStore.hourCycle; -/* - // 'THREAD=REFS', 'THREAD=REFERENCES', 'THREAD=ORDEREDSUBJECT' - this.threadModes = ko.observableArray(); - AppUserStore.capabilities.forEach(capa => - capa.startsWith('THREAD=') && this.threadModes.push(capa.slice(7)) - ); - this.threadModes.sort((a, b) => a.length - b.length); -*/ this.soundNotification = SMAudio.notifications; this.notificationSound = ko.observable(SettingsGet('NotificationSound')); @@ -49,8 +42,15 @@ export class UserSettingsGeneral extends AbstractViewSettings { this.isDesktopNotificationAllowed = NotificationUserStore.allowed; this.threadsAllowed = AppUserStore.threadsAllowed; + // 'THREAD=REFS', 'THREAD=REFERENCES', 'THREAD=ORDEREDSUBJECT' + this.threadAlgorithms = ko.observableArray(); + FolderUserStore.capabilities.forEach(capa => + capa.startsWith('THREAD=') && this.threadAlgorithms.push(capa.slice(7)) + ); + this.threadAlgorithms.sort((a, b) => a.length - b.length); + this.threadAlgorithm = SettingsUserStore.threadAlgorithm; - ['useThreads', + ['useThreads', 'threadAlgorithm', // These use addSetting() 'layout', 'messageReadDelay', 'messagesPerPage', 'checkMailInterval', 'editorDefaultType', 'editorWysiwyg', 'msgDefaultAction', 'maxBlockquotesLevel', @@ -154,6 +154,11 @@ export class UserSettingsGeneral extends AbstractViewSettings { Remote.saveSetting('UseThreads', value); }, + threadAlgorithm: value => { + MessagelistUserStore([]); + Remote.saveSetting('threadAlgorithm', value); + }, + checkMailInterval: () => { setRefreshFoldersInterval(SettingsUserStore.checkMailInterval()); } diff --git a/dev/Stores/User/Messagelist.js b/dev/Stores/User/Messagelist.js index 4a49520fc..b6d9b0c29 100644 --- a/dev/Stores/User/Messagelist.js +++ b/dev/Stores/User/Messagelist.js @@ -313,6 +313,7 @@ MessagelistUserStore.reload = (bDropPagePosition = false, bDropCurrentFolderCach if (AppUserStore.threadsAllowed() && SettingsUserStore.useThreads()) { params.useThreads = 1; + params.threadAlgorithm = SettingsUserStore.threadAlgorithm(); params.threadUid = MessagelistUserStore.threadUid(); } else { params.threadUid = 0; diff --git a/dev/Stores/User/Settings.js b/dev/Stores/User/Settings.js index 24e268b8a..67d14318c 100644 --- a/dev/Stores/User/Settings.js +++ b/dev/Stores/User/Settings.js @@ -29,6 +29,7 @@ export const SettingsUserStore = new class { showNextMessage: 0, allowDraftAutosave: 1, useThreads: 0, + threadAlgorithm: '', replySameFolder: 0, hideUnsubscribed: 0, hideDeleted: 1, @@ -99,7 +100,8 @@ export const SettingsUserStore = new class { 'listGrouped', 'showNextMessage', 'AllowDraftAutosave', - 'UseThreads', + 'useThreads', + 'threadAlgorithm', 'ReplySameFolder', 'HideUnsubscribed', 'HideDeleted', diff --git a/snappymail/v/0.0.0/app/libraries/MailSo/Imap/Commands/Messages.php b/snappymail/v/0.0.0/app/libraries/MailSo/Imap/Commands/Messages.php index fc6d282e1..07684ee5d 100644 --- a/snappymail/v/0.0.0/app/libraries/MailSo/Imap/Commands/Messages.php +++ b/snappymail/v/0.0.0/app/libraries/MailSo/Imap/Commands/Messages.php @@ -502,11 +502,16 @@ trait Messages * @throws \MailSo\Net\Exceptions\* * @throws \MailSo\Imap\Exceptions\* */ - public function MessageThread(string $sSearchCriterias, bool $bReturnUid = true) : iterable + public function MessageThread(string $sSearchCriterias, string $sAlgorithm = '', $bReturnUid = true) : iterable { $oThread = new \MailSo\Imap\Requests\THREAD($this); $oThread->sCriterias = $sSearchCriterias ?: 'ALL'; $oThread->bUid = $bReturnUid; + try { + $sAlgorithm && $oThread->setAlgorithm($sAlgorithm); + } catch (\Throwable $e) { + // ignore + } yield from $oThread->SendRequestIterateResponse(); } diff --git a/snappymail/v/0.0.0/app/libraries/MailSo/Mail/MailClient.php b/snappymail/v/0.0.0/app/libraries/MailSo/Mail/MailClient.php index 866875b12..8d15663d6 100644 --- a/snappymail/v/0.0.0/app/libraries/MailSo/Mail/MailClient.php +++ b/snappymail/v/0.0.0/app/libraries/MailSo/Mail/MailClient.php @@ -420,7 +420,7 @@ class MailClient * @throws \MailSo\Net\Exceptions\* * @throws \MailSo\Imap\Exceptions\* */ - protected function ThreadsMap(MessageCollection $oMessageCollection, ?\MailSo\Cache\CacheClient $oCacher, bool $bBackground = false) : array + protected function ThreadsMap(string $sAlgorithm, MessageCollection $oMessageCollection, ?\MailSo\Cache\CacheClient $oCacher, bool $bBackground = false) : array { $oFolderInfo = $oMessageCollection->FolderInfo; $sFolderName = $oFolderInfo->FullName; @@ -445,8 +445,8 @@ class MailClient */ $sSerializedHashKey = null; if ($oCacher && $oCacher->IsInited()) { - $sSerializedHashKey = "ThreadsMap/{$sSearch}/{$oFolderInfo->etag}"; -// $sSerializedHashKey = "ThreadsMap/{$sSearch}/{$iThreadLimit}/{$oFolderInfo->etag}"; + $sSerializedHashKey = "ThreadsMap/{$sAlgorithm}/{$sSearch}/{$oFolderInfo->etag}"; +// $sSerializedHashKey = "ThreadsMap/{$sAlgorithm}/{$sSearch}/{$iThreadLimit}/{$oFolderInfo->etag}"; $sSerializedUids = $oCacher->Get($sSerializedHashKey); if (!empty($sSerializedUids)) { @@ -463,7 +463,7 @@ class MailClient $this->logWrite('Set ThreadsMap() as background task ("'.$sFolderName.'" / '.$sSearch.')'); \SnappyMail\Shutdown::add(function($oMailClient, $oFolderInfo, $oCacher) { $oFolderInfo->MESSAGES = 0; - $oMailClient->ThreadsMap($oMessageCollection, $oCacher, true); + $oMailClient->ThreadsMap($sAlgorithm, $oMessageCollection, $oCacher, true); }, [$this, $oFolderInfo, $oCacher]); return []; } @@ -475,7 +475,7 @@ class MailClient $aResult = array(); try { - foreach ($this->oImapClient->MessageThread($sSearch) as $mItem) { + foreach ($this->oImapClient->MessageThread($sSearch, $sAlgorithm) as $mItem) { // Flatten to single level $aMap = []; \array_walk_recursive($mItem, function($a) use (&$aMap) { $aMap[] = $a; }); @@ -534,6 +534,18 @@ class MailClient $aUids = \array_merge($aUids, $aThreadUIDs); } } +/* + // Idea to use one SORT for all threads instead of per thread + $aSortUids = \array_reduce($aAllThreads, 'array_merge', []); + $oParams->oSequenceSet = new \MailSo\Imap\SequenceSet($aSortUids); + $aSortUids = $this->GetUids($oParams, $oFolderInfo); + foreach ($aAllThreads as $aThreadUIDs) { + $aThreadUIDs = \array_intersect($aSortUids, $aThreadUIDs); + // Remove the most recent UID + \array_pop($aThreadUIDs); + $aUids = \array_merge($aUids, $aThreadUIDs); + } +*/ } else { // Not the best solution to remove the most recent UID, // as older messages could have a higher UID @@ -783,7 +795,7 @@ class MailClient \SnappyMail\Shutdown::add(function($oMailClient, $oAllParams, $oInfo, $oMessageCollection) { $oMailClient->GetUids($oAllParams, $oInfo); if ($oAllParams->bUseThreads) { - $oMailClient->ThreadsMap($oMessageCollection, $oAllParams->oCacher, true); + $oMailClient->ThreadsMap($oAllParams->sThreadAlgorithm, $oMessageCollection, $oAllParams->oCacher, true); } }, [$this, $oAllParams, $oInfo, $oMessageCollection]); } @@ -825,7 +837,7 @@ class MailClient } if ($oParams->bUseThreads) { - $aAllThreads = $this->ThreadsMap($oMessageCollection, $oParams->oCacher); + $aAllThreads = $this->ThreadsMap($oParams->sThreadAlgorithm, $oMessageCollection, $oParams->oCacher); // $iThreadLimit = $this->oImapClient->Settings->thread_limit; if ($oParams->iThreadUid) { // Only show the selected thread messages diff --git a/snappymail/v/0.0.0/app/libraries/MailSo/Mail/MessageListParams.php b/snappymail/v/0.0.0/app/libraries/MailSo/Mail/MessageListParams.php index 7566c5c03..a249ef798 100644 --- a/snappymail/v/0.0.0/app/libraries/MailSo/Mail/MessageListParams.php +++ b/snappymail/v/0.0.0/app/libraries/MailSo/Mail/MessageListParams.php @@ -16,7 +16,8 @@ class MessageListParams public string $sFolderName, $sSearch = '', - $sSort = ''; + $sSort = '', + $sThreadAlgorithm = ''; public ?\MailSo\Cache\CacheClient $oCacher = null; @@ -64,6 +65,7 @@ class MessageListParams $this->bSearchFuzzy ? '1' : '0', $this->bUseSort ? $this->sSort : '0', $this->bUseThreads ? $this->iThreadUid : '', + $this->bUseThreads ? $this->sThreadAlgorithm : '', // $this->oSequenceSet ? $this->oSequenceSet : '', $this->iPrevUidNext ])); diff --git a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Accounts.php b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Accounts.php index 1eb62f8aa..52d6ac9ab 100644 --- a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Accounts.php +++ b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Accounts.php @@ -205,7 +205,8 @@ trait Accounts 'mainEmail' => \RainLoop\Api::Actions()->getMainAccountFromToken()->Email(), 'contactsAllowed' => $this->AddressBookProvider($oAccount)->IsActive(), 'HideUnsubscribed' => false, - 'UseThreads' => (bool) $oConfig->Get('defaults', 'mail_use_threads', false), + 'useThreads' => (bool) $oConfig->Get('defaults', 'mail_use_threads', false), + 'threadAlgorithm' => '', 'ReplySameFolder' => (bool) $oConfig->Get('defaults', 'mail_reply_same_folder', false), 'HideDeleted' => true, 'ShowUnreadCount' => false, @@ -220,7 +221,8 @@ trait Accounts $aResult['TrashFolder'] = (string) $oSettingsLocal->GetConf('TrashFolder', ''); $aResult['ArchiveFolder'] = (string) $oSettingsLocal->GetConf('ArchiveFolder', ''); $aResult['HideUnsubscribed'] = (bool) $oSettingsLocal->GetConf('HideUnsubscribed', $aResult['HideUnsubscribed']); - $aResult['UseThreads'] = (bool) $oSettingsLocal->GetConf('UseThreads', $aResult['UseThreads']); + $aResult['useThreads'] = (bool) $oSettingsLocal->GetConf('UseThreads', $aResult['useThreads']); + $aResult['threadAlgorithm'] = (string) $oSettingsLocal->GetConf('threadAlgorithm', $aResult['threadAlgorithm']); $aResult['ReplySameFolder'] = (bool) $oSettingsLocal->GetConf('ReplySameFolder', $aResult['ReplySameFolder']); $aResult['HideDeleted'] = (bool)$oSettingsLocal->GetConf('HideDeleted', $aResult['HideDeleted']); $aResult['ShowUnreadCount'] = (bool)$oSettingsLocal->GetConf('ShowUnreadCount', $aResult['ShowUnreadCount']); diff --git a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Messages.php b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Messages.php index c06bdcc94..2837d982c 100644 --- a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Messages.php +++ b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Messages.php @@ -36,8 +36,13 @@ trait Messages $oParams->iPrevUidNext = $aValues['uidNext']; } $oParams->bUseThreads = !empty($aValues['useThreads']); - if ($oParams->bUseThreads && isset($aValues['threadUid'])) { - $oParams->iThreadUid = $aValues['threadUid']; + if ($oParams->bUseThreads) { + if (isset($aValues['threadUid'])) { + $oParams->iThreadUid = $aValues['threadUid']; + } + if (isset($aValues['threadAlgorithm'])) { + $oParams->sThreadAlgorithm = $aValues['threadAlgorithm']; + } } } else { // POST @@ -50,6 +55,7 @@ trait Messages $oParams->bUseThreads = !empty($this->GetActionParam('useThreads', '0')); if ($oParams->bUseThreads) { $oParams->iThreadUid = $this->GetActionParam('threadUid', ''); + $oParams->sThreadAlgorithm = $this->GetActionParam('threadAlgorithm', ''); } } diff --git a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/User.php b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/User.php index 91ff9775f..74de6ba49 100644 --- a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/User.php +++ b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/User.php @@ -212,6 +212,7 @@ trait User $this->setSettingsFromParams($oSettings, 'Resizer5Height', 'int'); $this->setSettingsFromParams($oSettingsLocal, 'UseThreads', 'bool'); + $this->setSettingsFromParams($oSettingsLocal, 'threadAlgorithm', 'string'); $this->setSettingsFromParams($oSettingsLocal, 'ReplySameFolder', 'bool'); $this->setSettingsFromParams($oSettingsLocal, 'HideUnsubscribed', 'bool'); $this->setSettingsFromParams($oSettingsLocal, 'HideDeleted', 'bool'); diff --git a/snappymail/v/0.0.0/app/localization/ar/user.json b/snappymail/v/0.0.0/app/localization/ar/user.json index 756e5e576..532a571d8 100644 --- a/snappymail/v/0.0.0/app/localization/ar/user.json +++ b/snappymail/v/0.0.0/app/localization/ar/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "إخفاء الرسائل المحددة للحذف", "USE_CHECKBOXES_IN_LIST": "عرض مربعات التحديد في القائمة", "USE_THREADS": "إستخدام المواضيع", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "ضع الردود في مجلد الرسالة التي يتم الرد عليها", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/be/user.json b/snappymail/v/0.0.0/app/localization/be/user.json index a2b9a1947..6cdea73de 100644 --- a/snappymail/v/0.0.0/app/localization/be/user.json +++ b/snappymail/v/0.0.0/app/localization/be/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Схаваць паведамленні, азначаныя для выдалення", "USE_CHECKBOXES_IN_LIST": "Паказваць сцяжкі ў спісах", "USE_THREADS": "Згортваць лісты ў перапісках", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Змяшчаць адказы ў той жа каталог, дзе знаходзіцца арыгінал", "PREFER_HTML": "Аддаваць перавагу HTML замест звычайнага тэксту", "PREFER_HTML_INFO": "Паведамленні часамі прыходзяць у абодвух фарматах. Гэты параметр вызначае, ці вы хочаце каб адлюстроўвалася HTML-частка ці звычайны тэкст.", diff --git a/snappymail/v/0.0.0/app/localization/bg/user.json b/snappymail/v/0.0.0/app/localization/bg/user.json index b6a522584..ce16a4b43 100644 --- a/snappymail/v/0.0.0/app/localization/bg/user.json +++ b/snappymail/v/0.0.0/app/localization/bg/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Скриване на съобщенията, маркирани за изтриване", "USE_CHECKBOXES_IN_LIST": "Показавай отметките в списъка", "USE_THREADS": "Използвай групиране на съобщенията", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Постави отговорите с папката на отговаряното съобщение", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/cs/user.json b/snappymail/v/0.0.0/app/localization/cs/user.json index b004352e2..27ed93dbc 100644 --- a/snappymail/v/0.0.0/app/localization/cs/user.json +++ b/snappymail/v/0.0.0/app/localization/cs/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Skrýt zprávy označené ke smazání", "USE_CHECKBOXES_IN_LIST": "Zobrazení zaškrtávacích políček v seznamu", "USE_THREADS": "Zobrazit jako konverzace", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Ukládat odpovědi do složky se zprávou, které se týkají", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/da/user.json b/snappymail/v/0.0.0/app/localization/da/user.json index 82eeb3253..20c4217a3 100644 --- a/snappymail/v/0.0.0/app/localization/da/user.json +++ b/snappymail/v/0.0.0/app/localization/da/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Skjul beskeder, der er markeret til sletning", "USE_CHECKBOXES_IN_LIST": "Vis afkrydsningsfelt i oversigten", "USE_THREADS": "Brug samtaler", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Placer svar i samme mappe som oprindelig meddelelse", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/de/user.json b/snappymail/v/0.0.0/app/localization/de/user.json index 43cfb8e9d..2443b0fd2 100644 --- a/snappymail/v/0.0.0/app/localization/de/user.json +++ b/snappymail/v/0.0.0/app/localization/de/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Zum Löschen markierte Nachrichten ausblenden", "USE_CHECKBOXES_IN_LIST": "Kontrollkästchen in der Liste anzeigen", "USE_THREADS": "Als Unterhaltungen anzeigen", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Antworten im gleichen Ordner wie die Nachricht, auf die geantwortet wurde, abspeichern", "PREFER_HTML": "HTML gegenüber Klartext bevorzugen", "PREFER_HTML_INFO": "Nachrichten können manchmal in beiden Formaten empfangen werden. Diese Option setzt, ob die Nachricht standardmäßig in HTML oder als Klartext angezeigt wird.", diff --git a/snappymail/v/0.0.0/app/localization/el/user.json b/snappymail/v/0.0.0/app/localization/el/user.json index c756a18a0..308a37abf 100644 --- a/snappymail/v/0.0.0/app/localization/el/user.json +++ b/snappymail/v/0.0.0/app/localization/el/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Απόκρυψη μηνυμάτων που έχουν επισημανθεί για διαγραφή", "USE_CHECKBOXES_IN_LIST": "Εμφάνιση των κουτιών επιλογής σε λίστα", "USE_THREADS": "Χρήση νημάτων", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Τοποθέτηση απαντήσεων στο φάκελο που ανήκει το μήνυμα που απαντάται", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/en/user.json b/snappymail/v/0.0.0/app/localization/en/user.json index 7a1107766..fac3b6ae6 100644 --- a/snappymail/v/0.0.0/app/localization/en/user.json +++ b/snappymail/v/0.0.0/app/localization/en/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Hide messages marked for deletion", "USE_CHECKBOXES_IN_LIST": "Display checkboxes in list", "USE_THREADS": "Use threads", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Place replies in the folder of the message being replied to", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/es/user.json b/snappymail/v/0.0.0/app/localization/es/user.json index 260bbd78a..59b75b160 100644 --- a/snappymail/v/0.0.0/app/localization/es/user.json +++ b/snappymail/v/0.0.0/app/localization/es/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Ocultar mensajes marcados para borrar", "USE_CHECKBOXES_IN_LIST": "Mostrar casillas de verificación en la lista", "USE_THREADS": "Usar hilos de conversación", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Coloque las respuestas en la carpeta del mensaje que esta respondiendo.", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/et/user.json b/snappymail/v/0.0.0/app/localization/et/user.json index 70765db9e..0010d2ebf 100644 --- a/snappymail/v/0.0.0/app/localization/et/user.json +++ b/snappymail/v/0.0.0/app/localization/et/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Peida kustutamiseks märgitud kirjad", "USE_CHECKBOXES_IN_LIST": "Kuva nimekirjas valikukastikesi", "USE_THREADS": "Kasuta vestluse lõimesid", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Pane vastused samasse kausta, kus asub vastatud kiri", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/eu/user.json b/snappymail/v/0.0.0/app/localization/eu/user.json index e314cd312..f332e036d 100644 --- a/snappymail/v/0.0.0/app/localization/eu/user.json +++ b/snappymail/v/0.0.0/app/localization/eu/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Ezkutatu ezabatzeko markatutako mezuak", "USE_CHECKBOXES_IN_LIST": "Bistaratu kontrol laukiak zerrendan", "USE_THREADS": "Erabili hariak", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Kokatu erantzunak erantzundako mezuaren karpeta berean", "PREFER_HTML": "Lehenetsi HTMLa testu arruntari", "PREFER_HTML_INFO": "Mezuak batzuetan bi formatuetan datoz. Aukera honekin HTML edo testu arrunt partea erakustea aukera dezakezu.", diff --git a/snappymail/v/0.0.0/app/localization/fa/user.json b/snappymail/v/0.0.0/app/localization/fa/user.json index 7eb52c305..a4aefd159 100644 --- a/snappymail/v/0.0.0/app/localization/fa/user.json +++ b/snappymail/v/0.0.0/app/localization/fa/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "پنهان کردن پیام های علامت گذاری شده برای حذف", "USE_CHECKBOXES_IN_LIST": "نمایش چکباکس در لیست", "USE_THREADS": "استفاده از حالت موضوعی", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": " جوابها را در پوشهای که پیامها در آن جواب داده شده است قراردهید", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/fi/user.json b/snappymail/v/0.0.0/app/localization/fi/user.json index f4612120b..7b81887fc 100644 --- a/snappymail/v/0.0.0/app/localization/fi/user.json +++ b/snappymail/v/0.0.0/app/localization/fi/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Piilota poistettavaksi merkityt viestit", "USE_CHECKBOXES_IN_LIST": "Näytä valintaruudut listassa", "USE_THREADS": "Käytä keskustelunäkymää", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Siirrä vastaukset samaan kansioon vastattavien kanssa", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/fr/user.json b/snappymail/v/0.0.0/app/localization/fr/user.json index 81ad34b7c..f7845b6bf 100644 --- a/snappymail/v/0.0.0/app/localization/fr/user.json +++ b/snappymail/v/0.0.0/app/localization/fr/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Masquer les messages marqués pour suppression", "USE_CHECKBOXES_IN_LIST": "Afficher des cases à cocher dans la liste", "USE_THREADS": "Regrouper en conversations", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Placer les réponses dans le dossier du message", "PREFER_HTML": "Préférer le HTML au texte brut", "PREFER_HTML_INFO": "Les messages arrivent parfois dans les deux formats. Cette option contrôle si vous voulez que la partie HTML ou la partie texte brut soit affichée.", diff --git a/snappymail/v/0.0.0/app/localization/hu/user.json b/snappymail/v/0.0.0/app/localization/hu/user.json index a148541f7..7014ceada 100644 --- a/snappymail/v/0.0.0/app/localization/hu/user.json +++ b/snappymail/v/0.0.0/app/localization/hu/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "A törlésre megjelölt üzenetek elrejtése", "USE_CHECKBOXES_IN_LIST": "Jelölőnégyzetek megjelenítése a listában", "USE_THREADS": "Szálak használata", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Válaszüzenetek elhelyezése az eredeti üzenet mappájában", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/id/user.json b/snappymail/v/0.0.0/app/localization/id/user.json index 770c58687..969b25508 100644 --- a/snappymail/v/0.0.0/app/localization/id/user.json +++ b/snappymail/v/0.0.0/app/localization/id/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Sembunyikan pesan yang ditandai untuk dihapus", "USE_CHECKBOXES_IN_LIST": "Tampilkan centang dalam daftar", "USE_THREADS": "Gunakan tread", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Tempatkan pesan balasan di folder pesan yang dibalas", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/is/user.json b/snappymail/v/0.0.0/app/localization/is/user.json index 2cf8e3bc0..5a581ce7a 100644 --- a/snappymail/v/0.0.0/app/localization/is/user.json +++ b/snappymail/v/0.0.0/app/localization/is/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Fela skilaboð merkt til eyðingar", "USE_CHECKBOXES_IN_LIST": "Sýna valkassa í listanum", "USE_THREADS": "Nota þræði", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Setja svör í möppu skilaboðanna sem er verið að svara", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/it/user.json b/snappymail/v/0.0.0/app/localization/it/user.json index 7950366b0..155bf1a82 100644 --- a/snappymail/v/0.0.0/app/localization/it/user.json +++ b/snappymail/v/0.0.0/app/localization/it/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Nascondi i messaggi contrassegnati per l'eliminazione", "USE_CHECKBOXES_IN_LIST": "Mostra le caselle di spunta nella lista", "USE_THREADS": "Usa le conversazioni", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Posiziona le risposte nella cartella del messaggio a cui si è risposto", "PREFER_HTML": "Usa HTML predefinito anziché formato testo", "PREFER_HTML_INFO": "Il messaggio a volte contiene entrambi i formati. Questa opzione agisce sulla visualizzazione del messaggio in HTML o della versione in formato testo.", diff --git a/snappymail/v/0.0.0/app/localization/ja/user.json b/snappymail/v/0.0.0/app/localization/ja/user.json index 9fb82ac05..2cc33f57e 100644 --- a/snappymail/v/0.0.0/app/localization/ja/user.json +++ b/snappymail/v/0.0.0/app/localization/ja/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "削除のマークが付いたメッセージを非表示にする", "USE_CHECKBOXES_IN_LIST": "リストにチェックボックスを表示", "USE_THREADS": "スレッドを使う", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "返信したメッセージのフォルダに送信メールを置く", "PREFER_HTML": "プレーンテキストよりHTMLを優先する", "PREFER_HTML_INFO": "メッセージがHTMLとプレーンテキストの両方の形式を含むことがあります。このオプションはそのような場合にどちらの形式を表示するかを制御します。", diff --git a/snappymail/v/0.0.0/app/localization/ko/user.json b/snappymail/v/0.0.0/app/localization/ko/user.json index c4651276e..ae943b158 100644 --- a/snappymail/v/0.0.0/app/localization/ko/user.json +++ b/snappymail/v/0.0.0/app/localization/ko/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "삭제 표시된 메시지 숨기기", "USE_CHECKBOXES_IN_LIST": "목록에서 확인상자 표시", "USE_THREADS": "대화형 목록 사용", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "회신 메시지를 원본과 동일한 폴더 위치에 저장", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/langs.json b/snappymail/v/0.0.0/app/localization/langs.json index 53910dffc..b8f948516 100644 --- a/snappymail/v/0.0.0/app/localization/langs.json +++ b/snappymail/v/0.0.0/app/localization/langs.json @@ -1,242 +1,242 @@ { - "LANGS_NAMES": { - "id": "Bahasa Indonesia", - "cs": "Čeština", - "da": "Dansk", - "de": "Deutsch", - "et": "Eesti", - "en": "English", - "en-CA": "English (Canada)", - "en-GB": "English (Great Britain)", - "en-US": "English (United States)", - "es": "Español", - "es-LA": "Español (América Latina)", - "eo": "Esperanto", - "eu": "Euskara", - "fr": "Français", - "fr-CA": "Français (Canada)", - "is": "Íslenska", - "it": "Italiano", - "lv": "Latviešu", - "lt": "Lietuvių", - "hu": "Magyar", - "nl": "Nederlands", - "nb": "Norsk (bokmål)", - "pl": "Polski", - "pt": "Português", - "pt-BR": "Português (Brasil)", - "ro": "Română", - "sk": "Slovenčina", - "sl": "Slovenščina", - "fi": "Suomi", - "sv": "Svenska", - "vi": "Tiếng Việt", - "tr": "Türkçe", - "el": "Ελληνικά", - "be": "Беларуская", - "bg": "Български", - "ru": "Русский", - "uk": "Українська", - "ar": "العربية", - "fa": "فارسی", - "th": "ภาษาไทย", - "ko": "한국어", - "ja": "日本語", - "zh": "简体中文", - "zh-TW": "繁體中文(台灣)", - "zh-HK": "繁體中文(香港)" - }, - "LANGS_NAMES_EN": { - "ab": "Abkhazian", - "aa": "Afar", - "af": "Afrikaans", - "ak": "Akan", - "sq": "Albanian", - "am": "Amharic", - "ar": "Arabic", - "an": "Aragonese", - "hy": "Armenian", - "as": "Assamese", - "av": "Avaric", - "ae": "Avestan", - "ay": "Aymara", - "az": "Azerbaijani", - "bm": "Bambara", - "ba": "Bashkir", - "eu": "Basque", - "be": "Belarusian", - "bn": "Bengali", - "bi": "Bislama", - "bs": "Bosnian", - "br": "Breton", - "bg": "Bulgarian", - "my": "Burmese", - "ca": "Catalan", - "km": "Central Khmer", - "ch": "Chamorro", - "ce": "Chechen", - "ny": "Chichewa", - "zh": "Chinese Simplified (China)", - "zh-HK": "Chinese Traditional (Hong Kong)", - "zh-TW": "Chinese Traditional (Taiwan)", - "cu": "Church Slavonic", - "cv": "Chuvash", - "kw": "Cornish", - "co": "Corsican", - "cr": "Cree", - "hr": "Croatian", - "cs": "Czech", - "da": "Danish", - "dv": "Divehi", - "nl": "Dutch", - "dz": "Dzongkha", - "en": "English", - "en-CA": "English (Canada)", - "en-GB": "English (Great Britain)", - "en-US": "English (United States)", - "eo": "Esperanto", - "et": "Estonian", - "ee": "Ewe", - "fo": "Faroese", - "fj": "Fijian", - "fi": "Finnish", - "fr": "French", - "fr-CA": "French (Canada)", - "ff": "Fulah", - "gd": "Gaelic", - "gl": "Galician", - "lg": "Ganda", - "ka": "Georgian", - "de": "German", - "el": "Greek", - "gn": "Guarani", - "gu": "Gujarati", - "ht": "Haitian", - "ha": "Hausa", - "he": "Hebrew", - "hz": "Herero", - "hi": "Hindi", - "ho": "Hiri Motu", - "hu": "Hungarian", - "is": "Icelandic", - "io": "Ido", - "ig": "Igbo", - "id": "Indonesian", - "ia": "Interlingua", - "ie": "Interlingue", - "iu": "Inuktitut", - "ik": "Inupiaq", - "ga": "Irish", - "it": "Italian", - "ja": "Japanese", - "jv": "Javanese", - "kl": "Kalaallisut", - "kn": "Kannada", - "kr": "Kanuri", - "ks": "Kashmiri", - "kk": "Kazakh", - "ki": "Kikuyu", - "rw": "Kinyarwanda", - "ky": "Kirghiz", - "kv": "Komi", - "kg": "Kongo", - "ko": "Korean", - "kj": "Kuanyama", - "ku": "Kurdish", - "lo": "Lao", - "la": "Latin", - "lv": "Latvian", - "li": "Limburgan", - "ln": "Lingala", - "lt": "Lithuanian", - "lu": "Luba-Katanga", - "lb": "Luxembourgish", - "mk": "Macedonian", - "mg": "Malagasy", - "ms": "Malay", - "ml": "Malayalam", - "mt": "Maltese", - "gv": "Manx", - "mi": "Maori", - "mr": "Marathi", - "mh": "Marshallese", - "mn": "Mongolian", - "na": "Nauru", - "nv": "Navajo", - "ng": "Ndonga", - "ne": "Nepali", - "nd": "North Ndebele", - "se": "Northern Sami", - "no": "Norwegian", - "nb": "Norwegian Bokmål", - "nn": "Norwegian Nynorsk", - "oc": "Occitan", - "oj": "Ojibwa", - "or": "Oriya", - "om": "Oromo", - "os": "Ossetian", - "pi": "Pali", - "ps": "Pashto", - "fa": "Persian", - "pl": "Polish", - "pt": "Portuguese", - "pt-BR": "Portuguese (Brazil)", - "pa": "Punjabi", - "qu": "Quechua", - "ro": "Romanian", - "rm": "Romansh", - "rn": "Rundi", - "ru": "Russian", - "sm": "Samoan", - "sg": "Sango", - "sa": "Sanskrit", - "sc": "Sardinian", - "sr": "Serbian", - "sn": "Shona", - "ii": "Sichuan Yi", - "sd": "Sindhi", - "si": "Sinhala", - "sk": "Slovak", - "sl": "Slovenian", - "so": "Somali", - "nr": "South Ndebele", - "st": "Southern Sotho", - "es": "Spanish", - "es-LA": "Spanish (Latin America)", - "su": "Sundanese", - "sw": "Swahili", - "ss": "Swati", - "sv": "Swedish", - "tl": "Tagalog", - "ty": "Tahitian", - "tg": "Tajik", - "ta": "Tamil", - "tt": "Tatar", - "te": "Telugu", - "th": "Thai", - "bo": "Tibetan", - "ti": "Tigrinya", - "to": "Tonga", - "ts": "Tsonga", - "tn": "Tswana", - "tr": "Turkish", - "tk": "Turkmen", - "tw": "Twi", - "ug": "Uighur", - "uk": "Ukrainian", - "ur": "Urdu", - "uz": "Uzbek", - "ve": "Venda", - "vi": "Vietnamese", - "vo": "Volapük", - "wa": "Walloon", - "cy": "Welsh", - "fy": "Western Frisian", - "wo": "Wolof", - "xh": "Xhosa", - "yi": "Yiddish", - "yo": "Yoruba", - "za": "Zhuang", - "zu": "Zulu" - } -} + "LANGS_NAMES": { + "id": "Bahasa Indonesia", + "cs": "Čeština", + "da": "Dansk", + "de": "Deutsch", + "et": "Eesti", + "en": "English", + "en-CA": "English (Canada)", + "en-GB": "English (Great Britain)", + "en-US": "English (United States)", + "es": "Español", + "es-LA": "Español (América Latina)", + "eo": "Esperanto", + "eu": "Euskara", + "fr": "Français", + "fr-CA": "Français (Canada)", + "is": "Íslenska", + "it": "Italiano", + "lv": "Latviešu", + "lt": "Lietuvių", + "hu": "Magyar", + "nl": "Nederlands", + "nb": "Norsk (bokmål)", + "pl": "Polski", + "pt": "Português", + "pt-BR": "Português (Brasil)", + "ro": "Română", + "sk": "Slovenčina", + "sl": "Slovenščina", + "fi": "Suomi", + "sv": "Svenska", + "vi": "Tiếng Việt", + "tr": "Türkçe", + "el": "Ελληνικά", + "be": "Беларуская", + "bg": "Български", + "ru": "Русский", + "uk": "Українська", + "ar": "العربية", + "fa": "فارسی", + "th": "ภาษาไทย", + "ko": "한국어", + "ja": "日本語", + "zh": "简体中文", + "zh-TW": "繁體中文(台灣)", + "zh-HK": "繁體中文(香港)" + }, + "LANGS_NAMES_EN": { + "ab": "Abkhazian", + "aa": "Afar", + "af": "Afrikaans", + "ak": "Akan", + "sq": "Albanian", + "am": "Amharic", + "ar": "Arabic", + "an": "Aragonese", + "hy": "Armenian", + "as": "Assamese", + "av": "Avaric", + "ae": "Avestan", + "ay": "Aymara", + "az": "Azerbaijani", + "bm": "Bambara", + "ba": "Bashkir", + "eu": "Basque", + "be": "Belarusian", + "bn": "Bengali", + "bi": "Bislama", + "bs": "Bosnian", + "br": "Breton", + "bg": "Bulgarian", + "my": "Burmese", + "ca": "Catalan", + "km": "Central Khmer", + "ch": "Chamorro", + "ce": "Chechen", + "ny": "Chichewa", + "zh": "Chinese Simplified (China)", + "zh-HK": "Chinese Traditional (Hong Kong)", + "zh-TW": "Chinese Traditional (Taiwan)", + "cu": "Church Slavonic", + "cv": "Chuvash", + "kw": "Cornish", + "co": "Corsican", + "cr": "Cree", + "hr": "Croatian", + "cs": "Czech", + "da": "Danish", + "dv": "Divehi", + "nl": "Dutch", + "dz": "Dzongkha", + "en": "English", + "en-CA": "English (Canada)", + "en-GB": "English (Great Britain)", + "en-US": "English (United States)", + "eo": "Esperanto", + "et": "Estonian", + "ee": "Ewe", + "fo": "Faroese", + "fj": "Fijian", + "fi": "Finnish", + "fr": "French", + "fr-CA": "French (Canada)", + "ff": "Fulah", + "gd": "Gaelic", + "gl": "Galician", + "lg": "Ganda", + "ka": "Georgian", + "de": "German", + "el": "Greek", + "gn": "Guarani", + "gu": "Gujarati", + "ht": "Haitian", + "ha": "Hausa", + "he": "Hebrew", + "hz": "Herero", + "hi": "Hindi", + "ho": "Hiri Motu", + "hu": "Hungarian", + "is": "Icelandic", + "io": "Ido", + "ig": "Igbo", + "id": "Indonesian", + "ia": "Interlingua", + "ie": "Interlingue", + "iu": "Inuktitut", + "ik": "Inupiaq", + "ga": "Irish", + "it": "Italian", + "ja": "Japanese", + "jv": "Javanese", + "kl": "Kalaallisut", + "kn": "Kannada", + "kr": "Kanuri", + "ks": "Kashmiri", + "kk": "Kazakh", + "ki": "Kikuyu", + "rw": "Kinyarwanda", + "ky": "Kirghiz", + "kv": "Komi", + "kg": "Kongo", + "ko": "Korean", + "kj": "Kuanyama", + "ku": "Kurdish", + "lo": "Lao", + "la": "Latin", + "lv": "Latvian", + "li": "Limburgan", + "ln": "Lingala", + "lt": "Lithuanian", + "lu": "Luba-Katanga", + "lb": "Luxembourgish", + "mk": "Macedonian", + "mg": "Malagasy", + "ms": "Malay", + "ml": "Malayalam", + "mt": "Maltese", + "gv": "Manx", + "mi": "Maori", + "mr": "Marathi", + "mh": "Marshallese", + "mn": "Mongolian", + "na": "Nauru", + "nv": "Navajo", + "ng": "Ndonga", + "ne": "Nepali", + "nd": "North Ndebele", + "se": "Northern Sami", + "no": "Norwegian", + "nb": "Norwegian Bokmål", + "nn": "Norwegian Nynorsk", + "oc": "Occitan", + "oj": "Ojibwa", + "or": "Oriya", + "om": "Oromo", + "os": "Ossetian", + "pi": "Pali", + "ps": "Pashto", + "fa": "Persian", + "pl": "Polish", + "pt": "Portuguese", + "pt-BR": "Portuguese (Brazil)", + "pa": "Punjabi", + "qu": "Quechua", + "ro": "Romanian", + "rm": "Romansh", + "rn": "Rundi", + "ru": "Russian", + "sm": "Samoan", + "sg": "Sango", + "sa": "Sanskrit", + "sc": "Sardinian", + "sr": "Serbian", + "sn": "Shona", + "ii": "Sichuan Yi", + "sd": "Sindhi", + "si": "Sinhala", + "sk": "Slovak", + "sl": "Slovenian", + "so": "Somali", + "nr": "South Ndebele", + "st": "Southern Sotho", + "es": "Spanish", + "es-LA": "Spanish (Latin America)", + "su": "Sundanese", + "sw": "Swahili", + "ss": "Swati", + "sv": "Swedish", + "tl": "Tagalog", + "ty": "Tahitian", + "tg": "Tajik", + "ta": "Tamil", + "tt": "Tatar", + "te": "Telugu", + "th": "Thai", + "bo": "Tibetan", + "ti": "Tigrinya", + "to": "Tonga", + "ts": "Tsonga", + "tn": "Tswana", + "tr": "Turkish", + "tk": "Turkmen", + "tw": "Twi", + "ug": "Uighur", + "uk": "Ukrainian", + "ur": "Urdu", + "uz": "Uzbek", + "ve": "Venda", + "vi": "Vietnamese", + "vo": "Volapük", + "wa": "Walloon", + "cy": "Welsh", + "fy": "Western Frisian", + "wo": "Wolof", + "xh": "Xhosa", + "yi": "Yiddish", + "yo": "Yoruba", + "za": "Zhuang", + "zu": "Zulu" + } +} \ No newline at end of file diff --git a/snappymail/v/0.0.0/app/localization/lt/user.json b/snappymail/v/0.0.0/app/localization/lt/user.json index ad5ee34dd..1955a5f7f 100644 --- a/snappymail/v/0.0.0/app/localization/lt/user.json +++ b/snappymail/v/0.0.0/app/localization/lt/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Slėpti pranešimus, pažymėtus ištrinti", "USE_CHECKBOXES_IN_LIST": "Rodyti žymėjimo langelius sąraše", "USE_THREADS": "Naudoti gijas", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Atsakymus dėti į katalogą, kuriame yra pradinė žinutė", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/lv/user.json b/snappymail/v/0.0.0/app/localization/lv/user.json index 27359e93e..f01e67cb0 100644 --- a/snappymail/v/0.0.0/app/localization/lv/user.json +++ b/snappymail/v/0.0.0/app/localization/lv/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Slēpt ziņojumus, kas atzīmēti dzēšanai", "USE_CHECKBOXES_IN_LIST": "Rādīt checkboxes sarakstā", "USE_THREADS": "Lietot saraksti", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Atbildes ziņojumus ielikt mapē kurā atrodas vēstule uz kuru tiek atbildēts.", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/nb/user.json b/snappymail/v/0.0.0/app/localization/nb/user.json index 3a908a784..0c7f6d902 100644 --- a/snappymail/v/0.0.0/app/localization/nb/user.json +++ b/snappymail/v/0.0.0/app/localization/nb/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Skjul meldinger som er merket for sletting", "USE_CHECKBOXES_IN_LIST": "Vis avkrysningsbokser i liste", "USE_THREADS": "Bruk tråder", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Legg svar i samme mappe som opprinnelig melding", "PREFER_HTML": "Foretrekk HTML fremfor", "PREFER_HTML_INFO": "Meldinger kan ankomme i både HTML og ren tekst. Dette valget styrer hvilken av dem du vil se.", diff --git a/snappymail/v/0.0.0/app/localization/nl/user.json b/snappymail/v/0.0.0/app/localization/nl/user.json index 654b2a253..a1e6a4b97 100644 --- a/snappymail/v/0.0.0/app/localization/nl/user.json +++ b/snappymail/v/0.0.0/app/localization/nl/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Berichten verbergen die zijn gemarkeerd voor verwijdering", "USE_CHECKBOXES_IN_LIST": "Toon selectievakjes in de lijst", "USE_THREADS": "Toon berichten in boomweergave", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Plaats antwoorden in de map van het originele bericht", "PREFER_HTML": "Geef de voorkeur aan HTML boven platte tekst", "PREFER_HTML_INFO": "Berichten komen soms in beide formaten. Deze optie bepaalt of u het HTML-gedeelte of het platte tekstgedeelte wilt weergeven.", diff --git a/snappymail/v/0.0.0/app/localization/pl/user.json b/snappymail/v/0.0.0/app/localization/pl/user.json index 85087ff7a..e6588f647 100644 --- a/snappymail/v/0.0.0/app/localization/pl/user.json +++ b/snappymail/v/0.0.0/app/localization/pl/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Ukryj wiadomości oznaczone do usunięcia", "USE_CHECKBOXES_IN_LIST": "Pokazuj pola zaznaczenia na listach", "USE_THREADS": "Używaj wątków", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Umieść odpowiedzi w folderach, z których pochodzą wiadomości", "PREFER_HTML": "Preferuj HTML względem zwykłego tekstu", "PREFER_HTML_INFO": "Wiadomości często przesyłane są w obu formatach. Ta opcja określa, czy ma być wyświetlana część HTML, czy zwykły tekst.", diff --git a/snappymail/v/0.0.0/app/localization/pt-BR/user.json b/snappymail/v/0.0.0/app/localization/pt-BR/user.json index 161b91ee4..8f11d350e 100644 --- a/snappymail/v/0.0.0/app/localization/pt-BR/user.json +++ b/snappymail/v/0.0.0/app/localization/pt-BR/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Ocultar mensagens marcadas para exclusão", "USE_CHECKBOXES_IN_LIST": "Exibir caixas de seleção na lista", "USE_THREADS": "Agrupar mensagens por conversa", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Colocar resposta na mesma pasta da mensagem respondida", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/pt/user.json b/snappymail/v/0.0.0/app/localization/pt/user.json index dc1340f61..9d73c435b 100644 --- a/snappymail/v/0.0.0/app/localization/pt/user.json +++ b/snappymail/v/0.0.0/app/localization/pt/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Ocultar mensagens marcadas para eliminação", "USE_CHECKBOXES_IN_LIST": "Apresentar caixas de seleção na lista", "USE_THREADS": "Usar tópicos de conversa", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Colocar respostas na pasta das mensagens a que responde", "PREFER_HTML": "Preferir HTML em vez de texto simples", "PREFER_HTML_INFO": "Por vezes as mensagens são recebidas em ambos os formatos. Esta opção determina se prefere apresentar o conteúdo em HTML ou em texto simples.", diff --git a/snappymail/v/0.0.0/app/localization/ro/user.json b/snappymail/v/0.0.0/app/localization/ro/user.json index 4cd3481a6..1f7c1222d 100644 --- a/snappymail/v/0.0.0/app/localization/ro/user.json +++ b/snappymail/v/0.0.0/app/localization/ro/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Ascunde mesajele marcate pentru ștergere", "USE_CHECKBOXES_IN_LIST": "Afișează listele checkbox", "USE_THREADS": "Minimizează scrisorile", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Răspunsurile în același folder cu originalul", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/ru/user.json b/snappymail/v/0.0.0/app/localization/ru/user.json index 35c3915f9..a070b0a64 100644 --- a/snappymail/v/0.0.0/app/localization/ru/user.json +++ b/snappymail/v/0.0.0/app/localization/ru/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Скрыть сообщения, помеченные для удаления", "USE_CHECKBOXES_IN_LIST": "Показывать чекбоксы в списках", "USE_THREADS": "Сворачивать письма в переписках", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Помещать ответы в ту же папку, где находится оригинал", "PREFER_HTML": "Предпочитать HTML обычному тексту", "PREFER_HTML_INFO": "Сообщения иногда приходят в обоих форматах. Этот параметр определяет, хотите ли вы, чтобы отображалась HTML-часть или обычный текст.", diff --git a/snappymail/v/0.0.0/app/localization/sk/user.json b/snappymail/v/0.0.0/app/localization/sk/user.json index 8ed55e0a5..8e80cebcc 100644 --- a/snappymail/v/0.0.0/app/localization/sk/user.json +++ b/snappymail/v/0.0.0/app/localization/sk/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Skryť správy označené na odstránenie", "USE_CHECKBOXES_IN_LIST": "Zobrazenie zaštkrtávacích políčok v zozname", "USE_THREADS": "Zobraziť ako konverzácie", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Umiestňovať odpovede do priečinka so správou ktorej sa týkajú", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/sl/user.json b/snappymail/v/0.0.0/app/localization/sl/user.json index 1c3b140ae..98da5ee49 100644 --- a/snappymail/v/0.0.0/app/localization/sl/user.json +++ b/snappymail/v/0.0.0/app/localization/sl/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Skrij sporočila, označena za brisanje", "USE_CHECKBOXES_IN_LIST": "Na seznamu pokaži kvadratke za izbor", "USE_THREADS": "Uporabi niti", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Shrani odgovore v mapo sporočila, na katerega se odgovarja", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/sv/user.json b/snappymail/v/0.0.0/app/localization/sv/user.json index 6274ce90c..b011cdaea 100644 --- a/snappymail/v/0.0.0/app/localization/sv/user.json +++ b/snappymail/v/0.0.0/app/localization/sv/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Dölj meddelanden som är markerade för radering", "USE_CHECKBOXES_IN_LIST": "Visa kryssrutor i listan", "USE_THREADS": "Använd trådar", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Placera svar i samma mapp som mottagna meddelandet", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/tr/user.json b/snappymail/v/0.0.0/app/localization/tr/user.json index 9ee6fc5b1..44fef26c1 100644 --- a/snappymail/v/0.0.0/app/localization/tr/user.json +++ b/snappymail/v/0.0.0/app/localization/tr/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Silinmek üzere işaretlenen mesajları gizle", "USE_CHECKBOXES_IN_LIST": "Listede ekran onay kutularını göster", "USE_THREADS": "Konuları kullanın", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Klasördeki cevapları mesajlarda göster", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/uk/user.json b/snappymail/v/0.0.0/app/localization/uk/user.json index 43335174d..b956978bd 100644 --- a/snappymail/v/0.0.0/app/localization/uk/user.json +++ b/snappymail/v/0.0.0/app/localization/uk/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Приховати повідомлення, позначені для видалення", "USE_CHECKBOXES_IN_LIST": "Показувати чекбокси у списках", "USE_THREADS": "Згортати листи у листуваннях", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Поміщати відповіді в ту ж теку, де знаходиться оригінал", "PREFER_HTML": "Prefer HTML to plain text", "PREFER_HTML_INFO": "Messages sometimes come in both formats. This option controls whether you want the HTML part or the plain text part to be displayed.", diff --git a/snappymail/v/0.0.0/app/localization/vi/user.json b/snappymail/v/0.0.0/app/localization/vi/user.json index 003630ac1..8db8e9139 100644 --- a/snappymail/v/0.0.0/app/localization/vi/user.json +++ b/snappymail/v/0.0.0/app/localization/vi/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "Ẩn các tin nhắn được đánh dấu để xóa", "USE_CHECKBOXES_IN_LIST": "Hiển thị ô đánh dấu dưới dạng danh sách", "USE_THREADS": "Nối thư qua lại cùng một tiêu đề thành một chuỗi hội thoại", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "Đặt thư phản hồi gửi đi vào chung thư mục của bức thư nhận được", "PREFER_HTML": "Nghiêng về lựa chọn HTML hơn dạng chữ viết thường", "PREFER_HTML_INFO": "Đôi lúc thư nhận được sẽ ở cả hai dạng. Lựa chọn này cho phép bạn chỉnh phần HTML hay phần chữ viết thường trong thư bạn muốn hiển thị lên.", diff --git a/snappymail/v/0.0.0/app/localization/zh-TW/user.json b/snappymail/v/0.0.0/app/localization/zh-TW/user.json index fa80031cf..53f0e5552 100644 --- a/snappymail/v/0.0.0/app/localization/zh-TW/user.json +++ b/snappymail/v/0.0.0/app/localization/zh-TW/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "隱藏標示為已刪除的郵件", "USE_CHECKBOXES_IN_LIST": "在清單中顯示核取方塊", "USE_THREADS": "使用對話", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "放置回覆的郵件在其所在資料夾", "PREFER_HTML": "偏好 HTML", "PREFER_HTML_INFO": "部分郵件會有兩種格式。此選項旨在設定郵件應優先顯示 HTML 格式,或純文字格式。", diff --git a/snappymail/v/0.0.0/app/localization/zh/user.json b/snappymail/v/0.0.0/app/localization/zh/user.json index 5713854fc..a93a865ca 100644 --- a/snappymail/v/0.0.0/app/localization/zh/user.json +++ b/snappymail/v/0.0.0/app/localization/zh/user.json @@ -455,6 +455,7 @@ "HIDE_DELETED_MESSAGES": "隐藏标记为删除的消息", "USE_CHECKBOXES_IN_LIST": "列表中显示多选框", "USE_THREADS": "使用对话", + "THREAD_ALGORITHM": "Threads algorithm", "REPLY_SAME_FOLDER": "将回复的邮件置于被回复的邮件所在的文件夹", "PREFER_HTML": "相比纯文本优先使用 HTML", "PREFER_HTML_INFO": "消息有时以两种格式传送。该选项控制您希望显示 HTML 部分还是纯文本部分。", diff --git a/snappymail/v/0.0.0/app/templates/Views/User/SettingsGeneral.html b/snappymail/v/0.0.0/app/templates/Views/User/SettingsGeneral.html index fc1ee3022..6506bb815 100644 --- a/snappymail/v/0.0.0/app/templates/Views/User/SettingsGeneral.html +++ b/snappymail/v/0.0.0/app/templates/Views/User/SettingsGeneral.html @@ -104,6 +104,10 @@ }"> +