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
b68d04aacd
Bugfix: inboxFolderName was incorrect
...
You could have potentionally deleted INBOX and other issues
2020-10-15 12:23:11 +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
ba7ed497b2
Cleanup JS and better terser compression
2020-10-09 11:58:15 +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
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
4257d9ca78
Resolve https://github.com/the-djmaze/snappymail/issues/10
2020-09-24 15:08:57 +02:00
djmaze
d2c9e860cb
Bugfix: mail?to= should be encodeURIComponent()
2020-09-22 14:17:48 +02:00
djmaze
b66e68a3b1
Merge some parts of initByJson and initUpdateByMessageJson
...
Cleanup messageListChecked handling
2020-09-20 11:29:31 +02:00
djmaze
46198861bc
cidWithOutTags => cidWithoutTags and don't check foundedCIDs because isLinked is already set
2020-09-20 11:15:00 +02:00
djmaze
9fc5a3ff6a
Cleanup some code
2020-09-19 13:53:14 +02:00
djmaze
9241726ffe
Bugfix: Message attachments should be observable or else KnockoutJS is not updating
2020-09-17 22:14:51 +02:00
djmaze
71f6fb25e5
Let all the new CollectionModels use AbstractCollectionModel
2020-09-16 16:33:53 +02:00
djmaze
086a2c1927
Fetch response 'Collection/MessageCollection' to new MessageCollectionModel
2020-09-16 15:44:36 +02:00
djmaze
8f07cf4ac6
foldersReload promises populator to the new FolderCollectionModel
2020-09-16 09:32:36 +02:00
djmaze
385cd9588c
Bugfix: i've wrecked rendering of inline images
2020-09-15 20:40:55 +02:00
djmaze
e99a69a9aa
Attachments array to new AttachmentCollectionModel
2020-09-15 15:08:08 +02:00
djmaze
344edaec2a
cleanup Fetch API code
2020-09-15 11:51:07 +02:00
djmaze
95f55deaad
Attachments filetype was missing opendocument detection
2020-09-15 10:09:39 +02:00
djmaze
062f8d078e
Message from, to, cc, bcc, replyTo and deliveredTo to the new EmailCollectionModel
2020-09-15 09:43:53 +02:00
djmaze
f2d194947d
Merge Objects prototype extensions
2020-09-04 17:07:35 +02:00
djmaze
bdb36ec128
Use less jQuery, more native
2020-08-27 15:45:47 +02:00
djmaze
b185402ae7
Bugfix: Contacts.js trim() missing
...
Bugfix: ClearCookie failed
2020-08-22 01:05:43 +02:00
djmaze
7a21694396
Drop windowResize/windowResizeCallback in favor of ResizeObservable
2020-08-19 12:34:05 +02:00
djmaze
f6a55898c7
Removed isNormal() because 'null == undefined' so 'null != value' is sufficient
2020-08-17 21:57:56 +02:00
djmaze
9f1ea1a0fd
Bugfix boostrap alerts.less was accidentally removed
...
Bugfix Date.fromNow('past'/'future') reversed
Replace Events[pub/sub]('interval.*') with setInterval()
Events[pub/sub] to native
Cleanup knockout extensions
Replaced momentToNode with proper HTML5 <time>
Cleanup Momentor
2020-08-14 20:35:39 +02:00
djmaze
a8ef5ec75b
Bugfix: Email addressparser
...
Cleanup vendor scripts
2020-08-12 11:49:40 +02:00
djmaze
aaf4933b0a
Embed cleaner node modules
2020-08-12 01:47:24 +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
b1678a1566
Replaced moment.js with simple extended Date.prototype
2020-08-07 14:44:33 +02:00
djmaze
bbd9f49dcd
$.proxy is deprecated
...
$.trim is deprecated
2020-08-06 18:24:46 +02:00
djmaze
b3dd0c51b5
Removed lozad. Lazy loading of images. A browser can itself these days.
2020-08-06 15:07:43 +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
82bed1ed80
Cleanup array.length checks and for() to forEach()
2020-07-28 12:35:41 +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
961fa305c9
-1…*.indexOf() to native .includes()
2020-07-20 21:39:00 +02:00
djmaze
db2d95d684
JavaScript inArray()/indexOf() to .includes()
2020-07-20 14:33:33 +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
10a00f8391
Bugfix: remove JavaScript isFramed() as it requires the removed GoogleSocial
2020-03-19 15:22:07 +01:00