@@ -30,8 +30,7 @@ class AuthLoginViewModel(application: Application) : AndroidViewModel(applicatio
30
30
31
31
private val authManager: AuthManager = AuthManager .getInstance(application)
32
32
private val geoNatureAPIClient: GeoNatureAPIClient ? = GeoNatureAPIClient .instance(application)
33
- private val connectivityManager =
34
- application.getSystemService(Context .CONNECTIVITY_SERVICE ) as ConnectivityManager
33
+ private val connectivityManager = application.getSystemService(Context .CONNECTIVITY_SERVICE ) as ConnectivityManager
35
34
36
35
private val _loginFormState = MutableLiveData <LoginFormState >()
37
36
val loginFormState: LiveData <LoginFormState > = _loginFormState
@@ -52,6 +51,16 @@ class AuthLoginViewModel(application: Application) : AndroidViewModel(applicatio
52
51
}
53
52
}
54
53
54
+ fun checkAuthLogin (): LiveData <AuthLogin ?> {
55
+ val authLoginLiveData = MutableLiveData <AuthLogin ?>()
56
+
57
+ viewModelScope.launch {
58
+ authLoginLiveData.postValue(authManager.getAuthLogin())
59
+ }
60
+
61
+ return authLoginLiveData
62
+ }
63
+
55
64
fun login (
56
65
username : String ,
57
66
password : String ,
@@ -95,13 +104,13 @@ class AuthLoginViewModel(application: Application) : AndroidViewModel(applicatio
95
104
return @launch
96
105
}
97
106
98
- authManager.setAuthLogin(authLogin)
107
+ authManager
108
+ .setAuthLogin(authLogin)
99
109
.also {
100
110
_loginResult .value = LoginResult (success = authLogin)
101
111
}
102
112
} catch (e: Exception ) {
103
- _loginResult .value =
104
- LoginResult (error = if (connectivityManager.allNetworks.isEmpty()) R .string.snackbar_network_lost else R .string.login_failed)
113
+ _loginResult .value = LoginResult (error = if (connectivityManager.allNetworks.isEmpty()) R .string.snackbar_network_lost else R .string.login_failed)
105
114
}
106
115
}
107
116
}
@@ -111,14 +120,12 @@ class AuthLoginViewModel(application: Application) : AndroidViewModel(applicatio
111
120
password : String
112
121
) {
113
122
if (! isUserNameValid(username)) {
114
- _loginFormState .value =
115
- LoginFormState (usernameError = R .string.login_form_username_invalid)
123
+ _loginFormState .value = LoginFormState (usernameError = R .string.login_form_username_invalid)
116
124
return
117
125
}
118
126
119
127
if (! isPasswordValid(password)) {
120
- _loginFormState .value =
121
- LoginFormState (passwordError = R .string.login_form_password_invalid)
128
+ _loginFormState .value = LoginFormState (passwordError = R .string.login_form_password_invalid)
122
129
return
123
130
}
124
131
@@ -153,7 +160,8 @@ class AuthLoginViewModel(application: Application) : AndroidViewModel(applicatio
153
160
val type = object : TypeToken <AuthLoginError >() {}.type
154
161
155
162
return Gson ().fromJson(
156
- response.errorBody()!!
163
+ response
164
+ .errorBody()!!
157
165
.charStream(),
158
166
type
159
167
)
@@ -165,10 +173,8 @@ class AuthLoginViewModel(application: Application) : AndroidViewModel(applicatio
165
173
* @author [S. Grimault](mailto:[email protected] )
166
174
*/
167
175
data class LoginFormState (
168
- @StringRes
169
- val usernameError : Int? = null ,
170
- @StringRes
171
- val passwordError : Int? = null ,
176
+ @StringRes val usernameError : Int? = null ,
177
+ @StringRes val passwordError : Int? = null ,
172
178
val isValid : Boolean = false
173
179
)
174
180
@@ -179,8 +185,7 @@ class AuthLoginViewModel(application: Application) : AndroidViewModel(applicatio
179
185
*/
180
186
data class LoginResult (
181
187
val success : AuthLogin ? = null ,
182
- @StringRes
183
- val error : Int? = null
188
+ @StringRes val error : Int? = null
184
189
) {
185
190
186
191
fun hasError (): Boolean {
0 commit comments