Initial commit
This commit is contained in:
35
src/controller/cfg/common/generic_setting.rs
Normal file
35
src/controller/cfg/common/generic_setting.rs
Normal file
@@ -0,0 +1,35 @@
|
||||
use mxlink::MessageResponseType;
|
||||
|
||||
use crate::{entity::MessageContext, strings, Bot};
|
||||
|
||||
pub async fn handle_get<T>(
|
||||
bot: &Bot,
|
||||
message_context: &MessageContext,
|
||||
value: &Option<T>,
|
||||
) -> anyhow::Result<()>
|
||||
where
|
||||
T: std::fmt::Display,
|
||||
{
|
||||
match value {
|
||||
Some(value) => {
|
||||
bot.messaging()
|
||||
.send_text_markdown_no_fail(
|
||||
message_context.room(),
|
||||
strings::cfg::value_currently_set_to(value),
|
||||
MessageResponseType::Reply(message_context.thread_info().root_event_id.clone()),
|
||||
)
|
||||
.await;
|
||||
}
|
||||
None => {
|
||||
bot.messaging()
|
||||
.send_text_markdown_no_fail(
|
||||
message_context.room(),
|
||||
strings::cfg::value_currently_unset(),
|
||||
MessageResponseType::Reply(message_context.thread_info().root_event_id.clone()),
|
||||
)
|
||||
.await;
|
||||
}
|
||||
}
|
||||
|
||||
Ok(())
|
||||
}
|
||||
Reference in New Issue
Block a user