Commit graph

191 commits

Author SHA1 Message Date
S-A-L13
876ed221c3
Update Fork (#2)
* Cleanup OpenPgpImportPopupView code

* update polish translation

* small fix

* Added Import S/MIME certificate popup
And much better handling of the sign and encrypt options

* bugfix: store in Passphrases

* Resolve #1448

* pre-verify S/MIME opaque signed messages so we have a body to view

* Fix timestampToString() for future dates

* Move php8.php to /app/libraries/polyfill/

* Improved Settings handling to prevent bugs in outer code

* Changed AbstractProvider::IsActive() to be abstract

* Example for #1449

* bugfix: previous IsActive() commit

* OpenSSL required due to S/MIME

* Use get_debug_type() instead of gettype()

* update polish translation

* Make all Enumerations classes abstract

* Added search functionality in Admin -> Config
And removed the unused ['capa']['quota']

* Cleanup Quota handling

* OPEN_PGP should be OPENPGP as it is one word

* Improve Capa handling

* Resolve #1451

* Bugfix TypeError: b64Encode(...).match(...) is null

* Small StorageType change

* Bugfix: mailvelope editor failed

* Bugfix: undefined getMailvelopePrivateKeyFor()

* Bugfix: MIME parser RegExp didn't escape `boundary` which caused issues

* Return detailed info on PgpImportKey

* Show GnuPG verify error

* Sort PGP keys by email and id

* Sort S/MIME certificates on emailAddress else validTo

* S/MIME import from signature use `BEGIN PKCS7`

* Optionally use existing private key to generate S/MIME certificate

* Chaned some error_log() to MailSo Logger()

* Force reload of S/MIME certificates list on import

* Make better use of SnappyMail\SensitiveString

* Fix view PGP key button

* Mask all POST data that has a key which contains `pass`

* v2.35.1

* Resolve #1455

* Improved GnuPG error handling

* Update pt/pt-PT translation

* update Polish translation

* Drop support for gnupg pecl extension as it fails with "no passphrase" issues

* Resolve #1456

* Resolve #1458

* v2.35.2

* fix changelog

* Resolve #1461

* Update pt/pt-PT translation

* compact-composer plugin v1.0.0

* Resolve #1462

* Fix decrypt error message

* `new Error()` to `Error()`

* Resolve #1463

* Show url for #1466

* Simplify SignMe/Remember me code

* Simplify language Notifications

* Bugfix: SetPassword expects \SnappyMail\SensitiveString

* https://github.com/the-djmaze/snappymail/issues/1450#issuecomment-1972147950

* improve: fire the 'squire2-toolbar' event after more props are added

* improve: add dark theme support and use 'button' element as menu trigger for consistent styling

* fix: use compact template in non-destructive way (do not replace the PopupsCompose template if a different wysiwyg is used)

* Update admin.json

* Update user.json

* CSS rainloopErrorTip location

* Improved error handling on PGP and S/MIME decrypt

* KnockoutJS remove unused `beforeRemove`

* KnockoutJS drop unused `as`

* KnockoutJS simplify renderMode because only 1 option is used

* KnoutJS cleanup templating.js a bit

* KnockoutJS drop unused `bindingRewriteValidators`

* KnockoutJS drop the twoWayBindings code

* KnockoutJS simplify virtualElements binding check

* KnockoutJS simplify applyBindingsToNodeInternal

* KnockoutJS use Array.isArray

* KnockoutJS drop alias `textinput` for `textInput`

* KnockoutJS scramble `createChildContext`

* KnockoutJS scramble `controlsDescendantBindings`

* KnockoutJS scramble `exportDependencies`

* KnockoutJS drop unused `throttleEvaluation`

* KnockoutJS drop unused `valueAllowUnset`

* KnockoutJS drop unused `templateNodes`

* KnockoutJS drop unused `optionsCaption`

* KnockoutJS drop unused `dontLimitMoves`

* KnockoutJS drop unused `uniqueName`

* KnockoutJS drop IE leftovers

* KnockoutJS drop unused `preprocess`

* KnockoutJS drop unused "disposeWhenNodeIsRemoved" and "disposeWhen"

* KnockoutJS don't scramble exportDependencies. controlsDescendantBindings, createChildContext

* KnockoutJS drop unused `$parentContext` and `$parents`

* KnockoutJS drop unused `$rawData`

* Knockoutjs built latest

* KnockoutJS drop unused template options `nodes`, `if`, `ifnot`

* KnockoutJS use more Array.isArray

* KnockoutJS cleanup code a bit

* KnockoutJS primitiveTypes can just be checked with Object()

* KnockoutJS rebuilt

* Verify S/MIME signed automatically and log Exception

* Automatically verify PGP and S/MIME signed messages

* `new Error` to `Error`

* By default throw AccountNotAllowed as confused in #1478

* GPG use pinentries for decrypt, sign and export

* Better GPG error handling

* GPG show error on view/export

* OpenPGP fix handling of importing keys

* Make "verify signatures automatically" optional, as it requires more IMAP fetching

* S/MIME don't post identity key and certificate, just fetch from server

* Show error to old browsers, instead of crashing

* Automatically verify S/MIME decrypted signed message

---------

Co-authored-by: the-djmaze <>
Co-authored-by: tinola <tinola@poczta.onet.pl>
Co-authored-by: Maarten <3752035+the-djmaze@users.noreply.github.com>
Co-authored-by: lmperfis <joint.striker@gmail.com>
Co-authored-by: Sergey Mosin <sergey@srgdev.com>
Co-authored-by: hguilbert <51283484+hguilbert@users.noreply.github.com>
2024-03-04 17:00:27 +01:00
the-djmaze
bb906e61ab Make time_zone a select list due to PEBKAC #1417 #1426 2024-02-11 04:10:30 +01:00
the-djmaze
2d829178f8 Added feature to use the SQLite AddressBook per login account instead of global.
On by default unless the global AddressBook.sqlite already exists.
2024-01-17 00:55:23 +01:00
the-djmaze
80d64574a6 Changes for #1078 2023-04-24 11:19:07 +02:00
the-djmaze
d1823af111 More JSON properties to JavaScript camelCase 2023-02-21 11:52:50 +01:00
the-djmaze
ce2fb9d7f2 Many AppData properties to JavaScript camelCase 2023-02-21 10:22:59 +01:00
the-djmaze
8d52b0afdf Bugfix: Notification enum conflicts with window.Notification 2023-02-20 15:59:37 +01:00
the-djmaze
1506a158f4 Show loadavg in Admin -> About for #971 2023-02-17 08:26:53 +01:00
the-djmaze
974350ebee Found more JSON properties to change into JavaScript camelCase 2023-01-26 10:41:55 +01:00
the-djmaze
80eea23b10 Add admin setting for the contacts suggestions limit
Improves visual info for #849
2023-01-17 11:52:07 +01:00
the-djmaze
c5c180cb2e Move createDomain & createDomainAlias buttons below table 2023-01-17 11:22:30 +01:00
the-djmaze
4922586893 Cleanup config settings and provide some info 2022-12-30 15:11:25 +01:00
the-djmaze
b0ed74575f Cleanup locate time handling 2022-12-23 12:22:57 +01:00
the-djmaze
6b6aa54b99 Bugfix undefined matched domain should say email@example matched domain 2022-12-06 10:50:55 +01:00
the-djmaze
91978e6ecf v2.21.4 2022-11-22 12:05:21 +01:00
the-djmaze
08baff9e64 Added domain matcher test for #689 2022-11-21 17:18:11 +01:00
the-djmaze
04c11ddc49 Move changeTheme and convertThemeName to Themes.js 2022-11-08 10:53:14 +01:00
the-djmaze
b12852bd08 Reduce JavaScript footprint 2022-10-10 13:52:56 +02:00
the-djmaze
690656e4d1 Make the new Admin => Config experimental editable #189 2022-09-29 15:06:23 +02:00
the-djmaze
2651b6fd93 Remove the old "move to folder" behaviour option 2022-09-29 10:08:45 +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
afd65c809d Drop Remote.request() aAbortActions parameter 2022-09-02 09:56:31 +02:00
the-djmaze
1a130d0be3 ?admin use JavaScript Optional chaining 2022-09-01 21:28:37 +02:00
the-djmaze
eb169f73fa Improved update/save admin user 2022-08-29 16:44:06 +02:00
the-djmaze
d810a629c8 Better admin TOTP base32 test 2022-08-29 15:51:16 +02:00
the-djmaze
3808852894 Added: ?admin TOTP show QR code 2022-08-29 12:17:08 +02:00
the-djmaze
c1bed26fd1 Resolve #399 (just remove the confusing feature "hide submit button") 2022-05-17 09:15:06 +02:00
the-djmaze
1d8898e974 Resolve #318 2022-04-12 17:08:26 +02:00
the-djmaze
485acf42d0 Resolve #306 2022-03-29 11:44:26 +02: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
4dd58f7c36 Cleanup and better rename settings screens to match template names 2022-03-08 00:51:32 +01:00
the-djmaze
874f2592ca Drop Capa enums 2022-03-05 22:25:32 +01:00
the-djmaze
8701174157 Resolve #253 2022-03-02 10:23:01 +01:00
the-djmaze
f4d98130a5 Simplify save settings 2022-03-01 10:18:12 +01:00
the-djmaze
2e8497dc01 Bugfix: Admin extensions page didn't refresh after install/update 2022-02-28 17:26:23 +01:00
the-djmaze
97bc3ef585 Enable AbstractViewSettings 2022-02-28 10:38:47 +01:00
the-djmaze
06b5b83588 removed default export 2022-02-24 14:01:41 +01:00
the-djmaze
e7c7b8ed53 Restructure Capa 2022-02-24 12:22:27 +01:00
the-djmaze
b2a492bdab Cleanup knockout subscribables 2022-02-17 09:36:29 +01:00
the-djmaze
827421e116 Settings.capa() to SettingsCapa() 2022-02-08 14:13:06 +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
9f0b872839 Object.entries(d).forEach() to forEachObjectEntry() 2022-01-19 19:36:29 +01:00
djmaze
5c71d22215 Admin -> Config application.ini passwords as input password 2021-12-28 15:05:03 +01:00
djmaze
f20a7c7b83 Added Admin -> Config to view all the application.ini settings.
TODO: save changes
2021-12-23 11:37:39 +01:00
djmaze
3b40f86c33 Better Remote.saveAdminConfig() and better idleTrigger for them 2021-12-03 12:32:21 +01:00
djmaze
35bce8cf62 Also reduce admin remote fetch 2021-12-03 00:11:19 +01:00
djmaze
792fee547a change AbstractFetchRemote with a better structure 2021-12-02 23:15:24 +01:00
djmaze
8ac116d0a4 Added Admin TOTP to admin security page 2021-11-18 14:14:14 +01:00
djmaze
e52addf346 When login don't reload the whole browser. Just rebuilt screens 2021-11-01 11:24:11 +01:00