TOMBO source code
Revision | 8509ee0c5e89346f8213cd205d10067a50779222 (tree) |
---|---|
Time | 2012-04-12 00:30:02 |
Author | Hirami <tomohisa.hirami@nift...> |
Commiter | Hirami |
Change when encrypting, ask password twice.
Because if password is misspelled, user can't decrypt forever.
@@ -6,7 +6,8 @@ | ||
6 | 6 | @synthesize password = _password; |
7 | 7 | |
8 | 8 | - (BOOL)preparePassword { |
9 | - SinglePasswordDialog *dialog = [[SinglePasswordDialog alloc] initWithDefault]; | |
9 | + SinglePasswordDialog *dialog = [[SinglePasswordDialog alloc] initWithTitle:@"Password" | |
10 | + message:@"Please input password"]; | |
10 | 11 | NSString *pass = [dialog showAndWait]; |
11 | 12 | if (pass == nil) return NO; |
12 | 13 |
@@ -15,7 +16,20 @@ | ||
15 | 16 | } |
16 | 17 | |
17 | 18 | - (BOOL)preparePasswordConfirm { |
18 | - //TOOD: implement | |
19 | - return [self preparePassword]; | |
19 | + SinglePasswordDialog *dialog = [[SinglePasswordDialog alloc] initWithTitle:@"Password" | |
20 | + message:@"Please input password"]; | |
21 | + NSString *pass1 = [dialog showAndWait]; | |
22 | + if (pass1 == nil) return NO; | |
23 | + | |
24 | + dialog = [[SinglePasswordDialog alloc] initWithTitle:@"Confirm" message:@"Input password again"]; | |
25 | + NSString *pass2 = [dialog showAndWait]; | |
26 | + if (pass2 == nil) return NO; | |
27 | + | |
28 | + if (![pass1 isEqualToString:pass2]) { | |
29 | + UIAlertView *mismatch = [[UIAlertView alloc] initWithTitle:@"Warn" message:@"Password mismatch." delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil]; | |
30 | + [mismatch show]; | |
31 | + return NO; | |
32 | + } | |
33 | + return YES; | |
20 | 34 | } |
21 | 35 | @end |
@@ -4,7 +4,7 @@ | ||
4 | 4 | |
5 | 5 | @property (strong,nonatomic) NSString *password; |
6 | 6 | |
7 | -- (id)initWithDefault; | |
7 | +- (id)initWithTitle:(NSString *)title message:(NSString *)message; | |
8 | 8 | |
9 | 9 | - (NSString *)showAndWait; |
10 | 10 | @end |
@@ -6,9 +6,9 @@ | ||
6 | 6 | |
7 | 7 | @synthesize password=_password; |
8 | 8 | |
9 | -- (id)initWithDefault { | |
10 | - return [self initWithTitle:@"Password" message:@"Please input password" delegate:self | |
11 | - cancelButtonTitle:@"Cancel" otherButtonTitles:@"OK", nil]; | |
9 | +- (id)initWithTitle:(NSString *)title message:(NSString *)message { | |
10 | + return [self initWithTitle:title message:message | |
11 | + delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"OK", nil]; | |
12 | 12 | } |
13 | 13 | |
14 | 14 | - (NSString *)showAndWait { |