Merge branch 'feature/form_group_fix' into 'develop'
Feature/form group fix See merge request BPHV_MIPS/mvm_core_ui!716
This commit is contained in:
commit
345fb971cc
@ -79,7 +79,7 @@ public typealias ButtonAction = (Button) -> ()
|
|||||||
|
|
||||||
addActionBlock(event: .touchUpInside) { [weak self] sender in
|
addActionBlock(event: .touchUpInside) { [weak self] sender in
|
||||||
guard let self = self, let actionModel = actionModel else { return }
|
guard let self = self, let actionModel = actionModel else { return }
|
||||||
Self.performButtonAction(with: actionModel, button: self, delegateObject: delegateObject, additionalData: additionalData)
|
Self.performButtonAction(with: actionModel, button: self, delegateObject: delegateObject, additionalData: additionalData, sourceModel: self.model)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -449,8 +449,8 @@ import UIKit
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Override this method to avoid adding form params.
|
/// Override this method to avoid adding form params.
|
||||||
open func addFormParams(_ requestParameters: MVMCoreRequestParameters) {
|
open func addFormParams(requestParameters: MVMCoreRequestParameters, actionInformation: [AnyHashable: Any]?, additionalData: [AnyHashable: Any]?) {
|
||||||
formValidator?.addFormParams(requestParameters: requestParameters)
|
formValidator?.addFormParams(requestParameters: requestParameters, model: additionalData?[KeySourceModel] as? MoleculeModelProtocol & FormItemProtocol)
|
||||||
}
|
}
|
||||||
|
|
||||||
public func handleFieldErrors(_ fieldErrors: [Any]?, loadObject: MVMCoreLoadObject) {
|
public func handleFieldErrors(_ fieldErrors: [Any]?, loadObject: MVMCoreLoadObject) {
|
||||||
@ -472,7 +472,7 @@ import UIKit
|
|||||||
//--------------------------------------------------
|
//--------------------------------------------------
|
||||||
|
|
||||||
open func handleOpenPage(for requestParameters: MVMCoreRequestParameters, actionInformation: [AnyHashable: Any]?, additionalData: [AnyHashable: Any]?) {
|
open func handleOpenPage(for requestParameters: MVMCoreRequestParameters, actionInformation: [AnyHashable: Any]?, additionalData: [AnyHashable: Any]?) {
|
||||||
addFormParams(requestParameters)
|
addFormParams(requestParameters: requestParameters, actionInformation: actionInformation, additionalData: additionalData)
|
||||||
requestParameters.parentPageType = loadObject?.pageJSON?.optionalStringForKey("parentPageType")
|
requestParameters.parentPageType = loadObject?.pageJSON?.optionalStringForKey("parentPageType")
|
||||||
var pageForwardedData = additionalData ?? [:]
|
var pageForwardedData = additionalData ?? [:]
|
||||||
executeBehaviors { (behavior: PageLocalDataShareBehavior) in
|
executeBehaviors { (behavior: PageLocalDataShareBehavior) in
|
||||||
|
|||||||
@ -117,20 +117,20 @@ import MVMCore
|
|||||||
|
|
||||||
// MARK: Form params
|
// MARK: Form params
|
||||||
// TODO: Temporary hacks, rewrite architecture to support this.
|
// TODO: Temporary hacks, rewrite architecture to support this.
|
||||||
@objc public extension FormValidator {
|
public extension FormValidator {
|
||||||
|
|
||||||
@objc func addFormParams(requestParameters: MVMCoreRequestParameters) {
|
func addFormParams(requestParameters: MVMCoreRequestParameters, model: (MoleculeModelProtocol & FormItemProtocol)?) {
|
||||||
let groupName = getGroupName(forPageType: requestParameters.pageType) ?? FormValidator.defaultGroupName
|
let groupName = model?.groupName ?? getGroupName(forPageType: requestParameters.pageType) ?? FormValidator.defaultGroupName
|
||||||
let formParams = self.getFormParams(forGroup: groupName)
|
let formParams = getFormParams(forGroup: groupName)
|
||||||
requestParameters.add(formParams)
|
requestParameters.add(formParams)
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func getFormParams( forGroup groupName: String) -> [String: Any] {
|
@objc func getFormParams(forGroup groupName: String) -> [String: Any] {
|
||||||
|
|
||||||
var extraParam: [String: Any] = [:]
|
var extraParam: [String: Any] = [:]
|
||||||
for (fieldKey, field) in fields {
|
for (fieldKey, field) in fields {
|
||||||
if let formFieldValue = field.formFieldValue(),
|
if let formFieldValue = field.formFieldValue(),
|
||||||
groupName == field.groupName {
|
groupName == field.groupName {
|
||||||
extraParam[fieldKey] = formFieldValue
|
extraParam[fieldKey] = formFieldValue
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -154,3 +154,4 @@ public extension FormValidator {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user