diff --git a/src/verify/login.rs b/src/verify/login.rs index cb60180..f0819f0 100644 --- a/src/verify/login.rs +++ b/src/verify/login.rs @@ -261,7 +261,9 @@ pub(crate) async fn login_6( }) }) .await?; - if !mm.roles.contains(&data.old_member) { + if mm.roles.contains(&data.old_member) { + crate::verify::remove_role(ctx, &mut mm, data.old_member).await?; + } else { crate::verify::welcome_user(&ctx.http, &data.gn_ch_id, &m.user, fresher) .await?; } diff --git a/src/verify/manual.rs b/src/verify/manual.rs index 5994f17..ed5846a 100644 --- a/src/verify/manual.rs +++ b/src/verify/manual.rs @@ -252,7 +252,9 @@ pub(crate) async fn manual_4( }) }) .await?; - if !member.roles.contains(&data.old_member) { + if member.roles.contains(&data.old_member) { + crate::verify::remove_role(ctx, &mut member, data.old_member).await?; + } else { crate::verify::welcome_user(&ctx.http, &data.gn_ch_id, &user, fresher).await?; } } diff --git a/src/verify/membership.rs b/src/verify/membership.rs index fb78ff5..b563568 100644 --- a/src/verify/membership.rs +++ b/src/verify/membership.rs @@ -181,7 +181,9 @@ pub(crate) async fn membership_3( }) }) .await?; - if !mm.roles.contains(&data.old_member) { + if mm.roles.contains(&data.old_member) { + crate::verify::remove_role(ctx, &mut mm, data.old_member).await?; + } else { crate::verify::welcome_user(&ctx.http, &data.gn_ch_id, &m.user, fresher) .await?; }