feature/refactor #33
@ -89,107 +89,61 @@ class _ItemMenuState extends State<ItemMenu> with ShowAlertDialog {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Future<void> _getEventInfos() async {
|
Future<void> _getEventInfos() async {
|
||||||
SharedPreferences prefs = await SharedPreferences.getInstance();
|
final prefs = await SharedPreferences.getInstance();
|
||||||
var accessToken = prefs.getString("access_token") ?? "";
|
final accessToken = prefs.getString("access_token") ?? "";
|
||||||
String formerName = "";
|
|
||||||
String formerDate = "";
|
|
||||||
String formerMap = "";
|
|
||||||
String formerImage = "";
|
|
||||||
String formerDesc = "";
|
|
||||||
List<String> formerTags = [];
|
|
||||||
List<String> formerOrga = [];
|
|
||||||
|
|
||||||
if (accessToken.isNotEmpty) {
|
if (accessToken.isEmpty) {
|
||||||
var urlGet = Uri.parse("${globals.api}/events/${widget.title}");
|
|
||||||
|
|
||||||
var responseGet = await http.get(urlGet,
|
|
||||||
headers: {HttpHeaders.cookieHeader: 'access_token=${accessToken}'});
|
|
||||||
stderr.writeln('Response Get status: ${responseGet.statusCode}');
|
|
||||||
if (responseGet.statusCode == 200) {
|
|
||||||
stderr.writeln('Username : ${responseGet.body}');
|
|
||||||
events =
|
|
||||||
Events.fromJson(jsonDecode(utf8.decode(responseGet.bodyBytes)));
|
|
||||||
id = events!.id ?? "";
|
|
||||||
formerName = events!.name ?? "";
|
|
||||||
formerMap = "${events!.place}" ?? "";
|
|
||||||
formerDesc = events!.description ?? "";
|
|
||||||
|
|
||||||
formerTags = List<String>.from(events!.tags as List);
|
|
||||||
formerOrga = List<String>.from(events!.organizers as List);
|
|
||||||
final startDate =
|
|
||||||
DateTime.parse(events!.startDate ?? DateTime.now().toString());
|
|
||||||
final date = DateFormat.yMd().format(startDate);
|
|
||||||
final time = DateFormat.Hm().format(startDate);
|
|
||||||
|
|
||||||
final endDate =
|
|
||||||
DateTime.parse(events!.endDate ?? DateTime.now().toString());
|
|
||||||
|
|
||||||
final dateE = DateFormat.yMd().format(endDate);
|
|
||||||
final timeE = DateFormat.Hm().format(endDate);
|
|
||||||
if (events!.imgUrl != null) {
|
|
||||||
formerImage = events!.imgUrl ?? "";
|
|
||||||
}
|
|
||||||
|
|
||||||
formerDate = "${date} ${time} à ${dateE} ${timeE}";
|
|
||||||
} else {
|
|
||||||
var text = "";
|
|
||||||
switch (responseGet.statusCode) {
|
|
||||||
case 400:
|
|
||||||
{
|
|
||||||
text = "Requête mal construite";
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 406:
|
|
||||||
{
|
|
||||||
text = "Mot de passe incorrect";
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 404:
|
|
||||||
{
|
|
||||||
text = "Utilisateur inconnu";
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 403:
|
|
||||||
{
|
|
||||||
text = "Vous n'avez pas l'autorisation de faire cette action";
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 410:
|
|
||||||
{
|
|
||||||
text = "Token invalide";
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 500:
|
|
||||||
{
|
|
||||||
text = "Probleme interne du serveur";
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
{
|
|
||||||
text = "Probleme d'authentification inconnu";
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
showAlertDialog(context, "Erreur serveur", text);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
showAlertDialog(context, "Erreur serveur", "Cache invalide");
|
showAlertDialog(context, "Erreur serveur", "Cache invalide");
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
final urlGet = Uri.parse("${globals.api}/events/${widget.title}");
|
||||||
|
final responseGet = await http.get(
|
||||||
|
urlGet,
|
||||||
|
headers: {HttpHeaders.cookieHeader: 'access_token=$accessToken'},
|
||||||
|
);
|
||||||
|
|
||||||
|
stderr.writeln('Response Get status: ${responseGet.statusCode}');
|
||||||
|
|
||||||
|
if (responseGet.statusCode == 200) {
|
||||||
|
final responseBody = utf8.decode(responseGet.bodyBytes);
|
||||||
|
stderr.writeln('Username : $responseBody');
|
||||||
|
|
||||||
|
final event = Events.fromJson(jsonDecode(responseBody));
|
||||||
|
|
||||||
|
final startDate =
|
||||||
|
DateTime.parse(event.startDate ?? DateTime.now().toString());
|
||||||
|
final endDate =
|
||||||
|
DateTime.parse(event.endDate ?? DateTime.now().toString());
|
||||||
|
|
||||||
|
final formattedStartDate =
|
||||||
|
"${DateFormat.yMd().format(startDate)} ${DateFormat.Hm().format(startDate)}";
|
||||||
|
final formattedEndDate =
|
||||||
|
"${DateFormat.yMd().format(endDate)} ${DateFormat.Hm().format(endDate)}";
|
||||||
|
|
||||||
setState(() {
|
setState(() {
|
||||||
// This call to setState tells the Flutter framework that something has
|
eventName = event.name ?? "";
|
||||||
// changed in this State, which causes it to rerun the build method below
|
eventStartDate = "$formattedStartDate à $formattedEndDate";
|
||||||
// so that the display can reflect the updated values. If we changed
|
organizers = List<String>.from(event.organizers ?? []);
|
||||||
// _counter without calling setState(), then the build method would not be
|
place = event.place ?? "";
|
||||||
// called again, and so nothing would appear to happen.
|
imgUrl = event.imgUrl ?? "";
|
||||||
eventName = formerName;
|
eventDescription = event.description ?? "";
|
||||||
eventStartDate = formerDate;
|
tags = List<String>.from(event.tags ?? []);
|
||||||
organizers = formerOrga;
|
|
||||||
place = formerMap;
|
|
||||||
imgUrl = formerImage;
|
|
||||||
eventDescription = formerDesc;
|
|
||||||
tags = formerTags;
|
|
||||||
});
|
});
|
||||||
|
} else {
|
||||||
|
final errorMessages = {
|
||||||
|
400: "Requête mal construite",
|
||||||
|
406: "Mot de passe incorrect",
|
||||||
|
404: "Utilisateur inconnu",
|
||||||
|
403: "Vous n'avez pas l'autorisation de faire cette action",
|
||||||
|
410: "Token invalide",
|
||||||
|
500: "Problème interne du serveur",
|
||||||
|
};
|
||||||
|
|
||||||
|
final errorMessage = errorMessages[responseGet.statusCode] ??
|
||||||
|
"Problème d'authentification inconnu";
|
||||||
|
showAlertDialog(context, "Erreur serveur", errorMessage);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
final _formKey = GlobalKey<FormState>();
|
final _formKey = GlobalKey<FormState>();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user