hyaenidae/server/templates/profiles/create/require_login.rs.html
asonix 934ddd76ff Server: Update to latest Toolkit & Profile apis
Reorganize files a bit
Add a Pagination trait to guide with paging in the future
Add extension traits for Profile, Comment, and Submission
Async-ify more things, but not all things
2021-01-21 23:47:47 -06:00

59 lines
2.2 KiB
HTML

@use crate::templates::layouts::home;
@use crate::nav::NavState;
@use crate::profiles::EditProfileState;
@use crate::templates::button_js;
@use hyaenidae_toolkit::{templates::button_group, Button};
@use hyaenidae_toolkit::{templates::{card, card_body, card_title}, Card};
@use hyaenidae_toolkit::templates::profile;
@(profile_state: &EditProfileState, nav_state: &NavState)
@:home("Create Profile", "Create a new profile on Hyaenidae", nav_state, {
@:button_js()
}, {
@:card(&Card::full_width().dark(nav_state.dark()), {
<form method="POST" action="/profiles/create/require-login">
@:card_title({ Require Login })
@:card_body({
<p>
If you would like to hide your profile from people without accounts, you
can check this box to restrict your profile page to logged in users.
</p>
})
@if let Some(error) = &profile_state.login_required_error {
@:card_body({
<p>@error</p>
})
}
@:card_body({
<label for="require_login">
@if profile_state.login_required() {
<input
type="checkbox"
name="require_login"
checked
/>
} else {
<input
type="checkbox"
name="require_login"
/>
}
<span>Require Login</span>
</label>
})
@:card_body({
@:button_group(&[
Button::primary("Next").dark(nav_state.dark()),
Button::outline("Back").href("/profiles/create/banner").dark(nav_state.dark()),
Button::primary_outline("Skip").href("/profiles/create/done").dark(nav_state.dark()),
])
})
</form>
})
@:card(&Card::full_width().dark(true), {
@:card_title({ Preview })
@:profile(&profile_state.profile().heading().dark(nav_state.dark()))
})
})