diff --git a/APPL/MLD/mld_flexkenmerk.inc b/APPL/MLD/mld_flexkenmerk.inc index ecb8d60955..bba637254c 100644 --- a/APPL/MLD/mld_flexkenmerk.inc +++ b/APPL/MLD/mld_flexkenmerk.inc @@ -406,7 +406,8 @@ function generateFlexKenmerkBlock(params) return false; // bij TV en opdrman mag je nog boven de 900 flexkenmerken aanpassen if (volgnummer > 100 && volgnummer <= 900) return !showClose; // afmeld-kenmerken mag je alleen tijdens het afmelden wijzigen - return !my_mldrechten.canWrite("WEB_MLDBOF") && !my_mldrechten.canWrite("WEB_ORDBO2"); + // uiteindelijk dan nog de flexkenmerken <= 100 (vermoeden is dat MLDBOF hier eigenlijk niet bij hoort) + return !my_mldrechten.canWrite("WEB_MLDBOF") && !my_mldrechten.canWrite("WEB_ORDBO2") && !my_mldrechten.canWrite("WEB_ORDBOF"); } return false; // 'k vind het wel best } diff --git a/APPL/Shared/Suggest/persoonFilter.inc b/APPL/Shared/Suggest/persoonFilter.inc index 7a154e8555..ba868f38a2 100644 --- a/APPL/Shared/Suggest/persoonFilter.inc +++ b/APPL/Shared/Suggest/persoonFilter.inc @@ -167,8 +167,7 @@ function getFiltClausePersoon(pfiltcode, params) + ", fac_functie ff" + " WHERE f.fac_functie_key = ff.fac_functie_key" + " AND ins_discipline_key = " + params.disc_key - //+ " AND fac_functie_code = " + (func_enabled["WEB_MLDBOF"]? "'WEB_MLDBOF'" : "'WEB_MLDBO3'") - + " AND (fac_functie_code = 'WEB_MLDBOF' OR fac_functie_code = 'WEB_MLDBO3')" + + " AND (fac_functie_code = 'WEB_MLDBOF' OR fac_functie_code = 'WEB_MLDBO3' OR fac_functie_code = 'WEB_ORDBOF')" //(vermoeden is dat MLDBOx hier eigenlijk niet bij hoort) + " AND f.fac_gebruiker_prs_level_write <9" + " AND f.fac_gebruiker_alg_level_write <9)"; break; @@ -286,11 +285,11 @@ function getFiltClausePersoon(pfiltcode, params) case 'MAIL': // Alleen personen die een email hebben lfiltClause = " AND p.prs_perslid_email IS NOT NULL "; break; - case 'SUBS': // Vervangers - var pkey = params.prs_key; - var bdr_key = new Perslid(pkey).afdeling().prs_bedrijf_key(); - var afd_key = new Perslid(pkey).prs_afdeling_key(); - if (S("prs_collegas_used") == 0) // Bedrijf niveau zit niet in prs_v_afdeling_familie + case 'SUBS': // Vervangers + var pkey = params.prs_key; + var bdr_key = new Perslid(pkey).afdeling().prs_bedrijf_key(); + var afd_key = new Perslid(pkey).prs_afdeling_key(); + if (S("prs_collegas_used") == 0) // Bedrijf niveau zit niet in prs_v_afdeling_familie { lfiltClause += " AND p.prs_afdeling_key IN" + " (SELECT a.prs_afdeling_key FROM prs_v_afdeling a" @@ -298,7 +297,7 @@ function getFiltClausePersoon(pfiltcode, params) } // PRS autorisatie - if (S("prs_collegas_used") > 0) // Efficiente versie van FAC_V_MY_PRS_AFDELINGEN_WRITE + if (S("prs_collegas_used") > 0) // Efficiente versie van FAC_V_MY_PRS_AFDELINGEN_WRITE { lfiltClause +=" AND p.prs_afdeling_key IN " + " (SELECT prs_afdeling_key FROM prs_v_afdeling_familie a" @@ -308,7 +307,7 @@ function getFiltClausePersoon(pfiltcode, params) + " WHERE aa.prs_afdeling_key = " + afd_key + " AND aa.niveau = " + S("prs_collegas_used") + "))" } - break; + break; default: __Log("KIES JUISTE FILTERCODE!!!"); lfiltClause = " AND 1 = 2"; break;