get groupName from model

This commit is contained in:
Suresh, Kamlesh 2021-05-17 16:31:23 -04:00
parent 085c990475
commit 9998a514f3

View File

@ -114,8 +114,8 @@ import MVMCore
// TODO: Temporary hacks, rewrite architecture to support this.
public extension FormValidator {
func addFormParams(requestParameters: MVMCoreRequestParameters, model: (MoleculeModelProtocol & FormFieldProtocol)?) {
let groupName = model?.groupName ?? FormValidator.defaultGroupName
func addFormParams(requestParameters: MVMCoreRequestParameters, model: (MoleculeModelProtocol & FormItemProtocol)?) {
let groupName = model?.groupName ?? getGroupName(forPageType: requestParameters.pageType) ?? FormValidator.defaultGroupName
let formParams = getFormParams(forGroup: groupName)
requestParameters.add(formParams)
}
@ -132,3 +132,20 @@ public extension FormValidator {
return extraParam
}
}
// TODO: Temporary hacks, rewrite architecture to support this.
public extension FormValidator {
func getGroupName(forPageType pageType: String?) -> String? {
for actionItem in groupWatchers {
if let buttonModel = actionItem as? ButtonModel,
pageType == (buttonModel.action as? ActionOpenPageProtocol)?.pageType {
return buttonModel.groupName
}
}
return nil
}
}