fixed select menu taking more than 25 items

This commit is contained in:
2022-02-25 19:22:38 +05:30
parent c04ec75f3e
commit 05dc40863e
3 changed files with 10 additions and 4 deletions

View File

@@ -218,19 +218,21 @@ pub async fn clist(ctx: &Context, msg: &Message, mut args: Args) -> CommandResul
.get::<crate::Database>() .get::<crate::Database>()
.expect("Expected Database in TypeMap.") .expect("Expected Database in TypeMap.")
.clone(); .clone();
let rows = db let rows = db
.query( .query(
"SELECT ROW_NUMBER() OVER (ORDER BY id), name, owner FROM words", "SELECT ROW_NUMBER() OVER (ORDER BY id), name, owner FROM words",
&[], &[],
) )
.await?; .await?;
if rows.is_empty() { if rows.is_empty() {
msg.reply(ctx, "No words stored").await?; msg.reply(ctx, "No words stored").await?;
return Ok(()); return Ok(());
} }
let groups: Vec<&[Row]> = rows.chunks(size).collect(); let groups: Vec<&[Row]> = rows.chunks(size).collect();
let mut cur = 1; let mut cur = 1;
let message = msg let message = msg
.channel_id .channel_id
.send_message(ctx, |m| { .send_message(ctx, |m| {

View File

@@ -255,19 +255,21 @@ pub async fn tlist(ctx: &Context, msg: &Message, mut args: Args) -> CommandResul
.get::<crate::Database>() .get::<crate::Database>()
.expect("Expected Database in TypeMap.") .expect("Expected Database in TypeMap.")
.clone(); .clone();
let rows = db let rows = db
.query( .query(
"SELECT ROW_NUMBER() OVER (ORDER BY id), name, owner FROM tags", "SELECT ROW_NUMBER() OVER (ORDER BY id), name, owner FROM tags",
&[], &[],
) )
.await?; .await?;
if rows.is_empty() { if rows.is_empty() {
msg.reply(ctx, "No tags stored").await?; msg.reply(ctx, "No tags stored").await?;
return Ok(()); return Ok(());
} }
let groups: Vec<&[Row]> = rows.chunks(size).collect(); let groups: Vec<&[Row]> = rows.chunks(size).collect();
let mut cur = 1; let mut cur = 1;
let message = msg let message = msg
.channel_id .channel_id
.send_message(ctx, |m| { .send_message(ctx, |m| {

View File

@@ -54,7 +54,9 @@ pub fn make_terminal_components(terminal: &str, pages: usize) -> CreateComponent
.emoji(ReactionType::Unicode("\u{1F5D1}".to_string())) .emoji(ReactionType::Unicode("\u{1F5D1}".to_string()))
.custom_id("delete") .custom_id("delete")
}) })
}) });
.create_action_row(|ar| ar.add_select_menu(make_range_select_menu(1, pages))); if pages <= 25 {
c.create_action_row(|ar| ar.add_select_menu(make_range_select_menu(1, pages)));
}
c c
} }