Reorganize functions to avoid undef functions.
This commit is contained in:
parent
3343a65335
commit
8e5d716a99
162
util.js
162
util.js
|
@ -129,35 +129,6 @@ function getTagList () {
|
||||||
return tagList;
|
return tagList;
|
||||||
}
|
}
|
||||||
|
|
||||||
function doFilter () {
|
|
||||||
$(".books").removeClass("filtered");
|
|
||||||
if (jQuery.isEmptyObject(filterList)) {
|
|
||||||
updateFilters ();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
$(".se").each (function(){
|
|
||||||
var taglist = ", " + $(this).text() + ", ";
|
|
||||||
var toBeFiltered = false;
|
|
||||||
for (var filter in filterList) {
|
|
||||||
var onlyThisTag = filterList [filter];
|
|
||||||
filter = ', ' + filter + ', ';
|
|
||||||
var myreg = new RegExp (filter);
|
|
||||||
if (myreg.test (taglist)) {
|
|
||||||
if (onlyThisTag === false) {
|
|
||||||
toBeFiltered = true;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
if (onlyThisTag === true) {
|
|
||||||
toBeFiltered = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (toBeFiltered) { $(this).parents (".books").addClass ("filtered"); }
|
|
||||||
});
|
|
||||||
updateFilters ();
|
|
||||||
}
|
|
||||||
|
|
||||||
function updateFilters () {
|
function updateFilters () {
|
||||||
var tagList = getTagList ();
|
var tagList = getTagList ();
|
||||||
|
|
||||||
|
@ -190,6 +161,35 @@ function updateFilters () {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function doFilter () {
|
||||||
|
$(".books").removeClass("filtered");
|
||||||
|
if (jQuery.isEmptyObject(filterList)) {
|
||||||
|
updateFilters ();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$(".se").each (function(){
|
||||||
|
var taglist = ", " + $(this).text() + ", ";
|
||||||
|
var toBeFiltered = false;
|
||||||
|
for (var filter in filterList) {
|
||||||
|
var onlyThisTag = filterList [filter];
|
||||||
|
filter = ', ' + filter + ', ';
|
||||||
|
var myreg = new RegExp (filter);
|
||||||
|
if (myreg.test (taglist)) {
|
||||||
|
if (onlyThisTag === false) {
|
||||||
|
toBeFiltered = true;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (onlyThisTag === true) {
|
||||||
|
toBeFiltered = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (toBeFiltered) { $(this).parents (".books").addClass ("filtered"); }
|
||||||
|
});
|
||||||
|
updateFilters ();
|
||||||
|
}
|
||||||
|
|
||||||
function handleFilterEvents () {
|
function handleFilterEvents () {
|
||||||
$("#filter ul").on ("click", "li", function(){
|
$("#filter ul").on ("click", "li", function(){
|
||||||
var filter = $(this).text ();
|
var filter = $(this).text ();
|
||||||
|
@ -223,23 +223,6 @@ function handleFilterEvents () {
|
||||||
************************************************
|
************************************************
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function navigateTo (url) {
|
|
||||||
$("h1").append (" <i class='icon-spinner icon-spin'></i>");
|
|
||||||
before = new Date ();
|
|
||||||
var jsonurl = url.replace ("index", "getJSON");
|
|
||||||
var cachedData = cache.get (jsonurl);
|
|
||||||
if (cachedData) {
|
|
||||||
history.pushState(jsonurl, "", url);
|
|
||||||
updatePage (cachedData);
|
|
||||||
} else {
|
|
||||||
$.getJSON(jsonurl, function(data) {
|
|
||||||
history.pushState(jsonurl, "", url);
|
|
||||||
cache.put (jsonurl, data);
|
|
||||||
updatePage (data);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function updatePage (data) {
|
function updatePage (data) {
|
||||||
var result;
|
var result;
|
||||||
filterList = {};
|
filterList = {};
|
||||||
|
@ -274,42 +257,21 @@ function updatePage (data) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*exported handleLinks */
|
function navigateTo (url) {
|
||||||
function handleLinks () {
|
$("h1").append (" <i class='icon-spinner icon-spin'></i>");
|
||||||
$("body").on ("click", "a[href^='index']", link_Clicked);
|
before = new Date ();
|
||||||
$("body").on ("submit", "#searchForm", search_Submitted);
|
var jsonurl = url.replace ("index", "getJSON");
|
||||||
$("body").on ("click", "#sort", function(){
|
var cachedData = cache.get (jsonurl);
|
||||||
$('.books').sortElements(function(a, b){
|
if (cachedData) {
|
||||||
var test = 1;
|
history.pushState(jsonurl, "", url);
|
||||||
if ($("#sortorder").val() === "desc")
|
updatePage (cachedData);
|
||||||
{
|
} else {
|
||||||
test = -1;
|
$.getJSON(jsonurl, function(data) {
|
||||||
}
|
history.pushState(jsonurl, "", url);
|
||||||
return $(a).find ("." + $("#sortchoice").val()).text() > $(b).find ("." + $("#sortchoice").val()).text() ? test : -test;
|
cache.put (jsonurl, data);
|
||||||
|
updatePage (data);
|
||||||
});
|
});
|
||||||
});
|
}
|
||||||
|
|
||||||
$("body").on ("click", ".headright", function(){
|
|
||||||
if ($("#tool").is(":hidden")) {
|
|
||||||
$("#tool").slideDown("slow");
|
|
||||||
$("input[name=query]").focus();
|
|
||||||
$.cookie('toolbar', '1', { expires: 365 });
|
|
||||||
} else {
|
|
||||||
$("#tool").slideUp();
|
|
||||||
$.removeCookie('toolbar');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
$("body").magnificPopup({
|
|
||||||
delegate: '.fancycover', // child items selector, by clicking on it popup will open
|
|
||||||
type: 'image',
|
|
||||||
gallery:{enabled:true, preload: [0,2]},
|
|
||||||
disableOn: function() {
|
|
||||||
if( getCurrentOption ("use_fancyapps") === "1" ) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function link_Clicked (event) {
|
function link_Clicked (event) {
|
||||||
|
@ -362,6 +324,44 @@ function search_Submitted (event) {
|
||||||
navigateTo (url);
|
navigateTo (url);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*exported handleLinks */
|
||||||
|
function handleLinks () {
|
||||||
|
$("body").on ("click", "a[href^='index']", link_Clicked);
|
||||||
|
$("body").on ("submit", "#searchForm", search_Submitted);
|
||||||
|
$("body").on ("click", "#sort", function(){
|
||||||
|
$('.books').sortElements(function(a, b){
|
||||||
|
var test = 1;
|
||||||
|
if ($("#sortorder").val() === "desc")
|
||||||
|
{
|
||||||
|
test = -1;
|
||||||
|
}
|
||||||
|
return $(a).find ("." + $("#sortchoice").val()).text() > $(b).find ("." + $("#sortchoice").val()).text() ? test : -test;
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
$("body").on ("click", ".headright", function(){
|
||||||
|
if ($("#tool").is(":hidden")) {
|
||||||
|
$("#tool").slideDown("slow");
|
||||||
|
$("input[name=query]").focus();
|
||||||
|
$.cookie('toolbar', '1', { expires: 365 });
|
||||||
|
} else {
|
||||||
|
$("#tool").slideUp();
|
||||||
|
$.removeCookie('toolbar');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
$("body").magnificPopup({
|
||||||
|
delegate: '.fancycover', // child items selector, by clicking on it popup will open
|
||||||
|
type: 'image',
|
||||||
|
gallery:{enabled:true, preload: [0,2]},
|
||||||
|
disableOn: function() {
|
||||||
|
if( getCurrentOption ("use_fancyapps") === "1" ) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
window.onpopstate = function(event) {
|
window.onpopstate = function(event) {
|
||||||
before = new Date ();
|
before = new Date ();
|
||||||
var data = cache.get (event.state);
|
var data = cache.get (event.state);
|
||||||
|
|
Loading…
Reference in a new issue