Commit graph

1637 commits

Author SHA1 Message Date
djmaze 36971482a0 Some code cleanups 2021-09-01 11:02:51 +02:00
djmaze aa16ef3dd0 Improved messageview design 2021-09-01 11:01:56 +02:00
djmaze 47bbd3d410 Bugfix: exitFullscreen() errors 2021-09-01 11:01:13 +02:00
djmaze 671a7a7002 Don't show unread on system folders 2021-09-01 09:43:53 +02:00
djmaze bafc74fd09 Also prevent browser unload in Chrome 2021-08-31 16:21:40 +02:00
djmaze f2d172de7d Prevent unloading of browser window when popups (like composer window) are open. 2021-08-31 16:17:20 +02:00
djmaze 3756264669 Improvements for issue #136 2021-08-30 14:01:42 +02:00
djmaze 45662b39b0 Improved and cleanup CSS and language selectors 2021-08-27 16:30:42 +02:00
djmaze 2f87ada0c4 Resolve issue #129 2021-08-27 12:20:48 +02:00
djmaze 202fac8295 Some small UI design improvements 2021-08-27 09:59:13 +02:00
djmaze c8678953fe Resolve issue #130 2021-08-26 20:31:38 +02:00
djmaze 637ed9a478 Improve new .tabs CSS from 2021-08-26 20:10:14 +02:00
djmaze d7a30cba79 Revamp tabs system using CSS display:grid instead of JavaScript 2021-08-26 08:10:56 +02:00
djmaze fe4344794b Workarounds for #124 (does not solve it) 2021-08-25 16:30:47 +02:00
djmaze 8a22ddff5e Improved #121 2021-08-25 16:27:17 +02:00
djmaze 3ad9bb6258 Cleanup some code 2021-08-25 13:22:40 +02:00
djmaze ddb6daace6 Resolve weird cursor as mentioned in #112 2021-08-25 12:43:13 +02:00
djmaze be9cb6c727 Bugfix for #123 2021-08-25 12:34:19 +02:00
djmaze 0b323ab870 Bugfix: when clicking \NoSelect subfolder, it redirect to parent
Improvement for #112
2021-08-25 12:24:27 +02:00
the-djmaze b1f78361f6
Merge pull request #122 from Alphix/fix_issue_72
Fix issue #72
2021-08-25 12:02:51 +02:00
djmaze 5db8f032b8 Resolve issue #123 2021-08-25 12:00:50 +02:00
David Härdeman 17f107057a [snappymail] Rework FolderCollectionModel .js a bit
Following the previous bugfix, rework the .js code a bit to reduce the
amount of nested ifdeffery.
2021-08-25 00:24:53 +02:00
David Härdeman 0190170edd [snappymail] Include subfolders in folder list rebuild
Subfolders also need to be taken into consideration, otherwise
subfolder deletion/creation won't be reflected in the UI.

Fixes #72
2021-08-25 00:24:01 +02:00
djmaze 8934205ede Replace {'inbox-star-icon': isInboxStarred} with {'flag-icon': isFlagged} for future improvements 2021-08-24 21:10:49 +02:00
djmaze db1615f2ca Bugfix: FolderList INBOX detection 2021-08-24 20:45:40 +02:00
David Härdeman 72ff960114 [snappymail] Allow deletion of parent folder with subfolders
This change brings snappymails behaviour in line with RFC3501, section 6.3.4,
by allowing "real" (i.e. non-\Noselect) parent folders to be deleted and
by not performing a recursive deletion of subfolders.
2021-08-24 18:33:54 +02:00
djmaze ef4d604f6d Bugfixes and improvements for Folderlist 2021-08-24 18:23:17 +02:00
djmaze 327d6c32ca Improved FolderCollection handling and try to solve https://github.com/the-djmaze/snappymail/issues/112#issuecomment-904193275 2021-08-24 15:53:39 +02:00
djmaze 2def2fc118 IMAP \archive is not the same \all, so split it 2021-08-23 17:23:43 +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 7e43bfc6b0 Cleanup CSS and JS
Improve app loading error
2021-08-18 15:36:33 +02:00
djmaze 50d7803c17 Although this is a browser bug (Fulguris & DuckDuckGo), just show why the browser fails loading resources.
See https://github.com/the-djmaze/snappymail/issues/107
2021-08-18 12:23:48 +02:00
djmaze d139c02cc9 Improved loading of WYSIWYG 2021-08-17 14:43:48 +02:00
djmaze 8273111e65 Strip unused CSS 2021-08-17 14:06:56 +02:00
djmaze 26015aaf18 Improve folderInformation and folderInformationMultiply 2021-08-17 12:08:09 +02:00
djmaze 8498290d93 FolderInformation Result.Flags use Object.entries() 2021-08-16 18:10:45 +02:00
djmaze 1c95eab6d6 Bugfix and improve Squire HTML/Plain modes 2021-08-16 18:09:54 +02:00
djmaze ed1dc4dbc1 Don't preload Compose window for speedup and to avoid an excessive DOM size 2021-08-13 10:16:55 +02:00
djmaze 2a6a1ff799 Improved keyboard shortcuts handling 2021-08-13 10:03:13 +02:00
djmaze 5f21fcc100 hasher.changed.* to hasher.* 2021-08-13 10:01:01 +02:00
djmaze d536b5eeee Change ()=>{} into ()=>0 2021-08-13 09:58:43 +02:00
djmaze 2d87b52c07 There is no 'return true' for the shortcuts system 2021-08-12 20:55:24 +02:00
djmaze 64a7b82408 Bugfix: Help screen broken tabbing shortcuts 2021-08-12 20:33:13 +02:00
djmaze 8b116fa8ba Cleanup some code 2021-08-12 20:17:37 +02:00
djmaze 5895804e9a More excessive DOM reductions 2021-08-12 14:44:38 +02:00
djmaze 467b4a7913 Resolve issue #105 2021-08-10 17:10:09 +02:00
djmaze 308e65f94f cleanup some css and js 2021-08-10 17:07:26 +02:00
djmaze 3a32a09f2a KnockoutJS:
* remove deprecated allBindings as Accessor https://github.com/knockout/knockout/pull/2133
* remove unused event '*Bubble' https://knockoutjs.com/documentation/event-binding.html#note-4-preventing-the-event-from-bubbling
* remove unused 'completeOn' https://knockoutjs.com/documentation/binding-lifecycle-events.html#indicating-that-a-control-flow-binding-completes-asynchronously
2021-08-10 15:00:49 +02:00
djmaze 8b10abe5ac Reduce DOM size of Ask popup 2021-08-10 12:33:42 +02:00
djmaze 6807da145e Reduce help screen dom size 2021-08-10 12:23:29 +02:00
djmaze 6a903bc9b2 Reduce MessageList html/css footprint 2021-08-10 12:22:55 +02:00
djmaze 48e8138764 Bugfix: "clear folder" was shown in wrong folder 2021-08-10 11:42:21 +02:00
djmaze 019de7de87 Bugfix: clicking star icon for flagged items in INBOX failed 2021-08-09 14:22:57 +02:00
djmaze fd293b723b Resolve Issue #104 2021-08-09 11:13:10 +02:00
djmaze d2550c3139 Reduce excessive DOM even more 2021-07-30 23:11:05 +02:00
djmaze 00bc92f4c7 Reduce excessive DOM a bit 2021-07-30 14:40:32 +02:00
djmaze 0659b126e7 Better folder unread-count view 2021-07-30 12:26:27 +02:00
djmaze a3d2b560d0 Make <script> secure with CSP, see issue #103 2021-07-28 14:32:41 +02:00
djmaze 533f488cc4 Speedup boot script 2021-07-26 15:06:28 +02:00
djmaze 4d655953de Drop support for Edge Legacy (is EOL), Firefox < 69, Chrome < 69, Safari < 12 2021-07-26 11:48:53 +02:00
djmaze d41b929c13 Delay message "mark as read" for 5 seconds 2021-07-26 10:15:50 +02:00
djmaze 868f7a4b0a Merge branch 'master' into plugin-2fa 2021-07-23 11:58:18 +02:00
djmaze 56e8ea664d Cleanup user login JavaScript code 2021-07-23 11:57:45 +02:00
djmaze 0a69c6410d Added support for JavaScript FormData
As preparation for 2FA plugins and easier Fetch calls
2021-07-23 11:40:03 +02:00
djmaze 2064c1613b Merge branch 'master' into plugin-2fa 2021-07-22 21:38:55 +02:00
djmaze bf75cf7946 Added 2FA TOTP on admin login
https://github.com/the-djmaze/snappymail/issues/84#issuecomment-818808101
2021-07-22 21:36:44 +02:00
djmaze 4645209053 Cleanup some code 2021-07-22 16:24:24 +02:00
djmaze b16b184ac9 Improved focused styling 2021-07-21 21:54:07 +02:00
djmaze 5590fd4860 isNonEmptyArray => arrayLength 2021-07-21 21:34:17 +02:00
djmaze eec3f46c34 Bugfix: messageview focused [Tab] key should not traverse back to messagelist 2021-07-21 14:15:31 +02:00
djmaze 5ef49f9b8e Bugfix: shortcuts stop working
https://github.com/the-djmaze/snappymail/issues/62#issuecomment-810921656
2021-07-21 14:14:31 +02:00
djmaze 0aab26383c Merge branch 'master' into plugin-2fa 2021-07-21 12:26:14 +02:00
djmaze 7ab832e854 Custom new mail notification sounds 2021-07-21 11:19:52 +02:00
djmaze 5ef2b6daa3 drop unused small in bootstrap 2021-07-20 20:46:47 +02:00
djmaze f57955443b Cleanup bootstrap css 2021-07-20 20:29:47 +02:00
djmaze 18cedbabad Simplify UserBackground code 2021-07-20 16:49:03 +02:00
djmaze e13337e247 Cleanup styling and gulp merge @media queries 2021-07-20 16:45:55 +02:00
djmaze 1f2208d304 Cleanup time handling 2021-07-19 14:26:32 +02:00
djmaze bb15cd1ec3 Resolve Issue #100 2021-07-19 11:57:47 +02:00
djmaze 5213b804d9 Some tiny changes 2021-07-16 16:24:07 +02:00
djmaze 79945d45b4 Merge Admin Plugins and Packages into single management page 2021-07-16 13:57:04 +02:00
djmaze d69743cee5 Cleanup closeCommand & cancelCommand because both are defined for popups 2021-07-16 09:11:10 +02:00
djmaze c46e190a3a Fix calc() in less files 2021-07-15 21:02:00 +02:00
djmaze bf9b47ce85 Added: compose window on mobile use Fullscreen API 2021-07-15 21:01:41 +02:00
djmaze 7985eaa23a Merge branch 'master' into plugin-2fa 2021-07-14 12:51:54 +02:00
djmaze d5f0b1d06c Resolve Issue #98 2021-07-14 12:03:09 +02:00
djmaze 51d9c3adbb Uncaught (in promise) TypeError: oData is undefined 2021-07-14 10:32:21 +02:00
djmaze d67cfaa3a4 Resolve Issue #93 2021-05-31 16:19:01 +02:00
djmaze bea8a95c6b v1.5.1 2021-05-19 15:58:37 +02:00
djmaze e49405cd85 Improved broken PGP implementation 2021-05-19 15:26:10 +02:00
djmaze 45c74370d0 Bugfix: has() is not a function 2021-05-19 11:24:53 +02:00
djmaze 426b82e7c4 Cleanup messageview style 2021-05-18 14:28:56 +02:00
djmaze df8de36f91 Merge remote-tracking branch 'upstream/master' 2021-05-13 00:42:12 +02:00
RainLoop Team 90e41635ed Update locales 2021-05-06 03:39:59 +03:00
djmaze a7ae087f18 More HTML cleanups 2021-05-01 10:02:40 +02:00
djmaze 109c6b6ab5 Cleanup HTML and CSS 2021-04-30 16:39:27 +02:00
djmaze d38a1acc24 Cleanup contacts popup 2021-04-29 16:26:20 +02:00
djmaze 454321430a Bugfix: multiple accounts showed both fontastic glyphs 2021-04-29 15:15:01 +02:00
djmaze 032e71448b Cleanup boot loading bouncer 2021-04-29 15:14:26 +02:00
djmaze 89b52b512f Remove progressJs bar because we are fast... 2021-04-28 22:59:42 +02:00
djmaze a36a8113bb Cleanup more rlspecauth/AuthAccountHash related code 2021-04-28 21:33:03 +02:00
djmaze 146b2c1001 Cleanup AuthAccountHash handling 2021-04-28 15:56:31 +02:00
djmaze ce63ba506a Keep AUTH_SPEC_TOKEN_KEY
And now we can embed theme and language in index.html template
2021-04-28 12:08:07 +02:00
djmaze 6c370abac3 Revert broken speedup idea for language and theme.
RainLoop removes AUTH_SPEC_TOKEN_KEY cookie, which kills browser refresh/F5
So had to put back the LangLink and NewThemeLink, for now
2021-04-26 21:56:11 +02:00
djmaze dbf9755700 Improved themes and localization 2021-04-26 14:24:57 +02:00
djmaze fb98ca6fe7 Merge language into index template 2021-04-26 12:19:47 +02:00
djmaze 8aa9b0b33f Speedup foldercollection 2021-04-23 13:01:51 +02:00
djmaze 29fe73d4e7 Cleanup .bind( 2021-04-23 10:47:24 +02:00
djmaze 9ec84baa32 Cleanup attachments design 2021-04-23 10:12:06 +02:00
djmaze 60a4a248d1 Simplify onWarmUp into onBuild 2021-04-23 00:12:42 +02:00
djmaze 999389c6c5 Bugfix: wrong Notification.RequestAborted 2021-04-22 23:53:39 +02:00
djmaze 14a9f00c6e Improve composer dark mode 2021-04-22 23:34:37 +02:00
djmaze 3572d00a10 Cleanup admin code 2021-04-22 21:56:01 +02:00
djmaze 75c879836c Settings menus:
- remove .disabled, never used
- cleanup/simplify code
2021-04-22 16:02:12 +02:00
djmaze a624d43602 Remove unused #rl-top 2021-04-22 14:30:41 +02:00
djmaze 8af35f7d39 Move login forgotPasswordLinkUrl/registrationLinkUrl to plugin 2021-04-22 13:59:22 +02:00
djmaze 1b4277c9db Remove some CSS outline and !important 2021-04-22 13:37:43 +02:00
djmaze 1a8eea24cf Improve non-composited animation 2021-04-20 13:41:51 +02:00
djmaze e1a08a9755 Bugfix: this.logoutReload is not a function 2021-04-20 13:01:15 +02:00
djmaze 3d2f7fb3ef Cleanup .add-on CSS 2021-04-20 11:27:19 +02:00
djmaze c30de83da9 Merge branch 'master' into plugin-2fa 2021-04-14 14:38:13 +02:00
djmaze 3c8d01a882 There's no CSS .i18n-animation
It was only used by jQuery.letterfx in RainLoop
2021-04-14 09:24:23 +02:00
djmaze 89107387d5 Improved #81 2021-04-13 14:11:17 +02:00
djmaze d9bab28bfe #84 as plugin 2021-04-13 11:42:06 +02:00
djmaze ca9b8c8c7f Drop additionalCode for #84 2021-04-12 21:35:36 +02:00
djmaze 63f10f9e9b remove unused showScreenPopup 2021-04-12 19:45:33 +02:00
djmaze 48fa1a1fdc Drop 2FA, read #84 2021-04-12 19:15:33 +02:00
djmaze ca59c21602 Bugfix: translator "undefined" 2021-04-12 16:30:39 +02:00
djmaze 673815364f Resolve #81 2021-04-12 13:20:18 +02:00
djmaze 1069eca4da Resolve #83 2021-04-12 13:08:09 +02:00
djmaze fa371e25bf Revamp language system for #82 2021-04-12 12:57:35 +02:00
djmaze 0374ded776 Cleanup Contacts/AddressBook PDO settings 2021-04-09 17:06:17 +02:00
djmaze 3d10bbface Added SpamResult 2021-04-09 09:01:48 +02:00
djmaze 168ee911b3 Added: Show spam score in % in message detailed info
Currently only for SpamAssassin and Rspamd
2021-04-08 15:56:46 +02:00
djmaze 89cbcf6f63 Remove unused properties and improved message view header 2021-04-07 16:35:46 +02:00
djmaze 8620df907e Bugfix: composer attachments hard to see in dark mode 2021-04-07 14:48:12 +02:00
djmaze 687afdef6a Resolve quota issue #75 2021-04-06 23:03:20 +02:00
djmaze 581c89d502 Cleanup unused properties 2021-03-30 11:48:22 +02:00
djmaze 5cb150a744 Prepare mailbox routing for new feature 2021-03-30 10:58:24 +02:00
djmaze eb69494f0c Resolve #71 2021-03-30 09:10:43 +02:00
djmaze ba982edce7 v2.4.3 2021-03-29 22:31:51 +02:00
djmaze 1129db3f04 Improved #67 2021-03-29 22:05:35 +02:00
djmaze b594f6f5fe Improved #69 2021-03-29 22:05:08 +02:00
djmaze 5eb7c7515a Added feature request #69 2021-03-29 12:08:52 +02:00
djmaze 0dbc534305 Drop unused NullFolder 2021-03-29 09:38:18 +02:00
djmaze 64cf19746d Finish the sort feature 2021-03-27 16:02:48 +01:00
djmaze 7eeed62b09 Get sorting working for #67 2021-03-27 00:57:04 +01:00
djmaze 883bf6b026 Start https://github.com/the-djmaze/snappymail/issues/67#issuecomment-806948346 2021-03-26 15:07:14 +01:00
djmaze fd5940f5fc Bugfix: missing space between number and 'Bytes' 2021-03-25 16:51:54 +01:00
djmaze 59c1392b2c Added feature #67 2021-03-25 16:26:26 +01:00
djmaze af3c79ce80 Moved CKEditor to be plugin 2021-03-25 13:35:15 +01:00
djmaze 240b0381f9 Cleanup *App classes 2021-03-25 10:54:40 +01:00
djmaze 673bd49095 Improvements for #62 2021-03-25 10:08:29 +01:00
djmaze 23e15fd161 Use own createElement() instead of doc.createElement 2021-03-25 09:38:45 +01:00
djmaze 7eaaa0a793 Upgrade i18n() to use Object.entries()
And replace quoted object keys to be without quotes
2021-03-24 21:26:40 +01:00
djmaze fe4dbc729c Added isFunction() 2021-03-24 14:22:25 +01:00
djmaze 658ac816c8 Cleanup logoutReload() 2021-03-24 14:14:21 +01:00
djmaze b4ab5b891a replaced knockout hasfocus with autofocus="" 2021-03-23 22:57:40 +01:00
djmaze 650e962fdf Cleanup function folderListOptionsBuilder() 2021-03-23 22:45:30 +01:00
djmaze 4bcfc81830 Small speedup/cleanup of some code 2021-03-23 14:48:34 +01:00
djmaze cca0fc15da Added HTML5 form.reportValidity() to login screens
This improves browser feedback on form errors
2021-03-23 11:28:36 +01:00
djmaze 612aff4b27 Essential part for issue #64
Real drag & drop needs to be created.
2021-03-22 15:44:48 +01:00
djmaze 28d09c1a5d Bugfix: can't access property "setTrigger" 2021-03-22 15:20:59 +01:00
djmaze f69b1195e6 Based on RainLoop discussion #2079,
i've added a security option to set Sender per Domain.
NOTE: Not tested yet
2021-03-22 14:17:18 +01:00
djmaze 490a706cc6 Bugfix: admin contactsType should be set before subscribables 2021-03-22 13:47:07 +01:00
djmaze be66ab2ac8 Improved mobile and admin CSS 2021-03-22 13:46:03 +01:00
djmaze 46531c7831 Bugfix and improve layout change handling 2021-03-19 10:09:30 +01:00
djmaze d74f58393c Resolve Issue #52 2021-03-18 16:12:40 +01:00
djmaze 97d5f8762d Improve SettingsUserStore handling 2021-03-18 16:12:24 +01:00
djmaze ce74b2e92f Cleanup more iError && data.Result 2021-03-18 14:48:21 +01:00
djmaze 87bee226b4 Easier refresh Folders 2021-03-18 13:52:56 +01:00
djmaze 11fd6736bb Set response ErrorCode as iError for easier fetch error handling 2021-03-18 12:33:13 +01:00
djmaze a46c0c3b21 Put AppUserStore.currentAudio in AbstractSystemDropDownUserView 2021-03-17 10:09:10 +01:00
djmaze 676de1ed23 Simplify AppUserStore.contactsIsAllowed 2021-03-17 10:05:22 +01:00
djmaze 8157692a29 Bugfix: compose popup had two autosave timers 2021-03-17 10:03:57 +01:00
djmaze 845483d127 Bugfix: messagelist viewAppendArea failed to missing observableArray 2021-03-16 17:09:39 +01:00
djmaze b7c02321fa Compress audio and clean links 2021-03-16 17:07:29 +01:00
djmaze 0b64083543 Array.isArray to isArray
Array.isNotEmpty to isNonEmptyArray
2021-03-16 16:49:14 +01:00
djmaze 986b8f056b prevent creation of _defineProperty() function 2021-03-16 16:08:01 +01:00
djmaze eff92c3152 Cleanup AppUserStore
Simplify KeyState/Focused as Scope enum
2021-03-16 16:06:16 +01:00
djmaze 62cb918180 Removed AppAdminStore 2021-03-16 14:15:05 +01:00
djmaze 004eba6be2 Updated subscribables 2021-03-16 11:38:40 +01:00
djmaze 4b6f6b1bfc Move addObservablesTo, addComputablesTo & addSubscribablesTo to Common/Utils 2021-03-16 10:59:47 +01:00
djmaze eda0ee695d Removed CapaAdminStore 2021-03-16 10:46:22 +01:00
djmaze 4a8d516123 Changed: StorageResultType to error result code 2021-03-16 09:46:23 +01:00
djmaze be3ef15f8e Removed unused adminPing 2021-03-14 22:36:39 +01:00
djmaze 0345050344 Simplify DomainAdminStore, PackageAdminStore and PluginAdminStore 2021-03-14 22:36:23 +01:00
djmaze bde4d147bb Cleanup Filters/Sieve capa 2021-03-14 12:15:48 +01:00
djmaze 87a56f5341 Cleanup eslint 2021-03-12 23:56:22 +01:00
djmaze 5a3745a8ca Resolved Issue #59 2021-03-12 23:55:33 +01:00
djmaze 6d16a533fe Resolved Issue #60 2021-03-12 23:54:47 +01:00
djmaze 9c14ba1b9d Remove messageVisibilityCommand 2021-03-12 17:08:58 +01:00
djmaze 227db0e0c3 Simplify MessageUserStore 2021-03-12 16:54:37 +01:00
djmaze 5e0f637b12 Removed unused detectDomBackgroundColor 2021-03-12 11:57:07 +01:00
djmaze 424167d43f Remove message background color detection.
It is useless without text color and breaks dark mode
2021-03-12 11:56:44 +01:00
djmaze f9ded86221 When reply/sending e-mail:
- remove Microsoft Office styling
- remove HubSpot HTML attributes
2021-03-12 11:41:44 +01:00
djmaze 8b2d183f07 Bugfix: removeColors sometimes broke HTML elements 2021-03-12 11:24:48 +01:00
djmaze 6a454ec624 Convert user stores to single object instances
Removed unused ContactUserStore.exportingCsv and ContactUserStore.exportingVcf
2021-03-10 22:41:35 +01:00
djmaze 914c6e8d14 Improve messageview flag and info buttons/icons 2021-03-10 12:15:41 +01:00
djmaze 34b25eedea Improve Settings handling 2021-03-10 11:44:48 +01:00
djmaze e7b1ce7509 Globalize message composer popup window 2021-03-10 11:43:23 +01:00
djmaze 5601e100d9 Bugfix: MouseEvent.which is not reliable 2021-03-10 09:43:31 +01:00
djmaze bc2f30434b Remove/replace rl-mobile where possible 2021-03-09 15:51:29 +01:00
djmaze bc360eccf9 Reduce more CSS 2021-03-09 14:50:09 +01:00
djmaze eb9d2d8ddc Better messagelist item line height 2021-03-09 12:12:30 +01:00
djmaze 8a875670d9 Merged some light and dark theme mode style rules 2021-03-09 11:14:15 +01:00
djmaze ab9e56f8b6 Reduce CSS footprint 2021-03-08 17:23:21 +01:00
djmaze 4570b87232 Solved some missed dark mode color issues 2021-03-08 15:46:15 +01:00
djmaze e2d6528bf5 Bugfix: message threaded mode was broken (knockout computable requires call to observable) 2021-03-08 15:21:54 +01:00
djmaze eb0d1ecccb CSS "dark mode" improvements 2021-03-06 23:13:46 +01:00
djmaze e8deb4ff16 Remove capa.Folders and always allow mailbox folders 2021-03-06 10:07:54 +01:00
djmaze 1ac96c93d6 Improved responsive view
Removed unused CSS
2021-03-05 16:46:40 +01:00
djmaze 43e107b0cb Improved dark mode colors remover
Improved data-x-src:hover font-size
2021-03-05 11:44:13 +01:00
djmaze b6d1df2f82 Improved Firefox Mobile drag&drop 2021-03-05 11:35:00 +01:00
djmaze c538ebe174 improve admin plugin help-block design 2021-03-04 16:27:36 +01:00
djmaze 8e6f4d20d0 Cleanup gecko mobile drag&drop 2021-03-03 11:16:39 +01:00
djmaze e770f28949 Added: support for real Fullscreen 2021-03-03 11:16:02 +01:00
djmaze 1a5bc09bb3 Reduce amount of folder timers and improve autoLogout 2021-03-02 17:39:02 +01:00
djmaze 0fa0b975ef Bugfix: plugin config failed 2021-03-02 09:51:52 +01:00
djmaze fb03687528 Revamp Issue #51 to make the whole "change password" thing a plugin 2021-03-01 00:52:46 +01:00
djmaze 3426921c9d Improved Fetch error handling 2021-02-25 10:12:48 +01:00
djmaze 1a82dde49b https://github.com/the-djmaze/snappymail/issues/51 2021-02-24 22:03:14 +01:00
djmaze 0696e20878 Bugfix: improved firefox mobile draggable solution 2021-02-24 10:41:24 +01:00
djmaze ae3bab4b35 Improve dark mode for message attachments 2021-02-24 01:54:27 +01:00
djmaze a1f4daff3a Remove colors from <pre> and <code> to prevent proper working of "dark mode" 2021-02-24 00:51:05 +01:00
djmaze 2982027dd2 Made SquaresDark theme really dark.
Due to that, e-mails with incorrect background/color settings are unreadable.
So a new feature in the settings is there to remove colors from messages.
Not perfect yet, but it works.
2021-02-24 00:17:53 +01:00
djmaze fac36e828b Cleanup Squire and Knockout with help of Chromium Code Coverage
Bugfix: Squire inlineNodeNames the 'I' tag was missing
Improved: Squire style editing
2021-02-23 22:50:48 +01:00
djmaze 0158a5fe1e Improve Squire toolbar
Cleanup some JS code
2021-02-22 17:28:54 +01:00
djmaze e52b9abc61 Cleanup more CSS and JS
and merge/cleanup/redesign composer attachments
2021-02-22 15:16:33 +01:00
djmaze fe45179847 Cleanup some mobile modal screen sizes
And simplify the ko command bindinghandler to use CSS :enabled
2021-02-19 23:31:50 +01:00
djmaze f673344408 Bugfix: canExecute not a function
Bugfix: _scopes.all is undefined
2021-02-19 19:39:04 +01:00
djmaze bc64fe6d0d Use custom dropdown icon on <select> 2021-02-19 14:40:13 +01:00
djmaze 158991ed55 Improve Squire UI design 2021-02-19 12:11:20 +01:00
djmaze 540b12ed26 Replace babel command decorators with proper knockout command decorators 2021-02-19 12:09:20 +01:00
djmaze b6d8fa5b3f Split admin css from app.css
Cleanup normalize and bootstrap css
Removed almost all css float
Removed CKEditor from app.css
2021-02-18 21:06:19 +01:00
djmaze 2c23955269 Improve font middle arrows
Simplify login spinner
2021-02-17 16:00:51 +01:00
djmaze db0d03db83 Bugfix: conflicting File object with native JS
Cleanup: Stores and tooltips
2021-02-17 14:40:21 +01:00
djmaze 1df2e00862 Admin panel works in mobile view 2021-02-17 09:33:41 +01:00
djmaze d7994ddab6 Revamp Mobile/Desktop switcher without completely reloading.
Remove switcher from login page, it became useless.
2021-02-16 20:12:23 +01:00
djmaze 292f3289ac Mobile view based on window width, drop terrible user agent detection
And improved responsive CSS
2021-02-16 14:40:11 +01:00
djmaze 33214c1a33 Improve desktop mode in mobile mode 2021-02-15 23:45:52 +01:00
djmaze 0d6335ed2c messagelist search without float
and remove some usePreviewPane
2021-02-15 20:05:51 +01:00
djmaze b1c7bd2c50 Improve and cleanup isMobile 2021-02-15 16:05:38 +01:00
djmaze 10f9ce39d9 Revamp mobile including CSS flexbox for messageListItem 2021-02-15 15:20:22 +01:00
djmaze 6238b97f08 Improved messages disabled img design 2021-02-12 15:30:55 +01:00
djmaze 556ce13eac Bugfix: incorrect image glyph for disabled images 2021-02-12 15:20:26 +01:00
djmaze 8c33b17882 Bugfix: mailbox search pagination failed 2021-02-12 14:57:18 +01:00
djmaze 997e0561ad Rename inbox() to mailbox() because we select any mailbox folder 2021-02-12 14:56:16 +01:00
djmaze a2727c65fe Bugfix: messages list ArrowUp/ArrowDown broken 2021-02-12 12:00:06 +01:00
djmaze c47ed18db9 Improved and cleanup CSS 2021-02-12 11:39:02 +01:00
djmaze 60e29fdd66 Improved folder glyph 2021-02-12 01:05:02 +01:00
djmaze f1a3f54547 Fix menu dropdown icon (rainloop resized the font, not the glyph) 2021-02-11 21:07:40 +01:00
djmaze 4a8c9f8e18 Improved icon font view 2021-02-11 17:46:29 +01:00
djmaze 93738eac22 Improved snappymail font unicode points 2021-02-11 12:21:04 +01:00
djmaze 0f99147496 Drop unused i18n css class 2021-02-11 10:59:07 +01:00
djmaze e55dc49e34 Cleanup some bootstrap css 2021-02-11 10:58:33 +01:00
djmaze ce4ee3ba3f Revamp saveTrigger 2021-02-11 10:08:27 +01:00
djmaze 325f3c8eea Cleanup unused login error animations 2021-02-10 17:16:46 +01:00
djmaze 111455054e Speedup message bodies cache cleanup
Remove ko.bindingHandlers.link
2021-02-10 16:50:58 +01:00
djmaze 15631427b0 Use PharData to create Zip when ZipArchive is not available 2021-02-10 15:47:22 +01:00
djmaze e3376c244e Bugfix: pagination failed because Crossroads routes with higher priority are added last 2021-02-10 13:12:27 +01:00
djmaze 354337f174 Cleanup messagelist design 2021-02-10 12:13:17 +01:00
djmaze 8c780ad353 Replace deprecated Knockout throttle with new debounce extender
Replace admin general mainAttachmentLimit with input type="number"
2021-02-10 12:12:36 +01:00
djmaze 756bf86640 v2.3.0 2021-02-08 22:56:18 +01:00
djmaze 6691a3f889 Remove &nbsp; 2021-02-08 22:43:53 +01:00
djmaze 3fa9bc6963 Speedup messagelist hasCheckedOrSelectedLines 2021-02-08 22:04:24 +01:00
djmaze 57158bd55a Less float & less html is mobile view profit 2021-02-08 21:19:58 +01:00
djmaze 004378ed8c Merge and cleanup more CSS rules 2021-02-08 17:37:21 +01:00
djmaze e3e0474be2 Bugfix and cleanup CSS even more 2021-02-08 14:03:54 +01:00
djmaze badf422178 Cleanup more CSS 2021-02-07 21:10:05 +01:00
djmaze 48424e213b Allow themes in mobile mode
Cleanup themes and drop the template.less
2021-02-06 23:37:53 +01:00
djmaze 4f1fc5f44b Cleanup more css themes 2021-02-05 20:48:36 +01:00
djmaze 43c4293330 Cleanup some css and remove a float 2021-02-05 15:56:15 +01:00
djmaze 5e9941d58f Also convert template body-background-image to var()
And cleanup more CSS
2021-02-05 15:31:42 +01:00
djmaze d9bece04b2 Revamp CSS template system using var() feature 2021-02-05 10:42:20 +01:00
djmaze 92bbaadbf3 bugfix: changed css broke spinner querySelector 2021-02-04 22:47:38 +01:00
djmaze f08dfac99d Cleanup fontastic 2021-02-04 17:52:46 +01:00
djmaze 192f76c08a Drop gulp-autoprefixer and cleanup boot process 2021-02-04 15:03:11 +01:00
djmaze b26586f2ba Cleanup Crossroads & Hasher and dropped Signals 2021-02-04 12:54:03 +01:00
djmaze 32c3f1f059 Cleanup links 2021-02-04 11:25:00 +01:00
djmaze 6a92912a3d Bugfix: Inputosaurus modifications got broken.
Replaced completely with EmailAddressesComponent
2021-02-03 23:36:36 +01:00
djmaze b0e3020aab Bugfix: inputosaurus failed due to changes 2021-02-03 12:55:49 +01:00
djmaze 5001dcc4d8 'use strict' already in libs.js 2021-02-02 14:10:48 +01:00
djmaze 90ee39b114 Improve switching of wysiwyg/plain composer 2021-02-02 12:23:32 +01:00
djmaze b015454b02 Cleanup unused CSS 2021-02-01 22:54:19 +01:00
djmaze ebe2c0536f Bugfix: compose mail select contacts for cc/bcc failed
Cleanup: Inputosaurus and Knockout
Change: Knockout domData now uses WeakMap
Replaced: Knockout domManipulation with a documentFragment
2021-02-01 14:34:24 +01:00
djmaze aa05f10629 v2.2.1 2021-01-27 12:02:37 +01:00
djmaze 3983932bc0 Bugfix and cleanup rollup based javascript even more 2021-01-27 10:59:15 +01:00
djmaze 7ccc44616d Small code cleanups and fix translations 2021-01-27 00:26:31 +01:00
djmaze b31bf3d7f5 Improved js minification 2021-01-26 11:46:30 +01:00
djmaze a1c994e6ab Merge branch 'master' into webpack2rollup 2021-01-25 22:30:23 +01:00
djmaze d23689dae8 Bugfix: invalid template id's
And cleanup strings
2021-01-25 22:29:55 +01:00
djmaze ad8fd8879b This version uses Rollup instead of WebPack.
Due to that the code is smaller and has changes to prevent Circular Dependencies
2021-01-25 22:00:13 +01:00
djmaze 5e63ade9dd Bugfix: i made a translation bug in v2.2.0
Cleaned it up
2021-01-24 23:03:06 +01:00
djmaze f3bfa0e8c1 Cleanup and split Enums 2021-01-24 22:58:06 +01:00
djmaze 864da66b5f Replace viewDecorator and popupDecorator with proper AbstractView classes 2021-01-24 10:25:23 +01:00
djmaze c8a85bf67e Bugfix for webpack cleanup 2021-01-22 17:29:01 +01:00
djmaze 23d7fecd22 Improve Sieve Scripts editor layout 2021-01-22 16:45:12 +01:00
djmaze 1535dd00f1 cleanup webpack export references 2021-01-22 16:32:08 +01:00
djmaze b6f0b634fb Cleanup calls to Knockout observableArray
Improved Knockout observableArray
2021-01-22 12:23:20 +01:00
djmaze a28b5c2b6c Cleanup and deduplicate languages 2021-01-21 17:21:19 +01:00
djmaze 67db19ec80 Added sieve activate/delete script error notifications 2021-01-21 11:00:42 +01:00
djmaze ea56397c3b Improved handling of sieve script changes 2021-01-21 10:39:19 +01:00
djmaze 14ba459d46 Always allow raw editing of Sieve scripts 2021-01-21 10:00:12 +01:00
djmaze 3ed7b53f68 Bugfix: don't push existing SieveScript on scripts stack 2021-01-20 15:34:33 +01:00
djmaze 6f36d4b906 Added sample code for sieveparser branch 2021-01-20 14:57:59 +01:00
djmaze dd9f277ccf Split collectionToFileString() from SieveStorage to Sieve
Converted SieveStorage fileStringToCollection() to JavaScript sieveScriptToFilters()
Drop the old filtersSave()
2021-01-20 14:52:20 +01:00
djmaze d9118fbf90 Bugfix: saveError undefined, should be serverError
Bugfix: dot should be comma
2021-01-20 12:04:27 +01:00
djmaze ca91a6e408 drop sieve parser from sievescripts branch 2021-01-20 11:43:03 +01:00
djmaze d4d6d73306 Bugfix: filters toggle failed because it was no observable 2021-01-20 11:00:13 +01:00
djmaze c7d6426c88 Added: rainloop.user filters to sieve script 2021-01-20 10:10:59 +01:00
djmaze 76bc8aa107 Disable removal of rainloop.user script 2021-01-19 17:42:38 +01:00
djmaze ee37ad67bb Enable add/delete of Sieve scripts 2021-01-19 16:59:43 +01:00
djmaze e3125ebfff Get a working Sieve scripts manager 2021-01-19 16:01:30 +01:00
djmaze a31834458b More improvements to view Sieve Scripts. 2021-01-18 23:52:15 +01:00
djmaze e093388016 Merge branch 'master' into sieveparser
# Conflicts:
#	snappymail/v/0.0.0/app/templates/Views/User/SettingsFilters.html
2021-01-18 17:13:43 +01:00
djmaze a80b17e011 Centralize CSS for confirm delete buttons and grab handles 2021-01-18 17:11:53 +01:00
djmaze 61c3da14b4 Draft of new Filters design 2021-01-18 16:47:10 +01:00
djmaze 73e26d388a Added: rfc5233
Activate: comparator
Bugfix: StringList must use .toString()
Bugfix: redirect command
Bugfix: MultiLine
2021-01-15 16:09:03 +01:00
djmaze 3566f4a538 Added rfc5183, rfc5229, rfc5260 and rfc5293
Make comparator and match_type available for all Test classes

Signed-off-by: djmaze <djmaze@djmaze.lan>
2021-01-15 14:35:16 +01:00
djmaze 3ce123b536 Added RFC5231 check 2021-01-15 12:12:56 +01:00
djmaze eb369ca122 Added rfc6609 2021-01-15 12:11:13 +01:00
djmaze 68fc9f21bd Centralize some argument parsing
Improved parser error handling
Fix Sieve Vacation extension
2021-01-15 11:34:16 +01:00
djmaze 55178016a0 Solve some comparators 2021-01-15 00:32:04 +01:00
djmaze 43c669e629 Added draft code for handling "require []" 2021-01-15 00:14:45 +01:00
djmaze d9865e3a46 Simplify Sieve Parser and added RFC5235 2021-01-14 23:42:46 +01:00
djmaze 22964f1fde More improvements and fixes based on test scripts 2021-01-14 17:50:23 +01:00
djmaze 0aafce4214 More Sieve parser improvements after doing 'if not' test 2021-01-14 16:38:26 +01:00
djmaze 2786d0d959 Not perfect but it can parse the rainloop script to a tree and back to string 2021-01-14 12:45:51 +01:00
djmaze b2e77f3f67 Draf of Sieve parser/lexer for a new Sieve GUI 2021-01-13 21:23:19 +01:00
djmaze e023a5d6ab Prepare Sieve Filtering feature for advanced editing/handling 2021-01-06 01:06:16 +01:00
djmaze fa7ea413dc Cleanup AbstractFetch
and added fetchJSON mockup code for error handling regarding issue #49
2021-01-05 13:58:50 +01:00
djmaze 0d13484cdc Cleanup and simplify i18n code
There's no need for I18N_NOTIFICATION_DATA and I18N_NOTIFICATION_MAP
Also bugfix: NEW_PASSWORD_FORBIDDENT => NEW_PASSWORD_FORBIDDEN
2021-01-04 12:08:41 +01:00
djmaze 950579c7f5 Rename 'ajax' to 'json' because we don't use XML
We use json as response
2020-12-30 15:50:47 +01:00
djmaze 324c7121cc Added more comment to displaySpecSetting 2020-12-10 14:22:46 +01:00
djmaze d34729a1ae Resolve https://github.com/the-djmaze/snappymail/issues/47 2020-12-10 14:19:03 +01:00
djmaze 4321c11622 Some tiny changes 2020-12-09 22:42:04 +01:00
djmaze 54f3337f01 Changes for https://github.com/the-djmaze/snappymail/issues/47
* don't divide folder.interval time, it has no purpose
* up the limit to 10 folders per request
folder.checkable() is still broken
2020-12-09 22:30:57 +01:00
djmaze 80a72d172e Added: hide login submit button to Admin Login settings screen 2020-12-02 14:30:02 +01:00
djmaze 0ba7374468 Implemented https://github.com/RainLoop/rainloop-webmail/issues/2041
Based on https://tools.ietf.org/html/rfc5173
2020-11-26 12:34:54 +01:00
djmaze 4adc672ccd Cleanup Login and removed the ancient obsolete <center> with small redesign
Also placed the loading description above the login form
2020-11-26 10:41:53 +01:00
djmaze ebd32d8fad Don't allow plugins to modify login page 2020-11-25 14:38:16 +01:00
djmaze 4f8b07fe85 Remove more RainLoop standard/premium licensed code 2020-11-25 14:31:20 +01:00
djmaze 0474f29272 Bugfix: wrote a buggy fix for safari 2020-11-23 17:05:13 +01:00
djmaze 4986de6b93 Bugfix: Safari doesn’t fire the visibilitychange event as expected when visibilityState transitions to hidden 2020-11-23 16:44:34 +01:00
djmaze b609c4b0c2 AudioContext undefined in Safari 13
Fix for https://github.com/the-djmaze/snappymail/issues/37
2020-11-10 10:25:02 +01:00
djmaze cd52d9ae6c More improvements for https://github.com/the-djmaze/snappymail/issues/37 2020-11-10 09:59:56 +01:00
djmaze b3b8c97b00 Cleanup some unused code 2020-11-10 09:29:00 +01:00
djmaze f706e14a2f More changes for https://github.com/the-djmaze/snappymail/issues/37
Notifications were hardcoded disabled for mobile.
2020-11-10 09:28:33 +01:00
djmaze 542d9c91e9 Changes for https://github.com/the-djmaze/snappymail/issues/37
Testing van be done at https://snappymail.eu/demo/
2020-11-09 20:14:04 +01:00
djmaze 0ec37b7e90 Added: show fancy placeholder for external images 2020-11-05 10:40:02 +01:00
djmaze 2c40475bfa Bugfix: failed to set message data from dom 2020-11-05 10:38:17 +01:00
djmaze cc04e42444 Bugfix: revivePropertiesFromJson always set observables 2020-11-04 23:57:37 +01:00
djmaze 948663519e Cleanup js components 2020-11-03 16:11:04 +01:00
djmaze 65e1b58877 Hide Squire toolbar in mobile mode when not focused 2020-11-03 15:54:35 +01:00
djmaze 4946feada3 Resolve https://github.com/the-djmaze/snappymail/issues/31 2020-10-30 16:46:18 +01:00
djmaze 4f21cda9cd Resolve https://github.com/the-djmaze/snappymail/issues/33 2020-10-30 16:42:01 +01:00
djmaze d0bcb5483a Changes for https://github.com/the-djmaze/snappymail/issues/30
And remove some memory cleanup due to issues with the Contacts view
2020-10-30 11:49:05 +01:00
djmaze b79d9de1a0 Bugfix: i broke the user -> settings -> folders screen 2020-10-29 10:59:26 +01:00
djmaze 20b1e08c9b v2.0.0-rc3 2020-10-28 17:12:33 +01:00
djmaze 48769f0aca Resolve issue https://github.com/the-djmaze/snappymail/issues/27 2020-10-28 14:54:55 +01:00
djmaze d1dfa227ae cleanup fontastic 2020-10-28 10:35:17 +01:00
djmaze 7db7d5545b Improved observables 2020-10-27 11:09:24 +01:00
djmaze 8d7e25fc7c Bugfix: subscribables should be created after computables 2020-10-26 14:44:34 +01:00
djmaze f25d210f3e Solve menu arrow navigation
https://github.com/the-djmaze/snappymail/issues/22
2020-10-26 14:34:59 +01:00
djmaze 250caab957 Bugfix: create computable should be after property defines 2020-10-26 13:43:56 +01:00
djmaze 3eb6ab1ef7 Improved knockout observables management to prevent memory leaks 2020-10-26 12:54:03 +01:00
djmaze b165a1de4f Added addComputables() to *Model 2020-10-25 14:14:14 +01:00
djmaze 22f606ea75 Bugfix: revamp MessageModel broke flags cache
And took the liberty to put all MessageFlagsCache functions into a class
2020-10-25 13:50:26 +01:00
djmaze d7a4639d6b Prevent memory leaks in *Model 2020-10-25 11:46:58 +01:00
djmaze 76c4f62186 Improved reviveFromJson() for *Model 2020-10-23 15:15:54 +02:00
djmaze 500575dc32 Sync is already there
https://github.com/the-djmaze/snappymail/issues/24
2020-10-21 21:53:55 +02:00
djmaze 188a40b196 Basic JSON object properties revival now handled by AbstractModel
This will be better for future use of JSON.stringify() and JSON.parse()
For now the difference between the PHP JSON being PascalCase and the JS object properties being camelCase is handled by AbstractModel
2020-10-20 17:39:00 +02:00
djmaze 53bf7c1d60 setFromJson was not called at reviveFromJson 2020-10-20 17:29:24 +02:00
djmaze 3a315bc543 Bugfix: Contacts management failed
It had a strange array type structure and buggy
2020-10-20 15:37:06 +02:00
djmaze 2470f1add6 ContactProperty and FilterCondition use reviveFromJson 2020-10-20 10:27:00 +02:00
djmaze 9844c1882c Split RainLoop/Actions.php and use JsonSerializable 2020-10-19 22:09:25 +02:00
djmaze 15e07a73e9 merge all Model JSON @Object parsers into a reviveFromJson() 2020-10-18 19:46:47 +02:00
djmaze 76648f04ae Cleaner CollectionModel code 2020-10-18 19:36:57 +02:00
djmaze ddc866735c Drop unused sModelName 2020-10-18 19:19:45 +02:00
djmaze 7d89de2fdb CollectionModels reviveFromJson 2020-10-18 11:46:22 +02:00
djmaze d747de7649 Revert my Squire node.remove() back to detach(node) and
Cleanup some code
2020-10-17 14:08:27 +02:00
djmaze b908d7b46f Resolve https://github.com/the-djmaze/snappymail/issues/26 2020-10-17 13:53:04 +02:00
djmaze d0f686c657 Rename basefolder 'rainloop' to 'snappymail'
this prevents conflicts with original rainloop
2020-10-15 16:21:52 +02:00
djmaze 4806dc968d onkeypress is obsolete 2020-10-15 14:43:04 +02:00
djmaze 0528bcf911 Cleanup language loader 2020-10-15 12:59:56 +02:00
djmaze b68d04aacd Bugfix: inboxFolderName was incorrect
You could have potentionally deleted INBOX and other issues
2020-10-15 12:23:11 +02:00
djmaze 3bfe2c67d1 Droppped momentjs in favor of Intl
Uses a fallback for Intl.RelativeTimeFormat in Date.prototype.fromNow
2020-10-15 10:45:18 +02:00
djmaze 6f585e1f1d Use Intl.DateTimeFormat instead of momentjs where we can
Need to solve the Intl.RelativeTimeFormat to drop momentjs
2020-10-15 00:26:40 +02:00
djmaze 1d6a636433 Split Common/Utils.js
Because admin app doesn't need most of them
2020-10-14 19:16:37 +02:00
djmaze e02deee4f1 Make touchstart/touchmove events passive 2020-10-13 15:16:57 +02:00
djmaze cc046907ed ko.utils.unwrapObservable => ko.unwrap 2020-10-13 14:56:45 +02:00
djmaze 0eba94f671 Drop AbstractAppStore and
put the properties/observables where they belong
2020-10-12 19:46:41 +02:00
djmaze cb9e393fbc Pagenator should be Paginator 2020-10-12 15:11:25 +02:00
djmaze 527694f361 Replace bootstrap .divider with cleaner .dividerbar which also reduces knockout calls 2020-10-12 15:03:45 +02:00