mirror of
https://github.com/nextcloud/talk-android
synced 2025-07-20 11:15:02 +01:00
Update settings to use new retrofit
Signed-off-by: Mario Danic <mario@lovelyhq.com>
This commit is contained in:
parent
7e8957fd97
commit
43a1187e3a
@ -161,8 +161,7 @@ public class SettingsController extends BaseController {
|
|||||||
@Inject
|
@Inject
|
||||||
AppPreferences appPreferences;
|
AppPreferences appPreferences;
|
||||||
|
|
||||||
@Inject
|
private NcApi ncApi;
|
||||||
NcApi ncApi;
|
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
UserUtils userUtils;
|
UserUtils userUtils;
|
||||||
@ -170,7 +169,8 @@ public class SettingsController extends BaseController {
|
|||||||
@Inject
|
@Inject
|
||||||
CookieManager cookieManager;
|
CookieManager cookieManager;
|
||||||
|
|
||||||
private UserEntity userEntity;
|
private UserEntity currentUser;
|
||||||
|
private String credentials;
|
||||||
|
|
||||||
private OnPreferenceValueChangedListener<String> proxyTypeChangeListener;
|
private OnPreferenceValueChangedListener<String> proxyTypeChangeListener;
|
||||||
private OnPreferenceValueChangedListener<Boolean> proxyCredentialsChangeListener;
|
private OnPreferenceValueChangedListener<Boolean> proxyCredentialsChangeListener;
|
||||||
@ -183,13 +183,18 @@ public class SettingsController extends BaseController {
|
|||||||
return inflater.inflate(R.layout.controller_settings, container, false);
|
return inflater.inflate(R.layout.controller_settings, container, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void getCurrentUser() {
|
||||||
|
currentUser = userUtils.getCurrentUser();
|
||||||
|
credentials = ApiUtils.getCredentials(currentUser.getUserId(), currentUser.getToken());
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onViewBound(@NonNull View view) {
|
protected void onViewBound(@NonNull View view) {
|
||||||
super.onViewBound(view);
|
super.onViewBound(view);
|
||||||
|
|
||||||
NextcloudTalkApplication.getSharedApplication().getComponentApplication().inject(this);
|
NextcloudTalkApplication.getSharedApplication().getComponentApplication().inject(this);
|
||||||
|
|
||||||
userEntity = userUtils.getCurrentUser();
|
getCurrentUser();
|
||||||
|
|
||||||
appPreferences.registerProxyTypeListener(proxyTypeChangeListener = new ProxyTypeChangeListener());
|
appPreferences.registerProxyTypeListener(proxyTypeChangeListener = new ProxyTypeChangeListener());
|
||||||
appPreferences.registerProxyCredentialsListener(proxyCredentialsChangeListener = new
|
appPreferences.registerProxyCredentialsListener(proxyCredentialsChangeListener = new
|
||||||
@ -273,7 +278,7 @@ public class SettingsController extends BaseController {
|
|||||||
|
|
||||||
URI uri;
|
URI uri;
|
||||||
try {
|
try {
|
||||||
uri = new URI(userEntity.getBaseUrl());
|
uri = new URI(currentUser.getBaseUrl());
|
||||||
host = uri.getHost();
|
host = uri.getHost();
|
||||||
port = uri.getPort();
|
port = uri.getPort();
|
||||||
} catch (URISyntaxException e) {
|
} catch (URISyntaxException e) {
|
||||||
@ -297,9 +302,9 @@ public class SettingsController extends BaseController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
userUtils.createOrUpdateUser(null, null, null, null, null, null, null, userEntity.getId(),
|
userUtils.createOrUpdateUser(null, null, null, null, null, null, null, currentUser.getId(),
|
||||||
null, alias);
|
null, alias);
|
||||||
}, new String[]{"RSA", "EC"}, null, finalHost, finalPort, userEntity.getClientCertificate
|
}, new String[]{"RSA", "EC"}, null, finalHost, finalPort, currentUser.getClientCertificate
|
||||||
()));
|
()));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -312,9 +317,9 @@ public class SettingsController extends BaseController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
dispose(null);
|
dispose(null);
|
||||||
userEntity = userUtils.getCurrentUser();
|
getCurrentUser();
|
||||||
|
|
||||||
if (!TextUtils.isEmpty(userEntity.getClientCertificate())) {
|
if (!TextUtils.isEmpty(currentUser.getClientCertificate())) {
|
||||||
certificateSetup.setTitle(R.string.nc_client_cert_change);
|
certificateSetup.setTitle(R.string.nc_client_cert_change);
|
||||||
} else {
|
} else {
|
||||||
certificateSetup.setTitle(R.string.nc_client_cert_setup);
|
certificateSetup.setTitle(R.string.nc_client_cert_setup);
|
||||||
@ -360,26 +365,25 @@ public class SettingsController extends BaseController {
|
|||||||
hideProxyCredentials();
|
hideProxyCredentials();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (userEntity != null) {
|
if (currentUser != null) {
|
||||||
|
|
||||||
baseUrlTextView.setText(userEntity.getBaseUrl());
|
baseUrlTextView.setText(currentUser.getBaseUrl());
|
||||||
|
|
||||||
reauthorizeButton.addPreferenceClickListener(view14 -> {
|
reauthorizeButton.addPreferenceClickListener(view14 -> {
|
||||||
getParentController().getRouter().pushController(RouterTransaction.with(
|
getParentController().getRouter().pushController(RouterTransaction.with(
|
||||||
new WebViewLoginController(userEntity.getBaseUrl(), true))
|
new WebViewLoginController(currentUser.getBaseUrl(), true))
|
||||||
.pushChangeHandler(new VerticalChangeHandler())
|
.pushChangeHandler(new VerticalChangeHandler())
|
||||||
.popChangeHandler(new VerticalChangeHandler()));
|
.popChangeHandler(new VerticalChangeHandler()));
|
||||||
});
|
});
|
||||||
|
|
||||||
if (userEntity.getDisplayName() != null) {
|
if (currentUser.getDisplayName() != null) {
|
||||||
displayNameTextView.setText(userEntity.getDisplayName());
|
displayNameTextView.setText(currentUser.getDisplayName());
|
||||||
}
|
}
|
||||||
|
|
||||||
loadAvatarImage();
|
loadAvatarImage();
|
||||||
|
|
||||||
profileQueryDisposable = ncApi.getUserProfile(ApiUtils.getCredentials(userEntity.getUsername(),
|
profileQueryDisposable = ncApi.getUserProfile(credentials,
|
||||||
userEntity.getToken()),
|
ApiUtils.getUrlForUserProfile(currentUser.getBaseUrl()))
|
||||||
ApiUtils.getUrlForUserProfile(userEntity.getBaseUrl()))
|
|
||||||
.subscribeOn(Schedulers.newThread())
|
.subscribeOn(Schedulers.newThread())
|
||||||
.observeOn(AndroidSchedulers.mainThread())
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
.subscribe(userProfileOverall -> {
|
.subscribe(userProfileOverall -> {
|
||||||
@ -396,12 +400,12 @@ public class SettingsController extends BaseController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if ((!TextUtils.isEmpty(displayName) && !displayName.equals(userEntity.getDisplayName()))) {
|
if ((!TextUtils.isEmpty(displayName) && !displayName.equals(currentUser.getDisplayName()))) {
|
||||||
|
|
||||||
dbQueryDisposable = userUtils.createOrUpdateUser(null,
|
dbQueryDisposable = userUtils.createOrUpdateUser(null,
|
||||||
null,
|
null,
|
||||||
null, displayName, null, null,
|
null, displayName, null, null,
|
||||||
null, userEntity.getId(), null, null)
|
null, currentUser.getId(), null, null)
|
||||||
.subscribeOn(Schedulers.newThread())
|
.subscribeOn(Schedulers.newThread())
|
||||||
.observeOn(AndroidSchedulers.mainThread())
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
.subscribe(userEntityResult -> {
|
.subscribe(userEntityResult -> {
|
||||||
@ -419,7 +423,7 @@ public class SettingsController extends BaseController {
|
|||||||
|
|
||||||
removeAccountButton.addPreferenceClickListener(view1 -> {
|
removeAccountButton.addPreferenceClickListener(view1 -> {
|
||||||
cookieManager.getCookieStore().removeAll();
|
cookieManager.getCookieStore().removeAll();
|
||||||
boolean otherUserExists = userUtils.scheduleUserForDeletionWithId(userEntity.getId());
|
boolean otherUserExists = userUtils.scheduleUserForDeletionWithId(currentUser.getId());
|
||||||
|
|
||||||
OneTimeWorkRequest accountRemovalWork = new OneTimeWorkRequest.Builder(AccountRemovalWorker.class).build();
|
OneTimeWorkRequest accountRemovalWork = new OneTimeWorkRequest.Builder(AccountRemovalWorker.class).build();
|
||||||
WorkManager.getInstance().enqueue(accountRemovalWork);
|
WorkManager.getInstance().enqueue(accountRemovalWork);
|
||||||
@ -505,13 +509,13 @@ public class SettingsController extends BaseController {
|
|||||||
|
|
||||||
private void loadAvatarImage() {
|
private void loadAvatarImage() {
|
||||||
String avatarId;
|
String avatarId;
|
||||||
if (!TextUtils.isEmpty(userEntity.getUserId())) {
|
if (!TextUtils.isEmpty(currentUser.getUserId())) {
|
||||||
avatarId = userEntity.getUserId();
|
avatarId = currentUser.getUserId();
|
||||||
} else {
|
} else {
|
||||||
avatarId = userEntity.getUsername();
|
avatarId = currentUser.getUsername();
|
||||||
}
|
}
|
||||||
|
|
||||||
GlideUrl glideUrl = new GlideUrl(ApiUtils.getUrlForAvatarWithName(userEntity.getBaseUrl(),
|
GlideUrl glideUrl = new GlideUrl(ApiUtils.getUrlForAvatarWithName(currentUser.getBaseUrl(),
|
||||||
avatarId, R.dimen.avatar_size_big), new LazyHeaders.Builder()
|
avatarId, R.dimen.avatar_size_big), new LazyHeaders.Builder()
|
||||||
.setHeader("Accept", "image/*")
|
.setHeader("Accept", "image/*")
|
||||||
.setHeader("User-Agent", ApiUtils.getUserAgent())
|
.setHeader("User-Agent", ApiUtils.getUserAgent())
|
||||||
|
Loading…
Reference in New Issue
Block a user