judu/ex-egopublic Fork
⑂ abb035f
Commits
⬇ Clone ▾
git clone https://git.rickub.com/judu/ex-ego.git
git clone ssh://git@rickub.com/judu/ex-ego.git

Host key fingerprint (ed25519): SHA256:iycHnxEyq0Q7uyVpB7JlznP0G7JrTPXLYRcAU5CSLhc — verify it before your first connect.

Download ZIP

style(ui): « Mes saisies → » agrandi sur Stats ; carte Catégories dans ParamètresUnverified

Deux reports du design : le lien des stats passe à 16 px / 44 px de
haut, et les paramètres gagnent un accès aux catégories sur le même
gabarit de carte que « Mes saisies » (i18n FR/EN/DE).

Claude-Session: https://claude.ai/code/session_01D114WAMbcTKTZShiyksS1z
Julien Durillon committed 2026-08-10T21:25:34+02:00 Browse files
abb035f parent: 7734d1d
modified src/i18n.rs +5 -0
@@ -181,6 +181,8 @@ pub struct Tr {
181181 pub account_line_single: &'static str,
182182 pub my_entries: &'static str,
183183 pub my_entries_desc: &'static str,
184+ /// Carte « Catégories » des paramètres (même gabarit que « Mes saisies »).
185+ pub manage_categories_desc: &'static str,
184186 pub team_name_label: &'static str,
185187 pub rename_team_note: &'static str,
186188 pub members_of_pat: &'static str,
@@ -435,6 +437,7 @@ pub static FR: Tr = Tr {
435437 account_line_single: "Les comptes sont créés en ligne de commande.",
436438 my_entries: "Mes saisies",
437439 my_entries_desc: "Consulter et corriger les temps que j'ai enregistrés.",
440+ manage_categories_desc: "Ajouter, renommer ou archiver les catégories de l'équipe.",
438441 team_name_label: "Nom de l'équipe",
439442 rename_team_note: "Le nouveau nom est visible par tous les membres.",
440443 members_of_pat: "Membres de {}",
@@ -656,6 +659,7 @@ pub static EN: Tr = Tr {
656659 account_line_single: "Accounts are created from the command line.",
657660 my_entries: "My entries",
658661 my_entries_desc: "View and fix the times I recorded.",
662+ manage_categories_desc: "Add, rename or archive the team's categories.",
659663 team_name_label: "Team name",
660664 rename_team_note: "The new name is visible to all members.",
661665 members_of_pat: "Members of {}",
@@ -877,6 +881,7 @@ pub static DE: Tr = Tr {
877881 account_line_single: "Konten werden über die Kommandozeile angelegt.",
878882 my_entries: "Meine Einträge",
879883 my_entries_desc: "Erfasste Zeiten ansehen und korrigieren.",
884+ manage_categories_desc: "Kategorien des Teams hinzufügen, umbenennen oder archivieren.",
880885 team_name_label: "Teamname",
881886 rename_team_note: "Der neue Name ist für alle Mitglieder sichtbar.",
882887 members_of_pat: "Mitglieder von {}",
@@ -181,6 +181,8 @@ pub struct Tr {
181 pub account_line_single: &'static str,181 pub account_line_single: &'static str,
182 pub my_entries: &'static str,182 pub my_entries: &'static str,
183 pub my_entries_desc: &'static str,183 pub my_entries_desc: &'static str,
184+ /// Carte « Catégories » des paramètres (même gabarit que « Mes saisies »).
185+ pub manage_categories_desc: &'static str,
184 pub team_name_label: &'static str,186 pub team_name_label: &'static str,
185 pub rename_team_note: &'static str,187 pub rename_team_note: &'static str,
186 pub members_of_pat: &'static str,188 pub members_of_pat: &'static str,
@@ -435,6 +437,7 @@ pub static FR: Tr = Tr {
435 account_line_single: "Les comptes sont créés en ligne de commande.",437 account_line_single: "Les comptes sont créés en ligne de commande.",
436 my_entries: "Mes saisies",438 my_entries: "Mes saisies",
437 my_entries_desc: "Consulter et corriger les temps que j'ai enregistrés.",439 my_entries_desc: "Consulter et corriger les temps que j'ai enregistrés.",
440+ manage_categories_desc: "Ajouter, renommer ou archiver les catégories de l'équipe.",
438 team_name_label: "Nom de l'équipe",441 team_name_label: "Nom de l'équipe",
439 rename_team_note: "Le nouveau nom est visible par tous les membres.",442 rename_team_note: "Le nouveau nom est visible par tous les membres.",
440 members_of_pat: "Membres de {}",443 members_of_pat: "Membres de {}",
@@ -656,6 +659,7 @@ pub static EN: Tr = Tr {
656 account_line_single: "Accounts are created from the command line.",659 account_line_single: "Accounts are created from the command line.",
657 my_entries: "My entries",660 my_entries: "My entries",
658 my_entries_desc: "View and fix the times I recorded.",661 my_entries_desc: "View and fix the times I recorded.",
662+ manage_categories_desc: "Add, rename or archive the team's categories.",
659 team_name_label: "Team name",663 team_name_label: "Team name",
660 rename_team_note: "The new name is visible to all members.",664 rename_team_note: "The new name is visible to all members.",
661 members_of_pat: "Members of {}",665 members_of_pat: "Members of {}",
@@ -877,6 +881,7 @@ pub static DE: Tr = Tr {
877 account_line_single: "Konten werden über die Kommandozeile angelegt.",881 account_line_single: "Konten werden über die Kommandozeile angelegt.",
878 my_entries: "Meine Einträge",882 my_entries: "Meine Einträge",
879 my_entries_desc: "Erfasste Zeiten ansehen und korrigieren.",883 my_entries_desc: "Erfasste Zeiten ansehen und korrigieren.",
884+ manage_categories_desc: "Kategorien des Teams hinzufügen, umbenennen oder archivieren.",
880 team_name_label: "Teamname",885 team_name_label: "Teamname",
881 rename_team_note: "Der neue Name ist für alle Mitglieder sichtbar.",886 rename_team_note: "Der neue Name ist für alle Mitglieder sichtbar.",
882 members_of_pat: "Mitglieder von {}",887 members_of_pat: "Mitglieder von {}",
modified templates/settings.html +9 -1
@@ -27,7 +27,7 @@
2727 <p class="card-body">{{ account_line }}</p>
2828 </div>
2929
30-<a class="card times-link" href="/temps" style="margin-bottom:var(--space-6)">
30+<a class="card times-link" href="/temps" style="margin-bottom:var(--space-3)">
3131 <span style="flex:1">
3232 <span style="display:block;font-family:var(--font-heading);font-size:17px">{{ shell.tr.my_entries }}</span>
3333 <span style="display:block;font-size:13px;opacity:.7">{{ shell.tr.my_entries_desc }}</span>
@@ -35,6 +35,14 @@
3535 <svg width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.75" stroke-linecap="round" stroke-linejoin="round"><path d="M9 18l6-6-6-6"></path></svg>
3636 </a>
3737
38+<a class="card times-link" href="/parametres/categories" style="margin-bottom:var(--space-6)">
39+ <span style="flex:1">
40+ <span style="display:block;font-family:var(--font-heading);font-size:17px">{{ shell.tr.title_categories }}</span>
41+ <span style="display:block;font-size:13px;opacity:.7">{{ shell.tr.manage_categories_desc }}</span>
42+ </span>
43+ <svg width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.75" stroke-linecap="round" stroke-linejoin="round"><path d="M9 18l6-6-6-6"></path></svg>
44+</a>
45+
3846 <form method="post" action="/equipes/renommer">
3947 <input type="hidden" name="csrf" value="{{ csrf }}">
4048 <div class="field" style="margin-bottom:var(--space-2)">
@@ -27,7 +27,7 @@
27 <p class="card-body">{{ account_line }}</p>27 <p class="card-body">{{ account_line }}</p>
28 </div>28 </div>
29 29
30-<a class="card times-link" href="/temps" style="margin-bottom:var(--space-6)">30+<a class="card times-link" href="/temps" style="margin-bottom:var(--space-3)">
31 <span style="flex:1">31 <span style="flex:1">
32 <span style="display:block;font-family:var(--font-heading);font-size:17px">{{ shell.tr.my_entries }}</span>32 <span style="display:block;font-family:var(--font-heading);font-size:17px">{{ shell.tr.my_entries }}</span>
33 <span style="display:block;font-size:13px;opacity:.7">{{ shell.tr.my_entries_desc }}</span>33 <span style="display:block;font-size:13px;opacity:.7">{{ shell.tr.my_entries_desc }}</span>
@@ -35,6 +35,14 @@
35 <svg width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.75" stroke-linecap="round" stroke-linejoin="round"><path d="M9 18l6-6-6-6"></path></svg>35 <svg width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.75" stroke-linecap="round" stroke-linejoin="round"><path d="M9 18l6-6-6-6"></path></svg>
36 </a>36 </a>
37 37
38+<a class="card times-link" href="/parametres/categories" style="margin-bottom:var(--space-6)">
39+ <span style="flex:1">
40+ <span style="display:block;font-family:var(--font-heading);font-size:17px">{{ shell.tr.title_categories }}</span>
41+ <span style="display:block;font-size:13px;opacity:.7">{{ shell.tr.manage_categories_desc }}</span>
42+ </span>
43+ <svg width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.75" stroke-linecap="round" stroke-linejoin="round"><path d="M9 18l6-6-6-6"></path></svg>
44+</a>
45+
38 <form method="post" action="/equipes/renommer">46 <form method="post" action="/equipes/renommer">
39 <input type="hidden" name="csrf" value="{{ csrf }}">47 <input type="hidden" name="csrf" value="{{ csrf }}">
40 <div class="field" style="margin-bottom:var(--space-2)">48 <div class="field" style="margin-bottom:var(--space-2)">
modified templates/stats.html +1 -1
@@ -1,6 +1,6 @@
11 {% extends "app.html" %}
22 {% block content %}
3-<a class="btn btn-ghost" style="margin:0 0 var(--space-3);padding-left:0;font-size:13px" href="/temps">{{ shell.tr.my_entries_arrow }}</a>
3+<a class="btn btn-ghost" style="margin:0 0 var(--space-4);padding-left:0;font-size:16px;min-height:44px" href="/temps">{{ shell.tr.my_entries_arrow }}</a>
44 {% if !legend.is_empty() %}
55 <ul class="legend">
66 {% for item in legend %}
@@ -1,6 +1,6 @@
1 {% extends "app.html" %}1 {% extends "app.html" %}
2 {% block content %}2 {% block content %}
3-<a class="btn btn-ghost" style="margin:0 0 var(--space-3);padding-left:0;font-size:13px" href="/temps">{{ shell.tr.my_entries_arrow }}</a>3+<a class="btn btn-ghost" style="margin:0 0 var(--space-4);padding-left:0;font-size:16px;min-height:44px" href="/temps">{{ shell.tr.my_entries_arrow }}</a>
4 {% if !legend.is_empty() %}4 {% if !legend.is_empty() %}
5 <ul class="legend">5 <ul class="legend">
6 {% for item in legend %}6 {% for item in legend %}