mirror of
https://github.com/KokaKiwi/BarInsta
synced 2024-11-15 19:27:31 +00:00
proper self-profile handling when offline; close #1328
This commit is contained in:
parent
f340ab3d4c
commit
f657f61aa7
@ -692,6 +692,11 @@ public class ProfileFragment extends Fragment implements SwipeRefreshLayout.OnRe
|
|||||||
if (userResource == null) return;
|
if (userResource == null) return;
|
||||||
final User user = userResource.data;
|
final User user = userResource.data;
|
||||||
if (user == null) return;
|
if (user == null) return;
|
||||||
|
username = user.getUsername();
|
||||||
|
if (TextUtils.isEmpty(username)) {
|
||||||
|
appStateViewModel.fetchProfileDetails();
|
||||||
|
return;
|
||||||
|
}
|
||||||
profileModel = user;
|
profileModel = user;
|
||||||
username = profileModel.getUsername();
|
username = profileModel.getUsername();
|
||||||
setUsernameDelayed();
|
setUsernameDelayed();
|
||||||
@ -1099,7 +1104,7 @@ public class ProfileFragment extends Fragment implements SwipeRefreshLayout.OnRe
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void updateAccountInfo() {
|
private void updateAccountInfo() {
|
||||||
if (profileModel == null) return;
|
if (profileModel == null || TextUtils.isEmpty(profileModel.getUsername())) return;
|
||||||
accountRepository.insertOrUpdateAccount(
|
accountRepository.insertOrUpdateAccount(
|
||||||
profileModel.getPk(),
|
profileModel.getPk(),
|
||||||
profileModel.getUsername(),
|
profileModel.getUsername(),
|
||||||
|
@ -51,7 +51,7 @@ public class AppStateViewModel extends AndroidViewModel {
|
|||||||
return currentUser;
|
return currentUser;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void fetchProfileDetails() {
|
public void fetchProfileDetails() {
|
||||||
currentUser.postValue(Resource.loading(null));
|
currentUser.postValue(Resource.loading(null));
|
||||||
final long uid = CookieUtils.getUserIdFromCookie(cookie);
|
final long uid = CookieUtils.getUserIdFromCookie(cookie);
|
||||||
if (userRepository == null) {
|
if (userRepository == null) {
|
||||||
@ -61,7 +61,10 @@ public class AppStateViewModel extends AndroidViewModel {
|
|||||||
userRepository.getUserInfo(uid, CoroutineUtilsKt.getContinuation((user, throwable) -> {
|
userRepository.getUserInfo(uid, CoroutineUtilsKt.getContinuation((user, throwable) -> {
|
||||||
if (throwable != null) {
|
if (throwable != null) {
|
||||||
Log.e(TAG, "onFailure: ", throwable);
|
Log.e(TAG, "onFailure: ", throwable);
|
||||||
currentUser.postValue(Resource.error(throwable.getMessage(), null));
|
final User backup = currentUser.getValue().data != null ?
|
||||||
|
currentUser.getValue().data :
|
||||||
|
new User(uid);
|
||||||
|
currentUser.postValue(Resource.error(throwable.getMessage(), backup));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
currentUser.postValue(Resource.success(user));
|
currentUser.postValue(Resource.success(user));
|
||||||
|
Loading…
Reference in New Issue
Block a user