submitAnswer function

dynamic submitAnswer(
  1. dynamic _collectedAnswers,
  2. dynamic finalTime,
  3. dynamic customParams,
  4. dynamic token,
  5. dynamic domain,
  6. dynamic email,
)

Implementation

submitAnswer(
    _collectedAnswers, finalTime, customParams, token, domain, email) async {
  // check url before prod
  var url =
      Uri.parse('https://${domain}/api/internal/submission/answers/${token}');
  Map<dynamic, dynamic> payload = {};
  final ua = await userAgent();

  var submissionObjPayload = {
    'answers': _collectedAnswers,
    'stripe': {
      'currency': {},
      'amount': '',
      'cardCompleted': false,
      'discountCoupon': {},
    },
    'customParams': customParams,
    'additionalAttributes': {},
    'timeTaken': finalTime,
    'timeZone': 'Asia/Calcutta',
    'browserLanguage': 'en-GB',
    'language': 'en',
  };

  if (email != "") {
    submissionObjPayload['email'] = email;
  }

  payload['answers'] = _collectedAnswers;
  payload['finalTime'] = finalTime;
  payload['customParam'] = customParams;

  var body = json.encode(submissionObjPayload);

  var response = await http.post(url,
      headers: {"Content-Type": "application/json", "User-Agent": ua},
      body: body);
  return response;
}