28 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
@use templates::base;
 | 
						|
@use template_utils::*;
 | 
						|
@use routes::user::NewUserForm;
 | 
						|
@use validator::{ValidationErrors, ValidationErrorsKind};
 | 
						|
@use routes::*;
 | 
						|
@use std::borrow::Cow;
 | 
						|
 | 
						|
@(ctx: BaseContext, enabled: bool, form: &NewUserForm, errors: ValidationErrors)
 | 
						|
 | 
						|
@:base(ctx, i18n!(ctx.1, "Create your account"), {}, {}, {
 | 
						|
    @if enabled {
 | 
						|
        <h1>@i18n!(ctx.1, "Create an account")</h1>
 | 
						|
        <form method="post" action="@uri!(user::create)">
 | 
						|
            @input!(ctx.1, username (text), "Username", form, errors.clone(), "minlenght=\"1\"")
 | 
						|
            @input!(ctx.1, email (text), "Email", form, errors.clone())
 | 
						|
            @input!(ctx.1, password (password), "Password", form, errors.clone(), "minlenght=\"8\"")
 | 
						|
            @if let Some(ValidationErrorsKind::Field(errs)) = errors.clone().errors().get("__all__") {
 | 
						|
	        <p class="error">@errs[0].message.as_ref().unwrap_or(&Cow::from("Unknown error"))</p>
 | 
						|
            }
 | 
						|
            @input!(ctx.1, password_confirmation (password), "Password confirmation", form, errors, "minlenght=\"8\"")
 | 
						|
 | 
						|
            <input type="submit" value="@i18n!(ctx.1, "Create your account")" />
 | 
						|
        </form>
 | 
						|
    } else {
 | 
						|
<p class="center">@i18n!(ctx.1, "Apologies, but registrations are closed on this particular instance. You can, however, find a different one.")</p>
 | 
						|
    }
 | 
						|
})
 |