feat(chat): add chat room management functionality

- 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.
This commit is contained in:
Torsten Schulz (local)
2025-08-11 23:31:25 +02:00
parent 6062570fe8
commit 23f698d8fd
26 changed files with 1564 additions and 866 deletions

View File

@@ -0,0 +1,43 @@
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;