diff --git a/entity/Appointment_entity/recordcontainers/jditorc/onInsert.js b/entity/Appointment_entity/recordcontainers/jditorc/onInsert.js index a5cd4a7eeb9c8339a024e0e000a8a6a86d8412f9..af2c2302ef38253d59b3d1f02f4394c56602a827 100644 --- a/entity/Appointment_entity/recordcontainers/jditorc/onInsert.js +++ b/entity/Appointment_entity/recordcontainers/jditorc/onInsert.js @@ -33,7 +33,7 @@ if (vars.get("$field.REMINDER") != undefined && vars.get("$field.REMINDER") != " event[calendars.REMINDER_DURATION] = vars.get("$field.REMINDER"); } event[calendars.ID] = calendars.insert([event])[0]; -vars.set("$image.editmode", calendars.MODE_UPDATE); +vars.set("$context.editmode", calendars.MODE_UPDATE); ok = true; @@ -42,7 +42,7 @@ ok = true; function getReadOnlyUser() { var writeable = calendars.getFullCalendarUsers(calendars.RIGHT_WRITE); - var affectedusers = vars.get("$image.affectedusers"); + var affectedusers = vars.get("$context.affectedusers"); var readonly = new Array(); for ( i = 0; i < affectedusers.length; i++) diff --git a/entity/Appointment_entity/recordcontainers/jditorc/onUpdate.js b/entity/Appointment_entity/recordcontainers/jditorc/onUpdate.js index d58c694cc4083e26687a5412ba419d64a8f1ecd9..ca56d2534e8dab41640bd09971f54b1e446ac03f 100644 --- a/entity/Appointment_entity/recordcontainers/jditorc/onUpdate.js +++ b/entity/Appointment_entity/recordcontainers/jditorc/onUpdate.js @@ -54,7 +54,7 @@ if(vars.exists("$param.entry")) // Liefert die AffectedUsers function getAffectedUsers( pEvent ) { - var affectedusers = vars.get("$image.affectedusers"); + var affectedusers = vars.get("$context.affectedusers"); var attendess = pEvent[calendars.ATTENDEES] var calendarusers = []; for ( var i = 0; i < affectedusers.length; i++) @@ -88,7 +88,7 @@ function getAffectedUsers( pEvent ) function getReadOnlyUser() { var writeable = calendars.getFullCalendarUsers(calendars.RIGHT_WRITE); - var affectedusers = vars.get("$image.affectedusers"); + var affectedusers = vars.get("$context.affectedusers"); var readonly = new Array(); for ( i = 0; i < affectedusers.length; i++) diff --git a/entity/Product_entity/entityfields/image/onValueChange.js b/entity/Product_entity/entityfields/image/onValueChange.js index 147134e54ce8c1fa74578fa3c83e51112359e762..4997061690d757b4a7e50c905c0331a6f8897d40 100644 --- a/entity/Product_entity/entityfields/image/onValueChange.js +++ b/entity/Product_entity/entityfields/image/onValueChange.js @@ -1,12 +1,5 @@ import("system.vars"); +import("Entity_lib"); // TODO: also there is currently no good way to do updates with fields not connected to the record container. Workaround: imagevariable and update in onDBUpdate Process -var newImage = vars.get("$field.IMAGE"); -if (newImage) -{ - vars.set("$image.changedImage", newImage); -} -else -{ - vars.set("$image.changedImage", "deleted"); -} \ No newline at end of file +FieldChanges.setChange("$field.IMAGE"); \ No newline at end of file diff --git a/entity/Product_entity/recordcontainers/db/onDBUpdate.js b/entity/Product_entity/recordcontainers/db/onDBUpdate.js index 2c9deb924d4746a795bdfa98364a56bcacdc26a6..0c6ec72c75985fd9286df4b1a4327b2fdfc58978 100644 --- a/entity/Product_entity/recordcontainers/db/onDBUpdate.js +++ b/entity/Product_entity/recordcontainers/db/onDBUpdate.js @@ -1,21 +1,11 @@ import("system.vars"); import("Product_lib"); +import("Entity_lib"); // TODO: this is a workaround for missing possibility to react on changes of fields not connected to record Contqainer -if (vars.exists("$image.changedImage")) -{ - if (vars.get("$image.changedImage")) - { - var imageData = vars.getString("$field.IMAGE"); - if (vars.get("$image.changedImage") != "deleted") - { - ProductUtils.setImage(vars.get("$field.PRODUCTID"), imageData); - } - else - { - ProductUtils.removeImage(vars.get("$field.PRODUCTID")); - } - } +FieldChanges.assimilateChangeAndDispose("$field.IMAGE", function(state, value){ + if (state == FieldChanges.STATE_CHANGED()) + ProductUtils.setImage(vars.get("$field.PRODUCTID"), value); + else + ProductUtils.removeImage(vars.get("$field.PRODUCTID")); } - -vars.set("$image.changedImage", false); \ No newline at end of file diff --git a/process/Entity_lib/process.js b/process/Entity_lib/process.js index f4f63e47f81458f913cc8b8b33108bf8c9c73b14..17fac1f11a52cb890368e594610d8b95a1e8bab5 100644 --- a/process/Entity_lib/process.js +++ b/process/Entity_lib/process.js @@ -138,9 +138,9 @@ FieldChanges.setChange = function(pFieldName) */ FieldChanges._getStorage = function() { - if (!vars.exists("$image.FieldChanges")) + if (!vars.exists("$context.FieldChanges")) return {}; - return vars.get("$image.FieldChanges"); + return vars.get("$context.FieldChanges"); }; /** @@ -149,5 +149,5 @@ FieldChanges._getStorage = function() */ FieldChanges._setStorage = function(pAllChanges) { - return vars.set("$image.FieldChanges", pAllChanges); + return vars.set("$context.FieldChanges", pAllChanges); }; \ No newline at end of file