diff --git a/APPL/FAC/fac_list.inc b/APPL/FAC/fac_list.inc index cf555910e9..3e2f1b7b75 100644 --- a/APPL/FAC/fac_list.inc +++ b/APPL/FAC/fac_list.inc @@ -224,7 +224,6 @@ function fac_list_query (params) + "FROM_TZ (CAST ( " + expr + " AS TIMESTAMP), " + safe.quoted_sql(S_fac_server_timezone) + ")" + " AT TIME ZONE COALESCE (l.alg_locatie_timezone, " + safe.quoted_sql(S_fac_server_timezone) + ") AS DATE)"; } - // Todo; Today Session("time_zone") <> SYSDATE? clausesArr.push( "SELECT rr.res_rsv_ruimte_host_key prs_perslid_key" // 1 Host ruimtereservering diff --git a/APPL/PDA/reservering_new_by_placetime.asp b/APPL/PDA/reservering_new_by_placetime.asp index 8084301923..80da841f23 100644 --- a/APPL/PDA/reservering_new_by_placetime.asp +++ b/APPL/PDA/reservering_new_by_placetime.asp @@ -89,6 +89,12 @@ var zoom = getQParamFloat("zoom", 2); var geb_key = getQParamInt("geb_key", -1); var floor_key = getQParamInt("floor_key", -1); var werkpl_key = getQParamInt("wsp_key", -1); +var local_tz = S("fac_server_timezone"); +if (geb_key > -1) { + local_tz = res.getTimezoneBy(geb_key, "G"); +} else if (floor_key > -1) { + local_tz = res.getTimezoneBy(floor_key, "V"); +} var res_deel_key = getQParamInt("res_deel_key", -1); // unused. Zou ooit direct naar dag+intervalselectie kunnen var thema_key = getQParamInt("thema_key", 12); @@ -96,8 +102,10 @@ var themaI_key = getQParamInt("themaI_key", 13); var bordlabel_key= getQParamInt("bordlabel_key", 13); var daylimit = getQParamInt("daylimit", 12); // na daylimit kun je voor de eerste dag niet meer reserveren, default 12:00, werkt niet icm offset -var afternoon = new Date().getHours() >= daylimit; -var dateoffset = getQParamInt("offset", afternoon?1:0); // 12:00 default morgen ipv vandaag +var local_now = convertToLocalTime(new Date(), local_tz); +var afternoon = local_now.getHours() >= daylimit; +var dateoffset = getQParamInt("offset", afternoon ? 1 : 0); + var datelimit = getQParamInt("limit", 7); // aantal te kiezen dagen tov offset var floorselect = getQParamInt("floorselect", 0); // na gebouw ook de verdiepingen laten kiezen var mapselect = getQParamInt("mapselect", 1) == 1; // werkplek via plattegrond kiezen diff --git a/APPL/RES/res.inc b/APPL/RES/res.inc index e7354197e5..d32a7293b9 100644 --- a/APPL/RES/res.inc +++ b/APPL/RES/res.inc @@ -1877,6 +1877,7 @@ res = { + " AND rdp.res_ins_discipline_key = rg.res_discipline_key " + " AND (fr.res_ruimte_startdatum IS NULL OR fr.res_ruimte_startdatum <= " + ora_date2 + ")" + " AND (fr.res_ruimte_vervaldatum IS NULL OR fr.res_ruimte_vervaldatum > " + ora_date1 + ")" + + " AND COALESCE(l.alg_locatie_timezone, " + safe.quoted_sql(S("fac_server_timezone")) + ") = " + safe.quoted_sql(S("fac_server_timezone")) + sql_loc_where + (params.max_rooms ? " AND ROWNUM <= " + params.max_rooms : ""); diff --git a/APPL/RES/res_rsv_deel_by_placetime.asp b/APPL/RES/res_rsv_deel_by_placetime.asp index a928e771e4..5b1f50e341 100644 --- a/APPL/RES/res_rsv_deel_by_placetime.asp +++ b/APPL/RES/res_rsv_deel_by_placetime.asp @@ -117,8 +117,15 @@ for (var func in xfunc._funcodes) { } } -var geb_key = getQParamInt("geb_key", -1); -var floor_key = getQParamInt("floor_key", -1); +var geb_key = getQParamInt("geb_key", -1); +var floor_key = getQParamInt("floor_key", -1); +var local_tz = S("fac_server_timezone"); +if (geb_key > -1) { + local_tz = res.getTimezoneBy(geb_key, "G"); +} else if (floor_key > -1) { + local_tz = res.getTimezoneBy(floor_key, "V"); +} + var avail_flrs = getQParamIntArray("avail_flrs", []); var res_deel_key = getQParamInt("wsp_key", -1); var showAll = getQParamInt("showall", 0) == 1; @@ -126,8 +133,10 @@ var showAll = getQParamInt("showall", 0) == 1; var fac_usrrap_key = getQParamInt("usrrap_key", -1); // wordt doorgegeven naar het infobord var daylimit = getQParamInt("daylimit", 12); // na daylimit kun je voor de eerste dag niet meer reserveren, default 12:00, werkt niet icm offset -var afternoon = new Date().getHours() >= daylimit; -var dateoffset = getQParamInt("offset", afternoon?1:0); // TODO localized afternoon gebruiken om offset te berekenen .. +var local_now = convertToLocalTime(new Date(), local_tz); +var afternoon = local_now.getHours() >= daylimit; +var dateoffset = getQParamInt("offset", afternoon ? 1 : 0); + var datelimit = getQParamInt("limit", 7); // aantal te kiezen dagen tov offset var selectmode = getQParamInt("selectmode", 0); // kiezen van het item: 0=automatisch bepalen (tekening anders lijst), 1=lijst, 2=2dtekening indien aanwezig, 3=3dtekening indien aanwezig var fotos = getQParamInt("fotos", 1); // for selectmode 1: show photo or not @@ -517,21 +526,14 @@ transitParam2 += "&startpage=" + startpage;