diff options
Diffstat (limited to 'lib/Fripost/Prompt.pm')
-rwxr-xr-x | lib/Fripost/Prompt.pm | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/lib/Fripost/Prompt.pm b/lib/Fripost/Prompt.pm index 4f71faf..0edc22f 100755 --- a/lib/Fripost/Prompt.pm +++ b/lib/Fripost/Prompt.pm @@ -58,7 +58,7 @@ sub prompt_email { unless (Email::Valid->address($email)) { undef $email; - say "This is not a valid e-mail address. Try again." + say "Error: This is not a valid e-mail address. Try again." } } until (defined $email); @@ -72,11 +72,19 @@ sub prompt_password { my $password; do { - $password = prompt -in => \*STDIN, -out => \*STDOUT, $msg, -echo => '*'; - my $confirm = prompt -in => \*STDIN, -out => \*STDOUT, $msg2, -echo => '*'; - unless ($password eq $confirm) { + $password = prompt -in => \*STDIN, -out => \*STDOUT, + $msg, -echo => '*'; + if ($password ne '' and length $password < 12) { undef $password; - say "Passwords do not match"; + say STDERR "Error: Passwords have to be at least 12 characters long."; + } + else { + my $confirm = prompt -in => \*STDIN, -out => \*STDOUT, + $msg2, -echo => '*'; + unless ($password eq $confirm) { + undef $password; + say STDERR "Error: Passwords do not match"; + } } } until (defined $password); |