diff --git a/lib/core/constants/urls.dart b/lib/core/constants/urls.dart index 6d3a25b..7e3175c 100644 --- a/lib/core/constants/urls.dart +++ b/lib/core/constants/urls.dart @@ -1,5 +1,5 @@ class Urls { - static const String baseUrl = 'http://192.168.0.145:8085'; + static const String baseUrl = 'http://192.168.1.145:8085'; // static const String login = baseUrl + 'auth/login'; static const String eventsUrl = '$baseUrl/events'; // Ajoute d'autres URLs ici diff --git a/lib/core/utils/date_formatter.dart b/lib/core/utils/date_formatter.dart new file mode 100644 index 0000000..bf0f3ef --- /dev/null +++ b/lib/core/utils/date_formatter.dart @@ -0,0 +1,7 @@ +import 'package:intl/intl.dart'; + +class DateFormatter { + static String formatDate(DateTime date) { + return DateFormat('EEEE dd MMMM yyyy', 'fr_FR').format(date); + } +} diff --git a/lib/main.dart b/lib/main.dart index abbb2d4..3bf4ed3 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,15 +1,19 @@ -import 'package:flutter/material.dart'; import 'package:afterwork/config/router.dart'; import 'package:afterwork/data/datasources/event_remote_data_source.dart'; import 'package:afterwork/data/providers/user_provider.dart'; -import 'package:afterwork/data/services/secure_storage.dart'; import 'package:afterwork/data/services/preferences_helper.dart'; +import 'package:afterwork/data/services/secure_storage.dart'; +import 'package:flutter/material.dart'; import 'package:http/http.dart' as http; +import 'package:intl/date_symbol_data_local.dart'; import 'package:provider/provider.dart'; void main() async { WidgetsFlutterBinding.ensureInitialized(); + // Initialisez le formatage de la date pour la locale française + await initializeDateFormatting('fr_FR', null); + final eventRemoteDataSource = EventRemoteDataSource(http.Client()); // Remplacez ici par l'utilisation du stockage sécurisé ou des préférences @@ -21,7 +25,8 @@ void main() async { String? userLastName = await preferencesHelper.getUserLastName(); // Si les valeurs sont nulles, vous pouvez définir des valeurs par défaut ou gérer autrement - userId ??= 'default_user_id'; // Remplacer par une valeur par défaut si nécessaire + userId ??= + 'default_user_id'; // Remplacer par une valeur par défaut si nécessaire userName ??= 'Default'; userLastName ??= 'User'; @@ -52,7 +57,8 @@ class MyApp extends StatelessWidget { return MultiProvider( providers: [ ChangeNotifierProvider( - create: (_) => UserProvider()..setUser(userId, userName, userLastName), + create: (_) => + UserProvider()..setUser(userId, userName, userLastName), ), // Ajouter d'autres providers ici si nécessaire ], diff --git a/lib/presentation/screens/event/event_card.dart b/lib/presentation/screens/event/event_card.dart index f1cd88d..2feba24 100644 --- a/lib/presentation/screens/event/event_card.dart +++ b/lib/presentation/screens/event/event_card.dart @@ -1,6 +1,8 @@ import 'package:flutter/material.dart'; import 'package:afterwork/data/datasources/event_remote_data_source.dart'; +import '../../../core/utils/date_formatter.dart'; + /// Widget pour afficher une carte d'événement. /// Cette classe est utilisée pour afficher les détails d'un événement, /// incluant son titre, sa description, son image, et des actions possibles @@ -157,6 +159,11 @@ class EventCard extends StatelessWidget { Widget _buildHeader(BuildContext context) { // Log du rendu de l'en-tête de la carte print('Rendu de l\'en-tête pour l\'événement $eventId'); + // Convertir la date `datePosted` en DateTime si ce n'est pas déjà fait + DateTime dateTimePosted = DateTime.parse(datePosted); + + // Utiliser le DateFormatter pour formater la date + String formattedDate = DateFormatter.formatDate(dateTimePosted); return Row( children: [ @@ -180,7 +187,7 @@ class EventCard extends StatelessWidget { Row( children: [ Text( - datePosted, + formattedDate, style: const TextStyle(color: Colors.white70, fontSize: 14), ), const SizedBox(width: 10), diff --git a/pubspec.lock b/pubspec.lock index dbcd41d..1790079 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -288,6 +288,14 @@ packages: url: "https://pub.dev" source: hosted version: "4.0.2" + intl: + dependency: "direct main" + description: + name: intl + sha256: "3bc132a9dbce73a7e4a21a17d06e1878839ffbf975568bc875c60537824b0c4d" + url: "https://pub.dev" + source: hosted + version: "0.18.1" js: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 8b933de..94a73d3 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: flutter: sdk: flutter - + intl: ^0.18.0 fluttertoast: ^8.0.8 flutter_secure_storage: ^7.0.1 crypto: ^3.0.1