feat(events): add message update, role, and voice state update handlers

- Implemented `handle_message_update` to log message edits.
- Created role event handlers for role creation, update, and deletion.
- Added voice state update handling to log channel changes.
- Introduced a new `ready_event` handler to restore bot presence and enforce blacklist.
- Updated `mod.rs` to include new event modules.
- Enhanced `main.rs` for database connection and initialization.
- Added comprehensive permission management in `permissions.rs`.
This commit is contained in:
Puechberty Arthur
2026-04-10 02:13:04 +02:00
commit 3e69185296
169 changed files with 23909 additions and 0 deletions
+29
View File
@@ -0,0 +1,29 @@
use crate::commands::logs_service;
use serenity::model::prelude::*;
use serenity::prelude::*;
pub async fn handle_join(ctx: &Context, msg: &Message, args: &[&str]) {
logs_service::handle_join_leave_settings(ctx, msg, args, "join").await;
}
pub struct JoinCommand;
pub static COMMAND_DESCRIPTOR: JoinCommand = JoinCommand;
impl crate::commands::command_contract::CommandSpec for JoinCommand {
fn metadata(&self) -> crate::commands::command_contract::CommandMetadata {
crate::commands::command_contract::CommandMetadata {
key: "join",
command: "join",
category: "admin",
params: "settings [on/off] [salon] [message]",
summary: "Parametre les actions de join",
description: "Permet de configurer les actions quand un membre rejoint.",
examples: &[
"+join settings",
"+join settings on #welcome Bienvenue {user}",
],
alias_source_key: "join",
default_aliases: &["jset"],
}
}
}