237 lines
11 KiB
Plaintext
237 lines
11 KiB
Plaintext
<%@ language = "JavaScript" %>
|
|
<% /*
|
|
$Revision$
|
|
$Id$
|
|
|
|
File: pda/ruimte.asp
|
|
Ruimtedetails+vervolgfuncties
|
|
Context: vanaf smartphone-ruimtelijst of direct via een QRC
|
|
Parameters:
|
|
ruimte_key
|
|
*/
|
|
%>
|
|
<!-- #include file="../Shared/common.inc" -->
|
|
<!-- #include file="./resultset_table.inc" -->
|
|
<!-- #include file="../alg/alg.inc" -->
|
|
<!-- #include file="../alg/alg_flexkenmerk.inc" -->
|
|
<!-- #include file="../Shared/discx3d.inc" -->
|
|
<!-- #include file="../Shared/getkenmerksql.inc" -->
|
|
<!-- #include file="../mld/mld.inc" -->
|
|
<!-- #include file="./mobile.inc" -->
|
|
<!-- #include file="./iface.inc" -->
|
|
<%
|
|
var ruimte_key = getQParamInt("ruimte_key");
|
|
var qrc = getQParamInt("qrc", 0) != 0;
|
|
var tiny = getQParamInt("tiny", 0) !=0;
|
|
|
|
var transitParam = buildTransitParam(["qrc", "tiny"]);
|
|
|
|
var sql = "SELECT aog.alg_gebouw_code || '-' || aog.alg_verdieping_code || '-' || aog.alg_ruimte_nr plaats "
|
|
+ " FROM alg_v_onroerendgoed_gegevens aog"
|
|
+ " WHERE aog.alg_ruimte_key = " + ruimte_key;
|
|
var oRs = Oracle.Execute(sql);
|
|
var subject = oRs("plaats").value;
|
|
oRs.Close();
|
|
|
|
var isResRuimte = false;
|
|
var imagePath;
|
|
sql = "SELECT ra.res_ruimte_key"
|
|
+ " , rr.res_ruimte_image"
|
|
+ " FROM res_alg_ruimte ra"
|
|
+ " , res_ruimte rr"
|
|
+ " WHERE rr.res_ruimte_key = ra.res_ruimte_key"
|
|
+ " AND ra.res_alg_ruimte_verwijder IS NULL"
|
|
+ " AND ra.alg_ruimte_key = " + ruimte_key;
|
|
oRs = Oracle.Execute(sql);
|
|
if (!oRs.eof) {
|
|
isResRuimte = true;
|
|
var res_ruimte_image = oRs("res_ruimte_image").Value;
|
|
if (res_ruimte_image !== null) {
|
|
imagePath = S("res_image_path") + res_ruimte_image;
|
|
}
|
|
}
|
|
oRs.Close();
|
|
|
|
%>
|
|
<html>
|
|
<head>
|
|
<% FCLTMHeader.Generate({title: subject}); %>
|
|
</head>
|
|
<body>
|
|
<%
|
|
PAGE_START({ "headerImage": imagePath });
|
|
HEADER ({ title: L("lcl_room")+ " " + subject, back: !qrc, home: !qrc });
|
|
CONTENT_START();
|
|
var sql = "SELECT r.alg_ruimte_key"
|
|
+ " , r.alg_ruimte_nr"
|
|
+ " , r.alg_ruimte_omschrijving"
|
|
+ ", "+lcl.xsqla("alg_srtruimte_omschrijving", "r.alg_srtruimte_key")
|
|
+ " , r.alg_ruimte_bruto_vloeropp"
|
|
+ " , r.alg_ruimte_opp_alt1"
|
|
+ " , r.alg_ruimte_opp_alt2"
|
|
+ " , r.alg_ruimte_omtrek"
|
|
+ " , r.alg_ruimte_inhoud"
|
|
+ " , r.alg_ruimte_opmerking"
|
|
+ " , r.alg_ruimte_verwijder"
|
|
+ " , r.mld_dienstniveau_key"
|
|
+ " FROM alg_ruimte r, alg_srtruimte sr"
|
|
+ " WHERE sr.alg_srtruimte_key(+) = r.alg_srtruimte_key"
|
|
+ " AND r.alg_ruimte_key = " + ruimte_key;
|
|
|
|
oRs = Oracle.Execute(sql);
|
|
|
|
// BLOCK_START({collapsed: true, title: L("lcl_alg_ruimte_frame")});
|
|
// ROFIELD("fld", L("lcl_estate_ruimte_man_nr"), oRs("alg_ruimte_nr").value);
|
|
ROFIELD("fld", L("lcl_estate_ruimte_man_descr"), oRs("alg_ruimte_omschrijving").value);
|
|
|
|
if (!tiny)
|
|
{
|
|
|
|
ROFIELD("fld", L("lcl_estate_ruimte_man_sort"), oRs("alg_srtruimte_omschrijving").value, {suppressEmpty:true});
|
|
|
|
if (oRs("mld_dienstniveau_key").value)
|
|
{
|
|
sql = "SELECT mld_dienstniveau_key, "
|
|
+ lcl.xsqla("mld_dienstniveau_omschr", "mld_dienstniveau_key")
|
|
+ " FROM mld_dienstniveau "
|
|
+ " WHERE mld_dienstniveau_key = " + oRs("mld_dienstniveau_key").value;
|
|
toRs = Oracle.Execute(sql);
|
|
ROFIELD("fld", L("lcl_mld_dienst_niveau"), toRs("mld_dienstniveau_omschr").value);
|
|
toRs.Close();
|
|
}
|
|
|
|
ROFIELD("fld", L("lcl_estate_ruimte_bruto_vloeropp"), oRs("alg_ruimte_bruto_vloeropp").value, {suppressEmpty:true});
|
|
ROFIELD("fld", L("lcl_estate_ruimte_opp_alt1"), oRs("alg_ruimte_opp_alt1").value, {suppressEmpty:true});
|
|
ROFIELD("fld", L("lcl_estate_ruimte_opp_alt2"), oRs("alg_ruimte_opp_alt2").value, {suppressEmpty:true});
|
|
ROFIELD("fld", L("lcl_estate_ruimte_man_omtrek"), oRs("alg_ruimte_omtrek").value, {suppressEmpty:true});
|
|
ROFIELD("fld", L("lcl_estate_ruimte_man_inhoud"), oRs("alg_ruimte_inhoud").value, {suppressEmpty:true});
|
|
}
|
|
ROFIELD("fld", L("lcl_estate_ruimte_man_opmerk"), oRs("alg_ruimte_opmerking").value, {suppressEmpty:true});
|
|
// BLOCK_END();
|
|
oRs.Close();
|
|
|
|
if (!tiny)
|
|
{
|
|
// Plus flexkenmerken
|
|
var this_alg = alg.func_enabled(ruimte_key, "R");
|
|
generateFlexKenmerkBlock ({
|
|
onrgoed_key : ruimte_key,
|
|
onrgoed_niveau : "R",
|
|
reado : true,
|
|
this_alg : this_alg,
|
|
mobile: true
|
|
});
|
|
}
|
|
|
|
// Tel het aantal ruimte-meldingen (binnen mijn autorisatie) om tussen haakjes in de knop te tonen (prio 2)
|
|
// Tel het aantal ruimte-objecten (binnen mijn autorisatie) om tussen haakjes in de knop te tonen (prio 2)
|
|
|
|
CONTROLGROUP_START();
|
|
if (isResRuimte) {
|
|
BUTTON(L("lcl_mobile_reserveringen"), {linkid: "./reserveringen.asp?alg_ruimte_key="+ruimte_key + transitParam, icon: "fa-th" });
|
|
}
|
|
trackinglines = mobile.hastrackingpage('ruimte', ruimte_key);
|
|
if (trackinglines > 0 && !tiny) {
|
|
BUTTON(L("lcl_history"), {linkid: "#page-2-"+ruimte_key, icon: "fa-list"});
|
|
}
|
|
|
|
// Toon meldingenknop als er lopende meldingen zijn en ik die mag zien (kan vast nog scherper)
|
|
var canAddMLD = user.checkAutorisation(["WEB_MLDUSE", "WEB_MLDFOF"], true); // dat mag nog scherper
|
|
if (user.checkAutorisation( "WEB_MLDBOF", true)) {
|
|
// De prijs is wel dat ik mld.inc moet includen..
|
|
var perform=false; // ???? JGL: MLD.INC gebruikt deze illegaal globaal
|
|
var frontend=false;
|
|
var sqln_arr = mld.getfromwherelist_sql("WEB_MLDBOF", {});
|
|
var tsql = "SELECT COUNT(m.mld_melding_key), MAX(m.mld_melding_key)" + sqln_arr[0]
|
|
+ " AND m.mld_melding_status IN (0,2,4,7)"
|
|
+ " AND v.alg_ruimte_key = " + ruimte_key
|
|
+ " UNION "
|
|
+ "SELECT COUNT(m.mld_melding_key), MAX(m.mld_melding_key)" + sqln_arr[1]
|
|
+ " AND m.mld_melding_status IN (0,2,4,7)"
|
|
+ " AND v.alg_ruimte_key = " + ruimte_key;
|
|
toRs = Oracle.Execute(tsql);
|
|
if (toRs(0).value == 1) { // eentje slechts, dan naar de details; max is vanzelfsprekend die ene
|
|
BUTTON(L("lcl_mobile_meldingen") + " (1)", {linkid: "./melding.asp?mld_key="+toRs(1).value + transitParam, icon: "fa-exclamation-circle" });
|
|
} else if (toRs(0).value == 0 && !tiny && canAddMLD) { // geen, misschien wil ik toevoegen. In tiny mode altijd een toevoegen knop tonen
|
|
BUTTON(L("lcl_mobile_newmelding"), {linkid: "./melding.asp?mld_key=-1&ruimte_key="+ruimte_key + transitParam, icon: "fa-plus" });
|
|
} else if (toRs(0).value > 0) { // meerdere, dan naar lijst
|
|
BUTTON(L("lcl_mobile_meldingen")+" (" + toRs(0).value + ")", {linkid: "./mld_list.asp?ruimte_key=" + ruimte_key + transitParam, icon: "fa-exclamation-circle" });
|
|
}
|
|
toRs.Close();
|
|
}
|
|
if (tiny && canAddMLD)
|
|
BUTTON(L("lcl_mobile_newmelding"), {linkid: "./melding.asp?mld_key=-1&ruimte_key="+ruimte_key + transitParam, icon: "fa-plus" });
|
|
|
|
// Toon Objectenknop als er in deze ruimte objecten zijn.
|
|
// TODO: ook werkplekobjecten meetellen?
|
|
if (user.checkAutorisation( "WEB_INSUSE", true))
|
|
{
|
|
var tsql = "SELECT COUNT(ins_deel_key), MAX(ins_deel_key)"
|
|
+ " FROM ins_v_aanwezigdeel"
|
|
+ " WHERE (ins_deel_vervaldatum IS NULL OR ins_deel_vervaldatum > TRUNC(SYSDATE))"
|
|
+ " AND ins_alg_ruimte_type = 'R' AND ins_alg_ruimte_key = " + ruimte_key;
|
|
var tsql = " SELECT COUNT(ins_deel_key), MAX(ins_deel_key)"
|
|
+ " FROM alg_v_onroerendgoed_gegevens aog,"
|
|
+ " ins_deel id,"
|
|
+ " ins_srtdeel sd,"
|
|
+ " alg_locatie l,"
|
|
+ " alg_district di "
|
|
+ " WHERE id.ins_alg_ruimte_key = aog.alg_ruimte_key "
|
|
+ " AND aog.alg_locatie_key = l.alg_locatie_key "
|
|
+ " AND l.alg_district_key = di.alg_district_key "
|
|
+ " AND id.ins_alg_ruimte_type = 'R'"
|
|
+ " AND sd.ins_srtdeel_key = id.ins_srtdeel_key"
|
|
+ " AND id.ins_deel_verwijder IS NULL"
|
|
+ " AND (id.ins_deel_vervaldatum IS NULL OR id.ins_deel_vervaldatum > TRUNC(SYSDATE))"
|
|
+ " AND id.ins_deel_parent_key IS NULL"
|
|
+ " AND sd.ins_srtgroep_key NOT IN (" + S("sle_ins_srt_groep_key") + ", " + S("cil_ins_srt_groep_key") + ")"
|
|
+ " AND aog.alg_ruimte_key = " + ruimte_key;
|
|
|
|
tsql = discx3d (tsql,
|
|
"id.ins_discipline_key",
|
|
"di.alg_regio_key",
|
|
"l.alg_district_key",
|
|
"aog.alg_locatie_key",
|
|
"aog.alg_gebouw_key",
|
|
"aog.alg_verdieping_key",
|
|
"aog.alg_ruimte_key",
|
|
"", // b.prs_bedrijf_key:
|
|
"", // d.prs_afdeling_key:
|
|
"WEB_INSUSE",
|
|
[], // Geen discipline filter.
|
|
0);
|
|
|
|
toRs = Oracle.Execute(tsql);
|
|
if (toRs(0).value == 1) { // eentje slechts, dan naar de details; max is vanzelfsprekend die ene
|
|
BUTTON(L("lcl_mobile_objecten")+" (1)", {linkid: "./ins_deel.asp?ins_key="+toRs(1).value + transitParam, icon: "fa-info" });
|
|
} else if (toRs(0).value > 0) { // meerdere, dan naar lijst, en onderdruk persoons-afdelings-terrein objecten.
|
|
BUTTON(L("lcl_mobile_objecten")+" ("+toRs(0).value+")", {linkid: "./ins_list.asp?ruimte_key="+ruimte_key +"&plaatsfilter=0&p=0&a=0&t=0" + transitParam, icon: "fa-info"});
|
|
}
|
|
toRs.Close();
|
|
}
|
|
if (user.checkAutorisation( "WEB_PRSBOF", true) && !tiny)
|
|
{ // Werkplekbeheer zolang ik alleen kan doorklikken hoef ik die button niet te zien in tiny mode
|
|
var tsql = "SELECT COUNT(prs_werkplek_key)"
|
|
+ " FROM prs_werkplek WHERE prs_werkplek_virtueel=0 AND prs_alg_ruimte_key = " + ruimte_key;
|
|
toRs = Oracle.Execute(tsql);
|
|
if (toRs(0).value > 0) {
|
|
BUTTON(L("lcl_mobile_werkplekken")+" ("+ toRs(0).value +")", {linkid: "./wp_list.asp?ruimte_key="+ruimte_key + transitParam, icon: "fa-info"});
|
|
}
|
|
toRs.Close();
|
|
}
|
|
|
|
CONTROLGROUP_END();
|
|
CONTENT_END();
|
|
FOOTER();
|
|
PAGE_END();
|
|
|
|
if (trackinglines > 0) {
|
|
PAGE_START({id: "page-2-"+ruimte_key, dialog: true})
|
|
mobile.trackingpage('ruimte', ruimte_key, subject);
|
|
PAGE_END();
|
|
}
|
|
PDA_PAGE_END(); %>
|
|
</body>
|
|
</html>
|
|
<% ASPPAGE_END(); %>
|