Commit 9f2c01e8 authored by Filipe de Lima Brito's avatar Filipe de Lima Brito

Add TODOs and update field validations.

parent c9399aa4
...@@ -21,6 +21,7 @@ class LoginPresenter @Inject constructor(private val view: LoginView, ...@@ -21,6 +21,7 @@ class LoginPresenter @Inject constructor(private val view: LoginView,
private val okHttpClient: OkHttpClient, private val okHttpClient: OkHttpClient,
private val logger: PlatformLogger, private val logger: PlatformLogger,
private val repository: AuthTokenRepository) { private val repository: AuthTokenRepository) {
// TODO: Create a single entry point to RocketChatClient
val client: RocketChatClient = RocketChatClient.create { val client: RocketChatClient = RocketChatClient.create {
httpClient = okHttpClient httpClient = okHttpClient
restUrl = HttpUrl.parse(navigator.currentServer)!! restUrl = HttpUrl.parse(navigator.currentServer)!!
...@@ -29,26 +30,22 @@ class LoginPresenter @Inject constructor(private val view: LoginView, ...@@ -29,26 +30,22 @@ class LoginPresenter @Inject constructor(private val view: LoginView,
platformLogger = logger platformLogger = logger
} }
fun authenticate(usernameOrEmail: EditText, password: EditText) { fun authenticate(usernameOrEmailEditText: EditText, passwordEditText: EditText) {
val user = usernameOrEmail.textContent val usernameOrEmail = usernameOrEmailEditText.textContent
val pass = password.textContent val password = passwordEditText.textContent
if (user.isBlank() && pass.isEmpty()) { when {
view.shakeView(usernameOrEmail) usernameOrEmail.isBlank() -> view.shakeView(usernameOrEmailEditText)
view.shakeView(password) password.isEmpty() -> view.shakeView(passwordEditText)
} else if (user.isBlank()) { else -> launchUI(strategy) {
view.shakeView(usernameOrEmail)
} else if (pass.isEmpty()) {
view.shakeView(password)
} else {
launchUI(strategy) {
view.showLoading() view.showLoading()
try { try {
val token = client.login(user, pass) val token = client.login(usernameOrEmail, password)
// TODO: Salve token.
navigator.toChatList() navigator.toChatList()
} catch (ex: RocketChatException) { } catch (ex: RocketChatException) {
when (ex) { when (ex) {
is RocketChatTwoFactorException -> navigator.toTwoFA(navigator.currentServer!!, user, pass) is RocketChatTwoFactorException -> navigator.toTwoFA(navigator.currentServer!!, usernameOrEmail, password)
else -> { else -> {
val errorMessage = ex.message val errorMessage = ex.message
if (errorMessage != null) { if (errorMessage != null) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment