feat: implémenter système Todo complet avec bouton segmenté sidebar (bookmark/note/todo), toggle Todo dans formulaire édition avec gestion émoji ✅ automatique, masquage champ URL pour notes/todos, tag shaarli-todo unifié (remplacement todo), déduplication tags case-insensitive, correction tag archive (shaarli-archiver→shaarli-archive), ajout shaarli-todo aux tags cachés par défaut, styles bouton segmenté avec gradient bleu et hover states, et support responsive mobile avec masquage tex

This commit is contained in:
2026-02-20 16:33:40 -05:00
parent adb2564153
commit fb5254445f
7 changed files with 167 additions and 15 deletions
+13 -6
View File
@@ -49,7 +49,7 @@ Bookmarklet detection logic
<i class="mdi mdi-calendar-today" aria-hidden="true"></i>
<span>Quotidien</span>
</a>
<a href="{$base_path}/?searchtags=todo" class="sidebar-link{if="isset($search_tags) && preg_match('/(^|[\s,])todo([\s,]|$)/i', (string) $search_tags)"} active{/if}" aria-label="Mes tâches">
<a href="{$base_path}/?searchtags=shaarli-todo" class="sidebar-link{if="isset($search_tags) && preg_match('/(^|[\s,])shaarli-todo([\s,]|$)/i', (string) $search_tags)"} active{/if}" aria-label="Mes tâches">
<i class="mdi mdi-check-circle-outline" aria-hidden="true"></i>
<span>Mes tâches</span>
</a>
@@ -86,10 +86,17 @@ Bookmarklet detection logic
<div class="sidebar-footer">
{if="$is_logged_in"}
<a href="{$base_path}/admin/add-shaare" class="sidebar-add-btn" aria-label="Nouveau bookmark">
<i class="mdi mdi-plus" aria-hidden="true"></i>
<span>Nouveau bookmark</span>
</a>
<div class="sidebar-add-segmented">
<a href="{$base_path}/admin/add-shaare" class="sidebar-add-segment" title="Bookmark">
<i class="mdi mdi-bookmark-outline"></i>
</a>
<a href="{$base_path}/admin/shaare?tags=note" class="sidebar-add-segment" title="Note">
<i class="mdi mdi-note-text-outline"></i>
</a>
<a href="{$base_path}/admin/shaare?post=http%3A%2F%2Fshaarli-todo&tags=shaarli-todo&title=%E2%9C%85%20" class="sidebar-add-segment" title="Todo">
<i class="mdi mdi-check-circle-outline"></i>
</a>
</div>
{/if}
<div class="theme-toggle-wrapper">
@@ -147,7 +154,7 @@ Bookmarklet detection logic
<i class="mdi mdi-calendar" aria-hidden="true"></i>
<span>QUOTIDIEN</span>
</a>
<a href="{$base_path}/?searchtags=todo" class="header-nav-link{if="isset($search_tags) && preg_match('/(^|[\s,])todo([\s,]|$)/i', (string) $search_tags)"} active{/if}" aria-label="Mes tâches">
<a href="{$base_path}/?searchtags=shaarli-todo" class="header-nav-link{if="isset($search_tags) && preg_match('/(^|[\s,])shaarli-todo([\s,]|$)/i', (string) $search_tags)"} active{/if}" aria-label="Mes tâches">
<i class="mdi mdi-check-circle-outline" aria-hidden="true"></i>
<span>TÂCHES</span>
</a>