Ejemplo n.º 1
0
 /**
  * PasswordFilter constructor.
  * @param PasswordOptions $passwordOptions
  * @param SecretQuestion $secretQuestionService
  */
 public function __construct(PasswordOptions $passwordOptions, SecretQuestion $secretQuestionService)
 {
     $this->passwordOptions = $passwordOptions;
     if ($this->passwordOptions->isSecretQuestion()) {
         $similarText = new SimilarText($secretQuestionService);
         $this->setSimilarText($similarText);
     }
     $passwordLengthOptions = $this->passwordOptions->getLength();
     $this->add(['name' => 'password', 'required' => true, 'filters' => [['name' => 'StringTrim']], 'validators' => [['name' => 'StringLength', 'options' => ['min' => $passwordLengthOptions['min'], 'max' => $passwordLengthOptions['max']]], new PasswordRules($passwordOptions)]]);
     $this->add(['name' => 'passwordVerify', 'required' => true, 'filters' => [['name' => 'StringTrim']], 'validators' => [['name' => 'StringLength', 'options' => ['min' => $passwordLengthOptions['min'], 'max' => $passwordLengthOptions['max']]], ['name' => 'Identical', 'options' => ['token' => 'password']], new PasswordRules($passwordOptions)]]);
 }
Ejemplo n.º 2
0
 /**
  * @param PasswordOptions $passwordOptions
  */
 public function __construct(PasswordOptions $passwordOptions)
 {
     $passwordLengthOptions = $passwordOptions->getLength();
     $this->add(['name' => 'currentPassword', 'required' => true, 'filters' => [['name' => 'StringTrim']], 'validators' => [['name' => 'StringLength', 'options' => ['min' => $passwordLengthOptions['min'], 'max' => $passwordLengthOptions['max']]]]]);
     $this->add(['name' => 'password', 'required' => true, 'filters' => [['name' => 'StringTrim']], 'validators' => [['name' => 'StringLength', 'options' => ['min' => $passwordLengthOptions['min'], 'max' => $passwordLengthOptions['max']]], new PasswordRules($passwordOptions)]]);
     $this->add(['name' => 'passwordVerify', 'required' => true, 'filters' => [['name' => 'StringTrim']], 'validators' => [['name' => 'StringLength', 'options' => ['min' => $passwordLengthOptions['min'], 'max' => $passwordLengthOptions['max']]], ['name' => 'Identical', 'options' => ['token' => 'password']], new PasswordRules($passwordOptions)]]);
 }