COL-BOT-03: make /member_info expiry reply ephemeral and drop dead query

Restructure the membership lookup to `let Some(user_data) = ... else { ... }`
so the "Couldn't find info" branch now sends `.ephemeral(true)` like the other
two replies; whether a member's membership has lapsed is no longer announced to
the whole channel. Delete the commented-out `student_data` query that duplicated
member_data(). No embed fields or wording changed.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017XrE7F9ZuBWdQnS8CZvYDE
This commit is contained in:
Clupai8o0 2026-08-30 15:32:42 +10:00
parent 345f4ec513
commit fb867a2efa

View file

@ -66,46 +66,42 @@ pub async fn member_info(ctx: ApplicationContext<'_>) -> Result<(), Error> {
let user_data_option = member_data(&database, &student_id).await?; let user_data_option = member_data(&database, &student_id).await?;
if let Some(user_data) = user_data_option { let Some(user_data) = user_data_option else {
let member_name = user_data.full_name;
let member_campus = user_data.campus;
let membership_status = user_data.membership_status;
let expiry_date = user_data.end_date;
ctx.send( ctx.send(
CreateReply::default() CreateReply::default()
.embed( .embed(CreateEmbed::new().title("Couldn't find info").description(
CreateEmbed::new() "Your membership may have expired. Contact a club executive to be sure.",
.title("DSEC Membership Info") ))
.description(format!( // Ephemeral like the other two replies: whether someone's
" // membership has lapsed is their business, not the channel's.
.ephemeral(true),
)
.await?;
return Ok(());
};
let member_name = user_data.full_name;
let member_campus = user_data.campus;
let membership_status = user_data.membership_status;
let expiry_date = user_data.end_date;
ctx.send(
CreateReply::default()
.embed(
CreateEmbed::new()
.title("DSEC Membership Info")
.description(format!(
"
**Name:** {member_name} **Name:** {member_name}
**Campus:** {member_campus} **Campus:** {member_campus}
**Membership Status:** {membership_status} **Membership Status:** {membership_status}
**Membership Expiry Date**: {expiry_date} **Membership Expiry Date**: {expiry_date}
" "
)), )),
) )
.ephemeral(true), .ephemeral(true),
) )
.await?; .await?;
} else {
ctx.send(CreateReply::default().embed(
CreateEmbed::new().title("Couldn't find info").description(
"Your membership may have expired. Contact a club executive to be sure.",
),
))
.await?;
}
// let student_data = state
// .supabase
// .database()
// .from("active_members")
// .select("full_name, student_id")
// .eq("student_id", &student_id)
// .execute()
// .await?;
Ok(()) Ok(())
} }