new rule logic.

This commit is contained in:
Kevin G Christiano 2020-05-15 15:37:40 -04:00
parent 7e3c9fdcdb
commit 461fd5e2ca

View File

@ -28,23 +28,21 @@ public class RuleEqualsIgnoreCaseModel: RulesProtocol {
}
public func validate(_ fieldMolecules: [String: FormFieldProtocol]) -> Bool {
var valid = true
var compareValue: AnyHashable?
var valid = false
var compareValue: String?
for formKey in fields {
guard let formField = fieldMolecules[formKey] else { continue }
if compareValue == nil {
compareValue = formField.formFieldValue()
compareValue = formField.formFieldValue() as? String
continue
}
let a = compareValue.caseInsensitiveCompare(formField.formFieldValue())
if compareValue != formField.formFieldValue() {
if let compareValue = compareValue, let fieldValue = formField.formFieldValue() as? String,
compareValue.caseInsensitiveCompare(fieldValue) == .orderedSame {
valid = false
(formField as? FormRuleWatcherFieldProtocol)?.setValidity(valid, rule: self)
break
} else {
(formField as? FormRuleWatcherFieldProtocol)?.setValidity(valid, rule: self)
}