setLocale method

Future<int> setLocale({
  1. required String languageCode,
  2. FutureOr<void> onRetry(
    1. Exception
    )?,
})

Передает локаль на сервер для получения всех строковых значений в локали пользователя

Implementation

Future<int> setLocale({required String languageCode, FutureOr<void> Function(Exception)? onRetry}) async {
  var params = <String, dynamic>{};
  params['locale'] = languageCode;
  try {
    var response = await (baseRequest(
      function: 'SetLocale',
      headers: getAuthorizationHeader(),
      url: '$serverUri/$authorizationApi/SetLocale',
      method: 'GET',
      params: params,
      //FIXME: добавить реакцию на 404
      autoRepeate: false,
      autoRepeateCount: 1000,
      onRetry: onRetry,
    ));
    var loginResponse = NsgLoginResponse.fromJson(response);
    return loginResponse.errorCode;
  } on NsgApiException catch (e) {
    if (e.error.code == 404) {
      return 0;
    }
  }
  return 0;
}