Commit graph

895 commits

Author SHA1 Message Date
the-djmaze a13c037fd7 Strip SendInBlue image tracking #564 2022-10-20 10:45:31 +02:00
the-djmaze b435b14497 Resolve <a> color issue and hidden image detection #564 2022-10-19 23:57:58 +02:00
the-djmaze 60d7cbb318 Make img alt="" text maximum of 32 characters #564 2022-10-19 16:44:35 +02:00
the-djmaze 93d8b5a419 Improve some login/logout handling 2022-10-18 23:32:47 +02:00
the-djmaze ddbe6b2a75 Improved stripTracking 2022-10-17 15:12:12 +02:00
the-djmaze 65c313c0e4 Also strip tracking in message images 2022-10-17 14:17:59 +02:00
the-djmaze 20cc74b066 Improve message html element style width value 2022-10-17 13:45:05 +02:00
the-djmaze 5882cc6051 Resolve #554 2022-10-15 18:33:45 +02:00
the-djmaze f649ea05fd Put message in URL for autoload regarding issue #100 and Nextcloud unified search #96 2022-10-14 10:20:41 +02:00
the-djmaze 50dffed895 Strip tracking of zalando.nl 2022-10-13 22:39:13 +02:00
the-djmaze 99b84af7b5 Better Nextcloud integration with notification sounds #96 2022-10-13 12:46:33 +02:00
the-djmaze 9cca299e6a strip correlation_id tracking 2022-10-12 10:33:25 +02:00
the-djmaze dcf4983a7d Bugfix themes in inside Nextcloud by adding webPath #96 2022-10-12 10:33:25 +02:00
the-djmaze 8ae5563a84 Resolve #546 2022-10-10 15:06:07 +02:00
the-djmaze b12852bd08 Reduce JavaScript footprint 2022-10-10 13:52:56 +02:00
the-djmaze 1f600dff0d Strip Reddit click tracking 2022-10-07 14:41:23 +02:00
the-djmaze f488212c3d Don't thumbnail message inline images and show filename in title attribute 2022-10-06 23:43:24 +02:00
the-djmaze 897f22ee6e When img element alt is missing, use last part of src 2022-10-05 22:54:53 +02:00
the-djmaze 86550d1563 strip more tracking parameters 2022-10-05 00:12:51 +02:00
the-djmaze 2e44775170 Workaround invalid [Cloudron Forum] Digest href="...." links 2022-10-04 23:49:06 +02:00
the-djmaze aa357af4c5 Remove more tracking params 2022-10-03 16:11:44 +02:00
the-djmaze 7f63a1e82d Bugfix: stripTracking broke plain text view 2022-10-03 12:45:35 +02:00
the-djmaze a3585a859f stripTracking DHL, Google and Outlook
stripTracking no need for `g` and `s` RegEx modifiers
2022-10-03 12:25:20 +02:00
the-djmaze 4473043623 Catch JSON.parse errors 2022-10-03 09:20:54 +02:00
the-djmaze 8980fc9cb1 Solution for #540 ? 2022-10-02 19:39:24 +02:00
the-djmaze 73ddc6c4b9 Also decode Mandrill custom tracking domain 2022-10-02 19:38:04 +02:00
the-djmaze 261d9ba59c First decode tracking links, then strip query parameters 2022-10-01 10:28:44 +02:00
the-djmaze 55bf83e02a Added: replace Mandrill (Mailchimp) tracking links with normal links 2022-10-01 10:00:04 +02:00
the-djmaze 0fce269a82 listCheckedOrSelectedUidsWithSubMails() now returns Set instead of Array 2022-09-27 23:46:13 +02:00
the-djmaze 118558cdfd Renamed SaveSettingsStep to more logical SaveSettingStatus 2022-09-26 14:02:30 +02:00
the-djmaze d1d820da73 Drop ko.extenders.limitedList 2022-09-26 11:55:26 +02:00
the-djmaze c6652ba9b4 Lazy load all message images 2022-09-26 10:58:46 +02:00
the-djmaze 705000b46a cleanup populateMessageBody() 2022-09-23 15:01:55 +02:00
the-djmaze 5c43378d71 Move SettingsUserStore.removeColors() to cleanHtml() 2022-09-23 13:41:01 +02:00
the-djmaze 8054e48d4a No need for rel="noreferrer noopener" due to Referrer-Policy header 2022-09-23 09:26:36 +02:00
the-djmaze df34c4a0ae v2.18.1 2022-09-21 10:16:23 +02:00
the-djmaze e5e4675c1b cleanup and speedup Selector 2022-09-09 22:20:40 +02:00
the-djmaze 0c87bbac21 Faster Selector.autoSelect 2022-09-09 17:04:52 +02:00
the-djmaze 44ac2626ec Improve and cleanup Selector even more 2022-09-09 12:07:05 +02:00
the-djmaze 47a861a243 Speedup listChecked().length to hasChecked() 2022-09-09 10:02:40 +02:00
the-djmaze d1422826b8 Bugfix: Selector Shift + Arrow made checkboxes "checked" in a weird way 2022-09-08 15:06:12 +02:00
the-djmaze ee5b30884f Speedup list Selector a bit 2022-09-08 13:37:06 +02:00
the-djmaze 732b6eb641 Use JavaScript Optional chaining 2022-09-02 11:52:07 +02:00
the-djmaze afd65c809d Drop Remote.request() aAbortActions parameter 2022-09-02 09:56:31 +02:00
the-djmaze 15dd6f5a5c Resolve #496 2022-08-31 17:31:08 +02:00
the-djmaze a80161a316 Bugfix: keep A elements when there is an image inside 2022-08-29 10:54:55 +02:00
the-djmaze ea4f678d05 Resolve #500 2022-08-29 10:53:53 +02:00
the-djmaze cad5fb6067 Resolve #491 2022-08-26 15:17:30 +02:00
the-djmaze 4692dde3d5 resolve compile error 2022-08-26 11:55:56 +02:00
the-djmaze aff2d4dd76 Moved handling of images using proxy in preperation of #491 2022-08-26 11:11:19 +02:00
the-djmaze a18cc9a486 Move folderInformation() function 2022-08-22 21:52:00 +02:00
the-djmaze 4349eda310 Translate request errors for #471 2022-08-02 11:01:19 +02:00
the-djmaze d42cecb4df Resolve #462 2022-07-21 10:13:24 +02:00
the-djmaze 4238834cb5 Solve empty lines in HTML -> Plain conversion for #462 2022-07-20 12:34:30 +02:00
the-djmaze d73a179f59 Unregister audio initialization event listeners first 2022-07-19 11:50:57 +02:00
the-djmaze 28d4a018fd Resolve #439 2022-06-16 01:16:19 +02:00
the-djmaze 38836da9af Resolve #328 2022-06-08 23:40:28 +02:00
the-djmaze 61146e491b Bugfix: Resizer value failed on initialization.
And added some changes for #328
2022-06-08 17:14:44 +02:00
the-djmaze 224b453430 Prevent Sitecore tracking 2022-06-08 15:03:28 +02:00
the-djmaze 0f02cc6d29 Speedup flags cache 2022-06-08 13:08:27 +02:00
the-djmaze df80ff9533 Put sound notifications in SMAudio 2022-06-07 18:46:06 +02:00
the-djmaze 78a3b1a5be Cleanup some MessageFlagsCache handling 2022-06-07 15:48:16 +02:00
the-djmaze 42fe9ae1ba Drop prefetch/REQUESTED_MESSAGE_CACHE because 99.9% not used.
Message cache needs new design due to encrypted messages.
2022-06-07 12:00:22 +02:00
the-djmaze a60d027169 Improved message cache handling and drop unused NEW_MESSAGE_CACHE 2022-06-07 11:54:19 +02:00
the-djmaze 70e3e6423e Added message tags toggle for #419 2022-06-03 13:47:04 +02:00
the-djmaze 118505f91e Use JMAP rfc8621 section-2 totalEmails, unreadEmails and isSubscribed 2022-06-01 22:50:35 +02:00
the-djmaze 0ff571db14 v2.16.0 2022-05-19 10:58:04 +02:00
the-djmaze 4b50ff9f59 Resolve #366 2022-05-12 14:26:39 +02:00
the-djmaze e205a0d3e0 Resolve #248 View eml attachments 2022-05-11 23:13:24 +02:00
the-djmaze 17de4268b0 Drop webPath and webVersionPath in JavaScript 2022-05-11 21:15:58 +02:00
the-djmaze 304c55f038 Strip tracking printabout.nl 2022-05-11 20:36:03 +02:00
the-djmaze 435b590b3e Drop mail composer HTML/Plain Forced to prevent confusions like in #355 2022-04-30 00:43:38 +02:00
the-djmaze 80eed213d9 Allow cancelable on some custom javascript events. 2022-04-29 13:07:49 +02:00
the-djmaze 071b2c1153 Drop rl.settings.capa 2022-04-25 09:57:32 +02:00
the-djmaze 9413e491d4 Improved solution for #343 2022-04-23 22:00:41 +02:00
the-djmaze 86e9239a99 Resolve #343 2022-04-23 12:21:16 +02:00
the-djmaze 3ed1872c44 Bugfix width attribute as found in #343 2022-04-23 11:47:00 +02:00
the-djmaze d2e8a2dba4 Resolve #333 2022-04-20 22:07:20 +02:00
the-djmaze eff357dc8e v2.15.0 2022-04-19 10:33:21 +02:00
the-djmaze f39b1bb14d Changes for #326 2022-04-19 09:40:29 +02:00
the-djmaze ff394356b6 Strip awstrack.me tracking 2022-04-05 11:43:44 +02:00
the-djmaze 722e345cbe Cleanup some knockout code 2022-03-31 18:52:46 +02:00
the-djmaze c121a233d6 Workaround Firefox 98 issue #301 2022-03-24 11:28:01 +01:00
the-djmaze 91327a3c6c Better solution for #298 2022-03-22 16:24:58 +01:00
the-djmaze 13f270f426 Resolve #298 2022-03-22 11:47:17 +01:00
the-djmaze c76823dc5f Some tiny changes 2022-03-14 15:42:05 +01:00
the-djmaze 58f5e90f8f Resolve #283 2022-03-13 19:51:14 +01:00
the-djmaze 088d6cab55 Still issue with shortcuts
https://github.com/the-djmaze/snappymail/issues/277#issuecomment-1064880609
2022-03-11 10:36:27 +01:00
djmaze d6dc4d291c Split Sieve/Filters code from app.js so that i can work on the new Sieve GUI 2022-03-11 10:26:25 +01:00
the-djmaze 2da1590cd9 Keep mail <body> element style 2022-03-10 11:01:18 +01:00
the-djmaze cd734c7d5d Globalize rl.loadScript() 2022-03-10 09:57:27 +01:00
the-djmaze 0106751e64 Bugfix: HTMLTemplateElement never has a <body> element 2022-03-09 16:53:04 +01:00
the-djmaze 6f2f5bce86 Added Ctrl/Meta + F to open advanced search screen
Cleanup search field onEnter
2022-03-09 15:08:22 +01:00
the-djmaze e0498895bc Resolve #279 2022-03-09 13:48:25 +01:00
the-djmaze c0f494c758 Some small cleanups 2022-03-08 10:52:40 +01:00
the-djmaze 04f4538700 Cleanup Dropdowns handling 2022-03-08 10:52:08 +01:00
the-djmaze ffcd9990eb mailToHelper() use URLSearchParams 2022-03-08 10:05:24 +01:00
the-djmaze 4b8e77be5c Make ComposeType numeric 2022-03-08 09:27:32 +01:00
the-djmaze 60987f4623 Cleanup shortcuts scope handling 2022-03-07 13:47:03 +01:00
the-djmaze 874f2592ca Drop Capa enums 2022-03-05 22:25:32 +01:00
the-djmaze a503329b77 Resolve #265 regarding shortcuts in certain input fields.
As we want other shortcuts do work in input fields (which couldn't in previous releases).
2022-03-04 14:43:58 +01:00
the-djmaze fafe56ecb4 Fix and improved hasher routing 2022-03-03 16:28:05 +01:00
the-djmaze eb98c0713a Improved cleanHtml() handling of table width and content 2022-03-02 16:11:38 +01:00
the-djmaze 121f6f0bf8 Bugfix: strip utm_ tracking failed 2022-03-02 11:48:41 +01:00
the-djmaze e07cf8d11f #252 doc not used anymore 2022-03-02 10:24:24 +01:00
the-djmaze 096faae844 Remove some shortcuts due to conflicts, read #252 2022-03-02 09:26:30 +01:00
the-djmaze 4250dcf3f0 Cleanup theme switcher 2022-03-01 15:49:35 +01:00
the-djmaze 97bc3ef585 Enable AbstractViewSettings 2022-02-28 10:38:47 +01:00
the-djmaze 47a6af52ba Resolve #242 2022-02-25 11:33:08 +01:00
the-djmaze a9edbe9ecf Bugfix: resolve #243
And cleanup the HTML rules along the way
2022-02-25 11:11:28 +01:00
the-djmaze f2054fde0f Resolve #246 2022-02-25 10:12:06 +01:00
the-djmaze 962ddde1f3 Some small cleanups and fixes 2022-02-24 12:43:44 +01:00
the-djmaze e7c7b8ed53 Restructure Capa 2022-02-24 12:22:27 +01:00
the-djmaze 5990addfef Added: addEventsListener() and addEventsListeners() 2022-02-24 11:19:19 +01:00
the-djmaze c270f0ad9a Prevent Circular dependencies 2022-02-23 23:11:12 +01:00
the-djmaze 661cd2aaf9 Restructure JavaScript
Split list code from MessageUserStore into MessagelistUserStore
Move functions out of AppUser
2022-02-23 19:26:52 +01:00
the-djmaze e324e2f6b6 Replaced tricky delegateRunOnDestroy() with koArrayWithDestroy()
koArrayWithDestroy creates ko.observableArray and calls the desired onDestroy() on entry delete.
2022-02-17 12:48:57 +01:00
the-djmaze b2a492bdab Cleanup knockout subscribables 2022-02-17 09:36:29 +01:00
the-djmaze be35a541c3 Added idea to allow <style> 2022-02-15 12:29:41 +01:00
the-djmaze 9ea32aae95 Small maxWidth improvement for
https://github.com/the-djmaze/snappymail/issues/184#issuecomment-1039538958
2022-02-15 10:58:45 +01:00
the-djmaze 301413020c Block tracking pixel of 2px as found in #234 2022-02-15 10:46:42 +01:00
the-djmaze ec23b61e14 Improvement for #184 2022-02-15 10:36:01 +01:00
the-djmaze af959e3631 Resolve #187 (found the real problem, comments in comments) 2022-02-14 12:27:43 +01:00
the-djmaze 973cb83ba0 Resolve #230 2022-02-14 11:48:23 +01:00
the-djmaze eb22ddc4c3 Improved cleanHtml() 2022-02-14 11:47:56 +01:00
the-djmaze 44ee236709 dispatchEvent(new CustomEvent(...)) to fireEvent(...) 2022-02-11 12:21:16 +01:00
the-djmaze 25a786d584 #89 added downloading of decrypted attachments 2022-02-10 16:35:55 +01:00
the-djmaze 9188a8bcd2 Improved cleanHtml and the handling of removeColors for dark mode 2022-02-10 10:25:21 +01:00
the-djmaze 398152be52 Disable Mailvelope "sign" message as it can't choose which key 2022-02-08 13:48:11 +01:00
the-djmaze ab149b5ec9 remove unused showScreenPopup 2022-02-07 15:35:48 +01:00
the-djmaze f6400b6da2 Remove rl.showScreenPopup in favour of AbstractViewPopup.showModal 2022-02-07 15:20:39 +01:00
the-djmaze ad6e1bebf8 Much better HTML to Plain converter 2022-02-07 10:23:41 +01:00
the-djmaze 3fc5216841 Improved Composer handling with PGP messages 2022-02-04 13:40:59 +01:00
the-djmaze 6b2311663b #89 Hide PGP SIGNATURE from cleartext signed messages 2022-02-02 18:43:55 +01:00
the-djmaze e265a0f1c1 Moved the message HTML parsing from PHP to JavaScript
Now we can properly parse PGP/MIME HTML messages
2022-02-02 13:02:48 +01:00
the-djmaze 6b26ddec7a #89 Redesign HTML parsing for securing PGP decrypted HTML 2022-02-01 11:46:12 +01:00
the-djmaze 76226f45ca #89 Fix Mailvelope hasPrivateKey() detection
Proper rename OpenPGP Key viewer
2022-01-29 21:42:56 +01:00
the-djmaze ff7e41ad08 #89 Use OpenPGP.js v5.1.0 (still in progress) 2022-01-27 16:00:52 +01:00
the-djmaze a7eeeb4f55 Many more changes for #89 2022-01-20 16:38:27 +01:00
the-djmaze c2e162b01b Properly load keyrings of Mailvelope, OpenPGP.js and GnuPG 2022-01-19 20:14:21 +01:00
the-djmaze 9fea092c43 Cleanup RainLoop\Service with improved ?admin path detection 2022-01-11 15:55:48 +01:00
the-djmaze 6aedba9d36 UploadErrorCode/UploadError use PHP UPLOAD_ERR_* numbers 2022-01-11 13:05:17 +01:00
djmaze 679d7356e0 More ko.computed to pureComputed 2021-12-31 17:02:32 +01:00
djmaze 954de06f86 Switch from ko.computed to ko.pureComputed
This should provide performance and memory benefits over regular computed observables
2021-12-31 13:30:05 +01:00
djmaze 98b3fa9632 v2.10.0 2021-12-28 17:13:15 +01:00
djmaze c1dd6edc28 allowAdminPanel => adminAllowed 2021-12-28 14:49:21 +01:00
djmaze e244ba01de Much better fix for #175
And added some comments to it, to prevent more screw ups
2021-12-22 20:16:14 +01:00
djmaze 7df3ed665d Cleanup attachment filenames 2021-12-16 16:29:31 +01:00
djmaze 94bfe09f63 Cleanup message attachments collections 2021-12-16 15:54:43 +01:00
djmaze a512759289 Added: sort Folders on add/rename folder 2021-12-09 11:24:30 +01:00
djmaze c8e4d589cb Offload server CPU to client when fetching folder list 2021-12-08 14:08:25 +01:00
djmaze b98762dd68 Replace deprecated String.substr with String.slice 2021-12-08 11:35:41 +01:00
djmaze 5fdc38a40d Cleanup mailbox routing 2021-12-07 17:22:56 +01:00
djmaze c41adf35f5 easier mailBox() link generator 2021-12-07 16:52:05 +01:00
djmaze 3a61bb3e5a Revamp the FullNameHash system for better readable urls
And reduce the folders caching footprint.
And it reduces server load.
2021-12-07 14:03:30 +01:00
djmaze e6b6531248 Move b64EncodeJSON to Utils 2021-12-07 12:40:55 +01:00
djmaze 148913ea32 More MessageFlagsCache improvements 2021-12-07 00:05:55 +01:00
djmaze 0f6bb75e80 Improve and bugfix MessageFlagsCache 2021-12-06 19:25:28 +01:00
djmaze d734a3e415 Better mail message handling
* Cleanup HTML parsing
* Drop useless Microsoft 'Sensitivity' MIME Header
* Revamp Flags handling
2021-12-06 16:08:58 +01:00
djmaze 792fee547a change AbstractFetchRemote with a better structure 2021-12-02 23:15:24 +01:00
djmaze 6d7911a9ed Object.entries().forEach() to forEachObjectEntry() 2021-12-01 14:23:37 +01:00
djmaze 547d66ebcb Easier SystemFolders handling 2021-12-01 13:54:35 +01:00
djmaze d33ec54c1c FolderFullNameRaw is gone due to UTF8 2021-11-30 10:19:43 +01:00
djmaze 299ec7faf8 Support RFC 6855 / RFC 5738 (UTF8) 2021-11-22 21:01:30 +01:00
djmaze 7211d232a6 Cleanup language files 2021-11-18 16:37:42 +01:00
djmaze 6ae38bfe1b Improved mobile view 2021-11-16 13:15:02 +01:00
djmaze 6b8020b8f5 Improved additional account management 2021-11-15 10:56:52 +01:00
djmaze b057c4083e Prepare some code for cleaner account switching without reload 2021-11-13 09:46:59 +01:00
djmaze 739aeaded5 Improved the Switch account system for better feedback to user 2021-11-11 21:01:39 +01:00
djmaze 2e34f98c80 Cleanup and improve HTML/CSS and it's JavaScript handling 2021-11-06 12:27:37 +01:00
djmaze 9f444ceb53 Bugfix: 'exitFullscreen' called on an object that does not implement interface Document 2021-11-05 17:24:45 +01:00
djmaze 789dc264f7 Replace my old ResizeObserver workaround for RainLoop bugs with proper CSS flex.
And removed wysiwyg resize() in favor of flexbox.
2021-11-05 14:47:19 +01:00
djmaze 263e595ba2 Added: resize messages list vertical 2021-11-05 10:20:06 +01:00
djmaze e52addf346 When login don't reload the whole browser. Just rebuilt screens 2021-11-01 11:24:11 +01:00
djmaze fb86d15c02 Treat Kolab folders as SystemFolder and show the type in User -> Settings -> Folders 2021-10-21 17:15:00 +02:00
djmaze 0c237376e5 Get Kolab integration working 2021-10-15 11:58:06 +02:00
djmaze ef9d1ed220 Improved Kolab folders visibility 2021-10-14 09:43:20 +02:00
djmaze 9158fcd0eb Improve AppUser.bootstart 2021-09-23 14:24:06 +02:00
djmaze 3c8cdcbb07 Drop useless "disable settings screen" 2021-09-23 11:05:19 +02:00
djmaze 2227e8ca21 No need to disable help screen 2021-09-17 14:37:18 +02:00
djmaze 10143cf48f Remove useless "disable reload" feature 2021-09-17 14:25:52 +02:00
djmaze fa136cd529 Drop useless messagelist_actions feature 2021-09-17 14:07:52 +02:00
djmaze 00088ef547 No need to disable Composer (new message), so drop the feature 2021-09-17 13:58:49 +02:00
djmaze 134deb8d73 Drop unused user mail templates system 2021-09-17 10:32:58 +02:00
djmaze 4ca29a2e8f Cleanup knockout Components 2021-09-14 16:11:50 +02:00
djmaze 47b75755c4 Resolve issue #143 2021-09-13 13:32:06 +02:00
djmaze 96e2e6576c IMAP UID is integer 2021-09-10 16:28:29 +02:00
djmaze 081761b593 User Settings General messages per page use <input number instead of select 2021-09-03 16:40:16 +02:00
djmaze 47bbd3d410 Bugfix: exitFullscreen() errors 2021-09-01 11:01:13 +02:00
djmaze 8a22ddff5e Improved #121 2021-08-25 16:27:17 +02:00
djmaze ef4d604f6d Bugfixes and improvements for Folderlist 2021-08-24 18:23:17 +02:00
djmaze d6071a584e Drop unused customSpecSuffix 2021-08-23 16:40:28 +02:00
djmaze cc03546484 Reduce JavaScript footprint 2021-08-20 15:40:07 +02:00
djmaze fea65b7ebf Cleanup htmlToPlain() and replace its splitPlainText() for simple wordwrap 2021-08-20 12:10:15 +02:00
djmaze e0adf7accd Bugfix and simplify broken folderListOptionsBuilder() due to changes for #112 2021-08-19 21:31:08 +02:00
djmaze 5f73b721e6 Bugfix solution of #112 2021-08-19 15:35:47 +02:00
djmaze ba477e25ff Resolve issue #112 2021-08-19 15:14:47 +02:00
djmaze d139c02cc9 Improved loading of WYSIWYG 2021-08-17 14:43:48 +02:00
djmaze 1c95eab6d6 Bugfix and improve Squire HTML/Plain modes 2021-08-16 18:09:54 +02:00
djmaze d536b5eeee Change ()=>{} into ()=>0 2021-08-13 09:58:43 +02:00