feat: ajout de la configuration des émulateurs Firebase et mise à jour des services pour utiliser le backend sécurisé
This commit is contained in:
@@ -7,9 +7,16 @@ import 'dart:convert';
|
||||
import 'package:em2rp/models/event_model.dart';
|
||||
import 'package:em2rp/models/event_type_model.dart';
|
||||
import 'package:em2rp/models/user_model.dart';
|
||||
import 'package:em2rp/services/api_service.dart';
|
||||
import 'dart:developer' as developer;
|
||||
|
||||
class EventFormService {
|
||||
static final ApiService _apiService = apiService;
|
||||
|
||||
// ============================================================================
|
||||
// READ Operations - Utilise Firestore (peut rester en lecture directe)
|
||||
// ============================================================================
|
||||
|
||||
static Future<List<EventTypeModel>> fetchEventTypes() async {
|
||||
developer.log('Fetching event types from Firestore...', name: 'EventFormService');
|
||||
try {
|
||||
@@ -33,6 +40,10 @@ class EventFormService {
|
||||
}
|
||||
}
|
||||
|
||||
// ============================================================================
|
||||
// STORAGE - Reste inchangé (déjà via Cloud Function)
|
||||
// ============================================================================
|
||||
|
||||
static Future<List<Map<String, String>>> uploadFiles(List<PlatformFile> files) async {
|
||||
List<Map<String, String>> uploadedFiles = [];
|
||||
|
||||
@@ -90,14 +101,39 @@ class EventFormService {
|
||||
}
|
||||
}
|
||||
|
||||
// ============================================================================
|
||||
// CRUD Operations - Utilise le backend sécurisé
|
||||
// ============================================================================
|
||||
|
||||
static Future<String> createEvent(EventModel event) async {
|
||||
final docRef = await FirebaseFirestore.instance.collection('events').add(event.toMap());
|
||||
return docRef.id;
|
||||
try {
|
||||
final result = await _apiService.call('createEvent', event.toMap());
|
||||
return result['id'] as String;
|
||||
} catch (e) {
|
||||
developer.log('Error creating event', name: 'EventFormService', error: e);
|
||||
rethrow;
|
||||
}
|
||||
}
|
||||
|
||||
static Future<void> updateEvent(EventModel event) async {
|
||||
final docRef = FirebaseFirestore.instance.collection('events').doc(event.id);
|
||||
await docRef.update(event.toMap());
|
||||
try {
|
||||
await _apiService.call('updateEvent', {
|
||||
'eventId': event.id,
|
||||
'data': event.toMap(),
|
||||
});
|
||||
} catch (e) {
|
||||
developer.log('Error updating event', name: 'EventFormService', error: e);
|
||||
rethrow;
|
||||
}
|
||||
}
|
||||
|
||||
static Future<void> deleteEvent(String eventId) async {
|
||||
try {
|
||||
await _apiService.call('deleteEvent', {'eventId': eventId});
|
||||
} catch (e) {
|
||||
developer.log('Error deleting event', name: 'EventFormService', error: e);
|
||||
rethrow;
|
||||
}
|
||||
}
|
||||
|
||||
static Future<List<Map<String, String>>> moveFilesToEvent(
|
||||
|
||||
Reference in New Issue
Block a user