@use plume_models::blocklisted_emails::BlocklistedEmail; @use crate::templates::{base, instance::admin_header}; @use crate::template_utils::*; @use crate::routes::*; @(ctx:BaseContext, emails: Vec, page:i32, n_pages:i32) @:base(ctx, i18n!(ctx.1, "Blocklisted Emails"), {}, {}, { @:admin_header(ctx, "Blocklisted Emails", 4)
@(Input::new("email_address", i18n!(ctx.1, "Email address")) .details(i18n!(ctx.1, "The email address you wish to block. In order to block domains, you can use globbing syntax, for example '*@example.com' blocks all addresses from example.com")) .set_prop("minlength", 1) .html(ctx.1)) @(Input::new("note", i18n!(ctx.1, "Note")).optional().html(ctx.1)) @(Input::new("notification_text", i18n!(ctx.1, "Blocklisting notification")) .optional() .details(i18n!(ctx.1, "The message to be shown when the user attempts to create an account with this email address")).html(ctx.1))
@if emails.is_empty() {

@i18n!(ctx.1, "There are no blocked emails on your instance")

} else { }
@for email in emails {

@i18n!(ctx.1, "Email address:") @email.email_address

@i18n!(ctx.1, "Blocklisted for:") @email.note

@if email.notify_user { @i18n!(ctx.1, "Will notify them on account creation with this message:") @email.notification_text } else { @i18n!(ctx.1, "The user will be silently prevented from making an account") }

}
@paginate(ctx.1, page, n_pages) })