re-categorized commands & removed reload_config because its too much work
This commit is contained in:
@@ -32,13 +32,12 @@ add_post = ["weekly_art", "weekly"]
|
||||
|
||||
[commands]
|
||||
# Disabled selected command categories. All commands and their categories can be viewed in the README.
|
||||
# "admin" and "owner" categories are always enabled.
|
||||
# [REQUIRES RESTART]
|
||||
disabled_categories = [
|
||||
# "fun",
|
||||
# "help"
|
||||
# "re"
|
||||
# "debug"
|
||||
# "db"
|
||||
]
|
||||
|
||||
# The chance (between 0..1) for the `/8_ball` command to output a "quirky" answer.
|
||||
|
||||
@@ -5,7 +5,7 @@ use crate::{data::dc_add_server, lang, messages::send_msg, Context, Error};
|
||||
slash_command,
|
||||
prefix_command,
|
||||
rename = "add_server",
|
||||
category = "admin",
|
||||
category = "db",
|
||||
default_member_permissions = "ADMINISTRATOR",
|
||||
guild_only,
|
||||
required_bot_permissions = "SEND_MESSAGES | VIEW_CHANNEL"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
use crate::{Context, Error, debug_cmds::{guild_invite, leave_guild, ping, reload_cfg, stop, view_guilds, whoami}};
|
||||
use crate::{Context, Error, debug_cmds::{guild_invite, leave_guild, ping, stop, view_guilds, whoami}};
|
||||
|
||||
|
||||
#[derive(poise::ChoiceParameter, PartialEq)]
|
||||
@@ -6,7 +6,7 @@ pub enum Subcommands {
|
||||
GuildInvite,
|
||||
LeaveGuild,
|
||||
Ping,
|
||||
ReloadCfg,
|
||||
//ReloadCfg,
|
||||
Stop,
|
||||
ViewGuilds,
|
||||
WhoAmI
|
||||
@@ -35,7 +35,7 @@ pub async fn cmd(
|
||||
Subcommands::GuildInvite => guild_invite::cmd(ctx, u64_arg_u).await?,
|
||||
Subcommands::LeaveGuild => leave_guild::cmd(ctx, u64_arg_u).await?,
|
||||
Subcommands::Ping => ping::cmd(ctx).await?,
|
||||
Subcommands::ReloadCfg => reload_cfg::cmd(ctx).await?,
|
||||
//Subcommands::ReloadCfg => reload_cfg::cmd(ctx).await?,
|
||||
Subcommands::Stop => stop::cmd(ctx, string_arg).await?,
|
||||
Subcommands::ViewGuilds => view_guilds::cmd(ctx).await?,
|
||||
Subcommands::WhoAmI => whoami::cmd(ctx).await?,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
use crate::{data::{self, get_toml_mutex, read_cfg_data}, lang, messages::send_msg, Context, Error};
|
||||
/*use crate::{Context, Error, data::{self, get_toml_mutex, read_cfg_data}, lang, messages::send_msg};
|
||||
|
||||
|
||||
pub async fn cmd(ctx: Context<'_>) -> Result<(), Error> {
|
||||
@@ -7,9 +7,7 @@ pub async fn cmd(ctx: Context<'_>) -> Result<(), Error> {
|
||||
|
||||
if r.is_none() { return Ok(()); }
|
||||
|
||||
let data_binding = get_toml_mutex(&ctx.data().cfg).await.unwrap();
|
||||
let lang_cfg = data_binding["general"]["lang"].as_str().unwrap();
|
||||
data::load_lang_data(lang_cfg.to_string());
|
||||
update_cfg(ctx).await;
|
||||
|
||||
if r.unwrap()["value"].as_bool().unwrap() {
|
||||
send_msg(
|
||||
@@ -23,4 +21,13 @@ pub async fn cmd(ctx: Context<'_>) -> Result<(), Error> {
|
||||
|
||||
send_msg(ctx, lang!("dc_msg_reload_cfg_python_fail"), true, true).await;
|
||||
return Ok(());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
async fn update_cfg(ctx: Context<'_>) {
|
||||
let data_binding = get_toml_mutex(&ctx.data().cfg).await.unwrap();
|
||||
let lang_cfg = data_binding["general"]["lang"].as_str().unwrap();
|
||||
data::load_lang_data(lang_cfg.to_string());
|
||||
|
||||
set_status(data_binding, ctx).await;
|
||||
}*/
|
||||
+4
-29
@@ -1,15 +1,15 @@
|
||||
use crate::data::{get_mutex_data, get_toml_mutex, update_re_data};
|
||||
use crate::r#gen::set_status;
|
||||
use crate::messages::{make_post_embed, make_removed_embed, EmbedOptions};
|
||||
use crate::re_cmds::generic_fns::{is_bk_mod, is_bk_mod_serenity, serenity_edit_msg_embed, serenity_send_msg};
|
||||
use crate::websocket::send_cmd_json;
|
||||
use crate::{lang, rs_println, Data, Error, CFG_DATA_RE};
|
||||
use crate::{CFG_DATA_RE, Data, Error, lang, rs_println};
|
||||
|
||||
use poise::serenity_prelude::{self as serenity, ActivityData, ChannelId, ComponentInteraction, Interaction, Member, MessageId, Ready};
|
||||
use poise::serenity_prelude::{self as serenity, ChannelId, ComponentInteraction, Interaction, Member, MessageId, Ready};
|
||||
use serde_json::{json, Value};
|
||||
|
||||
use std::future::Future;
|
||||
use std::pin::Pin;
|
||||
use std::process;
|
||||
|
||||
pub fn event_handler<'a>(
|
||||
ctx: &'a serenity::Context,
|
||||
@@ -36,33 +36,8 @@ async fn on_ready(ctx: &serenity::Context, data_about_bot: &Ready, data: &Data)
|
||||
);
|
||||
|
||||
let m_data = get_toml_mutex(&data.cfg).await.unwrap();
|
||||
let status_str: String;
|
||||
|
||||
let status = m_data["general"]["status"].as_str().unwrap();
|
||||
let status_c = m_data["general"]["statusCommitNumber"].as_bool().unwrap();
|
||||
let status_ec = m_data["general"]["statusExperimentalCommit"].as_bool().unwrap();
|
||||
|
||||
if status_c {
|
||||
let commit_num_r = process::Command::new("git")
|
||||
.args(["rev-list", "--count", "HEAD"])
|
||||
.output()
|
||||
.unwrap();
|
||||
|
||||
let commit_num = format!(
|
||||
"({} #{})",
|
||||
if status_ec { "Experimental" }
|
||||
else { "Commit" },
|
||||
String::from_utf8(commit_num_r.stdout).unwrap()
|
||||
).replace("\n", "");
|
||||
|
||||
status_str = [status, " ", commit_num.as_str().trim()].concat();
|
||||
}
|
||||
else { status_str = status.to_string(); }
|
||||
|
||||
let custom_activity = ActivityData::custom(status_str.clone());
|
||||
ctx.online();
|
||||
ctx.set_activity(Some(custom_activity));
|
||||
rs_println!("Set bot status as: \"{}\"", status_str);
|
||||
set_status(m_data, ctx).await;
|
||||
}
|
||||
|
||||
|
||||
|
||||
+40
-8
@@ -1,10 +1,12 @@
|
||||
use std::collections::HashSet;
|
||||
use std::{collections::HashSet, process};
|
||||
|
||||
use poise::serenity_prelude::UserId;
|
||||
use poise::serenity_prelude::{ActivityData, UserId};
|
||||
use poise::serenity_prelude as serenity;
|
||||
use poise::serenity_prelude::Client;
|
||||
use toml::Value;
|
||||
|
||||
use crate::{Args, Cmd, Data, cmds, data::{self, get_toml_mutex}, debug_cmds, events, re_cmds, rs_println};
|
||||
use crate::data::get_toml_mutex;
|
||||
use crate::{Args, Cmd, Data, cmds, data, debug_cmds, events, re_cmds, rs_println};
|
||||
|
||||
|
||||
pub async fn gen_data(args: Args, owners: Vec<u64>) -> Data {
|
||||
@@ -93,14 +95,13 @@ async fn make_cmd_vec(data: &Data) -> Vec<Cmd> {
|
||||
re_cmds::update::cmd(),
|
||||
re_cmds::vote::cmd(),
|
||||
re_cmds::shorturl::cmd(),
|
||||
// [ADMIN / OWNER]
|
||||
// OWNER
|
||||
cmds::embed::cmd(),
|
||||
cmds::send::cmd(),
|
||||
cmds::add_server::cmd(),
|
||||
// REDDIT [ADMIN / OWNER]
|
||||
debug_cmds::main_cmd::cmd(),
|
||||
// DATABASE
|
||||
re_cmds::admin_bind::cmd(),
|
||||
// DEBUG
|
||||
debug_cmds::main_cmd::cmd()
|
||||
cmds::add_server::cmd(),
|
||||
];
|
||||
let cfg = get_toml_mutex(&data.cfg).await.unwrap();
|
||||
|
||||
@@ -114,4 +115,35 @@ async fn make_cmd_vec(data: &Data) -> Vec<Cmd> {
|
||||
cmds.retain(|cmd| !disabled.contains(&cmd.category.as_ref().unwrap().as_str()));
|
||||
|
||||
return cmds;
|
||||
}
|
||||
|
||||
|
||||
pub async fn set_status(m_data: Value, ctx: &serenity::Context) {
|
||||
let status_str: String;
|
||||
|
||||
let status = m_data["general"]["status"].as_str().unwrap();
|
||||
let status_c = m_data["general"]["statusCommitNumber"].as_bool().unwrap();
|
||||
let status_ec = m_data["general"]["statusExperimentalCommit"].as_bool().unwrap();
|
||||
|
||||
if status_c {
|
||||
let commit_num_r = process::Command::new("git")
|
||||
.args(["rev-list", "--count", "HEAD"])
|
||||
.output()
|
||||
.unwrap();
|
||||
|
||||
let commit_num = format!(
|
||||
"({} #{})",
|
||||
if status_ec { "Experimental" }
|
||||
else { "Commit" },
|
||||
String::from_utf8(commit_num_r.stdout).unwrap()
|
||||
).replace("\n", "");
|
||||
|
||||
status_str = [status, " ", commit_num.as_str().trim()].concat();
|
||||
}
|
||||
else { status_str = status.to_string(); }
|
||||
|
||||
let custom_activity = ActivityData::custom(status_str.clone());
|
||||
ctx.online();
|
||||
ctx.set_activity(Some(custom_activity));
|
||||
rs_println!("Set bot status as: \"{}\"", status_str);
|
||||
}
|
||||
@@ -4,7 +4,7 @@ use crate::{data::dc_bind_bk, lang, messages::send_msg, Context, Error};
|
||||
slash_command,
|
||||
prefix_command,
|
||||
rename = "admin_re_bindchannel",
|
||||
category = "admin",
|
||||
category = "db",
|
||||
default_member_permissions = "ADMINISTRATOR",
|
||||
guild_only,
|
||||
required_bot_permissions = "SEND_MESSAGES | VIEW_CHANNEL"
|
||||
|
||||
Reference in New Issue
Block a user