ARFR#36760 ARFR - MLD/INS: Aiai als bij vakgroeptype wel objecten maar

svn path=/Website/branches/v2017.3/; revision=37540
This commit is contained in:
Erik Groener
2018-04-04 10:40:50 +00:00
parent 7e318f69bc
commit f5c9226405
2 changed files with 19 additions and 14 deletions

View File

@@ -358,7 +358,7 @@ function model_mld_stdmelding()
},
"departmentobjects": {
"dbs": "alg_org_obj_niveau",
"typ": "key",
"typ": "number",
"label": L("lcl_mld_dep_obj"),
"LOV": departmentobjects_foreign(),
"emptyoption": null

View File

@@ -318,7 +318,7 @@ function getObjectInfo(changed_niveau, noRecalcEinddatum)
{
var alg_onrgoed_obj_niveau = $("#alg_onrgoed_obj_niveau").val();
if (show_ins && alg_onrgoed_obj_niveau != "")
if (show_ins && ((alg_onrgoed_obj_niveau != "" && changed_niveau != "P") || (alg_onrgoed_obj_niveau == "" && changed_niveau == "P")))
{ // Alleen als er objecten gekozen worden
var alg_key = -1;
if (changed_niveau == "L")
@@ -346,22 +346,25 @@ function getObjectInfo(changed_niveau, noRecalcEinddatum)
break;
case "A": disableobjects = false;
break;
case "P": disableobjects = false;
break;
}
$("#r_objs_button").attr('disabled', disableobjects);
// Als een niveau niet verplicht is gaan we hem zelfs negeren.
// Als waarde leeg is dan niveau hoger pakken.
if ((changed_niveau == "R" && !$("#ruimte").hasClass("required")) || alg_key < 0)
var has_alglocation = (alg_key < 0) && changed_niveau != "A" && changed_niveau != "P";
if ((changed_niveau == "R" && !$("#ruimte").hasClass("required")) || (has_alglocation))
{
alg_key = $('#verdiepingkey').val();
changed_niveau = "V";
}
if ((changed_niveau == "V" && !$("#verdieping").hasClass("required")) || alg_key < 0)
if ((changed_niveau == "V" && !$("#verdieping").hasClass("required")) || (has_alglocation))
{
alg_key = $('#gebouwkey').val();
changed_niveau = "G";
}
if ((changed_niveau == "G" && !$("#gebouw").hasClass("required")) || alg_key < 0)
if ((changed_niveau == "G" && !$("#gebouw").hasClass("required")) || (has_alglocation))
{
alg_key = $('#locatiekey').val();
changed_niveau = "L";
@@ -369,7 +372,7 @@ function getObjectInfo(changed_niveau, noRecalcEinddatum)
var prs_key = ($("#personFor").length > 0? $("#personFor").val() : $("#person").val());
var stdmld_key = $('#stdm').val();
if (!disableobjects && alg_key > 0)
if (!disableobjects && (alg_key > 0 || changed_niveau == "P"))
{ // De callback functie process_object_info kan automatische een object selecteren.
// In dat geval moet er een recalcEinddatum() worden uitgevoerd.
// Zorg ervoor dat eerst de getJSON + callback functie geheel is uitgevoerd (async),
@@ -799,10 +802,10 @@ function process_stdm_info(data, stdmChanged) // stdmChanged is optioneel.
}
// Moet de omschrijving nu getoond worden en is de omschrijving dan verplicht?
var toggleomschrijving = (stdm_info.freetext != 0 || stdm_info.subject != 0);
$("#mldOmschrijving").toggle(toggleomschrijving);
var toggleomschrijving = (stdm_info.freetext != 0 || stdm_info.subject != 0);
$("#mldOmschrijving").toggle(toggleomschrijving);
// Alleen individueel tonen/verstoppen als het blok daadwerkelijk verschijnt.
// Alleen individueel tonen/verstoppen als het blok daadwerkelijk verschijnt.
if (toggleomschrijving)
{
$("#melding_omschrijving").toggle(stdm_info.freetext != 0); // verstop de omschrijving
@@ -850,9 +853,9 @@ function process_stdm_info(data, stdmChanged) // stdmChanged is optioneel.
case "A": if ($("#person").val() < 0)
disableobjects = true;
break;
case "": // Voor deze stdmelding mogen geen objecten worden gekozen.
disableobjects = true;
$("#r_objs_button").val(L("lcl_mld_objects") + "(0)");
case "": // Voor deze stdmelding mogen nu ook objecten worden gekozen.
disableobjects = false;
//$("#r_objs_button").val(L("lcl_mld_objects") + "(0)");
break;
}
$("#r_objs_button").attr('disabled', disableobjects);
@@ -860,7 +863,9 @@ function process_stdm_info(data, stdmChanged) // stdmChanged is optioneel.
if (!disableobjects)
{
var noRecalcEinddatum = !stdmChanged;
if (stdm_info.alg_onrgoed_obj_niveau == 'A' && $("#person").val() > 0)
if (stdm_info.alg_onrgoed_obj_niveau == "" && $("#person").val() > 0)
getObjectInfo("P", noRecalcEinddatum);
else if (stdm_info.alg_onrgoed_obj_niveau == "A" && $("#person").val() > 0)
getObjectInfo("A", noRecalcEinddatum);
else if ($("#ruimtekey").val() > 0)
getObjectInfo("R", noRecalcEinddatum);
@@ -1104,7 +1109,7 @@ function mld_melding_object()
}
else // Locatie is altijd verplicht.
{
alg_key = $('#locatiekey').val();
alg_key = $('#locatiekey').val() || -1;
alg_niveau = "L";
}