forked from Ponysearch/Ponysearch
8d71420b45
This makes it easier to separately handle search and index requests from a web server or from a reverse proxy. If a request to index contains a query, a permanent redirect HTTP response is returned. This should give some level of backwards compatibility for users that have set a searx instance in their browser's search bar.
40 lines
1.2 KiB
JavaScript
40 lines
1.2 KiB
JavaScript
function hasScrollbar() {
|
|
var root = document.compatMode=='BackCompat'? document.body : document.documentElement;
|
|
return root.scrollHeight>root.clientHeight;
|
|
}
|
|
|
|
function loadNextPage() {
|
|
var formData = $('#pagination form:last').serialize();
|
|
if (formData) {
|
|
$('#pagination').html('<div class="loading-spinner"></div>');
|
|
$.ajax({
|
|
type: "POST",
|
|
url: $('#search_form').prop('action'),
|
|
data: formData,
|
|
dataType: 'html',
|
|
success: function(data) {
|
|
var body = $(data);
|
|
$('#pagination').remove();
|
|
$('#main_results').append('<hr/>');
|
|
$('#main_results').append(body.find('.result'));
|
|
$('#main_results').append(body.find('#pagination'));
|
|
if(!hasScrollbar()) {
|
|
loadNextPage();
|
|
}
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
$(document).ready(function() {
|
|
var win = $(window);
|
|
if(!hasScrollbar()) {
|
|
loadNextPage();
|
|
}
|
|
win.scroll(function() {
|
|
$("#pagination button").css("visibility", "hidden");
|
|
if ($(document).height() - win.height() - win.scrollTop() < 150) {
|
|
loadNextPage();
|
|
}
|
|
});
|
|
});
|