VGLD#56232 Search-as-you-type in res_planbord_voorzieningen

svn path=/Website/trunk/; revision=41438
This commit is contained in:
2019-03-11 09:13:45 +00:00
parent 969377a310
commit f5d6790d31

View File

@@ -87,16 +87,64 @@ var hour_px = res.hour_px(width_px - 250, nr_days);
<script type="text/javascript">
var hour_px = <%=hour_px%>;
var hour_px = <%=hour_px%>;
var rsv_ruimte_key = -1;
var urole = "<%=urole%>";
var rsv_ruimte_key = -1;
var urole = "<%=urole%>";
// Worden in res_plan.js gebruikt:
var res_van = new Date(<%=date_from.getTime()%>);
var res_tot = new Date(<%=date_to.getTime()%>);
// Worden in res_plan.js gebruikt:
var res_van = new Date(<%=date_from.getTime()%>);
var res_tot = new Date(<%=date_to.getTime()%>);
window.lastFilter = "";
$(function()
{
if ($("table.planbord > tbody > tr").length > 4)
{ // Uitsluitend als de frameheader direct voor de omsluitende collapseblock komt
var $tableBlock = $("table.planbord").closest("div#list");
var $frameHeader;
// Als de hambdropdown div tussendoor komt, 1 opschuiven
if ($tableBlock.prev().prop("className") == "hambdropdown")
$frameHeader = $tableBlock.prev().prev(".fcltframeheader");
else
$frameHeader = $tableBlock.prev(".fcltframeheader");
$frameHeader.find("#iframerextratitle").after("<input id='autofilter' type='text' placeholder='"+L("lcl_autofilter")+"'>");
$("#autofilter").click(function (e) { e.stopPropagation() })
.keyup(function (e) {
if (e.which == 27) {
$("#autofilter").val("");
}
delayed(200, doFilter);
});
}
});
function doFilter(deze)
{
var deze = $("#autofilter");
var valThis = deze.val().toLowerCase();
// Zolang je *meer* letters tikt hoeven wel altijd alleen te hiden
// Dat is op IE11 veel sneller dan toggle
var hideOnly = valThis.indexOf(window.lastFilter) == 0;
$("table.planbord > tbody > tr").each(function() {
var text = $(this).text().toLowerCase();
var found = text.indexOf(valThis) > -1;
if (!found && hideOnly)
this.style.display = "none"; // Veel sneller met IE11 dan $(this).hide();
else
$(this).toggle(found);
});
if (typeof updateTableHeaders === "function")
{
updateTableHeaders();
}
if (!hideOnly)
FcltMgr.resized();
window.lastFilter = valThis;
}
function res_print()
{