67 lines
No EOL
3.4 KiB
Markdown
67 lines
No EOL
3.4 KiB
Markdown
* Finish all local storage API (remove scheduled, add ingredient, etc..)
|
|
* Find an elegant/global way to adapt the quantities to servings (e.g. shopping list)
|
|
* FIX: when the event blur is triggered when changing page, the async process doesn't finish all the time
|
|
* User can change default_servings in profile
|
|
* Add a way to retrieve a backup of the database (only if admin)
|
|
* Maybe make a dev-page with logs and other tools/information
|
|
* Can choose servings number in recipe view
|
|
* Default number is the user setting user.default_servings
|
|
* A symbol show the native recipe servings number
|
|
* Check position of message error in profile/sign in/sign up with flex grid layout
|
|
* Replace Rinja by Askama when Askma 0.13 is out (Rinja has been merged with Askama)
|
|
* Define the UI (mockups).
|
|
* Two CSS: one for desktop and one for mobile
|
|
* Use CSS flex/grid to define a good design/layout
|
|
* CSS for dark mode + autodetect
|
|
* CSS for toast and modal dialog
|
|
* Calendar: Choose the first day of the week
|
|
* i18n: prefix uri with the language: /fr/recipe/view/2 (do it for all intern href)
|
|
* Redirect with the correct prefix when the current language is changed
|
|
* Make a search page
|
|
Use FTS5:
|
|
https://sqlite.org/fts5.html
|
|
https://www.sqlitetutorial.net/sqlite-full-text-search/
|
|
* Use of markdown for some field (how to add markdown as rinja filter?)
|
|
* Quick search left panel by tags ?
|
|
* Make the home page: Define what to display to the user
|
|
* Show existing tags when editing a recipe
|
|
|
|
[ok] Add a table for website global settings with two column: name + value
|
|
* Add a boolean settings to enable/disable new inscription
|
|
[ok] Add a [is_admin] flag to [User] table
|
|
[ok] Test when there is an SQL error (syntax error for sample)
|
|
[ok] Drag and drop of steps and groups to define their order
|
|
[ok] Force tags in lowercase
|
|
[ok] Remove the given language to recipe_edit and replace it by tr (like the header)
|
|
[ok] List only recipe of current language
|
|
[ok] Add support to translations.
|
|
* Make a Text database (a bit like d-lan.net) and think about translation.
|
|
* The language is stored in cookie or in user profile if the user is connected
|
|
* A combobox in the header shows all languages
|
|
[ok] Set a lang cookie (when not connected)
|
|
[ok] User can choose language
|
|
[ok] Implement:
|
|
.service(services::edit_recipe)
|
|
.service(services::new_recipe)
|
|
.service(services::webapi::set_recipe_title)
|
|
.service(services::webapi::set_recipe_description)
|
|
[ok] Review the recipe model (SQL)
|
|
[ok] Finish updating profile
|
|
[ok] check password and message error
|
|
[ok] user can change email: add a field + revalidation of new email
|
|
[ok] Try using WASM for all the client logic (test on editing/creating a recipe)
|
|
[ok] How to log error to journalctl or elsewhere + debug log?
|
|
[ok] Clean the old code + commit
|
|
[ok] Reactivate sign up/in/out
|
|
[ok] Change all id to i64
|
|
[ok] Check cookie lifetime -> Session by default
|
|
[ok] Asynchonous email sending and database requests
|
|
[ok] Try to return Result for async routes (and watch what is printed in log)
|
|
[ok] Then try to make async database calls
|
|
[ok] Set email sending as async and show a waiter when sending email. Handle (and test) a timeout (~10s). -> (timeout put to 60s)
|
|
[ok] Sign out
|
|
[ok] Read all the askama doc and see if the current approach is good
|
|
[ok] Handle 404
|
|
[ok] Enable Logging to file.
|
|
[ok] Implement the model as relational with SQLite.
|
|
[ok] Create and update functions. |