getScheduleResultsFuture function

Future<List<Results>> getScheduleResultsFuture(
  1. String groupLink
)

Implementation

Future<List<Results>> getScheduleResultsFuture(String groupLink) async {
  List<Results> resultList = [];
  final response =
      await http.Client().get(Uri.parse(GlobalVariable.URL_MAIN + groupLink));
  if (response.statusCode == 200) {
    var body = decodeCp1251(response.body);
    var documentFullHtmlCode = parseHtmlDocument(body);
    var documentTableHtmlCode =
        documentFullHtmlCode.querySelectorAll("table.inf").first;
    var documentTableElements = documentTableHtmlCode.querySelectorAll("tr");
    int count = documentTableElements.length;
    for (int i = 1; i <= count - 1; i++) {
      var documentTableSelected = documentTableElements[i];
      var documentNode = documentTableSelected.querySelectorAll("td");
      resultList.add(Results(
          documentNode[0].text ?? "",
          documentNode[4].text ?? "",
          documentNode[1].text ?? "",
          documentNode[5].text ?? "",
          int.parse(documentNode[6].text ?? ""),
          int.parse(documentNode[9].text ?? ""),
          documentNode[12].text ?? "",
          int.parse(
              documentNode[13].children[0].attributes.values.elementAt(3))));
    }
  }

  return resultList;
}