- Created new chat schema in the database. - Implemented chat room model with necessary fields (title, ownerId, roomTypeId, etc.). - Added room type model and rights model for chat functionality. - Developed API endpoints for managing chat rooms, including create, edit, and delete operations. - Integrated chat room management into the admin interface with a dedicated view and dialog for room creation/editing. - Added internationalization support for chat room management UI. - Implemented autocomplete for victim selection in underground activities. - Enhanced the underground view with new activity types and political target selection.
43 lines
842 B
JavaScript
43 lines
842 B
JavaScript
import ChatRight from "../models/chat/rights.js";
|
|
import RoomType from "../models/chat/room_type.js";
|
|
|
|
const initializeChat = async () => {
|
|
initializeChatRights();
|
|
initializeRoomTypes();
|
|
}
|
|
|
|
const RoomTypes = [
|
|
'chat',
|
|
'dice',
|
|
'poker',
|
|
'hangman'
|
|
];
|
|
|
|
const ChatRights = [
|
|
'talk',
|
|
'scream',
|
|
'whisper',
|
|
'start game',
|
|
'open room',
|
|
'systemmessage'
|
|
];
|
|
|
|
const initializeChatRights = async () => {
|
|
for (const right of ChatRights) {
|
|
await ChatRight.findOrCreate({
|
|
where: { tr: right },
|
|
defaults: { tr: right }
|
|
});
|
|
}
|
|
}
|
|
|
|
const initializeRoomTypes = async () => {
|
|
for (const type of RoomTypes) {
|
|
await RoomType.findOrCreate({
|
|
where: { tr: type },
|
|
defaults: { tr: type }
|
|
});
|
|
}
|
|
}
|
|
|
|
export default initializeChat; |