Commit graph

1690 commits

Author SHA1 Message Date
the-djmaze
92cec80b73 Improved plugin documentation 2022-02-26 10:33:11 +01:00
the-djmaze
6d6690009c Cleanup unused Squire code 2022-02-26 10:22:14 +01:00
the-djmaze
01692075c6 Resolve #244 2022-02-26 09:39:22 +01:00
the-djmaze
36feca6ce7 modalVisibility() to modalVisible() 2022-02-26 01:06:18 +01:00
the-djmaze
86374433b9 Cleanup Sieve Filter editor code 2022-02-26 01:02:12 +01:00
the-djmaze
0bf891ba9d Improved ko.extenders.limitedList 2022-02-25 17:18:45 +01:00
the-djmaze
1d63683cf9 Improved shortcuts handling 2022-02-25 17:02:08 +01:00
the-djmaze
65a3b9e4c7 Bugfix: Popup Escape/Close key failed 2022-02-25 13:13:09 +01:00
the-djmaze
b82d26b71b Restructure some popups to use <form> 2022-02-25 13:12:44 +01:00
the-djmaze
169dbfecca Added some documentation 2022-02-25 12:11:32 +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
93dcea6d35 Resolve #245 Send HTML message as last part 2022-02-25 10:36:23 +01:00
the-djmaze
f2054fde0f Resolve #246 2022-02-25 10:12:06 +01:00
the-djmaze
2edd55f01f Drop cancelCommand in favor of closeCommand and improve AbstractViewPopup handling 2022-02-24 22:40:17 +01:00
the-djmaze
06b5b83588 removed default export 2022-02-24 14:01:41 +01:00
the-djmaze
b5114fa73a Simplify admin domain management 2022-02-24 13:36:57 +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
bb4ff4fdc7 Bugfix: rl.app.setExpandedFolder() undefined 2022-02-23 22:23:16 +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
60b7f61e42 Resolve #203 2022-02-22 17:21:08 +01:00
the-djmaze
24b638cd82 Cleanup some JavaScript 2022-02-21 15:36:34 +01:00
the-djmaze
d63b2000b6 Resolve #240 2022-02-19 13:23:13 +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
f4bed88e39 Cleanup pgp decrypt code and show green when decrypted 2022-02-17 10:18:47 +01:00
the-djmaze
b2a492bdab Cleanup knockout subscribables 2022-02-17 09:36:29 +01:00
the-djmaze
5748dea4bc Cleanup component models 2022-02-16 23:12:12 +01:00
the-djmaze
e59e6444d0 Bugfix: some messages have incorrect image widths 2022-02-15 14:49:04 +01:00
the-djmaze
be35a541c3 Added idea to allow <style> 2022-02-15 12:29:41 +01:00
the-djmaze
6c795d4ced Bugfix: missing comma 2022-02-15 12:08:52 +01:00
the-djmaze
9b82830c36 Improved bug #228 2022-02-15 11:05:01 +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
e2c171f302 Resolve #202 2022-02-15 10:22:52 +01:00
the-djmaze
88c16f5c40 Cleanup some CSS 2022-02-14 17:37:58 +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
9d8325d5a8 Improved "View in separate window" with theme colors 2022-02-13 20:01:21 +01:00
the-djmaze
803113568f Resolve #228 2022-02-13 12:58:01 +01:00
the-djmaze
2fea7b92e1 reCaptcha at admin login
https://github.com/the-djmaze/snappymail/issues/222#issuecomment-1036211212
2022-02-11 14:52:04 +01:00
the-djmaze
fecc9f96eb Added support for reCaptcha #222 2022-02-11 14:21:41 +01:00
the-djmaze
44ee236709 dispatchEvent(new CustomEvent(...)) to fireEvent(...) 2022-02-11 12:21:16 +01:00
the-djmaze
f7092e70ad remove style .squire-wysiwyg a 2022-02-11 11:28:02 +01:00
the-djmaze
e0e490c64f #89 Decrypt and verify with OpenPGP.js and GnuPG 2022-02-11 11:01:07 +01:00
the-djmaze
85f9209176 Improved decrypted attachments view 2022-02-10 17:15:20 +01:00
the-djmaze
2037f21c45 Resolve #180 and now works with #89 2022-02-10 17:01:36 +01:00
the-djmaze
25a786d584 #89 added downloading of decrypted attachments 2022-02-10 16:35:55 +01:00
the-djmaze
292e21bae1 Replaced added postal-mime for custom mime parser due to PGP verify requirements 2022-02-10 15:37:05 +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
2c5322129c #89 Added signing using GnuPG 2022-02-09 22:58:47 +01:00
the-djmaze
e0ebc999d5 Extend plugin config with a grouping class 2022-02-09 17:48:05 +01:00
the-djmaze
92b81b777b Fix some OpenPGP translations 2022-02-09 15:43:14 +01:00
the-djmaze
8e515ed2af #89 improved sign and encrypt 2022-02-09 13:44:17 +01:00
the-djmaze
8fff6fa759 Added: GnuPG encrypt (sign still fails) 2022-02-09 10:53:55 +01:00
the-djmaze
f3717815e1 Cleanup boot.js and fix rllayout cookie 2022-02-08 14:15:22 +01:00
the-djmaze
827421e116 Settings.capa() to SettingsCapa() 2022-02-08 14:13:06 +01:00
the-djmaze
51e391c4d6 Squire better handling of signatures 2022-02-08 13:48:39 +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
c4ffcc708a Also use AskPopupView instead of prompt() to view GnuPG private key 2022-02-08 11:34:04 +01:00
the-djmaze
8428838a8b Replace AskPopupView "Yes" button with "Sign" or "Decrypt" 2022-02-07 23:00:51 +01:00
the-djmaze
66a3a18f67 Improved ask password 2022-02-07 19:35:24 +01:00
the-djmaze
d9f50fa829 Replaced prompt() into a AskPopupView.password() Promise 2022-02-07 17:30:41 +01:00
the-djmaze
1f0af5c0ac Hide some functions from rl.app. 2022-02-07 17:27:25 +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
051e78df51 #89 added send OpenPGP.js signed HTML message 2022-02-07 11:59:47 +01:00
the-djmaze
0cf63dab76 #89 add OpenPGP.js sign and encrypt 2022-02-07 11:32:53 +01:00
the-djmaze
ad6e1bebf8 Much better HTML to Plain converter 2022-02-07 10:23:41 +01:00
the-djmaze
5b051745fe #89 Composer move sign/encrypt buttons from menu to view 2022-02-04 16:21:29 +01:00
the-djmaze
3fc5216841 Improved Composer handling with PGP messages 2022-02-04 13:40:59 +01:00
the-djmaze
96de0be977 #89 solve edit/reply encrypted message/draft 2022-02-04 09:54:59 +01:00
the-djmaze
686138ae15 Revamp isPopupVisible to AbstractViewPopup.hidden 2022-02-04 09:49:55 +01:00
the-djmaze
d7ed6ce423 #89 also encrypt draft on save 2022-02-04 09:00:28 +01:00
the-djmaze
384230f7bf Cleaner Content-Type detection for mimeToMessage() 2022-02-03 23:36:48 +01:00
the-djmaze
983a2db418 #89 added OpenPGP.js encrypt HTML 2022-02-03 23:36:12 +01:00
the-djmaze
fb1c0dd606 Revamp MailSo\Mime\Message for sending proper multipart/encrypted 2022-02-03 21:41:59 +01:00
the-djmaze
5514264914 #89 Bugfix mime and signatures detection 2022-02-03 17:04:10 +01:00
the-djmaze
0dffa549be #89 send encrypted using Mailvelope 2022-02-03 16:51:35 +01:00
the-djmaze
45a714ee08 #89 GnuPG verify cleartext messages 2022-02-03 12:05:33 +01:00
the-djmaze
73fa215e22 #89 OpenPGP.js encrypt (+ verify) 2022-02-03 10:17:18 +01:00
the-djmaze
6b2311663b #89 Hide PGP SIGNATURE from cleartext signed messages 2022-02-02 18:43:55 +01:00
the-djmaze
acfe13bdc2 #89 OpenPGP.js verify cleartext 2022-02-02 17:00:27 +01:00
the-djmaze
f625abe0b2 #89 OpenPGP.js sign cleartext 2022-02-02 16:50:27 +01:00
the-djmaze
da79feeaee #89 verify PGP signatures using OpenPGP.js 2022-02-02 15:24:32 +01:00
the-djmaze
93db6e6e0e #89 verify detached signature using GnuPG 2022-02-02 14:36:49 +01:00
the-djmaze
08ea226dbe Bugfix: message.attachments.hasVisible() undefined 2022-02-02 13:29:13 +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
3615405aac #89 Remove debug code from pgpDecrypt() 2022-02-01 11:49:56 +01:00
the-djmaze
6b26ddec7a #89 Redesign HTML parsing for securing PGP decrypted HTML 2022-02-01 11:46:12 +01:00
the-djmaze
d9e81d6123 #89 revamp code for better decryption and get it working for GnuPG 2022-02-01 11:45:20 +01:00
the-djmaze
4eb70c3f06 #89 show decrypted HTML with inline attachments 2022-01-31 17:29:41 +01:00
the-djmaze
8a4ea92cfb #89 Parse PGP decrypted mime using https://github.com/postalsys/postal-mime 2022-01-31 15:24:51 +01:00
the-djmaze
35900415a2 Resolve #197 2022-01-31 12:36:11 +01:00
the-djmaze
949005eda7 #89 OpenPGP better labeling 2022-01-31 12:34:41 +01:00
the-djmaze
c012fe09f0 #89 decrypt using OpenPGP.js 2022-01-31 11:51:15 +01:00
the-djmaze
efabf269c7 #89 Detailed control saving generated public/private keys 2022-01-31 08:30:46 +01:00
the-djmaze
76361a13da Split OpenPGP.js and GnuPG from PgpUserStore 2022-01-30 02:35:53 +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
b06b04a579 Settings OpenPGP use <details> 2022-01-29 00:20:31 +01:00
the-djmaze
9f125c18c3 #89 added import keys to OpenPGP 2022-01-28 17:56:44 +01:00
the-djmaze
fe078174ab #89 added view GnuPG armored keys 2022-01-28 17:33:52 +01:00
the-djmaze
221136ce1c Better info regarding storing keys on server 2022-01-28 15:11:15 +01:00
the-djmaze
f8cbd5d129 #89 Improved public/private key handling 2022-01-28 15:02:10 +01:00
the-djmaze
7de00cd05c Bugfix: incorrect translation in advanced search popup 2022-01-28 12:23:30 +01:00
the-djmaze
bf19f72a6b Reduce more HTML elements thanks to data-icon="" attribute 2022-01-28 12:23:05 +01:00
the-djmaze
997f0da59f Reduce HTML with improved fontastic 2022-01-28 10:19:21 +01:00
the-djmaze
61ec49fd22 #89 use HTML5 form validity on PGP Generator popup 2022-01-28 00:22:54 +01:00
the-djmaze
0da681f074 OpenPGP.js now stores keys in localStorage
Renamed all deleteAccess to askDelete
2022-01-27 23:07:34 +01:00
the-djmaze
9ab72e7a34 #89 Improved handling of OpenPGP.js stored keys 2022-01-27 20:54:27 +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
d3b60bf097 #89 support decrypting using Mailvelope 2022-01-26 17:08:10 +01:00
the-djmaze
3aca446e8d Distinguish PGP signed and encrypted in message viewer 2022-01-26 15:00:03 +01:00
the-djmaze
8635771537 Improve Settings -> OpenPGP to show available features 2022-01-24 16:47:53 +01:00
the-djmaze
ce971de919 Get PGP verify message working using Promise.
#89
2022-01-24 13:43:53 +01:00
the-djmaze
a7eeeb4f55 Many more changes for #89 2022-01-20 16:38:27 +01:00
the-djmaze
3cc3a76b23 Composer changes for OpenPGP.js 2022-01-20 09:59:56 +01:00
the-djmaze
c2e162b01b Properly load keyrings of Mailvelope, OpenPGP.js and GnuPG 2022-01-19 20:14:21 +01:00
the-djmaze
9f0b872839 Object.entries(d).forEach() to forEachObjectEntry() 2022-01-19 19:36:29 +01:00
the-djmaze
a47397ef09 Revamp PGP management due to implementing Mailvelop and PEAR Crypt_GPG 2022-01-19 18:24:07 +01:00
the-djmaze
bf84684965 Added GnuPG->verify() for testing #89
Bugfix SnappyMail\PGP\Keyservers
Renamed DoPgpVerify to DoMessagePgpVerify
2022-01-17 22:04:14 +01:00
the-djmaze
fde44c0102 Changes for #89
This part fetches the required message parts for pgp verification.
2022-01-17 17:16:25 +01:00
the-djmaze
638128ff93 Attachmnet => Attachment 2022-01-17 16:39:10 +01:00
the-djmaze
8dcd0cf833 Changes for #89
Now it does not fetch the PGP signature, because validation was broken anyway.
Instead it validates multipart/signed according to RFC 3156 section 5 and returns details for the signed part:
* BodyPartId
* SigPartId
* MicAlg

So in the future several implementations (GnuPG, OpenPGP.js, etc.) can use the correct data for verification.
2022-01-17 15:58:23 +01:00
the-djmaze
630dc1e854 Added toggle in message menu to switch between HTML/Plain content parts (when available) 2022-01-14 17:13:17 +01:00
the-djmaze
7680372eda Added option to prefer HTML to plain text view. 2022-01-14 14:05:33 +01:00
the-djmaze
464e766fcc Put OpenPGP check outside "plain".
This allows also for checking HTML messages (but errors for now)
2022-01-13 12:00:12 +01:00
the-djmaze
b1bbd58e21 Strip utm_* tracking 2022-01-13 11:10:40 +01:00
the-djmaze
c7f80d617e v2.10.3 2022-01-12 12:11:37 +01:00
the-djmaze
5757d8d464 Drop use_imap_list_subscribe and use 'HideUnsubscribed' = false
This prevents user questions regarding: "my folders are missing"
2022-01-12 11:55:41 +01:00
the-djmaze
661e937fd1 Added "subscribe" option to create folder popup 2022-01-12 11:15:04 +01:00
the-djmaze
9fea092c43 Cleanup RainLoop\Service with improved ?admin path detection 2022-01-11 15:55:48 +01:00
the-djmaze
c804f35347 CSS btn-thin-2 to btn-thin 2022-01-11 13:06:43 +01:00
the-djmaze
6aedba9d36 UploadErrorCode/UploadError use PHP UPLOAD_ERR_* numbers 2022-01-11 13:05:17 +01:00
the-djmaze
b5201883d6 Restructure and cleanup some RainLoop Actions code 2022-01-11 12:36:47 +01:00
the-djmaze
0e2e44a269 Changes for #180 2022-01-10 14:30:55 +01:00
djmaze
5a17e3b51d Better Domain management with simplified SASL Mechanisms support 2022-01-10 12:57:42 +01:00
djmaze
70093e4d23 move 3 Subscribables into single Computable 2022-01-05 11:46:08 +01:00
djmaze
679d7356e0 More ko.computed to pureComputed 2021-12-31 17:02:32 +01:00
djmaze
a15454fd15 Cleanup createCommand() 2021-12-31 13:50:33 +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
ac2238a23f Bugfix: Cannot write a value to a ko.computed unless you specify a 'write' option 2021-12-31 12:28:43 +01:00
djmaze
98b3fa9632 v2.10.0 2021-12-28 17:13:15 +01:00
djmaze
5c71d22215 Admin -> Config application.ini passwords as input password 2021-12-28 15:05:03 +01:00
djmaze
950a5ad454 doc.createElement => createElement 2021-12-28 14:49:40 +01:00
djmaze
c1dd6edc28 allowAdminPanel => adminAllowed 2021-12-28 14:49:21 +01:00