diff --git a/dev/Common/File.js b/dev/Common/File.js index 841554056..38b1f917b 100644 --- a/dev/Common/File.js +++ b/dev/Common/File.js @@ -1,7 +1,7 @@ /* eslint key-spacing: 0 */ /* eslint quote-props: 0 */ -import { arrayLength } from 'Common/Utils'; +import { arrayLength, pInt } from 'Common/Utils'; export const RFC822 = 'message/rfc822'; @@ -274,8 +274,7 @@ export const FileInfo = { }, friendlySize: bytes => { - bytes = parseInt(bytes, 10); - bytes = isFinite(bytes) ? bytes : 0; + bytes = pInt(bytes); let i = bytes ? Math.floor(Math.log(bytes) / Math.log(1024)) : 0; return (bytes / Math.pow(1024, i)).toFixed(2>i ? 0 : 1) + ' ' + sizes[i]; } diff --git a/dev/Common/Utils.js b/dev/Common/Utils.js index 0b51d4ba3..d4616f30d 100644 --- a/dev/Common/Utils.js +++ b/dev/Common/Utils.js @@ -10,7 +10,7 @@ export const pInt = (value, defaultValue = 0) => { value = parseInt(value, 10); - return isNaN(value) || !isFinite(value) ? defaultValue : value; + return isFinite(value) ? value : defaultValue; }, defaultOptionsAfterRender = (domItem, item) => diff --git a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions.php b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions.php index c78a067b2..d4bbd09bf 100644 --- a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions.php +++ b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions.php @@ -583,7 +583,7 @@ class Actions 'MaxBlockquotesLevel' => 0, 'simpleAttachmentsList' => false, 'listGrouped' => $oConfig->Get('defaults', 'mail_list_grouped', false), - 'MessagesPerPage' => (int) $oConfig->Get('webmail', 'messages_per_page', 25), + 'MessagesPerPage' => \max(5, (int) $oConfig->Get('webmail', 'messages_per_page', 25)), 'messageNewWindow' => false, 'messageReadAuto' => true, // (bool) $oConfig->Get('webmail', 'message_read_auto', true), 'MessageReadDelay' => (int) $oConfig->Get('webmail', 'message_read_delay', 5), @@ -678,7 +678,7 @@ class Actions $aResult['simpleAttachmentsList'] = (bool)$oSettings->GetConf('simpleAttachmentsList', $aResult['simpleAttachmentsList']); $aResult['listGrouped'] = (bool)$oSettings->GetConf('listGrouped', $aResult['listGrouped']); $aResult['ContactsAutosave'] = (bool)$oSettings->GetConf('ContactsAutosave', $aResult['ContactsAutosave']); - $aResult['MessagesPerPage'] = (int)$oSettings->GetConf('MessagesPerPage', $aResult['MessagesPerPage']); + $aResult['MessagesPerPage'] = \max(5, (int)$oSettings->GetConf('MessagesPerPage', $aResult['MessagesPerPage'])); $aResult['messageNewWindow'] = (int)$oSettings->GetConf('messageNewWindow', $aResult['messageNewWindow']); $aResult['messageReadAuto'] = (int)$oSettings->GetConf('messageReadAuto', $aResult['messageReadAuto']); $aResult['MessageReadDelay'] = (int)$oSettings->GetConf('MessageReadDelay', $aResult['MessageReadDelay']);