mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-11-06 05:55:48 +01:00
added sounds for incoming and outgoing chat, and new notification
This commit is contained in:
BIN
public/sound/chat-incoming.wav
Normal file
BIN
public/sound/chat-incoming.wav
Normal file
Binary file not shown.
Binary file not shown.
@@ -1,4 +1,4 @@
|
||||
define(['taskbar', 'string'], function(taskbar, S) {
|
||||
define(['taskbar', 'string', 'sound'], function(taskbar, S, sound) {
|
||||
|
||||
var module = {};
|
||||
|
||||
@@ -69,6 +69,8 @@ define(['taskbar', 'string'], function(taskbar, S) {
|
||||
app.alternatingTitle(data.username + ' has messaged you');
|
||||
});
|
||||
}
|
||||
|
||||
sound.play('chat-incoming');
|
||||
});
|
||||
}
|
||||
|
||||
@@ -220,6 +222,7 @@ define(['taskbar', 'string'], function(taskbar, S) {
|
||||
msg = msg +'\n';
|
||||
socket.emit('modules.chats.send', { touid:chatModal.touid, message:msg});
|
||||
chatModal.find('#chat-message-input').val('');
|
||||
sound.play('chat-outgoing');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
define(function() {
|
||||
define(['sound'], function(sound) {
|
||||
var Notifications = {};
|
||||
|
||||
Notifications.prepareDOM = function() {
|
||||
@@ -108,6 +108,8 @@ define(function() {
|
||||
|
||||
var savedCount = parseInt(localStorage.getItem('notifications:count'), 10) || 0;
|
||||
updateNotifCount(savedCount + 1);
|
||||
|
||||
sound.play('notification');
|
||||
});
|
||||
socket.on('event:notifications.updateCount', function(count) {
|
||||
updateNotifCount(count);
|
||||
|
||||
43
public/src/modules/sound.js
Normal file
43
public/src/modules/sound.js
Normal file
@@ -0,0 +1,43 @@
|
||||
"use strict";
|
||||
|
||||
define(['buzz'], function(buzz) {
|
||||
var Sound = {};
|
||||
|
||||
Sound.initialised = false;
|
||||
Sound.loaded = {};
|
||||
|
||||
Sound.init = function(callback) {
|
||||
var sounds = {
|
||||
notification: RELATIVE_PATH + '/sound/notification.wav',
|
||||
'chat-outgoing': RELATIVE_PATH + '/sound/chat-outgoing.wav',
|
||||
'chat-incoming': RELATIVE_PATH + '/sound/chat-incoming.wav'
|
||||
};
|
||||
|
||||
for(var name in sounds) {
|
||||
if (sounds.hasOwnProperty(name)) {
|
||||
var path = sounds[name];
|
||||
|
||||
Sound.loaded[name] = new buzz.sound(path);
|
||||
}
|
||||
}
|
||||
|
||||
this.initialised = true;
|
||||
|
||||
callback();
|
||||
};
|
||||
|
||||
Sound.play = function(name) {
|
||||
var ready = function() {
|
||||
if (Sound.loaded[name]) {
|
||||
Sound.loaded[name].play();
|
||||
} else {
|
||||
console.log('[sound] Not found:', name);
|
||||
}
|
||||
};
|
||||
|
||||
if (!this.initialised) this.init(ready);
|
||||
else ready();
|
||||
};
|
||||
|
||||
return Sound;
|
||||
});
|
||||
Reference in New Issue
Block a user