Commit Graph

  • 174f229b5d Fix layout stability: sticky sidebar in Show and sticky filters in Index with layout height correction SAAS jeremy bayse 2026-04-21 06:50:32 +02:00
  • 2216de1a02 Refactoring AI candidate analysis: UI improvements, data normalization, provider management and real-time score clamping jeremy bayse 2026-04-21 06:41:37 +02:00
  • abfe01190b feat: add AI service configuration and candidate dossier PDF template jeremy bayse 2026-04-19 21:44:49 +02:00
  • d924765b94 feat(ai): refactor AI prompts and add bypass option to Job Positions jeremy bayse 2026-04-19 21:24:56 +02:00
  • 205c24182d feat: implementation des logs de connexion et correction du chemin de stockage des documents jeremy bayse 2026-04-19 17:28:13 +02:00
  • f3d630d741 feat: implementation des dossiers candidats PDF, gestion des entretiens et optimisation de l'analyse IA jeremy bayse 2026-04-19 15:35:16 +02:00
  • 4017e3d9c5 feat(ai): optimize candidate analysis and implement batch processing jeremy bayse 2026-04-19 08:28:28 +02:00
  • b728686605 docs: generate comprehensive README.md with project features jeremy bayse 2026-04-18 08:41:55 +02:00
  • 589e9956f9 UI: lock application to light mode globally (disabled dark mode detection) main jeremy bayse 2026-04-16 19:16:48 +02:00
  • d6e5b44e47 Admin: implementation of the 'is_selected' feature for candidates for interviews jeremy bayse 2026-04-16 19:08:52 +02:00
  • c4ab5c97b2 Admin: Super Admin can bypass the 7-day AI analysis restriction jeremy bayse 2026-04-16 18:55:53 +02:00
  • 84a9c6bb14 Fix: New registered candidates visibility (profile creation and tenant scope adjustment) jeremy bayse 2026-04-16 18:31:23 +02:00
  • 957947cc0b fix: quiz questions not showing - reload quiz freshly in show(), fix v-if guard in QuizInterface jeremy bayse 2026-04-14 19:55:05 +02:00
  • 6e4eb62553 fix: bypass tenant scope in AttemptController::destroy - null quiz title caused 500 when admin deletes attempt jeremy bayse 2026-04-14 19:51:06 +02:00
  • c74d8e14ec fix: null quiz crash in admin candidate show - load attempts.quiz withoutGlobalScopes + null guard in Vue template jeremy bayse 2026-04-14 19:49:12 +02:00
  • e93a17f324 refactor: fix BelongsToTenant trait to exempt candidates globally - removes all withoutGlobalScopes() workarounds jeremy bayse 2026-04-14 19:38:42 +02:00
  • 49ee91c601 fix: bypass tenant scope in recalculateScore - null quiz when candidate finishes quiz jeremy bayse 2026-04-14 19:35:26 +02:00
  • 479a7e35d1 fix: bypass tenant scope in AttemptController::show - candidates (no tenant_id) were getting 404 on quiz start jeremy bayse 2026-04-14 19:24:29 +02:00
  • de6938d2e6 fix: bypass BelongsToTenant global scope when loading candidate quizzes on dashboard - candidates have no tenant_id jeremy bayse 2026-04-14 19:20:20 +02:00
  • 91213cc371 fix: sync quizzes unconditionally - was not removing quizzes when quiz_ids was empty jeremy bayse 2026-04-14 19:15:15 +02:00
  • af4502859b fix: QuizInterface crash on undefined text_content - add null guards and safe optional chaining jeremy bayse 2026-04-14 19:09:58 +02:00
  • 107e2d0a1d design: darken nav bar elements for high contrast - Dashboard and NavLink text fix jeremy bayse 2026-04-14 19:08:06 +02:00
  • 71672509b6 design: fix candidate layout with full light theme, no dark mode dependencies, high contrast throughout jeremy bayse 2026-04-14 19:06:17 +02:00
  • 351bdda2a1 design: complete UI harmonization with full dark mode support and high contrast for candidate dashboard jeremy bayse 2026-04-14 19:02:38 +02:00
  • 21d4aaee59 design: premium candidate dashboard with high contrast and better layout jeremy bayse 2026-04-14 18:59:09 +02:00
  • ec1fe91b35 feat: link quizzes to job positions and filter candidate dashboard accordingly jeremy bayse 2026-04-14 18:30:13 +02:00
  • 8c577cfaa7 fix: display flash messages on admin users index to show generated passwords jeremy bayse 2026-04-14 18:24:44 +02:00
  • 4a137fc511 feat: implement admin user management interface and routes for CRUD operations and password resets jeremy bayse 2026-04-14 18:17:33 +02:00
  • e68108a2b1 feat: implement candidate details page with Chart.js radar visualization and AI analysis integration jeremy bayse 2026-04-14 18:13:17 +02:00
  • 4810ca9d9c feat: allow super admin to update candidate tenant on profile page jeremy bayse 2026-03-30 17:03:20 +02:00
  • 7ece2036c1 chore: track version in VERSION file and increment to 1.0.2 jeremy bayse 2026-03-29 11:52:41 +02:00
  • d0ecfa3e96 feat: add versioning system and display in footer (v1.0.1) jeremy bayse 2026-03-29 11:52:08 +02:00
  • 38fe4a22d6 feat: automatic tenant_id sync for candidates from job position jeremy bayse 2026-03-29 11:25:53 +02:00
  • a3057aae6f fix: allow super_admin role on users table jeremy bayse 2026-03-29 11:05:45 +02:00
  • 2e423445f5 feat: add visual indicator for non-production environments jeremy bayse 2026-03-29 10:55:52 +02:00
  • f53d5770df feat: multi-tenant SaaS implementation - admin interface, tenant isolation, and UI updates jeremy bayse 2026-03-28 18:38:22 +01:00
  • 7d94be7a8c feat: add app backup functionality for admins jeremy bayse 2026-03-28 07:59:17 +01:00
  • 03006051a9 UI: use modal for AI analysis errors jeremy bayse 2026-03-25 19:19:30 +01:00
  • 837bf367e9 AI Config: default to Gemini and filter providers by API key jeremy bayse 2026-03-25 19:08:14 +01:00
  • 7a05b7e6b3 AI Analysis: enforce 7-day rate limit per candidate jeremy bayse 2026-03-25 19:02:26 +01:00
  • 40c8aa2e5a UI: display AI provider used for analysis jeremy bayse 2026-03-25 18:53:46 +01:00
  • 30918870a2 AI Analysis: switch to gemini-2.5-flash based on diagnostics jeremy bayse 2026-03-25 18:06:44 +01:00
  • 5a8d9b494b AI Analysis: simplify Gemini request to fix payload errors jeremy bayse 2026-03-25 18:04:29 +01:00
  • 0a82bf5017 AI Analysis: fix Gemini payload formatting (use snake_case) jeremy bayse 2026-03-25 18:03:14 +01:00
  • bee5215a5b AI Analysis: switch Gemini to v1 stable API jeremy bayse 2026-03-25 07:53:40 +01:00
  • 78245f2bee AI Analysis: add verbose logging for Gemini diagnostics jeremy bayse 2026-03-25 07:52:56 +01:00
  • cd70edb483 AI Analysis: fix CSRF and use axios for reliability jeremy bayse 2026-03-25 07:46:39 +01:00
  • 4660c94869 AI Analysis: fix route method (switch to POST) jeremy bayse 2026-03-25 07:42:57 +01:00
  • e3b1a2583f AI Analysis: add support for multiple providers (OpenAI, Claude, Gemini) jeremy bayse 2026-03-25 07:29:39 +01:00
  • e02c6849fe AI Analysis: enable sorting on match score jeremy bayse 2026-03-23 00:38:36 +01:00
  • 10b866fc47 AI Analysis: manual tweaks by user jeremy bayse 2026-03-23 00:11:55 +01:00
  • 937857a842 AI Analysis: add custom AI prompt to job positions feature/ai-analysis jeremy bayse 2026-03-22 23:24:20 +01:00
  • 949423b1ae AI Analysis: clean extracted text to prevent JSON encoding errors jeremy bayse 2026-03-22 23:20:42 +01:00
  • e6df75c1ff AI Analysis: configurable model and increased timeout jeremy bayse 2026-03-22 23:19:07 +01:00
  • de0392bbe7 AI Analysis: increase timeout to 120s and add logging jeremy bayse 2026-03-22 23:18:32 +01:00
  • 4459cbde69 AI Analysis: show match score on index and dashboard jeremy bayse 2026-03-22 22:38:59 +01:00
  • 26d723f239 AI Analysis: move section before notes jeremy bayse 2026-03-22 22:34:44 +01:00
  • 33fcdcac3d AI Analysis: persist analysis on candidate profile jeremy bayse 2026-03-22 22:32:10 +01:00
  • 6c1f6af523 AI Analysis: Service and UI implementation jeremy bayse 2026-03-22 22:25:43 +01:00
  • 878f4bb102 AI Analysis: JobPosition infrastructure and candidate association jeremy bayse 2026-03-22 22:22:45 +01:00
  • 2df0d6def0 Admin: manual scoring for open-ended questions jeremy bayse 2026-03-22 22:06:12 +01:00
  • 732d9416f4 Admin: candidate notes preview by default jeremy bayse 2026-03-22 19:49:47 +01:00
  • 7d03d52ae9 Dashboard: add top 10 candidates and update global scores jeremy bayse 2026-03-22 18:44:10 +01:00
  • 898b56c535 Ajout du score global et du tri dynamique dans la liste des candidats jeremy bayse 2026-03-20 17:51:17 +01:00
  • 5c2bcb0169 Ajustement des scores : test technique rapporté sur 20 et moyenne pondérée corrigée jeremy bayse 2026-03-20 17:46:42 +01:00
  • ec75942a79 Mise à jour du logo et du nom de l'application (Recrut.IT) jeremy bayse 2026-03-20 16:16:19 +01:00
  • abe9940a1c Update middleware configuration and clear cache jeremy bayse 2026-03-20 11:16:49 +01:00
  • eeb8d53752 Support Markdown avec guide de syntaxe pour les notes d'entretien jeremy bayse 2026-03-20 11:06:14 +01:00
  • 27200a6839 Ajout de la section notes d'entretien pour les candidats jeremy bayse 2026-03-20 10:10:24 +01:00
  • 3019aa1229 Ajout de la commande make:admin jeremy bayse 2026-03-20 09:15:25 +01:00
  • a55a33ae2a Initial commit jeremy bayse 2026-03-20 08:25:58 +01:00