getProfile method

dynamic getProfile()

Implementation

getProfile() async {
  //if(await AppUtils.isNetConnected()) {
  var jid = SessionManagement.getUserJID().checkNull();
  LogMessage.d("jid", jid);
  if (jid.isNotEmpty) {
    LogMessage.d("jid.isNotEmpty", jid.isNotEmpty.toString());
    loading.value = true;
    Mirrorfly.getUserProfile(
        jid: jid,
        fetchFromServer: await AppUtils.isNetConnected(),
        flyCallback: (FlyResponse response) {
          LogMessage.d("getUserProfile", response.toString());
          if (response.isSuccess) {
            insertDefaultStatusToUser();
            loading.value = false;
            var data = profileDataFromJson(response.data);
            if (data.status != null && data.status!) {
              if (data.data != null) {
                profileName.text = data.data!.name ?? "";
                if (data.data!.mobileNumber.checkNull().isNotEmpty) {
                  //if (from.value != Routes.login) {
                  validMobileNumber(data.data!.mobileNumber.checkNull())
                      .then((valid) {
                    // if(valid) profileMobile.text = data.data!.mobileNumber.checkNull();
                    mobileEditAccess(!valid);
                  });
                } else {
                  var userIdentifier = SessionManagement.getUserIdentifier();
                  validMobileNumber(userIdentifier)
                      .then((value) => mobileEditAccess(value));
                  // mobileEditAccess(true);
                }

                profileEmail.text = data.data!.email ?? "";
                profileStatus.value = data.data!.status.checkNull().isNotEmpty
                    ? data.data!.status.checkNull()
                    : getTranslated("defaultStatus");
                userImgUrl.value = data.data!.image ??
                    ""; //SessionManagement.getUserImage() ?? "";
                SessionManagement.setUserImage(Constants.emptyString);
                changed((from == Routes.login));
                name(data.data!.name.toString());
                var userProfileData = ProData(
                    email: profileEmail.text.toString(),
                    image: userImgUrl.value,
                    mobileNumber: data.data!.mobileNumber.checkNull(),
                    nickName: profileName.text,
                    name: profileName.text,
                    status: profileStatus.value);
                SessionManagement.setCurrentUser(userProfileData);
                update();
              }
            } else {
              debugPrint("Unable to load Profile data");
              toToast(getTranslated("unableConnectServer"));
            }
          } else {
            loading.value = false;
            toToast(getTranslated("unableToLoadProfileData"));
          }
        });
  }
  /* }else{
    toToast(getTranslated("noInternetConnection"));
    NavUtils.back();
  }*/
}