41 Commits

Author SHA1 Message Date
Adrien Ufferte 5bba77c8ea Show a specific error message for each language pack failure
All failure paths of the download/extract/swap flow displayed the same
generic ERROR_DOWNLOADING popup, which made user reports impossible to
map to an actual cause (the recent .DS_Store swap failure surfaced as a
plain "download error" even though the download and extraction had both
succeeded).

- Replace the magic error indices with a DownloadError enum, so call
  sites read _show_error(DownloadError.REPLACE_FAILED) instead of
  _show_error(2) with a comment.
- Add three specific messages with fr/es/pt_BR/it translations:
  - ERROR_EXTRACTING_PACKAGE: archive missing or extraction failed
  - ERROR_INVALID_PACKAGE: extracted pack failed the validity check
    (kept distinct from INVALID_LANGUAGE_DIRECTORY, which describes the
    local pack found while offline)
  - ERROR_REPLACING_PACKAGE: previous pack could not be removed or the
    new one could not be renamed into place; tells the user to restart
    and retry rather than suggesting a download problem
- ERROR_DOWNLOADING is now used only for actual download/server
  failures.

Localization completeness check, naming lint and GUT suite (65/65) all
pass.
2026-06-11 10:23:14 +02:00
Adrien Ufferte 5797c040d7 Make login error readable for frontend/backend 2026-04-20 09:32:07 +02:00
Adrien Ufferte 790260e2fd Add CHANGE_LANGUAGE feature to teacher settings
Reorders the left sidebar so risky actions sit at the bottom with a gap:
Dashboard, Synchronize, Logout | Change Language (red), Delete Account.

The new Change Language button opens a warning popup with a language
dropdown. On confirm, if the selected locale differs from the current
one, the client calls POST /reset_language. On success it wipes the
local teacher folder (progression, remediation, confusion matrix…),
applies the new language to device and teacher settings, logs out and
reloads from the splash screen. On error the user sees an error popup
and nothing local changes.
2026-04-17 16:38:00 +02:00
Adrien Ufferte c6f7ef833d Cleaning 2026-04-17 10:10:58 +02:00
Adrien Ufferte 153c758b04 Fix password reset feedback and UX
- Disable reset button while awaiting server response to prevent duplicate requests
- Show CHECK_YOUR_EMAIL message on success (was previously only logged, never shown)
- Show RESET_PASSWORD_FAILED message on failure instead of incorrectly showing CHECK_YOUR_EMAIL
- Re-enable the reset button only on failure so the user can try again
- Add RESET_PASSWORD_FAILED localization key in all supported languages (fr, es, pt_BR, it)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-03 13:07:22 +01:00
Adrien Ufferte c43aae2bb1 Merge pull request #259 from Excello-Recherche-Education/yudita-feedbacks
General feedbacks
2026-02-26 10:37:56 +01:00
Adrien Ufferte 3e49444f5e Merge branch '3.0.0' into melina-feedbacks 2026-02-26 10:29:23 +01:00
Adrien Ufferte 8fd9c58738 Enhance registration "Method" step 2026-02-24 13:18:09 +01:00
Adrien Ufferte a8abf8a0c5 More translation corrections 2026-02-23 15:37:43 +01:00
Adrien Ufferte 33522ddb9c I18n 2026-02-23 15:26:45 +01:00
Adrien Ufferte 2f7d310a05 I18n 2026-02-23 15:18:09 +01:00
Adrien Ufferte d127328319 Add italian language 2026-02-13 11:06:09 +01:00
Adrien Ufferte e7ef6f9e48 Add "clear" option for local data 2026-02-05 11:08:12 +01:00
Adrien Ufferte 595a2121df Export students codes to PDF 2026-01-26 10:20:21 +01:00
Adrien Ufferte fc3589da80 Adult check for boss defeat 2026-01-19 10:21:34 +01:00
Adrien Ufferte 73eb1cd413 Add newline at end of translation file 2026-01-09 15:21:49 +01:00
Adrien Ufferte 3bde3f8a8f Log rotation + log threshold slicing for internal memory 2026-01-09 14:50:22 +01:00
Adrien Ufferte d2bdc996c0 Reset password 2025-12-09 14:58:49 +01:00
Adrien Ufferte 1b14da080e New logic flow 2025-11-21 16:06:48 +01:00
Adrien Ufferte 64a74783ea Dashboard button in teacher settings 2025-08-28 11:00:53 +02:00
Adrien Ufferte ed06c087b0 Spelling mistake 2025-07-11 15:05:14 +02:00
Adrien Ufferte 1600884e76 Multiple localisation corrections 2025-06-05 15:18:00 +02:00
Adrien Ufferte 50f6b4335a Data Synchronization in bulk
+ Allow connecting/playing offline
+ Clean asset name nomenclature
+ Debug asset name nomenclature when loading files
2025-06-05 11:18:22 +02:00
Adrien Ufferte 53a5ae94bf Translation update + clean code 2025-05-27 11:45:13 +02:00
Adrien Ufferte 976d96d814 Debug translation file encoding 2025-05-27 10:59:17 +02:00
Adrien Ufferte ca99391868 Synchronize user data between local and server 2025-05-22 17:00:43 +02:00
Adrien Ufferte 5899591de1 Add new explicit error messages and clean localization file 2025-05-21 09:11:27 +02:00
Dylan Sarrazyn 6c478b2d79 Update version 2025-02-25 11:11:08 +01:00
Dylan Sarrazyn 4a88adec2c Adds Brazilian portuguese to the locales list. Adds brazilian portuguese localization for the texts of the application. Tweaks of the labels of the stimuli in the minigames. 2025-02-03 15:55:23 +01:00
Dylan Sarrazyn c36f44749c Revamp of the login screen and the device selection. 2024-12-05 12:35:29 +01:00
Dylan Sarrazyn 9d5b2dd4c5 Fixes the register recap step. Blocks the access on the main screen when not logged in without internet. Adds popups on the main screen and the package downloader screen 2024-11-06 16:57:00 +01:00
Dylan Sarrazyn 4ff2d028e5 Adds the delete account feature to the teacher settings. 2024-11-05 16:55:39 +01:00
Dylan Sarrazyn 08729737fa Updates localization files. Fixes a bug on the teacher login screen that prevented to select a device id greater than 6. 2024-10-31 11:56:17 +01:00
Dylan Sarrazyn c7cce82872 Fully integrate the versionning of the language packs in the app. Handles offline users with an already downloaded pack. Updates the package downloader scene. 2024-10-02 13:22:24 +02:00
Dylan Sarrazyn f3e8276a2c Update the lesson unlocks in the teacher settings. Improve the tracing of the look and learn. Fix a bug in the words minigame
Updates teacher settings. Removes Android folder
2024-10-01 10:00:28 +02:00
Dylan Sarrazyn 056030306f Adds general conditions to the translation files 2024-09-12 11:39:35 +02:00
Dylan Sarrazyn 225942864d Updates package downloader. Fix a bug in the tracing manager that showed letters without tracing data. 2024-09-11 10:02:31 +02:00
Dylan Sarrazyn 76d1520b48 Adds a popup when registration fails. Clean up. 2024-09-03 16:58:36 +02:00
Dylan Sarrazyn 2947d814f4 Updates translations files. Fixes the Vulkan rendering bug of clip by using canvasgroup for now. 2024-07-17 12:17:43 +02:00
Dylan Sarrazyn 80d58283b7 Adds localization to the register scene and the settings. 2024-07-11 11:58:24 +02:00
Dylan Sarrazyn ee4f8dac14 Adds localization to main menu, adult check and package downloader. 2024-07-10 16:38:49 +02:00