updateTimezone static method

Future<String?> updateTimezone(
  1. String timezone, {
  2. dynamic onSuccess(
    1. String response
    )?,
  3. dynamic onError(
    1. CometChatException e
    )?,
})

Updates the timezone preference for the logged-in user.

This method makes an asynchronous call to the CometChat server to update the timezone preference for the logged-in user. Upon successful update, onSuccess is invoked with a success response. If an error occurs, onError is called with a CometChatException.

Returns a Future<String>, which completes with a success response if the operation is successful, or null if an error occurs.

Implementation

static Future<String?> updateTimezone(String timezone,
    {Function(String response)? onSuccess,
    Function(CometChatException e)? onError}) async {
  if (timezone.isEmpty) {
    _errorCallbackHandler(
        CometChatException(
            ErrorCode.errorInvalidTimezone,
            ErrorMessage.errorInvalidEmptyTimezone,
            ErrorMessage.errorInvalidEmptyTimezone),
        null,
        null,
        onError);
    return null;
  }

  try {
    final result =
        await channel.invokeMethod('updateTimezone', {"timezone": timezone});
    if (onSuccess != null) onSuccess(result);
    return result;
  } on PlatformException catch (p) {
    _errorCallbackHandler(null, p, null, onError);
  } catch (e) {
    _errorCallbackHandler(null, null, e, onError);
  }
  return null;
}