* Replace the input! macro with an Input builder * Use a BTreeMap instead of an HashMap Followinf @fdb-hiroshima's advice * Rename Input::to_html to Input::html To make clippy happy * Wrap error messages in red paragraphs
		
			
				
	
	
		
			46 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| @use plume_models::instance::Instance;
 | |
| @use validator::ValidationErrors;
 | |
| @use templates::base;
 | |
| @use template_utils::*;
 | |
| @use routes::instance::InstanceSettingsForm;
 | |
| @use 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),
 | |
|   ])
 | |
| 
 | |
|   <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>
 | |
| 
 | |
|       <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>
 | |
| })
 |