Newer
Older

Sebastian Pongratz
committed
import("WsValidation_lib");
import("Sql_lib");
import("Location_lib");
import("Address_lib");
import("system.vars");
import("DataPrivacy_lib");
var rowdata = vars.get("$local.rowdata");

Sebastian Pongratz
committed
if(vars.exists("$context.PushDataPrivacyNotification") && vars.get("$context.PushDataPrivacyNotification") == "false")

Sebastian Pongratz
committed
{
DataPrivacyUtils.notifyNeedDataPrivacyUpdate(rowdata["COMMUNICATION.CONTACT_ID"], vars.get("$param.ShowDsgvoMessage_param"));
vars.set("$context.PushDataPrivacyNotification", "true");
}
var changed = vars.get("$local.changed");
var isAddressChanged = changed.includes("ADDRESS.ADDRESS")
|| changed.includes("ADDRESS.BUILDINGNO")
|| changed.includes("ADDRESS.ZIP")
|| changed.includes("ADDRESS.CITY")
|| changed.includes("ADDRESS.STATE")
|| changed.includes("ADDRESS.COUNTRY");
if (isAddressChanged)
{
var address = new AddressObject(rowdata["ADDRESS.ADDRESS"], rowdata["ADDRESS.BUILDINGNO"], rowdata["ADDRESS.ZIP"], rowdata["ADDRESS.CITY"], rowdata["ADDRESS.COUNTRY"], rowdata["ADDRESS.STATE"]);
var addressLocation = new LocationFinder().getGeoLocation(address);
if (addressLocation)
{

Sebastian Pongratz
committed
let fieldsValues = {};
if (isAddressChanged)
{
fieldsValues["LAT"] = addressLocation.lat;
fieldsValues["LON"] = addressLocation.lon;
}
if (rowdata["ADDRESS.VALIDATION_RESULT"] === null)
{
fieldsValues["VALIDATION_RESULT"] = addressLocation.requestResult;
}
newWhere("ADDRESS.ADDRESSID", "$local.uid")

Sebastian Pongratz
committed
.updateFields(fieldsValues);