WT 1.1.25+3 flutter 2.8, activate training plan

This commit is contained in:
bossanyit
2021-12-12 16:17:47 +01:00
parent 72ae1c8f8c
commit 54a61fa585
96 changed files with 944 additions and 655 deletions
+20 -1
View File
@@ -7,13 +7,28 @@ import 'package:flutter/services.dart';
import 'package:aitrainer_app/model/cache.dart';
class APIClient with Common, Logging {
static final APIClient _singleton = APIClient._internal();
late bool cert;
factory APIClient() {
return _singleton;
}
APIClient._internal() {
cert = false;
}
dynamic authenticateUser(String email, String password) async {
var url = Cache().getBaseUrl() + "authenticate";
try {
ByteData data = await rootBundle.load('asset/data/aitrainer_server.crt.pem');
SecurityContext context = SecurityContext.defaultContext;
context.setTrustedCertificatesBytes(data.buffer.asUint8List(), password: "[xxxx]");
if (cert == false) {
print("Set CERT $cert");
context.setTrustedCertificatesBytes(data.buffer.asUint8List(), password: "[xxxx]");
cert = true;
}
HttpClient client = new HttpClient(); //context: context Todo provide the right certificate
client.badCertificateCallback = ((X509Certificate cert, String host, int port) {
@@ -52,7 +67,9 @@ class APIClient with Common, Logging {
}
var uri = Uri.parse(url);
HttpClient client = new HttpClient();
client.badCertificateCallback = ((X509Certificate cert, String host, int port) => true);
final HttpClientRequest request = await client.postUrl(uri);
request.headers.contentType = new ContentType("application", "json", charset: "utf-8");
request.headers.set('Authorization', 'Bearer $authToken');
@@ -87,7 +104,9 @@ class APIClient with Common, Logging {
var uri = Uri.parse(url);
HttpClient client = new HttpClient();
client.badCertificateCallback = ((X509Certificate cert, String host, int port) => true);
final HttpClientRequest request = await client.getUrl(uri);
request.headers.set('Content-Type', 'application/json');
request.headers.set('Authorization', 'Bearer $authToken');
@@ -6,7 +6,7 @@ import 'dart:convert';
import 'api.dart';
class CustomerExerciseDeviceApi with Logging {
final APIClient _client = new APIClient();
final APIClient _client = APIClient();
Future<List<CustomerExerciseDevice>> getDevices(int customerId) async {
List<CustomerExerciseDevice> devices = [];
+1 -1
View File
@@ -10,7 +10,7 @@ import 'package:aitrainer_app/service/logging.dart';
import 'package:aitrainer_app/util/not_found_exception.dart';
class CustomerApi with Logging {
final APIClient _client = new APIClient();
final APIClient _client = APIClient();
Future<List<Customer>> getRealCustomers(String param) async {
final body = await _client.get("customers/", param);
+1 -1
View File
@@ -5,7 +5,7 @@ import 'package:aitrainer_app/model/exercise_device.dart';
import 'api.dart';
class ExerciseDeviceApi {
final APIClient _client = new APIClient();
final APIClient _client = APIClient();
Future<List<ExerciseDevice>> getDevices() async {
final body = await _client.get("exercise_device/", "");
+1 -1
View File
@@ -6,7 +6,7 @@ import 'dart:convert';
import 'api.dart';
class ExercisePlanApi with Logging {
final APIClient _client = new APIClient();
final APIClient _client = APIClient();
Future<ExercisePlan> saveExercisePlan(ExercisePlan exercisePlan) async {
String body = JsonEncoder().convert(exercisePlan.toJson());
+1 -1
View File
@@ -6,7 +6,7 @@ import 'package:aitrainer_app/service/logging.dart';
import 'api.dart';
class ExerciseResultApi with Logging {
final APIClient _client = new APIClient();
final APIClient _client = APIClient();
Future<void> saveExerciseResult(ExerciseResult exerciseResult) async {
String body = JsonEncoder().convert(exerciseResult.toJson());
+1 -1
View File
@@ -4,7 +4,7 @@ import 'package:aitrainer_app/service/api.dart';
import 'package:aitrainer_app/service/logging.dart';
class ExerciseApi with Logging {
final APIClient _client = new APIClient();
final APIClient _client = APIClient();
Future<void> saveExercise(Exercise exercise) async {
String body = JsonEncoder().convert(exercise.toJson());
+1 -1
View File
@@ -8,7 +8,7 @@ import 'package:flutter/services.dart';
import 'api.dart';
class ExerciseTreeApi with Logging {
final APIClient _client = new APIClient();
final APIClient _client = APIClient();
Future<List<ExerciseTree>> getExerciseTree() async {
final String body = await _client.get("exercise_tree", "");
+1 -1
View File
@@ -6,7 +6,7 @@ import 'package:aitrainer_app/service/logging.dart';
import 'package:flutter/services.dart';
class ExerciseTypeApi with Logging {
final APIClient _client = new APIClient();
final APIClient _client = APIClient();
Future<List<ExerciseType>> getExerciseTypes() async {
final body = await _client.get("exercise_type", "");
+1 -1
View File
@@ -31,7 +31,7 @@ import 'customer_service.dart';
import 'exercise_tree_service.dart';
class PackageApi {
final APIClient _client = new APIClient();
final APIClient _client = APIClient();
Future<void> getPackage() async {
late List<ExerciseTree> exerciseTree;
+1 -1
View File
@@ -5,7 +5,7 @@ import 'package:aitrainer_app/model/product.dart';
import 'package:aitrainer_app/service/api.dart';
class ProductApi {
final APIClient _client = new APIClient();
final APIClient _client = APIClient();
Future<List<Product>> getProducts() async {
final body = await _client.get("product/", "");
+1 -1
View File
@@ -6,7 +6,7 @@ import 'package:aitrainer_app/service/api.dart';
import '../model/property.dart';
class PropertyApi {
final APIClient _client = new APIClient();
final APIClient _client = APIClient();
Future<List<Property>> getProperties() async {
final body = await _client.get("property/", "");
+1 -1
View File
@@ -6,7 +6,7 @@ import 'dart:convert';
import 'api.dart';
class PurchaseApi with Logging {
final APIClient _client = new APIClient();
final APIClient _client = APIClient();
Future<List<Purchase>> getPurchasesByCustomer(int customerId) async {
List<Purchase> purchases = [];
+1 -1
View File
@@ -6,7 +6,7 @@ import 'package:aitrainer_app/service/api.dart';
import '../model/sport.dart';
class SportApi {
final APIClient _client = new APIClient();
final APIClient _client = APIClient();
Future<List<Sport>> getSports() async {
final body = await _client.get("sports/", "");
+1 -1
View File
@@ -4,7 +4,7 @@ import 'dart:convert';
import 'api.dart';
class TrackingApi with Logging {
final APIClient _client = new APIClient();
final APIClient _client = APIClient();
Future<void> saveTracking(Tracking tracking) async {
try {
+1 -1
View File
@@ -6,7 +6,7 @@ import 'package:aitrainer_app/service/api.dart';
import 'package:aitrainer_app/service/logging.dart';
class TrainingPlanApi with Logging {
final APIClient _client = new APIClient();
final APIClient _client = APIClient();
Future<CustomerTrainingPlan> saveCustomerTrainingPlan(CustomerTrainingPlan plan) async {
String body = JsonEncoder().convert(plan.toJson());