1
0
mirror of https://github.com/lise-henry/crowbook synced 2024-09-29 20:41:24 +02:00
crowbook/templates/script.js
2016-04-02 13:58:36 +02:00

74 lines
2.3 KiB
JavaScript

/* Builtin script also includes html_dir.script */
{{#display_chapter}}
function showChapter(chap, noreset){
if (!displayAll) {
var chapters = document.getElementsByClassName("chapter");
for (i = 0; i < chapters.length; i++) {
if (i == chap) {
chapters[i].style.display = "block";
} else {
chapters[i].style.display = "none";
}
}
var controls = document.getElementsByClassName("chapterControls");
for (i = 0; i < controls.length; i++){
if (i >= chap * 2-1 && i <= chap * 2) {
controls[i].style.display = "block";
} else {
controls[i].style.display = "none";
}
}
if (!noreset) {
window.location.hash = "#chapter-"+chap;
}
} else {
window.location.hash = "#chapter-"+chap;
}
}
function getChapter(elem) {
if (elem.className == "chapter") {
return parseInt(elem.id.substr("chapter-".length));
} else {
return getChapter(elem.parentElement);
}
}
function switchAll() {
if (!displayAll){
displayAll = true;
var chapters = document.getElementsByClassName("chapter");
for (i = 0; i < chapters.length; i++) {
chapters[i].style.display = "block";
}
var controls = document.getElementsByClassName("chapterControls");
for (i = 0; i < controls.length; i++){
controls[i].style.display = "none";
}
displayAllSwitcher = document.getElementById("book-button");
displayAllSwitcher.src="{{{pages_svg}}}";
displayAllSwitcher.alt="{{{loc_display_one}}}";
displayAllSwitcher.title="{{{loc_display_one}}}";
}else{
displayAll = false;
showChapter(0);
displayAllSwitcher = document.getElementById("book-button");
displayAllSwitcher.src="{{{book_svg}}}";
displayAllSwitcher.alt="{{{loc_display_all}}}";
displayAllSwitcher.title="{{{loc_display_all}}}";
}
}
window.onload = function(){
displayAll = false;
var hash = document.location.hash;
if (!hash) {
showChapter(0, true);
} else {
var element = document.getElementById(hash.substr(1));
var chap = getChapter(element);
showChapter(chap, true);
}
};
{{/display_chapter}}