207 lines
7.0 KiB
JavaScript
207 lines
7.0 KiB
JavaScript
/*
|
|
$Revision$
|
|
$Id$
|
|
|
|
File: bez_list.js
|
|
*/
|
|
|
|
function bezDelete(rowArray, isMulti)
|
|
{
|
|
var bez_key_arr = getKeyString(rowArray).split(",");
|
|
var data = { bez_key: bez_key_arr
|
|
, urole: urole
|
|
, level: "B"
|
|
};
|
|
protectRequest.dataToken(data);
|
|
var tableID = $(rowArray).closest('table').attr('id');
|
|
FcltMgr.confirm(L("lcl_bez_confirm_delete_bezoeker"), { autoconfirm: isMulti }, function() {
|
|
$.post("bez_delete.asp",
|
|
data,
|
|
FcltCallbackAndThen(function() {
|
|
$.each(rowArray, function() { $(this).remove() });
|
|
toggleFooter.apply(tableID);
|
|
}),
|
|
"json");
|
|
});
|
|
}
|
|
|
|
function bezEdit(row)
|
|
{
|
|
var bezData = eval('(' + row.getAttribute("ROWDATA") + ')');
|
|
if (bezData)
|
|
{
|
|
$(row).addClass('dirty');
|
|
var url = "appl/bez/bez_afspraak.asp?afspr_key=" + bezData.afspr_key + "&urole=" + urole;
|
|
if (contactonly)
|
|
url += "&contactonly=1"
|
|
FcltMgr.openDetail(url, { reuse: true });
|
|
}
|
|
}
|
|
|
|
function CheckInCallback(json, textStatus)
|
|
{
|
|
for (i = 0 ; i < json.bez_key_arr.length; i++)
|
|
{
|
|
if (json.checkInDone[i]) // Checkin is uitgevoerd
|
|
{
|
|
if (json.undo_check_in == 0) // bezoeker is nu ingechecked/aangemeld. Geef juiste afvinkbox weer aan het eind van de regel
|
|
{
|
|
if (json.badges[i])
|
|
{
|
|
var badgefield = $("#checkin" + json.bez_key_arr[i]).closest("tr").find("input.fldbadge");
|
|
badgefield.val(json.badges[i]).attr("disabled", "1");
|
|
}
|
|
if (json.autoprint[i])
|
|
printBadge(json.bez_key_arr[i]);
|
|
|
|
content = '<span id="CHDin' + json.bez_key_arr[i] + '"'
|
|
+ ' class="fa fa-check-square-o fa-lg ilbutton"'
|
|
+ ' OnClick="doCheckIn(event, ' + json.bez_key_arr[i] + ', 1);"' // bezoeker not out
|
|
+ ' style="cursor:pointer"'
|
|
+ ' title="' + L("lcl_vis_done") + ' (' + todayString + ')"' // Net (vandaag) ingechecked
|
|
+ '></span>';
|
|
$("#checkin" + json.bez_key_arr[i]).html(content);
|
|
}
|
|
else // bezoeker is niet meer aangemeld. Geef juiste afvinkbox weer aan het eind van de regel
|
|
{
|
|
content = '<span id="CHDin' + json.bez_key_arr[i] +'"'
|
|
+ ' class="fa fa-square-o fa-lg ilbutton"'
|
|
+ ' OnClick="doCheckIn(event, ' + json.bez_key_arr[i] + ', 0);"'
|
|
+ ' style="cursor:pointer"'
|
|
+ ' title="' + L("lcl_vis_register") + '"'
|
|
+ '></span>';
|
|
$("#checkin" + json.bez_key_arr[i]).html(content);
|
|
}
|
|
}
|
|
}
|
|
// Is er nog een message die weergegeven moet worden?
|
|
if (json.message) FcltMgr.alert(json.message);
|
|
}
|
|
|
|
function doCheckIn(evt, bezKeyString, undo_check_in)
|
|
{
|
|
FcltMgr.stopPropagation(evt);
|
|
|
|
var bez_key_arr = bezKeyString.toString().split(","); // Bulkactie geeft het als een string door, klikken op het aanmeldvakje als een integer.
|
|
if (bez_key_arr.length == 1 && (hasKenmerk || s_vis_remark==2) && !undo_check_in)
|
|
{ // Niet voor bulkacties
|
|
// alleen voor bo (al geregeld door de aanroeper)
|
|
// en alleen als er kenmerken > 900 zijn.
|
|
// PF: en alleen bij inchecken, niet bij undo-inchecken
|
|
var url = "../bez/bez_edit_check_in.asp?urole="+urole+"&bez_key="+bez_key_arr[0];
|
|
FcltMgr.openModalDetail(url,
|
|
L("lcl_vis_checkin_title"),
|
|
{ callback: function(data)
|
|
{
|
|
$("#badgenr"+bez_key_arr[0]).val(data.bezBadgeArr[0]);
|
|
setCheckIn(bezKeyString, undo_check_in);
|
|
}
|
|
});
|
|
}
|
|
else
|
|
{
|
|
setCheckIn(bezKeyString, undo_check_in);
|
|
}
|
|
}
|
|
|
|
function setCheckIn(bezKeyString, undo_check_in)
|
|
{
|
|
var data = { bez_key: bezKeyString
|
|
, undo_check_in: undo_check_in
|
|
};
|
|
protectRequest.dataToken(data);
|
|
$.post("bez_check_in.asp",
|
|
data,
|
|
CheckInCallback,
|
|
"json");
|
|
}
|
|
|
|
function bezCheckIn(rowArray, isMulti)
|
|
{
|
|
// bulk actie
|
|
var bezKeyString = getKeyString(rowArray);
|
|
doCheckIn(null, bezKeyString, 0);
|
|
}
|
|
|
|
function CheckOutCallback(json, textStatus)
|
|
{
|
|
if (textStatus == "success")
|
|
{
|
|
for (i = 0 ; i < json.bez_key_arr.length; i++)
|
|
{
|
|
if (json.checkOutDone[i]) // Checkout is uitgevoerd
|
|
{
|
|
if (json.undo_check_out == 0) // bezoeker is nu uitgechecked. Geef juiste afvinkbox weer aan het eind van de regel
|
|
{
|
|
content = '<span id="CHOut' + json.bez_key_arr[i] + '"'
|
|
+ ' class="fa fa-check-square-o fa-lg ilbutton"'
|
|
+ ' OnClick="doCheckOut(event, ' + json.bez_key_arr[i] + ', 1);"'
|
|
+ ' style="cursor:pointer"'
|
|
+ ' title="' + L("lcl_vis_checkout") + ' (' + todayString + ')"' // Net (vandaag) uitgechecked
|
|
+ '></span>';
|
|
$("#checkout" + json.bez_key_arr[i]).html(content);
|
|
|
|
if (json.aantal_ojb > 0)
|
|
{
|
|
url = "../INS/ins_list.asp?urole=fo&embedded=1";
|
|
if (json.prs_key > 0)
|
|
url += "&prs_key=" + json.prs_key;
|
|
else if (json.cps_key > 0)
|
|
url += "&cps_key=" + json.cps_key;
|
|
FcltMgr.openModalDetail(url, L("lcl_bez_insinn_objects"), {width: 800});
|
|
}
|
|
|
|
}
|
|
else // bezoeker is niet meer uitgechecked (wel ingechecked). Geef juiste afvinkbox weer aan het eind van de regel
|
|
{
|
|
content = '<span id="CHOut' + json.bez_key_arr[i] + '"'
|
|
+ ' class="fa fa-square-o fa-lg ilbutton"'
|
|
+ ' OnClick="doCheckOut(event, ' + json.bez_key_arr[i] + ', \'\');"'
|
|
+ ' style="cursor:pointer"'
|
|
+ ' title="' + L("lcl_vis_todo") + '"'
|
|
+ '></span>';
|
|
$("#checkout" + json.bez_key_arr[i]).html(content);
|
|
}
|
|
}
|
|
}
|
|
|
|
// Is er nog een message die weergegeven moet worden?
|
|
if (json.message) FcltMgr.alert(json.message);
|
|
}
|
|
else
|
|
FcltMgr.alert("CheckOutCallback: " + textStatus);
|
|
}
|
|
|
|
function doCheckOut(evt, bezKeyString, undo_check_out)
|
|
{
|
|
FcltMgr.stopPropagation(evt);
|
|
|
|
var data = { bez_key: bezKeyString
|
|
, undo_check_out: undo_check_out
|
|
};
|
|
protectRequest.dataToken(data);
|
|
$.post("bez_check_out.asp",
|
|
data,
|
|
CheckOutCallback,
|
|
"json");
|
|
}
|
|
|
|
function bezCheckOut(rowArray, isMulti)
|
|
{
|
|
// bulk actie
|
|
var bezKeyString = getKeyString(rowArray);
|
|
doCheckOut(null, bezKeyString, 0);
|
|
}
|
|
|
|
// Op de OnChange van inputveld wordt een pasnummer direct opgeslagen
|
|
function SaveBadge(bez_key, badgenr)
|
|
{
|
|
var data = { bez_key: bez_key
|
|
, badgenr: badgenr
|
|
};
|
|
protectRequest.dataToken(data);
|
|
$.post("bez_badgenr_save.asp",
|
|
data,
|
|
FcltCallback,
|
|
"json");
|
|
} |