import 'dart:convert';

import 'package:get/get.dart';
import 'package:http/http.dart' as http;

import '../../constant/box_name.dart';
import '../../constant/links.dart';
import '../../main.dart';

class TokenController extends GetxController {
  bool isloading = false;

  Future addToken() async {
    String? basicAuthCredentials =
        await storage.read(key: BoxName.basicAuthCredentials);
    isloading = true;
    update();
    var res = await http.post(
      Uri.parse(AppLink.addTokens),
      headers: {
        'Authorization':
            'Basic ${base64Encode(utf8.encode(basicAuthCredentials.toString()))}',
      },
      body: {
        'token': box.read(BoxName.tokenFCM.toString()),
        'passengerID': box.read(BoxName.passengerID).toString()
      },
    );

    isloading = false;
    update();
    print(res.request);
    print(res.body);
    var jsonToken = jsonDecode(res.body);
    // print(jsonToken);
    if (jsonToken['status'] == 'The token has been updated successfully.') {
      Get.snackbar('token updated'.tr, '');
    }
  }
}
