mirror of
https://gitlab.opencode.de/bwi/bundesmessenger/clients/bundesmessenger-ios.git
synced 2026-04-30 21:26:57 +02:00
Moved code in the Console folder to the root of the repo
This commit is contained in:
@@ -0,0 +1,209 @@
|
||||
/*
|
||||
Copyright 2014 OpenMarket Ltd
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
*/
|
||||
|
||||
#import "AuthInputsView.h"
|
||||
#import "MatrixSDKHandler.h"
|
||||
|
||||
@implementation AuthInputsView
|
||||
|
||||
- (CGFloat)actualHeight {
|
||||
return self.frame.size.height;
|
||||
}
|
||||
|
||||
- (BOOL)areAllRequiredFieldsFilled {
|
||||
// Currently no field to check here
|
||||
return YES;
|
||||
}
|
||||
|
||||
- (void)setAuthType:(AuthenticationType)authType {
|
||||
if (authType == AuthenticationTypeLogin) {
|
||||
self.displayNameTextField.hidden = YES;
|
||||
} else {
|
||||
self.displayNameTextField.hidden = NO;
|
||||
}
|
||||
_authType = authType;
|
||||
}
|
||||
|
||||
- (void)dismissKeyboard {
|
||||
[self.displayNameTextField resignFirstResponder];
|
||||
}
|
||||
|
||||
- (void)nextStep {
|
||||
self.displayNameTextField.hidden = YES;
|
||||
}
|
||||
|
||||
- (void)resetStep {
|
||||
self.authType = _authType;
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
#pragma mark - AuthInputsPasswordBasedView
|
||||
|
||||
@implementation AuthInputsPasswordBasedView
|
||||
|
||||
- (CGFloat)actualHeight {
|
||||
if (self.authType == AuthenticationTypeLogin) {
|
||||
return self.displayNameTextField.frame.origin.y;
|
||||
}
|
||||
return super.actualHeight;
|
||||
}
|
||||
|
||||
- (BOOL)areAllRequiredFieldsFilled {
|
||||
BOOL ret = [super areAllRequiredFieldsFilled];
|
||||
|
||||
// Check user login and pass fields
|
||||
ret = (ret && self.userLoginTextField.text.length && self.passWordTextField.text.length);
|
||||
return ret;
|
||||
}
|
||||
|
||||
- (void)setAuthType:(AuthenticationType)authType {
|
||||
if (authType == AuthenticationTypeLogin) {
|
||||
self.passWordTextField.returnKeyType = UIReturnKeyDone;
|
||||
self.emailTextField.hidden = YES;
|
||||
self.emailInfoLabel.hidden = YES;
|
||||
} else {
|
||||
self.passWordTextField.returnKeyType = UIReturnKeyNext;
|
||||
self.emailTextField.hidden = NO;
|
||||
self.emailInfoLabel.hidden = NO;
|
||||
}
|
||||
super.authType = authType;
|
||||
|
||||
// Prefill text field
|
||||
self.userLoginTextField.text = [[MatrixSDKHandler sharedHandler] userLogin];
|
||||
self.passWordTextField.text = nil;
|
||||
}
|
||||
|
||||
- (void)dismissKeyboard {
|
||||
[self.userLoginTextField resignFirstResponder];
|
||||
[self.passWordTextField resignFirstResponder];
|
||||
[self.emailTextField resignFirstResponder];
|
||||
|
||||
[super dismissKeyboard];
|
||||
}
|
||||
|
||||
#pragma mark UITextField delegate
|
||||
|
||||
- (void)textFieldDidEndEditing:(UITextField *)textField {
|
||||
if (textField == self.userLoginTextField) {
|
||||
[[MatrixSDKHandler sharedHandler] setUserLogin:textField.text];
|
||||
}
|
||||
}
|
||||
|
||||
- (BOOL)textFieldShouldReturn:(UITextField*)textField {
|
||||
if (textField.returnKeyType == UIReturnKeyDone) {
|
||||
// "Done" key has been pressed
|
||||
[textField resignFirstResponder];
|
||||
|
||||
if (self.delegate && [self.delegate respondsToSelector:@selector(authInputsDoneKeyHasBeenPressed:)]) {
|
||||
// Launch authentication now
|
||||
[self.delegate authInputsDoneKeyHasBeenPressed:self];
|
||||
}
|
||||
} else {
|
||||
//"Next" key has been pressed
|
||||
if (textField == self.userLoginTextField) {
|
||||
[self.passWordTextField becomeFirstResponder];
|
||||
} else if (textField == self.passWordTextField) {
|
||||
[self.displayNameTextField becomeFirstResponder];
|
||||
} else if (textField == self.displayNameTextField) {
|
||||
[self.emailTextField becomeFirstResponder];
|
||||
}
|
||||
}
|
||||
|
||||
return YES;
|
||||
}
|
||||
@end
|
||||
|
||||
#pragma mark - AuthInputsEmailCodeBasedView
|
||||
|
||||
@implementation AuthInputsEmailCodeBasedView
|
||||
|
||||
- (CGFloat)actualHeight {
|
||||
if (self.authType == AuthenticationTypeLogin) {
|
||||
return self.displayNameTextField.frame.origin.y;
|
||||
}
|
||||
return super.actualHeight;
|
||||
}
|
||||
|
||||
- (BOOL)areAllRequiredFieldsFilled {
|
||||
BOOL ret = [super areAllRequiredFieldsFilled];
|
||||
|
||||
// Check required fields //FIXME what are required fields in this authentication flow?
|
||||
ret = (ret && self.userLoginTextField.text.length && self.emailAndTokenTextField.text.length);
|
||||
return ret;
|
||||
}
|
||||
|
||||
- (void)setAuthType:(AuthenticationType)authType {
|
||||
// Set initial layout
|
||||
self.userLoginTextField.hidden = NO;
|
||||
self.promptEmailTokenLabel.hidden = YES;
|
||||
|
||||
if (authType == AuthenticationTypeLogin) {
|
||||
self.emailAndTokenTextField.returnKeyType = UIReturnKeyDone;
|
||||
} else {
|
||||
self.emailAndTokenTextField.returnKeyType = UIReturnKeyNext;
|
||||
}
|
||||
|
||||
super.authType = authType;
|
||||
}
|
||||
|
||||
- (void)dismissKeyboard {
|
||||
[self.userLoginTextField resignFirstResponder];
|
||||
[self.emailAndTokenTextField resignFirstResponder];
|
||||
|
||||
[super dismissKeyboard];
|
||||
}
|
||||
|
||||
- (void)nextStep {
|
||||
// Consider here the email token has been requested with success
|
||||
[super nextStep];
|
||||
|
||||
self.userLoginTextField.hidden = YES;
|
||||
self.promptEmailTokenLabel.hidden = NO;
|
||||
self.emailAndTokenTextField.returnKeyType = UIReturnKeyDone;
|
||||
}
|
||||
|
||||
#pragma mark UITextField delegate
|
||||
|
||||
- (void)textFieldDidEndEditing:(UITextField *)textField {
|
||||
if (textField == self.userLoginTextField) {
|
||||
[[MatrixSDKHandler sharedHandler] setUserLogin:textField.text];
|
||||
}
|
||||
// FIXME store user's email in matrixSDKHandler like userId
|
||||
}
|
||||
|
||||
- (BOOL)textFieldShouldReturn:(UITextField*)textField {
|
||||
if (textField.returnKeyType == UIReturnKeyDone) {
|
||||
// "Done" key has been pressed
|
||||
[textField resignFirstResponder];
|
||||
|
||||
if (self.delegate && [self.delegate respondsToSelector:@selector(authInputsDoneKeyHasBeenPressed:)]) {
|
||||
// Launch authentication now
|
||||
[self.delegate authInputsDoneKeyHasBeenPressed:self];
|
||||
}
|
||||
} else {
|
||||
//"Next" key has been pressed
|
||||
if (textField == self.userLoginTextField) {
|
||||
[self.emailAndTokenTextField becomeFirstResponder];
|
||||
} else if (textField == self.emailAndTokenTextField) {
|
||||
[self.displayNameTextField becomeFirstResponder];
|
||||
}
|
||||
}
|
||||
|
||||
return YES;
|
||||
}
|
||||
|
||||
@end
|
||||
Reference in New Issue
Block a user