Files
Facilitor/APPL/BEZ/bez_list.js
Erik Groener 8a7cf9fffc DJIN#37247 Apart opmerking veld per bezoeker
svn path=/Website/trunk/; revision=31913
2016-12-09 08:21:06 +00:00

206 lines
6.9 KiB
JavaScript

/*
$Revision$
$Id$
File: bez_list.js
*/
function bezDelete(row)
{
$(row).addClass('dirty');
var bez_key = row.getAttribute("ROWKEY");
var data = { bez_key: bez_key
, urole: urole
, level: "B"
};
protectRequest.dataToken(data);
FcltMgr.confirm(L("lcl_bez_confirm_delete_bezoeker"), function() {
$.post("bez_delete.asp",
data,
FcltCallbackAndThen(function() {
$(row).hide();
}),
"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");
}