Files
Facilitor/APPL/MJB/mjb_search.asp
Peter Feij eff9bc1166 FSN#37590 diverse MJB bevindingen
svn path=/Website/trunk/; revision=30523
2016-09-02 11:11:34 +00:00

222 lines
11 KiB
Plaintext

<%@language = "javascript" %>
<% /*
$Revision$
$Id$
File: mjb/mjb_search.asp
Description: Menuoptie MJOB
Parameters:
Context:
Note:
*/ %>
<!-- #include file="../Shared/common.inc" -->
<!-- #include file="../Shared/iface.inc" -->
<!-- #include file="../Shared/selector.inc" -->
<!-- #include file="../Shared/plaatsselector.inc" -->
<!-- #include file="../Shared/disciplineselector.inc" -->
<!-- #include file="../Shared/srtgroepselector.inc" -->
<!-- #include file="../Shared/srtdeelselector.inc" -->
<%
FCLTHeader.Requires({ plugins:["suggest", "jQuery", "kenmerk"],
js: ["../ins/ins_search.js", "jQuery-ui.js"]
});
/***** Get webform parameters *****/
var urole = getQParamSafe("urole", "bo");
var autosearch = getQParamInt("autosearch", 0) == 1;
var reg_key = getQParamInt("regio_key", -1); // Regio
var dist_key = getQParamInt("district_key", -1);
var loc_key = getQParamInt("locatie_key", -1); // Locatie
var bld_key = getQParamInt("gebouw_key", -1); // Gebouw
var flr_key = getQParamInt("verdieping_key", -1); // Verdieping
var room_key = getQParamInt("ruimte_key", -1); // Ruimte
var disc = getQParamInt("disc", -1); // Discipline initialisatie
var srtgroep = getQParamInt("srtgroep", -1); // Groep
var srtdeel = getQParamInt("srtdeel", -1); // Objectsoort
var groep = getQParam("groep", ""); // Groep
var srtcontrole = getQParamInt("srtcontrole", -1); // Taak
var alg_startlevel = getQParamInt("alg_startlevel", 1); // Startlevel van plaatsselector (District)
var alg_endlevel = getQParamInt("alg_endlevel", 3); // Eindlevel van plaatsselector (Gebouw)
var groupby = getQParamInt("groupby", 2);
var inflatie = getQParamFloat("inflatie", S("mjb_inflation")); // Setting ins_inflation_default.
var frequentie = getQParamInt("frequentie", -1);
var toyear = getQParamInt("toyear", new Date().getFullYear() + S("mjb_show_years"));
var incbtw = getQParamInt("incbtw", 0) == 1;
// Er zijn INSUSE en CTRUSE rechten nodig.
var autfunctionINSUSE = "WEB_INSUSE";
var authparamsINSUSE = user.checkAutorisation("WEB_INSUSE");
var autfunctionCTRUSE = "WEB_CTRUSE";
var authparamsCTRUSE = user.checkAutorisation("WEB_CTRUSE");
%>
<html>
<head>
<% FCLTHeader.Generate(); %>
<script type="text/javascript">
var urole = "<%=urole%>";
function doSubmit()
{
document.forms.u2.submit();
}
<% if (autosearch) { %>
$(document).ready(function() { doSubmit(); });
<%}%>
</script>
</head>
<body id="searchbody">
<div id="search">
<form name="u2" target="workFrame" action="mjb_search_list.asp" method="get">
<input type=hidden name="urole" value="<%=urole%>">
<input type=hidden name="autfunctionINSUSE" id="autfunctionINSUSE" value="<%=autfunctionINSUSE%>">
<input type=hidden name="autfunctionCTRUSE" id="autfunctionCTRUSE" value="<%=autfunctionCTRUSE%>">
<input type=hidden name="alg_startlevel" value="<%=alg_startlevel%>">
<input type=hidden name="alg_endlevel" value="<%=alg_endlevel%>">
<% BLOCK_START("searchtable", L("lcl_filterblok"));%>
<tr>
<td class="searchkolom1"><!-- start column 1 -->
<table><!-- x rijen, 2 kolommen: label + veld -->
<% FCLTplaatsselector(authparamsINSUSE.ALGreadlevel, { regiokey: reg_key,
districtkey: dist_key,
locatiekey: loc_key,
gebouwkey: bld_key,
verdiepingkey: flr_key,
ruimtekey: room_key,
terrein: true,
escalateOnChUp: true, // ook onLocChange als je gebouw wijzigt
startlevel: alg_startlevel,
eindlevel: alg_endlevel, // ruimte/werkplek
filtercode: "INCVR",
trclass: "noxd",
whenEmpty: L("lcl_search_generic") // want filter
});
// Discipline
FCLTdisciplineselector("disc",
"sgDisc",
{ label: L("lcl_discipline"),
disc_key: disc,
module: "INS",
filtercode: "I", // alleen disciplines met inspecties
perslidKey: user_key,
autfunctionKey: authparamsINSUSE.autfunctionkey,
autRW: "R",
onChange: "onChangeDiscipline", // disgroepChanged
trclass: "primsearch noxd",
whenEmpty: L("lcl_search_generic")
});
// Soort groep
FCLTsrtgroepselector("srtgroep",
"sgSrtgroep",
{ label: L("lcl_obj_group"),
srtgroep_key: srtgroep,
autfunction: autfunctionINSUSE,
onChange: "onChangeSrtgroep",
urlAdd: [{urlParam: "disc_key", field: "disc"}],
trclass: "primsearch noxd",
whenEmpty: L("lcl_search_generic")
});
// Objectsoort
FCLTsrtdeelselector("srtdeel",
"sgSrtdeel",
{ label: L("lcl_obj_sort"),
srtdeel_key: srtdeel,
module: "INS",
autfunction: autfunctionINSUSE,
onChange: "onChangeSrtdeel",
urlAdd: [{urlParam: "srtgroep_key", field: "srtgroep"},
{urlParam: "disc_key", field: "disc"}],
trclass: "primsearch noxd",
whenEmpty: L("lcl_search_generic") // want dit is een filter
});
sql = "SELECT 1, " + safe.qL("lcl_district") + ", 1 FROM DUAL"
+ " UNION SELECT 2, " + safe.qL("lcl_building") + ", 2 FROM DUAL"
+ " UNION SELECT 3, " + safe.qL("lcl_discipline") + ", 3 FROM DUAL"
+ " UNION SELECT 4, " + safe.qL("lcl_obj_group") + ", 4 FROM DUAL"
+ " UNION SELECT 5, " + safe.qL("lcl_obj_sort") + ", 5 FROM DUAL"
+ " UNION SELECT 6, " + safe.qL("lcl_ins_object") + ", 6 FROM DUAL"
+ " UNION SELECT 7, " + safe.qL("lcl_ins_controle_srt") + ", 7 FROM DUAL";
FCLTselector("groupby",
sql,
{ initKey: groupby,
label: L("lcl_mjb_group")
});
%>
</table>
</td><!-- end column 1 -->
<!-- Second column -->
<td valign=top>
<table><!-- x rijen, 2 kolommen: label + veld -->
<% sql = "SELECT ins_srtcontrole_key"
+ " , ins_srtcontrole_omschrijving"
+ " FROM ins_srtcontrole"
+ " WHERE (ins_srtcontrole_eind IS NULL OR ins_srtcontrole_eind > SYSDATE)"
FCLTselector("srtcontrole", // Soort controle
sql,
{ initKey: srtcontrole,
label: L("lcl_ins_controle_srt"),
multi: true,
trclass:"primsearch noxd",
emptyOption: ""
});
sql = "SELECT DISTINCT COALESCE(xcp.ins_srtcontroledl_xcp_periode, isc.ins_srtcontrole_periode) periode_key"
+ " , COALESCE(xcp.ins_srtcontroledl_xcp_periode, isc.ins_srtcontrole_periode) || '" + L("lcl_ins_controle_period_rearyear") + "' periode"
+ " FROM ins_srtcontrole isc"
+ " , ins_srtcontroledl_xcp xcp"
+ " WHERE isc.ins_srtcontrole_key = xcp.ins_srtcontrole_key"
+ " AND COALESCE (xcp.ins_srtcontroledl_xcp_periode, isc.ins_srtcontrole_periode) > 0"
+ " ORDER BY 1";
FCLTselector("frequentie", // Frequentie
sql,
{ initKey: frequentie,
label: L("lcl_mjb_frequency"),
multi: true,
trclass:"primsearch noxd",
emptyOption: ""
});
var jaar = new Date().getFullYear();
var sqljaren = [];
for (var i = 0; i < 30; i++) // TODO: Een setting voor de 30 jaar? Zie ook mjb_dragdropyear.asp.
sqljaren.push("SELECT {0}, '{0}' FROM DUAL".format(jaar + i));
FCLTselector("toyear",
sqljaren.join(" UNION "),
{ initKey: toyear,
label: L("lcl_mjb_uptoyear")
});
RWFIELDTR("inflatie", "fld", L("lcl_mjb_inflation"), inflatie, { datatype: "number" })
RWCHECKBOXTR("incbtw", "fldincbtw", L("lcl_mjb_inclbtw"), incbtw, { html: " value='1' ", trclass: 'noxd'});
%> </table>
</td><!-- end column 2-->
</tr>
<% BLOCK_END();
var buttons = [{title: L("lcl_search"), action: "doSubmit()" }];
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>