Merge 2024.3 RC3 patches
svn path=/Website/trunk/; revision=66784
This commit is contained in:
@@ -1140,7 +1140,7 @@ function bez_list(pautfunction, params)
|
||||
var defaultMessage = L("lcl_bezchat_message").format(bez_naam, bez_bedrijf, locatie).replace("()", "");
|
||||
if (outputmode == 0 && oRs("authorized").Value ==1 && chatHostMail && ((oRs("bez_actie_flags").Value & 4)==4))
|
||||
{
|
||||
var chatUrl = S("bez_chat_link").format(chatHostMail, Server.URLencode(defaultMessage));
|
||||
var chatUrl = S("bez_chat_message").format(chatHostMail, Server.URLencode(defaultMessage));
|
||||
content = '<span id="chatIN' + oRs("bez_key").Value + '"'
|
||||
+ ' class="ilbutton"'
|
||||
+ ' OnClick="doLaunchChat(event, \'' + chatUrl + '\');"'
|
||||
|
||||
@@ -78,7 +78,7 @@ __Log(actie);
|
||||
server_conn.url = server_conn.url = "/notes.json?module=ORD&scope=bo";
|
||||
server_conn.methode = "POST";
|
||||
break;
|
||||
case "department": server_url = "/departments.json?";
|
||||
case "department": server_url = "/reports.json?rapcode=AFD_LOOKUP&";
|
||||
switch (methode)
|
||||
{
|
||||
case "GET": server_conn.url = server_url + ((params.lookup && params.lookup.qparams) ? params.lookup.qparams : "");
|
||||
@@ -86,7 +86,7 @@ __Log(actie);
|
||||
default: server_conn.methode = "";
|
||||
}
|
||||
break;
|
||||
case "account": server_url = "/costcentres.json?";
|
||||
case "account": server_url = "/reports.json?rapcode=KPN_LOOKUP&";
|
||||
switch (methode)
|
||||
{
|
||||
case "GET": server_conn.url = server_url + ((params.lookup && params.lookup.qparams) ? params.lookup.qparams : "");
|
||||
|
||||
@@ -18,6 +18,8 @@
|
||||
var iscust = getQParamInt("cust", 0);
|
||||
var this_model = new model_fac_srtnotificatie(iscust);
|
||||
|
||||
settings.overrule_setting("qp_maxrows", 300); // Toon alle 254 (DB49) srtnotificaties direct
|
||||
|
||||
scaffolding(this_model,
|
||||
{
|
||||
"search": {
|
||||
|
||||
@@ -856,27 +856,56 @@ if (savemode)
|
||||
var flextrack = saveFlexKenmerken(mld_key, kenmerkParams);
|
||||
if (copy || cont)
|
||||
{
|
||||
var sql = "SELECT mld_stdmelding_key FROM mld_melding WHERE mld_melding_key = " + mld_copy_key;
|
||||
var oRs = Oracle.Execute(sql);
|
||||
var old_stdmelding_key = oRs("mld_stdmelding_key").Value;
|
||||
oRs.Close();
|
||||
var flexsql = "SELECT k_old.mld_kenmerk_key k_old"
|
||||
+ " , k_old.mld_kenmerk_key k_new"
|
||||
+ " FROM mld_srtkenmerk t"
|
||||
+ " , mld_kenmerk k_old"
|
||||
+ " , mld_stdmelding s_old"
|
||||
+ " , mld_discipline d_old"
|
||||
+ " WHERE s_old.mld_stdmelding_key = " + stdm_key
|
||||
+ " AND s_old.mld_ins_discipline_key = d_old.ins_discipline_key"
|
||||
+ " AND t.mld_srtkenmerk_kenmerktype IN ('F', 'E', 'M')"
|
||||
+ " AND ((k_old.mld_stdmelding_key IS NULL"
|
||||
+ " AND k_old.mld_kenmerk_niveau = 'A')"
|
||||
+ " OR (k_old.mld_stdmelding_key = s_old.mld_stdmelding_key"
|
||||
+ " AND k_old.mld_kenmerk_niveau = 'S')"
|
||||
+ " OR (k_old.mld_stdmelding_key = s_old.mld_ins_discipline_key"
|
||||
+ " AND k_old.mld_kenmerk_niveau = 'D')"
|
||||
+ " OR (k_old.mld_stdmelding_key = d_old.ins_srtdiscipline_key "
|
||||
+ " AND k_old.mld_kenmerk_niveau = 'T'))"
|
||||
+ " , k_new.mld_kenmerk_key k_new"
|
||||
+ " FROM mld_kenmerk k_new"
|
||||
+ " , mld_kenmerk k_old"
|
||||
+ " , mld_srtkenmerk sk_new"
|
||||
+ " , mld_srtkenmerk sk_old"
|
||||
+ " WHERE k_new.mld_srtkenmerk_key = k_old.mld_srtkenmerk_key"
|
||||
+ " AND k_new.mld_srtkenmerk_key = sk_new.mld_srtkenmerk_key"
|
||||
+ " AND k_old.mld_srtkenmerk_key = sk_old.mld_srtkenmerk_key"
|
||||
+ " AND sk_old.mld_srtkenmerk_key = sk_new.mld_srtkenmerk_key"
|
||||
+ " AND COALESCE (k_new.mld_kenmerk_omschrijving, sk_new.mld_srtkenmerk_omschrijving) ="
|
||||
+ " COALESCE (k_old.mld_kenmerk_omschrijving, sk_old.mld_srtkenmerk_omschrijving)"
|
||||
+ " AND sk_new.mld_srtkenmerk_kenmerktype = sk_old.mld_srtkenmerk_kenmerktype"
|
||||
+ " AND sk_new.mld_srtkenmerk_kenmerktype IN ('F', 'E', 'M')"
|
||||
+ " AND k_old.mld_kenmerk_groep = k_new.mld_kenmerk_groep"
|
||||
+ " AND ( ( k_new.mld_stdmelding_key IS NULL"
|
||||
+ " AND k_new.mld_kenmerk_niveau = 'A')"
|
||||
+ " OR ( k_new.mld_stdmelding_key = " + stdm_key
|
||||
+ " AND k_new.mld_kenmerk_niveau = 'S')"
|
||||
+ " OR ( k_new.mld_stdmelding_key = (SELECT s.mld_ins_discipline_key"
|
||||
+ " FROM mld_stdmelding s"
|
||||
+ " WHERE s.mld_stdmelding_key = " + stdm_key + ")"
|
||||
+ " AND k_new.mld_kenmerk_niveau = 'D')"
|
||||
+ " OR ( k_new.mld_stdmelding_key = (SELECT d.ins_srtdiscipline_key"
|
||||
+ " FROM mld_stdmelding s, mld_discipline d"
|
||||
+ " WHERE s.mld_ins_discipline_key = d.ins_discipline_key"
|
||||
+ " AND s.mld_stdmelding_key = " + stdm_key + ")"
|
||||
+ " AND k_new.mld_kenmerk_niveau = 'T'))"
|
||||
+ " AND ( ( k_old.mld_stdmelding_key IS NULL"
|
||||
+ " AND k_old.mld_kenmerk_niveau = 'A')"
|
||||
+ " OR ( k_old.mld_stdmelding_key = " + old_stdmelding_key
|
||||
+ " AND k_old.mld_kenmerk_niveau = 'S')"
|
||||
+ " OR ( k_old.mld_stdmelding_key = (SELECT s.mld_ins_discipline_key"
|
||||
+ " FROM mld_stdmelding s"
|
||||
+ " WHERE s.mld_stdmelding_key = " + old_stdmelding_key + ")"
|
||||
+ " AND k_old.mld_kenmerk_niveau = 'D')"
|
||||
+ " OR ( k_old.mld_stdmelding_key = (SELECT d.ins_srtdiscipline_key"
|
||||
+ " FROM mld_stdmelding s, mld_discipline d"
|
||||
+ " WHERE s.mld_ins_discipline_key = d.ins_discipline_key"
|
||||
+ " AND s.mld_stdmelding_key = " + old_stdmelding_key + ")"
|
||||
+ " AND k_old.mld_kenmerk_niveau = 'T'))"
|
||||
+ " AND k_old.mld_kenmerk_verwijder IS NULL"
|
||||
+ " AND k_old.mld_srtkenmerk_key = t.mld_srtkenmerk_key"
|
||||
+ " AND t.mld_srtkenmerk_verwijder IS NULL"
|
||||
+ " AND BITAND(k_old.mld_kenmerk_wissen, 1) = 0";
|
||||
+ " AND sk_old.mld_srtkenmerk_verwijder IS NULL"
|
||||
+ " AND k_new.mld_kenmerk_verwijder IS NULL"
|
||||
+ " AND sk_new.mld_srtkenmerk_verwijder IS NULL"
|
||||
+ " AND BITAND(k_old.mld_kenmerk_wissen, 1) = 0";;
|
||||
CopyFlexFolders("MLD", "M", mld_copy_key, "M", mld_key, flexsql);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -82,7 +82,6 @@ if (opdr_key > 0)
|
||||
|
||||
if (mld_opdr.contactpersuitv_key == null)
|
||||
mld_opdr.contactpersuitv_key = -1;
|
||||
|
||||
}
|
||||
else
|
||||
{ // Nieuwe opdracht en dus ook bij copy (opdr_key == -1)
|
||||
@@ -109,6 +108,10 @@ else
|
||||
if (mld_opdr.contactpersuitv_key == null)
|
||||
mld_opdr.contactpersuitv_key = -1;
|
||||
|
||||
if (fromofferte) {
|
||||
mld_opdr.opdr_opmerking = null;
|
||||
}
|
||||
|
||||
var this_opdr_copy = mld.func_enabled_opdracht(opdr_copy_key); // wat mag ik zoal op deze opdracht;
|
||||
}
|
||||
//else // echt nieuw
|
||||
|
||||
@@ -825,6 +825,7 @@ function getFlexKenmerkBlockSql(params)
|
||||
|
||||
var listkenmerk_params = { kenmerk_search: advanced,
|
||||
kenmerk_extraTD: (changeOpdracht || newOpdracht), // Voor opdrachten een extra TD erachter TODO: (MGE) klopt dit nog
|
||||
stdm_key: (advanced ? null : stdm_arr[0]),
|
||||
fnIsReadonly: isReadonly,
|
||||
fnIsInvisible: isInvisible,
|
||||
fnClassname: setClassname,
|
||||
|
||||
@@ -285,10 +285,13 @@ oRs.close();
|
||||
// Fast check to see if we have anything to do with FO-BO handling (doorzetten)
|
||||
sql= "SELECT 1 FROM "
|
||||
+ "(SELECT 1 FROM mld_disc_params dp, mld_discipline d "
|
||||
+ "WHERE d.ins_discipline_key = dp.mld_ins_discipline_key AND mld_disc_params_directklaar>0 and d.ins_discipline_verwijder IS NULL "
|
||||
+ "WHERE d.ins_discipline_key = dp.mld_ins_discipline_key AND mld_disc_params_directklaar>0 AND d.ins_discipline_verwijder IS NULL "
|
||||
+ "UNION ALL "
|
||||
+ "SELECT 1 FROM mld_stdmelding "
|
||||
+ "WHERE mld_stdmelding_directklaar>0 AND mld_stdmelding_verwijder IS NULL) "
|
||||
+ "SELECT 1 FROM mld_stdmelding std, mld_discipline d "
|
||||
+ "WHERE mld_stdmelding_directklaar>0 AND mld_stdmelding_verwijder IS NULL "
|
||||
+ " AND ( std.mld_stdmelding_vervaldatum IS NULL"
|
||||
+ " OR std.mld_stdmelding_vervaldatum > SYSDATE) "
|
||||
+ "AND std.mld_ins_discipline_key = d.ins_discipline_key AND d.ins_discipline_verwijder IS NULL) "
|
||||
+ "WHERE ROWNUM = 1";
|
||||
oRs = Oracle.Execute(sql);
|
||||
var anyfobodiscs = !oRs.eof;
|
||||
|
||||
@@ -410,20 +410,13 @@ if (rsv_ruimte_key == -1)
|
||||
var isHoliday = cal_isVrijeDag(startDate) || cal_isWeekend(startDate);
|
||||
|
||||
// Display warning: Selected date is not a workday
|
||||
if (organisation247Type == 0 && isHoliday) {
|
||||
FcltMgr.confirm( "<%=L("lcl_holiday")%>", {
|
||||
autoconfirm: !isHoliday,
|
||||
fncancel: function() { return false; }
|
||||
}, function() {
|
||||
fn_res_next1_confirm();
|
||||
});
|
||||
} else if (organisation247Type == 2 && isHoliday) {
|
||||
FcltMgr.confirm("<%=L("lcl_holiday")%>", {
|
||||
autoconfirm: !isHoliday,
|
||||
fncancel: function() { return false; }
|
||||
}, () => {});
|
||||
if (organisation247Type == 2 && isHoliday) {
|
||||
FcltMgr.alert("<%=L("lcl_holiday_strict")%>");
|
||||
} else {
|
||||
fn_res_next1_confirm();
|
||||
FcltMgr.confirm("<%=L("lcl_holiday")%>", {
|
||||
autoconfirm: !isHoliday || organisation247Type == 1,
|
||||
fncancel: function() { return false; }
|
||||
}, fn_res_next1_confirm);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -506,7 +506,7 @@ var qrc = getQParamInt("qrc", 0) != 0;
|
||||
if (is_beschikbaar > 0)
|
||||
{ // Werkplek is voor deze datum nog niet gereserveerd.
|
||||
// Gelijk de popup om te reserveren.
|
||||
//if (oRs("bezet").value < dagcapaciteit - minimumbeschikbaarheid)
|
||||
//if (oRs("bezet").value <= dagcapaciteit - minimumbeschikbaarheid)
|
||||
var url = "../pda/reserveringen.asp?qrc="+(qrc?1:0)+"&res_deel_key="+werkpl_key+"&res_van="+(new Date(resdate).getTime());
|
||||
Response.Redirect(url);
|
||||
}
|
||||
@@ -580,7 +580,7 @@ var qrc = getQParamInt("qrc", 0) != 0;
|
||||
}
|
||||
function fnSubmitRD(oRs)
|
||||
{
|
||||
if (oRs("bezet").value < calc_dagcapaciteit - minimumbeschikbaarheid)
|
||||
if (oRs("bezet").value <= calc_dagcapaciteit - minimumbeschikbaarheid)
|
||||
return "../pda/reserveringen.asp?qrc="+(qrc?1:0)+"&res_deel_key=" + oRs("res_deel_key").Value + "&res_van="+(new Date(resdate).getTime())
|
||||
else
|
||||
return "";
|
||||
|
||||
@@ -175,6 +175,7 @@ if (submitting)
|
||||
var rrr = {};
|
||||
var sql = "SELECT rsv_r.res_reservering_key"
|
||||
+ " , rsv_r.res_rsv_ruimte_volgnr"
|
||||
+ " , ar.alg_ruimte_key"
|
||||
+ " , ar.alg_verdieping_key"
|
||||
+ " , rsv_r.res_rsv_ruimte_van"
|
||||
+ " , rsv_r.res_rsv_ruimte_tot"
|
||||
@@ -217,9 +218,9 @@ if (!oRs.eof)
|
||||
, disc_oms: oRs("ins_discipline_omschrijving").Value
|
||||
, discipline_key: oRs("res_discipline_key").Value
|
||||
, verdieping_key: oRs("alg_verdieping_key").Value
|
||||
, ruimte_key: -1 // voor als je op basis van ruimte de vrije werkplekken op de verdieping zoekt.
|
||||
, van: (new Date(oRs("res_rsv_ruimte_van").Value)).getTime()
|
||||
, tot: (new Date(oRs("res_rsv_ruimte_tot").Value)).getTime()
|
||||
, ruimte_key: oRs("alg_ruimte_key").Value
|
||||
, van: new Date(oRs("res_rsv_ruimte_van").Value)
|
||||
, tot: new Date(oRs("res_rsv_ruimte_tot").Value)
|
||||
, x: oRs("ins_ruimte_x").Value
|
||||
, y: oRs("ins_ruimte_y").Value
|
||||
}
|
||||
@@ -298,9 +299,9 @@ if (!submitting)
|
||||
%> <a href="<%=res_url%>" data-ajax="false"><%=res_nr%></a><%
|
||||
COL_END();
|
||||
COL_START(1); Response.Write('<div class="bold">' + L("lcl_date") + '</div>'); COL_END();
|
||||
COL_START(2); Response.Write(toDateString(new Date(rrr.rsv.van), true)); COL_END();
|
||||
COL_START(2); Response.Write(toDateString(rrr.rsv.van, true)); COL_END();
|
||||
COL_START(1); Response.Write('<div class="bold">' + L("lcl_time") + '</div>'); COL_END();
|
||||
COL_START(2); Response.Write(toTimeString(new Date(rrr.rsv.van)) + " - " + toTimeString(new Date(rrr.rsv.tot))); COL_END();
|
||||
COL_START(2); Response.Write(toTimeString(rrr.rsv.van) + " - " + toTimeString(rrr.rsv.tot)); COL_END();
|
||||
GRID_END();
|
||||
CONTAINER_END();
|
||||
|
||||
@@ -374,9 +375,12 @@ if (!submitting)
|
||||
, mobile: true
|
||||
}
|
||||
);
|
||||
var autlevel = urole == "fe" ? (("WEB_RESUSE" in authRES._funcodes) ? authRES._funcodes["WEB_RESUSE"].PRSwritelevel : 9)
|
||||
: (("WEB_RESFOF" in authRES._funcodes) ? authRES._funcodes["WEB_RESFOF"].PRSwritelevel : 9);
|
||||
FCLTpersoonselector( "colx"
|
||||
, "sgPerson"
|
||||
, { label: L("lcl_res_reserve_for")
|
||||
, autlevel: autlevel
|
||||
, mobile: true
|
||||
, embedded: true
|
||||
}
|
||||
|
||||
@@ -2589,22 +2589,8 @@ res = {
|
||||
{
|
||||
var sql = "SELECT z_iad.ins_alg_ruimte_key"
|
||||
+ " , z_rad.res_discipline_key"
|
||||
+ " , SUM( CASE WHEN z_iad.ins_deel_dwgy IS NOT NULL"
|
||||
+ " THEN z_iad.ins_deel_dwgx"
|
||||
+ " ELSE NULL"
|
||||
+ " END"
|
||||
+ " ) / COUNT( CASE WHEN z_iad.ins_deel_dwgx IS NULL OR z_iad.ins_deel_dwgy IS NULL"
|
||||
+ " THEN NULL"
|
||||
+ " ELSE 1"
|
||||
+ " END) ins_ruimte_x"
|
||||
+ " , SUM( CASE WHEN z_iad.ins_deel_dwgx IS NOT NULL"
|
||||
+ " THEN z_iad.ins_deel_dwgy"
|
||||
+ " ELSE NULL"
|
||||
+ " END"
|
||||
+ " ) / COUNT( CASE WHEN z_iad.ins_deel_dwgx IS NULL OR z_iad.ins_deel_dwgy IS NULL"
|
||||
+ " THEN NULL"
|
||||
+ " ELSE 1"
|
||||
+ " END) ins_ruimte_y"
|
||||
+ " , AVG(z_iad.ins_deel_dwgx) ins_ruimte_x"
|
||||
+ " , AVG(z_iad.ins_deel_dwgy) ins_ruimte_y"
|
||||
+ " FROM res_v_aanwezigdeel z_rad"
|
||||
+ " , ins_v_aanwezigdeel z_iad"
|
||||
+ " WHERE z_rad.res_ins_deel_key = z_iad.ins_deel_key"
|
||||
@@ -2617,7 +2603,8 @@ res = {
|
||||
var params = params || {};
|
||||
if (!params.rsv)
|
||||
{ // Eerst gegevens over de werkplekreservering ophalen met behulp van de rsv_ruimte_key als die niet gegeven zijn.
|
||||
var sql = "SELECT ar.alg_verdieping_key"
|
||||
var sql = "SELECT ar.alg_ruimte_key"
|
||||
+ " , ar.alg_verdieping_key"
|
||||
+ " , rsv_r.res_rsv_ruimte_van"
|
||||
+ " , rsv_r.res_rsv_ruimte_tot"
|
||||
+ " , rd.res_discipline_key"
|
||||
@@ -2641,34 +2628,34 @@ res = {
|
||||
+ " AND rd.res_discipline_key = z.res_discipline_key"
|
||||
+ " AND rsv_r.res_rsv_ruimte_key = " + rsv_ruimte_key;
|
||||
var oRs = Oracle.Execute(sql);
|
||||
if (!oRs.eof)
|
||||
{
|
||||
params = { rsv: { extra_wp_nr: 0
|
||||
, rsv_ruimte_key: rsv_ruimte_key
|
||||
, discipline_key: oRs("res_discipline_key").Value
|
||||
, verdieping_key: oRs("alg_verdieping_key").Value
|
||||
, ruimte_key: -1
|
||||
, van: oRs("res_rsv_ruimte_van").Value
|
||||
, tot: oRs("res_rsv_ruimte_tot").Value
|
||||
, x: oRs("ins_ruimte_x").Value
|
||||
, y: oRs("ins_ruimte_y").Value
|
||||
}
|
||||
, wp: { x: oRs("ins_deel_DWGX").Value
|
||||
, y: oRs("ins_deel_DWGY").Value
|
||||
}
|
||||
}
|
||||
}
|
||||
params = { rsv: { extra_wp_nr: 0
|
||||
, rsv_ruimte_key: rsv_ruimte_key
|
||||
, discipline_key: oRs("res_discipline_key").Value
|
||||
, verdieping_key: oRs("alg_verdieping_key").Value
|
||||
, ruimte_key: oRs("alg_ruimte_key").Value
|
||||
, van: new Date(oRs("res_rsv_ruimte_van").Value)
|
||||
, tot: new Date(oRs("res_rsv_ruimte_tot").Value)
|
||||
, x: oRs("ins_ruimte_x").Value
|
||||
, y: oRs("ins_ruimte_y").Value
|
||||
}
|
||||
, wp: { x: oRs("ins_deel_DWGX").Value
|
||||
, y: oRs("ins_deel_DWGY").Value
|
||||
}
|
||||
}
|
||||
oRs.Close();
|
||||
}
|
||||
|
||||
__Log(params);
|
||||
var sql = "SELECT res_wp.*"
|
||||
+ " FROM (SELECT rd.res_deel_key"
|
||||
+ " , rd.res_deel_omschrijving"
|
||||
+ " " + ( params.wp && params.wp.x && params.wp.y
|
||||
? ", SQRT(POWER((id.ins_deel_DWGX - " + params.wp.x + "),2) + POWER((id.ins_deel_DWGY - " + params.wp.y + "),2)) afstand_werkplek"
|
||||
+ ", SQRT(POWER((z.ins_ruimte_x - " + params.rsv.x + "),2) + POWER((z.ins_ruimte_y - " + params.rsv.y + "),2)) afstand_ruimte"
|
||||
: ""
|
||||
)
|
||||
+ " , ar.alg_ruimte_nr ||' - '|| rd.res_deel_omschrijving res_deel_omschrijving"
|
||||
+ " , " + ( params.wp && params.wp.x && params.wp.y
|
||||
? "SQRT(POWER((id.ins_deel_DWGX - " + params.wp.x + "),2) + POWER((id.ins_deel_DWGY - " + params.wp.y + "),2))"
|
||||
: "1"
|
||||
) + " afstand_werkplek"
|
||||
+ " , " + ( params.wp && params.wp.x && params.wp.y
|
||||
? "SQRT(POWER((z.ins_ruimte_x - " + params.rsv.x + "),2) + POWER((z.ins_ruimte_y - " + params.rsv.y + "),2))"
|
||||
: "CASE WHEN ar.alg_ruimte_key = " + params.rsv.ruimte_key + " THEN 0 ELSE 1 END"
|
||||
) + " afstand_ruimte"
|
||||
+ " FROM res_v_aanwezigdeel rd"
|
||||
+ " , ins_v_aanwezigdeel id"
|
||||
+ " , alg_v_aanwezigruimte ar"
|
||||
@@ -2676,7 +2663,7 @@ res = {
|
||||
+ " WHERE id.ins_alg_ruimte_key = ar.alg_ruimte_key"
|
||||
+ " AND rd.res_ins_deel_key = id.ins_deel_key"
|
||||
+ " AND ( rd.res_deel_vervaldatum IS NULL"
|
||||
+ " OR rd.res_deel_vervaldatum > " + new Date(params.rsv.van).toSQL()
|
||||
+ " OR rd.res_deel_vervaldatum > " + params.rsv.van.toSQL()
|
||||
+ " )"
|
||||
+ ( params.rsv.ruimte_key > 0
|
||||
? " AND ar.alg_verdieping_key = (SELECT a.alg_verdieping_key FROM alg_ruimte a WHERE a.alg_ruimte_key = " + params.rsv.ruimte_key + ")"
|
||||
@@ -2687,17 +2674,17 @@ res = {
|
||||
+ " (SELECT 1"
|
||||
+ " FROM res_v_aanwezigrsv_deel rsv_d"
|
||||
+ " WHERE rsv_d.res_deel_key = rd.res_deel_key"
|
||||
+ " AND rsv_d.res_rsv_deel_van < " + new Date(params.rsv.tot).toSQL(true)
|
||||
+ " AND rsv_d.res_rsv_deel_tot > " + new Date(params.rsv.van).toSQL(true)
|
||||
+ " AND rsv_d.res_rsv_deel_van < " + params.rsv.tot.toSQL(true)
|
||||
+ " AND rsv_d.res_rsv_deel_tot > " + params.rsv.van.toSQL(true)
|
||||
+ " )"
|
||||
+ " AND z.ins_alg_ruimte_key = id.ins_alg_ruimte_key"
|
||||
+ " AND z.res_discipline_key = rd.res_discipline_key"
|
||||
+ " ) res_wp"
|
||||
+ " ORDER BY " + ( params.wp && params.wp.x && params.wp.y
|
||||
? " res_wp.afstand_ruimte , res_wp.afstand_werkplek, "
|
||||
: ""
|
||||
)
|
||||
+ "res_wp.res_deel_omschrijving";
|
||||
+ " ORDER BY res_wp.afstand_ruimte"
|
||||
+ " , res_wp.afstand_werkplek"
|
||||
+ " , res_wp.res_deel_omschrijving";
|
||||
__Log(sql)
|
||||
//abort_with_warning("STOP");
|
||||
return sql;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1240,22 +1240,18 @@ FCLTHeader.Requires({ plugins: ["jQuery", "kenmerk"] });
|
||||
|
||||
// No popup voor 24/7 organisation
|
||||
// Display warning: Selected date is not a workday
|
||||
if(organisation247Type == 0 && isHoliday) { // Warning can be ignored. Still possible to make a reservation
|
||||
FcltMgr.confirm(L("lcl_holiday"), {
|
||||
autoconfirm: !isHoliday,
|
||||
fncancel: function() { iface.button.enable("btn_res_submit") }
|
||||
}, function() {
|
||||
$.post($("form[name=u2]")[0].action, $("[name=u2]").serialize(), FcltCallbackAndThenAlways(res_submit_callback), "json");
|
||||
});
|
||||
} else if(organisation247Type == 2 && isHoliday && isFrontend) { // Not possible to make a reservation for frontend users
|
||||
FcltMgr.confirm(L("lcl_holiday"), {
|
||||
autoconfirm: !isHoliday,
|
||||
fncancel: function() { iface.button.enable("btn_res_submit") }
|
||||
}, function() {
|
||||
iface.button.enable("btn_res_submit");
|
||||
});
|
||||
if (organisation247Type == 2 && isHoliday && isFrontend) { // Not possible to make a reservation for frontend users
|
||||
FcltMgr.alert("<%=L("lcl_holiday_strict")%>");
|
||||
iface.button.enable("btn_res_submit");
|
||||
} else {
|
||||
$.post($("form[name=u2]")[0].action, $("[name=u2]").serialize(), FcltCallbackAndThenAlways(res_submit_callback), "json");
|
||||
FcltMgr.confirm(L("lcl_holiday"), {
|
||||
autoconfirm: !isHoliday || organisation247Type == 1,
|
||||
fncancel: function() {
|
||||
iface.button.enable("btn_res_submit");
|
||||
}
|
||||
}, function() {
|
||||
$.post($("form[name=u2]")[0].action, $("[name=u2]").serialize(), FcltCallbackAndThenAlways(res_submit_callback), "json");
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -96,11 +96,11 @@ user.auth_required_or_abort(this_res.couldCreate);
|
||||
var gebouw_key = oRs("alg_gebouw_key").Value;
|
||||
var vrije_dagen_alt = [];
|
||||
var sqlVrijeDagen = "SELECT ag.mld_vrije_dagen_id"
|
||||
+ " , mv.mld_vrije_dagen_datum"
|
||||
+ " FROM alg_gebouw ag"
|
||||
+ " , mld_vrije_dagen mv"
|
||||
+ " WHERE ag.mld_vrije_dagen_id = mv.mld_vrije_dagen_id"
|
||||
+ " AND ag.alg_gebouw_key = " + gebouw_key;
|
||||
+ " , mv.mld_vrije_dagen_datum"
|
||||
+ " FROM alg_gebouw ag"
|
||||
+ " , mld_vrije_dagen mv"
|
||||
+ " WHERE ag.mld_vrije_dagen_id = mv.mld_vrije_dagen_id"
|
||||
+ " AND ag.alg_gebouw_key = " + gebouw_key;
|
||||
var oRs2 = Oracle.Execute(sqlVrijeDagen);
|
||||
while (!oRs2.eof)
|
||||
{
|
||||
@@ -430,18 +430,17 @@ user.auth_required_or_abort(this_res.couldCreate);
|
||||
}
|
||||
else
|
||||
{
|
||||
if ((res247orgType != 2) && isDateWeekendOrHoliday(nextDate, mld_vrije_dagen))
|
||||
if ((res247orgType != 2) && isDateWeekendOrHoliday(nextDate, mld_vrije_dagen)) {
|
||||
$("#withWeekends").prop("checked", false); // een vrije/weekend dag geselecteerd, dus niet alleen werkdagen.
|
||||
else if(res247orgType == 2)
|
||||
$("#withWeekends").prop("checked", true); // Alleen werkdagen.
|
||||
} else if (res247orgType == 2) {
|
||||
$("#withWeekends").prop("checked", true); // Alleen werkdagen.
|
||||
}
|
||||
|
||||
nextDate.setDate(nextDate.getDate() + interval);
|
||||
|
||||
while (nextDate <= lastDate)
|
||||
{
|
||||
while (nextDate <= lastDate) {
|
||||
// No holidays
|
||||
if (!($("#withWeekends:checked").val() == "on" && isDateWeekendOrHoliday(nextDate, mld_vrije_dagen)))
|
||||
{
|
||||
if (!($("#withWeekends:checked").val() == "on" && isDateWeekendOrHoliday(nextDate, mld_vrije_dagen))) {
|
||||
periodedagen.push(nextDate);
|
||||
}
|
||||
nextDate.setDate(nextDate.getDate() + interval);
|
||||
@@ -501,28 +500,23 @@ user.auth_required_or_abort(this_res.couldCreate);
|
||||
|
||||
//if chosen dates have weekend or holiday
|
||||
var hasHoliday = false;
|
||||
for(var i = 0; i < dates.length; i++) {
|
||||
for (var i = 0; i < dates.length; i++) {
|
||||
var nextDate = dates[i];
|
||||
$("#newDates").append("<option value=" + nextDate + ">" + toDateString(new Date(nextDate)) + "</option>");
|
||||
if(!hasHoliday && (res247orgType == 2 || res247orgType == 0) && isDateWeekendOrHoliday(new Date(nextDate), mld_vrije_dagen))
|
||||
if (!hasHoliday && (res247orgType == 2 || res247orgType == 0) && isDateWeekendOrHoliday(new Date(nextDate), mld_vrije_dagen)) {
|
||||
hasHoliday = true;
|
||||
}
|
||||
}
|
||||
|
||||
if(hasHoliday) {
|
||||
if(res247orgType == 2) { // Strict: holidays not allowed.
|
||||
FcltMgr.alert(L("lcl_holiday_found"));
|
||||
return false;
|
||||
} else if (res247orgType == 0) { // Tolerated: Can book holidays, but warning is shown.
|
||||
FcltMgr.confirm(L("lcl_holiday"), {
|
||||
autoconfirm: false,
|
||||
fncancel: function() { iface.button.enable("btn_res_submit") }
|
||||
}, function() {
|
||||
return postRepeat();
|
||||
});
|
||||
} else // No restrictions: Holidays are also workdays.
|
||||
return postRepeat();
|
||||
} else // No holiday found.
|
||||
return postRepeat();
|
||||
if (hasHoliday && res247orgType == 2) { // Strict: holidays not allowed.
|
||||
FcltMgr.alert(L("lcl_holiday_found_strict"));
|
||||
return false;
|
||||
} else { // Tolerated: Can book holidays, but warning is shown.
|
||||
FcltMgr.confirm(L("lcl_holiday_found"), {
|
||||
autoconfirm: !hasHoliday || res247orgType == 1,
|
||||
fncancel: function() { iface.button.enable("btn_res_submit"); }
|
||||
}, postRepeat);
|
||||
}
|
||||
}
|
||||
|
||||
function postRepeat() {
|
||||
@@ -596,12 +590,13 @@ user.auth_required_or_abort(this_res.couldCreate);
|
||||
if ($.inArray(date.getTime(), dates) >= 0)
|
||||
{
|
||||
// Enable date so it can be deselected. Set style to be highlighted
|
||||
return [true,"calselected"];
|
||||
return [true, "calselected"];
|
||||
}
|
||||
|
||||
// If date is a holiday or weekend, add disabled styling
|
||||
if (res247orgType && isDateWeekendOrHoliday(date, mld_vrije_dagen))
|
||||
// If date is a holiday or weekend, add disabled class
|
||||
if (res247orgType == 2 && isDateWeekendOrHoliday(date, mld_vrije_dagen)) {
|
||||
return [true, "ui-state-disabled"];
|
||||
}
|
||||
|
||||
// Dates not in the array are left enabled, but with no extra style
|
||||
return [true, ""];
|
||||
|
||||
@@ -679,13 +679,13 @@ if (showMldFrame && urole == 'fe') // fe krijgt geen Add knop. Als er dan ook ge
|
||||
+ " FROM res_deel rd, res_rsv_deel rrd"
|
||||
+ " WHERE rd.res_deel_key = rrd.res_deel_key"
|
||||
+ " AND rrd.res_rsv_ruimte_key = " + rsv_ruimte_key;
|
||||
var ors_oRs = Oracle.Execute(ord_sql);
|
||||
var ord_oRs = Oracle.Execute(ord_sql);
|
||||
var userIsReservedResource = false;
|
||||
while (!ors_oRs.EoF && !userIsReservedResource) {
|
||||
if (user_key == ors_oRs("res_prs_perslid_key").Value) {
|
||||
while (!ord_oRs.EoF && !userIsReservedResource) {
|
||||
if (user_key == ord_oRs("res_prs_perslid_key").Value) {
|
||||
userIsReservedResource = true;
|
||||
}
|
||||
ors_oRs.MoveNext();
|
||||
ord_oRs.MoveNext();
|
||||
}
|
||||
auth = userIsReservedResource;
|
||||
}
|
||||
|
||||
@@ -400,6 +400,7 @@ while (nnregels < 8)
|
||||
+ "</tr>";
|
||||
oRs.MoveNext();
|
||||
}
|
||||
oRs.Close();
|
||||
if (css) {
|
||||
Response.Write("<style>\n" + css + "</style>");
|
||||
Response.Write(html);
|
||||
|
||||
@@ -130,7 +130,7 @@ sqlL = filtClause.locatie;
|
||||
sqlG = filtClause.gebouw;
|
||||
|
||||
sqlarr = [];
|
||||
if (!S("mld_opdr_pref_contractors_only") || isOfferte && S("mld_opdr_pref_contractors_only") == 2) sqlarr.push(sqlD);
|
||||
if ((loc_key === -1 && bld_key === -1) || !S("mld_opdr_pref_contractors_only") || isOfferte && S("mld_opdr_pref_contractors_only") == 2) sqlarr.push(sqlD);
|
||||
if (loc_key > 0) sqlarr.push(sqlL);
|
||||
if (bld_key > 0) sqlarr.push(sqlG);
|
||||
var mld_opdr_sel_intern_uitv = S("mld_opdr_sel_intern_uitv") == 1; // Internal contractors can be selected for all services {0=no (default) | 1=Yes}.
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
Context: Vanuit ELK asp bestand
|
||||
*/
|
||||
|
||||
var FCLTVersion="2024.3RC1";
|
||||
var FCLTVersion="2024.3RC2";
|
||||
var FCLTMinDatabaseSchema="49"; // Alleen de cijfers
|
||||
|
||||
var custpath = rooturl + "/cust/" + customerId; // path to customer files
|
||||
|
||||
@@ -311,7 +311,69 @@ function BijlagenButton(tfield, tprops, tparams)
|
||||
// Voor andere modules kan er 1 op 1 gekopieerd worden.
|
||||
if (tprops.niveau == "M")
|
||||
{ // Melding naar melding
|
||||
lijst = BijlagenList(tparams.module, tprops.niveau, tparams.pkey, kenmerk_key, tfield.otherPath, tprops.sortFilename);
|
||||
var sql = "SELECT mld_stdmelding_key"
|
||||
+ " FROM mld_melding"
|
||||
+ " WHERE mld_melding_key = " + tprops.parentKey;
|
||||
var oRs = Oracle.Execute(sql);
|
||||
var old_stdmelding_key = oRs("mld_stdmelding_key").Value;
|
||||
oRs.Close();
|
||||
var actual_kenmerk_key = kenmerk_key; /* Deze is mogelijk anders als we van stdm wijzigen */
|
||||
if (old_stdmelding_key != tprops.stdm_key) {
|
||||
sql = "SELECT k2.mld_kenmerk_key"
|
||||
+ " FROM mld_kenmerk k1"
|
||||
+ " , mld_kenmerk k2"
|
||||
+ " , mld_srtkenmerk sk1"
|
||||
+ " , mld_srtkenmerk sk2"
|
||||
+ " WHERE k1.mld_srtkenmerk_key = k2.mld_srtkenmerk_key"
|
||||
+ " AND k1.mld_srtkenmerk_key = sk1.mld_srtkenmerk_key"
|
||||
+ " AND k2.mld_srtkenmerk_key = sk2.mld_srtkenmerk_key"
|
||||
+ " AND sk1.mld_srtkenmerk_key = sk2.mld_srtkenmerk_key"
|
||||
+ " AND COALESCE (k1.mld_kenmerk_omschrijving, sk1.mld_srtkenmerk_omschrijving) ="
|
||||
+ " COALESCE (k2.mld_kenmerk_omschrijving, sk2.mld_srtkenmerk_omschrijving)"
|
||||
+ " AND sk1.mld_srtkenmerk_kenmerktype = sk2.mld_srtkenmerk_kenmerktype" // Toch wel op z'n minst
|
||||
+ " AND k1.mld_kenmerk_groep = k2.mld_kenmerk_groep"
|
||||
+ " AND k1.mld_kenmerk_key = " + kenmerk_key
|
||||
+ " AND ( ( k1.mld_stdmelding_key IS NULL"
|
||||
+ " AND k1.mld_kenmerk_niveau = 'A')"
|
||||
+ " OR ( k1.mld_stdmelding_key = " + tprops.stdm_key
|
||||
+ " AND k1.mld_kenmerk_niveau = 'S')"
|
||||
+ " OR ( k1.mld_stdmelding_key = (SELECT s.mld_ins_discipline_key"
|
||||
+ " FROM mld_stdmelding s"
|
||||
+ " WHERE s.mld_stdmelding_key = " + tprops.stdm_key + ")"
|
||||
+ " AND k1.mld_kenmerk_niveau = 'D')"
|
||||
+ " OR ( k1.mld_stdmelding_key = (SELECT d.ins_srtdiscipline_key"
|
||||
+ " FROM mld_stdmelding s, mld_discipline d"
|
||||
+ " WHERE s.mld_ins_discipline_key = d.ins_discipline_key"
|
||||
+ " AND s.mld_stdmelding_key = " + tprops.stdm_key + ")"
|
||||
+ " AND k1.mld_kenmerk_niveau = 'T'))"
|
||||
+ " AND ( ( k2.mld_stdmelding_key IS NULL"
|
||||
+ " AND k2.mld_kenmerk_niveau = 'A')"
|
||||
+ " OR ( k2.mld_stdmelding_key = " + old_stdmelding_key
|
||||
+ " AND k2.mld_kenmerk_niveau = 'S')"
|
||||
+ " OR ( k2.mld_stdmelding_key = (SELECT s.mld_ins_discipline_key"
|
||||
+ " FROM mld_stdmelding s"
|
||||
+ " WHERE s.mld_stdmelding_key = " + old_stdmelding_key + ")"
|
||||
+ " AND k2.mld_kenmerk_niveau = 'D')"
|
||||
+ " OR ( k2.mld_stdmelding_key = (SELECT d.ins_srtdiscipline_key"
|
||||
+ " FROM mld_stdmelding s, mld_discipline d"
|
||||
+ " WHERE s.mld_ins_discipline_key = d.ins_discipline_key"
|
||||
+ " AND s.mld_stdmelding_key = " + old_stdmelding_key + ")"
|
||||
+ " AND k2.mld_kenmerk_niveau = 'T'))";
|
||||
var oRs = Oracle.Execute(sql);
|
||||
if (oRs.EoF)
|
||||
actual_kenmerk_key = -1; // Dan weet ik het ook niet
|
||||
else
|
||||
{
|
||||
actual_kenmerk_key = oRs("mld_kenmerk_key").Value;
|
||||
oRs.MoveNext();
|
||||
if (!oRs.EoF) // Dan hebben we schijnbaar geen unieke gevonden -> foute configuratie
|
||||
actual_kenmerk_key = -1;
|
||||
}
|
||||
oRs.Close();
|
||||
}
|
||||
if (actual_kenmerk_key > 0) {
|
||||
lijst = BijlagenList(tparams.module, tprops.niveau, tparams.pkey, actual_kenmerk_key, tfield.otherPath, tprops.sortFilename);
|
||||
}
|
||||
}
|
||||
else if (tfield.otherPath) // tprops.niveau == "O"
|
||||
{ // Opdracht naar opdracht
|
||||
|
||||
@@ -561,7 +561,8 @@ function rotateLogfile(whenSize)
|
||||
var expire = new Date();
|
||||
expire.setDate(expire.getDate() - 7); // 7 dagen niets gebeurd? Dan wegmoven
|
||||
// Merk op dat @trunk hier soms al een "Vreemd. Default voor .... is gecached als ..." is gelogd en de file dus nieuw is
|
||||
if (f.Size > whenSize || new Date(f.DateLastModified) < expire)
|
||||
var wasSize = f.Size;
|
||||
if (wasSize > whenSize || new Date(f.DateLastModified) < expire)
|
||||
{
|
||||
var today = toISODateString(new Date());
|
||||
var newname = oldname.replace(/\.html$/, "") + "_" + today + ".html";
|
||||
@@ -575,9 +576,9 @@ function rotateLogfile(whenSize)
|
||||
try
|
||||
{
|
||||
fso.MoveFile(oldname, newname);
|
||||
if (f.Size > whenSize) // niet meteen nieuwe logfile starten als het tijdgebaseerd was
|
||||
if (wasSize > whenSize) // niet meteen nieuwe logfile starten als het tijdgebaseerd was
|
||||
{
|
||||
__DoLog("Oversized logfile ({0} bytes) was archived in {1}".format(f.Size, newname), "#0f0");
|
||||
__DoLog("Oversized logfile ({0} bytes) was archived in {1}".format(wasSize, newname), "#0f0");
|
||||
}
|
||||
}
|
||||
catch(e)
|
||||
|
||||
@@ -129,6 +129,7 @@ function sendnotifications(ref_key, pcode)
|
||||
function sendnotificationforced(noti_key, params)
|
||||
{
|
||||
forceOrders = 1; // altijd FORCE
|
||||
settings.overrule_setting("puo_flags", 1); // sta notificaties toe
|
||||
clearNotifications = 0; // altijd KEEP
|
||||
sendNotification(null, null, { noti_key: noti_key });
|
||||
return { message: "Notification has been sent" };
|
||||
|
||||
@@ -268,6 +268,7 @@ function doHTTP(url, params) // params is sterk vergelijkbaar met p_bedrijfadres
|
||||
puo_hook.callhook("pre_custom_oauth_authentication", { params: params, params2: params2 });
|
||||
|
||||
Log2File(1, "Fetching oAuth token at: " + params.token_url);
|
||||
// vaak secret tokens dus maar niet loggen Log2File(2, params2.data);
|
||||
var result = doHTTP(params.token_url, params2);
|
||||
var ctype = String(result.getResponseHeader("Content-Type"));
|
||||
if (ctype.indexOf("application/json") == -1) // kan ook application/json;charset=UTF-8 zijn
|
||||
@@ -280,6 +281,8 @@ function doHTTP(url, params) // params is sterk vergelijkbaar met p_bedrijfadres
|
||||
params.headers["Authorization"] = "Bearer " + jresult.access_token;
|
||||
params.username = null;
|
||||
params.password = null;
|
||||
|
||||
puo_hook.callhook("post_custom_oauth_authentication", { params: params, params2: params2, jresult: jresult });
|
||||
}
|
||||
|
||||
http_request.open(params.method, url, false, params.username, params.password); // Synchroon
|
||||
|
||||
Reference in New Issue
Block a user