Browse Source

getText in textFormField class returns nil is String is empty

Bastian van de Wetering 6 years ago
parent
commit
ae5a1086ca
2 changed files with 18 additions and 10 deletions
  1. 8 8
      deltachat-ios/AccountSetupController.swift
  2. 10 2
      deltachat-ios/TextFieldCell.swift

+ 8 - 8
deltachat-ios/AccountSetupController.swift

@@ -356,26 +356,26 @@ class AccountSetupController: UITableViewController {
 
 		for cell in advancedSectionCells {
 
-			if let textFieldCell = cell as? TextFieldCell, let text = textFieldCell.getText() {
+			if let textFieldCell = cell as? TextFieldCell {
 				switch cell.accessibilityIdentifier {
 				case "IMAPServerCell":
-					MRConfig.mailServer = text
+					MRConfig.mailServer = textFieldCell.getText() ?? nil
 				case "IMAPUserCell":
-					MRConfig.mailUser = text
+					MRConfig.mailUser = textFieldCell.getText() ?? nil
 				case "IMAPPortCell":
-					MRConfig.mailPort = text
+					MRConfig.mailPort = textFieldCell.getText() ?? nil
 				case "IMAPSecurityCell":
 					let flag = 0
 					MRConfig.setImapSecurity(imapFlags: flag)
 					break;
 				case "SMTPServerCell":
-					MRConfig.sendServer = text
+					MRConfig.sendServer = textFieldCell.getText() ?? nil
 				case "SMTPSUserCell":
-					MRConfig.sendUser = text
+					MRConfig.sendUser = textFieldCell.getText() ?? nil
 				case "SMTPPortCell":
-					MRConfig.sendPort = text
+					MRConfig.sendPort = textFieldCell.getText() ?? nil
 				case "SMTPPasswordCell":
-					MRConfig.sendPw = text
+					MRConfig.sendPw = textFieldCell.getText() ?? nil
 				case "SMTPSecurityCell":
 					let flag = 0
 					MRConfig.setSmtpSecurity(smptpFlags: flag)

+ 10 - 2
deltachat-ios/TextFieldCell.swift

@@ -58,8 +58,16 @@ class TextFieldCell: UITableViewCell {
     }
 
     func getText() -> String? {
-        return self.textField.text 
-    }
+		if let text = textField.text {
+			if text.isEmpty {
+				return nil
+			} else {
+				return self.textField.text
+			}
+		} else {
+			return nil
+		}
+}
 
 
 	static func makeEmailCell(delegate: UITextFieldDelegate? = nil) -> TextFieldCell {