X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=flutterempires%2Flib%2Fplayer.dart;h=aa87c8411d844dba694e015d19bbcd90a72fe2e5;hb=77a289b40313bf31cdc179184d2fdb063c60844c;hp=f55375c4708c003df064f3eb9153ca4df9c41fd9;hpb=c366b1a7794cf16da41d8a316188d61bb738d6b5;p=lmno.games diff --git a/flutterempires/lib/player.dart b/flutterempires/lib/player.dart index f55375c..aa87c84 100644 --- a/flutterempires/lib/player.dart +++ b/flutterempires/lib/player.dart @@ -1,5 +1,5 @@ import 'dart:convert'; -import 'dart:js'; + import 'package:http/http.dart' as http; class Player { @@ -19,13 +19,23 @@ class Player { final response = await http.get('https://families.cworth.org/api/players'); if (response.statusCode == 200) { - JsArray playerList = JsArray.from(json.decode(response.body)); - return Player.fromJson(playerList.elementAt(0)); + List playerList = parsePlayers(response.body); + return playerList.elementAt(0); } else { throw Exception('Failed to load player'); } } + static Future> fetchAllPlayers() async { + final response = await http.get('https://families.cworth.org/api/players'); + + if (response.statusCode == 200) { + return parsePlayers(response.body); + } else { + throw Exception('Failed to load players'); + } + } + static List parsePlayers(String responseBody) { final parsed = json.decode(responseBody).cast>(); return parsed.map((json) => Player.fromJson(json)).toList();