mirror of
https://github.com/the-djmaze/snappymail.git
synced 2024-09-20 15:45:55 +08:00
Cleanup attachment filenames
This commit is contained in:
parent
94bfe09f63
commit
7df3ed665d
|
@ -9,6 +9,7 @@ const
|
||||||
msOffice = app+'vnd.openxmlformats-officedocument.',
|
msOffice = app+'vnd.openxmlformats-officedocument.',
|
||||||
openDoc = app+'vnd.oasis.opendocument.',
|
openDoc = app+'vnd.oasis.opendocument.',
|
||||||
sizes = ['B', 'KiB', 'MiB', 'GiB', 'TiB'],
|
sizes = ['B', 'KiB', 'MiB', 'GiB', 'TiB'],
|
||||||
|
lowerCase = text => text.toLowerCase().trim(),
|
||||||
|
|
||||||
exts = {
|
exts = {
|
||||||
eml: 'message/rfc822',
|
eml: 'message/rfc822',
|
||||||
|
@ -123,13 +124,13 @@ export const FileInfo = {
|
||||||
* @returns {string}
|
* @returns {string}
|
||||||
*/
|
*/
|
||||||
getExtension: fileName => {
|
getExtension: fileName => {
|
||||||
fileName = fileName.toLowerCase().trim();
|
fileName = lowerCase(fileName);
|
||||||
const result = fileName.split('.').pop();
|
const result = fileName.split('.').pop();
|
||||||
return result === fileName ? '' : result;
|
return result === fileName ? '' : result;
|
||||||
},
|
},
|
||||||
|
|
||||||
getContentType: fileName => {
|
getContentType: fileName => {
|
||||||
fileName = fileName.toLowerCase().trim();
|
fileName = lowerCase(fileName);
|
||||||
if ('winmail.dat' === fileName) {
|
if ('winmail.dat' === fileName) {
|
||||||
return app + 'ms-tnef';
|
return app + 'ms-tnef';
|
||||||
}
|
}
|
||||||
|
@ -158,8 +159,8 @@ export const FileInfo = {
|
||||||
* @returns {string}
|
* @returns {string}
|
||||||
*/
|
*/
|
||||||
getType: (ext, mimeType) => {
|
getType: (ext, mimeType) => {
|
||||||
ext = ext.toLowerCase().trim();
|
ext = lowerCase(ext);
|
||||||
mimeType = mimeType.toLowerCase().trim().replace('csv/plain', 'text/csv');
|
mimeType = lowerCase(mimeType).replace('csv/plain', 'text/csv');
|
||||||
|
|
||||||
let key = ext + mimeType;
|
let key = ext + mimeType;
|
||||||
if (cache[key]) {
|
if (cache[key]) {
|
||||||
|
|
|
@ -67,7 +67,7 @@ class Attachment implements \JsonSerializable
|
||||||
if ($this->oBodyStructure)
|
if ($this->oBodyStructure)
|
||||||
{
|
{
|
||||||
$sFileName = $this->oBodyStructure->FileName();
|
$sFileName = $this->oBodyStructure->FileName();
|
||||||
if ($bCalculateOnEmpty && 0 === \strlen(trim($sFileName)))
|
if ($bCalculateOnEmpty && !\strlen(\trim($sFileName)))
|
||||||
{
|
{
|
||||||
$sMimeType = \strtolower(\trim($this->MimeType()));
|
$sMimeType = \strtolower(\trim($this->MimeType()));
|
||||||
if ('message/rfc822' === $sMimeType)
|
if ('message/rfc822' === $sMimeType)
|
||||||
|
|
|
@ -29,7 +29,7 @@ class AttachmentCollection extends \MailSo\Base\Collection
|
||||||
foreach ($this as $oAttachment) {
|
foreach ($this as $oAttachment) {
|
||||||
$aResult[] = array(
|
$aResult[] = array(
|
||||||
'@Object' => 'Object/Attachment',
|
'@Object' => 'Object/Attachment',
|
||||||
'FileName' => $oAttachment->FileName(true),
|
'FileName' => $oAttachment->FileName(),
|
||||||
'MimeType' => $oAttachment->MimeType(),
|
'MimeType' => $oAttachment->MimeType(),
|
||||||
'IsInline' => $oAttachment->IsInline()
|
'IsInline' => $oAttachment->IsInline()
|
||||||
);
|
);
|
||||||
|
|
Loading…
Reference in a new issue