mirror of
https://github.com/DRYTRIX/TimeTracker.git
synced 2026-01-14 07:50:18 -06:00
models/user: add nullable full_name and display_name property (fallback to username) migrations: add 002_add_user_full_name to introduce users.full_name auth/profile: show and allow editing full_name; persist on POST templates: use display_name across navbar, dashboard greeting, tasks (list/view/edit/my/overdue), projects view, reports (user/project), invoices (creator and generate-from-time), and admin (dashboard/users) keep username where appropriate (e.g., read-only admin form field) reports: aggregate/group by display_name in summaries CSV export writes display_name instead of username projects: get_user_totals returns display names when available main/dashboard: replace inline Jinja in script with data attribute flag to satisfy linter tasks/view: remove Jinja desc() usage; iterate over pre-ordered time_entries from route and slice to 5 fixes jinja2 UndefinedError: 'desc' is undefined