diff --git a/covas_mobile/lib/classes/descriptionImage.dart b/covas_mobile/lib/classes/addEventImage.dart similarity index 100% rename from covas_mobile/lib/classes/descriptionImage.dart rename to covas_mobile/lib/classes/addEventImage.dart diff --git a/covas_mobile/lib/classes/getEventImage.dart b/covas_mobile/lib/classes/getEventImage.dart new file mode 100644 index 0000000..6144171 --- /dev/null +++ b/covas_mobile/lib/classes/getEventImage.dart @@ -0,0 +1,67 @@ +import 'package:flutter/material.dart'; +import 'events.dart'; +import '../variable/globals.dart' as globals; +import 'package:http/http.dart' as http; +import 'dart:io'; +import 'dart:convert'; + +import 'package:shared_preferences/shared_preferences.dart'; + +mixin ShowDescImageGet on State { + Future getEvents(var events) async { + SharedPreferences prefs = await SharedPreferences.getInstance(); + var accessToken = prefs.getString("access_token") ?? ""; + List send = ["toto"]; + + if (accessToken.isNotEmpty) { + var urlPut = Uri.parse("${globals.api}/events"); + print("start date : ${events["start_date"]}"); + var responsePut = await http.put(urlPut, + headers: { + HttpHeaders.cookieHeader: 'access_token=${accessToken}', + HttpHeaders.acceptHeader: 'application/json, text/plain, */*', + HttpHeaders.contentTypeHeader: 'application/json' + }, + body: jsonEncode({ + 'name': events["name"], + 'place': events["place"], + 'start_date': events['date'], + 'end_date': events['date'], + 'organizers': send, + 'latitude': '0.0', + 'longitude': '0.0', + })); + + print("http put code status : ${responsePut.statusCode}"); + print("http put body : ${responsePut.body}"); + } + } + + void showDescImageUpdateDialog(BuildContext context, var events) { + // Create AlertDialog + String name = events['name']; + AlertDialog dialog = AlertDialog( + title: Text("Voir la description de l'evenement"), + content: Text("${name} a été trouvé. Voulez-vous voir sa description ? "), + actions: [ + TextButton( + child: Text("Annuler"), + onPressed: () { + Navigator.of(context).pop("Yes, Of course!"); // Return value + }), + TextButton( + child: Text("Oui"), + onPressed: () { + getEvents(events); // Return value + }), + ], + ); + + // Call showDialog function to show dialog. + Future futureValue = showDialog( + context: context, + builder: (BuildContext context) { + return dialog; + }); + } +} diff --git a/covas_mobile/lib/classes/updateEventImage.dart b/covas_mobile/lib/classes/updateEventImage.dart new file mode 100644 index 0000000..33804df --- /dev/null +++ b/covas_mobile/lib/classes/updateEventImage.dart @@ -0,0 +1,67 @@ +import 'package:flutter/material.dart'; +import 'events.dart'; +import '../variable/globals.dart' as globals; +import 'package:http/http.dart' as http; +import 'dart:io'; +import 'dart:convert'; + +import 'package:shared_preferences/shared_preferences.dart'; + +mixin ShowDescImageUpdate on State { + Future updateEvents(var events) async { + SharedPreferences prefs = await SharedPreferences.getInstance(); + var accessToken = prefs.getString("access_token") ?? ""; + List send = ["toto"]; + + if (accessToken.isNotEmpty) { + var urlPut = Uri.parse("${globals.api}/events"); + print("start date : ${events["start_date"]}"); + var responsePut = await http.put(urlPut, + headers: { + HttpHeaders.cookieHeader: 'access_token=${accessToken}', + HttpHeaders.acceptHeader: 'application/json, text/plain, */*', + HttpHeaders.contentTypeHeader: 'application/json' + }, + body: jsonEncode({ + 'name': events["name"], + 'place': events["place"], + 'start_date': events['date'], + 'end_date': events['date'], + 'organizers': send, + 'latitude': '0.0', + 'longitude': '0.0', + })); + + print("http put code status : ${responsePut.statusCode}"); + print("http put body : ${responsePut.body}"); + } + } + + void showDescImageUpdateDialog(BuildContext context, var events) { + // Create AlertDialog + String name = events['name']; + AlertDialog dialog = AlertDialog( + title: Text("Modifier un evenement"), + content: Text("${name} a été trouvé. Voulez-vous le modifier ou voir ? "), + actions: [ + TextButton( + child: Text("Annuler"), + onPressed: () { + Navigator.of(context).pop("Yes, Of course!"); // Return value + }), + TextButton( + child: Text("Oui"), + onPressed: () { + updateEvents(events); // Return value + }), + ], + ); + + // Call showDialog function to show dialog. + Future futureValue = showDialog( + context: context, + builder: (BuildContext context) { + return dialog; + }); + } +} diff --git a/covas_mobile/lib/pages/DisplayPictureScreen.dart b/covas_mobile/lib/pages/DisplayPictureScreen.dart index 64a7e58..9256a28 100644 --- a/covas_mobile/lib/pages/DisplayPictureScreen.dart +++ b/covas_mobile/lib/pages/DisplayPictureScreen.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; import 'dart:io'; -import '../classes/descriptionImage.dart'; +import '../classes/addEventImage.dart'; import '../classes/alert.dart'; import 'package:flutter_dotenv/flutter_dotenv.dart'; import 'package:flutter_gemini/flutter_gemini.dart';