diff --git a/entity/CampaignParticipant_entity/CampaignParticipant_entity.aod b/entity/CampaignParticipant_entity/CampaignParticipant_entity.aod index 8969b5341cf0919a07689aa4ec87ce14bcea506e..915da6b61af56a9c4a3121dbe85d19f3c84db51e 100644 --- a/entity/CampaignParticipant_entity/CampaignParticipant_entity.aod +++ b/entity/CampaignParticipant_entity/CampaignParticipant_entity.aod @@ -77,7 +77,6 @@ <title>Campaign Step</title> <consumer>CampaignSteps</consumer> <state>EDITABLE</state> - <valueProcess>%aditoprj%/entity/CampaignParticipant_entity/entityfields/campaignstep_id/valueProcess.js</valueProcess> <displayValueProcess>%aditoprj%/entity/CampaignParticipant_entity/entityfields/campaignstep_id/displayValueProcess.js</displayValueProcess> <onValueChange>%aditoprj%/entity/CampaignParticipant_entity/entityfields/campaignstep_id/onValueChange.js</onValueChange> <onValueChangeTypes> @@ -108,6 +107,7 @@ <consumer>AnyContacts</consumer> <linkedContextProcess>%aditoprj%/entity/CampaignParticipant_entity/entityfields/contact_id/linkedContextProcess.js</linkedContextProcess> <state>READONLY</state> + <stateProcess>%aditoprj%/entity/CampaignParticipant_entity/entityfields/contact_id/stateProcess.js</stateProcess> <valueProcess>%aditoprj%/entity/CampaignParticipant_entity/entityfields/contact_id/valueProcess.js</valueProcess> <displayValueProcess>%aditoprj%/entity/CampaignParticipant_entity/entityfields/contact_id/displayValueProcess.js</displayValueProcess> </entityField> diff --git a/entity/CampaignParticipant_entity/entityfields/campaign_id/onValueChange.js b/entity/CampaignParticipant_entity/entityfields/campaign_id/onValueChange.js index 07814c86a4ccb47432e0d0daff74ea1c4b1a90f6..3310f3466e93067f87181ce926d9923f3cb703c5 100644 --- a/entity/CampaignParticipant_entity/entityfields/campaign_id/onValueChange.js +++ b/entity/CampaignParticipant_entity/entityfields/campaign_id/onValueChange.js @@ -4,5 +4,5 @@ import("Campaign_lib"); import("system.vars"); var stepId = CampaignUtils.getDefaultCampaignStep(vars.get("$field.CAMPAIGN_ID")); - +logging.log("stepId -> " + stepId); neon.setFieldValue("$field.CAMPAIGNSTEP_ID", stepId); \ No newline at end of file diff --git a/entity/CampaignParticipant_entity/entityfields/campaignstep_id/valueProcess.js b/entity/CampaignParticipant_entity/entityfields/campaignstep_id/valueProcess.js deleted file mode 100644 index 5c754b2b2bff51e7f2b5b5e26284cd5b32df620f..0000000000000000000000000000000000000000 --- a/entity/CampaignParticipant_entity/entityfields/campaignstep_id/valueProcess.js +++ /dev/null @@ -1,12 +0,0 @@ -import("system.logging"); -import("system.neon"); -import("system.result"); -import("system.vars"); - -logging.log("test -> " + vars.exists("$param.CampaignStepId_param")); -if(vars.get("$sys.recordstate") == neon.OPERATINGSTATE_NEW && - vars.exists("$param.CampaignStepId_param") && vars.get("$param.CampaignStepId_param")) -{ - logging.log("campaignParticipant.CAMPAIGNSTEP_ID valueProcess -> CampaignStepId_param " + vars.get("$param.CampaignStepId_param")); - result.string(vars.get("$param.CampaignStepId_param")); -} \ No newline at end of file diff --git a/entity/CampaignParticipant_entity/entityfields/contact_id/stateProcess.js b/entity/CampaignParticipant_entity/entityfields/contact_id/stateProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..5b6862597686b505239e46fb2e47034e558fa50c --- /dev/null +++ b/entity/CampaignParticipant_entity/entityfields/contact_id/stateProcess.js @@ -0,0 +1,12 @@ +import("system.result"); +import("system.neon"); +import("system.vars"); + +if(vars.exists("$param.ContactId_param") && vars.get("$param.ContactId_param")) + //A contact has been provided. Show it in readonly. + fieldState = neon.COMPONENTSTATE_READONLY; +else + //No contact has been provided, therefore let the user select one. + fieldState = neon.COMPONENTSTATE_EDITABLE; + +result.string(fieldState); \ No newline at end of file