AKZA#36723 INS: Autorisatie voor objectbeheerder: alleen eigen objecten bewerken

svn path=/Website/trunk/; revision=31757
This commit is contained in:
Erik Groener
2016-11-30 15:03:13 +00:00
parent cce52a6382
commit e838b5a41c

View File

@@ -493,6 +493,7 @@ ins = {checkAutLevel:
+ " , d.ins_alg_ruimte_type_org"
+ " , isd.ins_srtgroep_key"
+ " , d.ins_deel_actief"
+ " , d.prs_perslid_key_beh"
+ " FROM ins_deel d"
+ " , ins_srtdeel isd"
+ " WHERE d.ins_srtdeel_key = isd.ins_srtdeel_key"
@@ -500,6 +501,8 @@ ins = {checkAutLevel:
var ioRs = Oracle.Execute(isql);
var srtgroep_key = ioRs("ins_srtgroep_key").Value;
var actief = ioRs("ins_deel_actief").Value == 1;
var beheerder_key = ioRs("prs_perslid_key_beh").value;
var objectbeheerder = S("ins_can_edit_own_objects") && (beheerder_key = user_key);
var isSleCil = (srtgroep_key == S("sle_ins_srt_groep_key") || srtgroep_key == S("cil_ins_srt_groep_key"));
if (isSleCil)
@@ -521,7 +524,7 @@ ins = {checkAutLevel:
iresult.writeslebof = writeslebof;
iresult.writeslefof = writeslefof;
iresult.canDelete = writeslebof; // Verwijderen
iresult.canChange = writeslebof; // Wijzigen
iresult.canChange = writeslebof || objectbeheerder; // Wijzigen
iresult.canChangeAlg = iresult.canChange; // Wijzigen algemene gegevens
iresult.canCopy = writeslebof; // Kopi<70>ren
iresult.isSleCil = true;
@@ -650,7 +653,7 @@ ins = {checkAutLevel:
true); // nog even optional (isOptional)
iresult.hasCTRRead = ctrresult.canRead("WEB_CTRUSE"); // Heb ik lees rechten om periodieke taken te zien?
iresult.hasCTRWrite = ctrresult.canWrite("WEB_CTRUSE"); // Heb ik schrijf rechten om periodieke taken uit te voeren?
iresult.hasCTRWrite = ctrresult.canWrite("WEB_CTRUSE") || objectbeheerder; // Heb ik schrijf rechten om periodieke taken uit te voeren?
iresult.canShowXcp = iresult.hasCTRRead && iresult.canRead("WEB_INSMAN"); // Exceptions (xcp) waarden inspecties/taken bekijken (waarden in ins_srtcontroledl_xcp tabel).
iresult.canChangeXcp = iresult.hasCTRWrite && iresult.canWrite("WEB_INSMAN"); // Exceptions (xcp) waarden inspecties/taken wijzigen (waarden in ins_srtcontroledl_xcp tabel).