Plume/templates/instance/admin.rs.html

47 lines
2 KiB
HTML
Raw Permalink Normal View History

@use plume_models::instance::Instance;
@use validator::ValidationErrors;
2020-01-21 06:02:03 +00:00
@use crate::templates::base;
@use crate::template_utils::*;
@use crate::routes::instance::InstanceSettingsForm;
@use crate::routes::*;
@(ctx: BaseContext, instance: Instance, form: InstanceSettingsForm, errors: ValidationErrors)
@:base(ctx, i18n!(ctx.1, "Administration of {0}"; instance.name.clone()), {}, {}, {
<h1>@i18n!(ctx.1, "Administration")</h1>
@tabs(&[
(&uri!(instance::admin).to_string(), i18n!(ctx.1, "Configuration"), true),
(&uri!(instance::admin_instances: page = _).to_string(), i18n!(ctx.1, "Instances"), false),
(&uri!(instance::admin_users: page = _).to_string(), i18n!(ctx.1, "Users"), false),
(&uri!(instance::admin_email_blocklist: page=_).to_string(), i18n!(ctx.1, "Email blocklist"), false)
])
<form method="post" action="@uri!(instance::update_settings)">
@(Input::new("name", i18n!(ctx.1, "Name"))
.default(&form.name)
.error(&errors)
.set_prop("minlength", 1)
.html(ctx.1))
<label for="open_registrations">
<input type="checkbox" name="open_registrations" id="open_registrations" @if instance.open_registrations { checked }>
@i18n!(ctx.1, "Allow anyone to register here")
</label>
<label for="short_description">@i18n!(ctx.1, "Short description")<small>@i18n!(ctx.1, "Markdown syntax is supported")</small></label>
<textarea id="short_description" name="short_description">@Html(form.short_description)</textarea>
2018-12-25 14:59:54 +00:00
<label for="long_description">@i18n!(ctx.1, "Long description")<small>@i18n!(ctx.1, "Markdown syntax is supported")</small></label>
<textarea id="long_description" name="long_description">@Html(form.long_description)</textarea>
@(Input::new("default_license", i18n!(ctx.1, "Default article license"))
.default(&form.default_license)
.error(&errors)
.set_prop("minlength", 1)
.html(ctx.1))
<input type="submit" value="@i18n!(ctx.1, "Save these settings")"/>
</form>
})