Własna reguła walidacyjna

0

Robię zmianę hasła w profilu usera.
Mam trzy pola: obecne hasło, nowe hasło, potwierdz nowe hasło.
Chciałbym aby:

  1. nowe hasło się nie powtarzało
  2. aby wpisane obecne hasło było właściwe.
    Stworzyłem Rule i punkt 2 działa:
    public function passes($attribute, $value)
    {
        return Hash::check($value, Auth::user()->password);
    }

jak stworzyć Rule aby odwołać się do innego pola aby wykonać pkt 1? wystarczylby taki warunek

if(strcmp(<stare_haslo>, <nowe_haslo>) == 0)
        return false
return true;

ale gdy tą regułe podepnę np. pod pole "new-password" nie wiem jak przekazać do tej metody wartość "stare_hasło"

0

możesz przecież użyć niemalże identycznej reguły tylko z negacją i podpiąć ją do pola z nowym hasłem

    public function passes($attribute, $value)
    {
        return ! Hash::check($value, Auth::user()->password);
        // w wolnym tłumaczeniu sprawdź czy nowe hasło zgadza się z obecnym i negacja
    }

:)

1 użytkowników online, w tym zalogowanych: 0, gości: 1