3 Commits

Author SHA1 Message Date
Daniëlle Tolner
1a378528a1 PZHO#30764: ondertekening resbon
svn path=/Website/branches/v5.3.3/; revision=23164
2014-10-29 14:13:36 +00:00
Daniëlle Tolner
31f1ecdb59 PZHO#30319: link reservering opnemen
svn path=/Website/branches/v5.3.3/; revision=22926
2014-10-15 08:26:48 +00:00
Daniëlle Tolner
fc67241ac2 UWVA#29115: Abo:mailadres aanpassen
svn path=/Website/branches/v5.3.3/; revision=21168
2014-03-31 08:49:23 +00:00
4022 changed files with 257673 additions and 257466 deletions

View File

@@ -48,76 +48,35 @@ alg = {
var uALGreadlevel = 9;
var uALGwritelevel = 9;
}
// From now use the highest authorisations (lowest values)
var ALGreadlevel = mALGreadlevel < uALGreadlevel? mALGreadlevel : uALGreadlevel ;
var ALGwritelevel = mALGwritelevel < uALGwritelevel? mALGwritelevel: uALGwritelevel;
var autfunction = "WEB_RUIMAN";
var authparams = user.checkAutorisation(autfunction, true);
if (authparams) {
var rmALGreadlevel = authparams.ALGreadlevel;
var rmALGwritelevel = authparams.ALGwritelevel;
}
else {
var rmALGreadlevel = 9;
var rmALGwritelevel = 9;
}
var autfunction = "WEB_TERMAN";
var authparams = user.checkAutorisation(autfunction, true);
if (authparams) {
var tmALGreadlevel = authparams.ALGreadlevel;
var tmALGwritelevel = authparams.ALGwritelevel;
}
else {
var tmALGreadlevel = 9;
var tmALGwritelevel = 9;
}
return ({ALGreadlevel: ALGreadlevel, ALGwritelevel: ALGwritelevel,
mALGreadlevel: mALGreadlevel, mALGwritelevel: mALGwritelevel,
uALGreadlevel: uALGreadlevel, uALGwritelevel: uALGwritelevel,
rmALGreadlevel: rmALGreadlevel, rmALGwritelevel: rmALGwritelevel,
tmALGreadlevel: tmALGreadlevel, tmALGwritelevel: tmALGwritelevel
uALGreadlevel: uALGreadlevel, uALGwritelevel: uALGwritelevel
});
},
func_enabled: function alg_func_enabled (alg_key, p_onrgoedlvl)
func_enabled: function alg_func_enabled (alg_key, onrgoedlvl)
{
var onrgoedlvl = (p_onrgoedlvl ? p_onrgoedlvl.toUpperCase() : "");
if (alg_key < 0 ||
onrgoedlvl == "G" || onrgoedlvl == "T" || onrgoedlvl == "V" || onrgoedlvl == "R")
{
var rresult = user.func_enabled("ALG",
null, // geen disciplines
alg_key,
null); // nooit prs-scope
null, // geen disciplines
alg_key,
null); // nooit prs-scope
var autfunctionMAN = "WEB_ALGMAN";
var autfunctionUSE = "WEB_ALGUSE";
// Met ALG* bepaal je wat je ziet (Read).
rresult.readman = rresult.canRead (autfunctionMAN);
rresult.readman = rresult.canRead (onrgoedlvl == "T"?"WEB_TERMAN":"WEB_ALGMAN");
rresult.writeman = rresult.canWrite(onrgoedlvl == "T"?"WEB_TERMAN":"WEB_ALGMAN");
if (onrgoedlvl != "T")
rresult.readuse = rresult.canRead (autfunctionUSE);
// Met RUI* en TER* bepaal je wat je kunt wijzigen (Write).
switch (onrgoedlvl)
{
case "T": autfunctionMAN = "WEB_TERMAN";
break;
case "R": autfunctionMAN = "WEB_RUIMAN";
autfunctionUSE = "WEB_RUIUSE";
break;
rresult.readuse = rresult.canRead ("WEB_ALGUSE");
rresult.writeuse = rresult.canWrite("WEB_ALGUSE");
}
rresult.writeman = rresult.canWrite(autfunctionMAN);
if (onrgoedlvl != "T")
rresult.writeuse = rresult.canWrite(autfunctionUSE);
}
else // iets meer werk
{
@@ -281,49 +240,45 @@ alg = {
alg_gebouwinfo: function _alg_gebouw(alg_gebouw_key)
{
var sql = "SELECT g.alg_gebouw_naam"
+ " , g.alg_gebouw_code"
+ " , g.alg_gebouw_omschrijving"
+ " , g.alg_srtgebouw_key"
+ " , g.prs_kostenplaats_key"
+ " , g.mld_adres_key"
+ " , g.alg_gebouw_opmerking"
+ " , g.alg_gebouw_ordernr"
+ " , g.alg_gebouw_bez"
+ " , g.alg_locatie_key"
+ " , k.prs_kostenplaats_module"
+ " , " + S("prs_kpn_string") + " kpstring"
+ " , " + S("prs_pers_string") + " budgethouder"
+ " , p.prs_perslid_key"
+ " , COALESCE(g.alg_gebouw_beginuur, -1) alg_gebouw_beginuur"
+ " , COALESCE(g.alg_gebouw_einduur, -1) alg_gebouw_einduur"
+ " FROM alg_gebouw g"
+ " , prs_kostenplaats k"
+ " , prs_perslid p"
+ " WHERE g.prs_kostenplaats_key = k.prs_kostenplaats_key(+)"
+ " AND k.prs_perslid_key = p.prs_perslid_key(+)"
+ " AND g.alg_gebouw_key = " + alg_gebouw_key;
+ ", g.alg_gebouw_code"
+ ", g.alg_gebouw_omschrijving"
+ ", g.alg_srtgebouw_key"
+ ", g.prs_kostenplaats_key"
+ ", g.mld_adres_key"
+ ", g.alg_gebouw_opmerking"
+ ", g.alg_gebouw_ordernr"
+ ", g.alg_gebouw_bez"
+ ", g.alg_locatie_key"
+ ", k.prs_kostenplaats_module"
+ ", " + S("prs_kpn_string") + " kpstring"
+ ", " + S("prs_pers_string") + " budgethouder"
+ ", p.prs_perslid_key"
+ " FROM alg_gebouw g"
+ ", prs_kostenplaats k"
+ ", prs_perslid p"
+ " WHERE g.prs_kostenplaats_key = k.prs_kostenplaats_key"
+ " AND k.prs_perslid_key = p.prs_perslid_key"
+ " AND g.alg_gebouw_key = " + alg_gebouw_key;
var oRs = Oracle.Execute(sql);
var result = {};
if (!oRs.eof)
{
result = { alg_gebouw_key: alg_gebouw_key,
alg_gebouw_naam: oRs("alg_gebouw_naam").Value,
alg_gebouw_code: oRs("alg_gebouw_code").Value,
alg_gebouw_omschrijving: oRs("alg_gebouw_omschrijving").Value,
alg_srtgebouw_key: oRs("alg_srtgebouw_key").Value,
alg_kostenplaats_key: oRs("prs_kostenplaats_key").Value,
mld_adres_key: oRs("mld_adres_key").Value,
alg_gebouw_opmerking: oRs("alg_gebouw_opmerking").Value,
alg_gebouw_ordernr: oRs("alg_gebouw_ordernr").Value,
alg_gebouw_bez: oRs("alg_gebouw_bez").Value == "1",
alg_locatie_key: oRs("alg_locatie_key").Value,
kostenplaats_omschrijving: oRs("kpstring").Value,
kostenplaats_module: oRs("prs_kostenplaats_module").Value,
kostenplaats_budgethouder_key: oRs("prs_perslid_key").Value,
kostenplaats_budgethouder: oRs("budgethouder").Value,
gebouw_beginuur: oRs("alg_gebouw_beginuur").Value,
gebouw_einduur: oRs("alg_gebouw_einduur").Value
alg_gebouw_naam: oRs("alg_gebouw_naam").value,
alg_gebouw_code: oRs("alg_gebouw_code").value,
alg_gebouw_omschrijving: oRs("alg_gebouw_omschrijving").value,
alg_srtgebouw_key: oRs("alg_srtgebouw_key").value,
alg_kostenplaats_key: oRs("prs_kostenplaats_key").value,
mld_adres_key: oRs("mld_adres_key").value,
alg_gebouw_opmerking: oRs("alg_gebouw_opmerking").value,
alg_gebouw_ordernr: oRs("alg_gebouw_ordernr").value,
alg_gebouw_bez: oRs("alg_gebouw_bez").value == "1",
alg_locatie_key: oRs("alg_locatie_key").value,
kostenplaats_omschrijving: oRs("kpstring").value,
kostenplaats_module: oRs("prs_kostenplaats_module").value,
kostenplaats_budgethouder_key: oRs("prs_perslid_key").value,
kostenplaats_budgethouder: oRs("budgethouder").value
};
}
oRs.Close();
@@ -356,17 +311,17 @@ alg = {
if (!oRs.eof)
{
result = { alg_terreinsector_key: alg_terreinsector_key,
alg_terreinsector_naam: oRs("alg_terreinsector_naam").Value,
alg_terreinsector_code: oRs("alg_terreinsector_code").Value,
alg_terreinsector_omschrijving: oRs("alg_terreinsector_omschrijving").Value,
alg_srtterreinsector_key: oRs("alg_srtterreinsector_key").Value,
alg_kostenplaats_key: oRs("prs_kostenplaats_key").Value,
alg_terreinsector_ordernr: oRs("alg_terreinsector_ordernr").Value,
alg_locatie_key: oRs("alg_locatie_key").Value,
kostenplaats_omschrijving: oRs("kpstring").Value,
kostenplaats_module: oRs("prs_kostenplaats_module").Value,
kostenplaats_budgethouder_key: oRs("prs_perslid_key").Value,
kostenplaats_budgethouder: oRs("budgethouder").Value
alg_terreinsector_naam: oRs("alg_terreinsector_naam").value,
alg_terreinsector_code: oRs("alg_terreinsector_code").value,
alg_terreinsector_omschrijving: oRs("alg_terreinsector_omschrijving").value,
alg_srtterreinsector_key: oRs("alg_srtterreinsector_key").value,
alg_kostenplaats_key: oRs("prs_kostenplaats_key").value,
alg_terreinsector_ordernr: oRs("alg_terreinsector_ordernr").value,
alg_locatie_key: oRs("alg_locatie_key").value,
kostenplaats_omschrijving: oRs("kpstring").value,
kostenplaats_module: oRs("prs_kostenplaats_module").value,
kostenplaats_budgethouder_key: oRs("prs_perslid_key").value,
kostenplaats_budgethouder: oRs("budgethouder").value
};
}
oRs.Close();
@@ -388,34 +343,6 @@ alg = {
aresult.canPRSBOFwrite = aresult.canWrite("WEB_PRSBOF"); // werkplekbeheer
return aresult;
},
calc_algm2: function _calc_algm2(alg_key, lvl)
{
var sql = "SELECT SUM (alg_ruimte_bruto_vloeropp) opp1, "
+ " SUM (alg_ruimte_opp_alt1) opp2, "
+ " SUM (alg_ruimte_opp_alt2) opp3 "
+ " FROM alg_ruimte r, alg_verdieping v "
+ " WHERE v.alg_verdieping_key = r.alg_verdieping_key "
+ " AND r.alg_ruimte_verwijder IS NULL";
if (lvl == "G")
{
sql += " AND alg_gebouw_key = " + alg_key;
}
if (lvl == "V")
{
sql += " AND r.alg_verdieping_key = " + alg_key;
}
var oRs = Oracle.Execute(sql);
var algm2 = { oppbruto: oRs("opp1").Value, oppalt1: oRs("opp2").Value, oppalt2: oRs("opp3").Value }
oRs.Close();
return algm2;
}
}
}
%>

View File

@@ -26,10 +26,10 @@ var dis_key_arr = getFParamIntArray("key");
var autfunction = {D : "WEB_ALGMAN",
RE: "WEB_ALGMAN",
L : "WEB_ALGMAN",
T : "WEB_TERMAN", // Met ALG* bepaal je wat je ziet (Read), met RUI* en TER* bepaal je wat je kunt wijzigen (Write).
T : "WEB_ALGMAN",
G : "WEB_ALGMAN",
V : "WEB_ALGMAN",
R : "WEB_RUIMAN", // Met ALG* bepaal je wat je ziet (Read), met RUI* en TER* bepaal je wat je kunt wijzigen (Write).
R : "WEB_ALGMAN",
W : "WEB_PRSBOF",
PW: "WEB_PRSBOF"}[level];

View File

@@ -28,9 +28,9 @@ if (dis_key > 0)
+ " FROM alg_district "
+ " WHERE alg_district_key = " + dis_key;
var oRs = Oracle.Execute(sql);
oRs = Oracle.Execute(sql);
var dis_name = oRs("alg_district_omschrijving").value;
oRs.Close()
}
else
{
@@ -42,7 +42,7 @@ else
<head>
<% FCLTHeader.Generate(); %>
<script type="text/javascript" >
FcltMgr.setTitle(L("lcl_district") + " " + "<%=safe.jsstring(dis_name)%>", {hot: false});
FcltMgr.setTitle("<%=L("lcl_district")%> <%=safe.jsstring(dis_name)%> ", {hot: false});
<% if (dis_key == -1) { %>FcltMgr.startEdit(window);<% } %>
function algClose(params)
{
@@ -67,7 +67,7 @@ else
</script>
</head>
<body>
<body id="editbody">
<% if (dis_key == -1)
var page="alg_edit_district.asp"; // Maak een nieuw
else

View File

@@ -9,6 +9,7 @@
Note:
*/ %>
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/resultset_table_v2.inc" -->
<!-- #include file="../Shared/getkenmerksql.inc" -->
@@ -84,22 +85,13 @@ function district_list(pautfunction, params)
var reg_key = params.reg_key;
var dis_key = params.dis_key;
function fnrowActionEnabler(oRs)
{
var eDelete = false;
if (alg.canWriteDistrict(oRs("alg_district_key").value, authparams.mALGwritelevel))
eDelete = true;
return ({eDelete: eDelete})
}
function fnrowFlexParams(oRs)
{
var dis_key = oRs("alg_district_key").Value;
var this_alg = alg.func_enabled(dis_key, "D");
var flexParams = { readman: this_alg.readman, readuse: this_alg.readuse};
return flexParams;
}
function fnrowActionEnabler(oRs)
{
var eDelete = false;
if (alg.canWriteDistrict(oRs("alg_district_key").value, authparams.mALGwritelevel))
eDelete = true;
return ({eDelete: eDelete})
}
%>
<html>
<head>
@@ -154,7 +146,6 @@ function district_list(pautfunction, params)
rowActionEnabler: fnrowActionEnabler,
flexModule: "ALG",
flexId: "alg_district_key",
flexParams: fnrowFlexParams,
filterParams: params,
outputmode: outputmode,
buttons: addButton

View File

@@ -83,7 +83,7 @@ if (this_alg.writeman)
else
manRWFIELD = function (a,b,c,d,e) { ROFIELDTR(b,c,d,e) }; // als geen USE of <self> dan zijn er veel readonly
BLOCK_START("algInfo", "&nbsp;");
BLOCK_START("algInfo", "");
FCLTplaatsselector(this_alg.authparams("WEB_ALGMAN").ALGwritelevel, {
districtkey: dis_key,
startlevel: 0, // Regio

View File

@@ -7,22 +7,17 @@
*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/save2db.inc" -->
<!-- #include file="../shared/save2db.inc" -->
<!-- #include file="../Shared/kenmerk_common.inc"-->
<!-- #include file="alg.inc" -->
<% FCLTHeader.Requires({ plugins:["jQuery", "kenmerk"],
js: []
}) %>
<%
var dis_key = getQParamInt( "dis_key" );
var dis_key = getQParamInt( "dis_key" );
var onrgoedlvl = "D";
var this_alg = alg.func_enabled(dis_key, onrgoedlvl);
user.auth_required_or_abort(this_alg.readman || this_alg.readuse);
var fields = [ { dbs: "alg_district_omschrijving", typ: "varchar", frm: "dis_oms" },
{ dbs: "alg_regio_key", typ: "number", frm: "regiokey" }];
var fields = [ { dbs: "alg_district_omschrijving", typ: "varchar", frm: "dis_oms" },
{ dbs: "alg_regio_key", typ: "number", frm: "regiokey" }];
var warning = "";
if (dis_key > 0)

View File

@@ -12,14 +12,12 @@
Note:
*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/calendar.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!--#include file="../Shared/common.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!--#include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<!-- #include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="../Shared/persoonselector.inc" -->
<!--#include file="../Shared/plaatsselector.inc" -->
<!--#include file="../Shared/kostenplaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<!-- #include file="alg.inc" -->
@@ -34,207 +32,194 @@ user.auth_required_or_abort(this_alg.writeman || (bld_key>0&&this_alg.writeuse))
if (bld_key > 0)
{
var sql = " SELECT *"
+ " FROM alg_gebouw"
+ " WHERE alg_gebouw_key = " + bld_key;
sql = " select * "
+ " FROM ALG_GEBOUW "
+ " WHERE alg_gebouw_key = " + bld_key;
oRs = Oracle.Execute(sql);
if (oRs.Eof)
shared.record_not_found("<!--"+bld_key+"-->");
oRs = Oracle.Execute(sql);
if (oRs.Eof)
shared.record_not_found("<!--"+bld_key+"-->");
var bld_srtkey = oRs("alg_srtgebouw_key").Value;
var bld_naam = oRs("alg_gebouw_naam").Value;
var bld_code = oRs("alg_gebouw_code").Value;
var bld_descr = oRs("alg_gebouw_omschrijving").Value;
var bld_maak = oRs("alg_gebouw_aanmaak").Value;
var bld_email = oRs("alg_gebouw_email").Value;
var bld_teken = oRs("alg_gebouw_getekend").Value;
var bld_opp = oRs("alg_gebouw_bruto_vloeropp").Value;
var bld_omtrek = oRs("alg_gebouw_omtrek").Value;
var bld_inhoud = oRs("alg_gebouw_inhoud").Value;
var bld_opmerk = oRs("alg_gebouw_opmerking").Value;
var mld_adres = oRs("mld_adres_key").Value;
var prs_kstpl = oRs("prs_kostenplaats_key").Value;
var bld_ordrnr = oRs("alg_gebouw_ordernr").Value;
var bld_dwgx = oRs("alg_gebouw_dwgx").Value;
var bld_dwgy = oRs("alg_gebouw_dwgy").Value;
var bld_x = oRs("alg_gebouw_x").Value;
var bld_y = oRs("alg_gebouw_y").Value;
var bld_bez = oRs("alg_gebouw_bez").Value;
var dienstniveau = oRs("mld_dienstniveau_key").Value;
var beginuur = oRs("alg_gebouw_beginuur").Value;
var einduur = oRs("alg_gebouw_einduur").Value;
var werkdagen = oRs("alg_gebouw_werkdagen").Value;
var verantw_key = oRs("prs_perslid_key_verantw").Value;
var vervaldatum = oRs("alg_gebouw_vervaldatum").Value != null ? new Date(oRs("alg_gebouw_vervaldatum").Value) : null;
oRs.Close();
var bld_srtkey = oRs("ALG_SRTGEBOUW_KEY").value;
var bld_naam = oRs("ALG_GEBOUW_NAAM").value;
var bld_code = oRs("ALG_GEBOUW_CODE").value;
var bld_descr = oRs("ALG_GEBOUW_OMSCHRIJVING").value;
var bld_maak = oRs("ALG_GEBOUW_AANMAAK").value;
var bld_teken = oRs("ALG_GEBOUW_GETEKEND").value;
var bld_opp = oRs("ALG_GEBOUW_BRUTO_VLOEROPP").value;
var bld_omtrek = oRs("ALG_GEBOUW_OMTREK").value;
var bld_inhoud = oRs("ALG_GEBOUW_INHOUD").value;
var bld_opmerk = oRs("ALG_GEBOUW_OPMERKING").value;
var mld_adres = oRs("MLD_ADRES_KEY").value;
var prs_kstpl = oRs("PRS_KOSTENPLAATS_KEY").value;
var bld_ordrnr = oRs("ALG_GEBOUW_ORDERNR").value;
var bld_dwgx = oRs("ALG_GEBOUW_DWGX").value;
var bld_dwgy = oRs("ALG_GEBOUW_DWGY").value;
var bld_x = oRs("ALG_GEBOUW_X").value;
var bld_y = oRs("ALG_GEBOUW_Y").value;
var bld_bez = oRs("ALG_GEBOUW_BEZ").value;
var dienstniveau = oRs("mld_dienstniveau_key").value;
var beginuur = oRs("alg_gebouw_beginuur").value;
var einduur = oRs("alg_gebouw_einduur").value;
var werkdagen = oRs("alg_gebouw_werkdagen").value;
oRs.Close();
}
else
var werkdagen = 1;
werkdagen = 1;
%>
<html>
<head>
<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>
<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">
<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_gebouw_frame"), buttons);
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_gebouw_frame"), buttons);
%>
<div id="edit">
<form name="u2"
action="alg_edit_gebouw_save.asp?bld_key=<%=bld_key%>"
method="post"
target="hidFrameSubmit"
onSubmit="alg_submit();">
<div id="edit">
<form name="u2"
action="alg_edit_gebouw_save.asp?bld_key=<%=bld_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.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
BLOCK_START("algLoc1", "&nbsp;");
FCLTplaatsselector(this_alg.authparams("WEB_ALGMAN").ALGwritelevel,
{ gebouwkey: bld_key,
startlevel: 2, //Locatie
eindlevel: 2, // Locatie
readonly: bld_key > 0,
required: true
});
manRWFIELD("bld_naam", "fld", L("lcl_estate_gebouw_man_name"), bld_naam, {required: true, maxlength: 30});
sql = "SELECT alg_srtgebouw_key, "
+ " "+lcl.xsqla('alg_srtgebouw_omschrijving', 'alg_srtgebouw_key')
+ " FROM alg_srtgebouw "
+ " WHERE alg_srtgebouw_verwijder IS NULL "
+ "ORDER BY UPPER("+lcl.xsql('alg_srtgebouw_omschrijving', 'alg_srtgebouw_key')+")";
FCLTselector("bld_srtkey",
sql,
{ label: L("lcl_estate_gebouw_srtgebouw"),
BLOCK_START("algLoc1", "");
FCLTplaatsselector(this_alg.authparams("WEB_ALGMAN").ALGwritelevel, {
gebouwkey: bld_key,
startlevel: 2, //Locatie
eindlevel: 2, // Locatie
readonly: bld_key > 0,
required: true });
manRWFIELD("bld_naam", "fld", L("lcl_estate_gebouw_man_name"), bld_naam, {required: true, maxlength: 30});
sql = "SELECT alg_srtgebouw_key, "
+ " "+lcl.xsqla('alg_srtgebouw_omschrijving', 'alg_srtgebouw_key')
+ " FROM alg_srtgebouw "
+ " WHERE alg_srtgebouw_verwijder IS NULL "
+ "ORDER BY UPPER("+lcl.xsql('alg_srtgebouw_omschrijving', 'alg_srtgebouw_key')+")";
FCLTselector("bld_srtkey", sql,
{ label: L("lcl_estate_gebouw_srtgebouw"),
initKey: bld_srtkey,
emptyOption: "",
readonly: !this_alg.writeman
});
manRWFIELD("bld_code", "fld", L("lcl_estate_gebouw_man_code"), bld_code, {required: true, maxlength: 12});
manRWFIELD("bld_opmerk", "fld", L("lcl_estate_gebouw_man_opmerk"), bld_opmerk, {maxlength: 50});
FCLTkostenplaatsselector( "prs_kstpl",
"prs_kstpl",
user_key,
{ kostenplaatsKey: prs_kstpl,
label: L("lcl_prs_dept_kosten"),
filtercode: "G",
readonly: !this_alg.writeman
});
manRWFIELD("bld_ordrnr", "fld", L("lcl_estate_gebouw_ordernr"), bld_ordrnr, {maxlength: 30});
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
});
FCLTpersoonselector("verantw",
"sgVerantw",
{ perslidKey: verantw_key,
label: L("lcl_alg_verantw"),
readonly: !this_alg.writeuse,
autlevel: this_alg.authparams("WEB_ALGMAN") && this_alg.authparams("WEB_ALGMAN").PRSwritelevel
}
);
manRWFIELD("bld_code", "fld", L("lcl_estate_gebouw_man_code"), bld_code, {required: true, maxlength: 12});
manRWFIELD("bld_opmerk", "fld", L("lcl_estate_gebouw_man_opmerk"), bld_opmerk, {maxlength: 50});
FCLTkostenplaatsselector( "prs_kstpl",
"prs_kstpl",
user_key,
{ kostenplaatsKey: prs_kstpl,
label: L("lcl_prs_dept_kosten"),
filtercode: "G",
readonly: !this_alg.writeman
});
manRWFIELD("bld_email", "fld", L("lcl_alg_gebouw_email"), bld_email, {maxlength: 200});
BLOCK_END();
BLOCK_START("algLoc2", "&nbsp;");
if (bld_key > 0)
{
var calcopp = alg.calc_algm2(bld_key, onrgoedlvl);
ROFIELDTR("fld", L("lcl_estate_ruimte_bruto_vloeropp") + L("lcl_estate_calc_vloeropp"), calcopp.oppbruto, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_ruimte_opp_alt1") + L("lcl_estate_calc_vloeropp"), calcopp.oppalt1, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_ruimte_opp_alt2") + L("lcl_estate_calc_vloeropp"), calcopp.oppalt2, {suppressEmpty: true});
}
manRWFIELD("bld_opp", "fld float", L("lcl_estate_gebouw_man_bruto_vloeropp"), bld_opp, {datatype:"float", maxlength: 15});
manRWFIELD("bld_omtrek", "fld", L("lcl_estate_gebouw_man_omtrek"), bld_omtrek, {maxlength: 15});
manRWFIELD("bld_inhoud", "fld", L("lcl_estate_gebouw_man_inhoud"), bld_inhoud, {maxlength: 15});
sql = "SELECT mld_adres_key"
+ " , mld_adres_naam "
+ " FROM mld_v_afleveradres"
+ " ORDER BY mld_adres_naam ";
FCLTselector("mld_adres",
sql,
{ label: L("lcl_delivery_address"),
initKey: mld_adres,
emptyOption: "",
readonly: !this_alg.writeman
});
manRWFIELD("bld_x", "fld", L("lcl_geoxcoord"), bld_x, {maxlength: 25});
manRWFIELD("bld_y", "fld", L("lcl_geoycoord"), bld_y, {maxlength: 25});
manRWFIELD("bld_ordrnr", "fld", L("lcl_estate_gebouw_ordernr"), bld_ordrnr, {maxlength: 30});
FCLTcalendar("vervaldatum",
{ datum: vervaldatum,
initEmpty: vervaldatum==null,
label: L("lcl_alg_vervaldatum"),
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")+")";
if (this_alg.writeman)
CHECKBOXTR(L("lcl_estate_gebouw_bez"), "fldalgbez", "bld_bez", bld_bez==1)
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("bld_beginuur", times.join(" UNION ALL "),
{ label: L("lcl_estate_gebouw_beginuur"),
initKey: beginuur,
emptyOption: "",
readonly: !this_alg.writeman
}
);
FCLTselector("bld_einduur", times.join(" UNION ALL "),
{ label: L("lcl_estate_gebouw_einduur"),
initKey: einduur,
emptyOption: "",
readonly: !this_alg.writeman
}
);
if (this_alg.writeman)
CHECKBOXTR(L("lcl_estate_gebouw_werkdagen"), "fldalgwerk", "bld_werkdagen", werkdagen==1)
BLOCK_END();
FCLTselector("dienstniveau", sql,
{ label: L("lcl_mld_dienst_niveau"),
initKey: dienstniveau,
emptyOption: "",
readonly: !this_alg.writeuse
});
generateFlexKenmerkBlock ({ onrgoed_key : bld_key,
onrgoed_niveau : onrgoedlvl,
reado : false,
flexcolumns : S("alg_flexcolumns"),
this_alg : this_alg
});
IFACE.FORM_END();
BLOCK_END();
BLOCK_START("algLoc2", "");
manRWFIELD("bld_opp", "fld", L("lcl_estate_gebouw_man_bruto_vloeropp"), bld_opp, {maxlength: 15});
manRWFIELD("bld_omtrek", "fld", L("lcl_estate_gebouw_man_omtrek"), bld_omtrek, {maxlength: 15});
manRWFIELD("bld_inhoud", "fld", L("lcl_estate_gebouw_man_inhoud"), bld_inhoud, {maxlength: 15});
sql ="SELECT mld_adres_key, "
+ " mld_adres_naam "
+ " FROM mld_v_afleveradres "
+ "ORDER BY mld_adres_naam ";
FCLTselector("mld_adres", sql,
{ label: L("lcl_delivery_address"),
initKey: mld_adres,
emptyOption: "",
readonly: !this_alg.writeman
});
manRWFIELD("bld_x", "fld", L("lcl_geoxcoord"), bld_x, {maxlength: 25});
manRWFIELD("bld_y", "fld", L("lcl_geoycoord"), bld_y, {maxlength: 25});
if (this_alg.writeman)
CHECKBOXTR(L("lcl_estate_gebouw_bez"), "fldalgbez", "bld_bez", bld_bez==1)
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("bld_beginuur", times.join(" UNION ALL "),
{ label: L("lcl_estate_gebouw_beginuur"),
initKey: beginuur,
emptyOption: "",
readonly: !this_alg.writeman
}
);
FCLTselector("bld_einduur", times.join(" UNION ALL "),
{ label: L("lcl_estate_gebouw_einduur"),
initKey: einduur,
emptyOption: "",
readonly: !this_alg.writeman
}
);
if (this_alg.writeman)
CHECKBOXTR(L("lcl_estate_gebouw_werkdagen"), "fldalgwerk", "bld_werkdagen", werkdagen==1)
BLOCK_END();
generateFlexKenmerkBlock ({
onrgoed_key : bld_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>
</form>
<iframe src="../Shared/empty.html" name="hidFrameSubmit" style="display:none"></iframe>
</div>
</body>
</html>

View File

@@ -7,9 +7,8 @@
*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/save2db.inc" -->
<!-- #include file="../shared/save2db.inc" -->
<!-- #include file="../Shared/kenmerk_common.inc"-->
<!-- #include file="alg.inc" -->
<% FCLTHeader.Requires({ plugins:["jQuery"],
js: []
@@ -25,33 +24,26 @@
if (einduur == -1)
einduur = "";
var onrgoedlvl = "G";
var this_alg = alg.func_enabled(bld_key, onrgoedlvl);
user.auth_required_or_abort(this_alg.writeman || (bld_key>0&&this_alg.writeuse));
var fields = [ { dbs: "alg_locatie_key", typ: "key", frm: "locatiekey" },
{ dbs: "alg_srtgebouw_key", typ: "key", frm: "bld_srtkey" },
{ dbs: "alg_gebouw_naam", typ: "varchar", frm: "bld_naam" },
{ dbs: "alg_gebouw_code", typ: "varchar", frm: "bld_code" },
{ dbs: "alg_gebouw_omschrijving", typ: "varchar", frm: "bld_descr" },
{ dbs: "alg_gebouw_email", typ: "varchar", frm: "bld_email" },
{ dbs: "alg_gebouw_getekend", typ: "date", frm: "bld_teken" },
{ dbs: "alg_gebouw_bruto_vloeropp", typ: "float", frm: "bld_opp" },
{ dbs: "alg_gebouw_omtrek", typ: "number", frm: "bld_omtrek" },
{ dbs: "alg_gebouw_inhoud", typ: "number", frm: "bld_inhoud" },
{ dbs: "alg_gebouw_opmerking", typ: "varchar", frm: "bld_opmerk" },
{ dbs: "mld_adres_key", typ: "key", frm: "mld_adres" },
{ dbs: "prs_kostenplaats_key", typ: "key", frm: "prs_kstpl" },
{ dbs: "mld_dienstniveau_key", typ: "key", frm: "dienstniveau" },
{ dbs: "alg_gebouw_ordernr", typ: "varchar", frm: "bld_ordrnr" },
{ dbs: "alg_gebouw_dwgx", typ: "float", frm: "bld_dwgx" },
{ dbs: "alg_gebouw_dwgy", typ: "float", frm: "bld_dwgy" },
{ dbs: "alg_gebouw_x", typ: "float", frm: "bld_x" },
{ dbs: "alg_gebouw_y", typ: "float", frm: "bld_y" },
{ dbs: "alg_gebouw_bez", typ: "check", frm: "bld_bez" },
{ dbs: "alg_gebouw_werkdagen", typ: "check0", frm: "bld_werkdagen" },
{ dbs: "alg_gebouw_vervaldatum", typ: "date", frm: "vervaldatum", track: L("lcl_alg_vervaldatum") },
{ dbs: "prs_perslid_key_verantw", typ: "key", frm: "verantw" }];
{ dbs: "ALG_SRTGEBOUW_KEY", typ: "key", frm: "bld_srtkey" },
{ dbs: "ALG_GEBOUW_NAAM", typ: "varchar", frm: "bld_naam" },
{ dbs: "ALG_GEBOUW_CODE", typ: "varchar", frm: "bld_code" },
{ dbs: "ALG_GEBOUW_OMSCHRIJVING", typ: "varchar", frm: "bld_descr" },
{ dbs: "ALG_GEBOUW_GETEKEND", typ: "date", frm: "bld_teken" },
{ dbs: "ALG_GEBOUW_BRUTO_VLOEROPP", typ: "number", frm: "bld_opp" },
{ dbs: "ALG_GEBOUW_OMTREK", typ: "number", frm: "bld_omtrek" },
{ dbs: "ALG_GEBOUW_INHOUD", typ: "number", frm: "bld_inhoud" },
{ dbs: "ALG_GEBOUW_OPMERKING", typ: "varchar", frm: "bld_opmerk" },
{ dbs: "MLD_ADRES_KEY", typ: "key", frm: "mld_adres" },
{ dbs: "PRS_KOSTENPLAATS_KEY", typ: "key", frm: "prs_kstpl" },
{ dbs: "MLD_DIENSTNIVEAU_KEY", typ: "key", frm: "dienstniveau" },
{ dbs: "ALG_GEBOUW_ORDERNR", typ: "varchar", frm: "bld_ordrnr" },
{ dbs: "ALG_GEBOUW_DWGX", typ: "number", frm: "bld_dwgx" },
{ dbs: "ALG_GEBOUW_DWGY", typ: "number", frm: "bld_dwgy" },
{ dbs: "ALG_GEBOUW_X", typ: "number", frm: "bld_x" },
{ dbs: "ALG_GEBOUW_Y", typ: "number", frm: "bld_y" },
{ dbs: "ALG_GEBOUW_BEZ", typ: "check", frm: "bld_bez" },
{ dbs: "ALG_GEBOUW_WERKDAGEN", typ: "check0", frm: "bld_werkdagen" }];
if (beginuur != -2)
fields.push({ dbs: "alg_gebouw_beginuur", typ: "float", val: beginuur });

View File

@@ -97,7 +97,7 @@ if (this_alg.writeman)
else
manRWFIELD = function (a,b,c,d,e) { ROFIELDTR(b,c,d,e) }; // als geen USE of <self> dan zijn er veel readonly
BLOCK_START("algLoc1", "&nbsp;");
BLOCK_START("algLoc1", "");
FCLTplaatsselector(this_alg.authparams("WEB_ALGMAN").ALGwritelevel, {
districtkey: dis_key,
locatiekey: loc_key,
@@ -108,7 +108,7 @@ BLOCK_START("algLoc1", "&nbsp;");
manRWFIELD("loc_omsch", "fld", L("lcl_estate_locatie_man_descr"), loc_omsch, {required: true, maxlength: 60});
manRWFIELD("loc_code", "fld", L("lcl_estate_locatie_man_code"), loc_code, {required: true, maxlength: 10});
manRWFIELD("bez_adres", "fld", L("lcl_prs_address_bezoek_adres"), bez_adres, {maxlength: 50});
manRWFIELD("bez_adres", "fld", L("lcl_prs_address_bezoek_adres"), bez_adres, {maxlength: 35});
manRWFIELD("bez_postc", "fld", L("lcl_prs_address_bezoek_postcode"), bez_postc, {maxlength: 12});
manRWFIELD("bez_plaats", "fld", L("lcl_prs_address_bezoek_plaats"), bez_plaats, {maxlength: 30});
manRWFIELD("bez_land", "fld", L("lcl_prs_address_bezoek_land"), bez_land, {maxlength: 30});
@@ -129,9 +129,9 @@ manRWFIELD("loc_x", "fld", L("lcl_geoxcoord"), loc_x, {maxlengt
manRWFIELD("loc_y", "fld", L("lcl_geoycoord"), loc_y, {maxlength: 25});
BLOCK_END();
BLOCK_START("algLoc2", "&nbsp;");
BLOCK_START("algLoc2", "");
manRWFIELD("pst_adres", "fld", L("lcl_prs_address_post_adres"), pst_adres, {maxlength: 50});
manRWFIELD("pst_adres", "fld", L("lcl_prs_address_post_adres"), pst_adres, {maxlength: 35});
manRWFIELD("pst_postc", "fld", L("lcl_prs_address_post_postcode"), pst_postc, {maxlength: 12});
manRWFIELD("pst_plaats", "fld", L("lcl_prs_address_post_plaats"), pst_plaats, {maxlength: 30});
manRWFIELD("pst_land", "fld", L("lcl_prs_address_post_land"), pst_land, {maxlength: 30});

View File

@@ -7,9 +7,8 @@
*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/save2db.inc" -->
<!-- #include file="../shared/save2db.inc" -->
<!-- #include file="../Shared/kenmerk_common.inc"-->
<!-- #include file="alg.inc" -->
<% FCLTHeader.Requires({ plugins:["jQuery"],
js: []
@@ -17,10 +16,6 @@
<%
var loc_key = getQParamInt( "loc_key" );
var onrgoedlvl = "L";
var this_alg = alg.func_enabled(loc_key, onrgoedlvl);
user.auth_required_or_abort(this_alg.writeman || (loc_key>0&&this_alg.writeuse));
var fields = [ { dbs: "alg_district_key", typ: "number", frm: "districtkey" },
{ dbs: "alg_locatie_code", typ: "varchar", frm: "loc_code" },
{ dbs: "alg_locatie_omschrijving", typ: "varchar", frm: "loc_omsch" },

View File

@@ -12,78 +12,80 @@
Note:
*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!--#include file="../Shared/common.inc" -->
<!--#include file="../Shared/iface.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<!-- #include file="../API2/api2.inc" -->
<!-- #include file="../API2/model_regions.inc" -->
<!-- #include file="alg.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery"], js: []})
var regio_key = getQParamInt("regio_key");
var regio_key = getQParamInt("regio_key", -1);
var params = { filter: { id: regio_key,
isNew: (regio_key == -1 ? true : false)
}
};
var regio_array = model_regions.REST_GET(params); // Roep de API2 GET aan
var regio_data = (regio_array[0] ? regio_array[0] : {id: -1}); // GET kan meerdere records opleveren, maar we verwachten hier maar 1.
var this_alg = params.func_enabled; // params bevat nu ook waarden die in API2 zijn bepaald.
var action = (regio_key == -1 ? "I" : "U");
var onrgoedlvl = "RG";
var this_alg = alg.func_enabled(regio_key, onrgoedlvl);
user.auth_required_or_abort(this_alg.writeman || (regio_key>0&&this_alg.writeuse));
if (regio_key > 0)
{
sql = " select * "
+ " FROM alg_regio "
+ " WHERE alg_regio_key = " + regio_key;
oRs = Oracle.Execute(sql);
var reg_oms = oRs("alg_regio_omschrijving").value;
oRs.Close();
}
%>
<html>
<head>
<head>
<%
FCLTHeader.Generate();
FCLTHeader.Generate();
%>
<script>
function alg_submit()
{
if (!validateForm("u2"))
return false;
<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>
var data = $("[name=u2]").serialize();
<% protectRequest.dataToken("data"); %>
$.post($("form[name=u2]")[0].action,
data,
FcltCallbackClose,
"json");
return true;
}
function alg_cancel()
{
FcltMgr.closeDetail(window, { cancel: true } );
}
</script>
</head>
<body id="editbody">
<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_regio_frame"), buttons);
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_regio_frame"), buttons);
%>
<div id="edit">
<form name="u2"
action="alg_edit_regio_save.asp?regio_key=<%=regio_data.id%>&action=<%=action%>"
method="post"
onSubmit="return false">
<div id="edit">
<form name="u2"
action="alg_edit_regio_save.asp?regio_key=<%=regio_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 dan zijn er veel readonly
if (this_alg.writeman)
manRWFIELD = RWFIELDTR;
else
manRWFIELD = function (a,b,c,d,e) { ROFIELDTR(b,c,d,e) }; // als geen USE dan zijn er veel readonly
BLOCK_START("algInfo", "");
BLOCK_START("algInfo", "&nbsp;");
manRWFIELD("reg_oms", "fld", L("lcl_region"), reg_oms, {required: true, maxlength: 30});
manRWFIELD("reg_oms", "fld", L("lcl_region"), regio_data.name, {required: true, maxlength: 30});
BLOCK_END();
IFACE.FORM_END();
BLOCK_END();
IFACE.FORM_END();
%>
</form>
</div>
</body>
</form>
<iframe src="../Shared/empty.html" name="hidFrameSubmit" style="display:none"></iframe>
</div>
</body>
</html>

View File

@@ -5,46 +5,53 @@
SUBMIT-form
*/ %>
<%
var JSON_Result = true;
%>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../API2/api2.inc" -->
<!-- #include file="../API2/model_regions.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../shared/save2db.inc" -->
<% FCLTHeader.Requires({ plugins:["jQuery"],
js: []
}) %>
<%
protectRequest.validateToken();
var regio_key = getQParamInt( "regio_key" );
var action = getQParam( "action", "" );
var reg_key = getQParamInt( "regio_key" );
var formfields = [ {name: "name", frm: "reg_oms" }];
var params = { filter: { "id": regio_key }};
var jsondata = api2.form2JSONdata(model_regions, params, formfields);
var fields = [ { dbs: "alg_regio_omschrijving", typ: "varchar", frm: "reg_oms" }];
switch (action)
{
case "I":
var regio_array = model_regions.REST_POST(params, jsondata);
regio_key = regio_array.key;
break;
case "U":
if (regio_key > 0)
var regio_array = model_regions.REST_PUT(params, jsondata, params.filter.id);
break;
case "D":
if (regio_key > 0)
var regio_array = model_regions.REST_DELETE(params, params.filter.id);
break;
default :
var regio_array = {warning: L("lcl_cnt_Del_Fails_Auth")};
}
var warning = regio_array.warning;
var warning = "";
if (reg_key > 0)
{
sql = buildUpdate("alg_regio", fields)
+ " alg_regio_key = " + reg_key;
var err = Oracle.Execute(sql, true);
if (err.friendlyMsg)
warning = err.friendlyMsg;
}
else
{
fields.push({ dbs: "alg_regio_key", typ: "key", seq: "alg_s_alg_regio_key" });
var regIns = buildInsert("alg_regio", fields);
var reg_key = regIns.sequences["alg_regio_key"];
var result = { regio_key: regio_key,
warning: warning,
keepForm: !!warning,
success: true };
Response.Write(JSON.stringify(result));
%>
sql = regIns.sql;
var err = Oracle.Execute(sql, true);
if (err.friendlyMsg)
warning = err.friendlyMsg;
}
%>
<html>
<head>
<% FCLTHeader.Generate() %>
<script>
$(document).ready(function () {
FcltMgr.closeDetail(window, { regio_key: <%=reg_key%>,
warning: "<%=safe.jsstring(warning)%>",
keepForm: <%=warning?"true":"false"%>
});
} );
</script>
</head>
<body>
</body>
</html>

View File

@@ -11,18 +11,16 @@
Note:
*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!--#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="../API2/api2.inc" -->
<!-- #include file="../API2/model_rooms.inc" -->
<!-- #include file="alg.inc" -->
<%
FCLTHeader.Requires({plugins:["suggest","jQuery", "kenmerk"],
js: []})
FCLTHeader.Requires({plugins:["suggest","jQuery", "kenmerk"], js: []})
var room_key = getQParamInt("room_key", -1);
var loc_key = getQParamInt("loc_key", -1);
@@ -30,203 +28,223 @@ 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));
var room_params = { filter: { id: room_key,
scope: "fe",
isNew: (room_key == -1 ? true : false)
},
include: ["cadcontours"]
};
var room_exists = false;
if (room_key > 0)
if (room_key > 0)
{
var rooms = new model_rooms(room_key, room_params); // Roep de API2 GET aan
var room_data = rooms.data;
room_exists = true;
// 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
{
var rooms = new model_rooms(-1, room_params); // Roep de API2 GET aan
var room_data = { id: -1, cadcontours: [] };
}
var this_alg = room_params.func_enabled; // room_params bevat nu ook waarden die in API2 zijn bepaald.
var room_deleted = room_exists && !!room_data.deleted;
var room_action = (room_exists ? "U" : "I");
if (!room_data.cadcontours.length)
room_data.cadcontours = [{}];
if (!room_exists)
{
if (cad_ruimte_nr != "")
room_data.name = "[" + cad_ruimte_nr + "]";
room_nr = "[" + cad_ruimte_nr + "]";
}
%>
<html>
<head>
<head>
<%
FCLTHeader.Generate();
FCLTHeader.Generate();
%>
<script>
function alg_submit()
{
document.activeElement.blur(); // trigger laatste onChanges
if (!validateForm("u2"))
return false;
<script>
function alg_submit()
{
document.activeElement.blur(); // trigger laatste onChanges
var data = $("[name=u2]").serialize();
<% protectRequest.dataToken("data"); %>
$.post($("form[name=u2]")[0].action,
data,
FcltCallbackClose,
"json");
return true;
}
function alg_cancel()
{
FcltMgr.closeDetail(window, { cancel: true } );
}
</script>
</head>
if (!validateForm("u2"))
return false;
<body id="editbody">
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);
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_data.id%>"
method="post"
onSubmit="return false">
<input type="hidden" id="room_action" name="room_action" value="<%=room_action%>">
<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.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
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", "&nbsp;");
BLOCK_START("algLoc1", "");
FCLTplaatsselector( this_alg.authparams("WEB_RUIMAN").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
});
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_data.name, {required: true, maxlength: 10});
useRWFIELD("room_oms", "fld", L("lcl_estate_ruimte_man_descr"), room_data.description, {maxlength: 30});
// 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_data.roomtype ? room_data.roomtype.id : -1),
emptyOption: "",
readonly: !this_alg.writeman
});
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")+")";
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: (room_data.servicelevel ? room_data.servicelevel.id : -1),
emptyOption: "",
readonly: !this_alg.writeuse
});
FCLTselector("room_srt", sql,
{ label: L("lcl_estate_ruimte_man_sort"),
initKey: room_srt,
emptyOption: "",
readonly: !this_alg.writeman
});
BLOCK_END();
BLOCK_START("algLoc2", "&nbsp;");
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")+")";
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);
if (S("fg_contourlayers_alt1")!="" && S("fg_labellayers_alt1")!="") {
manRWFIELD("room_oppa1", "fldshort", L("lcl_estate_ruimte_opp_alt1"), room_data.area1, {maxlength: 10, datatype: "float"});
ROFIELDTR("fldshort", L("lcl_fg_tek_room_opp_g_alt1"), room_data.cadcontours[0].cadalt1);
}
if (S("fg_contourlayers_alt2")!="" && S("fg_labellayers_alt2")!="") {
manRWFIELD("room_oppa2", "fldshort", L("lcl_estate_ruimte_opp_alt2"), room_data.area2, {maxlength: 10, datatype: "float"});
ROFIELDTR("fldshort", L("lcl_fg_tek_room_opp_g_alt2"), room_data.cadcontours[0].cadalt2);
}
manRWFIELD("room_omt", "fldshort", L("lcl_estate_ruimte_man_omtrek"), room_data.perimeter, {maxlength: 10, datatype: "float"});
manRWFIELD("room_inh", "fldshort", L("lcl_estate_ruimte_man_inhoud"), room_data.volume, {maxlength: 13, datatype: "float"});
manRWFIELD("room_opm", "fld", L("lcl_estate_ruimte_man_opmerk"), room_data.remark, {maxlength: 50});
FCLTselector("dienstniveau", sql,
{ label: L("lcl_mld_dienst_niveau"),
initKey: dienstniveau,
emptyOption: "",
readonly: !this_alg.writeuse
});
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: room_data.openfrom,
emptyOption: "",
readonly: !this_alg.writeman
}
);
times.push(" SELECT 24, '24:00' FROM DUAL");
FCLTselector( "room_einduur",
times.join(" UNION ALL "),
{ label: L("lcl_estate_gebouw_einduur"),
initKey: room_data.opento,
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: room_data.workdays,
readonly: !this_alg.writeman
}
);
BLOCK_END();
BLOCK_START("algLoc2", "");
BLOCK_END();
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});
generateFlexKenmerkBlock ({
onrgoed_key : room_key,
onrgoed_niveau : rooms.defaults.onrgoedlvl,
reado : false,
flexcolumns : S("alg_flexcolumns"),
this_alg : this_alg
});
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
}
);
IFACE.FORM_END();
BLOCK_END();
generateFlexKenmerkBlock ({
onrgoed_key : room_key,
onrgoed_niveau : onrgoedlvl,
reado : false,
flexcolumns : S("alg_flexcolumns"),
this_alg : this_alg
});
IFACE.FORM_END();
%>
</form>
</div>
</body>
</form>
<iframe src="../Shared/empty.html" name="hidFrameSubmit" style="display:none"></iframe>
</div>
</body>
</html>

View File

@@ -1,212 +0,0 @@
<%@language = "javascript" %>
<% /*
$Revision$
$Id$
File: alg_edit_ruimte_multi.asp
Description: Multi editten van de flexkenmerken van ruimtes
Parameters: alg_keys
Context:
Note:
*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/save2db.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/kenmerk_common.inc" -->
<!-- #include file="./alg_flexkenmerk.inc" -->
<!-- #include file="./alg.inc" -->
<%
FCLTHeader.Requires({ plugins:["suggest", "jQuery", "kenmerk"] });
var alg_key_arr = getQParamIntArray("alg_keys");
var alg_level = getQParam("alg_level");
var warning = "";
var result = {};
var tobeedited = 0;
var ingesloten = [];
// Bepaal de ruimtes in de selectie die
// ook echt bewerkt kunnen of mogen worden.
for (var i = 0; i < alg_key_arr.length; i++)
{
var this_alg = alg.func_enabled(alg_key_arr[i], "R");
if (this_alg.writeman || this_alg.writeuse)
{
ingesloten.push(alg_key_arr[i]);
tobeedited++;
var last_this_alg = this_alg; // deze gebruiken we voor rechtencontrole. Niet 100% zuiver maar goed genoeg
}
}
user.auth_required_or_abort(tobeedited > 0); // We klagen niet over enkele wel en enkele niet
/*
var sql = "SELECT alg_srtruimte_key"
+ " , mld_dienstniveau_key"
+ " , alg_ruimte_omschrijving"
+ " , alg_ruimte_opmerking"
+ " , alg_ruimte_beginuur"
+ " , alg_ruimte_einduur"
+ " , alg_ruimte_werkdagen"
+ " FROM alg_ruimte"
+ " WHERE alg_ruimte_key in (" + ingesloten.join(",") + ")";
var oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
var diff = { srtruimte_key: oRs("alg_srtruimte_key").Value,
dienstniveau_key: oRs("mld_dienstniveau_key").Value,
omschrijving: oRs("alg_ruimte_omschrijving").Value,
opmerking: oRs("alg_ruimte_opmerking").Value,
beginuur: oRs("alg_ruimte_beginuur").Value,
einduur: oRs("alg_ruimte_einduur").Value,
werkdagen: oRs("alg_ruimte_werkdagen").Value
};
var i = 0;
while (!oRs.eof)
{
i++;
if (diff.srtruimte_key != oRs("alg_srtruimte_key").Value) diff.srtruimte_key = null;
if (diff.dienstniveau_key != oRs("mld_dienstniveau_key").Value) diff.dienstniveau_key = null;
if (diff.omschrijving != oRs("alg_ruimte_omschrijving").Value) diff.omschrijving = null;
if (diff.opmerking != oRs("alg_ruimte_opmerking").Value) diff.opmerking = null;
if (diff.beginuur != oRs("alg_ruimte_beginuur").Value) diff.beginuur = null;
if (diff.einduur != oRs("alg_ruimte_einduur").Value) diff.einduur = null;
if (diff.werkdagen != oRs("alg_ruimte_werkdagen").Value) diff.werkdagen = null;
oRs.MoveNext();
}
}
oRs.Close();
*/
%>
<html>
<head>
<% FCLTHeader.Generate(); %>
<script type="text/javascript">
function alg_submit()
{
$.post($("form[name=u2]")[0].action,
$("[name=u2]").serialize(),
FcltCallbackAndThenAlways(alg_submit_callback),
"json");
return true; // disable button
}
function alg_submit_callback(json)
{
iface.button.enable("btn_alg_submit");
if (json.success)
FcltMgr.closeDetail(window, json);
}
function alg_cancel()
{
FcltMgr.closeDetail(window, { cancel: true } );
}
</script>
</head>
<body class="modal" id="mod_algmultiedit">
<form name="u2" action="alg_edit_ruimte_multi_save.asp?alg_level=<%=safe.htmlattr(alg_level)%>&alg_keys=<%=ingesloten.join(",")%>" method="post">
<%
/*
if (last_this_alg.writeman || last_this_alg.writeuse)
{
BLOCK_START("algFlex", L("lcl_ins_meta_data"));
// ruimte specifieke velden
if (last_this_alg.writeman)
{
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: (diff.srtruimte_key ? diff.srtruimte_key : -1),
emptyOption: ""
});
}
if (last_this_alg.writeuse)
{
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: (diff.dienstniveau_key ? diff.dienstniveau_key : -1),
emptyOption: ""
});
RWFIELDTR("room_oms", "fld", L("lcl_estate_ruimte_man_descr"), diff.omschrijving, {maxlength: 30});
}
if (last_this_alg.writeman)
{
RWFIELDTR("room_opm", "fld", L("lcl_estate_ruimte_man_opmerk"), diff.opmerking, {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: diff.beginuur,
emptyOption: ""
}
);
FCLTselector( "room_einduur",
times.join(" UNION ALL "),
{ label: L("lcl_estate_gebouw_einduur"),
initKey: diff.einduur,
emptyOption: ""
}
);
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: diff.werkdagen
}
);
}
BLOCK_END();
}
*/
generateFlexKenmerkBlock({
fnpre: function () {BLOCK_START("algMultiEdit", L("lcl_flexible_properties"));},
fnpost: BLOCK_END,
onrgoed_niveau: "R",
onrgoed_key: -1,
this_alg: last_this_alg,
reado: false,
multi: true,
flexcolumns: 1 // altijd want popup
});
var buttons = [];
buttons.push({title: L("lcl_submit"), action: "alg_submit()", singlepress: true, id: "btn_alg_submit"});
buttons.push({title: L("lcl_cancel"), action: "alg_cancel()"});
CreateButtons(buttons);
IFACE.FORM_END();
%>
</form>
</body>
</html>

View File

@@ -1,85 +0,0 @@
<%@ language = "JavaScript" %>
<% /*
$Revision$
$Id$
File: alg_edit_ruimte_multi_save.asp
Description: save script van alg_edit_ruimte_multi.asp
Globalen:
Context:
Note:
*/
var JSON_Result = true;
%>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/save2db.inc" -->
<!-- #include file="../Shared/kenmerk_common.inc" -->
<!-- #include file="./alg.inc" -->
<%
//protectRequest.validateToken();
var alg_key_arr = getQParamIntArray("alg_keys");
var alg_level = getQParam("alg_level");
var warning = "";
var result = {};
var nr_edited = 0;
for (var i = 0; i < alg_key_arr.length; i++)
{
var alg_key = alg_key_arr[i];
var this_alg = alg.func_enabled(alg_key, "R");
if (this_alg.writeman || this_alg.writeuse)
{
// Ik mag de ruimte wijzigen dus voer wijziging uit
var fields = [];
var algUpd = buildTrackingUpdate("alg_ruimte", " alg_ruimte_key = " + alg_key, fields);
// // Submit the changed data
// var err = Oracle.Execute(algUpd.sql, true);
// if (err.friendlyMsg)
// warning = err.friendlyMsg;
currentKenmerkenSQL = "SELECT k.alg_kenmerk_key"
+ " , ok.alg_onrgoedkenmerk_waarde"
+ " FROM alg_onrgoedkenmerk ok"
+ " , alg_kenmerk k"
+ " WHERE ok.alg_kenmerk_key = k.alg_kenmerk_key"
+ " AND ok.alg_onrgoedkenmerk_verwijder IS NULL"
+ " AND ok.alg_onrgoed_niveau = " + safe.quoted_sql(alg_level)
+ " AND ok.alg_onrgoed_key = " + alg_key;
allKenmerkenSQL = "SELECT " + lcl.xsql('k.alg_kenmerk_omschrijving', 'k.alg_kenmerk_key') + " kenmerk_omschrijving"
+ ", fac_kenmerkdomein_key"
+ " FROM alg_kenmerk k"
+ " WHERE k.alg_kenmerk_key = "; /* wordt in saveFlexkenmerken uitgebreid */
var flextrack = saveFlexKenmerken(alg_key,
{ kenmerkTable: "alg_onrgoedkenmerk",
kenmerkParentKey : "alg_onrgoed_key",
kenmerkWaarde: "alg_onrgoedkenmerk_waarde",
kenmerkKey: "alg_kenmerk_key",
currentKenmerkenSQL: currentKenmerkenSQL,
allKenmerkenSQL: allKenmerkenSQL,
requestQF: Request.Form,
flexPath: "ALG/R",
multiMode: true,
tracking: true,
module: "ALG",
moduleName: "alg_onrgoed_niveau",
moduleVal: alg_level
});
var update_string = L("lcl_alg_is_algrup") + "\n" + algUpd.trackarray.join("\n");
shared.trackaction("ALGRUP", alg_key, update_string);
nr_edited++;
}
}
result = { success : true, refresh: true };
Response.Write(JSON.stringify(result));
Response.End;
%>

View File

@@ -6,67 +6,129 @@
File: alg_edit_ruimte_save.asp
*/ %>
<%
var JSON_Result = true;
%>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../API2/api2.inc" -->
<!-- #include file="../API2/model_rooms.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../shared/save2db.inc" -->
<!-- #include file="../Shared/kenmerk_common.inc"-->
<% FCLTHeader.Requires({ plugins:["jQuery"],
js: []
}) %>
<%
protectRequest.validateToken();
var room_key = getQParamInt( "room_key" );
var room_action = getFParam( "room_action", "" );
var room_key = getQParamInt( "room_key" );
var isNew = (room_key < 0);
var formfields = [ { name: "name", frm: "room_nr" },
{ name: "roomtype", frm: "room_srt" },
{ name: "floor", frm: "verdiepingkey" },
{ name: "description", frm: "room_oms" },
{ name: "grossarea", frm: "room_opp" },
{ name: "perimeter", frm: "room_omt" },
{ name: "remark", frm: "room_opm" },
{ name: "volume", frm: "room_inh" },
{ name: "area1", frm: "room_oppa1" },
{ name: "area2", frm: "room_oppa2" },
{ name: "servicelevel", frm: "dienstniveau" },
{ name: "workdays", frm: "room_werkdagen" },
{ name: "openfrom", frm: "room_beginuur" },
{ name: "opento", frm: "room_einduur" }
];
var params = { filter: { id: room_key,
scope: "fe"
},
properties: { extraserie: false,
nameprefix: "k"
}
};
var rooms = new model_rooms();
var jsondata = api2.form2JSONdata(rooms, params, formfields);
jsondata.properties = flexkenmerken2jsondata(params.properties);
var beginuur = getFParamFloat("room_beginuur", -2);
if (beginuur == -1)
beginuur = "";
switch (room_action)
{
case "I":
var room_array = rooms.REST_POST(params, jsondata);
room_key = room_array.key;
break;
case "U":
var room_array = rooms.REST_PUT(params, jsondata, params.filter.id);
break;
case "D":
var room_array = rooms.REST_DELETE(params, params.filter.id);
break;
default :
var room_array = {warning: L("lcl_cnt_Del_Fails_Auth")};
}
var warning = room_array.warning;
var einduur = getFParamFloat("room_einduur", -2);
if (einduur == -1)
einduur = "";
function uurForeign(tm)
{
return toTimeString(tm, false); // geen seconden
}
var result = { room_key: room_key,
warning: warning,
keepForm: !!warning,
success: true };
Response.Write(JSON.stringify(result));
var fields = [ { dbs: "ALG_VERDIEPING_KEY", typ: "key", frm: "verdiepingkey" },
{ dbs: "ALG_SRTRUIMTE_KEY", typ: "key", frm: "room_srt", track: L("lcl_estate_ruimte_man_sort") , foreign: "alg_srtruimte" },
{ dbs: "ALG_RUIMTE_NR", typ: "varchar", frm: "room_nr", track: L("lcl_estate_ruimte_man_nr") },
{ dbs: "ALG_RUIMTE_ACADKEY", typ: "varchar", frm: "room_ackey" },
{ dbs: "ALG_RUIMTE_OMSCHRIJVING", typ: "varchar", frm: "room_oms", track: L("lcl_estate_ruimte_man_descr") },
{ dbs: "ALG_RUIMTE_GETEKEND", typ: "date", frm: "room_tek" },
{ dbs: "ALG_RUIMTE_BRUTO_VLOEROPP", typ: "float", frm: "room_opp", track: L("lcl_estate_ruimte_bruto_vloeropp") },
{ dbs: "ALG_RUIMTE_OMTREK", typ: "float", frm: "room_omt", track: L("lcl_estate_ruimte_man_omtrek") },
{ dbs: "ALG_RUIMTE_INHOUD", typ: "float", frm: "room_inh", track: L("lcl_estate_ruimte_man_inhoud") },
{ dbs: "ALG_RUIMTE_OPMERKING", typ: "varchar", frm: "room_opm", track: L("lcl_estate_ruimte_man_opmerk") },
{ dbs: "ALG_RUIMTE_VLOER_OMSCHRIJVING", typ: "varchar", frm: "room_flrom" },
{ dbs: "ALG_RUIMTE_OPP_GEVELGLAS", typ: "float", frm: "room_gegl" },
{ dbs: "ALG_RUIMTE_OPP_SEPARATIEGLAS", typ: "float", frm: "room_segl" },
{ dbs: "ALG_RUIMTE_OPP_GEVELBEKLEDING", typ: "float", frm: "room_gebe" },
{ dbs: "ALG_RUIMTE_OPP_ALT1", typ: "float", frm: "room_oppa1", track: L("lcl_estate_ruimte_opp_alt1") },
{ dbs: "ALG_RUIMTE_OPP_ALT2", typ: "float", frm: "room_oppa2", track: L("lcl_estate_ruimte_opp_alt2") },
{ dbs: "MLD_DIENSTNIVEAU_KEY", typ: "key", frm: "dienstniveau", track: L("lcl_mld_dienst_niveau"), foreign: "mld_dienstniveau" },
{ dbs: "ALG_RUIMTE_WERKDAGEN", typ: "number", frm: "room_werkdagen" }
];
if (beginuur != -2)
fields.push({ dbs: "ALG_RUIMTE_BEGINUUR", typ: "float", val: beginuur, track: L("lcl_estate_gebouw_beginuur"), foreign: uurForeign });
if (einduur != -2)
fields.push({ dbs: "ALG_RUIMTE_EINDUUR", typ: "float", val: einduur, track: L("lcl_estate_gebouw_einduur"), foreign: uurForeign });
var warning="";
if (room_key > 0)
{
algUpd = buildTrackingUpdate("alg_ruimte", "alg_ruimte_key = " + room_key, fields);
var err = Oracle.Execute(algUpd.sql, true);
if (err.friendlyMsg)
warning = err.friendlyMsg;
}
else
{
fields.push({ dbs: "alg_ruimte_key", typ: "key", seq: "alg_s_alg_onroerendgoed_keys" });
var regIns = buildInsert("alg_ruimte", fields);
var room_key = regIns.sequences["alg_ruimte_key"];
sql = regIns.sql;
var err = Oracle.Execute(sql, true);
if (err.friendlyMsg)
warning = err.friendlyMsg;
}
if (!warning)
{
currentKenmerkenSQL = " SELECT k.alg_kenmerk_key,"
+ " ok.alg_onrgoedkenmerk_waarde"
+ " FROM alg_onrgoedkenmerk ok,"
+ " alg_kenmerk k "
+ " WHERE k.alg_kenmerk_key = ok.alg_kenmerk_key "
+ " AND alg_onrgoedkenmerk_verwijder IS NULL "
+ " AND alg_onrgoed_niveau = 'R' "
+ " AND alg_onrgoed_key = " + room_key;
allKenmerkenSQL = " SELECT "+lcl.xsql('k.alg_kenmerk_omschrijving','k.alg_kenmerk_key')+" kenmerk_omschrijving"
+ " , alg_kenmerk_key srtkenmerk_key"
+ " , fac_kenmerkdomein_key"
+ " FROM alg_kenmerk k"
+ " WHERE k.alg_kenmerk_verwijder IS NULL"
+ " AND k.alg_kenmerk_niveau = 'R'"
+ " AND k.alg_kenmerk_key = "; /* wordt in saveFlexkenmerken uitgebreid */
var flextrack =
saveFlexKenmerken(room_key, { kenmerkTable: "alg_onrgoedkenmerk",
kenmerkParentKey : "alg_onrgoed_key",
kenmerkWaarde: "alg_onrgoedkenmerk_waarde",
kenmerkKey: "alg_kenmerk_key",
currentKenmerkenSQL: currentKenmerkenSQL,
allKenmerkenSQL: allKenmerkenSQL,
kenmerkOmschrijving: "alg_kenmerk_omschrijving",
kenmerkSoortKey: "alg_kenmerk_key",
requestQF: Request.Form,
isNew: isNew, flexPath: "ALG/R",
tracking: true,
moduleName: "ALG_ONRGOED_NIVEAU",
moduleVal: "R",
module: "ALG"
}
)
if (!isNew && (algUpd.trackarray.length || flextrack.length))
shared.trackaction("ALGRUP", room_key, algUpd.trackarray.concat(flextrack).join("\n"));
}
%>
<html>
<head>
<% FCLTHeader.Generate() %>
<script>
$(document).ready(function () {
FcltMgr.closeDetail(window, { room_key: <%=room_key%>,
warning: "<%=safe.jsstring(warning)%>",
keepForm: <%=warning?"true":"false"%>
});
} );
</script>
</head>
<body>
</body>
</html>

View File

@@ -12,16 +12,12 @@
*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/save2db.inc" -->
<!-- #include file="alg.inc" -->
<!-- #include file="../shared/save2db.inc" -->
<% FCLTHeader.Requires({ plugins:["jQuery"],
js: []
}) %>
<%
var autfunction = 'WEB_ALGMAN';
var authparams = user.checkAutorisation(autfunction)
var srtruimte_lg_key = getQParamInt("srtruimte_lg_key", -1);
var srtruimte_key = getFParamInt("srtruimte", -1);
var loc_key = getFParamInt("locatiekey", -1);
@@ -68,7 +64,7 @@ __Log("srtruimte_lg_key = " + srtruimte_lg_key);
{
sql = buildUpdate("alg_srtruimte_locatiegebouw", fields)
+ " alg_srtruimte_lg_key = " + srtruimte_lg_key;
var err = Oracle.Execute(sql, true);
if (err.friendlyMsg)
warning = err.friendlyMsg;
@@ -78,7 +74,7 @@ __Log("srtruimte_lg_key = " + srtruimte_lg_key);
fields.push({ dbs: "alg_srtruimte_lg_key", typ: "key", seq: "alg_s_alg_srtruimte_lg_key" });
var regIns = buildInsert("alg_srtruimte_locatiegebouw", fields);
var srtruimte_lg_key = regIns.sequences["alg_srtruimte_lg_key"];
sql = regIns.sql;
var err = Oracle.Execute(sql, true);
if (err.friendlyMsg)

View File

@@ -7,19 +7,14 @@
*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/save2db.inc" -->
<!-- #include file="../shared/save2db.inc" -->
<!-- #include file="../Shared/kenmerk_common.inc"-->
<!-- #include file="alg.inc" -->
<% FCLTHeader.Requires({ plugins:["jQuery"],
js: []
}) %>
<%
var ter_key = getQParamInt( "ter_key" );
var onrgoedlvl = "T";
var this_alg = alg.func_enabled(ter_key, onrgoedlvl);
user.auth_required_or_abort(this_alg.writeman || (ter_key>0&&this_alg.writeuse));
var ter_key = getQParamInt( "ter_key" );
var fields = [ { dbs: "alg_locatie_key", typ: "key", frm: "locatiekey", track: true /* afzonderlijke tracking, wel oldjsval */ },
{ dbs: "ALG_TERREINSECTOR_OMSCHRIJVING", typ: "varchar", frm: "ter_oms" },

View File

@@ -85,7 +85,7 @@ if (this_alg.writeman)
else
manRWFIELD = function (a,b,c,d,e) { ROFIELDTR(b,c,d,e) }; // als geen USE of <self> dan zijn er veel readonly
BLOCK_START("algLoc1", "&nbsp;");
BLOCK_START("algLoc1", "");
FCLTplaatsselector(this_alg.authparams("WEB_ALGMAN").ALGwritelevel, {
locatiekey: loc_key,
gebouwkey: bld_key,
@@ -113,16 +113,6 @@ BLOCK_START("algLoc1", "&nbsp;");
BLOCK_END();
BLOCK_START("algLoc2", "&nbsp;");
if (flr_key > 0)
{
var calcopp = alg.calc_algm2(flr_key, onrgoedlvl);
ROFIELDTR("fld", L("lcl_estate_ruimte_bruto_vloeropp") + L("lcl_estate_calc_vloeropp"), calcopp.oppbruto, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_ruimte_opp_alt1") + L("lcl_estate_calc_vloeropp"), calcopp.oppalt1, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_ruimte_opp_alt2") + L("lcl_estate_calc_vloeropp"), calcopp.oppalt2, {suppressEmpty: true});
}
BLOCK_END();
generateFlexKenmerkBlock ({
onrgoed_key : flr_key,
onrgoed_niveau : onrgoedlvl,

View File

@@ -7,19 +7,14 @@
*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/save2db.inc" -->
<!-- #include file="../shared/save2db.inc" -->
<!-- #include file="../Shared/kenmerk_common.inc"-->
<!-- #include file="alg.inc" -->
<% FCLTHeader.Requires({ plugins:["jQuery"],
js: []
}) %>
<%
var flr_key = getQParamInt( "flr_key" );
var onrgoedlvl = "V";
var this_alg = alg.func_enabled(flr_key, onrgoedlvl);
user.auth_required_or_abort(this_alg.writeman || (flr_key>0&&this_alg.writeuse));
var flr_key = getQParamInt( "flr_key" );
var fields = [ { dbs: "alg_verdieping_omschrijving", typ: "varchar", frm: "flr_omschr" },
{ dbs: "alg_verdieping_volgnr", typ: "number", frm: "flr_volgnr" },

View File

@@ -27,9 +27,6 @@ FCLTHeader.Requires({plugins:["jQuery"], js: []})
var authparams = alg.checkAutorisation();
var canAdd = (authparams.ALGwritelevel < 9); // TODO: fijner, ik denk 3. Ik moet voor deze locatie, dit district of deze regio schrijfrechten hebben.
readonly = !canAdd;
if (wp_key > 0)
{
sql = " select * "
@@ -121,8 +118,7 @@ BLOCK_START("algInfo", "");
onRuiChange: "onChangeRoom(key)",
startlevel: 2, // Regio
eindlevel: 5, // District
readonlylevel: 2, // Locatie niet readonly
filtercode: "INCVR",
readonly: (wp_key > 0),
required: true });
RWFIELDTR("wp_volgnr", "fldshort", L("lcl_estate_wp_seq"), wp_volgnr, {required: true,

View File

@@ -8,9 +8,7 @@
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/WPFunctions.inc" -->
<!-- #include file="../Shared/save2db.inc" -->
<!-- #include file="alg.inc" -->
<!-- #include file="../shared/save2db.inc" -->
<% FCLTHeader.Requires({ plugins:["jQuery"] }); %>
<%
@@ -21,8 +19,6 @@ var virtueel = (getFParamInt("has_wp_virt", 0) == 1) && (Request.Form("wp_virt")
// Bij impliciet altijd flex
var wp_type = (S("prs_werkplek_implicit") == 1)?1:getFParamInt("wp_type");
var authparams = alg.checkAutorisation();
var fields = [// { dbs: "PRS_WERKPLEK_MODULE", typ: "varchar", frm: "" },
{ dbs: "PRS_WERKPLEK_VOLGNR", typ: "number", frm: "wp_volgnr" },
{ dbs: "PRS_WERKPLEK_OMSCHRIJVING", typ: "varchar", frm: "wp_oms" },
@@ -46,22 +42,7 @@ if (wp_key > 0)
var err = Oracle.Execute(sql, true);
if (err.friendlyMsg)
warning = err.friendlyMsg;
// Is de ruimte aangepast?
var room_key_new = getFParamInt("ruimtekey");
var sql = "SELECT prs_alg_ruimte_key"
+ " FROM prs_werkplek"
+ " WHERE prs_werkplek_key = " + wp_key;
var oRs = Oracle.Execute(sql);
var room_key_old = oRs("prs_alg_ruimte_key").Value;
oRs.Close();
if (room_key_old != room_key_new)
{ // Werkplek verplaatsen
wp_key = WPMove_PRS_WERKPLEK(wp_key, room_key_new);
}
warning = err.friendlyMsg;
}
else
{

View File

@@ -25,7 +25,7 @@ function generateFlexKenmerkBlock(params)
if (params.advanced) // Simpel houden
{
params.fnpre = function () { Response.Write('<table id="flextable" cellpadding="0" cellspacing="0">'); };
params.fnpost = function () { Response.Write('</table>'); };
params.fnpost = function () { Response.Write('</table'); };
}
else
{
@@ -49,12 +49,6 @@ function generateFlexKenmerkBlock(params)
return true;
}
function isInvisible(volgnummer, ktype)
{
if (params.multi)
return (ktype == 'M' || ktype == 'F' || ktype == 'E'); // onzichtbaar bij multi
}
var sql = "SELECT k.alg_kenmerk_key kenmerk_key, "
+ lcl.xsql('k.alg_kenmerk_omschrijving', 'k.alg_kenmerk_key') +" kenmerk_omschrijving, "
+ " k.alg_kenmerk_kenmerktype kenmerk_kenmerktype, "
@@ -77,7 +71,6 @@ function generateFlexKenmerkBlock(params)
+ lcl.xsql('k.alg_kenmerk_hint', 'k.alg_kenmerk_key') +" kenmerk_hint, "
+ lcl.xsql('k.alg_kenmerk_default', 'k.alg_kenmerk_key') +" kenmerk_default, "
+ " k.alg_kenmerk_verplicht kenmerk_verplicht, "
+ " k.alg_kenmerk_groep kenmerk_groep, "
+ " NULL otherpath, "
+ " k.alg_kenmerk_toonbaar kenmerk_toonbaar,"
+ " k.alg_kenmerk_uniek kenmerk_uniek,"
@@ -101,7 +94,6 @@ function generateFlexKenmerkBlock(params)
hideVervallen: onrgoed_key<0,
fnpre: params.fnpre,
fnpost: params.fnpost,
fnIsInvisible: isInvisible,
mobile: params.mobile,
parentKey: onrgoed_key,
kenmerk_module: onrgoed_niveau }

View File

@@ -23,21 +23,18 @@ var bld_key = getQParamInt("key", -1);
if (bld_key > 0)
{
sql = " select alg_gebouw_code, alg_locatie_key "
sql = " select alg_gebouw_code "
+ " FROM alg_gebouw "
+ " WHERE alg_gebouw_key = " + bld_key;
oRs = Oracle.Execute(sql);
var bld_name = " " + oRs("alg_gebouw_code").value;
var loc_key = oRs("alg_locatie_key").value;
}
else
{
var bld_name = "";
var loc_key = -1;
var bld_name = ""
}
%>
<html>
@@ -69,7 +66,7 @@ else
</script>
</head>
<body>
<body id="editbody">
<% if (bld_key == -1)
var page="alg_edit_gebouw.asp"; // Maak een nieuw
else
@@ -79,22 +76,6 @@ else
IFRAMER("algFrame", page, { title: L("lcl_alg_gebouw_frame"),
initHeight: "450px",
FcltClose: "algClose" } );
if (bld_key > -1)
{
var authparamsCNTUSE = user.checkAutorisation("WEB_CNTUSE", true);
var authparamsCNTMAN = user.checkAutorisation("WEB_CNTMAN", true);
var curole = "bo";
if (!authparamsCNTMAN && authparamsCNTUSE)
curole = "fe";
if (authparamsCNTMAN || authparamsCNTUSE)
{
var page1="../cnt/cnt_search_list.asp?embedded=1&tiny=1&collapsed=1&urole=" + curole + "&ffutu=1&fact=1&frap=1&fopz=1&sact=1&loc_key="+ loc_key + "&bld_key=" + bld_key
IFRAMER("cntFrame", page1, { initHide: true } );
}
}
%>
</body>
</html>

View File

@@ -9,6 +9,7 @@
Note:
*/ %>
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/resultset_table_v2.inc" -->
<!-- #include file="../Shared/getkenmerksql.inc" -->
@@ -36,7 +37,7 @@ function fnrowData(oRs)
function gotoDetails(row)
{
var algData = eval('(' + row.getAttribute("ROWDATA") + ')');
var url = "appl/ALG/alg_verdieping_search.asp?gebouw_key=" + algData.detail_key + "&autosearch=" + autosearch + "&chkgeb=1";
var url = "appl/ALG/alg_verdieping_search.asp?gebouw_key=" + algData.detail_key + "&autosearch=" + autosearch;
FcltMgr.openDetail(url, "<%=L("lcl_floor")%>");
}
function gotoParent(row)
@@ -87,26 +88,15 @@ function gebouw_list(pautfunction, params)
var dis_key = params.dis_key;
var loc_key = params.loc_key;
var bld_key = params.bld_key;
var srtgebouw_key = params.srtgebouw_key;
var verantw_key = params.verantw_key;
var expalgincl = params.expalgincl;
var bld_func = params.bld_func;
function fnrowActionEnabler(oRs)
{
var eDelete = false;
if (alg.canWriteGebouw(oRs("alg_gebouw_key").value, authparams.mALGwritelevel))
eDelete = true;
return ({eDelete: eDelete})
}
function fnrowFlexParams(oRs)
{
var bld_key = oRs("alg_gebouw_key").Value;
var this_alg = alg.func_enabled(bld_key, "G");
var flexParams = { readman: this_alg.readman, readuse: this_alg.readuse};
return flexParams;
}
function fnrowActionEnabler(oRs)
{
var eDelete = false;
if (alg.canWriteGebouw(oRs("alg_gebouw_key").value, authparams.mALGwritelevel))
eDelete = true;
return ({eDelete: eDelete})
}
%>
<html>
@@ -115,71 +105,72 @@ function gebouw_list(pautfunction, params)
</head>
<body id="listbody">
<%
var sqln = "SELECT g.alg_gebouw_key"
+ " , g.alg_locatie_key"
+ " , g.alg_locatie_key"
+ " , g.alg_srtgebouw_key"
+ " , l.alg_locatie_omschrijving"
+ " , " + lcl.xsqla('s.alg_srtgebouw_omschrijving', 's.alg_srtgebouw_key')
+ " , g.alg_gebouw_code"
+ " , g.alg_gebouw_naam"
+ " , g.alg_gebouw_opmerking"
+ " , g.alg_gebouw_bruto_vloeropp"
+ " , g.alg_gebouw_omtrek"
+ " , g.alg_gebouw_inhoud"
+ " , g.alg_gebouw_x"
+ " , g.alg_gebouw_y"
+ " , g.alg_gebouw_vervaldatum"
+ " FROM alg_gebouw g"
+ " , alg_locatie l"
+ " , alg_srtgebouw s"
+ " WHERE l.alg_locatie_key(+) = g.alg_locatie_key"
+ " AND s.alg_srtgebouw_key(+) = g.alg_srtgebouw_key"
+ " AND g.alg_gebouw_verwijder IS NULL";
var sqln = "SELECT g.alg_gebouw_key, "
+ " g.alg_locatie_key, "
+ " g.alg_locatie_key, "
+ " g.alg_srtgebouw_key, "
+ " l.alg_locatie_omschrijving, "
+ lcl.xsqla('s.alg_srtgebouw_omschrijving', 's.alg_srtgebouw_key')+", "
+ " g.alg_gebouw_code, "
+ " g.alg_gebouw_naam, "
+ " g.alg_gebouw_opmerking, "
+ " g.alg_gebouw_bruto_vloeropp, "
+ " g.alg_gebouw_omtrek, "
+ " g.alg_gebouw_inhoud, "
+ " g.alg_gebouw_x, "
+ " g.alg_gebouw_y "
+ " FROM alg_v_aanweziggebouw g, "
+ " alg_locatie l, "
+ " alg_srtgebouw s "
+ " WHERE l.alg_locatie_key(+) = g.alg_locatie_key "
+ " AND s.alg_srtgebouw_key(+) = g.alg_srtgebouw_key "
+ " AND g.alg_gebouw_verwijder IS NULL ";
if ( authparams.ALGreadlevel > -1 )
{ // Er is een scope-beperking van kracht
sqln += " AND g.alg_gebouw_key IN (SELECT alg_gebouw_key FROM fac_v_my_buildings "
+ " WHERE prs_perslid_key = " + user_key
+ " AND niveau = " + authparams.ALGreadlevel + ")";
}
{ // Er is een scope-beperking van kracht
sqln += " AND g.alg_gebouw_key IN "
+ "(SELECT alg_gebouw_key FROM fac_v_my_buildings "
+ "WHERE prs_perslid_key="+user_key
+ " AND niveau=" + authparams.ALGreadlevel + ")";
}
sqln += getKenmerkSql("ALG", "g.alg_gebouw_key");
sqln += getKenmerkSql("ALG", "g.alg_gebouw_key");
if (bld_key)
if (bld_key)
{
sqln += " AND g.alg_gebouw_key = " + bld_key;
else if (loc_key)
}
else if (loc_key)
{
sqln += " AND g.alg_locatie_key = " + loc_key;
else if (dis_key)
}
else if (dis_key)
{
sqln += " AND l.alg_district_key = " + dis_key;
else if (reg_key)
}
else if (reg_key)
{
sqln += " AND l.alg_district_key IN (SELECT alg_district_key FROM alg_district WHERE alg_regio_key = " + reg_key+")";
}
if (params.bld_code)
sqln += " AND UPPER(g.alg_gebouw_code) LIKE " + safe.quoted_sql_wild(params.bld_code + "%");
if (params.bld_name)
sqln += " AND UPPER(g.alg_gebouw_naam) LIKE " + safe.quoted_sql_wild(params.bld_name + "%");
if (bld_func)
{
sqln += " AND g.alg_srtgebouw_key = " + bld_func;
}
if (srtgebouw_key)
sqln += " AND g.alg_srtgebouw_key = " + srtgebouw_key;
if (verantw_key)
sqln += " AND g.prs_perslid_key_verantw = " + verantw_key;
if (!expalgincl)
sqln += " AND (g.alg_gebouw_vervaldatum IS NULL OR g.alg_gebouw_vervaldatum > TRUNC(SYSDATE)) ";
sqln += " ORDER BY l.alg_locatie_upper ASC, "
sqln += " ORDER BY l.alg_locatie_upper ASC, "
+ " g.alg_gebouw_upper ASC ";
var addurl = "appl/alg/alg_gebouw.asp";
if (canAdd)
{
addButton = [{ icon: "plus.png", title: L("lcl_add"), action: "FcltMgr.openDetail('" + addurl + "', '" + L("lcl_add") + "')" }]
}
if (canAdd)
{
addButton = [{ icon: "plus.png", title: L("lcl_add"), action: "FcltMgr.openDetail('" + addurl + "', '" + L("lcl_add") + "')" }]
}
// addurl += buildTransitParam(["loc_key", "bld_key", "flo_key", "room_key"], params) // TODO: welke allemaal?
// addurl += buildTransitParam(["loc_key", "bld_key", "flo_key", "room_key"], params) // TODO: welke allemaal?
var rst = new ResultsetTable({ sql:sqln,
keyColumn: "alg_gebouw_key",
@@ -190,7 +181,6 @@ function gebouw_list(pautfunction, params)
rowActionEnabler: fnrowActionEnabler,
flexModule: "ALG",
flexId: "alg_gebouw_key",
flexParams: fnrowFlexParams,
filterParams: params,
outputmode: outputmode,
buttons: addButton
@@ -200,29 +190,27 @@ function gebouw_list(pautfunction, params)
rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_code"), content: "alg_gebouw_code"}));
rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_name"), content: "alg_gebouw_naam" }));
rst.addColumn(new Column({caption: L("lcl_estate_gebouw_srtgebouw"), content: "alg_srtgebouw_omschrijving"}));
rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_bruto_vloeropp"), content: "alg_gebouw_bruto_vloeropp", datatype: "float", decimals: 2}));
rst.addColumn(new Column({caption: L("lcl_alg_vervaldatum"), content: "alg_gebouw_vervaldatum", datatype: "date"}));
rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_bruto_vloeropp"), content: "alg_gebouw_bruto_vloeropp"}));
if (outputmode != 0)
{
rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_opmerk"), content: "alg_gebouw_opmerking"}));
rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_omtrek"), content: "alg_gebouw_omtrek"}));
rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_inhoud"), content: "alg_gebouw_inhoud"}));
rst.addColumn(new Column({caption: L("lcl_geoxcoord"), content: "alg_gebouw_x"}));
rst.addColumn(new Column({caption: L("lcl_geoycoord"), content: "alg_gebouw_y"}));
rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_opmerk"), content: "alg_gebouw_opmerking"}));
rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_omtrek"), content: "alg_gebouw_omtrek"}));
rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_inhoud"), content: "alg_gebouw_inhoud"}));
rst.addColumn(new Column({caption: L("lcl_geoxcoord"), content: "alg_gebouw_x"}));
rst.addColumn(new Column({caption: L("lcl_geoycoord"), content: "alg_gebouw_y"}));
}
rst.addAction({ action: "gebouwEdit", caption: L("lcl_edit"), isDefault: true});
rst.addAction({ action: "doDelete", caption: L("lcl_delete"), enabler: "eDelete", single:!noref, multi: true, multiOnce: true});
if (!noref)
{
rst.addAction({ action: "gotoDetails", caption: L("lcl_goto_verdieping_list")});
rst.addAction({ action: "gotoParent", caption: L("lcl_goto_locatie_list")});
if (!noref) {
rst.addAction({ action: "gotoDetails", caption: L("lcl_goto_verdieping_list")});
rst.addAction({ action: "gotoParent", caption: L("lcl_goto_locatie_list")});
}
var cnt = rst.processResultset();
%>
</body>
</html>
<%
} %>
<%}%>

View File

@@ -7,7 +7,6 @@
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<!-- #include file="../Shared/persoonselector.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="alg.inc" -->
@@ -16,11 +15,9 @@ FCLTHeader.Requires({ plugins:["jQuery", "kenmerk"] });
var locatie_key = getQParamInt("locatie_key", -1); // Locatie
var gebouw_key = getQParamInt("gebouw_key", -1); // Gebouw
var srtgebouw_key = getQParamInt("gebouw_func", -1); // Gebouwfunctie
var verantw_key = getQParamInt("verantw", -1); // Gebouw verantwoordelijke
var gebouw_func = getQParamInt("gebouw_func", -1); // Gebouwfunctie
var autosearch = getQParamInt("autosearch", 0) == 1;
var authparams = alg.checkAutorisation();
var this_alg = alg.func_enabled(gebouw_key);
%>
<html>
@@ -49,75 +46,47 @@ var this_alg = alg.func_enabled(gebouw_key);
<body id="searchbody">
<div id="search">
<form name="u2" target="workFrame" action="alg_gebouw_search_list.asp" method="get">
<% BLOCK_START("searchtable", L("lcl_filterblok"));%>
<tr>
<td class="searchkolom1">
<table><!-- x rijen, 2 kolommen: label + veld -->
<% BLOCK_START("searchtable", L("lcl_filterblok"));%>
<tr>
<td class="searchkolom1">
<table><!-- x rijen, 2 kolommen: label + veld -->
<% <!-- Locatie, gebouw en verdieping -->
FCLTplaatsselector(authparams.ALGreadlevel, {
locatiekey: locatie_key,
gebouwkey: gebouw_key,
startlevel: 2, // locatie
eindlevel: 2, // locatie
whenEmpty: L("lcl_search_generic")
});
<% <!-- Locatie, gebouw en verdieping -->
FCLTplaatsselector(authparams.ALGreadlevel, {
locatiekey: locatie_key,
gebouwkey: gebouw_key,
startlevel: 2, // locatie
eindlevel: 3, // gebouw
whenEmpty: L("lcl_search_generic")
});
%>
<tr class="primsearch">
<td class="label"><label><%=L("lcl_estate_gebouw_man_code")%>:</label></td>
<td><input type="text" class="wildcard" id="bld_code" name="bld_code" value=""></td>
</tr>
<tr class="primsearch">
<td class="label"><label><%=L("lcl_estate_gebouw_man_name")%>:</label></td>
<td><input type="text" class="wildcard" id="bld_name" name="bld_name" value=""></td>
</tr>
<!-- Vervallen objecten -->
<tr class="primsearch">
<td></td>
<td align=left>
<input type="checkbox" class="fldexpalgincl" name="expAlgIncl" id="expAlgIncl" value="1" >
<label for="expAlgIncl"><%=L("lcl_alg_gebouw_vervallen_incl")%></label>
</td>
</tr>
</table>
</td><!-- end column 1 -->
</table>
</td><!-- end column 1 -->
<td class="searchkolom2">
<table><!-- x rijen, 2 kolommen: label + veld -->
<!-- Zoektekst -->
<% sql = "SELECT alg_srtgebouw_key"
+ ", "+lcl.xsqla('alg_srtgebouw_omschrijving', 'alg_srtgebouw_key')
+ " FROM alg_srtgebouw"
+ " WHERE alg_srtgebouw_verwijder IS NULL"
+ " ORDER BY UPPER("+lcl.xsql('alg_srtgebouw_omschrijving', 'alg_srtgebouw_key')+")";
FCLTselector("srt",
sql,
{ initKey: srtgebouw_key,
label: L("lcl_estate_gebouw_srtgebouw"),
trclass: "primsearch",
emptyOption: ""
});
<td class="searchkolom2">
<table><!-- x rijen, 2 kolommen: label + veld -->
<% // <!-- Zoektekst -->
sql = "SELECT alg_srtgebouw_key"
+ ", "+lcl.xsqla('alg_srtgebouw_omschrijving', 'alg_srtgebouw_key')
+ " FROM alg_srtgebouw"
+ " WHERE alg_srtgebouw_verwijder IS NULL"
+ " ORDER BY UPPER("+lcl.xsql('alg_srtgebouw_omschrijving', 'alg_srtgebouw_key')+")";
FCLTselector("srt",
sql,
{ initKey: gebouw_func,
label: L("lcl_estate_gebouw_srtgebouw"),
trclass: "primsearch",
emptyOption: ""
});
%>
<!-- Gebouw verantwoordelijke -->
<% // Dit veld is alleen zichtbaar indien er minimaal <20><>n gebouwverantwoordelijke geconfigureerd is (suppressNoValues).
FCLTpersoonselector("verantw",
"sgVerantw",
{ perslidKey: verantw_key,
label: L("lcl_alg_bld_verantw"),
filtercode: "GV", // Gebouw Verantwoordelijke
trclass: "primsearch",
suppressNoValues: true,
whenEmpty: L("lcl_search_generic") // want filter
});
%>
</table>
</td><!-- end column 1 -->
</tr>
<% BLOCK_END();
</table>
</td><!-- end column 1 -->
</tr>
<% BLOCK_END();
var buttons = [ {title: L("lcl_search"), action: "doSubmit()", id: "bSearch" },
{title: L("lcl_obj_advanced"), action: "myModal()", id: "bAdvanced" } ];
CreateButtons(buttons, { entersubmit: true });
var buttons = [ {title: L("lcl_search"), action: "doSubmit()", id: "bSearch" },
{title: L("lcl_obj_advanced"), action: "myModal()", id: "bAdvanced" } ];
CreateButtons(buttons, { entersubmit: true });
%>
</form>
</div> <!-- search -->

View File

@@ -26,25 +26,17 @@ var reg_key = getQParamInt("regiokey", -1); // Regio
var dis_key = getQParamInt("districtkey", -1); // District
var loc_key = getQParamInt("locatiekey", -1); // Locatie
var bld_key = getQParamInt("gebouwkey", -1); // Gebouw
var bld_code = getQParam("bld_code", ""); // Gebouwcode
var bld_name = getQParam("bld_name", ""); // Gebouwnaam
var srtgebouw_key = getQParamInt("srt", -1); // Gebouwfunctie
var verantw_key = getQParamInt("verantw", -1); // Gebouw verantwoordelijke
var expalgincl = getQParamInt("expAlgIncl", 0) == 1; // Ook vervallen gebouwen
var bld_func = getQParamInt("srt", -1);
gebouw_list ( "*",
{ outputmode: outputmode,
showall: showall,
srtgebouw_key: (srtgebouw_key != -1? srtgebouw_key: null),
verantw_key: (verantw_key != -1? verantw_key: null),
bld_func: (bld_func != -1? bld_func: null),
reg_key: (reg_key != -1? reg_key : null),
dis_key: (dis_key != -1? dis_key : null),
loc_key: (loc_key != -1? loc_key : null),
bld_key: (bld_key != -1? bld_key : null),
bld_code: bld_code,
bld_name: bld_name,
noref: (noref != -1? noref : null),
expalgincl: expalgincl
noref: (noref != -1? noref : null)
}
);
%>

View File

@@ -65,7 +65,7 @@ else
}
</script>
</head>
<body>
<body id="editbody">
<%
if (loc_key == -1)
var page="alg_edit_locatie.asp"; // Maak een nieuw
@@ -76,22 +76,6 @@ else
IFRAMER("algFrame", page, { title: L("lcl_alg_locatie_frame"),
initHeight: "450px",
FcltClose: "algClose" } );
if (loc_key > -1)
{
var authparamsCNTUSE = user.checkAutorisation("WEB_CNTUSE", true);
var authparamsCNTMAN = user.checkAutorisation("WEB_CNTMAN", true);
var curole = "bo";
if (!authparamsCNTMAN && authparamsCNTUSE)
curole = "fe";
if (authparamsCNTMAN || authparamsCNTUSE)
{
var page1="../cnt/cnt_search_list.asp?embedded=1&tiny=1&collapsed=1&urole=" + curole + "&ffutu=1&fact=1&frap=1&fopz=1&sact=1&loc_key=" + loc_key
IFRAMER("cntFrame", page1, { initHeight: "450px" } );
}
}
%>
</body>
</html>

View File

@@ -101,15 +101,6 @@ function locatie_list(pautfunction, params)
eDelete = true;
return ({eDelete: eDelete})
}
function fnrowFlexParams(oRs)
{
var loc_key = oRs("alg_locatie_key").Value;
var this_alg = alg.func_enabled(loc_key, "L");
var flexParams = { readman: this_alg.readman, readuse: this_alg.readuse};
return flexParams;
}
%>
<html>
@@ -182,7 +173,6 @@ function locatie_list(pautfunction, params)
outputmode: outputmode,
flexModule: "ALG",
flexId: "alg_locatie_key",
flexParams: fnrowFlexParams,
filterParams: params,
buttons: addButton
});

View File

@@ -40,13 +40,17 @@ var reg_key = getQParamInt("key", -1);
if (!params.keepForm)
window.location.href = "alg_regio.asp?verynew=1&key=" + params.regio_key;
<% } else { /* Bestaande regio bewerkt, switch naar show-mode */ %>
if (params.close)
{
FcltMgr.closeDetail(window, { close: true})
}
if (!params.keepForm)
$("#algFrame")[0].src = "alg_show_regio.asp?regio_key=<%=reg_key%>";
<% } %>
}
</script>
</head>
<body>
<body id="editbody">
<% if (reg_key == -1)
var page="alg_edit_regio.asp"; // Maak een nieuw
else

View File

@@ -9,26 +9,24 @@
Note:
*/ %>
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../shared/data_recordset.inc" -->
<!-- #include file="../Shared/resultset_table_v2.inc" -->
<!-- #include file="../Shared/getkenmerksql.inc" -->
<!-- #include file="../API2/api2.inc" -->
<!-- #include file="../API2/model_regions.inc" -->
<!-- #include file="alg.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery"] });
function fnrowData(oRs)
{
var detail_key = oRs.Fields("id").Value;
var key = oRs.Fields("id").Value;
var oms = oRs.Fields("name").Value;
var detail_key = oRs("alg_regio_key").value;
var key = oRs("alg_regio_key").value;
var oms = oRs("alg_regio_omschrijving").value;
var data = {detail_key: detail_key, key: key, oms: oms};
var data = {detail_key: detail_key, key: key, oms: oms};
return JSON.stringify(data);
return JSON.stringify(data);
}
%>
@@ -77,13 +75,14 @@ function regio_list(pautfunction, params)
// Voor resulttable de globalen zetten; zou ng anders moeten.
var outputmode = params.outputmode; // print to 0 = screen, 1 = printer, 2 = excel, etc.
var showall = params.showall;
var reg_key = params.reg_key;
var showall = params.showall;
var reg_key = params.reg_key;
function fnrowActionEnabler(oRs)
{
var eDelete = false;
if (alg.canWriteRegio(oRs.Fields("id").Value, authparams.mALGwritelevel))
if (alg.canWriteRegio(oRs("alg_regio_key").value, authparams.mALGwritelevel))
eDelete = true;
return ({eDelete: eDelete})
}
@@ -94,25 +93,34 @@ function regio_list(pautfunction, params)
</head>
<body id="listbody">
<%
// Ophalen regio`s
var regio_key = getQParamInt("regiokey");
var filter = {};
if (regio_key > -1)
var filter = {id: regio_key};
var params = { filter: filter }; // Alle regio`s ophalen, behalve de verwijderde.
var regio_array = model_regions.REST_GET(params); // Roep de API2 GET aan
//
var sqln = "SELECT r.alg_regio_key, "
+ " r.alg_regio_omschrijving "
+ " FROM alg_regio r "
+ " WHERE r.alg_regio_verwijder IS NULL ";
var addurl = "appl/alg/alg_regio.asp";
// addurl += buildTransitParam(["loc_key", "bld_key", "flo_key", "room_key"], params) // TODO: welke allemaal?
if (canAdd)
{
addButton = [{ icon: "plus.png", title: L("lcl_add"), action: "FcltMgr.openDetail('" + addurl + "', '" + L("lcl_add") + "')" }]
if (authparams.ALGreadlevel > -1)
{ // Er is een scope-beperking van kracht
sqln += " AND r.alg_regio_key IN "
+ "(SELECT alg_regio_key FROM fac_v_my_regions "
+ "WHERE prs_perslid_key="+user_key
+ " AND niveau=" + authparams.ALGreadlevel + ")";
}
var rst = new ResultsetTable({ dataset: regio_array,
keyColumn: "id",
if (reg_key)
{
sqln += " AND r.alg_regio_key = " + reg_key;
}
var addurl = "appl/alg/alg_regio.asp";
// addurl += buildTransitParam(["loc_key", "bld_key", "flo_key", "room_key"], params) // TODO: welke allemaal?
if (canAdd)
{
addButton = [{ icon: "plus.png", title: L("lcl_add"), action: "FcltMgr.openDetail('" + addurl + "', '" + L("lcl_add") + "')" }]
}
var rst = new ResultsetTable({sql:sqln,
keyColumn: "alg_regio_key",
ID: "algtable",
showAll: showall,
rowData: fnrowData,
@@ -120,10 +128,10 @@ function regio_list(pautfunction, params)
outputmode: outputmode,
filterParams: params,
buttons: addButton
});
});
rst.addColumn(new Column({caption: L("lcl_estate_regio_descr"), content: "name"}));
rst.addColumn(new Column({caption: L("lcl_estate_regio_descr"), content: "alg_regio_omschrijving"}));
rst.addAction({ action: "districtEdit", caption: L("lcl_edit"), isDefault: true});
rst.addAction({ action: "doDelete", caption: L("lcl_delete"), enabler: "eDelete", multi: true, multiOnce: true});

View File

@@ -58,7 +58,7 @@ else
addString = (loc_key > 0? "&loc_key=" + loc_key : "")
+ (geb_key > 0? "&geb_key=" + geb_key : "")
+ (ver_key > 0? "&ver_key=" + ver_key : "")
+ (cad_ruimte_nr?"&cad_ruimte_nr="+safe.url(cad_ruimte_nr):"");
+ (cad_ruimte_nr?"&cad_ruimte_nr="+cad_ruimte_nr:"");
}
}
%>
@@ -84,6 +84,10 @@ else
if (!params.keepForm)
window.location.href = "alg_ruimte.asp?verynew=1&key=" + params.room_key;
<% } else { /* Bestaande ruimte bewerkt, switch naar show-mode */ %>
if (params.close)
{
FcltMgr.closeDetail(window, { close: true})
}
if (!params.keepForm)
$("#algFrame")[0].src = "alg_show_ruimte.asp?room_key=<%=room_key%>";
@@ -91,7 +95,7 @@ else
}
</script>
</head>
<body>
<body id="editbody">
<%
if (room_key == -1)
var page="alg_edit_ruimte.asp?room_key=" + room_key + addString; // Maak een nieuw
@@ -109,14 +113,6 @@ else
var page3 ="../prs/prs_afdeling_search_list.asp?tiny=1&room_key=" + room_key;// Alle afdelingen van alle niveau's (1 en hoger) laten zien dus afd_niveau=nr niet meegegeven
IFRAMER("wpFrame", page3, { initHeight: "450px" } );
var authparamsINSMAN = user.checkAutorisation("WEB_INSMAN", true);
var insman_read = authparamsINSMAN;
if (insman_read)
{
var page4="../INS/ins_list.asp?embedded=1&tiny=1&ruimtekey=" + room_key
IFRAMER("insdeel", page4, { initHeight: "450px" } );
}
}
%>
</body>

View File

@@ -22,25 +22,20 @@ function ruimte_list(pautfunction, params)
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
var addButton = [];
var authparams = alg.checkAutorisation();
// Met ALG* bepaal je wat je ziet (Read), met RUI* en TER* bepaal je wat je kunt wijzigen (Write).
var canAdd = (authparams.rmALGwritelevel < 9);
var canAdd = (authparams.mALGwritelevel < 9);
// Voor resulttable de globalen zetten; zou ng anders moeten.
var outputmode = params.outputmode; // print to 0 = screen, 1 = printer, 2 = excel, etc.
var showall = params.showall;
var noref = params.noref;
var reg_key = params.reg_key;
var dis_key = params.dis_key;
var loc_key = params.loc_key;
var bld_key = params.bld_key;
var lvl_key = params.lvl_key;
var room_key = params.room_key;
var area_nr = params.area_nr;
var area_descr = params.area_descr;
var srtruimte_key = params.srtruimte_key
var dept_key = params.dept_key;
var chkgeb = params.chkgeb;
var area_use = params.area_use
%>
<html>
@@ -52,32 +47,24 @@ function ruimte_list(pautfunction, params)
function gotoDetails(row)
{
var algData = eval('(' + row.getAttribute("ROWDATA") + ')');
var url = "appl/alg/alg_werkplek_search.asp?ruimte_key="+algData.detail_key+"&autosearch="+autosearch;
var url = "appl/ALG/alg_werkplek_search.asp?ruimte_key="+algData.detail_key+"&autosearch="+autosearch;
FcltMgr.openDetail(url, "<%=L("lcl_workspace")%>");
}
function gotoParent(row)
{
var algData = eval('(' + row.getAttribute("ROWDATA") + ')');
var url = "appl/alg/alg_verdieping_search.asp?verdieping_key="+algData.parent_key+"&autosearch="+autosearch;
var url = "appl/ALG/alg_verdieping_search.asp?verdieping_key="+algData.parent_key+"&autosearch="+autosearch;
FcltMgr.openDetail(url, "<%=L("lcl_floor")%>");
}
function ruimteEdit(row)
{
var algData = eval('(' + row.getAttribute("ROWDATA") + ')');
var url = "appl/alg/alg_ruimte.asp?mode=viewUpdate&key="+algData.key;
var url = "appl/ALG/alg_ruimte.asp?mode=viewUpdate&key="+algData.key;
FcltMgr.openDetail(url, "<%=L("lcl_room")%>" + ' ' + algData.oms);
}
function ruimteEditMulti(rowArray)
{
var algKeyString = getKeyString(rowArray);
var subject = L("lcl_alg_multi_edit");
var url = "../alg/alg_edit_ruimte_multi.asp?alg_level=R&alg_keys=" + algKeyString;
FcltMgr.openModalDetail(url, subject, {callback: FcltCallbackRefresh});
}
function doRuimteAfdeling(rowArray)
{
var ruimteArr = [];
@@ -88,16 +75,6 @@ function ruimte_list(pautfunction, params)
FcltMgr.openModalDetail("alg_ruimteafdeling.asp?ruimte_keys=" + ruimteArr.join(","), L("lcl_alg_ruimte_bezetting"));
}
function doRESScope(rowArray)
{
var ruimteArr = [];
for (var i = 0; i < rowArray.length; i++)
{
ruimteArr.push(rowArray[i].getAttribute("ROWKEY"))
}
FcltMgr.openModalDetail("alg_ruimteresscope.asp?ruimte_keys=" + ruimteArr.join(","), L("res_srtartikel_onrgoed"));
}
function doDelete(row, isMulti)
{
$(row).addClass('dirty');
@@ -173,14 +150,10 @@ function ruimte_list(pautfunction, params)
{
sqln += " AND g.alg_locatie_key = " + loc_key;
}
else if (dis_key)
sqln += " AND l.alg_district_key = " + dis_key;
else if (reg_key)
sqln += " AND l.alg_district_key IN (SELECT alg_district_key FROM alg_district WHERE alg_regio_key = " + reg_key+")";
if (srtruimte_key)
if (area_use)
{
sqln += " AND r.alg_srtruimte_key = " + srtruimte_key;
sqln += " AND r.alg_srtruimte_key = " + area_use;
}
if (area_nr)
@@ -193,18 +166,6 @@ function ruimte_list(pautfunction, params)
sqln += " AND UPPER(r.alg_ruimte_omschrijving) LIKE " + safe.quoted_sql_wild("%" + area_descr + "%");
}
if (dept_key)
{
sqln += " AND r.alg_ruimte_key in "
+ " (SELECT alg_ruimte_key "
+ " FROM prs_ruimteafdeling "
+ " WHERE prs_ruimteafdeling_verwijder IS NULL "
+ " AND prs_afdeling_key = " + dept_key + ")";
}
if (!chkgeb)
sqln += " AND (g.alg_gebouw_vervaldatum IS NULL OR g.alg_gebouw_vervaldatum > TRUNC(SYSDATE)) ";
sqln += " ORDER BY l.alg_locatie_upper ASC"
+ ", g.alg_gebouw_upper ASC"
+ ", v.alg_verdieping_volgnr ASC"
@@ -212,10 +173,10 @@ function ruimte_list(pautfunction, params)
function fnrowData(oRs)
{
var parent_key = oRs("alg_verdieping_key").Value;
var detail_key = oRs("alg_ruimte_key").Value;
var key = oRs("alg_ruimte_key").Value;
var oms = oRs("alg_ruimte_omschrijving").Value;
var parent_key = oRs("alg_verdieping_key").value;
var detail_key = oRs("alg_ruimte_key").value;
var key = oRs("alg_ruimte_key").value;
var oms = oRs("alg_ruimte_omschrijving").value;
var data = {parent_key:parent_key, detail_key:detail_key, key:key, oms:oms};
return JSON.stringify(data);
@@ -225,27 +186,17 @@ function ruimte_list(pautfunction, params)
// Voor performance bekijken we de rechten per verdieping. In de praktijk nauwkeurig genoeg
function fnrowActionEnabler(oRs)
{
if (!floorCache[oRs("alg_verdieping_key").Value])
if (!floorCache[oRs("alg_verdieping_key").value])
{
eEditMulti = true;
floorCache[oRs("alg_verdieping_key").Value] =
floorCache[oRs("alg_verdieping_key").value] =
{
eDelete: alg.canWriteVerdieping(oRs("alg_verdieping_key").Value, authparams.rmALGwritelevel),
eDelete: alg.canWriteVerdieping(oRs("alg_verdieping_key").value, authparams.mALGwritelevel),
// Bezetting moet per regel en is afhankelijk van WEB_PRSBOF (werkplekbeheer)
eBezetting: alg.func_enabled_ruimte(oRs("alg_verdieping_key").Value).canPRSBOFwrite,
eEditMulti: eEditMulti
eBezetting: alg.func_enabled_ruimte(oRs("alg_verdieping_key").value).canPRSBOFwrite
}
}
return (floorCache[oRs("alg_verdieping_key").Value]);
}
function fnrowFlexParams(oRs)
{
var room_key = oRs("alg_ruimte_key").Value;
var this_alg = alg.func_enabled(room_key, "R");
var flexParams = { readman: this_alg.readman, readuse: this_alg.readuse};
return flexParams;
return (floorCache[oRs("alg_verdieping_key").value]);
}
var addurl = "appl/alg/alg_ruimte.asp?a=1";
@@ -266,12 +217,10 @@ function ruimte_list(pautfunction, params)
outputmode: outputmode,
flexModule: "ALG",
flexId: "alg_ruimte_key",
flexParams: fnrowFlexParams,
filterParams: params,
buttons: addButton
});
rst.addColumn(new Column({caption: L("lcl_estate_locatie_man_descr"), content: "alg_locatie_omschrijving"}));
rst.addColumn(new Column({caption: L("lcl_estate_gebouw_man_descr"), content: "alg_gebouw_omschrijving"}));
rst.addColumn(new Column({caption: L("lcl_estate_verdieping_man_descr"), content: "alg_verdieping_omschrijving"}));
@@ -300,11 +249,8 @@ function ruimte_list(pautfunction, params)
}
rst.addAction({ action: "ruimteEdit", caption: L("lcl_edit"), isDefault: true });
rst.addAction({ action: "ruimteEditMulti", caption: L("lcl_alg_multi_edit"), multi: true, multiOnce: true, single: false, enabler: "eEditMulti"});
rst.addAction({ action: "doDelete", caption: L("lcl_delete"), multi: true, single: !noref, enabler: "eDelete" });
rst.addAction({ action: "doRuimteAfdeling", caption: L("lcl_alg_bezetting"), multi: true, multiOnce: true, enabler: "eBezetting" });
if (user.has("WEB_RESMSU"))
rst.addAction({ action: "doRESScope", caption: L("res_srtartikel_onrgoed"), multi: true, single: false, multiOnce: true });
if (!noref)
{
if (S("prs_werkplek_implicit") == 0)

View File

@@ -9,7 +9,6 @@
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<!-- #include file="alg.inc" -->
<!-- #include file="../Shared/afdelingselector.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery", "kenmerk"] });
@@ -22,7 +21,6 @@ var ruimte_nr = getQParam("ruimte_nr", "");
var ruimte_use = getQParamInt("ruimte_use", -1); // Ruimtefunctie
var ruimte_descr = getQParam("ruimte_descr", "");
var autosearch = getQParamInt("autosearch", 0) == 1;
var chkgeb = getQParamInt("chkgeb", 0) == 1;
var authparams = alg.checkAutorisation();
%>
@@ -52,7 +50,6 @@ var authparams = alg.checkAutorisation();
<body id="searchbody">
<div id="search">
<form name="u2" target="workFrame" action="alg_ruimte_search_list.asp" method="get">
<input type="hidden" id="chkgeb" name="chkgeb" value="<%=(chkgeb?1:0)%>">
<% BLOCK_START("searchtable", L("lcl_filterblok"));%>
<tr>
<td class="searchkolom1">
@@ -66,7 +63,6 @@ var authparams = alg.checkAutorisation();
ruimtekey: ruimte_key,
startlevel: 2, // locatie
eindlevel: 5, // ruimte
filtercode: "INCVR",
whenEmpty: L("lcl_search_generic") // want filter
});
@@ -99,20 +95,6 @@ var authparams = alg.checkAutorisation();
emptyOption: ""
});
sql= "SELECT 1 FROM prs_ruimteafdeling WHERE prs_ruimteafdeling_verwijder is null AND ROWNUM = 1";
oRs = Oracle.Execute(sql);
var anyruimteafd = !oRs.eof;
oRs.close();
if (anyruimteafd)
{
FCLTafdelingselector("dept",
"dept",
{ label: L("lcl_prs_organisatie"),
autlevel: authparams.PRSreadlevel, // Was voorheen niet aanwezig
whenEmpty: L("lcl_search_generic"),
filtercode: "AR"
});
}
%> </table>
</td><!-- end column 1 -->
</tr>

View File

@@ -22,33 +22,25 @@
var outputmode = getQParamInt("outputmode", 0) // 0 = screen, 1 = print, 2 = excel etc
var showall = getQParamInt("showall", 0) == 1;
var noref = getQParamInt("noref", -1); // (voor onderdrukken horizontale verwijzingen)
var reg_key = getQParamInt("regiokey", -1); // Regio
var dis_key = getQParamInt("districtkey", -1); // District
var loc_key = getQParamInt("locatiekey", -1); // Locatie
var bld_key = getQParamInt("gebouwkey", -1); // Gebouw
var lvl_key = getQParamInt("verdiepingkey", -1); // Verdieping
var room_key = getQParamInt("ruimtekey", -1); // Ruimte
var area_nr = getQParam("nr", null); // Ruimte nr
var area_descr = getQParam("descr", null); // Ruimte omschrijving
var srtruimte_key = getQParamInt("srt", null); // Ruimtefunctie
var dept_key = getQParamInt("dept", -1); // Afdeling
var chkgeb = getQParamInt("chkgeb", 0) == 1; //Controleer tegen de vervallenstatus van het gebouw (vertrouw lvl_key/geb_key niet)
var area_use = getQParamInt("srt", null); // Ruimtefunctie
ruimte_list ( "*",
{ outputmode: outputmode,
showall: showall,
reg_key: (reg_key != -1? reg_key : null),
dis_key: (dis_key != -1? dis_key : null),
loc_key: (loc_key != -1? loc_key : null),
bld_key: (bld_key != -1? bld_key : null),
lvl_key: (lvl_key != -1? lvl_key : null),
room_key: (room_key != -1? room_key : null),
area_nr: (area_nr != -1? area_nr : null),
area_descr: (area_descr != ""? area_descr : null),
srtruimte_key: (srtruimte_key != -1? srtruimte_key : null),
dept_key: (dept_key !=-1? dept_key : null),
noref: (noref != -1? noref : null),
chkgeb: chkgeb
area_use: (area_use != -1? area_use : null),
noref: (noref != -1? noref : null)
}
);
%>

View File

@@ -51,7 +51,7 @@ FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["jQuery-ui.js"]})
</script>
</head>
<body class="modal" id="mod_ruimtefunctie">
<body id="editbody">
<%
var page="alg_edit_ruimtefunctie.asp?srtruimte_lg_key=" + srtruimte_lg_key; // Edit
//if (srtruimte_lg_key == -1)
@@ -59,7 +59,7 @@ FCLTHeader.Requires({plugins:["suggest","jQuery"], js: ["jQuery-ui.js"]})
//else
// var page="alg_show_ruimtefunctie.asp?srtruimte_lg_key=" + srtruimte_lg_key ;
IFRAMER("algrfFrame", page, { title: L("lcl_prs_dienst_frame"),
IFRAMER("prsFrame", page, { title: L("lcl_prs_dienst_frame"),
initHeight: "450px",
FcltClose: "algClose" } );
%>

View File

@@ -13,7 +13,7 @@
Note:
*/
var JSON_Result = true;
DOCTYPE_Disable = 1;
%>
<!--#include file="../Shared/common.inc"-->
<!--#include file="../Shared/json2.js" -->

View File

@@ -48,7 +48,7 @@ function ruimtefunctie_list(pautfunction, params)
var subject = "<%=L("lcl_estate_ruimte_man_sort")%>" + ' ' + algData.oms;
var url = "alg_ruimtefunctie.asp?srtruimte_lg_key=" + srtruimte_lg_key;
FcltMgr.openModalDetail(url, subject, { width: 650, callback: FcltMgr.reload });
FcltMgr.openModalDetail(url, subject, { width: 700, callback: FcltMgr.reload });
}
function ruimtefunctie_delete(row, isMulti)

View File

@@ -1,72 +0,0 @@
<%@language = "javascript"%>
<% /*
$Revision$
$Id$
File: alg_ruimteresscope.asp
Description: Laat een ruimtes x res_catalogus kiezen bulk kiezen
Parameters: ruimte_keys: komma separated lijst met alg_ruimte_keys
Context:
Note:
k
*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="alg.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery"]
});
user.checkAutorisation('WEB_RESMSU');
var ruimte_key_arr = getQParamIntArray("ruimte_keys");
%>
<html>
<head>
<% FCLTHeader.Generate(); %>
<script>
function alg_submit(scopemode)
{
if ($('select#objcatmulti option:selected').length == 0)
return;
if (!confirm(L(scopemode=="A"?"lcl_add":"lcl_delete") + "\n" + L("lcl_R_U_sure")))
return;
$('input#scopemode').val(scopemode);
$.post($("form[name=u2]")[0].action, $("[name=u2]").serialize(), FcltCallbackClose, "json");;
}
</script>
</head>
<body class="modal" id="mod_ruimteresscope">
<form name="u2" method="post" action="alg_ruimteresscope_save.asp?ruimte_keys=<%=ruimte_key_arr.join(",")%>">
<input type='hidden' name='scopemode' id='scopemode'>
<% BLOCK_START("alg_ruimteresscope", L("lcl_alg_geselecteerde_ruimten") + ": " + ruimte_key_arr.length);
var sql = "SELECT rd.ins_discipline_key"
+ ", "+ lcl.xsql('rd.ins_discipline_omschrijving','rd.ins_discipline_key') +" omschrijving"
+ " FROM res_v_aanwezigdiscipline rd"
+ " WHERE rd.ins_discipline_min_level = 2"
+ " ORDER BY ins_discipline_volgnr, 2";
FCLTselector("objcatmulti",
sql,
{
label: L("lcl_res_objcat"),
size: 10,
multi: true,
startmulti: true
});
BLOCK_END();
var buttons = [ {title: L("lcl_add"), action: "alg_submit('A')" },
{title: L("lcl_delete"), action: "alg_submit('D')" },
{title: L("lcl_cancel"), action: "gen_cancel()"} ];
CreateButtons(buttons);
IFACE.FORM_END();
%>
</form>
</body>
</html>

View File

@@ -1,59 +0,0 @@
<%@language = "javascript" %>
<% /*
$Revision$
$Id$
SUBMIT-form
*/ %>
<%
var JSON_Result = true;
%>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../API2/api2.inc" -->
<!-- #include file="../Shared/json2.js" -->
<%
protectRequest.validateToken();
user.checkAutorisation('WEB_RESMSU');
var ruimte_key_arr = getQParamIntArray("ruimte_keys");
var scope_key_arr = getFParamIntArray("objcatmulti");
var scopemode = getFParamSafe("scopemode"); // A=Add, D=Delete
var toaster;
if (scopemode == 'A')
{
var sql = "INSERT INTO res_srtartikel_onrgoed"
+ " (alg_onrgoed_niveau, alg_onrgoed_key, res_discipline_key)"
+ " SELECT 'R', alg_ruimte_key, ins_discipline_key"
+ " FROM alg_ruimte,"
+ " res_discipline"
+ " WHERE alg_ruimte_key IN ({0})".format(ruimte_key_arr.join(", "))
+ " AND ins_discipline_key IN ({0})".format(scope_key_arr.join(", "))
+ " AND NOT EXISTS ("
+ " SELECT 1 FROM res_srtartikel_onrgoed"
+ " WHERE res_srtartikel_og_verwijder IS NULL"
+ " AND alg_onrgoed_niveau = 'R'"
+ " AND alg_onrgoed_key = alg_ruimte_key"
+ " AND res_discipline_key = ins_discipline_key"
+ " )";
Oracle.Execute(sql);
//var toaster = L("lcl_scf_is_added").format(L("res_srtartikel_onrgoed_m"));
}
else if (scopemode == 'D')
{
var sql = "UPDATE res_srtartikel_onrgoed"
+ " SET res_srtartikel_og_verwijder = SYSDATE"
+ " WHERE res_srtartikel_og_verwijder IS NULL"
+ " AND alg_onrgoed_niveau = 'R'"
+ " AND alg_onrgoed_key IN ({0})".format(ruimte_key_arr.join(", "))
+ " AND res_discipline_key IN ({0})".format(scope_key_arr.join(", "));
Oracle.Execute(sql);
var toaster = L("lcl_scf_is_deleted").format(L("res_srtartikel_onrgoed_m"));
}
var result = { toaster: toaster,
success: true };
Response.Write(JSON.stringify(result));
%>

View File

@@ -68,8 +68,8 @@ var authparams = alg.checkAutorisation();
%>
</table>
</td><!-- end column 1 -->
<td class="searchkolom2"><input type="hidden" name="noref" value="1"><input type="hidden" name="chkgeb" value="1">
</td><!-- end column 1 -->
<td class="searchkolom2"><input type="hidden" name="noref" value="1">
</td><!-- end column 1 -->
</tr>
</form>
<% BLOCK_END();
@@ -81,7 +81,7 @@ var authparams = alg.checkAutorisation();
{title: L("lcl_menu_alg_ruimte"), action: "doSubmit('R')"},
{title: L("lcl_menu_alg_terreinsector"), action: "doSubmit('T')"}
];
CreateButtons(buttons, { entersubmit: true });
CreateButtons(buttons);
%></div> <!-- search -->
<div id="result">

View File

@@ -81,7 +81,7 @@ oRs.Close();
}
%>
<form name=u2 onSubmit="return false;">
<% BLOCK_START("algInfo", "&nbsp;");
<% BLOCK_START("algInfo", "");
FCLTplaatsselector(-1,
{ regiokey: reg_key,
districtkey: dis_key,

View File

@@ -16,7 +16,6 @@
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<!-- #include file="../Shared/persoonselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<!-- #include file="alg.inc" -->
@@ -33,32 +32,29 @@ var sql = " SELECT * "
+ " FROM alg_gebouw "
+ " WHERE alg_gebouw_key = " + bld_key;
var oRs = Oracle.Execute(sql);
var bld_srtkey = oRs("alg_srtgebouw_key").Value;
var bld_naam = oRs("alg_gebouw_naam").Value;
var bld_code = oRs("alg_gebouw_code").Value;
var bld_descr = oRs("alg_gebouw_omschrijving").Value;
var bld_maak = oRs("alg_gebouw_aanmaak").Value;
var bld_email = oRs("alg_gebouw_email").Value;
var bld_teken = oRs("alg_gebouw_getekend").Value;
var bld_opp = oRs("alg_gebouw_bruto_vloeropp").Value;
var bld_omtrek = oRs("alg_gebouw_omtrek").Value;
var bld_inhoud = oRs("alg_gebouw_inhoud").Value;
var bld_opmerk = oRs("alg_gebouw_opmerking").Value;
var mld_adres = oRs("mld_adres_key").Value;
var prs_kstpl = oRs("prs_kostenplaats_key").Value;
var bld_ordrnr = oRs("alg_gebouw_ordernr").Value;
var bld_dwgx = oRs("alg_gebouw_dwgx").Value;
var bld_dwgy = oRs("alg_gebouw_dwgy").Value;
var bld_x = oRs("alg_gebouw_x").Value;
var bld_y = oRs("alg_gebouw_y").Value;
var bld_bez = oRs("alg_gebouw_bez").Value;
var bld_deleted = oRs("alg_gebouw_verwijder").Value != null;
var dienstniveau = oRs("mld_dienstniveau_key").Value;
var beginuur = oRs("alg_gebouw_beginuur").Value;
var einduur = oRs("alg_gebouw_einduur").Value;
var werkdagen = oRs("alg_gebouw_werkdagen").Value;
var verantw = oRs("prs_perslid_key_verantw").Value;
var vervaldatum = oRs("alg_gebouw_vervaldatum").Value;
var bld_srtkey = oRs("alg_srtgebouw_key").value;
var bld_naam = oRs("alg_gebouw_naam").value;
var bld_code = oRs("alg_gebouw_code").value;
var bld_descr = oRs("alg_gebouw_omschrijving").value;
var bld_maak = oRs("alg_gebouw_aanmaak").value;
var bld_teken = oRs("alg_gebouw_getekend").value;
var bld_opp = oRs("alg_gebouw_bruto_vloeropp").value;
var bld_omtrek = oRs("alg_gebouw_omtrek").value;
var bld_inhoud = oRs("alg_gebouw_inhoud").value;
var bld_opmerk = oRs("alg_gebouw_opmerking").value;
var mld_adres = oRs("mld_adres_key").value;
var prs_kstpl = oRs("prs_kostenplaats_key").value;
var bld_ordrnr = oRs("alg_gebouw_ordernr").value;
var bld_dwgx = oRs("alg_gebouw_dwgx").value;
var bld_dwgy = oRs("alg_gebouw_dwgy").value;
var bld_x = oRs("alg_gebouw_x").value;
var bld_y = oRs("alg_gebouw_y").value;
var bld_bez = oRs("alg_gebouw_bez").value;
var bld_deleted = oRs("alg_gebouw_verwijder").value != null;
var dienstniveau = oRs("mld_dienstniveau_key").value;
var beginuur = oRs("alg_gebouw_beginuur").value;
var einduur = oRs("alg_gebouw_einduur").value;
var werkdagen = oRs("alg_gebouw_werkdagen").value;
oRs.Close();
%>
@@ -85,26 +81,11 @@ oRs.Close();
"json");
}
}
<% if (S("alg_fg_remote_maps") != "" && bld_x && bld_y) { %>
function openMaps(bldKey)
{
fwnd = window.open('../cad/ShowGoogleMap.asp?bld_key=' + bldKey, 'FGShow',
"width=640, height=480, directories=no, location=no, menubar=no,"
+ "resizable=yes, status=no, titlebar=yes, toolbar=no");
fwnd.focus()
return;
}
<% } %>
</script>
</head>
<body id="showbody">
<% var buttons = [];
if (S("alg_fg_remote_maps") != "" && bld_x && bld_y) {
buttons.push({title: L("lcl_maps"), action:"openMaps("+bld_key+")", icon: "map.png" });
}
if (!bld_deleted)
{
if (this_alg.writeman || this_alg.writeuse)
@@ -123,102 +104,78 @@ oRs.Close();
%>
<div id="show">
<form name=u2 onSubmit="return false;">
<% BLOCK_START("algLoc1", "&nbsp;");
<% BLOCK_START("algLoc1", "");
FCLTplaatsselector(-1,
{ gebouwkey: bld_key,
startlevel: 2, //Locatie
eindlevel: 3, // Gebouw
readonly: true
});
sql = "SELECT alg_srtgebouw_key"
+ " , " + lcl.xsqla('alg_srtgebouw_omschrijving', 'alg_srtgebouw_key')
+ " FROM alg_srtgebouw"
+ " WHERE alg_srtgebouw_verwijder IS NULL"
+ " ORDER BY alg_srtgebouw_upper"
FCLTselector("bld_srtkey",
sql,
readonly: true });
sql = "SELECT alg_srtgebouw_key, "
+ " "+lcl.xsqla('alg_srtgebouw_omschrijving', 'alg_srtgebouw_key')
+ " FROM alg_srtgebouw "
+ " WHERE alg_srtgebouw_verwijder IS NULL "
+ "ORDER BY alg_srtgebouw_upper "
FCLTselector("bld_srtkey", sql,
{ label: L("lcl_estate_gebouw_srtgebouw"),
initKey: bld_srtkey,
emptyOption: "",
suppressEmpty: true,
readonly: true
});
readonly: true });
ROFIELDTR("fld", L("lcl_estate_gebouw_man_code"), bld_code, {suppressEmpty:true});
ROFIELDTR("fld", L("lcl_estate_gebouw_man_opmerk"), bld_opmerk, {suppressEmpty:true});
sql = "SELECT prs_kostenplaats_key"
+ " , k.prs_kostenplaats_nr || ' ' || k.prs_kostenplaats_omschrijving"
+ " FROM prs_kostenplaats k"
+ " WHERE k.prs_kostenplaats_module = 'ALG'"
+ " ORDER BY prs_kostenplaats_upper";
FCLTselector("prs_kstpl",
sql,
{ label: L("lcl_prs_dept_kosten"),
initKey: prs_kstpl,
emptyOption: "",
suppressEmpty: true,
readonly: true
});
sql = "SELECT prs_kostenplaats_key, "
+ " k.prs_kostenplaats_nr || ' ' || k.prs_kostenplaats_omschrijving "
+ " FROM prs_kostenplaats k "
+ " WHERE k.prs_kostenplaats_module = 'ALG' "
+ "ORDER BY prs_kostenplaats_upper ";
FCLTselector("prs_kstpl", sql,
{ label: L("lcl_prs_dept_kosten"),
initKey: prs_kstpl,
emptyOption: "",
readonly: true });
ROFIELDTR("fld", L("lcl_estate_gebouw_ordernr"), bld_ordrnr, {suppressEmpty:true});
if (dienstniveau)
{
sql = "SELECT mld_dienstniveau_key"
+ " , " + lcl.xsqla("mld_dienstniveau_omschr", "mld_dienstniveau_key")
+ " FROM mld_dienstniveau"
+ " WHERE mld_dienstniveau_key = " + dienstniveau;
oRs = Oracle.Execute(sql);
ROFIELDTR("fld", L("lcl_mld_dienst_niveau"), oRs("mld_dienstniveau_omschr").value);
oRs.Close();
sql = "SELECT mld_dienstniveau_key, "
+ lcl.xsqla("mld_dienstniveau_omschr", "mld_dienstniveau_key")
+ " FROM mld_dienstniveau "
+ " WHERE mld_dienstniveau_key = " + dienstniveau;
oRs = Oracle.Execute(sql);
ROFIELDTR("fld", L("lcl_mld_dienst_niveau"), oRs("mld_dienstniveau_omschr").value);
oRs.Close();
}
FCLTpersoonselector("verantw",
"sgVerantw",
{ perslidKey: verantw,
label: L("lcl_alg_verantw"),
readonly: true,
suppressEmpty: true,
moreinfo: this_alg.readman
});
AFIELDTR('fldmailto details', L("lcl_alg_gebouw_email"), "mailto:" + bld_email, bld_email, { suppressEmpty: true });
BLOCK_END();
BLOCK_START("algLoc2", "&nbsp;");
var calcopp = alg.calc_algm2(bld_key, onrgoedlvl);
ROFIELDTR("fld", L("lcl_estate_ruimte_bruto_vloeropp") + L("lcl_estate_calc_vloeropp"), calcopp.oppbruto, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_ruimte_opp_alt1") + L("lcl_estate_calc_vloeropp"), calcopp.oppalt1, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_ruimte_opp_alt2") + L("lcl_estate_calc_vloeropp"), calcopp.oppalt2, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_gebouw_man_bruto_vloeropp"), bld_opp, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_gebouw_man_omtrek"), bld_omtrek, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_gebouw_man_inhoud"), bld_inhoud, {suppressEmpty: true});
sql = "SELECT mld_adres_key"
+ " , mld_adres_naam"
+ " FROM mld_v_afleveradres"
+ " ORDER BY mld_adres_naam";
FCLTselector("del_address",
sql,
{ label: L("lcl_delivery_address"),
initKey: mld_adres,
emptyOption: "",
readonly: true,
suppressEmpty: true
});
BLOCK_START("algLoc2", "");
ROFIELDTR("fld", L("lcl_estate_gebouw_man_bruto_vloeropp"), bld_opp, {suppressEmpty:true});
ROFIELDTR("fld", L("lcl_estate_gebouw_man_omtrek"), bld_omtrek, {suppressEmpty:true});
ROFIELDTR("fld", L("lcl_estate_gebouw_man_inhoud"), bld_inhoud, {suppressEmpty:true});
sql ="SELECT mld_adres_key, "
+ " mld_adres_naam "
+ " FROM mld_v_afleveradres "
+ "ORDER BY mld_adres_naam ";
FCLTselector("del_address", sql,
{ label: L("lcl_delivery_address"),
initKey: mld_adres,
emptyOption: "",
readonly: true
}
);
ROFIELDTR("fld", L("lcl_geoxcoord"), bld_x, {suppressEmpty:true});
ROFIELDTR("fld", L("lcl_geoycoord"), bld_y, {suppressEmpty:true});
var fldcls = "fld";
if (vervaldatum <= new Date())
fldcls += " expired2";
ROFIELDTR(fldcls, L("lcl_alg_vervaldatum"), toDateString(vervaldatum), {suppressEmpty: true});
ROCHECKBOXTR("fldalgbez", L("lcl_estate_gebouw_bez"), bld_bez==1);
ROFIELDTR("fld", L("lcl_estate_gebouw_beginuur"), toTimeString(beginuur), {suppressEmpty:true} );
ROFIELDTR("fld", L("lcl_estate_gebouw_einduur"), toTimeString(einduur), {suppressEmpty:true} );
ROCHECKBOXTR("fldalgwerk", L("lcl_estate_gebouw_werkdagen"), werkdagen==1);
BLOCK_END();
generateFlexKenmerkBlock ({ onrgoed_key : bld_key,
onrgoed_niveau : onrgoedlvl,
reado : true,
flexcolumns : S("alg_flexcolumns"),
this_alg : this_alg
});
onrgoed_niveau : onrgoedlvl,
reado : true,
flexcolumns : S("alg_flexcolumns"),
this_alg : this_alg });
%>
</form>
</div>

View File

@@ -60,7 +60,7 @@ oRs.Close();
function alg_showphotos()
{
FcltMgr.openDetail("appl/shared/show_foto.asp?urole=bo&loc_key=<%=loc_key%>", "<%=L("lcl_photos")%>");
FcltMgr.openDetail("appl/shared/show_foto.asp?urole=bo&root_path=<%=custpath%>/location_images/&loc_key=<%=loc_key%>", "<%=L("lcl_photos")%>");
}
function loc_change()
@@ -83,27 +83,12 @@ oRs.Close();
"json");
}
}
<% if (S("alg_fg_remote_maps") != "" && loc_x && loc_y) { %>
function openMaps(locKey)
{
fwnd = window.open('../cad/ShowGoogleMap.asp?loc_key=' + locKey, 'FGShow',
"width=640, height=480, directories=no, location=no, menubar=no,"
+ "resizable=yes, status=no, titlebar=yes, toolbar=no");
fwnd.focus()
return;
}
<% } %>
</script>
</head>
<body id="showbody">
<% var buttons = [];
buttons.push({title: L("lcl_photos"), icon: "camera.png", action: "alg_showphotos()"});
if (S("alg_fg_remote_maps") != "" && loc_x && loc_y) {
buttons.push({title: L("lcl_maps"), action:"openMaps("+loc_key+")", icon: "map.png" });
}
if (!loc_deleted)
{
if (this_alg.writeman || this_alg.writeuse)
@@ -121,7 +106,7 @@ oRs.Close();
}
%>
<form name=u2 onSubmit="return false;">
<% BLOCK_START("algLoc1", "&nbsp;");
<% BLOCK_START("algLoc1", "");
FCLTplaatsselector(-1,
{ locatiekey: loc_key,
startlevel: 1, //District
@@ -147,7 +132,7 @@ oRs.Close();
ROFIELDTR("fld", L("lcl_geoycoord"), loc_y, {suppressEmpty: true});
BLOCK_END();
BLOCK_START("algLoc2", "&nbsp;");
BLOCK_START("algLoc2", "");
ROFIELDTR("fld", L("lcl_prs_address_post_adres"), pst_adres, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_prs_address_post_postcode"), pst_postc, {suppressEmpty: true});
@@ -155,7 +140,7 @@ oRs.Close();
ROFIELDTR("fld", L("lcl_prs_address_post_land"), pst_land, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_locatie_man_verantw"), loc_vw, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_locatie_man_verantw_tel"), loc_vwtel, {suppressEmpty: true});
AFIELDTR('fldmailto details', L("lcl_noti_email"), "mailto:" + loc_mail, loc_mail, { suppressEmpty: true });
ROFIELDTR("fld", L("lcl_noti_email"), loc_mail, {suppressEmpty: true});
BLOCK_END();

View File

@@ -18,23 +18,22 @@
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<!-- #include file="../API2/api2.inc" -->
<!-- #include file="../API2/model_regions.inc" -->
<!-- #include file="alg.inc" -->
<%
FCLTHeader.Requires({plugins:["jQuery"], js: []})
var regio_key = getQParamInt("regio_key");
var onrgoedlvl = "RG";
var this_alg = alg.func_enabled(regio_key, onrgoedlvl);
user.auth_required_or_abort(this_alg.readman || this_alg.readuse);
var regio_params = { filter: { id: regio_key
, show_deleted: true // Ook indien verwijderd ophalen.
}};
var regio_array = model_regions.REST_GET(regio_params); // Roep de API2 GET aan
var regio_data = (regio_array[0] ? regio_array[0] : {id: -1}); // GET kan meerdere records opleveren, maar we verwachten hier maar 1.
var this_alg = regio_params.func_enabled; // regio_params bevat nu ook waarden die in API2 zijn bepaald.
var regio_exists = (regio_array.length ? true : false);
var regio_deleted = regio_exists && !!regio_data.deleted;
var sql = "SELECT *"
+ " FROM alg_regio"
+ " WHERE alg_regio_key = " + regio_key;
var oRs = Oracle.Execute(sql);
var reg_deleted = oRs("alg_regio_verwijder").value != null;
oRs.Close();
%>
<html>
@@ -44,19 +43,21 @@ var regio_deleted = regio_exists && !!regio_data.deleted;
function reg_change()
{
if (FcltMgr.startEdit(window))
window.location.href = "alg_edit_regio.asp?regio_key=<%=regio_data.id%>&embedded=1"
window.location.href = "alg_edit_regio.asp?regio_key=<%=regio_key%>&embedded=1"
}
function reg_delete()
{
if (confirm(L("lcl_alg_del_txt_regio")))
{
var data = { action: "D" };
<% protectRequest.dataToken("data"); %>
$.post($("form[name=u2]")[0].action,
data,
FcltCallbackClose,
"json");
var data = { key: <%=regio_key%>,
level: "RE"
};
<% protectRequest.dataToken("data"); %>
$.post("alg_delete.asp",
data,
FcltCallbackClose,
"json");
}
}
</script>
@@ -64,7 +65,7 @@ var regio_deleted = regio_exists && !!regio_data.deleted;
<body id="showbody">
<% var buttons = [];
if (!regio_deleted)
if (!reg_deleted)
{
if (this_alg.writeman || this_alg.writeuse)
buttons.push({title: L("lcl_change"), action:"reg_change()", icon: "wijzigen.png" });
@@ -75,17 +76,15 @@ var regio_deleted = regio_exists && !!regio_data.deleted;
IFRAMER_HEADER(L("lcl_alg_regio_frame"), buttons);
%>
<div id="show">
<% if (regio_deleted)
<% if (reg_deleted == 1)
{
%> <div class="alg_deleted"><%=L("lcl_record_is_deleted")%></div><%
}
%>
<form name=u2
action="alg_edit_regio_save.asp?regio_key=<%=regio_data.id%>"
onSubmit="return false">
<% BLOCK_START("algInfo", "&nbsp;");
<form name=u2 onSubmit="return false;">
<% BLOCK_START("algInfo", "");
FCLTplaatsselector(-1,
{ regiokey: regio_data.id,
{ regiokey: regio_key,
startlevel: 0, // Regio
eindlevel: 0, // Regio
readonly: true });

View File

@@ -16,59 +16,101 @@
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<!-- #include file="alg_flexkenmerk.inc" -->
<!-- #include file="../API2/api2.inc" -->
<!-- #include file="../API2/model_rooms.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="alg.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery"],
js: [] })
var room_key = getQParamInt("room_key");
var room_params = { filter: { id: room_key
, scope: "fe"
, show_deleted: true // Ook indien verwijderd ophalen.
},
include: ["cadcontours"]
};
var rooms = new model_rooms(room_key, room_params);
var room_data = rooms.data
var this_alg = room_params.func_enabled; // room_params bevat nu ook waarden die in API2 zijn bepaald.
var room_deleted = !!room_data.deleted;
if (!room_data.cadcontours.length)
room_data.cadcontours = [{}];
var room_key = getQParamInt("room_key");
var onrgoedlvl = "R";
var this_alg = alg.func_enabled(room_key, onrgoedlvl);
user.auth_required_or_abort(this_alg.readman || this_alg.readuse);
// Voorkom ellende met alg_ruimte_key ambigue gedefinieerd
var 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";
var sql = "SELECT g.alg_ruimte_key"
+ " , g.alg_ruimte_nr"
+ " , g.alg_ruimte_omschrijving"
+ " , 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"
+ " , g.alg_ruimte_verwijder"
+ " , 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;
var 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 room_deleted = oRs("alg_ruimte_verwijder").value != null;
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();
%>
<html>
<head>
<% FCLTHeader.Generate(); %>
<script type="text/javascript" >
function room_change()
{
if (FcltMgr.startEdit(window))
window.location.href = "alg_edit_ruimte.asp?room_key=<%=room_key%>"
}
function room_delete()
{
if (confirm(L("lcl_alg_del_txt_ruimte")))
{
var data = { room_action: "D" };
<% protectRequest.dataToken("data"); %>
$.post($("form[name=u2]")[0].action,
data,
FcltCallbackClose,
"json");
}
}
function openFG()
{
var url = '../cad/ShowRoom.asp?rKey=' + <%=room_key%>;
FcltMgr.openModalDetail(url, { titel: L("lcl_prs_wp_fgraph" ) + ": <%=safe.jsstring(room_data.name) %>"});
}
function room_change()
{
if (FcltMgr.startEdit(window))
window.location.href = "alg_edit_ruimte.asp?room_key=<%=room_key%>"
}
function room_delete()
{
if (confirm(L("lcl_alg_del_txt_ruimte")))
{
var data = { key: <%=room_key%>,
level: "R"
};
<% protectRequest.dataToken("data"); %>
$.post("alg_delete.asp",
data,
FcltCallbackClose,
"json");
}
}
function openFG()
{
var url = '../cad/ShowRoom.asp?rKey=' + <%=room_key%>;
FcltMgr.openModalDetail(url, { titel: L("lcl_prs_wp_fgraph" ) + ": <%=safe.jsstring(room_nr) %>"});
}
</script>
</head>
@@ -82,78 +124,95 @@ if (!room_data.cadcontours.length)
var xfunc = user.func_enabled2("CAD", { isOptional: true });
if (xfunc && xfunc.canRead("WEB_CADUSE"))
buttons.push({title: L("lcl_prs_wp_fgraph"), action:"openFG()", icon: "zone.png" });
if (this_alg.writeman) // RUIMAN nodig
if (this_alg.writeman) // ALGMAN nodig
buttons.push({title: L("lcl_delete"), action:"room_delete()", icon: "delete.png" });
}
IFRAMER_HEADER(L("lcl_alg_ruimte_frame"), buttons);
%>
<div id="show">
<%
if (room_deleted)
<% if (room_deleted)
{
%> <div class="alg_deleted"><%=L("lcl_record_is_deleted")%></div><%
}
%>
<form name=u2
action="alg_edit_ruimte_save.asp?room_key=<%=room_data.id%>"
onSubmit="return false">
<form name=u2 onSubmit="return false;">
<%
BLOCK_START("algLoc1", "&nbsp;");
BLOCK_START("algLoc1", "");
FCLTplaatsselector(-1, {
ruimtekey: room_key,
startlevel: 2, //Locatie
eindlevel: 4, //Verdieping
moreinfo: true,
readonly: true });
FCLTplaatsselector(-1, {
ruimtekey: room_key,
startlevel: 2, //Locatie
eindlevel: 4, //Verdieping
moreinfo: true,
readonly: true });
var params = { infoPointer: { Url: "appl/shared/status_info.asp?room_key=" + room_key + "&urole=bo",
Title: L("lcl_status_details") + " " + room_data.name
}
}
var params = { infoPointer: { Url: "appl/shared/status_info.asp?room_key=" + room_key + "&urole=bo",
Title: L("lcl_status_details") + " " + room_nr
}
}
ROFIELDTR("fldshort", L("lcl_estate_ruimte_man_nr"), room_data.name, params);
ROFIELDTR("fld", L("lcl_estate_ruimte_man_descr"), room_data.description);
ROFIELDTR("fld", L("lcl_estate_ruimte_man_sort"), (room_data.roomtype ? room_data.roomtype.name : ""), {suppressEmpty:true});
ROFIELDTR("fld", L("lcl_mld_dienst_niveau"), (room_data.servicelevel ? room_data.servicelevel.name : ""), {suppressEmpty:true});
ROFIELDTR("fldshort", L("lcl_estate_ruimte_man_nr"), room_nr, params);
ROFIELDTR("fld", L("lcl_estate_ruimte_man_descr"), room_oms);
if (room_srt)
{
sql = "SELECT alg_srtruimte_key, "
+ lcl.xsqla("alg_srtruimte_omschrijving", "alg_srtruimte_key")
+ " FROM alg_srtruimte "
+ " WHERE alg_srtruimte_key="+room_srt ;
oRs = Oracle.Execute(sql);
ROFIELDTR("fld", L("lcl_estate_ruimte_man_sort"), oRs("alg_srtruimte_omschrijving").value);
oRs.Close();
}
if (dienstniveau)
{
sql = "SELECT mld_dienstniveau_key, "
+ lcl.xsqla("mld_dienstniveau_omschr", "mld_dienstniveau_key")
+ " FROM mld_dienstniveau "
+ " WHERE mld_dienstniveau_key = " + dienstniveau;
oRs = Oracle.Execute(sql);
ROFIELDTR("fld", L("lcl_mld_dienst_niveau"), oRs("mld_dienstniveau_omschr").value);
oRs.Close();
}
BLOCK_END();
BLOCK_START("algLoc2", "&nbsp;");
BLOCK_START("algLoc2", "");
ROFIELDTR("fldshort", L("lcl_estate_ruimte_bruto_vloeropp"), room_data.grossarea, {suppressEmpty:true});
if (room_data.grossarea != room_data.cadcontours[0].cadarea)
ROFIELDTR("fldshort", L("lcl_estate_ruimte_getekendopp"), room_data.cadcontours[0].cadarea, {suppressEmpty:true});
ROFIELDTR("fldshort", L("lcl_estate_ruimte_opp_alt1"), room_data.area1, {suppressEmpty:true});
if (room_data.area1 != room_data.cadcontours[0].cadalt1)
ROFIELDTR("fldshort", L("lcl_fg_tek_room_opp_g_alt1"), room_data.cadcontours[0].cadalt1, {suppressEmpty:true});
ROFIELDTR("fldshort", L("lcl_estate_ruimte_opp_alt2"), room_data.area2, {suppressEmpty:true});
if (room_data.area2 != room_data.cadcontours[0].cadalt2)
ROFIELDTR("fldshort", L("lcl_fg_tek_room_opp_g_alt2"), room_data.cadcontours[0].cadalt2, {suppressEmpty:true});
ROFIELDTR("fldshort", L("lcl_estate_ruimte_man_omtrek"), room_data.perimeter, {suppressEmpty:true});
ROFIELDTR("fldshort", L("lcl_estate_ruimte_man_inhoud"), room_data.volume, {suppressEmpty:true});
ROFIELDTR("fld", L("lcl_estate_ruimte_man_opmerk"), room_data.remark, {suppressEmpty:true});
ROFIELDTR("fldshort", L("lcl_estate_ruimte_bruto_vloeropp"), room_opp, {suppressEmpty:true});
if (room_opp != contour_opp)
ROFIELDTR("fldshort", L("lcl_estate_ruimte_getekendopp"), contour_opp, {suppressEmpty:true});
ROFIELDTR("fldshort", L("lcl_estate_ruimte_opp_alt1"), room_oppa1, {suppressEmpty:true});
if (room_oppa1 != contour_opp1)
ROFIELDTR("fldshort", L("lcl_fg_tek_room_opp_g_alt1"), contour_opp1, {suppressEmpty:true});
ROFIELDTR("fldshort", L("lcl_estate_ruimte_opp_alt2"), room_oppa2, {suppressEmpty:true});
if (room_oppa2 != contour_opp2)
ROFIELDTR("fldshort", L("lcl_fg_tek_room_opp_g_alt2"), contour_opp2, {suppressEmpty:true});
ROFIELDTR("fldshort", L("lcl_estate_ruimte_man_omtrek"), room_omt, {suppressEmpty:true});
ROFIELDTR("fldshort", L("lcl_estate_ruimte_man_inhoud"), room_inh, {suppressEmpty:true});
ROFIELDTR("fld", L("lcl_estate_ruimte_man_opmerk"), room_opm, {suppressEmpty:true});
ROFIELDTR("fld", L("lcl_estate_gebouw_beginuur"), toTimeString(room_data.openfrom), {suppressEmpty:true});
ROFIELDTR("fld", L("lcl_estate_gebouw_einduur"), room_data.opento==24?"24:00":toTimeString(room_data.opento), {suppressEmpty:true});
ROFIELDTR("fld", L("lcl_estate_gebouw_beginuur"), toTimeString(beginuur), {suppressEmpty:true} );
ROFIELDTR("fld", L("lcl_estate_gebouw_einduur"), toTimeString(einduur), {suppressEmpty:true} );
switch (room_data.workdays)
{
case 0: werkdagentekst = L("lcl_No"); break;
case 1: werkdagentekst = L("lcl_Yes"); break;
default: werkdagentekst = L("lcl_alg_ruimte_volgens_gebouw");
}
ROFIELDTR("fld", L("lcl_estate_gebouw_werkdagen"), werkdagentekst);
switch (werkdagen)
{
case 0: werkdagentekst = L("lcl_No"); break;
case 1: werkdagentekst = L("lcl_Yes"); break;
default: werkdagentekst = L("lcl_alg_ruimte_volgens_gebouw");
}
ROFIELDTR("fld", L("lcl_estate_gebouw_werkdagen"), werkdagentekst);
BLOCK_END();
generateFlexKenmerkBlock ({
onrgoed_key : room_key,
onrgoed_niveau : rooms.defaults.onrgoedlvl,
reado : true,
flexcolumns : S("alg_flexcolumns"),
this_alg : this_alg
});
onrgoed_key : room_key,
onrgoed_niveau : onrgoedlvl,
reado : true,
flexcolumns : S("alg_flexcolumns"),
this_alg : this_alg
});
%>
</form>
</div>

View File

@@ -25,7 +25,7 @@ FCLTHeader.Requires({ plugins: ["jQuery"],
var ter_key = getQParamInt("ter_key");
var onrgoedlvl = "T";
var this_alg = alg.func_enabled(ter_key, onrgoedlvl);
var this_alg = alg.func_enabled(loc_key, onrgoedlvl);
user.auth_required_or_abort(this_alg.readman || this_alg.readuse);
var sql = "SELECT ts.alg_locatie_key"
@@ -131,14 +131,14 @@ oRs.Close();
readonly: true
});
ROFIELDTR("fld", L("lcl_estate_terreinsector_man_sort"), ter_sroms, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_terreinsector_man_sort"), ter_sroms);
ROFIELDTR("fld", L("lcl_estate_terreinsector_man_code"), ter_code);
ROFIELDTR("fld", L("lcl_estate_terreinsector_man_name"), ter_naam);
ROFIELDTR("fld", L("lcl_prs_dept_kosten"), prs_kstpl, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_prs_dept_kosten"), prs_kstpl);
ROFIELDTR("fld", L("lcl_dep_name_level2"), prs_afd);
ROFIELDTR("fld", L("lcl_estate_terreinsector_ordernr"), ter_ordnr, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_terreinsector_man_oppervlak"), ter_opp, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_terreinsector_man_omtrek"), ter_omt, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_terreinsector_ordernr"), ter_ordnr);
ROFIELDTR("fld", L("lcl_estate_terreinsector_man_oppervlak"), ter_opp);
ROFIELDTR("fld", L("lcl_estate_terreinsector_man_omtrek"), ter_omt);
BLOCK_END();

View File

@@ -86,7 +86,7 @@ oRs.Close();
}
%>
<form name=u2 onSubmit="return false;">
<% BLOCK_START("algLoc1", "&nbsp;");
<% BLOCK_START("algLoc1", "");
FCLTplaatsselector(-1, {
verdiepingkey: flr_key,
startlevel: 2, //locatie
@@ -104,14 +104,7 @@ oRs.Close();
oRs = Oracle.Execute(sql);
ROFIELDTR("fld", L("lcl_mld_dienst_niveau"), oRs("mld_dienstniveau_omschr").value);
oRs.Close();
}
BLOCK_END();
BLOCK_START("algLoc2", "&nbsp;");
var calcopp = alg.calc_algm2(flr_key, onrgoedlvl);
ROFIELDTR("fld", L("lcl_estate_ruimte_bruto_vloeropp") + L("lcl_estate_calc_vloeropp"), calcopp.oppbruto, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_ruimte_opp_alt1") + L("lcl_estate_calc_vloeropp"), calcopp.oppalt1, {suppressEmpty: true});
ROFIELDTR("fld", L("lcl_estate_ruimte_opp_alt2") + L("lcl_estate_calc_vloeropp"), calcopp.oppalt2, {suppressEmpty: true});
}
BLOCK_END();
generateFlexKenmerkBlock ({

View File

@@ -75,7 +75,7 @@ var wp_typ_str = (wp_type == 1 ? L("lcl_wptype_1") : L("lcl_wptype_0"));
<body id="showbody">
<% var buttons = [];
if (alg.canWriteRuimte(room_key, authparams.rmALGwritelevel)) // ALGUSE schrijfrechten nodig
if (alg.canWriteRuimte(room_key, authparams.uALGwritelevel)) // ALGUSE schrijfrechten nodig
{
var buttons = [ {title: L("lcl_change"), action:"wp_change()", icon: "wijzigen.png" },
{title: L("lcl_delete"), action:"wp_delete()", icon: "delete.png" } ];

View File

@@ -1,335 +0,0 @@
<%@language = "javascript" %>
<% /*
$Revision$
$Id$
File: alg_srtruimte.asp
Description: Wijzigen van srtruimte gegevens
Parameters:
Context:
*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/save2db.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/disciplineselector.inc" -->
<!-- #include file="../Shared/stdmeldingselector.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<%
FCLTHeader.Requires({js: ["jquery-ui.js"]});
var srtruimte_key = getQParamInt("alg_srtruimte_key", -1); // default is nieuwe
var mode = getQParam("mode", "show");
if (srtruimte_key == -1 && mode == "show")
mode = "new";
var authparams = user.checkAutorisation("WEB_ALGMSU");
var srtr_info = {};
if (srtruimte_key > 0)
{ // bestaande ruimtesoort
var sql = "SELECT r.alg_srtruimte_key"
+ " , r.alg_srtruimte_omschrijving"
+ " , r.alg_srtruimte_prijs"
+ " , r.alg_srtruimte_prijs2"
+ " , r.alg_srtruimte_prijs3"
+ " , r.alg_srtruimte_prijs4"
+ " , r.alg_srtruimte_prijs5"
+ " , r.alg_srtruimte_code"
+ " , r.prs_bevat_werkplek"
+ " , r.prs_verhuurbaar"
+ " , r.alg_srtruimte_t_uitvoertijd.tijdsduur uitvoertijd_t"
+ " , r.alg_srtruimte_t_uitvoertijd.eenheid uitvoertijd_e"
+ " , r.alg_srtruimte_verwijder"
+ " FROM alg_srtruimte r"
+ " WHERE alg_srtruimte_key = " + srtruimte_key;
oRs = Oracle.Execute(sql);
if (!oRs.eof)
{
var srtr_info = { alg_srtruimte_omschrijving: oRs("alg_srtruimte_omschrijving").Value,
alg_srtruimte_prijs: oRs("alg_srtruimte_prijs").Value,
alg_srtruimte_prijs2: oRs("alg_srtruimte_prijs2").Value,
alg_srtruimte_prijs3: oRs("alg_srtruimte_prijs3").Value,
alg_srtruimte_prijs4: oRs("alg_srtruimte_prijs4").Value,
alg_srtruimte_prijs5: oRs("alg_srtruimte_prijs5").Value,
alg_srtruimte_code: oRs("alg_srtruimte_code").Value,
prs_bevat_werkplek: oRs("prs_bevat_werkplek").Value,
prs_verhuurbaar: oRs("prs_verhuurbaar").Value,
tijd_uitvoertijd: oRs("uitvoertijd_t").Value,
eenh_uitvoertijd: oRs("uitvoertijd_e").Value
};
var srtruimte_deleted = oRs("alg_srtruimte_verwijder").value != null;
}
oRs.close();
}
else
{ // nieuwe ruimtesoort
var srtr_info = { alg_srtruimte_omschrijving: "",
alg_srtruimte_code: "",
tijd_uitvoertijd: null,
eenh_uitvoertijd: null
};
}
%>
<html>
<head>
<%
FCLTHeader.Generate();
if (mode == "save")
{
var fields = [ { dbs: "alg_srtruimte_omschrijving", typ: "varchar", frm: "omschrijving" },
{ dbs: "alg_srtruimte_prijs", typ: "float", frm: "prijs" },
{ dbs: "alg_srtruimte_prijs2", typ: "float", frm: "prijs2" },
{ dbs: "alg_srtruimte_prijs3", typ: "float", frm: "prijs3" },
{ dbs: "alg_srtruimte_prijs4", typ: "float", frm: "prijs4" },
{ dbs: "alg_srtruimte_prijs5", typ: "float", frm: "prijs5" },
{ dbs: "alg_srtruimte_code", typ: "varchar", frm: "code" },
{ dbs: "prs_bevat_werkplek", typ: "check", frm: "bevatwerkplek" },
{ dbs: "prs_verhuurbaar", typ: "check", frm: "verhuurbaar" }
];
// Checken of het eenheden selectveld met dagen/uren bij "Uitvoertijd" niet readonly was en wel is meegegeven.
// Als dit eenheden selectieveld readonly was dan is er geen waarde voor uitvoertijd ingevuld en moeten beide waarden null worden.
fields = shared.add_time_field(fields, "alg_srtruimte_t_uitvoertijd", "uitvoertijd", "dayshours_urg");
// Update, delete of insert uitvoeren.
if (srtruimte_key > 0)
{
var sql = buildUpdate("alg_srtruimte", fields)
+ " alg_srtruimte_key = " + srtruimte_key;
var err = Oracle.Execute(sql, true);
}
else
{
fields.push( { dbs: "alg_srtruimte_key", typ: "key", seq: "alg_s_alg_srtruimte_key" } );
var algIns = buildInsert("alg_srtruimte", fields);
var alg_srtruimte_key = algIns.sequences["alg_srtruimte_key"];
var err = Oracle.Execute(algIns.sql, true);
srtruimte_key = alg_srtruimte_key;
}
if (err.friendlyMsg)
{
%>
<script>
alert("<%=safe.jsstring(err.friendlyMsg)%>");
</script>
<%
}
else
{
%>
<script>
$(document).ready(function () {parent.window.location.href="alg_srtruimte.asp?mode=show&alg_srtruimte_key=<%=srtruimte_key%>";} );
</script>
<%
}
Response.End;
}
else if (srtruimte_key > 0 && mode == "delete")
{
var sql = "UPDATE alg_srtruimte"
+ " SET alg_srtruimte_verwijder = SYSDATE"
+ " WHERE alg_srtruimte_verwijder IS NULL"
+ " AND alg_srtruimte_key = " + srtruimte_key;
var err = Oracle.Execute(sql, true);
%>
<script>
$(document).ready(function () {
FcltMgr.closeDetail(window, { alg_srtruimte_key: <%=srtruimte_key%>,
warning: "<%=safe.jsstring(err.friendlyMsg)%>",
keepForm: <%=err.friendlyMsg? "true" : "false"%>
});
} );
</script>
<%
Response.End;
}
%>
<script type="text/javascript" >
function alg_submit()
{
$("#verhuurbaar").prop("disabled", false); // Weer enabled zodat waarde ook gesubmit wordt.
if (!validateForm("u2"))
return false;
document.forms.u2.submit();
}
function alg_edit()
{
window.location.href = "alg_srtruimte.asp?mode=edit&alg_srtruimte_key=<%=srtruimte_key%>";
}
function alg_delete()
{
if (confirm("<%=safe.jsstring(L("lcl_R_U_sure"))%>"))
window.location.href = "alg_srtruimte.asp?mode=delete&alg_srtruimte_key=<%=srtruimte_key%>";
}
function alg_cancel()
{
if (<%=srtruimte_key%> > 0)
{
window.location.href = "alg_srtruimte.asp?mode=show&alg_srtruimte_key=<%=srtruimte_key%>";
}
else
{
FcltMgr.closeDetail(window, { cancel: true });
}
}
function alg_close(params)
{
<% if (srtruimte_key == -1)
{
%>
if (params.cancel)
{
FcltMgr.closeDetail(window, params);
return true;
}
<% }
else
{ // Bestaand ruimtesoort bewerkt, switch naar show-mode
%>
if (params.close)
{
FcltMgr.closeDetail(window, { close: true})
}
<% }
%>
if (!params.keepForm)
window.location.href = "alg_srtruimte.asp?mode=show&alg_srtruimte_key=" + params.srtruimte_key;
}
function onChangeBevatWerkplek()
{
// Als bevat_werkplek is aangevinkt, moet verhuurbaar ook aangevinkt worden (constraint ALG_C_PRS_WERKPLEK_VERHUURBAAR)
if ($("#bevatwerkplek").is(":checked"))
{
$("#verhuurbaar").prop("checked", "checked");
$("#verhuurbaar").prop("disabled", true);
}
else
{
$("#verhuurbaar").prop("disabled", false);
}
}
function onChangeUitvoertijd()
{
if (isNaN(parseFloat($("#uitvoertijd").val())))
$("#dayshours_urg").prop("disabled", true);
else
$("#dayshours_urg").prop("disabled", false);
}
jQuery(document).ready(function()
{
$('textarea').resize(function () { FcltMgr.resized(window) } );
$('textarea').autogrow();
});
</script>
</head>
<body id="<%=((mode == "show")? "showbody" : "editbody")%>">
<%
var buttons = [];
if (!srtruimte_deleted)
{
if (mode == "show")
{
buttons.push( {title: L("lcl_change"), action:"alg_edit()", icon: "wijzigen.png" } );
buttons.push( {title: L("lcl_delete"), action:"alg_delete()", icon: "delete.png" } );
}
else
{
buttons.push( {title: L("lcl_submit"), action:"alg_submit()", icon: "opslaan.png" } );
buttons.push( {title: L("lcl_cancel"), action:"alg_cancel()", icon: "undo.png" } );
}
}
IFRAMER_HEADER(L("lcl_alg_srtruimte_details"), buttons);
if (mode == "show")
{
myFIELD = function (a, b, c, d, e) { ROFIELDTR(b, c, d, e) };
myTEXTAREA = function (a, b, c, d, e) { ROTEXTAREATR(b, c, d, e) };
myCHECKBOX = function (a, b, c, d, e) { ROCHECKBOXTR(b, c, d, e) };
}
else
{
myFIELD = RWFIELDTR;
myTEXTAREA = RWTEXTAREATR;
myCHECKBOX = RWCHECKBOXTR;
}
if (srtruimte_deleted)
{
%> <div class="alg_deleted"><%=L("lcl_record_is_deleted")%></div><%
}
%>
<div id="show">
<form name="u2"
action="alg_srtruimte.asp?mode=save&alg_srtruimte_key=<%=srtruimte_key%>"
method="post"
target="hidFrameSubmit"
onSubmit="alg_submit()">
<%
BLOCK_START("algInfo", safe.html(L("lcl_general_properties")));
ROFIELDTR( "fld", L("lcl_key"), srtruimte_key);
myFIELD("omschrijving", "fld", L("lcl_descr"), srtr_info.alg_srtruimte_omschrijving, { translate: {fld: "mld_afmeldtekst_naam", key: srtruimte_key} });
myFIELD("prijs", "fld", L("lcl_alg_alg_tarief")+" (m2)", safe.editablefloat(srtr_info.alg_srtruimte_prijs), {datatype: "float", suppressEmpty: true} );
myFIELD("prijs2", "fld", L("lcl_alg_alg_tariefA")+" (m2)", safe.editablefloat(srtr_info.alg_srtruimte_prijs2), {datatype: "float", suppressEmpty: true} );
myFIELD("prijs3", "fld", L("lcl_alg_alg_tariefB")+" (m2)", safe.editablefloat(srtr_info.alg_srtruimte_prijs3), {datatype: "float", suppressEmpty: true} );
myFIELD("prijs4", "fld", L("lcl_alg_alg_tariefC")+" (m2)", safe.editablefloat(srtr_info.alg_srtruimte_prijs4), {datatype: "float", suppressEmpty: true} );
myFIELD("prijs5", "fld", L("lcl_alg_alg_tariefD")+" (m2)", safe.editablefloat(srtr_info.alg_srtruimte_prijs5), {datatype: "float", suppressEmpty: true} );
myFIELD("code", "fld", L("lcl_alg_srtruimte_code"), srtr_info.alg_srtruimte_code);
myCHECKBOX("bevatwerkplek", "fldcheck", L("lcl_prs_has_workplace"), srtr_info.prs_bevat_werkplek, {html: "onChange='onChangeBevatWerkplek();'"});
myCHECKBOX("verhuurbaar", "fldcheck", L("lcl_prs_rentable"), srtr_info.prs_verhuurbaar);
sql = "SELECT 'U', " + safe.quoted_sql(L("lcl_mld_hours")) + " FROM DUAL"
+ " UNION "
+ "SELECT 'D', " + safe.quoted_sql(L("lcl_mld_days")) + " FROM DUAL"
+ " ORDER BY 2";
var selectparams = { fieldName: "dayshours_urg",
sql: sql,
params: { id: "dayshours_urg",
initKey: srtr_info.eenh_uitvoertijd,
readonly: (mode == "show"),
disable: !srtr_info.tijd_uitvoertijd
}
}
myFIELD("uitvoertijd", "fldalg_uitvtijd", L("lcl_mld_stduitvoertijd"), srtr_info.tijd_uitvoertijd? Math.round(srtr_info.tijd_uitvoertijd * 100) / 100 : ""
, {maxlength: 4, datatype: "float", html: "onChange='onChangeUitvoertijd();'", suppressEmpty: true, selector: selectparams});
BLOCK_END();
IFACE.FORM_END();
if (srtruimte_key > -1 && (user.checkAutorisation("WEB_MLDMGT", true)))
{ // 2. De overruling van de SLA (acceptatietijd en uitvoertijd)
page = "../mld/mld_stdmsrtruimte_search_list.asp?embedded=1&srtruimte_key=" + srtruimte_key;
IFRAMER("mldstdmsrtruimte", page, { refreshOnClose: true, initHide: false } );
}
%>
</form>
</div>
<iframe src="../Shared/empty.html"
name="hidFrameSubmit"
FcltClose="alg_close"
style="display:none"></iframe>
</body>
</html>

View File

@@ -1,83 +0,0 @@
<%@ LANGUAGE = JavaScript %>
<% /*
$Revision$
$Id$
File: alg_srtruimte_search.asp
Description: Zoekscherm ruimtesoort
Parameters:
Context:
Note:
*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<%
FCLTHeader.Requires({ plugins:["jQuery"]});
var autosearch = getQParamInt("autosearch", 0) == 1;
var authparams = user.checkAutorisation("WEB_ALGMSU");
%>
<html>
<head>
<%
FCLTHeader.Generate();
%>
<script type="text/javascript">
function doSubmit()
{
document.forms.u2.submit();
}
$(document).ready(function()
{
<% if (autosearch) { %> document.forms.u2.submit();<%}%>
});
</script>
</head>
<body id="searchbody">
<div id="search">
<% BLOCK_START("searchtable", L("lcl_filterblok"));%>
<form name="u2" target="workFrame" action="alg_srtruimte_search_list.asp" method="get">
<tr>
<td class="searchkolom1">
<table><!-- x rijen, 2 kolommen: label + veld -->
<tr class="primsearch">
<td class="label"><label for="searchtext"><%=L("lcl_descr")%>:</label></td>
<td><input type="text" class="fldsrch wildcard" name="searchtext" id="searchtext"></td>
</tr>
</table>
</td><!-- end column 1 -->
<td class="searchkolom2">
<table><!-- x rijen, 2 kolommen: label + veld -->
<%
%>
</table>
</td><!-- end column 2 -->
</tr>
<% BLOCK_END();
var buttons = [ {title: L("lcl_search"), action: "doSubmit()", id: "bSearch" } ];
CreateButtons(buttons, { entersubmit: true});
%>
</form>
</div> <!-- search -->
<div id="result">
<iframe width="100%" height="100%"
src="../Shared/empty.asp"
name="workFrame" id="workFrame"
onload="FcltMgr.iframeLoaded(this)"
frameborder="0" scrolling="no">
</iframe>
</div>
</body>
</html>

View File

@@ -1,114 +0,0 @@
<%@language = "javascript" %>
<% /*
$Revision$
$Id$
File: alg_srtruimte_search_list.asp
Description: Vangt de parameters van alg_srtruimte_search op en verwerkt die tot een lijst
Parameters:
Context: Vanuit alg_srtruimte_search.asp
Note:
*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/resultset_table_v2.inc" -->
<%
var searchtext = getQParam("searchtext", null);
//var fkdmodule = getQParamSafe("fkdmodule", -1);
var outputmode = getQParamInt("outputmode", 0); // 0 = screen, 1 = print, 2 = excel etc
var showall = getQParamInt("showall", 0) == 1;
var authparams = user.checkAutorisation("WEB_ALGMSU");
%>
<html>
<head>
<%
FCLTHeader.Generate({outputmode: outputmode});
%>
<script>
function fkd_edit(row)
{
var srtruimte_key = row.getAttribute("ROWKEY");
var url = "appl/alg/alg_srtruimte.asp?alg_srtruimte_key="+srtruimte_key;
FcltMgr.openDetail(url, "<%=L("lcl_alg_srtruimte_details")%>", {callback: FcltMgr.reload } );
}
</script>
</head>
<body>
<%
var sql = "SELECT sr.alg_srtruimte_key"
+ " , sr.alg_srtruimte_omschrijving"
+ " , sr.alg_srtruimte_prijs"
+ " , sr.alg_srtruimte_prijs2"
+ " , sr.alg_srtruimte_prijs3"
+ " , sr.alg_srtruimte_prijs4"
+ " , sr.alg_srtruimte_prijs5"
+ " , sr.alg_srtruimte_code"
+ " , CASE WHEN sr.prs_bevat_werkplek = 1"
+ " THEN " + safe.quoted_sql(L("lcl_yes"))
+ " ELSE " + safe.quoted_sql(L("lcl_no"))
+ " END bevat_werkplek"
+ " , CASE WHEN sr.prs_verhuurbaar = 1"
+ " THEN " + safe.quoted_sql(L("lcl_yes"))
+ " ELSE " + safe.quoted_sql(L("lcl_no"))
+ " END verhuurbaar"
+ " , sr.alg_srtruimte_t_uitvoertijd.tijdsduur tijdsduur"
+ " , sr.alg_srtruimte_t_uitvoertijd.eenheid eenheid"
+ " FROM alg_srtruimte sr"
+ " WHERE sr.alg_srtruimte_verwijder IS NULL"
+ (searchtext
? " AND sr.alg_srtruimte_upper LIKE " + safe.quoted_sql_wild("%" + searchtext + "%")
: ""
)
+ " ORDER BY sr.alg_srtruimte_omschrijving";
function fnUitvoertijdKolom(oRs)
{
var tmp = "";
if (oRs("tijdsduur").Value)
tmp = oRs("tijdsduur").Value + " " + (oRs("eenheid").Value == "U" ? L("lcl_mld_hours") : L("lcl_mld_days"))
return tmp;
}
buttons = {};
//if (canAdd)
{
var addurl = "appl/alg/alg_srtruimte.asp?mode=edit";
buttons = [{ icon: "plus.png", title: L("lcl_add"), action: "FcltMgr.openDetail('" + addurl + "', '" + L("lcl_add") + "', {callback: FcltMgr.reload })" }]
}
var rst = new ResultsetTable({ sql: sql,
keyColumn: "alg_srtruimte_key",
ID: "algsrtruimtetable",
showAll: showall,
outputmode: outputmode,
title: L("lcl_menu_alg_ruimtefuncties"),
buttons: buttons
});
rst.addColumn(new Column({caption: "Key", content: "alg_srtruimte_key"}));
rst.addColumn(new Column({caption: L("lcl_descr"), content: "alg_srtruimte_omschrijving"}));
rst.addColumn(new Column({caption: L("lcl_alg_alg_tarief"), content: "alg_srtruimte_prijs", datatype: "currency"}));
rst.addColumn(new Column({caption: L("lcl_alg_alg_tariefA"), content: "alg_srtruimte_prijs2", datatype: "currency"}));
rst.addColumn(new Column({caption: L("lcl_alg_alg_tariefB"), content: "alg_srtruimte_prijs3", datatype: "currency"}));
rst.addColumn(new Column({caption: L("lcl_alg_alg_tariefC"), content: "alg_srtruimte_prijs4", datatype: "currency"}));
rst.addColumn(new Column({caption: L("lcl_alg_alg_tariefD"), content: "alg_srtruimte_prijs5", datatype: "currency"}));
rst.addColumn(new Column({caption: L("lcl_alg_srtruimte_code"), content: "alg_srtruimte_code"}));
rst.addColumn(new Column({caption: L("lcl_prs_has_workplace"), content: "bevat_werkplek"}));
rst.addColumn(new Column({caption: L("lcl_prs_rentable"), content: "verhuurbaar"}));
rst.addColumn(new Column({caption: L("lcl_mld_stduitvoertijd"), content: fnUitvoertijdKolom}));
rst.addAction({ action: "fkd_edit", caption: L("lcl_edit"), isDefault: true});
var cnt = rst.processResultset();
%>
</body>
</html>

View File

@@ -71,7 +71,7 @@ else
</script>
</head>
<body>
<body id="editbody">
<% if (ter_key == -1)
var page = "alg_edit_terreinsector.asp"; // Maak een nieuw
else

View File

@@ -20,9 +20,9 @@ FCLTHeader.Requires({ plugins:["jQuery"] });
function fnrowData(oRs)
{
var parent_key = oRs("alg_locatie_key").Value;
var key = oRs("alg_terreinsector_key").Value;
var oms = oRs("alg_terreinsector_omschrijving").Value;
var parent_key = oRs("alg_locatie_key").value;
var key = oRs("alg_terreinsector_key").value;
var oms = oRs("alg_terreinsector_omschrijving").value;
var data = {parent_key: parent_key, key: key, oms: oms};
@@ -70,8 +70,7 @@ function terrein_list(pautfunction, params)
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
var addButton = [];
var authparams = alg.checkAutorisation();
// Met ALG* bepaal je wat je ziet (Read), met RUI* en TER* bepaal je wat je kunt wijzigen (Write).
var canAdd = (authparams.tmALGwritelevel < 9); //wat moet het zijn voor terriensector
var canAdd = (authparams.mALGwritelevel < 9); //wat moet het zijn voor terriensector
// Voor resulttable de globalen zetten; zou ng anders moeten.
var outputmode = params.outputmode; // print to 0 = screen, 1 = printer, 2 = excel, etc.
@@ -79,28 +78,17 @@ function terrein_list(pautfunction, params)
var noref = params.noref;
var reg_key = params.reg_key;
var dis_key = params.dis_key;
var loc_key = params.loc_key;
var ter_code = params.ter_code;
var ter_func_key = params.ter_func_key;
var ter_func = params.ter_func;
function fnrowActionEnabler(oRs) // klopt dit voor terreinsector?
{
var eDelete = false;
if (alg.canWriteLocatie(oRs("alg_locatie_key").Value, authparams.tmALGwritelevel))
eDelete = true;
return ({eDelete: eDelete})
}
function fnrowFlexParams(oRs)
{
var ter_key = oRs("alg_terreinsector_key").Value;
var this_alg = alg.func_enabled(ter_key, "T");
var flexParams = { readman: this_alg.readman, readuse: this_alg.readuse};
return flexParams;
}
function fnrowActionEnabler(oRs) // klopt dit voor terreinsector?
{
var eDelete = false;
if (alg.canWriteLocatie(oRs("alg_locatie_key").value, authparams.mALGwritelevel))
eDelete = true;
return ({eDelete: eDelete})
}
%>
<html>
@@ -140,19 +128,15 @@ function terrein_list(pautfunction, params)
{
sqln += " AND g.alg_locatie_key = " + loc_key;
}
else if (dis_key)
sqln += " AND l.alg_district_key = " + dis_key;
else if (reg_key)
sqln += " AND l.alg_district_key IN (SELECT alg_district_key FROM alg_district WHERE alg_regio_key = " + reg_key+")";
if (ter_func_key)
if (ter_func)
{
sqln += " AND g.alg_srtterreinsector_key = " + ter_func_key;
sqln += " AND g.ALG_SRTTERREINSECTOR_KEY = " + ter_func;
}
if (ter_code)
{
sqln += " AND UPPER(g.alg_terreinsector_code) LIKE " + safe.quoted_sql_wild("%" + ter_code + "%");
sqln += " AND UPPER(g.ALG_TERREINSECTOR_CODE) LIKE " + safe.quoted_sql_wild("%" + ter_code + "%");
}
sqln += " ORDER BY g.alg_terreinsector_upper ASC "
@@ -174,7 +158,6 @@ function terrein_list(pautfunction, params)
outputmode: outputmode,
flexModule: "ALG",
flexId: "alg_terreinsector_key",
flexParams: fnrowFlexParams,
filterParams: params,
buttons: addButton
});

View File

@@ -15,7 +15,7 @@ FCLTHeader.Requires({ plugins:["jQuery", "kenmerk"] });
var locatie_key = getQParamInt("locatie_key", -1); // locatie
var vak_code = getQParam("vak_code", "");
var ter_func_key = getQParamInt("ter_func_key", -1);
var ter_func = getQParamInt("ter_func", -1);
var autosearch = getQParamInt("autosearch", 0) == 1;
var authparams = alg.checkAutorisation();
@@ -64,7 +64,7 @@ var authparams = alg.checkAutorisation();
FCLTselector("srt",
sql,
{ initKey: ter_func_key,
{ initKey: ter_func,
label: L("lcl_estate_terreinsector_man_sort"),
emptyOption: "",
trclass: "primsearch",

View File

@@ -22,20 +22,16 @@
var outputmode = getQParamInt("outputmode", 0) // 0 = screen, 1 = print, 2 = excel etc
var showall = getQParamInt("showall", 0) == 1;
var noref = getQParamInt("noref", -1); // (voor onderdrukken horizontale verwijzingen)
var reg_key = getQParamInt("regiokey", -1); // Regio
var dis_key = getQParamInt("districtkey", -1); // District
var loc_key = getQParamInt("locatiekey", -1); // Locatie
var ter_code = getQParam("descr", null);
var ter_func_key = getQParamInt("srt", -1);
var ter_func = getQParamInt("srt", -1);
terrein_list ( "*",
{ outputmode: outputmode,
showall: showall,
reg_key: (reg_key != -1? reg_key : null),
dis_key: (dis_key != -1? dis_key : null),
loc_key: (loc_key != -1? loc_key : null),
ter_code: (ter_code != ""? ter_code : null),
ter_func_key: (ter_func_key != -1? ter_func_key : null),
ter_func: (ter_func != -1? ter_func : null),
noref: (noref != -1? noref : null)
}
);

View File

@@ -75,7 +75,7 @@ else
</script>
</head>
<body>
<body id="editbody">
<% if (flr_key == -1)
var page="alg_edit_verdieping.asp"; // Maak een nieuw
else

View File

@@ -9,6 +9,7 @@
Note:
*/ %>
<!-- #include file="../Shared/disCxprs3d.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/resultset_table_v2.inc" -->
<!-- #include file="../Shared/getkenmerksql.inc" -->
@@ -36,7 +37,7 @@ function fnrowData(oRs)
function gotoDetails(row)
{
var algData = eval('(' + row.getAttribute("ROWDATA") + ')');
var url = "appl/ALG/alg_ruimte_search.asp?verdieping_key=" + algData.detail_key + "&autosearch=" + autosearch + "&chkgeb=1";
var url = "appl/ALG/alg_ruimte_search.asp?verdieping_key=" + algData.detail_key + "&autosearch=" + autosearch;
FcltMgr.openDetail(url, "<%=L("lcl_room")%>");
}
function gotoParent(row)
@@ -84,29 +85,17 @@ function verdiepingen_list(pautfunction, params)
var noref = params.noref;
var reg_key = params.reg_key;
var dis_key = params.dis_key;
var loc_key = params.loc_key;
var bld_key = params.bld_key;
var lvl_key = params.lvl_key;
var chkgeb = params.chkgeb;
function fnrowActionEnabler(oRs)
{
var eDelete = false;
if (alg.canWriteVerdieping(oRs("alg_verdieping_key").value, authparams.mALGwritelevel))
eDelete = true;
return ({eDelete: eDelete})
}
function fnrowFlexParams(oRs)
{
var ver_key = oRs("alg_verdieping_key").Value;
var this_alg = alg.func_enabled(ver_key, "V");
var flexParams = { readman: this_alg.readman, readuse: this_alg.readuse};
return flexParams;
}
{
var eDelete = false;
if (alg.canWriteVerdieping(oRs("alg_verdieping_key").value, authparams.mALGwritelevel))
eDelete = true;
return ({eDelete: eDelete})
}
%>
<html>
@@ -127,7 +116,7 @@ function verdiepingen_list(pautfunction, params)
+ " alg_locatie l "
+ " WHERE g.alg_gebouw_key = v.alg_gebouw_key "
+ " AND l.alg_locatie_key(+) = g.alg_locatie_key "
+ " AND v.alg_verdieping_verwijder IS NULL ";
+ " AND v.alg_verdieping_verwijder IS NULL "
if ( authparams.ALGreadlevel > -1 )
{ // Er is een scope-beperking van kracht
@@ -153,13 +142,7 @@ function verdiepingen_list(pautfunction, params)
{
sqln += " AND g.alg_locatie_key = " + loc_key;
}
else if (dis_key)
sqln += " AND l.alg_district_key = " + dis_key;
else if (reg_key)
sqln += " AND l.alg_district_key IN (SELECT alg_district_key FROM alg_district WHERE alg_regio_key = " + reg_key+")";
if (!chkgeb)
sqln += " AND (g.alg_gebouw_vervaldatum IS NULL OR g.alg_gebouw_vervaldatum > TRUNC(SYSDATE)) ";
sqln += " ORDER BY l.alg_locatie_upper ASC, "
+ " g.alg_gebouw_upper ASC, "
@@ -181,7 +164,6 @@ function verdiepingen_list(pautfunction, params)
outputmode: outputmode,
flexModule: "ALG",
flexId: "alg_verdieping_key",
flexParams: fnrowFlexParams,
filterParams: params,
rowData: fnrowData,
rowActionEnabler: fnrowActionEnabler,

View File

@@ -17,7 +17,6 @@ var locatie_key = getQParamInt("locatie_key", -1); // Locatie
var gebouw_key = getQParamInt("gebouw_key", -1); // Gebouw
var verdieping_key = getQParamInt("verdieping_key", -1); // Verdieping
var autosearch = getQParamInt("autosearch", 0) == 1;
var chkgeb = getQParamInt("chkgeb", 0) == 1;
var authparams = alg.checkAutorisation();
%>
@@ -48,7 +47,6 @@ var authparams = alg.checkAutorisation();
<body id="searchbody">
<div id="search">
<form name="u2" target="workFrame" action="alg_verdieping_search_list.asp" method="get">
<input type="hidden" id="chkgeb" name="chkgeb" value="<%=(chkgeb?1:0)%>">
<% BLOCK_START("searchtable", L("lcl_filterblok"));%>
<td valign=top>
<table>

View File

@@ -22,24 +22,17 @@
var outputmode = getQParamInt("outputmode", 0) // 0 = screen, 1 = print, 2 = excel etc
var showall = getQParamInt("showall", 0) == 1;
var noref = getQParamInt("noref", -1); // (voor onderdrukken horizontale verwijzingen)
var reg_key = getQParamInt("regiokey", -1); // Regio
var dis_key = getQParamInt("districtkey", -1); // District
var loc_key = getQParamInt("locatiekey", -1); // Locatie
var bld_key = getQParamInt("gebouwkey", -1); // Gebouw
var lvl_key = getQParamInt("verdiepingkey", -1); // Verdieping
var chkgeb = getQParamInt("chkgeb", 0) == 1; //Controleer tegen de vervallenstatus van het gebouw (vertrouw geb_key niet)
verdiepingen_list ( "*",
{ outputmode: outputmode,
showall: showall,
reg_key: (reg_key != -1? reg_key : null),
dis_key: (dis_key != -1? dis_key : null),
loc_key: (loc_key != -1? loc_key : null),
bld_key: (bld_key != -1? bld_key : null),
lvl_key: (lvl_key != -1? lvl_key : null),
noref: (noref != -1? noref : null),
chkgeb: chkgeb
noref: (noref != -1? noref : null)
}
);
%>

View File

@@ -101,7 +101,7 @@ function werkplek_list(pautfunction, params)
// De functie checkAutorisation(autfunction) geeft een Response.End indien er geen autorisatie voor autfunction wordt gevonden
var buttons = [];
var authparams = alg.checkAutorisation();
var canAdd = (authparams.rmALGwritelevel < 6); // TODO: fijner, ik denk 3. Ik moet voor deze locatie, dit district of deze regio schrijfrechten hebben
var canAdd = (authparams.mALGwritelevel < 6); // TODO: fijner, ik denk 3. Ik moet voor deze locatie, dit district of deze regio schrijfrechten hebben
// Voor resulttable de globalen zetten; zou ng anders moeten.
var outputmode = params.outputmode; // print to 0 = screen, 1 = printer, 2 = excel, etc.
@@ -117,7 +117,7 @@ function werkplek_list(pautfunction, params)
function fnrowActionEnabler(oRs)
{
var eDelete = false;
if (alg.canWriteRuimte(oRs("alg_ruimte_key").value, authparams.rmALGwritelevel))
if (alg.canWriteRuimte(oRs("alg_ruimte_key").value, authparams.mALGwritelevel))
eDelete = true;
return ({eDelete: eDelete})
}
@@ -252,7 +252,6 @@ function werkplek_list(pautfunction, params)
rst.addColumn(new Column({caption: L("lcl_room"), content: "Samengesteld", nowrap: true}));
rst.addColumn(new Column({caption: L("lcl_estate_ruimte_man_descr"), content: "alg_ruimte_omschrijving"}));
rst.addColumn(new Column({caption: L("lcl_estate_wp_seq"), content: "prs_werkplek_volgnr"}));
if (S("prs_werkplek_implicit")==0)
{
rst.addColumn(new Column({caption: L("lcl_workplace"), content: "prs_werkplek_omschrijving" }));

View File

@@ -64,7 +64,7 @@ if (wp_key > 0)
</script>
</head>
<body>
<body id="editbody">
<% if (wp_key == -1)
var page="alg_edit_wp.asp"; // Maak een nieuw
else
@@ -76,11 +76,8 @@ if (wp_key > 0)
FcltClose: "algClose" } );
if (wp_key > -1)
{
var page2 ="../prs/prs_perslidwerkplek_search_list.asp?embedded=1&wp_key=" + wp_key;
var page2 ="../prs/prs_perslidwerkplek_search_list.asp?embedded=1&wp_key=" + wp_key
IFRAMER("algFrame", page2, { initHeight: "450px" } );
var page3 ="../ins/ins_search_list.asp?urole=bo&tiny=1&werkplekkey=" + wp_key;
IFRAMER("algFrame", page3, { initHeight: "450px" } );
}
%>
</body>

View File

@@ -15,7 +15,7 @@
*/ %>
<%
var JSON_Result = true;
DOCTYPE_Disable = 1;
%>
<!-- #include file="../Shared/common.inc"-->

View File

@@ -11,7 +11,7 @@
*/ %>
<%
var JSON_Result = true;
DOCTYPE_Disable = 1;
%>
<!--#include file="../Shared/common.inc"-->
<!--#include file="../Shared/json2.js" -->

View File

@@ -14,14 +14,14 @@ DOCTYPE_Disable = 1;
LCL_Disable = 1;
ANONYMOUS_Allowed = 1;
FCLTEXPIRES = 8*60; // geen database interactie tenslotte
NO_ADDHEADER = 1; // common.inc voert wat globale acties hierdoor niet meer uit
var EXPIRED_PASSWORD_OK = true; // performance
%>
<!-- #include file="../Shared/common.inc"-->
<!-- #include file="../api/api.inc" -->
<%
var API = new API_func(); // controleert vanzelf
var APIname = getQParam("API");
var APIKEY = getQParam("APIKEY");
var API = new API_func(APIname, APIKEY); // controleert vanzelf
__Log("Transferring to: " + API.apidata.file);
//__DoLog("Transferring to: " + API.apidata.file);
Server.Transfer(API.apidata.file);
%>

View File

@@ -8,135 +8,58 @@
*/
function API_func()
function API_func(APIname, APIKEY)
{
this.APIname = getQParam("API");
this.APIname = APIname;
this.APIKEY = APIKEY;
var sql = "SELECT *"
+ " FROM fac_api"
+ " WHERE fac_api_name = " + safe.quoted_sql(this.APIname);
+ " WHERE fac_api_name = " + safe.quoted_sql(APIname);
var oRs = Oracle.Execute(sql);
if (oRs.Eof)
{
this.error("Invalid API: " + this.APIname);
this.error("Invalid API: " + APIname);
oRs.Close();
Response.End;
}
if (user_key < 0)
var sql2 = "SELECT prs_perslid_key, prs_perslid_naam"
+ " FROM prs_perslid"
+ " WHERE prs_perslid_apikey = " + safe.quoted_sql(APIKEY);
var oRs2 = Oracle.Execute(sql2);
if (oRs2.Eof)
{
this.APIKEY = getQParam("APIKEY", "");
if (!this.APIKEY && S("basic_auth_realm"))
{
Response.Status = "401 Unauthorized";
Response.AddHeader("WWW-Authenticate", "Basic realm=\"" + S("basic_auth_realm") + "\"");
Response.End;
}
else
{
var sql2 = "SELECT prs_perslid_key, prs_perslid_naam"
+ " FROM prs_perslid"
+ " WHERE prs_perslid_apikey = " + safe.quoted_sql(this.APIKEY)
+ " AND prs_perslid_verwijder IS NULL"; // Eigenlijk zou de trigger APIKEY moeten wissen bij verwijderen
var oRs2 = Oracle.Execute(sql2);
if (oRs2.Eof)
{
this.error("Invalid APIKEY: " + this.APIKEY);
oRs2.Close();
Response.End;
};
__Log("API User is: " + oRs2("prs_perslid_naam"));
user_key = oRs2("prs_perslid_key").Value;
oRs2.Close();
}
}
this.error("Invalid APIKEY: " + APIKEY);
oRs2.Close();
Response.End;
};
__Log("API User is: " + oRs2("prs_perslid_naam"));
this.apidata =
{
APIname: this.APIname,
APIKEY: this.APIKEY,
APIname: APIname,
APIKEY: APIKEY,
file: oRs("fac_api_filepath").Value,
prs_perslid_key: user_key,
prs_perslid_key: oRs2("prs_perslid_key").Value,
loglevel: oRs("fac_api_loglevel").Value,
usrrap_key: oRs("fac_usrrap_key").Value,
stylesheet: oRs("fac_api_stylesheet").Value,
import_app_key: oRs("fac_import_app_key").Value
import_app_key: oRs("fac_import_app_key").Value,
options: eval("("+oRs("fac_api_options_json").Value+")"),
viewmapping: eval("("+oRs("fac_api_viewmapping_json").Value+")")
};
try
{
this.apidata.options = eval("("+oRs("fac_api_options_json").Value+")");
}
catch (e)
{
__DoLog(e);
this.error("Invalid api 'options': " + e.description);
}
try
{
this.apidata.viewmapping = eval("("+oRs("fac_api_viewmapping_json").Value+")");
}
catch (e)
{
this.error("Invalid api 'viewmapping': " + e.description);
}
oRs2.Close();
oRs.Close();
// Wij doen niets met eventuele prs_perslid_key; dat doet loginTry.asp maar voor ons
}
API_func.prototype.error = function (msg)
{
if (JSON_Result && JSON) // Merk op dat 'invalid APIKEY' al door /default.asp
{ // is onderschept en dus niet hier komt.
Response.Write(JSON.stringify({ success: false, message: msg }));
}
else
{
Response.Status = "500 Internal server error"; // 500_error.asp blijkt hier niet op in te grijpen
Response.Write(safe.html(msg));
// Op productie zie je bovenstaande Response.Write ook niet terug in Fiddler omdat
// 'detailed error messages' uit staat. Daarom ook maar loggen voor het gemak.
__DoLog(safe.html(msg), "ff0000");
}
Response.Status = "500 Internal server error";
Response.Write(msg);
Response.End;
}
// LET OP: Verwacht wordt dat de JSON-code in de body utf-8 encoded is, niet windows-1252!
// (in de praktijk moet je *moeite* doen om windows-1252 te krijgen dus dit is handiger)
function RequestJSON()
{
var jvraag;
if(Request.TotalBytes > 0)
{
var lngBytesCount = Request.TotalBytes;
jvraag = BytesToStr(Request.BinaryRead(lngBytesCount));
}
__Log("Vraag: " + jvraag);
try
{
var vraag = myJSON.parse(jvraag);
}
catch (e)
{
__DoLog("eval faalt met: {0}<br>{1}".format(e.description, jvraag), "ffff00");
return null;
}
return vraag;
}
function BytesToStr(bytes)
{
var stream = Server.CreateObject("ADODB.STREAM");
stream.type = 1;
stream.open;
stream.write(bytes);
stream.position = 0;
stream.type = 2; // Text
stream.charset = "utf-8";
var sOut = stream.readtext();
stream.close;
return sOut;
}
%>

View File

@@ -49,14 +49,16 @@
try
{
var API = new API_func(); // Valideert ook
var APIname = getQParam("API");
var APIKEY = getQParam("APIKEY");
var API = new API_func(APIname, APIKEY); // Valideert ook
var asJSON = getQParam("json","0")!="0";
var xmlReq = Server.CreateObject("MSXML2.DOMDocument.6.0");
var xmlReq = Server.CreateObject("MSXML2.DOMDocument.4.0");
xmlReq.load(Request);
if (API.apidata.loglevel) __Log2File(xmlReq.xml, API.APIname + "_IN");
if (API.apidata.loglevel) __Log2File(xmlReq.xml, APIname + "_IN");
if (xmlReq.documentElement.firstChild.prefix)
var soapns = xmlReq.documentElement.firstChild.prefix + ":";
@@ -282,30 +284,28 @@ try
var key = -1;
var xtrakey = -1;
var sql_params = safe.quoted_sql(viewname) + ", "
+ key + " , "
+ safe.quoted_sql(customerId) + ", "
+ "'$AspSession$', "
+ xtrakey + ", "
+ safe.quoted_sql(where)
+ ", " + safe.quoted_sql(resultnode)
+ ", " + safe.quoted_sql(resnodename);
if (String(Oracle.RealConnection.Properties("Provider Name")).match(/OraOLEDB/i))
sql = "BEGIN xml.make_view_xml("
+ safe.quoted_sql(viewname) + ", "
+ key + " , "
+ safe.quoted_sql(customerId) + ", "
+ safe.quoted_sql(Session.SessionId) + ", "
+ xtrakey + ", "
+ safe.quoted_sql(where)
+ ", " + safe.quoted_sql(resultnode)
+ ", " + safe.quoted_sql(resnodename)
+ "); END;";
Oracle.Execute(sql);
sql = "SELECT fac_xml_xml FROM fac_xml WHERE fac_session_id = " + safe.quoted_sql(Session.SessionId) + " ORDER BY fac_xml_volgnr";
oRs = Oracle.Execute( sql);
var xml_content = "";
while (!oRs.eof)
{
var sql = "SELECT xml.make_view_xml2(" + sql_params + ") xml_blob FROM dual";
var oRs = Oracle.Execute(sql);
var xml_content = oRs("xml_blob").Value;
oRs.Close();
__Log("XML blob is {0} karakters.".format(xml_content.length));
}
else // MSDAORA kan niet rechtstreeks BLOB's ophalen
{
sql = "BEGIN xml.make_view_xml(" + sql_params + "); END;";
Oracle.Execute(sql);
var xml_content = get_fac_xml('$AspSession$');
xml_content = xml_content + oRs(0).value;
oRs.moveNext();
}
__Log("XML is " + xml_content.length + " karakters");
if (API.apidata.loglevel) __Log2File(xml_content, API.APIname + "_DATA");
if (API.apidata.loglevel) __Log2File(xml_content, APIname + "_DATA");
if (asJSON)
Response.ContentType = "application/json";
@@ -318,7 +318,7 @@ try
// op van het resultaat,dus maar zonder de metadata, dus alleen de facilitor/[resultnode]/
if (stylesheet == null)
{
var xmldoc = new ActiveXObject("Msxml2.DOMDocument.6.0");
var xmldoc = new ActiveXObject("Msxml2.DOMDocument.4.0");
xmldoc.async = false;
xmldoc.loadXML(xml_content);
if (xmldoc.parseError.errorCode != 0)
@@ -347,7 +347,7 @@ try
Response.Status = "304 Not modified";
Response.End;
}
if (API.apidata.loglevel) __Log2File(antwoord, API.APIname + "_OUT");
if (API.apidata.loglevel) __Log2File(antwoord, APIname + "_OUT");
Response.write(antwoord);
}
}
@@ -357,7 +357,7 @@ try
// die req-parameter is waarschijnlijk vrij zinloos
var params = { mode: req };
if (API.apidata.loglevel)
params.log_postfix = API.APIname + "_OUT";
params.log_postfix = APIname + "_OUT";
STR2Stream(xml_content, stylesheet, Response, params);
}
}

View File

@@ -8,7 +8,7 @@
Parameters:
Context:
Notes: Zie UWVA/KASPRS voor voorbeeld gebruik
TODO: Parameters uit Request-SOAP bericht ook via een XSL er uit vogelen
TODO: Parameters uit Request-SOAP bericht ook via een XLS er uit vogelen
*/
DOCTYPE_Disable = 1;
@@ -19,8 +19,6 @@
<!-- #include file="../api/api.inc" -->
<%
var API = new API_func();
Session.Codepage = 65001;
Response.Charset = 'utf-8';
@@ -28,7 +26,7 @@
function XML2TEMP(xml, postfix)
{
if (!API.apidata.loglevel) return;
var in_file = Server.MapPath("./temp") + "/" + customerId + "_" + API.APIname + "_" + postfix + "_";
var in_file = Server.MapPath("./temp") + "/" + customerId + "_" + APIname + "_" + postfix + "_";
var jsDate = new Date();
var s = String(jsDate.getFullYear()) + padout(jsDate.getMonth() + 1) + padout(jsDate.getDate())
+ padout(jsDate.getHours()) + padout(jsDate.getMinutes()) + padout(jsDate.getSeconds())
@@ -41,9 +39,12 @@
ts.Close();
}
var APIname = getQParam("API");
var APIKEY = getQParam("APIKEY");
var API = new API_func(APIname, APIKEY);
Session("logging") = API.apidata.loglevel||0;
var xmlReq = Server.CreateObject("MSXML2.DOMDocument.6.0");
var xmlReq = Server.CreateObject("MSXML2.DOMDocument.4.0");
xmlReq.load(Request);
XML2TEMP(xmlReq.xml, "IN");
@@ -74,25 +75,36 @@
var oRsW = Oracle.Execute(whichSQL);
var xml_nodes_arr = [];
var xml_nodes_dom = new ActiveXObject("MSXML2.DOMDocument.6.0");
var xml_nodes_dom = new ActiveXObject("MSXML2.DOMDocument.4.0");
var FCLTElement = xml_nodes_dom.createElement("facilitor");
var headerDone = false;
where = "";
while (!oRsW.Eof)
{
var xml_content = make_xml({ xmlnode: oRsW("xmlnode").Value,
key: oRsW("fac_tracking_refkey").Value,
xtrakey: xtrakey,
where: where
});
sql = "BEGIN xml.make_xml(" + safe.quoted_sql(oRsW("xmlnode").Value) + ", " + oRsW("fac_tracking_refkey").Value + " , "
+ safe.quoted_sql(customerId) + ", " + safe.quoted_sql(Session.SessionId)
+ ", " + xtrakey + ", " + safe.quoted_sql(where) + "); END;";
Oracle.Execute(sql);
sql = "SELECT fac_xml_xml FROM fac_xml WHERE fac_session_id = " + safe.quoted_sql(Session.SessionId) + " ORDER BY fac_xml_volgnr";
oRs = Oracle.Execute( sql);
var xml_content_arr = [];
while (!oRs.eof)
{
xml_content_arr.push(oRs(0).value);
oRs.moveNext();
}
oRs.Close();
var xml_content = xml_content_arr.join("");
// Loggen van de individuele XMLNODE's
// XML2TEMP(xml_content, "XML_" + oRsW("xmlnode").Value + "_" + oRsW("fac_tracking_refkey").Value);
__Log("XML '" + oRsW("xmlnode").Value + "' voor key " + oRsW("fac_tracking_refkey").Value + " is " + xml_content.length + " karakters");
xml_nodes_arr.push(xml_content); // E<>n node
var xmldoc = new ActiveXObject("Msxml2.DOMDocument.6.0");
var xmldoc = new ActiveXObject("Msxml2.DOMDocument.4.0");
xmldoc.async = false;
xmldoc.loadXML(xml_content);
xmldoc.setProperty("SelectionLanguage", "XPath");

View File

@@ -23,5 +23,7 @@
Session.Codepage = 65001;
Response.Charset = 'utf-8';
var API = new API_func();
var APIname = getQParam("API");
var APIKEY = getQParam("APIKEY");
var API = new API_func(APIname, APIKEY);
%>

View File

@@ -28,29 +28,31 @@
Session.Codepage = 65001;
Response.Charset = 'utf-8';
var API = new API_func();
var APIname = getQParam("API");
var APIKEY = getQParam("APIKEY");
var API = new API_func(APIname, APIKEY);
var tsql = "-"; // Voor tijdelijke statement(s)
var sql = "-"; // De uiteindelijke update-sql
var resultcode = -1; /* Zolang deze -1 is, is het nog goed. Uiteindelijk eindigt het met 0 (als goed). */
var resulttekst = "";
var xmlReq = Server.CreateObject("MSXML2.DOMDocument.6.0");
var xmlReq = Server.CreateObject("MSXML2.DOMDocument.4.0");
if (API.apidata.stylesheet)
{
var iXsl = Server.CreateObject("MSXML2.DOMDocument.6.0");
var iXsl = Server.CreateObject("MSXML2.DOMDocument.4.0");
if( ! iXsl.load(Server.MapPath(API.apidata.stylesheet)) )
{
API.error("Could not load XSL " + API.apidata.stylesheet + "\n" + iXsl.parseError.reason);
}
var inputXML = Server.CreateObject("MSXML2.DOMDocument.6.0");
var inputXML = Server.CreateObject("MSXML2.DOMDocument.4.0");
inputXML.load(Request);
inputXML.transformNodeToObject(iXsl, xmlReq);
}
else
xmlReq.load(Request);
if (API.apidata.loglevel) __Log2File(xmlReq.xml, API.APIname + "_TUSSEN");
if (API.apidata.loglevel) __Log2File(xmlReq.xml, APIname + "_TUSSEN");
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.6.0");
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.4.0");
xmlResp.appendChild(xmlResp.createProcessingInstruction("xml", "version=\"1.0\" encoding=\"utf-8\""))
// The response
@@ -158,7 +160,7 @@
Oracle.Execute(tsql);
}
}
else
else
{
resultcode = 5;
resulttekst = "Invalid status change";
@@ -214,7 +216,7 @@
resulttekst = "Invalid status change";
}
}
else
else
{
resultcode = 4;
resulttekst = "Remote delivery not enabled";
@@ -280,7 +282,7 @@
+ (newbruto ? ", bes_bestelling_item_brutoprijs="+ newbrutoval : "")
+ " WHERE bes_bestelling_item_key="+ bi_key;
Oracle.Execute(tsql);
shared.trackaction("BESUPD", bes_key, L("lcl_bes_is_besupdtrackprice").format(S("bes_bestelling_prefix") + bes_key, safe.curr(newprijsval)));
shared.trackaction("BESUPD", bes_key, L("lcl_bes_is_besupdtrack").format(S("bes_bestelling_prefix") + bes_key));
// En de bestelopdracht!
tsql = "UPDATE bes_bestelopdr_item "
@@ -290,7 +292,7 @@
+ (newbruto ? ", bes_bestelopdr_item_brutoprijs="+ newbrutoval : "")
+ " WHERE bes_bestelopdr_item_key="+ boi_key;
Oracle.Execute(tsql);
shared.trackaction("BES2UP", opdr_key, L("lcl_bes_is_bes2uptrackprice").format(S("bes_bestelopdr_prefix") + opdrid, safe.curr(newprijsval)));
shared.trackaction("BES2UP", opdr_key, L("lcl_bes_is_bes2uptrack").format(S("bes_bestelopdr_prefix") + opdrid));
}
if (newontv && resultcode == -1)

View File

@@ -28,25 +28,27 @@
Session.Codepage = 65001;
Response.Charset = 'utf-8';
var API = new API_func();
var APIname = getQParam("API");
var APIKEY = getQParam("APIKEY");
var API = new API_func(APIname, APIKEY);
var tsql = "-"; // Voor tijdelijke statement(s)
var sql = "-"; // De uiteindelijke insert/update-sql
var xmlReq = Server.CreateObject("MSXML2.DOMDocument.6.0");
var xmlReq = Server.CreateObject("MSXML2.DOMDocument.4.0");
if (API.apidata.stylesheet)
{
var iXsl = Server.CreateObject("MSXML2.DOMDocument.6.0");
var iXsl = Server.CreateObject("MSXML2.DOMDocument.4.0");
if( ! iXsl.load(Server.MapPath(API.apidata.stylesheet)) )
{
API.error("Could not load XSL " + API.apidata.stylesheet + "\n" + iXsl.parseError.reason);
}
var inputXML = Server.CreateObject("MSXML2.DOMDocument.6.0");
var inputXML = Server.CreateObject("MSXML2.DOMDocument.4.0");
inputXML.load(Request);
inputXML.transformNodeToObject(iXsl, xmlReq);
}
else
xmlReq.load(Request);
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.6.0");
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.4.0");
xmlResp.appendChild(xmlResp.createProcessingInstruction("xml", "version=\"1.0\" encoding=\"utf-8\""))
// The response.
@@ -82,20 +84,20 @@
{
var resultcode = -1; /* Zolang deze -1 is, is het nog goed. Uiteindelijk eindigt het met 0 (als goed). */
var resulttekst = "";
// Lees per node de (optionele) tags en waarden.
var fields = []; // Bij te werken velden.
var besid = bestellingen[i].getAttribute("key"); // Bij type=update/delete
var besaction = bestellingen[i].getAttribute("type").toLowerCase();
var nwStatus = XMLval(bestellingen[i], "status");
if (besid == null) { // Voorkom problemen als key-attribuut ontbreekt!
besid = '';
}
var bestelling_key = parseInt(besid, 10); // En anders bepaald bij insert!
user.checkAutorisation("WEB_BESUSE"); // Dit is nog ongeacht de reservering
if (besaction == 'insert') {
resultcode = 999;
resulttekst = "Insert unsupported";
@@ -137,7 +139,7 @@
var oRs = Oracle.Execute(sql);
if (!oRs.eof) {
curStatus = oRs("bes_bestelling_status").value;
// Feitelijke UPDATE status.
// BESFIT: alleen vanuit status 2
if (nwStatus == "BESFIT") {
@@ -207,13 +209,13 @@
resultcode = 3;
resulttekst = "Ongeldige status "+nwStatus;
}
} else {
resultcode = 4;
resulttekst = "Ongedefinieerde huidige status";
}
} // nwStatus != null
if (resultcode == -1) { // nog steeds geen fouten
resultcode = 0; // Ik heb gedaan wat ik moest en mocht doen voor deze bestelling.
}
@@ -243,7 +245,7 @@
datum: nowtxt, // TODO: Beter ook xml-datum???
besid: besid
}
var FCLTBody = xmlResp.createElement("bestelling"); // type=response
FCLTBody.setAttribute('key', besid);
FCLTBody.setAttribute('type', 'response');
@@ -263,7 +265,7 @@
//__DoLog("Ik gebruik stylesheet '"+API.apidata.stylesheet+"'");
if (API.apidata.stylesheet)
{
var outputXML = Server.CreateObject("MSXML2.DOMDocument.6.0");
var outputXML = Server.CreateObject("MSXML2.DOMDocument.4.0");
xmlResp.transformNodeToObject(iXsl, outputXML);
Response.ContentType = "text/xml";
Response.Write(outputXML.xml)

View File

@@ -70,14 +70,16 @@ THIS_FILE = "appl/api/api_bezsoap.asp";
Session.Codepage = 65001;
Response.Charset = 'utf-8';
var API = new API_func();
var APIname = getQParam("API");
var APIKEY = getQParam("APIKEY");
var API = new API_func(APIname, APIKEY);
// XML Omzetten naar equivalente JSON
// var xmlReq = Server.CreateObject("MSXML2.DOMDocument.6.0");
// var xmlReq = Server.CreateObject("MSXML2.DOMDocument.4.0");
// xmlReq.load(Request);
// The response.
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.6.0");
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.4.0");
xmlResp.appendChild(xmlResp.createProcessingInstruction("xml", "version=\"1.0\" encoding=\"utf-8\""))
var FCLTElement = xmlResp.createElement("facilitor");

View File

@@ -25,15 +25,17 @@
Session.Codepage = 65001;
Response.Charset = 'utf-8';
var API = new API_func();
var APIname = getQParam("API");
var APIKEY = getQParam("APIKEY");
var API = new API_func(APIname, APIKEY);
var tsql = "-"; // Voor tijdelijke statement(s)
var sql = "-"; // De uiteindelijke insert/update-sql
var resultcode = -1; /* Zolang deze -1 is, is het nog goed. Uiteindelijk eindigt het met 0 (als goed). */
var resulttekst = "";
var xmlReq = Server.CreateObject("MSXML2.DOMDocument.6.0");
var xmlReq = Server.CreateObject("MSXML2.DOMDocument.4.0");
xmlReq.load(Request);
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.6.0");
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.4.0");
xmlResp.appendChild(xmlResp.createProcessingInstruction("xml", "version=\"1.0\" encoding=\"utf-8\""))
// The response.
@@ -108,15 +110,8 @@
if (this_cnt.canChange) {
// Bepaal de door te voeren wijzigingen.
if (van_datum != null) {
try {
var looptijd_van = XMLtoJsDate(van_datum);
var looptijd_tot = XMLtoJsDate(tot_datum);
}
catch (e)
{
__Log2File(xmlReq.xml, API.APIname + "_IN");
Response.End;
}
if (looptijd_van <= looptijd_tot) {
fields.push({ dbs: "cnt_contract_looptijd_van", typ: "date", val: looptijd_van, track: L("lcl_cnt_date_start") });
}

View File

@@ -21,7 +21,9 @@
<!-- #include file="../api/api.inc" -->
<%
var API = new API_func();
var APIname = getQParam("API");
var APIKEY = getQParam("APIKEY");
var API = new API_func(APIname, APIKEY);
var usrrap_key = API.apidata.usrrap_key;
//var viewname = API.apidata.viewname;

View File

@@ -23,5 +23,7 @@
Session.Codepage = 65001;
Response.Charset = 'utf-8';
var API = new API_func();
var APIname = getQParam("API");
var APIKEY = getQParam("APIKEY");
var API = new API_func(APIname, APIKEY);
%>

View File

@@ -1,35 +0,0 @@
<%@ language = "JavaScript" %>
<% /*
$Revision$
$Id$
File: api_flex.asp
Description: API voor opvragen van flexfiles
Parameters: Een xml
Status:
Context: (alleen) door Putorders
Notes: Zie flexfiles.inc/flexProps2 voor ondersteunde coderingen
*/
JSON_Result = true;
THIS_FILE = "appl/api/api_flex.asp";
%>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/flexfiles.inc" -->
<!-- #include file="../api/api.inc" -->
<%
var API = new API_func();
// TODO checkAuthorization("WEB_PUOxxx") ?
var flexcode = getQParam("flexcode");
var props = flexProps2(flexcode);
__Log(props);
Response.Write(JSON.stringify(props));
Response.End;
%>

View File

@@ -16,57 +16,39 @@
%>
<!-- #include file="../../appl/Shared/common.inc" -->
<!-- #include file="../../appl/api/api.inc" -->
<!-- #include file="../../appl/shared/FlexFiles.inc" -->
<script language="javascript" src="../imp/imp_shared.js" runat="server"></script>
<%
// We sturen het antwoord in UTF-8.
Session.Codepage = 65001;
Response.Charset = 'utf-8';
var API = new API_func();
var APIname = getQParam("API");
var APIKEY = getQParam("APIKEY");
var API = new API_func(APIname, APIKEY);
var import_app_key = API.apidata.options['import_app_key'];
var bytes = Request.TotalBytes;
if (bytes == 0)
{
__DoLog("api_gen_import empty body posted", "#ffff00");
Response.Write("Error: no data posted for API import");
Response.End; // Grof maar anders AiAi, dat is nog erger
}
fileStream = Server.CreateObject("ADODB.Stream");
fileStream.Type = 1; // adTypeBinary eerst nog
fileStream.Open();
fileStream.Write(Request.BinaryRead(bytes));
fileStream.Write(Request.BinaryRead(Request.TotalBytes));
if (API.apidata.loglevel & 1)
fileStream.SaveToFile(Server.MapPath(rooturl + "/temp/") + "/" + customerId + "_" + API.APIname + ".tmp", 2); // 2=create
fileStream.SaveToFile(Server.MapPath(rooturl + "/temp/") + "/" + customerId + "_" + APIname + ".tmp", 2); // 2=create
var res = impReadStream(fileStream, import_app_key,
{ fac_home: Server.MapPath(rooturl + "/") + "/",
filepathname: "API " + API.APIname,
customerId: customerId,
keep_old: 300, // Parallelle import 300 seconden ondersteunen
user_key: user_key,
stylesheet: API.apidata.stylesheet,
keep_backup: true // mits fac_import_app_folder gezet
});
var import_key = res.import_key;
filepathname: "API " + APIname,
customerId: customerId});
if (res.success)
{
var warn = L("lcl_imp_read_lines") + res.read_lines;
var res = impProcessStream(res.import_key, { customerId: customerId,
user_key: user_key });
var res = impProcessStream(res.import_key, { customerId: customerId });
}
else
{
var warn = res.warning;
__DoLog("Import (app_key={0}) mislukt: {1}".format(import_app_key, warn), "#ffff00");
API.error(warn); // Abort met 500-status
}
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.6.0");
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.4.0");
xmlResp.appendChild(xmlResp.createProcessingInstruction("xml", "version=\"1.0\" encoding=\"utf-8\""));
// The response
@@ -76,46 +58,6 @@
var elementResultText = xmlResp.createTextNode(warn);
elementResult.appendChild(elementResultText);
FCLTElement.appendChild(elementResult);
if (import_key > 0)
{
var elementDetails = xmlResp.createElement("details");
var sql = "SELECT imp_log_status,"
+ " imp_log_omschrijving,"
+ " imp_log_hint"
+ " FROM imp_log"
+ " WHERE fac_import_key = " + import_key
+ " AND imp_log_status <> 'I'";
var oRs = Oracle.Execute(sql);
while (!oRs.Eof)
{
var elementDetail = xmlResp.createElement("detail");
var elementStatus = xmlResp.createElement("status");
var elementStatusText = xmlResp.createTextNode(oRs("imp_log_status").Value);
elementStatus.appendChild(elementStatusText);
elementDetail.appendChild(elementStatus);
if (oRs("imp_log_omschrijving").Value != null )
{
var elementOms = xmlResp.createElement("omschrijving");
var elementOmsText = xmlResp.createTextNode(oRs("imp_log_omschrijving").Value);
elementOms.appendChild(elementOmsText);
elementDetail.appendChild(elementOms);
}
if (oRs("imp_log_hint").Value != null )
{
var elementHint = xmlResp.createElement("hint");
var elementHintText = xmlResp.createTextNode(oRs("imp_log_hint").Value);
elementHint.appendChild(elementHintText);
elementDetail.appendChild(elementHint);
}
elementDetails.appendChild(elementDetail);
oRs.moveNext();
}
oRs.Close();
FCLTElement.appendChild(elementDetails);
}
xmlResp.appendChild(FCLTElement);
Response.ContentType = "text/xml";

View File

@@ -1,226 +0,0 @@
<%@ language = "JavaScript" %>
<% /*
$Revision$
$Id$
File: api_hmail.asp
Description: API voor opvangen van hMailserver e-mails
Parameters: Een xml
Status:
Context: 1-op-1 met \UTILS\mail_receive\EventHandlers.js
Notes: Deze API krijgen we XML binnen, en geven JSON terug.
Dat was het eenvoudigst
*/
JSON_Result = true;
THIS_FILE = "appl/api/api_hmail.asp";
%>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/xml_converter.inc" -->
<!-- #include file="../Shared/flexfiles.inc" -->
<!-- #include file="../Shared/upload.inc" -->
<!-- #include file="../api/api.inc" -->
<%
var API = new API_func();
function abortRejectMail(tekst, maillog)
{
var result = { success: false,
message: tekst,
maillog: maillog||tekst
}
__Log(result.maillog); // komt altijd ook in hmail log
Response.Write(JSON.stringify(result));
Response.End;
}
function stripHtml(html)
{
// verwijder html-tags
html = (html||"").replace(/(<([^>]+)>)/ig,"");
// &nbsp; naar spatie
html = html.replace(/\&nbsp\;/ig, " ");
//verwijder leading spaces and tabs
html = html.replace(/^[ \t]+/gm,"");
// verwijder lege regels
html = html.replace(/[(\n\r)]+/g,"\n\r");
// zet een regel die begint met : maar achter de vorige
html = html.replace(/(\n\r:)/g,":");
return html;
}
// puur intern gebruik dus geen stylesheet conversie nodig
var xmlReq = Server.CreateObject("MSXML2.DOMDocument.6.0");
xmlReq.load(Request);
if (xmlReq.parseError.errorCode != 0)
{
abortRejectMail("Error " + xmlReq.parseError.reason);
}
if (API.apidata.loglevel)
__Log2File(xmlReq.xml, API.APIname + "_IN");
var Subject = XMLval(xmlReq, "subject");
var fromAddr = XMLval(xmlReq, "fromaddr"); // "Returns the address that the sender gave in the MAIL FROM SMTP-command."
var from = XMLval(xmlReq, "from"); // "This property returns the content of the From MIME-header of the email."
var toAddr = XMLval(xmlReq, "to");
var htmlBody = XMLval(xmlReq, "htmlbody");
var Body = XMLval(xmlReq, "body");
__Log("Subject: " + Subject);
__Log("From: " + fromAddr);
__Log("FromAddr: " + from);
__Log("To: " + toAddr);
__Log("htmlBody: " + htmlBody);
__Log("body: " + Body);
var mailuser = toAddr.split("@")[0];
sql = "SELECT fac_email_setting_action,"
+ " fac_email_setting_expire,"
+ " fac_email_setting_from,"
+ " fac_email_setting_frommode,"
+ " fac_email_setting_attachpath"
+ " FROM fac_email_setting"
+ " WHERE upper(fac_email_setting_user) = upper("+safe.quoted_sql(mailuser)+")";
var oRs = Oracle.Execute(sql);
if (oRs.Eof)
{
abortRejectMail(L("lcl_fac_hmail_unknown_user"), "E-mail user niet ontvankelijk: " + mailuser);
}
__Log("E-mail user ontvankelijk: " + mailuser);
if (oRs("fac_email_setting_expire").Value != null)
{
var expire = new Date(oRs("fac_email_setting_expire").Value);
if (expire.getTime() < (new Date).getTime())
{
abortRejectMail(L("lcl_fac_hmail_expired"), "Te laat, moest voor: " + expire);
}
}
var theFrom = fromAddr; // SMTP communicatie, werkt matig bij forwards
if (oRs("fac_email_setting_frommode").Value == 1)
theFrom = from; // uit email MIME-header
var shouldFrom = oRs("fac_email_setting_from").Value;
if (shouldFrom)
{
if (String(shouldFrom).toUpperCase() != String(theFrom).toUpperCase())
{
abortRejectMail(L("lcl_fac_hmail_wrong_sender"), "Foute afzender. Verwacht: " + shouldFrom + ", kreeg: " + theFrom);
}
}
var action = oRs("fac_email_setting_action").Value; // Package aanroep
var path = oRs("fac_email_setting_attachpath").Value;
if (path && path.substr(0, 1) == "*") // Bijvoorbeeld '*flexfilespath' or '*fg_dwf_path_concept'
{
path = S(path.substr(1)) + "/";
}
oRs.Close();
var result = { success: true, path: path, attachments: [] };
var psession_id = Session.SessionID;
// verwijder entries in de FAC_RESULT table zodat de action nieuwe resultaten kan schrijven
var sql = "DELETE fac_result WHERE fac_result_sessionid = " + safe.quoted_sql(psession_id);
Oracle.Execute(sql);
if (action) // Bijv "fac.processemail" of "uwva.closeorder-sample"
{
if (!Body || Body == "") // Voorkeur voor plaintekst
{
var v_body = L("lcl_fac_hmail_empty_body") + stripHtml(htmlBody);
}
else
{
var v_body = Body;
}
sql = "BEGIN " + action + " (" + safe.quoted_sql(theFrom) + ","
+ safe.quoted_sql(toAddr) + ","
+ safe.quoted_sql(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
+ safe.quoted_sql(psession_id) + ","
+ user_key + ");"
+ "END;";
Oracle.Execute(sql);
sql = "SELECT fac_result_waarde"
+ " FROM fac_result"
+ " WHERE fac_result_naam = 'errormsg'"
+ " AND fac_result_sessionid = " + safe.quoted_sql(psession_id);
var oRs = Oracle.Execute(sql);
if (!oRs.Eof)
{
abortRejectMail(oRs("fac_result_waarde").Value);
}
oRs.Close();
sql = "SELECT fac_result_waarde"
+ " FROM fac_result"
+ " WHERE fac_result_naam = 'kenmerkpath'"
+ " AND fac_result_sessionid = " + safe.quoted_sql(psession_id);
var oRs = Oracle.Execute(sql);
if (!oRs.Eof)
{
result.path = result.path + oRs("fac_result_waarde").Value;
}
oRs.Close();
// Nog iets specifieks terug te melden voor de logging?
sql = "SELECT fac_result_waarde"
+ " FROM fac_result"
+ " WHERE fac_result_naam = 'maillog'"
+ " AND fac_result_sessionid = " + safe.quoted_sql(psession_id);
var oRs = Oracle.Execute(sql);
if (!oRs.Eof)
{
result.maillog = oRs("fac_result_waarde").Value;
}
else
result.maillog = "E-mail afgehandeld via: " + action;
oRs.Close();
}
else
result.maillog = "Verder geen e-mail action gedefinieerd";
__Log(result.maillog);
// opruimen
var sql = "DELETE fac_result WHERE fac_result_sessionid = " + safe.quoted_sql(psession_id);
Oracle.Execute(sql);
if (result.path)
{
var Attachments = xmlReq.getElementsByTagName("attachment");
for (i=0; i < Attachments.length; i++)
{
var safefilename = safe.filename(XMLval(Attachments[i], "filename"));
var attsize = parseInt(XMLval(Attachments[i], "size"), 10);
if (safefilename == 'tmpl_logo.gif')
{ // Waarschijnlijk een FACILITOR bon gereply'd
__Log("Bijlage {0} genegeerd.".format(safefilename));
}
else if (attsize < S("flex_min_size"))
{
__Log("Bijlage {0} genegeerd, te klein met {1} bytes.".format(safefilename, attsize));
}
else if (!new RegExp(S("flexallowedext"), "ig").test(safefilename))
{
// TODO: Misschien ook terugkoppelen aan zender?
__DoLog("Onbekende extensie e-mail bijlage: {0} ({1} bytes) van {2}. Bestand is niet opgeslagen.".format(safefilename, attsize, theFrom));
}
else
{
__Log('{0} bijlage ({1} bytes) mag naar {2}'.format(safefilename, attsize, result.path));
CreateFullPath(result.path); // Hoeft hMailserver dat niet meer te doen. Eist wel dat hMail op 'onze' webserver draait
result.attachments.push ({ sequence: i,
safefilename: result.path + safefilename
})
}
}
}
Response.Write(JSON.stringify(result));
Response.End;
%>

View File

@@ -36,30 +36,32 @@
Session.Codepage = 65001;
Response.Charset = 'utf-8';
var API = new API_func();
var APIname = getQParam("API");
var APIKEY = getQParam("APIKEY");
var API = new API_func(APIname, APIKEY);
var asJSON = getQParam("json","0")!="0";
var tsql = "-"; // Voor tijdelijke statement(s)
var sql = "-"; // De uiteindelijke insert/update-sql
var xmlReq = Server.CreateObject("MSXML2.DOMDocument.6.0");
var xmlReq = Server.CreateObject("MSXML2.DOMDocument.4.0");
if (API.apidata.stylesheet)
{
var iXsl = Server.CreateObject("MSXML2.DOMDocument.6.0");
var iXsl = Server.CreateObject("MSXML2.DOMDocument.4.0");
if( ! iXsl.load(Server.MapPath(API.apidata.stylesheet)) )
{
API.error("Could not load XSL " + API.apidata.stylesheet + "\n" + iXsl.parseError.reason);
}
var inputXML = Server.CreateObject("MSXML2.DOMDocument.6.0");
var inputXML = Server.CreateObject("MSXML2.DOMDocument.4.0");
inputXML.load(Request);
inputXML.transformNodeToObject(iXsl, xmlReq);
}
else
xmlReq.load(Request);
if (API.apidata.loglevel) __Log2File(xmlReq.xml, API.APIname + "_TUSSEN");
if (API.apidata.loglevel) __Log2File(xmlReq.xml, APIname + "_TUSSEN");
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.6.0");
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.4.0");
xmlResp.appendChild(xmlResp.createProcessingInstruction("xml", "version=\"1.0\" encoding=\"utf-8\""))
// The response.
@@ -174,8 +176,8 @@
+ " , ins_deel_statedate=SYSDATE" // TODO: de meegegeven meetdatumtijd nemen
+ " WHERE ins_deel_key=" + deel_key;
Oracle.Execute(sql);
// FSN#28896: state-changes worden automatisch getrackt in ins_deel_state_history; geen updtracking meer
//shared.trackaction("INSUPD", deel_key, L("lcl_deel_state")+" "+safe.quoted_sql(waarde));
shared.trackaction("INSUPD", deel_key, L("lcl_deel_state")+" "+safe.quoted_sql(waarde)); // met indicatie van soap/wijzing oid.
}
}
else { // outinn != ''
@@ -209,7 +211,6 @@
// Object is ingenomen
shared.trackaction("INSINN", deel_key, L("lcl_obj_is_ingenomen"));
shared.trackaction("INSIN2", deel_key, L("lcl_obj_is_ingenomen2").format(deel_oms));
}
break;
default:
@@ -254,7 +255,6 @@
xmlResp.appendChild(FCLTElement);
if (API.apidata.loglevel) __Log2File(xmlResp.xml, API.APIname + "_TUSSEN_OUT");
if (API.apidata.stylesheet)
{
// Niet super efficient dat we eerst naar tekstuele xml gaan maar ach...
@@ -271,6 +271,5 @@
var antwoord = JSON.stringify(xmlToJson(xmlResp), null, getQParam("pretty","0")=="1"?2:0);
else
var antwoord = xmlResp.xml;
Response.Write(antwoord);
}
%>

View File

@@ -5,7 +5,7 @@
File: api_mld_soap.asp
Description: API voor mld-soap berichten
Interpreteert melding-bericht zodanig dat een melding wordt
Interpreteert melding-bericht zodanig dat een melding wordt
aangemaakt.
Parameters: Een xml
@@ -24,467 +24,428 @@
<!-- #include file="../api/api.inc" -->
<!-- #include file="../mld/mld.inc" -->
<%
// We sturen het antwoord in UTF-8.
Session.Codepage = 65001;
Response.Charset = 'utf-8';
// We sturen het antwoord in UTF-8.
Session.Codepage = 65001;
Response.Charset = 'utf-8';
var API = new API_func();
var tsql = "-"; // Voor tijdelijke statement(s)
var sql = "-"; // De uiteindelijke insert/update-sql
var resultcode = -1; /* Zolang deze -1 is, is het nog goed. Uiteindelijk eindigt het met 0 (als goed). */
var resulttekst = "";
var xmlReq = Server.CreateObject("MSXML2.DOMDocument.6.0");
if (API.apidata.stylesheet)
{
var iXsl = Server.CreateObject("MSXML2.DOMDocument.6.0");
if( ! iXsl.load(Server.MapPath(API.apidata.stylesheet)) )
var APIname = getQParam("API");
var APIKEY = getQParam("APIKEY");
var API = new API_func(APIname, APIKEY);
var tsql = "-"; // Voor tijdelijke statement(s)
var sql = "-"; // De uiteindelijke insert/update-sql
var resultcode = -1; /* Zolang deze -1 is, is het nog goed. Uiteindelijk eindigt het met 0 (als goed). */
var resulttekst = "";
var xmlReq = Server.CreateObject("MSXML2.DOMDocument.4.0");
if (API.apidata.stylesheet)
{
API.error("Could not load XSL " + API.apidata.stylesheet + "\n" + iXsl.parseError.reason);
}
var inputXML = Server.CreateObject("MSXML2.DOMDocument.6.0");
inputXML.load(Request);
inputXML.transformNodeToObject(iXsl, xmlReq);
}
else
xmlReq.load(Request);
if (API.apidata.loglevel) __Log2File(xmlReq.xml, API.APIname + "_IN");
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.6.0");
xmlResp.appendChild(xmlResp.createProcessingInstruction("xml", "version=\"1.0\" encoding=\"utf-8\""))
// The response.
var FCLTElement = xmlResp.createElement("facilitor");
// The response header.
var now = new Date();
var nowtxt = now.getFullYear()+'-'+padout(now.getMonth()+1) +'-'+padout(now.getDate()) +' '
+padout(now.getHours()) +':'+padout(now.getMinutes())+':'+padout(now.getSeconds());
var elmHeader = xmlResp.createElement("header");
var headerinfo = {
// file: String(Request.ServerVariables("SCRIPT_NAME")).toLowerCase(),
datum: nowtxt,
naam: user.naam(),
custId: customerId,
language: user.lang()
}
for (param in headerinfo)
{
var FCLTdata = xmlResp.createElement(param);
FCLTdata.appendChild(xmlResp.createTextNode(headerinfo[param]));
elmHeader.appendChild(FCLTdata);
}
FCLTElement.appendChild(elmHeader);
// Hier zou het echte werk moeten gebeuren nav. xmlReq
// en FCLTElement moeten we uitbreiden met antwoorden.
var detected ="?";
//xmlReq.setProperty("SelectionLanguage", "XPath"); // Weet niet of noodzakelijk
// Dit is de meldingenloop (mochten er ooit nog anderen gaan volgen).
var meldingen = xmlReq.getElementsByTagName("melding");
for (i = 0; i < meldingen.length; i++)
{
resultcode = -1;
// Lees per node de (optionele) tags en waarden.
var fields = []; // Bij te werken velden.
var ext_id = meldingen[i].getAttribute("key");
var meldaction = meldingen[i].getAttribute("type").toLowerCase();
var melddatum = XMLval(meldingen[i], "datum");
var einddatum = XMLval(meldingen[i], "einddatum");
//var melderemail = XMLval(meldingen[i], "melder"); // Unsupported yet
var stdmld_key = parseInt(XMLval(meldingen[i], "stdmelding"), 10); // Numeriek
var stdmld_sla = -1; // Normale uitvoertijd (prio door melder nog unsupported)
//var meldprio = XMLval(meldingen[i], "prioriteit"); // Unsupported yet
//var meldobj_id = XMLval(meldingen[i], "object"); // Unsupported yet
var voor_email = XMLval(meldingen[i], "voor_email"); // NEW
var voor_login = XMLval(meldingen[i], "voor_login"); // NEW
var meldloc = XMLval(meldingen[i], "locatiecode");
var meldgeb = XMLval(meldingen[i], "gebouwcode");
var meldver = XMLval(meldingen[i], "verdiepingcode");
var meldrnr = XMLval(meldingen[i], "ruimtecode");
var locatie_key = -1; // Bepaald op basis van meldloc
var plaats_key = -1; // Bepaald op basis van meldgeb/meldver/meldrnr
var meld_oms = XMLval(meldingen[i], "omschrijving");
//var mldkenmerken = (meldingen[i].getElementsByTagName("kenmerk"))[0].childNodes[0].nodeValue; // Unsupported yet
var mldkenmerken = meldingen[i].getElementsByTagName("kenmerk");
var mld_key = -1; // Bepaald na insert
user.checkAutorisation("WEB_MLDUSE"); // Dit is nog ongeacht de melding
if (meldaction == "unknown")
{
// Kijk of er een melding bestaat met dit externe nummer.
// Ben je bang dat het nummer vaker voorkomt dan kun je deze prefixen in de xsl
tsql = "SELECT MIN(mld_melding_key) mld_melding_key, COUNT(*) aantal"
+ " FROM mld_melding"
+ " WHERE mld_melding_externnr ="+ safe.quoted_sql(ext_id);
var oRs = Oracle.Execute(tsql);
if (oRs("aantal").value == 1)
{
mld_key = oRs("mld_melding_key").value
meldaction = "update";
}
else
{
meldaction = "insert";
}
}
if (ext_id == null)
{
resultcode = 1;
resulttekst = "Undefined external ID (key)";
}
else if (meldaction == 'update')
{
resultcode = 0;
// verder nog even kijken wat we willen doen.
// in ieder geval de omschrijving aanpassen
fields.push({ dbs: "mld_melding_omschrijving", typ: "varchar", val: meld_oms, track: L("lcl_mld_inf_Omschrijving"), len: 4000 });
var mldUpd = buildTrackingUpdate("mld_melding", "mld_melding_key = " + mld_key, fields, { noValidateToken: true });
Oracle.Execute(mldUpd.sql);
}
else if (meldaction != 'insert')
{
resultcode = 2;
resulttekst = "Undefined operation (type)";
}
else
{
var voor_key = -1;
var perslid_key = -1;
if (voor_login != null)
{
// Zoek de voorkey op aan de hand van het emailadres
tsql = "SELECT prs_perslid_key "
+ " FROM prs_v_aanwezigperslid "
+ " WHERE prs_perslid_oslogin = UPPER(" + safe.quoted_sql(voor_login) + ")";
var oRs = Oracle.Execute(tsql);
if (!oRs.eof)
{
voor_key = oRs("prs_perslid_key").value;
}
}
if (voor_email != null && voor_key == -1)
{
// Zoek de voorkey op aan de hand van het emailadres
tsql = "SELECT prs_perslid_key "
+ " FROM prs_v_aanwezigperslid "
+ " WHERE UPPER(prs_perslid_email) = UPPER(" + safe.quoted_sql(voor_email) + ")";
var oRs = Oracle.Execute(tsql);
if (!oRs.eof)
{
voor_key = oRs("prs_perslid_key").value;
}
}
if (voor_key == -1)
{
voor_key = user_key;
perslid_key = user_key;
var iXsl = Server.CreateObject("MSXML2.DOMDocument.4.0");
if( ! iXsl.load(Server.MapPath(API.apidata.stylesheet)) )
{
API.error("Could not load XSL " + API.apidata.stylesheet + "\n" + iXsl.parseError.reason);
}
var inputXML = Server.CreateObject("MSXML2.DOMDocument.4.0");
inputXML.load(Request);
inputXML.transformNodeToObject(iXsl, xmlReq);
}
else
xmlReq.load(Request);
if (API.apidata.loglevel) __Log2File(xmlReq.xml, APIname + "_IN");
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.4.0");
xmlResp.appendChild(xmlResp.createProcessingInstruction("xml", "version=\"1.0\" encoding=\"utf-8\""))
// The response.
var FCLTElement = xmlResp.createElement("facilitor");
// The response header.
var now = new Date();
var nowtxt = now.getFullYear()+'-'+padout(now.getMonth()+1) +'-'+padout(now.getDate()) +' '
+padout(now.getHours()) +':'+padout(now.getMinutes())+':'+padout(now.getSeconds());
var elmHeader = xmlResp.createElement("header");
var headerinfo = {
// file: String(Request.ServerVariables("SCRIPT_NAME")).toLowerCase(),
datum: nowtxt,
naam: user.naam(),
custId: customerId,
language: user.lang()
}
for (param in headerinfo)
{
if (S("mld_allow_for_others") == 1)
{
perslid_key = user_key;
}
else
{
perslid_key = voor_key;
}
var FCLTdata = xmlResp.createElement(param);
FCLTdata.appendChild(xmlResp.createTextNode(headerinfo[param]));
elmHeader.appendChild(FCLTdata);
}
tsql = "SELECT sm.mld_stdmelding_t_uitvoertijd.tijdsduur tijdsduur"
+ " , sm.mld_stdmelding_t_uitvoertijd.eenheid eenheid"
+ " FROM mld_stdmelding sm"
+ " WHERE sm.mld_stdmelding_key = " + stdmld_key
+ " AND sm.mld_stdmelding_verwijder IS NULL";
var oRs = Oracle.Execute(tsql);
if (oRs.eof)
FCLTElement.appendChild(elmHeader);
// Hier zou het echte werk moeten gebeuren nav. xmlReq
// en FCLTElement moeten we uitbreiden met antwoorden.
var detected ="?";
// xmlReq.setProperty("SelectionLanguage", "XPath"); // Weet niet of noodzakelijk
// Dit is de meldingenloop (mochten er ooit nog anderen gaan volgen).
var meldingen = xmlReq.getElementsByTagName("melding");
for (i=0; i < meldingen.length; i++)
{
resultcode = 3;
resulttekst = "Undefined stdmelding";
}
else
{ // Hier heb ik een geldige mld_stdmelding_key.
stdmld_sla_tijdsduur = oRs("tijdsduur").value;
stdmld_sla_eenheid = oRs("eenheid").value;
// Lees per node de (optionele) tags en waarden.
var fields = []; // Bij te werken velden.
var ext_id = meldingen[i].getAttribute("key");
var meldaction = meldingen[i].getAttribute("type").toLowerCase();
var melddatum = XMLval(meldingen[i], "datum");
var einddatum = XMLval(meldingen[i], "einddatum");
//var melderemail = XMLval(meldingen[i], "melder"); // Unsupported yet
var stdmld_key = parseInt(XMLval(meldingen[i], "stdmelding"), 10); // Numeriek
var stdmld_sla = -1; // Normale uitvoertijd (prio door melder nog unsupported)
//var meldprio = XMLval(meldingen[i], "prioriteit"); // Unsupported yet
//var meldobj_id = XMLval(meldingen[i], "object"); // Unsupported yet
var meldloc = XMLval(meldingen[i], "locatiecode");
var meldgeb = XMLval(meldingen[i], "gebouwcode");
var meldver = XMLval(meldingen[i], "verdiepingcode");
var meldrnr = XMLval(meldingen[i], "ruimtecode");
var locatie_key = -1; // Bepaald op basis van meldloc
var plaats_key = -1; // Bepaald op basis van meldgeb/meldver/meldrnr
var meld_oms = XMLval(meldingen[i], "omschrijving");
//var mldkenmerken = (meldingen[i].getElementsByTagName("kenmerk"))[0].childNodes[0].nodeValue; // Unsupported yet
var mldkenmerken = meldingen[i].getElementsByTagName("kenmerk");
var mld_key = -1; // Bepaald na insert
fields.push({ dbs: "mld_stdmelding_key", typ: "key", val: stdmld_key });
fields.push({ dbs: "mld_melding_t_uitvoertijd.tijdsduur", typ: "number", val: stdmld_sla_tijdsduur, obj: "MLD_T_UITVOERTIJD" });
fields.push({ dbs: "mld_melding_t_uitvoertijd.eenheid", typ: "varchar", val: stdmld_sla_eenheid, obj: "MLD_T_UITVOERTIJD" });
if (melddatum != null)
{
try
{
var meldaanmaakdate = XMLtoJsDate(melddatum);
fields.push({ dbs: "mld_melding_datum", typ: "datetime", val: meldaanmaakdate });
}
catch (e)
{ // Verkeerde datum-formaat, volgens spec. dan now gebruiken!
__DoLog("Formaat ontvangen XML-datum incorrect: "+ melddatum, "#00FF00");
meldaanmaakdate = now;
fields.push({ dbs: "mld_melding_datum", typ: "datetime", val: meldaanmaakdate });
}
}
else
{
fields.push({ dbs: "mld_melding_datum", typ: "datetime", val: now });
}
// De einddatum is de meegegeven einddatum, maar als die niet wordt meegegeven is het
// gewoon enddate_std en dat regelt de trigger wel, dus DAN MOET IK HEM NIET MEEGEVEN
if (einddatum != null)
{
try
{
var meldeinddate = XMLtoJsDate(einddatum);
if (meldeinddate > meldaanmaakdate)
{
fields.push({ dbs: "mld_melding_einddatum", typ: "datetime", val: meldeinddate });
}
else
{
// Ontvangen XML-einddatum voor begindatum, dan later volgens SLA zetten!
__DoLog("Ontvangen XML-einddatum voor begindatum: "+ einddatum, "#00FF00");
}
}
catch (e)
{
// Verkeerde datum-formaat, dan later volgens SLA zetten!
__DoLog("Formaat ontvangen XML-einddatum incorrect: "+ einddatum, "#00FF00");
}
}
user.checkAutorisation("WEB_MLDUSE"); // Dit is nog ongeacht de melding
tsql = "SELECT alg_locatie_key "
+ " FROM alg_v_aanweziglocatie"
+ " WHERE alg_locatie_code="+ safe.quoted_sql(meldloc);
var oRs = Oracle.Execute(tsql);
if (!oRs.eof)
{
locatie_key = oRs("alg_locatie_key").value;
fields.push({ dbs: "mld_alg_locatie_key", typ: "key", val: locatie_key });
tsql = "SELECT alg_gebouw_key "
+ " FROM alg_v_aanweziggebouw"
+ " WHERE alg_locatie_key ="+ locatie_key
+ " AND alg_gebouw_code="+ safe.quoted_sql(meldgeb);
var oRs = Oracle.Execute(tsql);
if (!oRs.eof)
{
plaats_key = oRs("alg_gebouw_key").value;
tsql = "SELECT alg_verdieping_key "
+ " FROM alg_v_aanwezigverdieping"
+ " WHERE alg_gebouw_key ="+ plaats_key
+ " AND alg_verdieping_code="+ safe.quoted_sql(meldver);
var oRs = Oracle.Execute(tsql);
if (!oRs.eof)
{
plaats_key = oRs("alg_verdieping_key").value;
tsql = "SELECT alg_ruimte_key "
+ " FROM alg_v_aanwezigruimte"
+ " WHERE alg_verdieping_key ="+ plaats_key
+ " AND alg_ruimte_nr="+ safe.quoted_sql(meldrnr);
if (ext_id == null) {
resultcode = 1;
resulttekst = "Undefined external ID (key)";
} else if (meldaction != 'insert') {
resultcode = 2;
resulttekst = "Undefined operation (type)";
} else {
tsql = "SELECT mld_stdmelding_uitvoertijd "
+ " FROM mld_stdmelding"
+ " WHERE mld_stdmelding_key="+ stdmld_key
+ " AND mld_stdmelding_verwijder IS NULL";
var oRs = Oracle.Execute(tsql);
if (!oRs.eof) {
plaats_key = oRs("alg_ruimte_key").value;
}
}
}
if (oRs.eof) {
resultcode = 3;
resulttekst = "Undefined stdmelding";
} else {
// Hier heb ik een geldige mld_stdmelding_key.
stdmld_sla = oRs("mld_stdmelding_uitvoertijd").value;
if (plaats_key != -1)
{
fields.push({ dbs: "mld_alg_onroerendgoed_keys", typ: "key", val: plaats_key });
}
}
fields = fields.concat(
[ { dbs: "mld_melding_key", typ: "key", seq: "mld_s_mld_melding_key" },
{ dbs: "mld_melding_module", typ: "varchar", val: "MLD" },
{ dbs: "mld_meldbron_key", typ: "key", val: 6 }, // system
{ dbs: "mld_melding_omschrijving", typ: "varchar", val: meld_oms, len: 4000 },
{ dbs: "prs_kostenplaats_key", typ: "key", val: user.afdeling().prs_kostenplaats_key() },
{ dbs: "prs_perslid_key", typ: "key", val: perslid_key },
{ dbs: "prs_perslid_key_voor", typ: "key", val: voor_key },
{ dbs: "mld_melding_spoed", typ: "key", val: 3 }, // default (frontend) = 3
{ dbs: "mld_melding_externnr", typ: "varchar", val: ext_id, len: 30 }
]);
// We weten wat te inserten, nu nog uitvoeren; rechten voldoende afgedekt via MLDUSE-check hierboven?
if (resultcode == -1)
{ // nog steeds geen fouten
var mldIns = buildInsert("mld_melding", fields, { noValidateToken: true });
mld_key = mldIns.sequences["mld_melding_key"];
sql = mldIns.sql;
oRs = Oracle.Execute(sql);
// Zetten van de status op ingevoerd en afhandelen van de tracking.
mld.setmeldingstatus(mld_key, 2); // Zorgt ook voor tracking & daarmee notificatie.
// Eventuele (gewijzigde) objecten zijn nu ook opgeslagen. Nu kan de definitieve mld_melding.mld_melding_einddatum_std bepaald en gezet worden.
//mld.updatestdeinddatum(mld_key); // Unsupported yet. So update of mld_melding_einddatum_std not needed yet.
// De kenmerken.
for (j=0; j < mldkenmerken.length; j++)
{
var kenmerk_naam = mldkenmerken[j].getAttribute("naam");
if (mldkenmerken[j].childNodes.length > 0)
var kenmerk_waarde = mldkenmerken[j].childNodes[0].nodeValue;
else
var kenmerk_waarde = "";
//Response.Write(kenmerk_naam);
//Response.Write(kenmerk_waarde);
// Zoek het kenmerk op naam terug
ksql = "SELECT k.mld_kenmerk_key, sk.mld_srtkenmerk_kenmerktype, sk.mld_srtkenmerk_lengte "
+ " FROM mld_kenmerk k"
+ " , mld_srtkenmerk sk"
+ " , mld_stdmelding s"
+ " , mld_discipline d"
+ " WHERE s.mld_ins_discipline_key = d.ins_discipline_key"
+ " AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key "
+ " AND k.mld_kenmerk_verwijder IS NULL "
+ " AND sk.mld_srtkenmerk_upper = " + safe.quoted_sql_upper(kenmerk_naam)
+ " AND s.mld_ins_discipline_key = d.ins_discipline_key"
+ " AND s.mld_stdmelding_key = " + stdmld_key
+ " AND ((k.mld_stdmelding_key = s.mld_stdmelding_key AND k.mld_kenmerk_niveau = 'S')"
+ " OR (k.mld_stdmelding_key = s.mld_ins_discipline_key AND k.mld_kenmerk_niveau = 'D')"
+ " OR (k.mld_stdmelding_key = d.ins_srtdiscipline_key AND k.mld_kenmerk_niveau = 'T'))";
var oRs = Oracle.Execute(ksql);
if (!oRs.eof)
{
var kenmerk_key = oRs("mld_kenmerk_key").value;
var kenmerk_type = oRs("mld_srtkenmerk_kenmerktype").value;
var kenmerk_lengte = oRs("mld_srtkenmerk_lengte").value;
ksql = "SELECT km.mld_kenmerkmelding_key "
+ " FROM mld_kenmerkmelding km "
+ " WHERE km.mld_melding_key = " + mld_key
+ " AND km.mld_kenmerk_key = " + kenmerk_key;
var oRs = Oracle.Execute(ksql);
switch (kenmerk_type)
{
case 'C':
{
// we ondersteunen alleen nog maar karakter velden.
if (!oRs.eof)
{
var kenmerkmelding_key = oRs("mld_kenmerkmelding_key").value;
ksql = "UPDATE mld_kenmerkmelding"
+ " SET mld_kenmerkmelding_waarde = " + safe.quoted_sql(kenmerk_waarde)
+ " WHERE mld_kenmerkmelding_key = " + kenmerkmelding_key;
}
else
{
ksql = "INSERT INTO mld_kenmerkmelding (mld_kenmerk_key, mld_melding_key, mld_kenmerkmelding_waarde) "
+ "VALUES (" + kenmerk_key + ", " + mld_key + ", " + safe.quoted_sql(kenmerk_waarde) + ")";
}
Oracle.Execute(ksql);
break;
}
case 'N':
{
// we ondersteunen alleen nog maar karakter velden.
if (!oRs.eof)
{
var kenmerkmelding_key = oRs("mld_kenmerkmelding_key").value;
ksql = "UPDATE mld_kenmerkmelding"
+ " SET mld_kenmerkmelding_waarde = " + safe.quoted_sql(kenmerk_waarde)
+ " WHERE mld_kenmerkmelding_key = " + kenmerkmelding_key;
}
else
{
ksql = "INSERT INTO mld_kenmerkmelding (mld_kenmerk_key, mld_melding_key, mld_kenmerkmelding_waarde) "
+ "VALUES (" + kenmerk_key + ", " + mld_key + ", " + safe.quoted_sql(kenmerk_waarde) + ")";
}
Oracle.Execute(ksql);
break;
}
case "M": // Folder met bijlagen
{
//Response.Write(kenmerk_naam);
var bijlagen = mldkenmerken[j].getElementsByTagName("bijlage");
var bi;
for (bi = 0; bi < bijlagen.length; bi++)
{
var Attachment = XMLval(bijlagen[bi], "attachment");
var Name = XMLval(bijlagen[bi], "name");
var Size = XMLval(bijlagen[bi], "size");
//Response.Write("Name: " + Name + " size: " + Size);
if (Attachment && Name && Size)
{
var SafeName = safe.filename(Name);
var params = flexProps("MLD", mld_key, String(kenmerk_key), "M");
if (!params.isAllowedName(SafeName))
{
__DoLog("Unsafe SOAP file '{0}' ignored.".format(SafeName), "#FFFF00");
fields.push({ dbs: "mld_stdmelding_key", typ: "key", val: stdmld_key });
fields.push({ dbs: "mld_melding_uitvoertijd", typ: "number", val: stdmld_sla });
if (melddatum != null) {
try {
var meldaanmaakdate = XMLtoJsDate(melddatum);
fields.push({ dbs: "mld_melding_datum", typ: "datetime", val: meldaanmaakdate });
}
catch (e) {
// Verkeerde datum-formaat, volgens spec. dan now gebruiken!
__DoLog("Formaat ontvangen XML-datum incorrect: "+ melddatum, "#00FF00");
meldaanmaakdate = now;
fields.push({ dbs: "mld_melding_datum", typ: "datetime", val: meldaanmaakdate });
}
} else {
fields.push({ dbs: "mld_melding_datum", typ: "datetime", val: now });
}
// De einddatum is de meegegeven einddatum, maar als die niet wordt meegegeven is het
// gewoon enddate_std en dat regelt de trigger wel, dus DAN MOET IK HEM NIET MEEGEVEN
if (einddatum != null) {
try {
var meldeinddate = XMLtoJsDate(einddatum);
if (meldeinddate > meldaanmaakdate) {
fields.push({ dbs: "mld_melding_einddatum", typ: "datetime", val: meldeinddate });
}
else {
// Ontvangen XML-einddatum voor begindatum, dan later volgens SLA zetten!
__DoLog("Ontvangen XML-einddatum voor begindatum: "+ einddatum, "#00FF00");
}
}
catch (e) {
// Verkeerde datum-formaat, dan later volgens SLA zetten!
__DoLog("Formaat ontvangen XML-einddatum incorrect: "+ einddatum, "#00FF00");
}
else
{
__Log("Start saving: " + params.AttachPath + SafeName);
CreateFullPath(params.AttachPath);
encodedString2File(params.AttachPath + SafeName, Attachment, "bin.hex");
__Log("Done saving: " + params.AttachPath + SafeName);
}
}
}
}
}
oRs.Close();
}
}
resultcode = 0; // Ik heb gedaan wat ik moest en mocht doen voor deze melding.
// En nog maar even de aanname dat een extern systeem niet aan workflows/ktos doet?
// Klantspecifieke check functie (hookfunction) voor de invoer
var pResult = new HookResult();
if (!custfunc.mld_postsave(mld_key, pResult))
tsql = "SELECT alg_locatie_key "
+ " FROM alg_v_aanweziglocatie"
+ " WHERE alg_locatie_code="+ safe.quoted_sql(meldloc);
var oRs = Oracle.Execute(tsql);
if (!oRs.eof) {
locatie_key = oRs("alg_locatie_key").value;
fields.push({ dbs: "mld_alg_locatie_key", typ: "key", val: locatie_key });
tsql = "SELECT alg_gebouw_key "
+ " FROM alg_v_aanweziggebouw"
+ " WHERE alg_locatie_key ="+ locatie_key
+ " AND alg_gebouw_code="+ safe.quoted_sql(meldgeb);
var oRs = Oracle.Execute(tsql);
if (!oRs.eof) {
plaats_key = oRs("alg_gebouw_key").value;
tsql = "SELECT alg_verdieping_key "
+ " FROM alg_v_aanwezigverdieping"
+ " WHERE alg_gebouw_key ="+ plaats_key
+ " AND alg_verdieping_code="+ safe.quoted_sql(meldver);
var oRs = Oracle.Execute(tsql);
if (!oRs.eof) {
plaats_key = oRs("alg_verdieping_key").value;
tsql = "SELECT alg_ruimte_key "
+ " FROM alg_v_aanwezigruimte"
+ " WHERE alg_verdieping_key ="+ plaats_key
+ " AND alg_ruimte_nr="+ safe.quoted_sql(meldrnr);
var oRs = Oracle.Execute(tsql);
if (!oRs.eof) {
plaats_key = oRs("alg_ruimte_key").value;
}
}
}
if (plaats_key != -1) {
fields.push({ dbs: "mld_alg_onroerendgoed_keys", typ: "key", val: plaats_key });
}
}
fields = fields.concat(
[ { dbs: "mld_melding_key", typ: "key", seq: "mld_s_mld_melding_key" },
{ dbs: "mld_melding_module", typ: "varchar", val: "MLD" },
{ dbs: "mld_meldbron_key", typ: "key", val: 6 }, // system
{ dbs: "mld_melding_omschrijving", typ: "varchar", val: meld_oms, len: 4000 },
{ dbs: "prs_kostenplaats_key", typ: "key", val: user.afdeling().prs_kostenplaats_key() },
{ dbs: "prs_perslid_key", typ: "key", val: user_key },
{ dbs: "prs_perslid_key_voor", typ: "key", val: user_key },
{ dbs: "mld_melding_spoed", typ: "key", val: 3 }, // default (frontend) = 3
{ dbs: "mld_melding_externnr", typ: "varchar", val: ext_id, len: 30 }
]);
// We weten wat te inserten, nu nog uitvoeren; rechten voldoende afgedekt via MLDUSE-check hierboven?
if (resultcode == -1) { // nog steeds geen fouten
var mldIns = buildInsert("mld_melding", fields, { noValidateToken: true });
mld_key = mldIns.sequences["mld_melding_key"];
sql = mldIns.sql;
oRs = Oracle.Execute(sql);
// Zetten van de status op ingevoerd en afhandelen van de tracking.
mld.setmeldingstatus(mld_key, 2); // Zorgt ook voor tracking & daarmee notificatie.
// Eventuele (gewijzigde) objecten zijn nu ook opgeslagen. Nu kan de definitieve mld_melding.mld_melding_einddatum_std bepaald en gezet worden.
//mld.updatestdeinddatum(mld_key); // Unsupported yet. So update of mld_melding_einddatum_std not needed yet.
// De kenmerken.
for (j=0; j < mldkenmerken.length; j++)
{
var kenmerk_naam = mldkenmerken[j].getAttribute("naam");
if (mldkenmerken[j].childNodes.length > 0)
var kenmerk_waarde = mldkenmerken[j].childNodes[0].nodeValue;
else
var kenmerk_waarde = "";
//Response.Write(kenmerk_naam);
//Response.Write(kenmerk_waarde);
// Zoek het kenmerk op naam terug
ksql = "SELECT k.mld_kenmerk_key, sk.mld_srtkenmerk_kenmerktype, sk.mld_srtkenmerk_lengte "
+ " FROM mld_kenmerk k"
+ " , mld_srtkenmerk sk"
+ " , mld_stdmelding s"
+ " , mld_discipline d"
+ " WHERE s.mld_ins_discipline_key = d.ins_discipline_key"
+ " AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key "
+ " AND sk.mld_srtkenmerk_upper = " + safe.quoted_sql_upper(kenmerk_naam)
+ " AND s.mld_ins_discipline_key = d.ins_discipline_key"
+ " AND s.mld_stdmelding_key = " + stdmld_key
+ " AND ((k.mld_stdmelding_key = s.mld_stdmelding_key AND k.mld_kenmerk_niveau = 'S')"
+ " OR (k.mld_stdmelding_key = s.mld_ins_discipline_key AND k.mld_kenmerk_niveau = 'D')"
+ " OR (k.mld_stdmelding_key = d.ins_srtdiscipline_key AND k.mld_kenmerk_niveau = 'T'))";
var oRs = Oracle.Execute(ksql);
if (!oRs.eof)
{
var kenmerk_key = oRs("mld_kenmerk_key").value;
var kenmerk_type = oRs("mld_srtkenmerk_kenmerktype").value;
var kenmerk_lengte = oRs("mld_srtkenmerk_lengte").value;
ksql = "SELECT km.mld_kenmerkmelding_key "
+ " FROM mld_kenmerkmelding km "
+ " WHERE km.mld_melding_key = " + mld_key
+ " AND km.mld_kenmerk_key = " + kenmerk_key;
var oRs = Oracle.Execute(ksql);
switch (kenmerk_type)
{
case 'C':
{
// we ondersteunen alleen nog maar karakter velden.
if (!oRs.eof)
{
var kenmerkmelding_key = oRs("mld_kenmerkmelding_key").value;
ksql = "UPDATE mld_kenmerkmelding"
+ " SET mld_kenmerkmelding_waarde = " + safe.quoted_sql(kenmerk_waarde)
+ " WHERE mld_kenmerkmelding_key = " + kenmerkmelding_key;
}
else
{
ksql = "INSERT INTO mld_kenmerkmelding (mld_kenmerk_key, mld_melding_key, mld_kenmerkmelding_waarde) "
+ "VALUES (" + kenmerk_key + ", " + mld_key + ", " + safe.quoted_sql(kenmerk_waarde) + ")";
}
Oracle.Execute(ksql);
break;
}
case 'N':
{
// we ondersteunen alleen nog maar karakter velden.
if (!oRs.eof)
{
var kenmerkmelding_key = oRs("mld_kenmerkmelding_key").value;
ksql = "UPDATE mld_kenmerkmelding"
+ " SET mld_kenmerkmelding_waarde = " + safe.quoted_sql(kenmerk_waarde)
+ " WHERE mld_kenmerkmelding_key = " + kenmerkmelding_key;
}
else
{
ksql = "INSERT INTO mld_kenmerkmelding (mld_kenmerk_key, mld_melding_key, mld_kenmerkmelding_waarde) "
+ "VALUES (" + kenmerk_key + ", " + mld_key + ", " + safe.quoted_sql(kenmerk_waarde) + ")";
}
Oracle.Execute(ksql);
break;
}
case "M": // Folder met bijlagen
{
//Response.Write(kenmerk_naam);
var bijlagen = mldkenmerken[j].getElementsByTagName("bijlage");
var bi;
for (bi = 0; bi < bijlagen.length; bi++)
{
var Attachment = XMLval(bijlagen[bi], "attachment");
var Name = XMLval(bijlagen[bi], "name");
var Size = XMLval(bijlagen[bi], "size");
//Response.Write("Name: " + Name + " size: " + Size);
if (Attachment && Name && Size)
{
var SafeName = safe.filename(Name);
var params = flexProps("MLD", mld_key, String(kenmerk_key), "M");
if (params.extFilter)
{
var regFilter = params.extFilter;
regFilter = regFilter.replace(/( |,|;)/g,"|"); // Altijd | karakter
regFilter = ".*\\." + "(" + regFilter + ")$"; // er moet een punt voor en extensie is aan het einde
}
else
regFilter = ".*";
if (!new RegExp(S("flexAllowedExt"), "ig").test(SafeName) ||
!new RegExp(regFilter, "ig").test(SafeName))
{
__DoLog("Unsafe SOAP file '{0}' ignored.".format(SafeName), "#FFFF00");
}
else
{
__Log("Start saving: " + params.AttachPath + SafeName);
CreateFullPath(params.AttachPath);
VB_SaveFile(params.AttachPath + SafeName, Attachment)
__Log("Done saving: " + params.AttachPath + SafeName);
}
}
}
}
}
oRs.Close();
}
}
resultcode = 0; // Ik heb gedaan wat ik moest en mocht doen voor deze melding.
// En nog maar even de aanname dat een extern systeem niet aan workflows/ktos doet?
}
} // end geldige stdmld_key
} // end geldige ext_id
var binfo = {
returncode: resultcode,
returntekst: resulttekst,
// executed:sql, // debug
datum: nowtxt,
meldingnr: mld_key
}
var FCLTBody = xmlResp.createElement("melding"); // type=response
FCLTBody.setAttribute('key', ext_id); // Let op: key van de aanroeper!
FCLTBody.setAttribute('type', 'response');
for (param in binfo)
{
__DoLog(pResult.errmsg, "#00FF00");
var FCLTdata = xmlResp.createElement(param);
FCLTdata.appendChild(xmlResp.createTextNode(binfo[param]));
FCLTBody.appendChild(FCLTdata);
}
}
} // end geldige stdmld_key
} // end geldige ext_id
FCLTElement.appendChild(FCLTBody);
} // end for
// Alle melding-nodes zijn behandeld.
var binfo = {returncode: resultcode,
returntekst: resulttekst,
// executed:sql, // debug
datum: nowtxt,
meldingnr: mld_key
}
xmlResp.appendChild(FCLTElement);
var FCLTBody = xmlResp.createElement("melding"); // type=response
FCLTBody.setAttribute('key', ext_id); // Let op: key van de aanroeper!
FCLTBody.setAttribute('type', 'response');
for (param in binfo)
{
var FCLTdata = xmlResp.createElement(param);
FCLTdata.appendChild(xmlResp.createTextNode(binfo[param]));
FCLTBody.appendChild(FCLTdata);
}
if (API.apidata.stylesheet)
{
// Niet super efficient dat we eerst naar tekstuele xml gaan maar ach...
STR2Stream(xmlResp.xml, API.apidata.stylesheet, Response, {});
}
else
{
Response.ContentType = "text/xml";
Response.Write(xmlResp.xml)
}
FCLTElement.appendChild(FCLTBody);
} // end for
// Alle melding-nodes zijn behandeld.
xmlResp.appendChild(FCLTElement);
if (API.apidata.stylesheet)
{
// Niet super efficient dat we eerst naar tekstuele xml gaan maar ach...
STR2Stream(xmlResp.xml, API.apidata.stylesheet, Response, {});
}
else
{
Response.ContentType = "text/xml";
Response.Write(xmlResp.xml)
}
%>
<script language="VBScript" runat="Server">
' JavaScript is erg slecht in binary data, dat doen we dan maar met VBScript.
Function HexDecode(ByVal vCode)
Dim oXML, oNode
Set oXML = CreateObject("MSXML2.DOMDocument.4.0")
Set oNode = oXML.CreateElement("hex")
oNode.dataType = "bin.hex" ' Zeer snelle oplossing
oNode.text = vCode
Set HexDecode = Stream_BinaryToStream(oNode.nodeTypedValue)
Set oNode = Nothing
Set oXML = Nothing
End Function
'Stream_BinaryToStream Function
'2003 Antonin Foller, http://www.motobit.com
'Binary - VT_UI1 | VT_ARRAY data To convert To a string
Function Stream_BinaryToStream(Binary)
Const adTypeText = 2
Const adTypeBinary = 1
'Create Stream object
Dim BinaryStream 'As New Stream
Set BinaryStream = CreateObject("ADODB.Stream")
'Specify stream type - we want To save binary data.
BinaryStream.Type = adTypeBinary
'Open the stream And write binary data To the object
BinaryStream.Open
BinaryStream.Write Binary
'Change stream type To text/string
BinaryStream.Position = 0
BinaryStream.Type = adTypeText
'Specify charset For the output text (unicode) data.
BinaryStream.CharSet = "us-ascii"
'Open the stream And get text/string data from the object
Set Stream_BinaryToStream = BinaryStream
End Function
Function VB_SaveFile(safefullname, attachment)
Set BinaryStream = HexDecode(attachment)
'' on error resume next
'Save binary data To disk
BinaryStream.SaveToFile safefullname, 2 ' adSaveCreateOverWrite
myErr = Err.Description
'' on error goto 0
End Function
</script>

File diff suppressed because it is too large Load Diff

View File

@@ -1,170 +0,0 @@
<%@ language = "JavaScript" %>
<% /*
$Revision$
$Id$
File: api_perslid.asp
Description: API om een perslid te kunnen muteren.
Parameters: apiname, apikey
Context: Door een remote systeem (geen persoon) om info uit FACILITOR te halen aan te roepen
Notes:
Status:
*/
DOCTYPE_Disable = 1;
LCL_Disable = 1
THIS_FILE = "appl/api/api_perslid.asp";
%>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../api/api.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../Shared/save2db.inc"-->
<%
Session.Codepage = 65001;
Response.Charset = 'utf-8';
Session.Abandon(); // Voor de zekerheid
try
{
var API = new API_func(); // Valideert ook
var asJSON = getQParam("json","0")!="0";
var params = RequestJSON();
if (!params)
API.error("Error parsing input JSON");
// FAC_API_OPTIONS_JSON
var urole = "fe"; // Altijd?
var autfunction = urole == "fe"? "WEB_RESUSE" : "WEB_RESFOF";
params.authparams = user.checkAutorisation(autfunction, null, null, true); // pessimistisch
/*
params = {
externId: "AAFM_12345", // Zelf zorgen dat het uniek is in het doel-systeem
voornaam: "Jos",
achternaam: "Groot Lipman",
email: "user@example.com",
telefoon: "053-1234567",
mobiel: "06-12345678"
};
*/
warning = "";
// TODO: Autorisatie
prs_key = -1;
switch (params.request)
{
case "select": // zoekt een persoon op basis van params.externId
var sql = "SELECT prs_perslid_key"
+ " FROM prs_perslid"
+ " WHERE prs_perslid_oslogin = " + safe.quoted_sql("_" + params.externId);
var oRs = Oracle.Execute(sql);
if (!oRs.Eof)
{
prs_key = oRs("prs_perslid_key").Value;
}
oRs.Close();
break;
case "update": // doet desnoods een insert
var fields = [];
if ("voornaam" in params)
fields.push({ dbs: "prs_perslid_voornaam", typ: "varchar", val: params.voornaam });
if ("achternaam" in params)
fields.push({ dbs: "prs_perslid_naam", typ: "varchar", val: params.achternaam });
if ("tussenvoegsel" in params)
fields.push({ dbs: "prs_perslid_tussenvoegsel", typ: "varchar", val: params.tussenvoegsel });
if ("email" in params)
fields.push({ dbs: "prs_perslid_email", typ: "varchar", val: params.email });
if ("geslacht" in params)
fields.push({ dbs: "geslacht", typ: "varchar", val: params.geslacht });
if ("prs_perslid_mobiel" in params)
fields.push({ dbs: "prs_perslid_mobiel", typ: "varchar", val: params.mobiel });
var sql = "SELECT prs_perslid_key"
+ " FROM prs_perslid"
+ " WHERE prs_perslid_oslogin = " + safe.quoted_sql("_" + params.externId);
var oRs = Oracle.Execute(sql);
if (!oRs.Eof)
{
prs_key = oRs("prs_perslid_key").Value;
sql = buildUpdate("prs_perslid", fields, { noValidateToken: true })
+ " prs_perslid_key = " + prs_key;
var err = Oracle.Execute(sql, true);
if (err.friendlyMsg)
warning = err.friendlyMsg;
//else
// shared.trackaction("PRSUPD", prs_key);
}
else // Nieuwe
{ /// TODO: Speciale flags?
/// TODO: _default groep (door de trigger) is te veel. Misschien _defaultextern?
fields.push({ dbs: "prs_perslid_key", typ: "key", seq: "prs_s_prs_alluitvoerende_keys" });
fields.push({ dbs: "prs_perslid_oslogin", typ: "varchar", val: "_" + params.externId }); // De underscore voorkomt nagenoeg volledig dat ze ergens in beeld komen
fields.push({ dbs: "prs_afdeling_key", typ: "key", val: user.prs_afdeling_key() }); // Vooralsnog altijd zelfde als de API-user!
fields.push({ dbs: "prs_srtperslid_key", typ: "key", val: user.prs_srtperslid_key() });
fields.push({ dbs: "prs_perslid_ingids", typ: "check", val: 0 });
var prsIns = buildInsert("prs_perslid", fields, { noValidateToken: true });
prs_key = prsIns.sequences["prs_perslid_key"];
var err = Oracle.Execute(prsIns.sql, true);
if (err.friendlyMsg)
warning = err.friendlyMsg;
else
{
shared.trackaction("PRSNEW", prs_key);
// We willen niet in authgroep _default maar in _defaultextern
var sql = "DELETE FROM fac_gebruikersgroep"
+ " WHERE prs_perslid_key = " + prs_key;
Oracle.Execute(sql);
var sql = " INSERT INTO fac_gebruikersgroep"
+ " (fac_groep_key, prs_perslid_key)"
+ " SELECT fac_groep_key, " + prs_key
+ " FROM fac_groep"
+ " WHERE fac_groep_upper = '_DEFAULTEXTERN'";
Oracle.Execute(sql);
}
}
oRs.Close();
break;
default:
API.error("Unknown API request");
}
// We hebben nu een prs_key
Response.ContentType = "application/json";
Response.AddHeader("Access-Control-Allow-Origin", "*"); // Opdat FireFox cross-domain toestaat
var result = { success: true };
if (warning)
result = { succes: false, error: warning };
else
{
result.prs_key = prs_key;
if (prs_key > 0)
{ // plak prs_auth achter een deeplink en deze gebruiker kan daarmee (vandaag) inloggen
result.prs_auth = "userauth=" + prs_key + "&userhmac=" + safe.url(protectHMAC.create(String(prs_key)));
}
}
var antwoord = JSON.stringify(result, null, getQParam("pretty","0")=="1"?2:0);
var oCrypto = new ActiveXObject("SLNKDWF.Crypto");
var eTag = '"' + oCrypto.hex_sha1(antwoord).toLowerCase() + '"';
Response.AddHeader("ETag", eTag);
if (Request.ServerVariables("HTTP_IF_NONE_MATCH") == eTag)
{ // We hebben een match!
Response.Clear();
Response.Status = "304 Not modified";
Response.End;
}
if (API.apidata.loglevel) __Log2File(antwoord, API.APIname + "_OUT");
Response.write(antwoord);
}
catch (e)
{
API.error(typeof e == "string"? e : "API_error: " + e.description);
}
%>

View File

@@ -23,5 +23,7 @@
Session.Codepage = 65001;
Response.Charset = 'utf-8';
var API = new API_func();
var APIname = getQParam("API");
var APIKEY = getQParam("APIKEY");
var API = new API_func(APIname, APIKEY);
%>

View File

@@ -17,7 +17,9 @@
<!-- #include file="../api/api.inc" -->
<%
var API = new API_func();
var APIname = getQParam("API");
var APIKEY = getQParam("APIKEY");
var API = new API_func(APIname, APIKEY);
var BOOKMARK = getQParam("BOOKMARK", "");

View File

@@ -29,27 +29,27 @@
Session.Codepage = 65001;
Response.Charset = 'utf-8';
var API = new API_func();
var APIname = getQParam("API");
var APIKEY = getQParam("APIKEY");
var API = new API_func(APIname, APIKEY);
var tsql = "-"; // Voor tijdelijke statement(s)
var sql = "-"; // De uiteindelijke insert/update-sql
var xmlReq = Server.CreateObject("MSXML2.DOMDocument.6.0");
var xmlReq = Server.CreateObject("MSXML2.DOMDocument.4.0");
if (API.apidata.stylesheet)
{
var iXsl = Server.CreateObject("MSXML2.DOMDocument.6.0");
var iXsl = Server.CreateObject("MSXML2.DOMDocument.4.0");
if( ! iXsl.load(Server.MapPath(API.apidata.stylesheet)) )
{
API.error("Could not load XSL " + API.apidata.stylesheet + "\n" + iXsl.parseError.reason);
}
var inputXML = Server.CreateObject("MSXML2.DOMDocument.6.0");
var inputXML = Server.CreateObject("MSXML2.DOMDocument.4.0");
inputXML.load(Request);
inputXML.transformNodeToObject(iXsl, xmlReq);
}
else
xmlReq.load(Request);
if (API.apidata.loglevel) __Log2File(xmlReq.xml, API.APIname + "_IN");
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.6.0");
var xmlResp = new ActiveXObject("MSXML2.DOMDocument.4.0");
xmlResp.appendChild(xmlResp.createProcessingInstruction("xml", "version=\"1.0\" encoding=\"utf-8\""))
// The response.
@@ -278,22 +278,12 @@
if (shown != null) { // Bij update optioneel
// Feitelijke UPDATE shown.
// Verder geen checks (Oracle fout als shown < 0 of shown > 999 niet afvangen???)!
if (S("res_noshow_detailed") == 1) {
sql = "UPDATE res_rsv_ruimte"
+ " SET res_rsv_ruimte_bezoekers_shown="+parseInt(shown, 10)
+ " WHERE res_rsv_ruimte_key="+rsv_ruimte_key
+ " AND 1=1"; // Niet dirty, niet verwijderd, ...???
Oracle.Execute(sql);
}
else {
if (parseInt(shown, 10) == 0) {
sql = "UPDATE res_rsv_ruimte"
+ " SET res_rsv_ruimte_noshow = 1"
+ " WHERE res_rsv_ruimte_key="+rsv_ruimte_key
+ " AND 1=1"; // Niet dirty, niet verwijderd, ...???
Oracle.Execute(sql);
}
}
sql = "UPDATE res_rsv_ruimte"
+ " SET res_rsv_ruimte_bezoekers_shown="+parseInt(shown, 10)
+ " WHERE res_rsv_ruimte_key="+rsv_ruimte_key
+ " AND 1=1"; // Niet dirty, niet verwijderd, ...???
Oracle.Execute(sql);
// RESNOS-tracking toevoegen!
shared.trackaction("RESNOS", rsv_ruimte_key);
}

View File

@@ -1,175 +0,0 @@
<%@ language = "JavaScript" %>
<% /*
$Revision$
$Id$
File: api_ressoap_info.asp
Description: Planbord achtige informatie achterhalen.
Parameters: apiname, apikey
Context: Door een remote systeem (geen persoon) om info uit FACILITOR te halen aan te roepen
Notes:
*/
JSON_Result = true;
LCL_Disable = 1
THIS_FILE = "appl/api/api_ressoap_info.asp";
// Session("logging")=1;
%>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../api/api.inc" -->
<!-- #include file="../Shared/discxalg3d.inc"-->
<!-- #include file="../fac/prodsearch.inc"-->
<!-- #include file="../res/res.inc" -->
<%
Session.Codepage = 65001;
Response.Charset = 'utf-8';
Session.Abandon(); // Voor de zekerheid
try
{
var API = new API_func(); // Valideert ook
var asJSON = getQParam("json","0")!="0";
var params = RequestJSON();
if (!params)
API.error("Error parsing input JSON");
// FAC_API_OPTIONS_JSON
var urole = "fe"; // Altijd?
var autfunction = urole == "fe"? "WEB_RESUSE" : "WEB_RESFOF";
params.authparams = user.checkAutorisation(autfunction, null, null, true); // pessimistisch
/*
xparams = {id: "tab_room_sched",
res_van: new Date(2013, 11, 3, 08, 00),
res_tot: new Date(2013, 11, 3, 17, 00),
loc: 71, // Alkmaar
bld: -1,
ruimtecat: [],
res_ruimte_key: -1,
rsv_ruimte_key: -1,
vis: 1, // vis,
activiteit_key: 1, // UWVA vergadering
srtact: -1, // niet nodig als activiteit_key?
forSelectRoom: true,
authparams: user.checkAutorisation(autfunction, null, null, true), // pessimistisch
urole: urole
};
*/
var headerinfo = {
// file: String(Request.ServerVariables("SCRIPT_NAME")).toLowerCase(),
// datum: new Date(),
naam: user.naam(),
custId: customerId,
language: user.lang()
}
params.anonymous = true; // erg anoniem
params.get_deepurl = true; // we willen graag een bookmark
if (params.prs_externId && !(params.prs_key > 0))
{
var sql = "SELECT prs_perslid_key"
+ " FROM prs_perslid"
+ " WHERE prs_perslid_oslogin = " + safe.quoted_sql("_" + params.prs_externId);
var oRs = Oracle.Execute(sql);
if (!oRs.Eof)
{
params.prs_key = oRs("prs_perslid_key").Value;
}
oRs.Close()
}
switch (params.request)
{
case "plan_rooms_info":
plan_info = res.plan_rooms_info(params);
set_deep_info(params, plan_info);
break;
case "plan_bezet_info":
plan_info = res.plan_bezet_info(params);
break;
case "prodsearch_rooms_info":
var w_discs = write_discs();
var filter = { s: params.s
, soort: { val: "resruimte", lcl: L("lcl_srch_entiteit") }
, satisfaction: params.satisfaction
, locatieKey: -1
, gebouwKey: -1
, verdiepingKey: -1
};
var inc_queries = ["resruimte"];
var queries = prodsearch_queries(w_discs, filter);
var q_items = { alg_locatie_plaats: params.alg_locatie_plaats };
var sql = prodsearch_sql(filter, queries, w_discs, q_items, inc_queries);
var oRs = Oracle.Execute(sql);
var plan_info = Oracle.rs2hash(oRs);
oRs.Close();
set_deep_info(params, plan_info);
break;
case "user_lopend_info": // Alle lopende reserveringen van params.prs_externId
plan_info = [];
if (params.prs_key > 0)
{
plan_info = res.user_lopend_info(params);
}
break;
default:
API.error("Unknown API request: " + params.request);
}
Response.ContentType = "application/json";
Response.AddHeader("Access-Control-Allow-Origin", "*"); // Opdat FireFox cross-domain toestaat
var result = { header: headerinfo,
success: true
}
result[params.request] = plan_info;
var antwoord = JSON.stringify(result, null, getQParam("pretty","0")=="1"?2:0);
var oCrypto = new ActiveXObject("SLNKDWF.Crypto");
var eTag = '"' + oCrypto.hex_sha1(antwoord).toLowerCase() + '"';
Response.AddHeader("ETag", eTag);
if (Request.ServerVariables("HTTP_IF_NONE_MATCH") == eTag)
{ // We hebben een match! Effectief besparen wel alleen op dataverkeer, de queries zijn al geweest
Response.Clear();
Response.Status = "304 Not modified";
Response.End;
}
if (API.apidata.loglevel) __Log2File(antwoord, API.APIname + "_OUT");
Response.write(antwoord);
}
catch (e)
{
API.error(typeof e == "string"? e : "API_error: " + e.description);
}
function set_deep_info(params, plan_info)
{
// Bepaal de URL waar user straks op kan klikken
if (params.mobile)
{
var deepurl = HTTP.urlzelf() + "/appl/pda/reservering.asp?fac_id=" + customerId;
}
else
{
var deepurl = HTTP.urlzelf() + "/?fac_id=" + customerId + "&u=reservering";
}
for (var r in plan_info)
{
plan_info[r].deepurl = deepurl;
if (plan_info[r].image)
plan_info[r].image_url = HTTP.urlzelfnoroot() + S("res_image_path") + plan_info[r].image;
else if (plan_info[r].foto) // prodsearch
plan_info[r].image_url = HTTP.urlzelfnoroot() + S("res_image_path") + plan_info[r].foto;
}
}
%>

View File

@@ -11,8 +11,7 @@
Note: LET OP: Alle data is/moet HTML-safe zijn!
*/ %>
<%
var JSON_Result = true;
<% DOCTYPE_Disable = 1;
%>
<!--#include file="../Shared/common.inc"-->
<!--#include file="../Shared/json2.js" -->
@@ -20,7 +19,9 @@ var JSON_Result = true;
<!-- #include file="../api/api.inc" -->
<%
var API = new API_func();
var APIname = getQParam("API");
var APIKEY = getQParam("APIKEY");
var API = new API_func(APIname, APIKEY);
var callback = getQParam("callback", null);
@@ -53,10 +54,7 @@ var JSON_Result = true;
}
if (callback)
{
Response.ContentType = "application/javascript";
Response.Write(callback + "(" + JSON.stringify(result) + ")");
}
else
Response.Write(JSON.stringify(result));
%>

View File

@@ -14,14 +14,15 @@
DOCTYPE_Disable = 1;
FCLTEXPIRES = 8*60; // geen database interactie tenslotte
THIS_FILE = "appl/api/phonebook_js.asp";
var EXPIRED_PASSWORD_OK = true; // performance
%>
<!-- #include file="../Shared/common.inc"-->
<!-- #include file="../Shared/json2.js" -->
<!-- #include file="../api/api.inc" -->
<%
var API = new API_func();
var APIname = getQParam("API");
var APIKEY = getQParam("APIKEY");
var API = new API_func(APIname, APIKEY);
var nojQuery = getQParam("nojQuery", 0)==1;
@@ -31,7 +32,6 @@ var EXPIRED_PASSWORD_OK = true; // performance
var sitenoroot = proto + "://" + Request.ServerVariables("SERVER_NAME");
var site = sitenoroot + rooturl;
Response.ContentType = "application/javascript";
//lcl.buildClientLCL();
// LET OP: Geen FcltMgr.js en dus niet (clientside) zelflerend
%>
@@ -110,7 +110,7 @@ function L(p_lcl)
window.facilitor.show_phonebook = function(data, textStatus)
{
// Alle styling moet nog via classes
var closer = "<span onclick='$(\"#phonebookdetails\").hide()' style='float: right; cursor: pointer' title='<%=L("lcl_close_window")%>'>x</span>"
var closer = "<span onclick='$(\"#phonebookdetails\").hide()' style='float: right; cursor: hand' title='<%=L("lcl_close_window")%>'>x</span>"
if (window.facilitor.phonebook_options.detailurl)
{
var jumpto = window.facilitor.phonebook_options.detailurl;

View File

@@ -20,30 +20,8 @@
ANONYMOUS_Allowed = 1;
%>
<!-- #include file="../Shared/common.inc"-->
<!-- #include file="../shared/useragent.inc" -->
<%
var u = getQParam("u");
var known_bookmarks =
{
'afspraak': { gui: 'appl/bez/bez_afspraak.asp?afspr_key=', mob: 'appl/pda/afspraak.asp?afs_key=' },
'bestelling': { gui: 'appl/bes/bes_bestelling.asp?bes_key=', mob: 'appl/pda/bestelling.asp?bes_key=' },
'bestelopdr': { gui: 'appl/bes/bes_opdr.asp?ordernr=' },
'contract': { gui: 'appl/cnt/cnt_contract.asp?cnt_key=', mob: 'appl/pda/contract.asp?cnt_key=' },
'deel': { gui: 'appl/ins/ins_deel.asp?ins_key=', mob: 'appl/pda/ins_deel.asp?ins_key=' },
'factuur': { gui: 'appl/fin/fin_factuur.asp?fin_key=', mob: 'appl/pda/factuur.asp?fin_key=' },
'gebouw': { gui: 'appl/alg/alg_gebouw.asp?key=' },
'locatie': { gui: 'appl/alg/alg_locatie.asp?key=' },
'melding': { gui: 'appl/mld/mld_melding.asp?mld_key=', mob: 'appl/pda/melding.asp?mld_key=' },
'message': { gui: 'appl/msg/msg_message.asp?message_key=' },
'opdracht': { gui: 'appl/mld/mld_opdr.asp?opdr_key=', mob: 'appl/pda/order.asp?opdr_key=' },
'perslid': { gui: 'appl/prs/prs_perslid.asp?prs_key=', mob: 'appl/pda/user_info.asp?prs_key=' },
'reservering': { gui: 'appl/res/res_reservering.asp?rsv_ruimte_key=', mob: 'appl/pda/reservering.asp?rsv_ruimte_key=' },
'ruimte': { gui: 'appl/alg/alg_ruimte.asp?key=', mob: 'appl/pda/ruimte.asp?ruimte_key=' },
'verdieping': { gui: 'appl/alg/alg_verdieping.asp?key='},
'xreservering': { gui: 'appl/res/res_reservering.asp?rsv_ruimte_key='}
}
var keyparam = getQParamInt("k", -1);
// For flexiblity reasons: Literal or runtime parameter(s), just pass through...
var rest = String(Request.ServerVariables("QUERY_STRING")); // Request.ServerVariables("QUERY_STRING") is url-encoded,
@@ -51,130 +29,84 @@
// Strip eventuele leading &fac_id=XXXX er ook af.
rest = rest.substring(rest.indexOf("u=")).substring(("u="+u).length+1);
var isKnownBookmark = false;
var isMobile = false;
if (u in known_bookmarks)
var sql = "SELECT fac_bookmark_path,"
+ " fac_bookmark_query,"
+ " prs_perslid_key_auth,"
+ " fac_bookmark_unauth_url,"
+ " fac_bookmark_expire,"
+ " fac_bookmark_refreshtime"
+ " FROM fac_bookmark"
+ " WHERE fac_bookmark_id = " + safe.quoted_sql(u);
var oRs = Oracle.Execute(sql);
if (oRs.Eof)
{
isKnownBookmark = true;
checkUserAgent(); // devicebits waren anders mogelijk nog niet gezet
if (device.test(device.isDesktop) || device.test(device.isTouch))
shared.simpel_page(L("lcl_fac_bookmark_unknown"));
}
if (oRs("fac_bookmark_expire").Value != null)
{
var expire = new Date(oRs("fac_bookmark_expire").Value);
if (expire <= new Date)
{
url = known_bookmarks[u].gui;
shared.simpel_page(L("lcl_fac_bookmark_expired"));
}
else
{
url = known_bookmarks[u].mob || known_bookmarks[u].gui;
isMobile = true;
}
url = url + keyparam;
}
var url = oRs("fac_bookmark_path").Value;
var refresher = oRs("fac_bookmark_refreshtime").Value;
if (oRs("prs_perslid_key_auth").Value)
{
Session("fallback_user_key") = oRs("prs_perslid_key_auth").Value; // wordt opgepikt door loginTry.asp
}
else
Session("unauth_url") = oRs("fac_bookmark_unauth_url").Value; // wordt opgepikt door common.asp
var params = oRs("fac_bookmark_query").Value;
if (params)
{
if (keyparam > -1)
{
rest = rest.substring(("k="+keyparam).length+1);
params += keyparam;
}
if (rest)
url += "&" + rest;
params += "&" + rest;
}
else
{
var sql = "SELECT fac_bookmark_path,"
+ " fac_bookmark_query,"
+ " prs_perslid_key_auth,"
+ " fac_bookmark_unauth_url,"
+ " fac_bookmark_expire,"
+ " fac_bookmark_refreshtime,"
+ " fac_bookmark_naam"
+ " FROM fac_bookmark"
+ " WHERE fac_bookmark_id = " + safe.quoted_sql(u);
var oRs = Oracle.Execute(sql);
if (oRs.Eof)
if (rest)
params = rest;
}
oRs.Close();
// Als getQParam maar dan uit een string. Altijd null als niet gevonden
// Let op: de query mag niet (meer) URL-escaped zijn
function getSParam (key, query)
{
var nn = 1;
var params = query.split("&");
for (var i in params)
{
shared.simpel_page(L("lcl_fac_bookmark_unknown"));
}
if (oRs("fac_bookmark_expire").Value != null)
{
var expire = new Date(oRs("fac_bookmark_expire").Value);
if (expire <= new Date)
var xx = params[i].split("=");
if (xx[0].toUpperCase() == key.toUpperCase() && xx.length > 1)
{
shared.simpel_page(L("lcl_fac_bookmark_expired"));
return String(xx[1]);
}
}
var url = oRs("fac_bookmark_path").Value;
var refresher = oRs("fac_bookmark_refreshtime").Value;
var bookmark_naam = oRs("fac_bookmark_naam").Value;
if (user_key < 0)
{
if (oRs("prs_perslid_key_auth").Value)
{
var falluser_key = oRs("prs_perslid_key_auth").Value;
if (bookmark_naam != 'faclikedeeplink' && new Perslid(falluser_key).checkAutorisation("WEB_PRSSYS", true))
{
INTERNAL_ERROR_FALLBACK_CANNOT_HAVE_PRSSYS;
// fac_like_deep.asp staan we wel toe, die heeft een Session.Abandon();
}
Session("fallback_user_key") = falluser_key; // wordt opgepikt door loginTry.asp
}
else
Session("unauth_url") = oRs("fac_bookmark_unauth_url").Value; // wordt opgepikt door common.asp
}
var params = oRs("fac_bookmark_query").Value;
if (params)
{
if (keyparam > -1)
{
rest = rest.substring(("k="+keyparam).length+1);
params += keyparam;
}
if (rest)
params += "&" + rest;
}
else
{
if (rest)
params = rest;
}
oRs.Close();
if (params)
url = url + "?" + params;
return null;
}
url = url + "?" + params;
// Als de bookmark een refreshrate heeft ingesteld wordt automatisch gerefreshed
// We doen een refresh van de complete bookmark, niet alleen van de pagina waar de
// bookmark naar wijst. Daarmee wordt de fallback_user voor elke refresh opnieuw
// gebruikt en 'overleeft' de refresh een 'session expired'
// Voorkom recursie met norefresh
// Testen op referrer=refresher.asp is mij niet stabiel genoeg
if (refresher > 0 && getQParamInt("norefresh",0) == 0)
{
theURL = "appl/shared/refresher.asp?url=" + Server.URLencode("/?norefresh=1" + transitQS()) + "&refreshrate=" + refresher;
}
else
var theURL = protectQS.create(url);
if (isKnownBookmark && !isMobile && getQParamInt("internal", 0) == 0)
{
Session("FirstPage") = theURL;
theURL = rooturl + "/";
}
var no302 = getQParamInt("no302", 0) == 1;
if (no302)
{
%> <html>
<head>
<title>FACILITOR</title>
<META http-equiv="refresh" content="0;URL=<%=safe.htmlattr(theURL)%>">
</head>
<body bgcolor="#ffffff">
<a href="<%=safe.htmlattr(theURL)%>">Auto redirect</a>
</body>
</html>
<%
}
else
Response.Redirect(theURL);
Response.Redirect(theURL);
%>

View File

@@ -1,135 +0,0 @@
<%@ language = "JavaScript" %>
<%
/*
$Revision$
$Id$
*/
ANONYMOUS_Allowed = 1;
%>
<!-- #include file="../../Shared/common.inc" -->
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<script src="jquery-1.11.3.min.js"></script>
<script src="tester.js"></script>
<script src="jquery.iecors.js"></script>
<script>
$(document).ready(function()
{
$(doInit);
$(doBuild);
});
</script>
<style>
pre { font-size: 1.2em;
-moz-tab-size:4;
}
td { vertical-align: top;}
th {border-bottom: 1px solid #666;line-height:20px;}
input[type=button],input[type=submit], button {font-weight: bold;}
</style>
</head>
<body style='background-color:#E5EAF1; font-family: Helvetica; font-size: 0.8em;'>
<form method="post" onsubmit="doSubmit();return false;">
<table>
<th colspan="2">FACILITOR API2 tester - FOR INTERNAL USE ONLY [ <a href="http://facws001/trunk/api2/">API reference</a> ]</th>
<tr><td><label>Format</label></td>
<td><input type='radio' id='format' name='format' value='json' checked='1'>json</input>
<input type='radio' id='format' name='format' value='xml'>xml</input>
<input type='radio' id='format' name='format' value='html'>html (formatted json)</input>
<input type='radio' id='format' name='format' value='api'>api</input>
</td>
</tr>
<tr><td><label>fac_id</label></td>
<td><input id="facid" type="text" style="width:100px" value="">
</td>
</tr>
<tr><td><label>APIKEY</label></td>
<td><input id="apikey" type="text" style="width:250px" value="APIPFO">
</td>
</tr>
<tr><td><label>API2</label></td>
<td><select id="api" style="width:250px">
</select>
</td>
</tr>
<tr><td><label>Website</label></td>
<!-- <td><input id="urlbase" type="text" style="width:250px" value="http://uwva.5iwork/Facilitor5iwork"> -->
<td><input id="urlbase" type="text" style="width:250px" value="<%=safe.htmlattr(HTTP.urlzelf())%>">
</td>
</tr>
<tr><td><label>Scope</label></td>
<td><select id="scope" style="width:50px">
<option></option>
<option>fe</option>
<option>fo</option>
<option>bo</option>
<option>mi</option>
</select>
</td>
</tr>
<tr><td><label>Pretty JSON</label></td>
<td><input id="pretty" type="checkbox" checked='1'>
</td>
</tr>
<tr><td><label>Logging</label></td>
<td><input id="log" type="checkbox" checked='1'></td>
</tr>
<tr><td></td><td><input type="button" onclick="doBuild();" value="Build URL"></td></tr>
<tr><td><label>URL</label></td>
<td><input id="url" type="text" style="width:800px">
<div id="urltest" style="width:800px;color:#888;"></div>
</td>
</tr>
<tr><td><label>Method</label></td>
<td><input type='radio' id='method' name='method' value='GET' checked='1'>GET</input>
<input type='radio' id='method' name='method' value='PUT'>PUT (update)</input>
<input type='radio' id='method' name='method' value='POST'>POST (insert)</input>
<input type='radio' id='method' name='method' value='DELETE'>DELETE</input>
</td>
</tr>
<tr><td><label>Request body</label></td>
<td><textarea id="xml" style="height:200px;width:800px">
{
"appointment": {
"id": 3328303,
"from": "2014-06-20T06:00:00Z",
"to": "2014-06-20T18:00:00Z",
"description": "Een test afspraak",
"action": {
"id": 5,
"name": "Op laten halen (bellen)"
},
"visitors": [
{
"id": 5287608,
"name": "Bezoekernaam",
"company": "Bezoekerbedrijf",
"badge": null,
"in": null,
"out": null
}
]
}
}
</textarea>
</td>
</tr>
<tr><td></td><td><input type="submit" onclick="doSubmit();return false;" value="Submit"></td></tr>
</table>
</form>
<table>
<tr><td>Status:</td><td><span id="Status"></span></td></tr>
<tr><td>StatusText:</td><td><span id="StatusText"></span></td></tr>
<tr><td>Duration:</td><td><span id="Duration"></span></td></tr>
<tr><td>Records:</td><td><span id="Records"></span></td></tr>
<tr><td>Result:<button onclick='$("#xml").val($("#Result").text().replace("\r\n", "\n"))'>^^^</button></td>
<td style='border:1px solid #666;font-size:0.8em;background-color:#fafafa;min-width:800px;'>
<pre id="Result" style="padding:0 8px 0 2px;"></pre>
</td>
</tr>
</table>
</body>
</html>

View File

@@ -1,108 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<script src="jquery-1.11.3.min.js"></script>
<script src="tester.js"></script>
<script src="jquery.iecors.js"></script>
<script>
$(document).ready(function()
{
$(doInit);
$(doBuild);
});
</script>
<style>
pre { font-size: 1.2em;
-moz-tab-size:4;
}
td { vertical-align: top;}
th {border-bottom: 1px solid #666;line-height:20px;}
input[type=button],input[type=submit], button {font-weight: bold;}
</style>
</head>
<body style='background-color:#CEE3F6; font-family: Helvetica; font-size: 0.8em;'>
<form method="post" onsubmit="doSubmit();return false;">
<table>
<th colspan="2">FACILITOR API2 Tester</th>
<tr><td><label>Format</label></td>
<td><input type='radio' id='format' name='format' value='json' checked='1'>json</input>
<input type='radio' id='format' name='format' value='xml'>xml</input>
<input type='radio' id='format' name='format' value='html'>html (=formatted json)</input>
</td>
</tr>
<tr><td><label>APIKEY</label></td>
<td><input id="apikey" type="text" style="width:250px" value="APIPFO">
</td>
</tr>
<tr><td><label>API2</label></td>
<td><select id="api" style="width:250px">
</select>
</td>
</tr>
<tr><td><label>Website</label></td>
<!-- <td><input id="urlbase" type="text" style="width:250px" value="http://uwva.5iwork/Facilitor5iwork"> -->
<td><input id="urlbase" type="text" style="width:250px" value="http://sgf12/Facilitor5iwork">
</td>
</tr>
<tr><td><label>Pretty JSON</label></td>
<td><input id="pretty" type="checkbox" checked='1'>
</td>
</tr>
<tr><td><label>Logging</label></td>
<td><input id="log" type="checkbox" checked='1'></td>
</tr>
<tr><td></td><td><input type="button" onclick="doBuild();" value="Build URL"></td></tr>
<tr><td><label>URL</label></td>
<td><input id="url" type="text" style="width:800px">
<div id="urltest" style="width:800px;color:#888;"></div>
</td>
</tr>
<tr><td><label>Method</label></td>
<td><input type='radio' id='method' name='method' value='GET' checked='1'>GET</input>
<input type='radio' id='method' name='method' value='PUT'>PUT (update)</input>
<input type='radio' id='method' name='method' value='POST'>POST (insert)</input>
<input type='radio' id='method' name='method' value='DELETE'>DELETE</input>
</td>
</tr>
<tr><td><label>Request body</label></td>
<td><textarea id="xml" style="height:200px;width:800px">
{
"appointment": {
"id": 3328303,
"from": "2014-06-20T06:00:00Z",
"to": "2014-06-20T18:00:00Z",
"description": "Een test afspraak",
"action": {
"id": 5,
"name": "Op laten halen (bellen)"
},
"visitors": [
{
"id": 5287608,
"name": "Bezoekernaam",
"company": "Bezoekerbedrijf",
"badge": null,
"in": null,
"out": null
}
]
}
}
</textarea>
</td>
</tr>
<tr><td></td><td><input type="submit" onclick="doSubmit();return false;" value="Submit"></td></tr>
</table>
</form>
<table>
<tr><td>Status:</td><td><span id="Status"></span></td></tr>
<tr><td>StatusText:</td><td><span id="StatusText"></span></td></tr>
<tr><td>Duration:</td><td><span id="Duration"></span></td></tr>
<tr><td>Records:</td><td><span id="Records"></span></td></tr>
<tr><td>Result:<button onclick='$("#xml").val($("#Result").text().replace("\r\n", "\n"))'>^^^</button></td>
<td style='border:1px solid #666;font-size:0.8em;background-color:#fafafa;min-width:800px;'><pre id="Result" style="padding:0 8px 0 2px;"></pre></td></tr>
</table>
</body>
</html>

View File

@@ -1,49 +0,0 @@
<%@language = "javascript" %>
<% /*
$Revision$
$Id$
File: get_apinames.asp
Description: Levert de bestanden in in de aangegeven map staan op de server.
Parameters:
- -
*/
%>
<%
ANONYMOUS_Allowed = 1;
var JSON_Result = true;
%>
<!-- #include file="../../Shared/json2.js" -->
<%
/***** Get webform parameters *****/
//var searchfolder = getQParam("folder", "appl/api2");
// Geen autorisatie check nodig
/***** End get webform parameters *****/
//var fullpath = (Server.MapPath(searchfolder));
var fullpath = Server.MapPath("../");
var api2_names = [];
var objFso = new ActiveXObject("Scripting.FileSystemObject");
var objFiles = objFso.GetFolder(fullpath);
var allFiles = new Enumerator(objFiles.files);
for (; !allFiles.atEnd(); allFiles.moveNext())
{
var attFile = allFiles.item();
var ext = objFso.GetExtensionName(attFile);
if ((attFile.name.indexOf("api_") == 0) && (ext == "asp"))
{
var name = attFile.name.substring(4, attFile.name.indexOf(".asp"))
api2_names.push(name);
}
}
api2_names.sort();
var result = { success: true
, apinames: api2_names
};
Response.Write(JSON.stringify(result));
%>

File diff suppressed because one or more lines are too long

View File

@@ -1,46 +0,0 @@
(function( jQuery ) {
// Create the request object
// (This is still attached to ajaxSettings for backward compatibility)
jQuery.ajaxSettings.xdr = function() {
return (window.XDomainRequest ? new window.XDomainRequest() : null);
};
// Determine support properties
(function( xdr ) {
jQuery.extend( jQuery.support, { iecors: !!xdr });
})( jQuery.ajaxSettings.xdr() );
// Create transport if the browser can provide an xdr
if ( jQuery.support.iecors ) {
jQuery.ajaxTransport(function( s ) {
var callback,
xdr = s.xdr();
return {
send: function( headers, complete ) {
xdr.onload = function() {
var headers = { 'Content-Type': xdr.contentType };
complete(200, 'OK', { text: xdr.responseText }, headers);
};
// Apply custom fields if provided
if ( s.xhrFields ) {
xhr.onerror = s.xhrFields.error;
xhr.ontimeout = s.xhrFields.timeout;
}
xdr.open( s.type, s.url );
// XDR has no method for setting headers O_o
xdr.send( ( s.hasContent && s.data ) || null );
},
abort: function() {
xdr.abort();
}
};
});
}
})( jQuery );

View File

@@ -1,90 +0,0 @@
var tm;
function callbackDone(data, textStatus, jqXHR)
{
// jqXHR.getResponseHeader("ETag")
$("#Status").text(jqXHR.status);
$("#StatusText").text(textStatus);
$("#Duration").text(Math.floor(new Date - tm) + "ms");
var txt = String(jqXHR.responseText);
txt = txt.replace(/\012/ig, "\n\r"); // beter in IE
$("#Result").text(txt);
var objects_count = 1;
if (jqXHR.responseText.indexOf("[") > 0)
{
var objects_name = jqXHR.responseText.substring(5, jqXHR.responseText.indexOf("[")-3);
var objects_count = data[objects_name].length;
}
$("#Records").text(objects_count);
}
function callbackFail(jqXHR, textStatus, errorThrown)
{
// alert("FAIL: " + (typeof errorThrown == "string"?errorThrown:errorThrown.message));
$("#Status").text(jqXHR.status + " " + (typeof errorThrown == "string"?errorThrown:errorThrown.message)).css("background-color", "red");
$("#StatusText").text(textStatus);
var txt = String(jqXHR.responseText);
txt = txt.replace(/\012/ig, "\n\r"); // beter in IE
$("#Result").text(txt);
}
function doSubmit()
{
$("#Status").text("Loading ... ").css("background-color", "");
$("#StatusText").text("");
$("#Records").text("");
$("#Result").text("");
var url = $("#url").val();
var method = $("[name=method]:checked").val();
if (method != "GET")
var data = $("#xml").val();
var apikey = $("#apikey").val();
//jQuery.support.cors = true; // in IE niet al te moeilijk doen over cross-domain.
tm = new Date;
$.ajax(url, { type: method,
data: data,
headers: { "X-FACILITOR-API-Key": apikey }
// dan werkt de header niet dataType: "jsonp"
}
).done(callbackDone).fail(callbackFail);
//http_request.setRequestHeader("Content-Type", "text/xml; charset=utf-8")
}
function doBuild()
{
var urlbase = $("#urlbase").val();
var api = $("#api").val();
var format = $("[name=format]:checked").val();
var pretty = $("#pretty:checked").val() == "on";
var logging= $("#log:checked").val() == "on";
var apikey = $("#apikey").val();
var scope = $("#scope").val();
var facid = $("#facid").val() || "UWVA";
var url = urlbase + "/api2/" + api + "." + format;
url += "?fac_id="+facid;
if (scope)
url += "&scope="+scope;
if (pretty)
url += "&pretty=1";
// url += "?pretty=1";
if (logging)
url += "&logging=1";
$("#url").val(url);
$("#urltest").html(url + (pretty?"&":"?") + "apikey=" + apikey);
}
function doInit()
{
var path = "appl/api2";
$.getJSON("get_apinames.asp?3", process_api_list);
}
function process_api_list(data)
{
$("#api").empty();
$.each( data.apinames
, function (index, value)
{
apiname = data.apinames[index];
$("#api").append("<option value="+ apiname +">" + apiname + "</option>");
}
);
}

View File

@@ -1,173 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<link rel="stylesheet" type="text/css" href="//code.jquery.com/ui/1.11.2/themes/smoothness/jquery-ui.css">
<link rel="stylesheet" type="text/css" href="voorb_timepicker.css">
<script type="text/javascript" src="//code.jquery.com/jquery-1.10.2.js"></script>
<script type="text/javascript" src="//code.jquery.com/ui/1.11.2/jquery-ui.js"></script>
<script type="text/javascript" src="jquery.iecors.js"></script>
<script type="text/javascript" src="voorb_timepicker.js"></script>
<script type="text/javascript" src="voorb_config.js"></script>
<script type="text/javascript" src="voorb.js"></script>
<script type="text/javascript" src="voorb_user_callback.js"></script>
<script>
callbackFunctions.user = callbackFunctions_user;
$(document).ready(function()
{
$("#dag1").datepicker({dateFormat: "dd-mm-yy"});
$("#dag2").datepicker({dateFormat: "dd-mm-yy"});
$("#tijd1").timepicker({ step: 15
, timeFormat: "G:i"
, show2400: true
, minTime: "9:00"
, maxTime: "18:00"
, scrollDefault: "now"
});
$("#tijd2").timepicker({ step: 15
, timeFormat: "G:i"
, show2400: true
, minTime: "9:00"
, maxTime: "18:00"
, scrollDefault: "now"
});
load_optionlist("lokatie", "locations");
$(".datepicker").each(function()
{
$(this).datepicker("setDate", new Date());
});
});
function load_optionlist(listname, apiname, params)
{
var param = params || {};
if (!param.callback_done)
param.callback_done = ["api2.createOptionList", "api2.callbackstatusDone"];
call_optionlist(listname, apiname, param);
}
function lokatieChanged()
{
var params = {};
params.filter = "location=" + $("#lokatie option:selected").val();
params.callback_done = ["api2.createOptionList", "user.b"];
load_optionlist("gebouw", "buildings", params);
}
function doSubmit()
{
function zetDatumTijd(datum, tijd)
{
var dt = datum;
var ti = (tijd ? tijd : new Date());
dt.setHours(ti.getHours());
dt.setMinutes(ti.getMinutes());
return dt;
}
$("#Result").text("Loading ... ").css("background-color", "");
$("#btnSubmit").attr("disabled", true);
// Verzamelen van input data voor submit.
var date1 = zetDatumTijd($("#dag1").datepicker("getDate"), $("#tijd1").timepicker("getTime"));
var date2 = zetDatumTijd($("#dag2").datepicker("getDate"), $("#tijd2").timepicker("getTime"));
var data_visitor = {};
data_visitor = { name: $("#persoon").val()
, company: $("#bedrijf").val()
};
var data_appointment = {};
data_appointment.appointment = { location: $("#lokatie").val()
, building: $("#gebouw").val()
, from: date1
, to: date2
, description: $("#omschrijving").val()
, action: null
, visitors: []
};
data_appointment.appointment.visitors.push(data_visitor);
// API aanroepen om een nieuwe afspraak toe te voegen.
$("#Result").text("Bezig met afspraak te verwerken...");
var params = { apiname: "appointments"
, method: "POST"
, callback_done: ["api2.showAppointmentNr", "api2.callbackstatusDone"]
};
call_api(data_appointment, params);
}
function doClose()
{
$("#omschrijving").val("");
$("#persoon").val("");
$("#bedrijf").val("");
}
</script>
<style>
pre { font-size: 1em;
-moz-tab-size:4;
}
td { vertical-align: top;}
th {border-bottom: 1px solid #666;line-height:20px;}
input[type=button],input[type=submit], button {font-weight: bold;}
</style>
</head>
<body style='background-color:rgb(238,176,102); font-family: Helvetica;'>
<form method="post" onsubmit="doSubmit();return false;">
<table>
<th colspan="2">Meldt een bezoeker aan</th>
<tr>
<td><label>Lokatie</label></td>
<td><select id="lokatie" style="width:250px" onchange="lokatieChanged()"></select></td>
</tr>
<tr>
<td><label>Gebouw</label></td>
<td><select id="gebouw" style="width:250px" onchange="gebouwChanged()"></select></td>
</tr>
<tr>
<td><label>van</label></td>
<td><input type="text" id="dag1" class="datepicker" value="">
<input type="text" id="tijd1" value="" style="width:40px">
</td>
</tr>
<tr>
<td><label>tot</label></td>
<td><input type="text" id="dag2" class="datepicker" value="">
<input type="text" id="tijd2" value="" style="width:40px">
</td>
</tr>
<tr>
<td><label>Omschrijving</label></td>
<td><input id="omschrijving" type="text" style="width:250px" value=""></td>
</tr>
<tr>
<td><label>Persoon</label></td>
<td><input id="persoon" type="text" style="width:250px" value=""></td>
</tr>
<tr>
<td><label>Bedrijf</label></td>
<td><input id="bedrijf" type="text" style="width:250px" value=""></td>
</tr>
<tr>
<td></td>
<td>
<input type="submit" id="btnSubmit" onclick="doSubmit();return false;" value="Opslaan">
<input type="button" id="btnClose" onclick="doClose();" value="Annuleren">
</td>
</tr>
</table>
</form>
<br><br>Status <span id="Status"></span>
<br>Melding: <pre id="Result"></pre>
</body>
</html>

View File

@@ -1,156 +0,0 @@
/*
File: voorb.js
*/
var debug = true;
function get_url(apiname, params)
{
// config.js
// var apikey
// var fac_id
// var urlbase
//
var format = "json";
var pretty = true;
var logging = true;
var param = params || {};
var url = urlbase + "/api2/" + apiname + "." + format;
url += "?fac_id=" + fac_id;
if (debug)
{
if (pretty)
url += "&pretty=1";
if (logging)
url += "&logging=1";
}
if (param.filter)
url += "&"+param.filter;
var result = {url: url, apikey: apikey};
result.method = (param.method ? param.method : "GET");
if (param.callback_done || param.callback_fail)
{
result.callback = {};
result.callback.done = (param.callback_done ? param.callback_done : ["api2.callbackstatusdone"]);
result.callback.fail = (param.callback_fail ? param.callback_fail : ["api2.callbackstatusFail"]);
}
return result;
}
function splitFunctionname(fullname)
{
var result = {fnmodule: "api2", fnname: "no_function"};
var x = fullname.split(".");
if (x.length == 2)
{
if (callbackFunctions[x[0]] && callbackFunctions[x[0]][x[1]])
{
result.fnmodule = x[0];
result.fnname = x[1];
}
}
return result;
}
function call_api(io_data, params)
{
var url_data = get_url(params.apiname, params);
tm = new Date;
$.ajax( url_data.url
, { type: url_data.method
, data: JSON.stringify(io_data)
, headers: { "X-FACILITOR-API-Key": url_data.apikey }
}
).done( function (data, textStatus, jqXHR)
{
var statusInfo = {jqXHR: jqXHR, textStatus: textStatus};
for (var i=0; i<url_data.callback.done.length; i++)
{
var splitfunction = splitFunctionname(url_data.callback.done[i]);
callbackFunctions[splitfunction.fnmodule][splitfunction.fnname](data, statusInfo, params);
}
}
)
.fail( function (data, textStatus, jqXHR, errorThrown)
{
var statusInfo = {jqXHR: jqXHR, textStatus: textStatus, errorThrown: errorThrown};
for (var i=0; i<url_data.callback.fail.length; i++)
{
var splitfunction = splitFunctionname(url_data.callback.fail[i]);
callbackFunctions[splitfunction.fnmodule][splitfunction.fnname](data, statusInfo, params);
}
}
);
}
function call_optionlist(listname, apiname, params)
{
var param = params || {};
var data_optionlist = {};
param.optionlist = listname;
param.apiname = apiname;
if (!param.callback_done)
param.callback_done = ["api2.createOptionList", "api2.callbackstatusDone"];
call_api(data_optionlist, param);
}
var callbackFunctions_api =
{ name: "api2",
no_function: function _no_function(data, statusInfo, params)
{
var msg = "Onbekende callback functie";
$("#Status").text(msg);
},
callbackstatusDone: function _callbackstatusDone(data, statusInfo, params)
{
$("#Status").text(statusInfo.jqXHR.status + ": " + statusInfo.textStatus);
$("#btnSubmit").attr("disabled", false);
},
callbackstatusFail: function _callbackstatusFail(data, statusInfo, params)
{
var info = data.responseJSON.error;
$("#Status").text(info.code + ": " + info.message);
$("#Result").text("");
$("#btnSubmit").attr("disabled", false);
},
createOptionList: function _createOptionList(data, statusInfo, params)
{
var listname = params.optionlist;
var apiname = params.apiname;
$("#"+listname).empty();
$.each( data[apiname]
, function (index, value)
{
apirecord = data[apiname][index];
$("#"+listname).append("<option value="+ apirecord.id +">" + apirecord.name + "</option>");
}
);
},
showAppointmentNr: function _showAppointmentNr(data, statusInfo, params)
{
var msg = "Afspraak gemaakt met nummer: "+ data.appointment.id;
$("#Result").text(msg);
$("#btnSubmit").attr("disabled", true);
},
b: function _ennuverder2(data, statusInfo, params)
{
var msg = $("#Status").text();
msg = msg + "andere functie";
$("#Result").text(msg);
}
}
var callbackFunctions = {};
callbackFunctions.api2 = callbackFunctions_api;

View File

@@ -1,10 +0,0 @@
/*
$Revision$
$Id$
Usage: change these parameters to suit your environment and needs
*/
var apikey = "APISAMPLE";
var fac_id = "DEMO";
var urlbase = "http://facws001/trunk";

View File

@@ -1,46 +0,0 @@
(function( jQuery ) {
// Create the request object
// (This is still attached to ajaxSettings for backward compatibility)
jQuery.ajaxSettings.xdr = function() {
return (window.XDomainRequest ? new window.XDomainRequest() : null);
};
// Determine support properties
(function( xdr ) {
jQuery.extend( jQuery.support, { iecors: !!xdr });
})( jQuery.ajaxSettings.xdr() );
// Create transport if the browser can provide an xdr
if ( jQuery.support.iecors ) {
jQuery.ajaxTransport(function( s ) {
var callback,
xdr = s.xdr();
return {
send: function( headers, complete ) {
xdr.onload = function() {
var headers = { 'Content-Type': xdr.contentType };
complete(200, 'OK', { text: xdr.responseText }, headers);
};
// Apply custom fields if provided
if ( s.xhrFields ) {
xhr.onerror = s.xhrFields.error;
xhr.ontimeout = s.xhrFields.timeout;
}
xdr.open( s.type, s.url );
// XDR has no method for setting headers O_o
xdr.send( ( s.hasContent && s.data ) || null );
},
abort: function() {
xdr.abort();
}
};
});
}
})( jQuery );

View File

@@ -1,61 +0,0 @@
.ui-timepicker-wrapper {
overflow-y: auto;
height: 150px;
width: 6.5em;
background: #fff;
border: 1px solid #ddd;
-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);
-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);
box-shadow:0 5px 10px rgba(0,0,0,0.2);
outline: none;
z-index: 10001;
margin: 0;
}
.ui-timepicker-wrapper.ui-timepicker-with-duration {
width: 13em;
}
.ui-timepicker-wrapper.ui-timepicker-with-duration.ui-timepicker-step-30,
.ui-timepicker-wrapper.ui-timepicker-with-duration.ui-timepicker-step-60 {
width: 11em;
}
.ui-timepicker-list {
margin: 0;
padding: 0;
list-style: none;
}
.ui-timepicker-duration {
margin-left: 5px; color: #888;
}
.ui-timepicker-list:hover .ui-timepicker-duration {
color: #888;
}
.ui-timepicker-list li {
padding: 3px 0 3px 5px;
cursor: pointer;
white-space: nowrap;
color: #000;
list-style: none;
margin: 0;
}
.ui-timepicker-list:hover .ui-timepicker-selected {
background: #fff; color: #000;
}
li.ui-timepicker-selected,
.ui-timepicker-list li:hover,
.ui-timepicker-list .ui-timepicker-selected:hover {
background: #1980EC; color: #fff;
}
li.ui-timepicker-selected .ui-timepicker-duration,
.ui-timepicker-list li:hover .ui-timepicker-duration {
color: #ccc;
}
.ui-timepicker-list li.ui-timepicker-disabled,
.ui-timepicker-list li.ui-timepicker-disabled:hover,
.ui-timepicker-list li.ui-timepicker-selected.ui-timepicker-disabled {
color: #888;
cursor: default;
}
.ui-timepicker-list li.ui-timepicker-disabled:hover,
.ui-timepicker-list li.ui-timepicker-selected.ui-timepicker-disabled {
background: #f2f2f2;
}

Some files were not shown because too many files have changed in this diff Show More