Skip to content
Snippets Groups Projects
valueProcess.js 1.19 KiB
import("Campaign_lib");
import("system.eMath");
import("FilterviewMenuAction_lib");
import("system.result");
import("system.vars");
import("system.neon");

if(vars.get("$field.CAMPAIGN_ID"))
{
    var comingfrom = vars.getString("$param.dataSourceTableName_param");
    var contactIds;
    var filteredContactIds;
    var selection = vars.getString("$param.campaignParticipantsRowIds_param");
    
    if(vars.exists("$param.campaignParticipantsCondition_param") && vars.get("$param.campaignParticipantsCondition_param"))
    {
        selection = JSON.parse(vars.getString("$param.campaignParticipantsCondition_param")).condition;
        if(comingfrom == "Organisation")
            filteredContactIds = FilterviewMenuActionUtils.organisationIdsFilter(selection);
        else if(comingfrom == "Person")
            filteredContactIds = FilterviewMenuActionUtils.contactIdsFilter(selection)
        contactIds = CampaignUtils.GetContactIdsNotInCampaignByRowIds(vars.get("$field.CAMPAIGN_ID"), filteredContactIds);
    }
    else
    {
        contactIds = CampaignUtils.GetContactIdsNotInCampaignByRowIds(vars.get("$field.CAMPAIGN_ID"), JSON.parse(selection));
    }
    result.string(JSON.stringify(contactIds));
}