215 lines
9.5 KiB
Plaintext
215 lines
9.5 KiB
Plaintext
<%@language = "javascript" %>
|
|
<% /*
|
|
$Revision$
|
|
$Id$
|
|
|
|
File: alg_edit_gebouw_multi.asp
|
|
Description: Multi editten van gebouwen
|
|
Parameters: key
|
|
|
|
Context: alg_gebouw_search_list.asp
|
|
Note: De minimale multi-edit velden
|
|
|
|
*/ %>
|
|
<!-- #include file="../Shared/common.inc" -->
|
|
<!-- #include file="../Shared/iface.inc" -->
|
|
<!-- #include file="../Shared/save2db.inc" -->
|
|
<!-- #include file="../Shared/persoonselector.inc" -->
|
|
<!-- #include file="../Shared/kostenplaatsselector.inc" -->
|
|
<!-- #include file="alg.inc" -->
|
|
|
|
<%
|
|
FCLTHeader.Requires({ plugins:["suggest", "jQuery", "kenmerk"] });
|
|
|
|
var bld_key_arr = getQParamIntArray("bld_keys");
|
|
var submitting = getQParamInt("submit", 0) == 1;
|
|
|
|
var warning = "";
|
|
var result = {};
|
|
var tobeedited = 0;
|
|
var ingesloten = [];
|
|
// Bepaal de gebouwen in de selectie die
|
|
// ook echt gewijzigd kunnen of mogen worden.
|
|
var onrgoedlvl = "G";
|
|
for (var i = 0; i < bld_key_arr.length; i++)
|
|
{
|
|
var this_alg = alg.func_enabled(bld_key_arr[i], onrgoedlvl);
|
|
if (this_alg.writeman || this_alg.writeuse)
|
|
{
|
|
ingesloten.push(bld_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(ingesloten.length); // We klagen niet over enkele wel en enkele niet
|
|
%>
|
|
|
|
<html>
|
|
<head>
|
|
<% FCLTHeader.Generate(); %>
|
|
<%
|
|
if (submitting)
|
|
{
|
|
var fields = [];
|
|
if (Request.Form("prs_kstpl").Count == 1 && getFParam("check_prs_kstpl", "off") == "on")
|
|
fields.push({ dbs: "prs_kostenplaats_key", typ: "key", frm: "prs_kstpl", track: L("lcl_prs_dept_kosten"), foreign: "prs_kostenplaats" });
|
|
if (Request.Form("verantw").Count == 1 && getFParam("check_verantw", "off") == "on")
|
|
fields.push({ dbs: "prs_perslid_key_verantw", typ: "key", frm: "verantw", track: L("lcl_alg_verantw"), foreign: "prs_perslid" });
|
|
if (Request.Form("verantw2").Count == 1 && getFParam("check_verantw2", "off") == "on")
|
|
fields.push({ dbs: "prs_perslid_key_verantw2", typ: "key", frm: "verantw2", track: L("lcl_alg_verantw2"), foreign: "prs_perslid" });
|
|
|
|
for (var i = 0; i < ingesloten.length; i++)
|
|
{ // Ik mag het object wijzigen dus voer wijziging uit
|
|
if (fields.length)
|
|
{
|
|
var algUpd = buildTrackingUpdate("alg_gebouw", " alg_gebouw_key = " + ingesloten[i], fields);
|
|
// Submit the changed data
|
|
var err = Oracle.Execute(algUpd.sql, true);
|
|
if (err.friendlyMsg)
|
|
warning = err.friendlyMsg;
|
|
}
|
|
else
|
|
algUpd = { trackarray: [] };
|
|
|
|
// /* flextrackarray = */ ins.updateKenmerkdeel(ingesloten[i], {multimode: true});
|
|
|
|
var update_string = L("lcl_alg_is_alggup") + "\n" + algUpd.trackarray.join("\n");
|
|
shared.trackaction("ALGGUP", ingesloten[i], update_string);
|
|
}
|
|
|
|
%> <script type="text/javascript">
|
|
$(function()
|
|
{
|
|
FcltMgr.closeDetail(window, { success: true } )
|
|
});
|
|
</script>
|
|
<% Response.End();
|
|
}
|
|
%>
|
|
|
|
<script type="text/javascript">
|
|
function alg_submit()
|
|
{ // Invoer van velden wordt realtime gevalideerd.
|
|
document.forms.u2.submit();
|
|
return true; // disable button
|
|
}
|
|
|
|
function alg_cancel()
|
|
{
|
|
FcltMgr.closeDetail(window, { cancel: true } );
|
|
}
|
|
</script>
|
|
</head>
|
|
|
|
<body class="modal" id="mod_algmultiedit">
|
|
<form name="u2" action="alg_edit_gebouw_multi.asp?submit=1&bld_keys=<%=ingesloten.join(",")%>" method="post">
|
|
<%
|
|
BLOCK_START("algGebouw", L("lcl_alg_gebouw_frame"));
|
|
FCLTkostenplaatsselector( "prs_kstpl",
|
|
"prs_kstpl",
|
|
user_key,
|
|
{ kostenplaatsKey: -1,
|
|
label: L("lcl_prs_dept_kosten"),
|
|
filtercode: "G",
|
|
readonly: !last_this_alg.writeman
|
|
});
|
|
FCLTpersoonselector("verantw",
|
|
"sgVerantw",
|
|
{ perslidKey: -1,
|
|
label: L("lcl_alg_verantw"),
|
|
readonly: !last_this_alg.writeuse,
|
|
autlevel: last_this_alg.authparams("WEB_ALGMAN") && last_this_alg.authparams("WEB_ALGMAN").PRSwritelevel
|
|
});
|
|
FCLTpersoonselector("verantw2",
|
|
"sgVerantw2",
|
|
{ perslidKey: -1,
|
|
label: L("lcl_alg_verantw2"),
|
|
readonly: !last_this_alg.writeuse,
|
|
autlevel: last_this_alg.authparams("WEB_ALGMAN") && last_this_alg.authparams("WEB_ALGMAN").PRSwritelevel
|
|
});
|
|
BLOCK_END();
|
|
%>
|
|
<script type="text/javascript">
|
|
|
|
function putCheckmarkSuggest(prs_key, prs_txt, obj)
|
|
{
|
|
thisobj = $("#"+obj.suggestid);
|
|
if (thisobj.is(":checkbox"))
|
|
var isgevuld = thisobj.is(":checked")
|
|
else
|
|
var isgevuld = thisobj.val();
|
|
|
|
if (thisobj.hasClass("flddate"))
|
|
var cb_name = "check_" + thisobj.attr("id").substr("show_".length);
|
|
else if (thisobj.hasClass("suggest"))
|
|
var cb_name = "check_" + thisobj.attr("id").substr(0, thisobj.attr("id").length-5);
|
|
else
|
|
var cb_name = "check_" + thisobj.attr("name");
|
|
$("input[type=checkbox][name=" + cb_name + "]").prop("checked", isgevuld);
|
|
// Eventuele andere onChange acties van een selecter hieronder toevoegen.
|
|
};
|
|
|
|
$(function()
|
|
{ // Een vinkboxje voor de invoer velden toevoegen.
|
|
// Niet een vinkboxje toevoegen voor de flexkenmerken. Dat doet generateFlexKenmerkBlock.listKenmerk wel.
|
|
$("input[type=text],input[type=checkbox],input[type=number],input:not([type]),select, textarea").not(".fldtime").not("[class^='fldflex']").not("[class^='fldSflex']").each(
|
|
function() {
|
|
if ($(this).hasClass("flddate"))
|
|
var cb_name = "check_" + $(this).attr("id").substr("show_".length);
|
|
else if ($(this).hasClass("suggest"))
|
|
var cb_name = "check_" + $(this).attr("id").substr(0, $(this).attr("id").length-5);
|
|
else
|
|
var cb_name = "check_" + $(this).attr("name");
|
|
var cb = $("<input type='checkbox'>").attr("name", cb_name);
|
|
var td = $("<td class='multi_cb'></td>").append(cb);
|
|
$(this).closest("tr").find(" td.label").before(td);
|
|
|
|
// Zetten vinkje als je waarde invult
|
|
if ($(this).hasClass('suggest'))
|
|
{ // Suggest veld: Functie putCheckmarkSuggest() aan sgonchange koppelen.
|
|
this.setAttribute("sgonchange", "putCheckmarkSuggest");
|
|
}
|
|
else if ($(this).hasClass("flddate"))
|
|
{
|
|
// De FCLTcalendar vervaldatum heeft zijn eigen onChange functie die wordt aangeroepen.
|
|
// Geen change functie aan het datum veld koppelen.
|
|
}
|
|
else
|
|
{ // Andere velden dan suggest veld.
|
|
$(this).change(function()
|
|
{
|
|
if ($(this).is(":checkbox"))
|
|
var isgevuld = $(this).is(":checked")
|
|
else
|
|
var isgevuld = $(this).val();
|
|
$("input[type=checkbox][name=" + cb_name + "]").prop("checked", isgevuld);
|
|
});
|
|
}
|
|
|
|
// Wissen waarde als je vinkje weghaalt
|
|
cb.change(function(deze) {
|
|
return function() {
|
|
if (!$(this).is(":checked"))
|
|
$(deze).val("");
|
|
else if ($(deze).hasClass("required"))
|
|
// Vinkje is aangevinkt en waarde is leeg.
|
|
// Als het veld verplicht is het vinkje er weer afhalen.
|
|
$(this).prop("checked", false);
|
|
}
|
|
}(this));
|
|
});
|
|
});
|
|
|
|
</script>
|
|
<%
|
|
var buttons = [];
|
|
buttons.push({title: L("lcl_submit"), action:"alg_submit()", singlepress: true, id: "btn_edit_submit"})
|
|
buttons.push({title: L("lcl_cancel"), action:"alg_cancel()"})
|
|
CreateButtons(buttons)
|
|
IFACE.FORM_END();
|
|
%>
|
|
</form>
|
|
</body>
|
|
</html>
|