Merge branch 'tmp' into PHP_Script_on_Docker

remotes/origin/mvc-implementation
Dorian HODIN 2 years ago
commit 5548bc31c0

@ -4,7 +4,6 @@ import '../exceptions/api_exception.dart';
import '../main.dart';
import 'music.dart';
import 'spot.dart';
import 'package:collection/collection.dart';
class User {
Timer? timer;
@ -47,28 +46,24 @@ class User {
}
listSpots() {
print('ajout test');
Future<String> rep = Location.sendCurrentLocation();
//ex : dorian-2d2s52a15d2a5,audric-2x5s2az3d1s5wx5s1,lucas-s2a5d25a2a25d
rep.then((String result) {
List<String> tab = result.split(",");
//ex : [dorian-2d2s52a15d2a5 , audric-2x5s2az3d1s5wx5s1 , lucas-s2a5d25a2a25d]
for (var element in tab) {
List<String> tab2 = element.split("-");
spots.add(Spot(tab2[0], Music(tab2[1])));
int verif=0;
Future<Map<String, dynamic>> rep = Location.sendCurrentLocation();
//ex : dorian : 2d2s52a15d2a5 , audric : 2x5s2az3d1s5wx5s1 , lucas : s2a5d25a2a25d
rep.then((Map<String, dynamic> result) {
if (result.isNotEmpty) {
result.forEach((key, value) {
for (var element in spots) {
if (element.userId==key){
verif=1;
}
}
if (verif==0){
spots.add(Spot(key, Music(value)));
}
verif=0;
});
}
});
getListSpots() {
if (test == 0) {
test = 1;
listSpots();
} else {
timer =
Timer.periodic(const Duration(seconds: 72), (Timer t) => listSpots());
}
}
}

@ -5,7 +5,7 @@ import 'dart:async';
import '../main.dart';
class Location {
static Future<String> sendCurrentLocation() async {
static Future<Map<String, dynamic>> sendCurrentLocation() async {
Uri uri = Uri.parse("http://89.83.53.34/phpmyadmin/dafldev/insert.php");
LocationPermission permission;
permission = await Geolocator.checkPermission();
@ -28,13 +28,16 @@ class Location {
return getData();
}
static Future<String> getData() async {
static Future<Map<String, dynamic>> getData() async {
Map<String, dynamic> spot = {};
String actualUser = MyApp.controller.currentUser.usernameDafl;
Uri uri = Uri.parse("http://89.83.53.34/phpmyadmin/dafldev/distance.php");
http.Response response = await http.post(uri, body: {
"id": actualUser,
});
var data = jsonDecode(response.body);
return data.toString();
data.forEach((s)=> spot.putIfAbsent(s['user'], () => s['music']));
return spot;
}
}

@ -1,3 +1,4 @@
import 'dart:async';
import 'package:dafl_project_flutter/main.dart';
import 'package:flutter/material.dart';
import '../../../presentation/custom_icons_icons.dart';
@ -32,7 +33,6 @@ class _MainPageState extends State<MainPage> {
@override
Widget build(BuildContext context) {
MyApp.controller.currentUser.getListSpots();
double height = MediaQuery.of(context).size.height;
return Scaffold(
resizeToAvoidBottomInset: false,
@ -110,6 +110,11 @@ class _MainPageState extends State<MainPage> {
),
);
}
@override
void initState() {
super.initState();
Timer timer = Timer.periodic(const Duration(seconds: 10), (Timer t) => MyApp.controller.currentUser.listSpots());
}
}
class GradientText extends StatelessWidget {

Loading…
Cancel
Save