mirror of
https://github.com/kiwix/libkiwix.git
synced 2025-06-26 10:11:30 +00:00
This code is mainly copied from kiwix-tools. But : - Move all the response thing in a new class Response. - This Response class is responsible to handle all the MHD_response configuration. This way the server handle a global object and do no call to MHD_response* - Server uses a lot more the templating system with mustache. There are still few regex operations (because we need to change a content already existing). - By default, the server serves the content using the id as name. - Server creates a new Searcher per request. This way, we don't have to protect the search for multi-thread and we can do several search in the same time. - search results are not cached, this will allow future improvement in the search algorithm. - the home page is not cached. - Few more verbose information (number of request served, time spend to respond to a request). TOOD: - Readd interface selection. - Do Android wrapper. - Remove KiwixServer (who use a external process). -
49 lines
1.6 KiB
JavaScript
49 lines
1.6 KiB
JavaScript
|
|
(function ($) {
|
|
if ($(window).width() < 520) {
|
|
var didScroll;
|
|
var lastScrollTop = 0;
|
|
var delta = 5;
|
|
// on scroll, let the interval function know the user has scrolled
|
|
$(window).scroll(function (event) {
|
|
didScroll = true;
|
|
});
|
|
// run hasScrolled() and reset didScroll status
|
|
setInterval(function () {
|
|
if (didScroll) {
|
|
hasScrolled();
|
|
didScroll = false;
|
|
}
|
|
}, 250);
|
|
function hasScrolled() {
|
|
var st = $(this).scrollTop();
|
|
|
|
// Make sure they scroll more than delta
|
|
if (Math.abs(lastScrollTop - st) <= delta)
|
|
return;
|
|
|
|
// If they scrolled down and are past the navbar, add class .nav-up.
|
|
// This is necessary so you never see what is "behind" the navbar.
|
|
if (st > lastScrollTop) {
|
|
// Scroll Down
|
|
$('#kiwixtoolbar').css({ top: '-100%' });
|
|
} else {
|
|
// Scroll Up
|
|
$('#kiwixtoolbar').css({ top: '0' });
|
|
}
|
|
|
|
lastScrollTop = st;
|
|
}
|
|
}
|
|
|
|
$('#kiwixsearchbox').on({
|
|
focus: function () {
|
|
$('.kiwix_searchform').addClass('full_width');
|
|
$('label[for="kiwix_button_show_toggle"], .kiwix_button_cont').addClass('searching');
|
|
},
|
|
blur: function () {
|
|
$('.kiwix_searchform').removeClass('full_width');
|
|
$('label[for="kiwix_button_show_toggle"], .kiwix_button_cont').removeClass('searching');
|
|
}
|
|
});
|
|
})(jQuery); |