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
djmaze
c2a5d0fda5
ko hidden: use html5 hidden attribute
...
ko visible: rollback to use style.display
2020-10-11 11:59:36 +02:00
djmaze
267426b07d
Resolve https://github.com/the-djmaze/snappymail/issues/23
2020-10-09 17:12:56 +02:00
djmaze
4177467f81
Bugfix: '`' backtick shortcut being dead key
...
* remove 'Insert' key from class Selector and bugfix Selector ' ' space.
* replace 'M' (move) shortcut with 'Insert' (like: insert into)
* '`' backtick being dead key shortcut with 'M' and 'ContextMenu' keys.
2020-10-09 15:00:26 +02:00
djmaze
ba7ed497b2
Cleanup JS and better terser compression
2020-10-09 11:58:15 +02:00
djmaze
058217de02
Resolve https://github.com/the-djmaze/snappymail/issues/21
2020-10-09 11:04:35 +02:00
djmaze
ee23a5553e
Resolve https://github.com/the-djmaze/snappymail/issues/22
2020-10-09 10:31:44 +02:00
djmaze
a0f8ac0dad
Cleanup Date.fromNow() and friendlySize()
2020-10-03 14:02:33 +02:00
djmaze
2bd9528098
Clean message preview/print
2020-10-03 13:04:23 +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
9992b20163
Merge file and mime code into simple Common/File.js
2020-10-02 14:44:29 +02:00
djmaze
cb2048f163
cleanup some code
2020-10-02 12:40:33 +02:00
djmaze
e566494a87
Bugfix: move messages button [Ctrl] copy method
2020-10-01 11:11:14 +02:00
djmaze
6c75dd12f8
Cleanup CSS and JS code
2020-10-01 11:10:40 +02:00
djmaze
0eea2cb5ad
Modifications for https://github.com/the-djmaze/snappymail/issues/12
2020-09-30 17:11:06 +02:00
djmaze
cfdbe3251e
Removed the DATA_IMAGE_USER_DOT_PIC
...
Because viewUserPic is always false due to the removed Gravatar feature
2020-09-30 16:10:01 +02:00
djmaze
0a95e2c6dc
Cleanup constants
2020-09-30 14:07:03 +02:00
djmaze
efcefbaf78
Cleanup CSS and drop bMobileDevice detection.
...
Touch devices can be any size and can use (bluetooth/usb-c mouse/keyboard) these days.
It's all about pixels and currently if the mode is mobile/no-mobile (this can be improved later).
2020-09-30 12:31:34 +02:00
djmaze
17575f19f0
Activated a working HTML5 Drag & Drop polyfill for the Firefox Mobile browser
2020-09-28 20:04:09 +02:00
djmaze
d735893cd6
Added HTML5 Drag & Drop for Gecko/Firefox Mobile
...
Chrome does support dragstart and was fixed previously.
This is not active yet as i'm testing for touch issues.
2020-09-28 17:23:22 +02:00
djmaze
9b94265844
Resolve https://github.com/the-djmaze/snappymail/issues/17
2020-09-28 11:26:20 +02:00
djmaze
2d429297ad
Resolve https://github.com/the-djmaze/snappymail/issues/18
2020-09-28 10:29:58 +02:00