Patches 2022.3 Gold A

svn path=/Website/trunk/; revision=57721
This commit is contained in:
2022-10-21 16:34:48 +00:00
parent f32f643ead
commit 7a9e051286
28 changed files with 162 additions and 128 deletions

View File

@@ -150,12 +150,19 @@ if (!room_exists)
manRWFIELD("room_opp", "fldshort", L("lcl_estate_ruimte_bruto_vloeropp"), room_data.grossarea, {maxlength: 10, datatype: "float"});
ROFIELDTR("fldshort", L("lcl_estate_ruimte_getekendopp"), room_data.cadcontours[0].cadarea, {datatype: "float"});
if (S("fg_contourlayers_alt1")!="" && S("fg_labellayers_alt1")!="") {
if (L("lcl_estate_ruimte_opp_alt1") != "")
{
manRWFIELD("room_oppa1", "fldshort", L("lcl_estate_ruimte_opp_alt1"), room_data.area1, {maxlength: 10, datatype: "float"});
}
if (S("fg_labellayers_alt1")!="" && S("fg_contourlayers_alt1")!="") {
ROFIELDTR("fldshort", L("lcl_fg_tek_room_opp_g_alt1"), room_data.cadcontours[0].cadalt1, {datatype: "float"});
}
if (S("fg_contourlayers_alt2")!="" && S("fg_labellayers_alt2")!="") {
if (L("lcl_estate_ruimte_opp_alt2") != "")
{
manRWFIELD("room_oppa2", "fldshort", L("lcl_estate_ruimte_opp_alt2"), room_data.area2, {maxlength: 10, datatype: "float"});
}
if (S("fg_labellayers_alt2")!="" && S("fg_contourlayers_alt2")!="") {
ROFIELDTR("fldshort", L("lcl_fg_tek_room_opp_g_alt2"), room_data.cadcontours[0].cadalt2, {datatype: "float"});
}
manRWFIELD("room_omt", "fldshort", L("lcl_estate_ruimte_man_omtrek"), room_data.perimeter, {maxlength: 10, datatype: "float"});

View File

@@ -153,25 +153,25 @@ function getEmailSetting(xmlReq, xmlParameters)
return expireResult;
}
function checkSender(fromMode, from, fromAddr)
function checkSender(emlSetting, xmlParameters)
{
var senderResult = { success: true };
var theFrom = fromAddr; // SMTP communicatie, werkt matig bij forwards
if (fromMode == 1)
var theFrom = xmlParameters.fromAddr; // SMTP communicatie, werkt matig bij forwards
if (emlSetting.fromMode == 1)
{
theFrom = from; // uit email MIME-header
theFrom = xmlParameters.from; // uit email MIME-header
}
else if (fromMode == 2)
else if (emlSetting.fromMode == 2)
{
// example srs address: servicedesk+SRS=kWNyq=RW=manutan.nl=Paul.Gozeling@hsleiden.nl
// output groups of RegExp: 1. servicedesk 2. kWNyq 3. manutan.nl 4. Paul.Gozeling
// from e-mail address when SRS is detected: Paul.Gozeling@manutan.nl
var regExpr = RegExp("(.+)[+]SRS=(.+)[=].+=(.+)=(.+)[@]");
if (regExpr.test(fromAddr)) // test whether the fromAddr is a SRS address
theFrom = regExpr.exec(fromAddr)[4] + "@" + regExpr.exec(fromAddr)[3]; // concat (group-4 @ group-3) as the fromAddr
if (regExpr.test(xmlParameters.fromAddr)) // test whether the xmlParameters.fromAddr is a SRS address
theFrom = regExpr.exec(xmlParameters.fromAddr)[4] + "@" + regExpr.exec(xmlParameters.fromAddr)[3]; // concat (group-4 @ group-3) as the xmlParameters.fromAddr
}
var shouldFrom = from;
var shouldFrom = emlSetting.from;
if (shouldFrom)
{
if (String(shouldFrom).toUpperCase() != String(theFrom).toUpperCase())
@@ -249,7 +249,7 @@ function getEmailSetting(xmlReq, xmlParameters)
__Log("Scanning e-mail setting: "+emlSetting.volgnr);
var expireResult = checkExpire(emlSetting.expire);
var senderResult = checkSender(emlSetting.fromMode, emlSetting.from, xmlParameters.fromAddr);
var senderResult = checkSender(emlSetting, xmlParameters);
if (expireResult.success && senderResult.success)
{
@@ -280,6 +280,7 @@ function getEmailSetting(xmlReq, xmlParameters)
function emailAction(emlSetting, xmlParam, resultParam)
{
var result = resultParam || {};
var path = result.path;
if (emlSetting.action) // Bijv "fac.processemail" of "uwva.closeorder-sample"
{
if (!xmlParam.Body || xmlParam.Body == "") // Voorkeur voor plaintekst
@@ -292,7 +293,7 @@ function emailAction(emlSetting, xmlParam, resultParam)
}
var actionsql =
"BEGIN " + emlSetting.action + " (" + safe.quoted_sql(xmlParam.theFrom) + ","
"BEGIN " + emlSetting.action + " (" + safe.quoted_sql(emlSetting.theFrom) + ","
+ safe.quoted_sql(xmlParam.toAddr) + ","
+ safe.quoted_sql(xmlParam.Subject || L("lcl_fac_hmail_no_subject")) + "," // de actions kunnen slecht tegen lege subject
+ safe.quoted_sql(v_body, 3990) + "," // HSLE#33588 10 karakters speling
@@ -367,7 +368,7 @@ function emailAction(emlSetting, xmlParam, resultParam)
if (!oRs.Eof)
{
result.kenmerkpath = oRs("fac_result_waarde").Value;
result.path = result.path + oRs("fac_result_waarde").Value;
result.path = path + oRs("fac_result_waarde").Value;
}
oRs.Close();
@@ -379,7 +380,7 @@ function emailAction(emlSetting, xmlParam, resultParam)
if (!oRs.Eof)
{
result.eml_kenmerkpath = oRs("fac_result_waarde").Value;
result.original_mail_path = result.path + oRs("fac_result_waarde").Value;
result.original_mail_path = path + oRs("fac_result_waarde").Value;
result.original_mail_file = "email "+toISODateTimeString(Date.parse(xmlParam.datum)).replace(/:/g,"_") + ".eml";
}
oRs.Close();
@@ -566,7 +567,7 @@ function saveEml(xmlParams, params)
}
else
{
__DoLog("Strange, could not properly decode flexfiles path for original file: " + result.eml_kenmerkpath, "#f00");
__DoLog("Strange, could not properly decode flexfiles path for original file: " + params.eml_kenmerkpath, "#f00");
}
}
}

View File

@@ -194,7 +194,7 @@ user.auth_required_or_abort(this_bez.canReadAny);
refreshOnClose: true,
FcltClose: "afspraakClose"
});
if (afspr_key > -1 && this_bez.canReadAny)
if (afspr_key > -1 && (this_bez.canReadBOF || this_bez.canReadAny && !S("fac_reserved_number1"))) // Temp fix; met S(fac_reserved_number1) = 1 mag alleen de Backoffice het mutatie-tabje zien
{
// tracking naar subframe :-)
page = protectQS.create("../shared/status_info.asp?afspr_key=" + afspr_key + "&urole=" + urole);

View File

@@ -28,7 +28,7 @@ JSON_Result = true;
xxx_params.filter.limit = 9999;
xxx_params.filter.scf_pivot = 0; // nooit
Oracle.Execute("ALTER SESSION SET optimizer_features_enable = '12.1.0.2'"); // RABO#70522 anders te traag
Oracle.Execute("ALTER SESSION SET optimizer_features_enable = '12.1.0.1'"); // RABO#70522 anders te traag
var result = { success: true, distinct: distinct, colname: columns[0], values: rapport.REST_GET(xxx_params) };
Response.Write(JSON.stringify(result));

View File

@@ -409,14 +409,16 @@ var plaatsselector =
plaatsselector._setWerkplaats(werkplekken, werklocatie);
// Nu dan ook invullen, 1 niveau is voldoende, de rest cascadeert wel middels _autoSelect
if (!sgLoc.isReadOnly()) {
sgLoc.setValue(plaatsselector._werkplaats.alg_locatie_key, plaatsselector._werkplaats.alg_locatie_naam, true, true);
} else if (!sgBld.isReadOnly()) {
sgBld.setValue(plaatsselector._werkplaats.alg_gebouw_key, plaatsselector._werkplaats.alg_gebouw_naam, true, true);
} else if (!sgFlr.isReadOnly()) {
sgFlr.setValue(plaatsselector._werkplaats.alg_verdieping_key, plaatsselector._werkplaats.alg_verdieping_naam, true, true);
} else if (!sgRoom.isReadOnly()) {
sgRoom.setValue(plaatsselector._werkplaats.alg_ruimte_key, plaatsselector._werkplaats.alg_ruimte_naam, true, true);
if (plaatsselector.hasWerkplaats()) { // Alleen verrijken, niet leegmaken
if (!sgLoc.isReadOnly()) {
sgLoc.setValue(plaatsselector._werkplaats.alg_locatie_key, plaatsselector._werkplaats.alg_locatie_naam, true, true);
} else if (!sgBld.isReadOnly()) {
sgBld.setValue(plaatsselector._werkplaats.alg_gebouw_key, plaatsselector._werkplaats.alg_gebouw_naam, true, true);
} else if (!sgFlr.isReadOnly()) {
sgFlr.setValue(plaatsselector._werkplaats.alg_verdieping_key, plaatsselector._werkplaats.alg_verdieping_naam, true, true);
} else if (!sgRoom.isReadOnly()) {
sgRoom.setValue(plaatsselector._werkplaats.alg_ruimte_key, plaatsselector._werkplaats.alg_ruimte_naam, true, true);
}
}
return plaatsselector.hasWerkplaats();

View File

@@ -1254,7 +1254,7 @@ var transitParam = buildTransitParam(["deel", "groep", "categorie_key", "distric
if (S("mjb_show_ruimte") == 1)
{
rst.addColumn(new Column({caption: L("lcl_room"), content: fnRuimte, colName: "fnRuimte" }));
rst.addColumn(new Column({caption: L("lcl_estate_ruimte_man_descr"), content: "ins_deel_opmerking", purpose: PRINTING_ONLY})); // zit op schernm in tooltip
rst.addColumn(new Column({caption: L("lcl_estate_ruimte_man_descr"), content: "alg_ruimte_omschrijving", purpose: PRINTING_ONLY})); // zit op schernm in tooltip
}
rst.addColumn(new Column({caption: L("lcl_ins_opmerking"), content: "ins_deel_opmerking"}));
rst.addColumn(new Column({caption: L("lcl_amount"), content: "ins_deel_aantal", datatype: "float"}));

View File

@@ -2328,13 +2328,14 @@ mld = {
pparams = pparams || {};
var lbl = mld.referentielabel(ptype, pkey); // 'Reservering 1234'
var params = null;
var refUrole = (ptype != "M" && ptype != "O" && typeof urole != "undefined" && urole == "b2") ? "bo" : urole; // bo2 bestaat alleen bij MLD en ORD
switch(ptype)
{
case "R":
var params = { infoPointer: { Url: "appl/res/res_reservering.asp?urole="+urole+"&rsv_ruimte_key=" + pkey }};
var params = { infoPointer: { Url: "appl/res/res_reservering.asp?urole="+refUrole+"&rsv_ruimte_key=" + pkey }};
break;
case "M":
var params = { infoPointer: { Url: "appl/mld/mld_melding.asp?urole="+urole+"&mld_key=" + pkey}};
var params = { infoPointer: { Url: "appl/mld/mld_melding.asp?urole="+refUrole+"&mld_key=" + pkey}};
if (pparams.tooltip)
{
var TOOLTIP_MAXLENGTH = 50;
@@ -2350,19 +2351,19 @@ mld = {
}
break;
case "B":
var params = { infoPointer: { Url: "appl/bes/bes_bestelling.asp?urole="+urole+"&bes_key=" + pkey}};
var params = { infoPointer: { Url: "appl/bes/bes_bestelling.asp?urole="+refUrole+"&bes_key=" + pkey}};
break;
case "X":
var params = { infoPointer: { Url: "appl/bes/bes_opdr.asp?urole="+urole+"&ordernr=" + pkey}};
var params = { infoPointer: { Url: "appl/bes/bes_opdr.asp?urole="+refUrole+"&ordernr=" + pkey}};
break;
case "O":
var params = { infoPointer: { Url: "appl/mld/mld_opdr.asp?urole="+urole+"&opdr_key=" + pkey}};
var params = { infoPointer: { Url: "appl/mld/mld_opdr.asp?urole="+refUrole+"&opdr_key=" + pkey}};
break;
case "C":
var params = { infoPointer: { Url: "appl/cnt/cnt_contract.asp?urole="+urole+"&cnt_key=" + pkey}};
var params = { infoPointer: { Url: "appl/cnt/cnt_contract.asp?urole="+refUrole+"&cnt_key=" + pkey}};
break;
case "F":
var params = { infoPointer: { Url: "appl/fin/fin_factuur.asp?urole="+urole+"&fin_key=" + pkey}};
var params = { infoPointer: { Url: "appl/fin/fin_factuur.asp?urole="+refUrole+"&fin_key=" + pkey}};
break;
case "T":
var params = { infoPointer: { Url: "appl/ins/ins_inspect.asp?deelsrtcont_key=" + pkey }};
@@ -6938,7 +6939,7 @@ mld = {
else if (flr_key_arr.length)
sql += " AND g.alg_verdieping_key IN (" + flr_key_arr.join(",") + ")";
else if (bld_key_arr.length)
sql += " AND (g.alg_gebouw_key IN (" + bld_key_arr.join(",") + ") OR g.alg_terreinsector_key IN " + bld_key_arr.join(",") + "))";
sql += " AND (g.alg_gebouw_key IN (" + bld_key_arr.join(",") + ") OR g.alg_terreinsector_key IN (" + bld_key_arr.join(",") + "))";
else if (loc_key_arr.length)
sql += " AND m.mld_alg_locatie_key IN (" + loc_key_arr.join(",") + ")";
else if (dist_key_arr.length)

View File

@@ -845,19 +845,6 @@ SUBFRAME_START();
});
}
function _getUrlAddAlg(mld_melding)
{
var urlAdd = [];
var eindlevel = (mld_melding.alg_level ? mld_melding.alg_level : 2);
switch (eindlevel) { // Zonder break;
case 5: urlAdd.push({urlParam: "roomkey", field: "ruimtekey", init: mld_melding.room_key});
case 4: urlAdd.push({urlParam: "flrkey", field: "verdiepingkey", init: mld_melding.flr_key});
case 3: urlAdd.push({urlParam: "bldkey", field: "gebouwkey", init: mld_melding.bld_key});
case 2: urlAdd.push({urlParam: "lockey", field: "locatiekey", init: mld_melding.loc_key});
}
return urlAdd;
}
/* In deze functie staan alle blokken */
function writeBlock(id)
{
@@ -876,7 +863,9 @@ SUBFRAME_START();
BLOCK_START(id, L("lcl_mld_aanvragergegevens"), {icon: "fa-user"});
var urlAdd = [];
if (mld.useAlgScope("A")) {
urlAdd = _getUrlAddAlg(mld_melding);
if (mld_melding.alg_level >= 2) {
urlAdd.push({urlParam: "lockey", field: "locatiekey", init: mld_melding.loc_key});
}
}
var personEditable = (mld_key > 0 && this_mld.canPersChange) || (mld_key < 0 && !frontend);
var hasPersonFor = (S("mld_allow_for_others") == 1 || S("mld_allow_for_others") == 2) &&
@@ -1025,7 +1014,12 @@ SUBFRAME_START();
(lBestaandeMelding && stdm_info.slabewaken && mld_melding.respijt != 0));
var urlAdd = [];
if (mld.useAlgScope("D")) {
urlAdd = _getUrlAddAlg(mld_melding);
switch (mld_melding.alg_level) { // Zonder break;
case 5: urlAdd.push({urlParam: "roomkey", field: "ruimtekey", init: mld_melding.room_key});
case 4: urlAdd.push({urlParam: "flrkey", field: "verdiepingkey", init: mld_melding.flr_key});
case 3: urlAdd.push({urlParam: "bldkey", field: "gebouwkey", init: mld_melding.bld_key});
case 2: urlAdd.push({urlParam: "lockey", field: "locatiekey", init: mld_melding.loc_key});
}
}
FCLTdisciplineselector("disc",
"sgDisc",

View File

@@ -274,19 +274,12 @@ function process_gebouw_info(data, textStatus)
// setValue(key, txt, doonChange, checkExist, extraParam, lastTry);
if (frontend && !mld_kk)
$("#account_bld").val(data.alg_kostenplaats_key > 0? data.alg_kostenplaats_key : -1);
if (data && data.alg_kostenplaats_key > 0)
{
if (data && data.alg_kostenplaats_key > 0) {
// lastTry is true zodat suggestbox wordt leeggemaakt indien waarde niet voorkomt (en niet de laatst waarde wordt getoond)
// In de frontend kan er de gebouwkostenplaats ingevuld worden terwijl de user er geen mandaat op heeft.
// De kostenplaats in "account_bld" wordt voor de frontend ook mee gequeried indien kostenklan = 0 (Uit). checkExist mag dan ook getest worden.
sgAccount.setValue(data.alg_kostenplaats_key, data.kostenplaats_omschrijving, true, true, data.kostenplaats_module, true);
}
else
{ // Suggestbox leeg maken. checkExist moet dan false zijn en lastTry true.
sgAccount.setValue(-1, "", true, false, null, true);
// Mocht er maar <20><>n waarde voorkomen in de suggesbox dan deze niet selecteren. Kostenplaats is niet verplicht.
//sgAccount.CheckJustOne();
}
}
else
FcltMgr.alert("process_gebouw_info: " + textStatus);
@@ -812,8 +805,10 @@ function process_stdm_info(data, stdmChanged) // stdmChanged is optioneel.
setReferentie(refTaak ? 0 : stdm_info.kanverwijzen);
}
// De stdmelding heeft (mogelijk) invloed op de plaats-scope (minstens op het verlichte niveau), dus plaats invullen waar slechts 1 mogelijk
cascadePlaatsSelector();
// De stdmelding heeft (mogelijk) invloed op de plaats-scope (minstens op het verplichte niveau), dus plaats invullen waar slechts 1 mogelijk
if (!data.init) {
cascadePlaatsSelector();
}
}
// UWVA#15523: indien frontend, dan is het aan kunnen geven van de prio afhankelijk van de vakgroep
@@ -877,7 +872,7 @@ function process_stdm_info(data, stdmChanged) // stdmChanged is optioneel.
// Indien er een kostenplaats is gedefinieerd bij de stdmelding, dan deze invullen.
// Dan moet kostenklant niet aangevinkt zijn, anders kan de kostenplaats waarschijnlijk niet geselecteerd worden.
if (stdm_info.kp_key > 0)
if (stdmChanged && stdm_info.kp_key > 0)
{
$("#kostenklant").prop("checked", false);
onChangeKk();
@@ -888,7 +883,7 @@ function process_stdm_info(data, stdmChanged) // stdmChanged is optioneel.
// Is er een object verplicht
var stdm_info_verplichtstatus = stdm_info.srtinst_verplichtstatus == 2 || stdm_info.srtinst_verplichtstatus == 21;
$("#req_r_objs,#r_objs,#r_objs option,#r_objs_show").toggleClass("required", stdm_info_verplichtstatus);
$("#req_r_objs,#r_objs,#r_objs_button,#r_objs option,#r_objs_show").toggleClass("required", stdm_info_verplichtstatus);
// Alle waarden deselecteren
if (!data.keep_obj &&
!data.copy && typeof sgObject != "undefined" &&
@@ -1088,7 +1083,7 @@ function onChangeVakgroep(vakgroep_key)
$("#verdieping").removeClass("required");
$("#ruimte").removeClass("required");
$("#req_r_objs,#r_objs,#r_objs option").removeClass("required");
$("#req_r_objs,#r_objs,#r_objs_button,#r_objs option,#r_objs_show").removeClass("required");
// reset processing group
if (typeof sgDisc2 != "undefined")
@@ -1186,6 +1181,7 @@ function onChangeStdMelding(stdmelding_key, txt, params)
{
if (typeof sgRef != "undefined") setReferentie(0);
stdm_info = {mld_stdmelding_key: -1};
$("#req_r_objs,#r_objs,#r_objs_button,#r_objs option,#r_objs_show").removeClass("required");
_toggleObjects(false);
}
if (!params.init && !params.copy) {loadKenmerk();} // Bij initialisatie (initOnChange) niet de kenmerken herladen anders worden de waarden gewist.
@@ -1248,10 +1244,11 @@ function cascadePlaatsSelector()
if ($("#gebouwkey").val() == -1) {
sgLoc.setValue($("#locatiekey").val(), $("#locatie").val(), true, true);
} else if (window.sgFlr) {
if ($("#verdiepingkey").val() == -1)
sgBld.setValue($("#gebouwkey").val(), $("#gebouw").val(), true, true);
else if (window.sgRoom && $("#ruimtekey").val() == -1)
sgFlr.setValue($("#verdiepingkey").val(), $("#verdieping").val(), true, true);
if ($("#verdiepingkey").val() == -1) {
sgBld.setValue($("#gebouwkey").val(), $("#gebouw").val(), true, true);
} else if (window.sgRoom && $("#ruimtekey").val() == -1) {
sgFlr.setValue($("#verdiepingkey").val(), $("#verdieping").val(), true, true);
}
}
}

View File

@@ -120,20 +120,28 @@ if (isNew && uitvoerende < 0 && copyorder_key < 0)
oRs.Close();
}
uitvoerende = mld.dienst_controle(mld_info.stdm, locatiekey, (mld_info.bttype == "B"? mld_info.bld_key : null), mld_info.room_key, mld_info.perslid_key_voor);
if (uitvoerende < 0)
// Alert geven en terug. Beter dan error in de IIS log.
shared.simpel_page(L("lcl_orders_no_contractor"));
}
if (isNew && copyorder_key < 0 && mld_typeopdr_isofferte == 1)
{ // Meerdere offerte opdrachten aanmaken
var uitvkeyArray = getFParamIntArray("uitvkeystr", [uitvoerende]);
var uitvkeyArray = getFParamIntArray("uitvkeystr", []);
var uitvcpersArray = getFParamIntArray("uitvcpersstr", [-1]);
var uitvcntArray = getFParamIntArray("uitvcntstr", [-1]);
if (uitvkeyArray.length == 0)
if (uitvoerende > 0)
uitvkeyArray = [uitvoerende];
else
// Er zijn geen uitvoerende mee gegeven en er kon ook niet automatisch een uitvoerende bepaald worden.
// Alert geven en terug. Beter dan error in de IIS log.
shared.simpel_page(L("lcl_orders_no_contractor"));
}
else
{
if (uitvoerende < 0)
// Er is geen uitvoerende mee gegeven en er kon ook niet automatisch een uitvoerende bepaald worden.
// Alert geven en terug. Beter dan error in de IIS log.
shared.simpel_page(L("lcl_orders_no_contractor"));
var uitvkeyArray = [uitvoerende];
var uitvcpersArray = [getFParamInt("contactpers", -1)];
var uitvcntArray = [getFParamInt("contract", -1)];

View File

@@ -276,7 +276,7 @@ function generateFlexKenmerkBlock(params)
+ " OR (k2.mld_stdmelding_key = d.ins_srtdiscipline_key"
+ " AND k2.mld_kenmerk_niveau = 'T'))"
//+ " AND k2.mld_kenmerk_niveau = k.mld_kenmerk_niveau"
+ " AND mld_srtkenmerk_kenmerktype = 'M'"
+ " AND mld_srtkenmerk_kenmerktype IN ('E', 'F', 'M')"
+ " AND k2.mld_kenmerk_verwijder IS NULL"
+ " AND k2.mld_srtkenmerk_key = t2.mld_srtkenmerk_key"
+ " AND t2.mld_srtkenmerk_verwijder IS NULL"

View File

@@ -76,7 +76,8 @@ var ref_type = getQParam("ref_type", ""); // In Case Of a new call for a contr
// act_key: fac_activiteit_key voor geplande meldingen
transitParam = buildTransitParam(["loc_key", "bld_key", "def_kenmerk_link_key", "txt", "ins_key", "meldbronkey", "deelsrtcont_key",
"verynew", "mld_copy", "mld_continue", "rsv_ruimte_key", "fromkb", "tracking", "start_key", "prs_key",
"act_key", "dienst", "cnt_key", "typeopdr", "txtreado", "kto_type", "kto_key", "onderwerp", "default_prio", "ref_key", "ref_type", "noteonly"]);
"act_key", "dienst", "cnt_key", "typeopdr", "txtreado", "kto_type", "kto_key", "onderwerp", "default_prio",
"ref_key", "ref_type", "noteonly", "confirmNewMelding"]);
if (mld_key >= 0)
{
@@ -215,6 +216,7 @@ if (mld_key == -1 || copy)
%>
<script type="text/javascript" >
var verynew = "1";
var confirmNewMelding = false;
<% if (mld_key == -1 || copy) { %>FcltMgr.startEdit(window);<% } %>
function meldingClose(params)
@@ -241,6 +243,7 @@ if (mld_key == -1 || copy)
async: false
});
verynew = "0"; // zo nieuw zijn we niet meer.
confirmNewMelding = true;
}
<% if (mld_key == -1 || copy)
{ %>
@@ -259,7 +262,11 @@ if (mld_key == -1 || copy)
<% } %>
// Altijd complete reload, we hebben nu een mld_key namelijk
window.location.href = "mld_melding.asp?verynew="+verynew+"&urole=<%=urole%>&mld_key=" + params.mld_key;
var newUrl = "mld_melding.asp?verynew="+verynew+"&urole=<%=urole%>&mld_key=" + params.mld_key;
if (confirmNewMelding) {
newUrl += "&confirmNewMelding=1";
}
window.location.href = newUrl;
<% }
else
{ // Bestaande melding bewerkt, switch naar show-mode
@@ -436,7 +443,7 @@ if (mld_key == -1 || copy)
var this_opdr = mld.func_enabled_mld(mld_info.aut_disc_arr, "D"); // wat mag ik zoal op een nieuwe melding
if ((this_opdr.canORDBOFread || ordzichtbaarfe) && showord) //TODO en: ik moet readrechten hebben op opdrachten (=?).
{ // Als ik ORDBOF leesrechten heb dan de opdrachtenlijst tonen met de bo rechten. Anders zie ik misschien niet alle opdrachten terwijl ik wel de rechter er voor heb.
page = "opdr_list.asp?tiny=1&urole=" + (this_opdr.canORDBOFread? "bo" : urole) + "&mld_key=" + mld_key + transitParam;
page = "opdr_list.asp?tiny=1&embedded=1&urole=" + (this_opdr.canORDBOFread? "bo" : urole) + "&mld_key=" + mld_key + transitParam;
IFRAMER("opdrlistframe", page, { refreshOnClose: true, icon: "fa-list" } );
}

View File

@@ -333,10 +333,8 @@ SUBFRAME_START();
buttons.push({ title: L("lcl_doorzet"), icon: "fa-minus", action:"mld_laatgaan()", autoshow: true,
tooltip: (mld_melding.mld_status == 0 ? L("lcl_laatgaan_hint_fo"): L("lcl_laatgaan_hint")) }); /* en close tab? */
if (!mld_melding.act_key && verynew) // TODO: beter: er is een button met autoshow-property?
if (!mld_melding.act_key && verynew && anyAuto)
{
if (anyAuto)
{
%> <script>
$(function ()
@@ -366,11 +364,10 @@ SUBFRAME_START();
<div id="dmodal">
<% CreateButtons(buttons, { vertical: 1, autoshowOnly: true, TooltipIsText: true, isDialog: true, showIcons: true }) %>
</div>
<% }
else
{
if (urole == "fe" && L("lcl_mld_fe_newmelding_confirm"))
{
<%}
if (!mld_melding.act_key && verynew && !anyAuto || getQParamInt("confirmNewMelding", 0) == 1) {
if (urole == "fe" && L("lcl_mld_fe_newmelding_confirm")) {
%>
<script>
$(function() {
@@ -379,7 +376,6 @@ SUBFRAME_START();
</script>
<%
}
}
}
/* In deze functie staan alle blokken */

View File

@@ -19,6 +19,7 @@ var LOCKED_USER_OK = { "xmlnode": "melding", "key": getQParamInt("mld_key", null
<%
var urole = getQParamSafe("urole");
var embedded = getQParamInt("embedded", 0) == 1;
var behandel_key = getQParamInt("behandel_key", -1);
var srtdisc_key = getQParamInt("srtdisc", -1); // Soort melding.
// Beperken tot I of E? Standaard niet.
@@ -77,7 +78,7 @@ var theparams = { urole: urole,
opdrstvar: getQParamInt("opdrstver", 0) == 1
}
if (theparams.mld_key)
if (!embedded && theparams.mld_key)
cache.whenNoRecords("SELECT 1 FROM mld_opdr WHERE mld_melding_key = " + theparams.mld_key);
opdr_list ( theparams );

View File

@@ -970,6 +970,8 @@ if (S("mld_show_order_details"))
$(".clickParent").parent().on("click", function(e) { e.stopPropagation(); $(this).find("> .clickParent").trigger("click"); });
});
<% if (mld_key > 0) {
%>
function add_opdracht(canAccept)
{
var addurl = "appl/mld/mld_opdr.asp?urole=bo&mld_key=<%=mld_key%>";;
@@ -987,15 +989,17 @@ if (S("mld_show_order_details"))
FcltCallbackAndThen(function () {
if (window.parent.mldframe && window.parent.mldframe.mld_melding_reload)
window.parent.mldframe.mld_melding_reload(mld_key)
FcltMgr.openDetail(addurl)
FcltMgr.openDetail(addurl, L("lcl_add"));
}),
"json")
}
);
}
else
FcltMgr.openDetail(addurl);
FcltMgr.openDetail(addurl, L("lcl_add"));
}
<% }
%>
function openOpdrLegenda(id)
{

View File

@@ -88,7 +88,7 @@ var disc_key_arr = getQParamIntArray("disc_key_str", []); // Productgroep
var meldinggrp_key = getQParamInt("meldinggrp_key", -1); // Meldinggroep
var behandelgrp_key = getQParamInt("behandelgrp_key", -1); // Behandelgroep
var stdm_arr = getQParamIntArray("stdm_str", []); // Melding (Stdmelding)
var bosort = getQParamInt("bosort", S("mld_bo_sort_descending"));
var bosort = getQParamInt("bosort", S("mld_ord_bo_sort_descending"));
var alg_eindlevel = getQParamInt("alg_eindlevel", 3); // eindlevel tbv plaatsselector. Standaard Gebouw

View File

@@ -76,7 +76,7 @@ var stdm_key_arr = getQParamIntArray("sm", []); // Melding (Stdmelding)
var meldinggrp_key = getQParamInt("meldinggrp_key", -1); // Meldinggroep
var behandelgrp_key = getQParamInt("behandelgrp_key", -1); // Behandelgroep
var priority_arr = getQParamKeyArray("priority", []);
var bosort = getQParamInt("bosort", S("mld_bo_sort_descending"));
var bosort = getQParamInt("bosort", S("mld_ord_bo_sort_descending"));
var offerte = getQParamInt("offerte", -1); // Opdrachttype is een offerteaanvraag. Kan -1:don't care, 0:niet, 1:wel zijn.
var searchtekst = getQParam("searchtekst", ""); // Zoektekst
var verantw_key = getQParamInt("verantw", -1); // Gebouw verantwoordelijke

View File

@@ -1152,6 +1152,7 @@ res = {
if (status_fo_key != 1 && (fe_edit_option_only == 1))
{
rresult.canChange = false;
rresult.canChangeCV = false;
rresult.readoReason = L("lcl_res_fe_edit_option_only");
}
@@ -1732,7 +1733,7 @@ res = {
satisfaction : oRs("satisfaction").Value,
prijs : oRs("res_ruimte_prijs").Value,
extern_id : oRs("res_ruimte_extern_id").Value,
extern_meeting: oRs("res_ruimte_extern_meeting").Value
extern_meeting_providers: oRs("res_ruimte_extern_meeting").Value
};
if (room.begintijd < S("res_t1")) room.begintijd = S("res_t1");
if (room.eindtijd > S("res_t2")) room.eindtijd = S("res_t2");

View File

@@ -557,7 +557,7 @@ FCLTHeader.Requires({ plugins: ["jQuery", "kenmerk"] });
ruimte_opstel_key : oRs("res_ruimte_opstel_key").value,
res_ruimte_extern : oRs("res_rsv_ruimte_externnr").Value != null,
extern_meeting_providers : 0, // Welke online meeting providers zijn toegestaan (wordt straks opgezocht)
extern_meeting : oRs("res_rsv_ruimte_extern_meeting").Value, // Welke online meeting provider is bij deze reservering ingesteld
extern_meeting_provider : oRs("res_rsv_ruimte_extern_meeting").Value, // Welke online meeting provider is bij deze reservering ingesteld
opstelling_omschrijving : oRs("res_opstelling_omschrijving").Value,
opstel_bezoekers : oRs("res_ruimte_opstel_bezoekers").Value,
rsv_ruimte_noshow : oRs("res_rsv_ruimte_noshow").value,
@@ -1032,12 +1032,12 @@ FCLTHeader.Requires({ plugins: ["jQuery", "kenmerk"] });
});
}
function toggleOnlineMeeting(providerBits) {
providerBits = providerBits || 0;
$(".onlineProviders").toggleClass("hidden", providerBits == 0);
function toggleOnlineMeeting(providersBit) {
providersBit = providersBit || 0;
$(".onlineProviders").toggleClass("hidden", providersBit == 0);
$(".onlineProviderWrapper").hide(); // Hide eerst allemaal
$(".onlineProviderWrapper").filter(function() {
return providerBits & $(this).data("bit"); // Show alleen de mogelijke bitjes zoals gedefinieerd bij de res_ruimte
return providersBit & $(this).data("bit"); // Show alleen de mogelijke bitjes zoals gedefinieerd bij de res_ruimte
}).show();
$("#provider-0").prop("checked", true);
FcltMgr.resized();
@@ -1049,7 +1049,7 @@ FCLTHeader.Requires({ plugins: ["jQuery", "kenmerk"] });
{
if (params.res_ruimte_key) {
if (params.res_ruimte_extern) {
toggleOnlineMeeting(params.extern_meeting);
toggleOnlineMeeting(params.extern_meeting_providers);
}
sel_room.res_ruimte_key = params.res_ruimte_key;
$("#sel_room").attr("hasvalue", "1");
@@ -1690,8 +1690,8 @@ FCLTHeader.Requires({ plugins: ["jQuery", "kenmerk"] });
</tr>
<%
}
if (rrr.res_ruimte_key == -1 || rrr.res_ruimte_extern && rrr.extern_meeting > 0) {
// Bij bestaande rsv kijken we naar de gekozen provider, bij nieuwe naar alle mogelijke providers
if (rrr.res_ruimte_key == -1 || rrr.res_ruimte_extern && (rsv_ruimte_key > 0 ? rrr.extern_meeting_provider > 0 : rrr.extern_meeting_providers > 0)) {
var providers = 0;
_splitLOV = function (LOV)
{
@@ -1705,7 +1705,7 @@ FCLTHeader.Requires({ plugins: ["jQuery", "kenmerk"] });
return result;
}
var providerList = _splitLOV(L("res_extern_meeting_providersLOV"));
var currentProviderBit = rrr.extern_meeting || 0; // Deze is ingesteld
var currentProviderBit = rrr.extern_meeting_provider || 0; // Deze is ingesteld
var readonly = rsv_ruimte_key > 0;
var hidden = rrr.res_ruimte_key == -1 || rrr.extern_meeting_providers == 0;
%>

View File

@@ -210,12 +210,12 @@ function selectRoomGrid(roomDiv)
{
var res_ruimte_key = $(roomDiv).attr("id");
var res_ruimte_extern = $(roomDiv).data("extern");
var extern_meeting = $(roomDiv).data("extern-meeting");
var extern_meeting_providers = $(roomDiv).data("extern-meeting-providers");
FcltMgr.closeDetail(window, {
res_ruimte_key: res_ruimte_key,
res_ruimte_extern: res_ruimte_extern,
extern_meeting: extern_meeting
extern_meeting_providers: extern_meeting_providers
});
}

View File

@@ -959,7 +959,7 @@ __Log("start make_plan_room");
if (params.forSelectRoom && (params.rsv_ruimte_key == -1 || room.extern_id == null)) {
Response.Write(" onClick='selectRoomGrid(this);'");
Response.Write(" data-extern='" + (room.extern_id ? "true" : "false") + "'");
Response.Write(" data-extern-meeting='" + room.extern_meeting + "'");
Response.Write(" data-extern-meeting-providers='" + room.extern_meeting_providers + "'");
}
%>
>

View File

@@ -1077,7 +1077,8 @@ if (options.length > 1) {
verkoopfactuur_IFRAMER('reservering', rsv_ruimte_key);
// tracking naar subframe :-)
if (rsv_ruimte_key > 0) // staat niet tussen de notities
if (rsv_ruimte_key > 0 && (this_res.canReadBO || this_res.canReadFO && !(S("fac_reserved_number2") & 2)
|| this_res.canReadFEOnly && !(S("fac_reserved_number2") & 1))) // staat niet tussen de notities
{
page = protectQS.create("../shared/status_info.asp?rsv_ruimte_key=" + rsv_ruimte_key + "&urole=" + urole);
IFRAMER("opdrhistoryframe", page, { icon: "fa-list", title: L("lcl_tracking")} );

View File

@@ -405,23 +405,13 @@ function getFiltClausePersoon(pfiltcode, params)
break;
}
}
else // Alleen als geen andere filtcode (zoals BEHB of BH2B die loc_key anders gebruiken)
else if (params.loc_key > 0) // Alleen als geen andere filtcode (zoals BEHB of BH2B die loc_key anders gebruiken)
{
if (params.room_key > 0 || params.flr_key > 0 || params.bld_key > 0 || params.loc_key > 0)
{
lfiltClause += " AND p.prs_perslid_key IN (SELECT wp.prs_perslid_key"
+ " FROM prs_perslidwerkplek wp, prs_v_werkplek_gegevens w"
+ " WHERE wp.prs_werkplek_key = w.prs_werkplek_key"
if (params.room_key > 0)
lfiltClause += " AND w.alg_ruimte_key = " + params.room_key;
else if (params.flr_key > 0)
lfiltClause += " AND w.alg_verdieping_key = " + params.flr_key;
else if (params.bld_key > 0)
lfiltClause += " AND w.alg_gebouw_key = " + params.bld_key;
else if (params.loc_key > 0)
lfiltClause += " AND w.alg_locatie_key = " + params.loc_key;
lfiltClause += " )";
}
lfiltClause += " AND p.prs_perslid_key IN (SELECT wp.prs_perslid_key"
+ " FROM prs_perslidwerkplek wp, prs_v_werkplek_gegevens w"
+ " WHERE wp.prs_werkplek_key = w.prs_werkplek_key"
+ " AND w.alg_locatie_key = " + params.loc_key
+ " )";
}
if (pfiltcode != 'CPO')

View File

@@ -820,16 +820,16 @@ function Suggest(inParams) {
type: "GET",
url: url,
dataType: params.JSONP ? "jsonp" : "json",
success: process
success: function (data, textStatus) { process(data, textStatus, checkExist); }
});
}
// Callback functie van HTTP Request
function process(data, textStatus) {
function process(data, textStatus, checkExist) {
clearTimeout(window.suggesttimer);
$suggestbusy.hide();
var checkExist = params.queryField.hasAttribute("checkExist");
// var checkExist = params.queryField.hasAttribute("checkExist");
var doonChange = params.queryField.getAttribute("doonChange");
// Afhankelijk van het readonly zijn de suggest class zetten zodat de suggestBusy wordt vervangen.

View File

@@ -435,7 +435,7 @@ function getSQLByKey (pTable, pKeys)
}
//
case "MLD_INS_DISCIPLINE": {
sql = "SELECT " + lcl.xsqla("ins_discipline_omschrijving", "mld_processing_group")
sql = "SELECT " + lcl.xsqla("ins_discipline_omschrijving", "ins_discipline_key")
+ " FROM mld_discipline"
+ " WHERE ins_discipline_key IN (" + lKeys + ")"
+ " ORDER BY 1";

View File

@@ -62,9 +62,9 @@ function sendAllOrders()
var cust = oRs("cust").value;
var tv_datum = oRs("teverzenden_datum").value;
if (tv_datum != null && new Date(tv_datum) > new Date())
if (tv_datum != null && new Date(tv_datum) > new Date() && !forceOrders)
{
Log2File(0, "Future scheduled time: teverzenden_datum=" + toDateTimeString(new Date(tv_datum)) + " Key=" + OpdrKey);
Log2File(0, "Future scheduled time: teverzenden_datum=" + toDateTimeString(new Date(tv_datum)) + " XMLnode {0}, Key={1} ({2})".format(XMLnode, OpdrKey, ordernr));
}
else
{

View File

@@ -4,7 +4,7 @@
$Id$
Sample putorders plugin
Copy to CUST/xxxx/plugins/puo_plugin_company.wsc and configure in technical address as plugins/puo_plugin_company.wsc
Copy to CUST/xxxx/plugins/puo_plugin_<<company>>.wsc and configure in technical address as plugins/puo_plugin_<<company>>.wsc
-->
<?component error="true" debug="true"?>
<registration
@@ -27,6 +27,9 @@
<method name="post_connect">
<PARAMETER name="params"/>
</method>
<method name="sendorderresult">
<PARAMETER name="params"/>
</method>
<method name="finalize">
<PARAMETER name="params"/>
</method>
@@ -59,6 +62,12 @@ function post_connect(params)
FCLT.Log2File(0, "Plugin entering post_connect");
}
function sendorderresult(params)
{
// Called at end of puo_sendfile.js/function SendOrder()
FCLT.Log2File(0, "Plugin entering sendorderresult");
}
function finalize(params)
{
FCLT.Log2File(2, "Plugin entering finalize");

View File

@@ -546,9 +546,24 @@ function SendOrder( p_connect
finally
{
}
Log2File(2, "*< sendOrder");
Log2File(2, "*< sendOrder");
return {resultcode: resultcode, errtext: errText, response: resultcode>=0?connectResult.response:null};
var SendOrderResult = {resultcode: resultcode, errtext: errText, response: resultcode>=0?connectResult.response:null};
puo_hook.callhook("sendorderresult", { SendOrderResult: SendOrderResult,
p_connect : p_connect,
p_xmlDoc : p_xmlDoc,
p_bedrijfadres : p_bedrijfadres,
p_xslPath : p_xslPath,
p_ordernr : p_ordernr,
p_order_key : p_order_key,
p_sender : p_sender,
XMLnode : XMLnode,
p_code : p_code,
p_bijlagen : p_bijlagen
});
return SendOrderResult;
}
function getMailSubject(pXMLnode, pOpdrKey, ordernr)