This repository has been archived on 2023-03-18. You can view files and clone it, but cannot push or open issues or pull requests.
osr-discourse-src/plugins/chat/assets/javascripts/discourse/initializers/chat-audio.js
Joffrey JAFFEUX d127d2acdf
FIX: allows to change sound when no sound was ever set (#19136)
It fixes a bug which was only allowing users with a sound to change it. Users with `none` could not change it again after a full page reset.
2022-11-22 08:57:06 +01:00

33 lines
777 B
JavaScript

import { withPluginApi } from "discourse/lib/plugin-api";
const MENTION = 29;
const MESSAGE = 30;
const CHAT_NOTIFICATION_TYPES = [MENTION, MESSAGE];
export default {
name: "chat-audio",
initialize(container) {
const chatService = container.lookup("service:chat");
if (!chatService.userCanChat) {
return;
}
const chatAudioManager = container.lookup("service:chat-audio-manager");
chatAudioManager.setup();
withPluginApi("0.12.1", (api) => {
api.registerDesktopNotificationHandler((data, siteSettings, user) => {
if (!user.chat_sound) {
return;
}
if (CHAT_NOTIFICATION_TYPES.includes(data.notification_type)) {
chatAudioManager.play(user.chat_sound);
}
});
});
},
};