IW4M-Admin/WebfrontCore/wwwroot/js/penalty.js

85 lines
2.5 KiB
JavaScript
Raw Permalink Normal View History

let offset = 15;
let isLoading = false;
2018-02-21 20:29:23 -05:00
2019-07-19 15:54:39 -04:00
function PenaltyScrollHandler(e) {
2019-07-19 15:54:39 -04:00
//throttle event:
hasScrollBar = true;
clearTimeout(_throttleTimer);
_throttleTimer = setTimeout(function () {
//do work
if ($window.scrollTop() + $window.height() > $document.height() - 100) {
loadMorePenalties();
}
}, _throttleDelay);
}
2018-02-21 20:29:23 -05:00
function loadMorePenalties() {
if (isLoading) {
return false;
}
showLoader();
isLoading = true;
$.get('/Penalty/ListAsync', {
offset: offset,
showOnly: $('#penalty_filter_selection').val(),
hideAutomatedPenalties: document.getElementById('hide_automated_penalties_checkbox').checked
})
2018-02-21 20:29:23 -05:00
.done(function (response) {
$('#penalty_table').append(response);
if (response.trim().length === 0) {
staleLoader();
}
hideLoader();
isLoading = false;
})
.fail(function (jqxhr, statis, error) {
errorLoader();
isLoading = false;
2018-02-21 20:29:23 -05:00
});
offset += 15;
2018-02-21 20:29:23 -05:00
}
if ($('#penalty_table').length === 1) {
$('#penalty_filter_selection').change(function () {
location = location.href.split('?')[0] + "?showOnly=" + $('#penalty_filter_selection').val() + '&hideAutomatedPenalties=' + document.getElementById('hide_automated_penalties_checkbox').checked;
});
$('#hide_automated_penalties_checkbox').click(function () {
location = location.href.split('?')[0] + "?showOnly=" + $('#penalty_filter_selection').val() + '&hideAutomatedPenalties=' + document.getElementById('hide_automated_penalties_checkbox').checked;
});
/*
https://stackoverflow.com/questions/19731730/jquery-js-detect-users-scroll-attempt-without-any-window-overflow-to-scroll
*/
$('html').bind('mousewheel DOMMouseScroll', function (e) {
2019-07-19 15:54:39 -04:00
var delta = e.originalEvent.wheelDelta || -e.originalEvent.detail;
2018-02-21 20:29:23 -05:00
if (delta < 0 && !hasScrollBar) {
loadMorePenalties();
}
});
2018-02-21 20:29:23 -05:00
/*
https://stackoverflow.com/questions/3898130/check-if-a-user-has-scrolled-to-the-bottom
*/
var _throttleTimer = null;
var _throttleDelay = 100;
var $window = $(window);
var $document = $(document);
var hasScrollBar = false;
2018-02-21 20:29:23 -05:00
$document.ready(function () {
$window
.off('scroll', PenaltyScrollHandler)
.on('scroll', PenaltyScrollHandler);
$('#load_penalties_button').click(function () {
loadMorePenalties();
});
});
2018-02-21 20:29:23 -05:00
}