Commit Graph

53 Commits

Author SHA1 Message Date
jeremy bayse
de6938d2e6 fix: bypass BelongsToTenant global scope when loading candidate quizzes on dashboard - candidates have no tenant_id 2026-04-14 19:20:20 +02:00
jeremy bayse
91213cc371 fix: sync quizzes unconditionally - was not removing quizzes when quiz_ids was empty 2026-04-14 19:15:15 +02:00
jeremy bayse
af4502859b fix: QuizInterface crash on undefined text_content - add null guards and safe optional chaining 2026-04-14 19:09:58 +02:00
jeremy bayse
107e2d0a1d design: darken nav bar elements for high contrast - Dashboard and NavLink text fix 2026-04-14 19:08:06 +02:00
jeremy bayse
71672509b6 design: fix candidate layout with full light theme, no dark mode dependencies, high contrast throughout 2026-04-14 19:06:17 +02:00
jeremy bayse
351bdda2a1 design: complete UI harmonization with full dark mode support and high contrast for candidate dashboard 2026-04-14 19:02:38 +02:00
jeremy bayse
21d4aaee59 design: premium candidate dashboard with high contrast and better layout 2026-04-14 18:59:09 +02:00
jeremy bayse
ec1fe91b35 feat: link quizzes to job positions and filter candidate dashboard accordingly 2026-04-14 18:30:13 +02:00
jeremy bayse
8c577cfaa7 fix: display flash messages on admin users index to show generated passwords 2026-04-14 18:24:44 +02:00
jeremy bayse
4a137fc511 feat: implement admin user management interface and routes for CRUD operations and password resets 2026-04-14 18:17:33 +02:00
jeremy bayse
e68108a2b1 feat: implement candidate details page with Chart.js radar visualization and AI analysis integration 2026-04-14 18:13:17 +02:00
jeremy bayse
4810ca9d9c feat: allow super admin to update candidate tenant on profile page 2026-03-30 17:03:20 +02:00
jeremy bayse
7ece2036c1 chore: track version in VERSION file and increment to 1.0.2 2026-03-29 11:52:41 +02:00
jeremy bayse
d0ecfa3e96 feat: add versioning system and display in footer (v1.0.1) 2026-03-29 11:52:08 +02:00
jeremy bayse
38fe4a22d6 feat: automatic tenant_id sync for candidates from job position 2026-03-29 11:25:53 +02:00
jeremy bayse
a3057aae6f fix: allow super_admin role on users table 2026-03-29 11:05:45 +02:00
jeremy bayse
2e423445f5 feat: add visual indicator for non-production environments 2026-03-29 10:55:52 +02:00
jeremy bayse
f53d5770df feat: multi-tenant SaaS implementation - admin interface, tenant isolation, and UI updates 2026-03-28 18:38:22 +01:00
jeremy bayse
7d94be7a8c feat: add app backup functionality for admins 2026-03-28 07:59:17 +01:00
jeremy bayse
03006051a9 UI: use modal for AI analysis errors 2026-03-25 19:19:30 +01:00
jeremy bayse
837bf367e9 AI Config: default to Gemini and filter providers by API key 2026-03-25 19:08:14 +01:00
jeremy bayse
7a05b7e6b3 AI Analysis: enforce 7-day rate limit per candidate 2026-03-25 19:02:26 +01:00
jeremy bayse
40c8aa2e5a UI: display AI provider used for analysis 2026-03-25 18:53:46 +01:00
jeremy bayse
30918870a2 AI Analysis: switch to gemini-2.5-flash based on diagnostics 2026-03-25 18:06:44 +01:00
jeremy bayse
5a8d9b494b AI Analysis: simplify Gemini request to fix payload errors 2026-03-25 18:04:29 +01:00
jeremy bayse
0a82bf5017 AI Analysis: fix Gemini payload formatting (use snake_case) 2026-03-25 18:03:14 +01:00
jeremy bayse
bee5215a5b AI Analysis: switch Gemini to v1 stable API 2026-03-25 07:53:40 +01:00
jeremy bayse
78245f2bee AI Analysis: add verbose logging for Gemini diagnostics 2026-03-25 07:52:56 +01:00
jeremy bayse
cd70edb483 AI Analysis: fix CSRF and use axios for reliability 2026-03-25 07:46:39 +01:00
jeremy bayse
4660c94869 AI Analysis: fix route method (switch to POST) 2026-03-25 07:42:57 +01:00
jeremy bayse
e3b1a2583f AI Analysis: add support for multiple providers (OpenAI, Claude, Gemini) 2026-03-25 07:29:39 +01:00
jeremy bayse
e02c6849fe AI Analysis: enable sorting on match score 2026-03-23 00:38:36 +01:00
jeremy bayse
10b866fc47 AI Analysis: manual tweaks by user 2026-03-23 00:11:55 +01:00
jeremy bayse
937857a842 AI Analysis: add custom AI prompt to job positions 2026-03-22 23:24:20 +01:00
jeremy bayse
949423b1ae AI Analysis: clean extracted text to prevent JSON encoding errors 2026-03-22 23:20:42 +01:00
jeremy bayse
e6df75c1ff AI Analysis: configurable model and increased timeout 2026-03-22 23:19:07 +01:00
jeremy bayse
de0392bbe7 AI Analysis: increase timeout to 120s and add logging 2026-03-22 23:18:32 +01:00
jeremy bayse
4459cbde69 AI Analysis: show match score on index and dashboard 2026-03-22 22:38:59 +01:00
jeremy bayse
26d723f239 AI Analysis: move section before notes 2026-03-22 22:34:44 +01:00
jeremy bayse
33fcdcac3d AI Analysis: persist analysis on candidate profile 2026-03-22 22:32:10 +01:00
jeremy bayse
6c1f6af523 AI Analysis: Service and UI implementation 2026-03-22 22:25:43 +01:00
jeremy bayse
878f4bb102 AI Analysis: JobPosition infrastructure and candidate association 2026-03-22 22:22:45 +01:00
jeremy bayse
2df0d6def0 Admin: manual scoring for open-ended questions 2026-03-22 22:06:12 +01:00
jeremy bayse
732d9416f4 Admin: candidate notes preview by default 2026-03-22 19:49:47 +01:00
jeremy bayse
7d03d52ae9 Dashboard: add top 10 candidates and update global scores 2026-03-22 18:44:10 +01:00
jeremy bayse
898b56c535 Ajout du score global et du tri dynamique dans la liste des candidats 2026-03-20 17:51:17 +01:00
jeremy bayse
5c2bcb0169 Ajustement des scores : test technique rapporté sur 20 et moyenne pondérée corrigée 2026-03-20 17:46:42 +01:00
jeremy bayse
ec75942a79 Mise à jour du logo et du nom de l'application (Recrut.IT) 2026-03-20 16:16:19 +01:00
jeremy bayse
abe9940a1c Update middleware configuration and clear cache 2026-03-20 11:16:49 +01:00
jeremy bayse
eeb8d53752 Support Markdown avec guide de syntaxe pour les notes d'entretien 2026-03-20 11:06:14 +01:00