Commit graph

270 commits

Author SHA1 Message Date
djmaze
8be4c384bb Improved AbstractScreen properties
Improved settings screens
Views:
* sDefaultScope & sCurrentScope to sub-class keyScope
* drop viewModelVisible
* rename viewModelTemplateID to templateID
* rename viewModelPosition to viewType
2021-09-22 20:17:44 +02:00
djmaze
134deb8d73 Drop unused user mail templates system 2021-09-17 10:32:58 +02:00
djmaze
e93dc9201d Bugfix: Setting change "background color" checkbox error "MessageUserStore.messagesBodiesDom() is null" 2021-09-14 16:14:05 +02:00
djmaze
9e28eb5fc7 Improved Jua uploader 2021-09-14 12:50:56 +02:00
djmaze
985a4f5077 More CSS, HTML & JS cleanups 2021-09-10 09:30:06 +02:00
djmaze
371b23a2f3 Cleanup more HTML and CSS 2021-09-09 17:00:31 +02:00
djmaze
01d96153c6 Cleanup checkbox component 2021-09-07 23:09:56 +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
023c8f603b some ko.computed() to addComputables()/addComputablesTo() 2021-09-03 16:37:20 +02:00
djmaze
7c75e11666 Resolve issue #138 2021-09-02 14:21:50 +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
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
ba477e25ff Resolve issue #112 2021-08-19 15:14:47 +02:00
djmaze
d536b5eeee Change ()=>{} into ()=>0 2021-08-13 09:58:43 +02:00
djmaze
8b116fa8ba Cleanup some code 2021-08-12 20:17:37 +02:00
djmaze
5590fd4860 isNonEmptyArray => arrayLength 2021-07-21 21:34:17 +02:00
djmaze
7ab832e854 Custom new mail notification sounds 2021-07-21 11:19:52 +02:00
djmaze
18cedbabad Simplify UserBackground code 2021-07-20 16:49:03 +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
5eb7c7515a Added feature request #69 2021-03-29 12:08:52 +02: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
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
11fd6736bb Set response ErrorCode as iError for easier fetch error handling 2021-03-18 12:33:13 +01:00
djmaze
0b64083543 Array.isArray to isArray
Array.isNotEmpty to isNonEmptyArray
2021-03-16 16:49:14 +01:00
djmaze
eff92c3152 Cleanup AppUserStore
Simplify KeyState/Focused as Scope enum
2021-03-16 16:06:16 +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
4a8d516123 Changed: StorageResultType to error result code 2021-03-16 09:46:23 +01:00
djmaze
227db0e0c3 Simplify MessageUserStore 2021-03-12 16:54:37 +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
34b25eedea Improve Settings handling 2021-03-10 11:44:48 +01:00
djmaze
1a5bc09bb3 Reduce amount of folder timers and improve autoLogout 2021-03-02 17:39:02 +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
1a82dde49b https://github.com/the-djmaze/snappymail/issues/51 2021-02-24 22:03:14 +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
db0d03db83 Bugfix: conflicting File object with native JS
Cleanup: Stores and tooltips
2021-02-17 14:40:21 +01:00
djmaze
0d6335ed2c messagelist search without float
and remove some usePreviewPane
2021-02-15 20:05:51 +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
e3e0474be2 Bugfix and cleanup CSS even more 2021-02-08 14:03:54 +01:00
djmaze
32c3f1f059 Cleanup links 2021-02-04 11:25:00 +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
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
f3bfa0e8c1 Cleanup and split Enums 2021-01-24 22:58:06 +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
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
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
61c3da14b4 Draft of new Filters design 2021-01-18 16:47:10 +01:00
djmaze
e023a5d6ab Prepare Sieve Filtering feature for advanced editing/handling 2021-01-06 01:06:16 +01:00
djmaze
cd52d9ae6c More improvements for https://github.com/the-djmaze/snappymail/issues/37 2020-11-10 09:59:56 +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
4f21cda9cd Resolve https://github.com/the-djmaze/snappymail/issues/33 2020-10-30 16:42:01 +01:00
djmaze
b79d9de1a0 Bugfix: i broke the user -> settings -> folders screen 2020-10-29 10:59:26 +01:00
djmaze
7db7d5545b Improved observables 2020-10-27 11:09:24 +01:00
djmaze
3eb6ab1ef7 Improved knockout observables management to prevent memory leaks 2020-10-26 12:54:03 +01:00
djmaze
15e07a73e9 merge all Model JSON @Object parsers into a reviveFromJson() 2020-10-18 19:46:47 +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
0eba94f671 Drop AbstractAppStore and
put the properties/observables where they belong
2020-10-12 19:46:41 +02:00
djmaze
c3a2da65df Revamp array filtering
Replaced fakeMd5 with new Jua.randomId
Cleanup more code
2020-10-02 23:54:15 +02:00
djmaze
4257d9ca78 Resolve https://github.com/the-djmaze/snappymail/issues/10 2020-09-24 15:08:57 +02:00
djmaze
4e449b9c66 replace knockout-sortable with html5 native 2020-09-20 23:15:06 +02:00
djmaze
467f615713 Move Knoin routOff, routOn, routReload & setHash to rl.route.* 2020-09-16 20:35:29 +02:00
djmaze
b904eca98e Cleanup __APP__/getApp code 2020-09-15 09:29:25 +02:00
djmaze
29cf711a6a Converted *Ajax into *Fetch (because we use the Fetch API, not jQuery.ajax) 2020-09-14 19:40:56 +02:00
djmaze
aeb5275648 Improved boot.js with existing global window.rl
Put dev/Storage/Settings.js in boots.js global rl.settings
2020-09-04 12:05:17 +02:00
djmaze
1802dda136 Removed jQuery dependencies from Jua.js 2020-09-01 16:57:14 +02:00
djmaze
69fcc240e9 More jQuery to native (including bootstrap.js) 2020-08-30 10:30:50 +02:00
djmaze
7a21694396 Drop windowResize/windowResizeCallback in favor of ResizeObservable 2020-08-19 12:34:05 +02:00
djmaze
97a73c6639 Replace timeOutAction() with debounce
Replace delegateRun()
Revert my throttle/debounce setTimeout() to Function.prototype[throttle/debounce]
2020-08-18 20:24:17 +02:00
djmaze
6541a1de7c Remove Common/Enums Magics.* 2020-08-13 22:58:41 +02:00
djmaze
e7180a86ce Made eslint using 'browser' environment and added globals, because RainLoop is used in browsers.
This also allowed to remove all webpack 'externals' overhead.
2020-08-12 00:25:36 +02:00
djmaze
bbd9f49dcd $.proxy is deprecated
$.trim is deprecated
2020-08-06 18:24:46 +02:00
djmaze
ea48f5060b isArray to native Array.isArray
isUnd(*) to native undefined === *
isFunc to native typeof * === 'function'
isObject to native typeof * === 'object'
microtime() to native Date().getTime();
noop to native ()=>{}
noopFalse to native ()=>false
noopTrue to native ()=>true
boolToAjax to native *?'1':'0'
Underscore.js to native
2020-07-29 21:49:41 +02:00
djmaze
2ba34532c2 JavaScript string compare '' is always a ToBoolean
See https://www.ecma-international.org/ecma-262/5.1/#sec-9.2
2020-07-28 17:20:14 +02:00
djmaze
dca0ff02ed Use jQuery.slim
Underscore.js _.uniq(_.compact( to native Array.filter((value, index, self) => !!value && self.indexOf(value) == index)
Underscore.js _.compact to native Array.filter(value => !!value)
Underscore.js _.uniq to native Array.filter((value, index, self) => self.indexOf(value) == index)
Underscore.js _.values to native Object.values
Underscore.js _.flatten to native Array.flat
Underscore.js _.union to native Array.concat + unique filter
Underscore.js _.reduce to native Array.reduce
Underscore.js _.escape replaced with advanced htmlspecialchars()
Underscore.js _.memoize replaced
Now Underscore.js is a slim custom version (only _.debounce, _.defer & _.throttle)
2020-07-23 16:06:16 +02:00
djmaze
43c92a82e6 Underscore.js _.delay() to native setTimeout() 2020-07-22 20:28:25 +02:00
djmaze
a82575a830 Underscore.js _.map() to native Array.map() (optional with Object.entries/values) 2020-07-22 20:09:31 +02:00
djmaze
a5d41edb24 Underscore.js _.each() to native Array.forEach() (optional with Object.entries/values) 2020-07-22 14:49:18 +02:00
djmaze
9c0072d626 Underscore.js _.find() to native Array.find() 2020-07-22 10:43:19 +02:00
djmaze
90cec2171a Strip .no-css, .csstransitions and .cssanimations 2020-07-22 08:17:02 +02:00
djmaze
0b0747b8dc Upgraded some old JavaScript to ECMAScript 1.6
Removed some jQuery references
Added JavaScript Globals.$htmlCL for frequently used window.document.documentElement.classList
2020-07-15 14:25:51 +02:00
djmaze
412d69ce75 Removed jquery-backstretch that handled the UserBackground
The UserBackground is now handled with CSS3 on body.thm-body
This allowed me to remove the #rl-bg so that the "video-on-login-screen" plugin will not work indefinitely.
2020-07-13 15:47:19 +02:00
djmaze
aae7883b99 Bugfix: bootstrap jQuery('#') syntax error
Changed: use ES2015
Changed: gulp uglify to terser
Removed: ChangePassword
Removed: nanoscroll
Removed: JS polyfills
2020-03-13 15:30:39 +01:00
djmaze
4468d5bd22 Removed: twitter, google, dropbox, facebook, owncloud, modernizr from JavaScript 2020-03-11 12:55:03 +01:00
RainLoop Team
32ceafa37f Add Gmail XAUTH support 2019-12-31 20:44:41 +03:00
RainLoop Team
8a0be3212d prettier --write 2019-07-04 22:19:24 +03:00
RainLoop Team
45fe0217f2 Add "Automatically save draft" option 2017-06-28 19:25:53 +03:00
RainLoop Team
e6e0b02849 Code refactoring
Flow first look
2016-09-10 02:27:53 +03:00
RainLoop Team
962391e2a0 Add cmd interface
Code refactoring
2016-08-24 01:17:50 +03:00
RainLoop Team
17669b7be0 es5 -> es2015 (last stage)
Signature plugin fixes
Add view decorator
A large number of fixes
2016-08-20 20:30:16 +03:00
RainLoop Team
e88c193334 *.jsx -> *.js 2016-08-11 02:34:09 +03:00
RainLoop Team
cec53b111f Code refactoring (5) (es5 -> es2015) 2016-07-17 18:05:15 +03:00
RainLoop Team
d7ab67a460 Code refactoring (4) (es5 -> es2015) 2016-07-15 22:54:37 +03:00
RainLoop Team
38a1041a73 Code refactoring (es5 -> es2015) 2016-07-07 00:03:30 +03:00
RainLoop Team
fb2e492ce8 More scrict rules 2016-07-05 22:52:52 +03:00
RainLoop Team
8e8a041032 eslint (additional rules) 2016-07-01 01:05:04 +03:00
RainLoop Team
77a1d3f3df jshint -> eslint 2016-06-27 23:55:37 +03:00
RainLoop Team
c71ecbc12d Fix Javascript error on create/delete folder (#1079) 2016-06-20 20:22:51 +03:00
RainLoop Team
80ab02363e Code refactoring (v2) 2016-06-17 02:32:16 +03:00
RainLoop Team
d2c16381e2 Add more options for session timeout (#807) 2016-05-22 03:15:51 +03:00
RainLoop Team
1391648e1b Split application data 2016-04-30 02:42:18 +03:00
RainLoop Team
568a1a1cda Fixed: Folder expand/collapse not remembered (#934) 2016-01-22 19:51:22 +03:00
RainLoop Team
cfad4bb005 Added: Password change plugin API improvements (#910) 2015-12-15 07:02:46 +03:00
RainLoop Team
53cf543795 babeljs: step 2 2015-11-18 23:10:01 +03:00
RainLoop Team
445cd155e5 ES2015 first look / babeljs 2015-11-15 03:24:02 +03:00
RainLoop Team
fc827326c4 Changed: photoswipe > lightGallery 2015-08-31 23:13:59 +03:00
RainLoop Team
9b6b68e72b Added: New keyboard shortcuts for compose popup (Esc, Sift+Esc, `)
Fixed: Folders list tree viewer
2015-08-30 22:31:04 +03:00
RainLoop Team
42bac6aa2f PreRelease fixes 2015-07-06 00:33:55 +04:00
RainLoop Team
4457cdbc23 Improvements of message displaying (internal styles) 2015-06-23 01:34:50 +04:00
RainLoop Team
0035505659 Small fixes 2015-05-18 16:28:14 +04:00
RainLoop Team
2f482a6288 Added Allow/Disallow multiple identities 2015-05-18 00:41:59 +04:00
RainLoop Team
9a98bff931 Release fixes 2015-05-18 00:41:57 +04:00
RainLoop Team
66c3307291 Small fixes 2015-05-06 02:03:58 +04:00
RainLoop Team
2ac2168477 Small fixes 2015-04-30 00:09:03 +04:00
RainLoop Team
19f06c11d2 Added new language strings 2015-04-26 02:01:56 +04:00
RainLoop Team
acb013fbb5 Added "Enforce 2-Step verification" setting 2015-04-07 20:40:28 +04:00
RainLoop Team
80c5e35a29 New styles for toltips (Opentip)
Selector new functionality
x-script tag support for templates
2015-04-02 01:59:03 +04:00
RainLoop Team
3dac6809d1 Admin Panel localization (#467) 2015-03-28 02:09:36 +04:00
RainLoop Team
bab64a7cea Code refactoring (promises for folders management) 2015-03-17 18:30:17 +04:00
RainLoop Team
4eaef23cc7 Code refactoring 2015-02-22 20:35:17 +04:00
RainLoop Team
31860420cb Code refactoring 2015-02-22 02:00:51 +04:00
RainLoop Team
276e8c48e8 Small fixes 2015-02-20 02:13:27 +04:00
RainLoop Team
bb551e4ec8 Added auto logout option 2015-02-19 01:19:24 +04:00
RainLoop Team
e3064b10aa Fixed strange characters in plain text mode (Firefox) (Closes #462) 2015-02-17 17:32:11 +04:00
RainLoop Team
7807138b7b Fixed missing identity section (Closes #456) 2015-02-16 17:47:02 +04:00
RainLoop Team
4c6fd9cdd1 Signature builder small changes 2015-02-16 05:21:18 +04:00
RainLoop Team
1a85330770 Small fixes and code refactoring 2015-02-16 01:58:24 +04:00
RainLoop Team
6116597f6f Many fixes
New ownCloud package with a built-in webmail
2015-02-12 01:41:07 +04:00
RainLoop Team
1119022916 Added individual signatures for every identity. 2015-02-08 05:12:34 +04:00
RainLoop Team
493191375f Identities refactoring and improvements (Reply-To and BCC) 2015-02-06 19:29:34 +04:00
RainLoop Team
47cc73c992 User background image optimization 2015-02-06 19:29:08 +04:00
RainLoop Team
44566aad4b Release fixes 2015-02-04 22:39:56 +04:00
RainLoop Team
2937f341ee Small fixes 2015-02-03 21:18:08 +04:00
RainLoop Team
286ab567af Code refactoring 2015-02-03 05:56:26 +04:00
RainLoop Team
79233ad83c Added counters of unread messages for additional accounts (#377) 2015-02-02 00:48:49 +04:00
RainLoop Team
abddb3d828 Pre release fixes and improvements 2015-02-01 19:44:44 +04:00
RainLoop Team
0735071f1c mailto links fixes
Filters interface fixes
DKIM status a new message
2015-01-31 23:00:10 +04:00
RainLoop Team
0152f1583b Sieve filters (pre release) 2015-01-29 01:24:58 +04:00
RainLoop Team
b563528be7 Sortable accounts list 2015-01-28 02:16:00 +04:00
RainLoop Team
aa84077ac4 Sound notification
Additional code refactoring
2015-01-27 01:06:00 +04:00