Add a toggle between dark and light theme
This commit is contained in:
parent
d22617538e
commit
559ed139aa
34 changed files with 640 additions and 469 deletions
|
|
@ -1,6 +1,7 @@
|
|||
use askama::Template;
|
||||
|
||||
use crate::{
|
||||
Context,
|
||||
data::model,
|
||||
translation::{self, Sentence, Tr},
|
||||
};
|
||||
|
|
@ -20,8 +21,7 @@ impl Recipes {
|
|||
#[derive(Template)]
|
||||
#[template(path = "home.html")]
|
||||
pub struct HomeTemplate {
|
||||
pub user: Option<model::User>,
|
||||
pub tr: Tr,
|
||||
pub context: Context,
|
||||
|
||||
pub recipes: Recipes,
|
||||
}
|
||||
|
|
@ -29,8 +29,7 @@ pub struct HomeTemplate {
|
|||
#[derive(Template)]
|
||||
#[template(path = "message.html")]
|
||||
pub struct MessageTemplate<'a> {
|
||||
pub user: Option<model::User>,
|
||||
pub tr: Tr,
|
||||
pub context: Context,
|
||||
|
||||
pub message: &'a str,
|
||||
pub as_code: bool, // Display the message in <pre> markup.
|
||||
|
|
@ -39,8 +38,11 @@ pub struct MessageTemplate<'a> {
|
|||
impl<'a> MessageTemplate<'a> {
|
||||
pub fn new(message: &'a str, tr: Tr) -> MessageTemplate<'a> {
|
||||
MessageTemplate {
|
||||
user: None,
|
||||
tr,
|
||||
context: Context {
|
||||
user: None,
|
||||
tr,
|
||||
dark_theme: false,
|
||||
},
|
||||
message,
|
||||
as_code: false,
|
||||
}
|
||||
|
|
@ -52,8 +54,11 @@ impl<'a> MessageTemplate<'a> {
|
|||
user: Option<model::User>,
|
||||
) -> MessageTemplate<'a> {
|
||||
MessageTemplate {
|
||||
user,
|
||||
tr,
|
||||
context: Context {
|
||||
user,
|
||||
tr,
|
||||
dark_theme: false,
|
||||
},
|
||||
message,
|
||||
as_code: false,
|
||||
}
|
||||
|
|
@ -63,8 +68,7 @@ impl<'a> MessageTemplate<'a> {
|
|||
#[derive(Template)]
|
||||
#[template(path = "sign_up_form.html")]
|
||||
pub struct SignUpFormTemplate<'a> {
|
||||
pub user: Option<model::User>,
|
||||
pub tr: Tr,
|
||||
pub context: Context,
|
||||
|
||||
pub email: String,
|
||||
pub message: &'a str,
|
||||
|
|
@ -75,8 +79,7 @@ pub struct SignUpFormTemplate<'a> {
|
|||
#[derive(Template)]
|
||||
#[template(path = "sign_in_form.html")]
|
||||
pub struct SignInFormTemplate<'a> {
|
||||
pub user: Option<model::User>,
|
||||
pub tr: Tr,
|
||||
pub context: Context,
|
||||
|
||||
pub email: &'a str,
|
||||
pub message: &'a str,
|
||||
|
|
@ -85,8 +88,7 @@ pub struct SignInFormTemplate<'a> {
|
|||
#[derive(Template)]
|
||||
#[template(path = "ask_reset_password.html")]
|
||||
pub struct AskResetPasswordTemplate<'a> {
|
||||
pub user: Option<model::User>,
|
||||
pub tr: Tr,
|
||||
pub context: Context,
|
||||
|
||||
pub email: &'a str,
|
||||
pub message: &'a str,
|
||||
|
|
@ -96,8 +98,7 @@ pub struct AskResetPasswordTemplate<'a> {
|
|||
#[derive(Template)]
|
||||
#[template(path = "reset_password.html")]
|
||||
pub struct ResetPasswordTemplate<'a> {
|
||||
pub user: Option<model::User>,
|
||||
pub tr: Tr,
|
||||
pub context: Context,
|
||||
|
||||
pub reset_token: &'a str,
|
||||
pub message: &'a str,
|
||||
|
|
@ -107,8 +108,7 @@ pub struct ResetPasswordTemplate<'a> {
|
|||
#[derive(Template)]
|
||||
#[template(path = "profile.html")]
|
||||
pub struct ProfileTemplate<'a> {
|
||||
pub user: Option<model::User>,
|
||||
pub tr: Tr,
|
||||
pub context: Context,
|
||||
|
||||
pub username: &'a str,
|
||||
pub email: &'a str,
|
||||
|
|
@ -121,8 +121,7 @@ pub struct ProfileTemplate<'a> {
|
|||
#[derive(Template)]
|
||||
#[template(path = "recipe_view.html")]
|
||||
pub struct RecipeViewTemplate {
|
||||
pub user: Option<model::User>,
|
||||
pub tr: Tr,
|
||||
pub context: Context,
|
||||
|
||||
pub recipes: Recipes,
|
||||
|
||||
|
|
@ -132,8 +131,7 @@ pub struct RecipeViewTemplate {
|
|||
#[derive(Template)]
|
||||
#[template(path = "recipe_edit.html")]
|
||||
pub struct RecipeEditTemplate {
|
||||
pub user: Option<model::User>,
|
||||
pub tr: Tr,
|
||||
pub context: Context,
|
||||
|
||||
pub recipes: Recipes,
|
||||
|
||||
|
|
@ -143,7 +141,7 @@ pub struct RecipeEditTemplate {
|
|||
#[derive(Template)]
|
||||
#[template(path = "recipes_list_fragment.html")]
|
||||
pub struct RecipesListFragmentTemplate {
|
||||
pub tr: Tr,
|
||||
pub context: Context,
|
||||
|
||||
pub recipes: Recipes,
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue