Files
Facilitor/APPL/ALG/alg_edit_ruimte.asp
Erik Groener 267fd8826c FSN#26583 Openingstijden per ruimte aan te geven tbv SLA
svn path=/Website/trunk/; revision=18288
2013-06-28 07:42:25 +00:00

251 lines
9.4 KiB
Plaintext

<%@language = "javascript" %>
<%
/* $Revision$
$Id$
File: alg_edit_ruimte.asp
Description: wijzigen of toevoegen van een ruimte
Parameters: room_key
Context:
Note:
*/ %>
<!--#include file="../Shared/common.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<!-- #include file="alg.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery", "kenmerk"], js: []})
var room_key = getQParamInt("room_key", -1);
var loc_key = getQParamInt("loc_key", -1);
var geb_key = getQParamInt("geb_key", -1);
var ver_key = getQParamInt("ver_key", -1);
var cad_ruimte_nr = getQParam("cad_ruimte_nr", ""); // default nummer
var onrgoedlvl = "R";
var this_alg = alg.func_enabled(room_key, onrgoedlvl);
user.auth_required_or_abort(this_alg.writeman || (room_key>0&&this_alg.writeuse));
if (room_key > 0)
{
// Voorkom ellende met alg_ruimte_key ambigue gedefinieerd
sqlSync = "SELECT sync.alg_ruimte_key cad_ar_key, c.cad_imp_contour_opp, "
+ " c.cad_imp_contour_opp_alt1, c.cad_imp_contour_opp_alt2 "
+ " FROM "+S("fg_syncruimteview")+" sync, cad_imp_contour c, cad_tekening t, alg_ruimte ar "
+ " WHERE sync.cadlabel = c.cad_imp_contour_nr "
+ " AND t.cad_tekening_key = c.cad_tekening_key "
+ " AND t.alg_verdieping_key = sync.alg_verdieping_key "
+ " AND sync.alg_ruimte_key = ar.alg_ruimte_key";
sql = "SELECT "
+ " g.alg_ruimte_key"
+ ", g.alg_ruimte_nr"
+ ", g.alg_ruimte_omschrijving"
+ ", g.alg_verdieping_key"
+ ", g.alg_srtruimte_key"
+ ", g.alg_ruimte_bruto_vloeropp"
+ ", g.alg_ruimte_opp_alt1"
+ ", g.alg_ruimte_opp_alt2"
+ ", g.alg_ruimte_omtrek"
+ ", g.alg_ruimte_inhoud"
+ ", g.alg_ruimte_opmerking"
+ ", g.alg_ruimte_beginuur"
+ ", g.alg_ruimte_einduur"
+ ", g.alg_ruimte_werkdagen"
+ ", sync.cad_imp_contour_opp"
+ ", sync.cad_imp_contour_opp_alt1"
+ ", sync.cad_imp_contour_opp_alt2"
+ ", mld_dienstniveau_key"
+ " FROM alg_ruimte g, ("+sqlSync+") sync"
+ " WHERE sync.cad_ar_key (+)= g.alg_ruimte_key"
+ " AND alg_ruimte_key = " + room_key;
oRs = Oracle.Execute(sql);
var room_srt = oRs("ALG_SRTRUIMTE_KEY").value;
var room_nr = oRs("ALG_RUIMTE_NR").value;
var room_oms = oRs("ALG_RUIMTE_OMSCHRIJVING").value;
var room_opp = oRs("ALG_RUIMTE_BRUTO_VLOEROPP").value;
var room_omt = oRs("ALG_RUIMTE_OMTREK").value;
var room_inh = oRs("ALG_RUIMTE_INHOUD").value;
var room_opm = oRs("ALG_RUIMTE_OPMERKING").value;
var room_oppa1 = oRs("ALG_RUIMTE_OPP_ALT1").value;
var room_oppa2 = oRs("ALG_RUIMTE_OPP_ALT2").value;
var beginuur = oRs("alg_ruimte_beginuur").value;
var einduur = oRs("alg_ruimte_einduur").value;
var werkdagen = oRs("alg_ruimte_werkdagen").value;
var contour_opp = oRs("cad_imp_contour_opp").value;
var contour_opp1 = oRs("cad_imp_contour_opp_alt1").value;
var contour_opp2 = oRs("cad_imp_contour_opp_alt2").value;
var dienstniveau = oRs("mld_dienstniveau_key").value;
oRs.Close();
}
else
{
if (cad_ruimte_nr != "")
room_nr = "[" + cad_ruimte_nr + "]";
}
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script>
function alg_submit()
{
document.activeElement.blur(); // trigger laatste onChanges
if (!validateForm("u2"))
return false;
document.forms.u2.submit();
}
function alg_cancel()
{
FcltMgr.closeDetail(window, { cancel: true } );
}
</script>
</head>
<body id="editbody">
<%
var buttons = [ {title: L("lcl_submit"), action:"alg_submit()", icon: "opslaan.png" },
{title: L("lcl_cancel"), action:"alg_cancel()", icon: "undo.png" } ];
IFRAMER_HEADER(L("lcl_alg_ruimte_frame"), buttons);
%>
<div id="edit">
<form name="u2" action="alg_edit_ruimte_save.asp?room_key=<%=room_key%>"
method="post"
target="hidFrameSubmit"
onSubmit="alg_submit();">
<%
if (this_alg.writeman)
manRWFIELD = RWFIELDTR;
else
manRWFIELD = function (a,b,c,d,e) { ROFIELDTR(b,c,d,e) }; // als geen USE of <self> dan zijn er veel readonly
if (this_alg.writeuse && S("alg_ruimtenr_aut_use")==1) // dan mag USE er ook een paar
useRWFIELD = RWFIELDTR;
else
useRWFIELD = manRWFIELD
BLOCK_START("algLoc1", "");
FCLTplaatsselector(this_alg.authparams("WEB_ALGMAN").ALGwritelevel, {
locatiekey: loc_key,
gebouwkey: geb_key,
verdiepingkey: ver_key,
ruimtekey: room_key,
startlevel: 2, //Locatie
eindlevel: 4, //verdieping
moreinfo: true,
readonly: (room_key > 0),
required: true });
// alguse mag deze twee ook als S("alg_ruimtenr_aut_use")==1
useRWFIELD("room_nr", "fldshort", L("lcl_estate_ruimte_man_nr"), room_nr, {required: true, maxlength: 10});
useRWFIELD("room_oms", "fld", L("lcl_estate_ruimte_man_descr"), room_oms, {maxlength: 30});
sql = "SELECT alg_srtruimte_key, "
+ lcl.xsqla("alg_srtruimte_omschrijving", "alg_srtruimte_key")
+ " FROM alg_v_aanwezigsrtruimte "
+ "ORDER BY UPPER("+lcl.xsql("alg_srtruimte_omschrijving", "alg_srtruimte_key")+")";
FCLTselector("room_srt", sql,
{ label: L("lcl_estate_ruimte_man_sort"),
initKey: room_srt,
emptyOption: "",
readonly: !this_alg.writeman
});
sql = "SELECT mld_dienstniveau_key, "
+ lcl.xsqla("mld_dienstniveau_omschr", "mld_dienstniveau_key")
+ " FROM mld_dienstniveau "
+ "ORDER BY UPPER("+lcl.xsql("mld_dienstniveau_omschr", "mld_dienstniveau_key")+")";
FCLTselector("dienstniveau", sql,
{ label: L("lcl_mld_dienst_niveau"),
initKey: dienstniveau,
emptyOption: "",
readonly: !this_alg.writeuse
});
BLOCK_END();
BLOCK_START("algLoc2", "");
manRWFIELD("room_opp", "fldshort", L("lcl_estate_ruimte_bruto_vloeropp"), room_opp, {maxlength: 10, datatype: "float"});
ROFIELDTR("fldshort", L("lcl_estate_ruimte_getekendopp"), contour_opp);
if (S("fg_contourlayers_alt1")!="" && S("fg_labellayers_alt1")!="") {
manRWFIELD("room_oppa1", "fldshort", L("lcl_estate_ruimte_opp_alt1"), room_oppa1, {maxlength: 10, datatype: "float"});
ROFIELDTR("fldshort", L("lcl_fg_tek_room_opp_g_alt1"), contour_opp1);
}
if (S("fg_contourlayers_alt2")!="" && S("fg_labellayers_alt2")!="") {
manRWFIELD("room_oppa2", "fldshort", L("lcl_estate_ruimte_opp_alt2"), room_oppa2, {maxlength: 10, datatype: "float"});
ROFIELDTR("fldshort", L("lcl_fg_tek_room_opp_g_alt2"), contour_opp2);
}
manRWFIELD("room_omt", "fldshort", L("lcl_estate_ruimte_man_omtrek"), room_omt, {maxlength: 10, datatype: "float"});
manRWFIELD("room_inh", "fldshort", L("lcl_estate_ruimte_man_inhoud"), room_inh, {maxlength: 13, datatype: "float"});
manRWFIELD("room_opm", "fld", L("lcl_estate_ruimte_man_opmerk"), room_opm, {maxlength: 50});
var times = [];
for (i=0; i<24; i++)
{
sql = " SELECT " + String(i+0/4) + ", '" + String(i) + ":00' FROM DUAL"
+ " UNION ALL SELECT " + String(i+1/4) + ", '" + String(i) + ":15' FROM DUAL"
+ " UNION ALL SELECT " + String(i+2/4) + ", '" + String(i) + ":30' FROM DUAL"
+ " UNION ALL SELECT " + String(i+3/4) + ", '" + String(i) + ":45' FROM DUAL"
times.push(sql);
}
FCLTselector("room_beginuur", times.join(" UNION ALL "),
{ label: L("lcl_estate_gebouw_beginuur"),
initKey: beginuur,
emptyOption: "",
readonly: !this_alg.writeman
}
);
FCLTselector("room_einduur", times.join(" UNION ALL "),
{ label: L("lcl_estate_gebouw_einduur"),
initKey: einduur,
emptyOption: "",
readonly: !this_alg.writeman
}
);
sql = " SELECT null, " + safe.quoted_sql(L("lcl_alg_ruimte_volgens_gebouw")) + " FROM DUAL"
+ " UNION ALL SELECT 0, " + safe.quoted_sql(L("lcl_No")) + " FROM DUAL"
+ " UNION ALL SELECT 1, " + safe.quoted_sql(L("lcl_Yes")) + " FROM DUAL";
FCLTselector("room_werkdagen", sql,
{ label: L("lcl_estate_gebouw_werkdagen"),
initKey: werkdagen,
readonly: !this_alg.writeman
}
);
BLOCK_END();
generateFlexKenmerkBlock ({
onrgoed_key : room_key,
onrgoed_niveau : onrgoedlvl,
reado : false,
flexcolumns : S("alg_flexcolumns"),
this_alg : this_alg
});
IFACE.FORM_END();
%>
</form>
<iframe src="../Shared/empty.html" name="hidFrameSubmit" style="display:none"></iframe>
</div>
</body>
</html>