refreshContacts method

dynamic refreshContacts(
  1. bool isNetworkToastNeeded
)

Implementation

refreshContacts(bool isNetworkToastNeeded) async {
  if(!MirrorflyUikit.instance.isTrialLicenceKey) {
    mirrorFlyLog('Contact Sync', "[Contact Sync] refreshContacts()");
    if (await AppUtils.isNetConnected()) {
      if (!await Mirrorfly.contactSyncStateValue()) {
        var contactPermissionHandle = await AppPermission.checkPermission(context!,
            Permission.contacts, contactPermission,
            AppConstants.contactSyncPermission);
        if (contactPermissionHandle) {
          progressSpinner(true);
          Mirrorfly.syncContacts(!SessionManagement.isInitialContactSyncDone())
              .then((value) {
            progressSpinner(false);
            // viewModel.onContactSyncFinished(success)
            // viewModel.isContactSyncSuccess.value = true
            _first = true;
            fetchUsers(_searchText.isNotEmpty);
          });
        } /* else {
    MediaPermissions.requestContactsReadPermission(
    this,
    permissionAlertDialog,
    contactPermissionLauncher,
    null)
    val email = Utils.returnEmptyStringIfNull(SharedPreferenceManager.getString(Constants.EMAIL))
    if (ChatUtils.isContusUser(email))
    EmailContactSyncService.start()
    }*/
      } else {
        progressSpinner(true);
        mirrorFlyLog('Contact Sync',
            "[Contact Sync] Contact syncing is already in progress");
      }
    } else {
      if(isNetworkToastNeeded) {
        toToast(AppConstants.noInternetConnection);
      }
      // viewModel.onContactSyncFinished(false);
    }
  }
}