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();
}*/
}