Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b75f8d14 authored by Ricki Hirner's avatar Ricki Hirner
Browse files

Login: couple user name and email address

parent 206c2e8a
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -90,19 +90,19 @@ class DefaultLoginCredentialsFragment: Fragment() {
        when {
            model.loginWithEmailAddress.value == true -> {
                // login with email address
                model.emailAddressError.value = null
                val email = model.emailAddress.value.orEmpty()
                model.usernameError.value = null
                val email = model.username.value.orEmpty()
                if (email.matches(Regex(".+@.+"))) {
                    // already looks like an email address
                    try {
                        loginModel.baseURI = URI(MailTo.MAILTO_SCHEME, email, null)
                        valid = true
                    } catch (e: URISyntaxException) {
                        model.emailAddressError.value = e.localizedMessage
                        model.usernameError.value = e.localizedMessage
                    }
                } else {
                    valid = false
                    model.emailAddressError.value = getString(R.string.login_email_address_error)
                    model.usernameError.value = getString(R.string.login_email_address_error)
                }

                val password = validatePassword()
+2 −4
Original line number Diff line number Diff line
@@ -15,9 +15,7 @@ class DefaultLoginCredentialsModel: ViewModel() {
    val baseUrl = MutableLiveData<String>()
    val baseUrlError = MutableLiveData<String>()

    val emailAddress = MutableLiveData<String>()
    val emailAddressError = MutableLiveData<String>()

    /** user name or email address */
    val username = MutableLiveData<String>()
    val usernameError = MutableLiveData<String>()

@@ -45,7 +43,7 @@ class DefaultLoginCredentialsModel: ViewModel() {
            baseUrl.value = givenUrl
        } else {
            loginWithEmailAddress.value = true
            emailAddress.value = givenUsername
            username.value = givenUsername
        }
        password.value = givenPassword

+1 −2
Original line number Diff line number Diff line
@@ -11,7 +11,6 @@ object BindingAdapters {
    @JvmStatic
    fun setError(textView: TextView, error: String?) {
        textView.error = error
        textView.requestFocus()
    }

    @BindingAdapter("html")
+2 −2
Original line number Diff line number Diff line
@@ -65,8 +65,8 @@
                            android:layout_width="match_parent"
                            android:layout_height="wrap_content"
                            android:hint="@string/login_email_address"
                            android:text="@={model.emailAddress}"
                            app:error="@{model.emailAddressError}"
                            android:text="@={model.username}"
                            app:error="@{model.usernameError}"
                            android:inputType="textEmailAddress"/>
                    </com.google.android.material.textfield.TextInputLayout>
                    <com.google.android.material.textfield.TextInputLayout