diff options
Diffstat (limited to 'uncompressed/messenger/webview.js')
-rw-r--r-- | uncompressed/messenger/webview.js | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/uncompressed/messenger/webview.js b/uncompressed/messenger/webview.js new file mode 100644 index 0000000..ba7ae31 --- /dev/null +++ b/uncompressed/messenger/webview.js | |||
@@ -0,0 +1,34 @@ | |||
1 | "use strict"; | ||
2 | |||
3 | module.exports = Franz => { | ||
4 | const getMessages = function getMessages() { | ||
5 | let count = document.querySelectorAll('._5fx8:not(._569x),._1ht3:not(._569x)').length; | ||
6 | const messageRequestsElement = document.querySelector('._5nxf'); | ||
7 | |||
8 | if (messageRequestsElement) { | ||
9 | count += parseInt(messageRequestsElement.innerHTML, 10); | ||
10 | } | ||
11 | |||
12 | Franz.setBadge(count); | ||
13 | }; | ||
14 | |||
15 | Franz.loop(getMessages); | ||
16 | localStorage.setItem('_cs_desktopNotifsEnabled', JSON.stringify({ | ||
17 | __t: new Date().getTime(), | ||
18 | __v: true | ||
19 | })); | ||
20 | |||
21 | if (typeof Franz.onNotify === 'function') { | ||
22 | Franz.onNotify(notification => { | ||
23 | if (typeof notification.title !== 'string') { | ||
24 | notification.title = ((notification.title.props || {}).content || [])[0] || 'Messenger'; | ||
25 | } | ||
26 | |||
27 | if (typeof notification.options.body !== 'string') { | ||
28 | notification.options.body = (((notification.options.body || {}).props || {}).content || [])[0] || ''; | ||
29 | } | ||
30 | |||
31 | return notification; | ||
32 | }); | ||
33 | } | ||
34 | }; \ No newline at end of file | ||