AKZA#36723 INS: Autorisatie voor objectbeheerder: alleen eigen objecten bewerken
svn path=/Website/trunk/; revision=31757
This commit is contained in:
@@ -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).
|
||||
|
||||
Reference in New Issue
Block a user