✨ Nouvelles fonctionnalités: - Ajout du mode terrain pour utilisation mobile hors connexion - Génération automatique de reçus PDF avec template personnalisé - Révision complète du système de cartes avec amélioration des performances 🔧 Améliorations techniques: - Refactoring du module chat avec architecture simplifiée - Optimisation du système de sécurité NIST SP 800-63B - Amélioration de la gestion des secteurs géographiques - Support UTF-8 étendu pour les noms d'utilisateurs 📱 Application mobile: - Nouveau mode terrain dans user_field_mode_page - Interface utilisateur adaptative pour conditions difficiles - Synchronisation offline améliorée 🗺️ Cartographie: - Optimisation des performances MapBox - Meilleure gestion des tuiles hors ligne - Amélioration de l'affichage des secteurs 📄 Documentation: - Ajout guide Android (ANDROID-GUIDE.md) - Documentation sécurité API (API-SECURITY.md) - Guide module chat (CHAT_MODULE.md) 🐛 Corrections: - Résolution des erreurs 400 lors de la création d'utilisateurs - Correction de la validation des noms d'utilisateurs - Fix des problèmes de synchronisation chat 🤖 Generated with Claude Code (https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
35 lines
1.3 KiB
SQL
35 lines
1.3 KiB
SQL
-- Migration pour supporter les usernames UTF-8 avec jusqu'à 30 caractères
|
|
-- Date : 2025-01-17
|
|
-- Objectif : Permettre des usernames plus souples (émojis, accents, espaces, etc.)
|
|
|
|
-- IMPORTANT : Faire une sauvegarde avant d'exécuter ce script !
|
|
-- mysqldump -u root -p geo_app > backup_geo_app_$(date +%Y%m%d).sql
|
|
|
|
-- Augmenter la taille de la colonne encrypted_user_name pour supporter
|
|
-- les usernames UTF-8 de 30 caractères maximum une fois chiffrés
|
|
-- Un username de 30 caractères UTF-8 peut faire jusqu'à 120 octets
|
|
-- Après chiffrement AES-256-CBC + base64, cela peut atteindre ~200 caractères
|
|
|
|
ALTER TABLE `users`
|
|
MODIFY COLUMN `encrypted_user_name` varchar(255) DEFAULT ''
|
|
COMMENT 'Username chiffré - Supporte UTF-8 30 caractères maximum';
|
|
|
|
-- Vérifier que la modification a bien été appliquée
|
|
SELECT
|
|
COLUMN_NAME,
|
|
COLUMN_TYPE,
|
|
CHARACTER_MAXIMUM_LENGTH,
|
|
COLUMN_COMMENT
|
|
FROM
|
|
INFORMATION_SCHEMA.COLUMNS
|
|
WHERE
|
|
TABLE_SCHEMA = DATABASE()
|
|
AND TABLE_NAME = 'users'
|
|
AND COLUMN_NAME = 'encrypted_user_name';
|
|
|
|
-- Note : Les nouvelles règles de validation des usernames sont :
|
|
-- - Minimum : 8 caractères UTF-8
|
|
-- - Maximum : 30 caractères UTF-8
|
|
-- - Accepte TOUS les caractères (lettres, chiffres, espaces, émojis, accents, etc.)
|
|
-- - Trim automatique des espaces en début/fin
|
|
-- - Unicité vérifiée dans toute la base |