diff options
author | Ninja99 <36740602+Ninja73737@users.noreply.github.com> | 2020-09-19 13:12:16 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-09-19 18:12:16 +0100 |
commit | 8d133a165960880bd076c1c4567313f665435d63 (patch) | |
tree | 8e62bae15d1c2d61d9b8d4cdb48c03177e57a40b /uncompressed/campuswire/webview.js | |
parent | Fix UA string for WhatsApp (#275) (diff) | |
download | ferdium-recipes-8d133a165960880bd076c1c4567313f665435d63.tar.gz ferdium-recipes-8d133a165960880bd076c1c4567313f665435d63.tar.zst ferdium-recipes-8d133a165960880bd076c1c4567313f665435d63.zip |
Add Campuswire recipe (#268)
Diffstat (limited to 'uncompressed/campuswire/webview.js')
-rw-r--r-- | uncompressed/campuswire/webview.js | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/uncompressed/campuswire/webview.js b/uncompressed/campuswire/webview.js new file mode 100644 index 0000000..f52fa46 --- /dev/null +++ b/uncompressed/campuswire/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] || 'Campuswire'; | ||
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 | }; | ||