mirror of
				https://github.com/KokaKiwi/BarInsta
				synced 2025-10-31 03:25:34 +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; | ||||
|                 final User user = userResource.data; | ||||
|                 if (user == null) return; | ||||
|                 username = user.getUsername(); | ||||
|                 if (TextUtils.isEmpty(username)) { | ||||
|                     appStateViewModel.fetchProfileDetails(); | ||||
|                     return; | ||||
|                 } | ||||
|                 profileModel = user; | ||||
|                 username = profileModel.getUsername(); | ||||
|                 setUsernameDelayed(); | ||||
| @ -1099,7 +1104,7 @@ public class ProfileFragment extends Fragment implements SwipeRefreshLayout.OnRe | ||||
|     } | ||||
| 
 | ||||
|     private void updateAccountInfo() { | ||||
|         if (profileModel == null) return; | ||||
|         if (profileModel == null || TextUtils.isEmpty(profileModel.getUsername())) return; | ||||
|         accountRepository.insertOrUpdateAccount( | ||||
|                 profileModel.getPk(), | ||||
|                 profileModel.getUsername(), | ||||
|  | ||||
| @ -51,7 +51,7 @@ public class AppStateViewModel extends AndroidViewModel { | ||||
|         return currentUser; | ||||
|     } | ||||
| 
 | ||||
|     private void fetchProfileDetails() { | ||||
|     public void fetchProfileDetails() { | ||||
|         currentUser.postValue(Resource.loading(null)); | ||||
|         final long uid = CookieUtils.getUserIdFromCookie(cookie); | ||||
|         if (userRepository == null) { | ||||
| @ -61,7 +61,10 @@ public class AppStateViewModel extends AndroidViewModel { | ||||
|         userRepository.getUserInfo(uid, CoroutineUtilsKt.getContinuation((user, throwable) -> { | ||||
|             if (throwable != null) { | ||||
|                 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; | ||||
|             } | ||||
|             currentUser.postValue(Resource.success(user)); | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user