GithubHelp home page GithubHelp logo

Comments (6)

etaque avatar etaque commented on July 4, 2024

hi! good question.
I would try with a first read of password, andThen a read of password confirmation, that should give you a Validation e (String, String). Then you should be able to compare passwords and again use andThen to return only the password confirmation value.

from elm-form.

etaque avatar etaque commented on July 4, 2024

closing due to inactivity, feel free to reopen if you're still stuck.

from elm-form.

alexofob avatar alexofob commented on July 4, 2024

Many thanks for the feedback. I had wanted to implement and share feedback, but now, I decided to go with polymer web components and I had not since had a need to implement the suggestions.

from elm-form.

werner avatar werner commented on July 4, 2024

Hi @etaque, I'm having the same issue here, but I can't figure it out the solution, for example I have this code:

validate : Validation () User
validate =
    map3 User
        (field "email" email)
        (field "password" (string |> andThen nonEmpty))
        (field "passwordConfirmation" (string |> andThen nonEmpty))

How can I read the password to pass it to passwordConfirmation?

Thanks.

from elm-form.

alexofob avatar alexofob commented on July 4, 2024

Hi @etaque ,

I have implemented your recommendation on how to do the password confirmation as below:

`
validateChangePwdForm : Validation CustomError ChangePwdForm
validateChangePwdForm =
map2 ChangePwdForm
(field "newPassword" validatePassword)
(field "confirmPassword" string |> andThen passwordsMatch)

passwordsMatch : String -> Validation CustomError String
passwordsMatch confirmPassword =
(field "newPassword" string)
|> andThen
(\s ->
if (s /= confirmPassword) then
fail (customError PasswordsMustMatch)
else
succeed s
)
`

And I am using the below code to show the error message when the passwords do not much.

`
let
password =
Form.getFieldAsString "confirmPassword" changePwdForm

    ( passwordError, invalid ) =
        case password.liveError of
            Just errorValue ->
                case errorValue of
                    Form.Error.Empty ->
                        ( "Please confirm your password.", attribute "invalid" "" )

                    Form.Error.CustomError PasswordsMustMatch ->
                        ( "Passwords must match", attribute "invalid" "" )

                    _ ->
                        ( "Please provide a valid Password.", attribute "invalid" "" )

            Nothing ->
                ( "", class "" )
`

However, I am unable to see the Error message when the input is validated.

What am I doing wrong?

From the troubleshooting I have done so far, it seems that the line

fail (customError PasswordsMustMatch)

is failing to return the validation.

I will appreciate your feedback.

Thanks.

from elm-form.

etaque avatar etaque commented on July 4, 2024

follow up in #75

from elm-form.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.