diff --git a/APPL/MLD/mld_edit_melding.asp b/APPL/MLD/mld_edit_melding.asp index 507ab1bca5..e127014c18 100644 --- a/APPL/MLD/mld_edit_melding.asp +++ b/APPL/MLD/mld_edit_melding.asp @@ -1127,26 +1127,27 @@ lcl.set_dialect(mld_melding.srtdisc, "MLD_SRTDISCIPLINE_KEY"); L("lcl_txt"), { buttons: buttons, hidden: (mld_melding.freetext == 0 && mld_melding.subject == 0) }); // Geen omschrijving indien mld_stdmelding_freetext == 0 en mld_stdmelding_subject == 0 - var oms_rw = this_mld.canOmsChange && S("mld_omschrijving_restrict_edit") == 0; + var oms_restrict_edit = S("mld_omschrijving_restrict_edit") == 1 && (mld_melding.mld_status == 2 || mld_melding.mld_status == 3); + var oms_readonly = !(this_mld.canOmsChange || mld_key < 0) || txtreado || !oms_restrict_edit; // Short subject - if (mld_melding.subject != 0) + if (mld_melding.subject != 0 && !(oms_readonly && !mld_melding.mld_onderwerp)) { RWFIELDTR("melding_onderwerp", - "fld" + ((mld_melding.subject == 2 && (oms_rw || mld_key < 0) && !txtreado)? " required" : ""), /* prepared, 3=future value */ + "fld" + ((mld_melding.subject == 2 && (this_mld.canOmsChange || mld_key < 0) && !txtreado)? " required" : ""), /* prepared, 3=future value */ L("lcl_mld_subject"), mld_melding.mld_onderwerp, - {maxlength: 60, html: (!(oms_rw || mld_key < 0) || txtreado? " readonly" : "")}) + {maxlength: 60, html: (oms_readonly ? " readonly" : "")}) } - if (mld_melding.freetext != 0) + if (mld_melding.freetext != 0 && !(oms_readonly && !mld_melding.mld_omschr)) { // Complaint text description RWTEXTAREATR("melding_omschrijving", - "fldtxt" + ((mld_melding.freetext == 2 && (oms_rw || mld_key < 0) && !txtreado)? " required" : ""), + "fldtxt" + ((mld_melding.freetext == 2 && (this_mld.canOmsChange || mld_key < 0) && !txtreado)? " required" : ""), L("lcl_mld_inf_Omschrijving"), mld_melding.mld_omschr, - {html: "rows='5'" + (!(oms_rw || mld_key < 0) || txtreado? " readonly" : "")}); + {html: "rows='5'" + (oms_readonly ? " readonly" : "")}); } BLOCK_END();