diff --git a/ch.html b/ch.html index 2e48127..2df2475 100644 --- a/ch.html +++ b/ch.html @@ -3,8 +3,18 @@ Страница главы - - + + + + + + + @@ -12,6 +22,9 @@ +

@@ -31,12 +44,13 @@
-

+

+ + + + @@ -16,6 +25,9 @@ --> +

@@ -27,7 +39,8 @@

diff --git a/js/ch.js b/js/ch.js new file mode 100644 index 0000000..d2b7dcf --- /dev/null +++ b/js/ch.js @@ -0,0 +1,116 @@ +function load_page_first() { + document.getElementById('bodydiv').style.visibility = "hidden"; + var id_chapt = window.location.hash.replace("#", ""); + var requestURL = "img/" + id_chapt + "/info.json"; + var request = new XMLHttpRequest(); + request.open('GET', requestURL); + request.responseType = 'json'; + request.send(); + request.onload = function(){ + if (request.status != 200) { + document.getElementById('titlesys').textContent = "Ошибка " + request.status + ":" + request.statusText; + document.getElementById('progresspage').style.visibility = "hidden"; + } else { + width_page = document.documentElement.scrollWidth; + if(width_page <= 800){ + document.getElementById('pc_elem').remove() + } else { + document.getElementById('mobile_elem').remove() + } + var json_ready = request.response; + document.getElementById('prevbutton').style.visibility = "hidden"; + document.getElementById('namech').textContent = json_ready["name_ch"]; + document.title = json_ready["name_ch"]; + document.getElementById('infotitle').textContent = json_ready["name_ch"]; + document.getElementById('infostart').textContent = json_ready["start"]; + document.getElementById('infoend').textContent = json_ready["end"]; + document.getElementById('infohead').textContent = json_ready["head"]; + crs_start = "img/" + id_chapt + "/" + json_ready["start"] + "." + json_ready["ext"]; + document.getElementById('mangapage').src = crs_start; + document.getElementById('progresspage').style.visibility = "hidden"; + var manga_page = document.getElementById('mangapage'); + document.getElementById('bodydiv').style.visibility = "visible"; + manga_page.onload = function(){ + document.getElementById('progressimage').style.visibility = "hidden"; + document.getElementById('progressimage2').style.visibility = "hidden"; + }; + } + } + request.onerror = function() { + document.getElementById('titlesys').textContent = "Ошибка запроса!"; + }; +} + +function toggleFullScreen() { + if (!document.fullscreenElement) { + document.getElementById('namech').remove(); + document.getElementById('copyright').style.visibility = "collapse"; + document.documentElement.requestFullscreen(); + } else { + if (document.exitFullscreen) { + let title_tag = document.createElement('h2'); + title_tag.id = "namech"; + title_tag.textContent = document.getElementById('infotitle').textContent; + document.getElementById('title_ch').append(title_tag); + document.getElementById('copyright').style.visibility = "visible"; + document.exitFullscreen(); + } + } +} + +function manga_page(count) { + var head_info = document.getElementById('infohead').textContent; + document.location.href = "manga.html#" + head_info; +} + +function page_flip(count) { + document.getElementById('progressimage').style.visibility = "visible"; + document.getElementById('progressimage2').style.visibility = "visible"; + window.scrollTo(0, 0); + var min = parseInt(document.getElementById('infostart').textContent); + var max = parseInt(document.getElementById('infoend').textContent); + var root = "img/"; + var current_link = document.getElementById('mangapage').src; + let ref_cute1 = current_link.split('/').reverse(); + let ref_cute2 = ref_cute1[0].split('.'); + current_num = parseInt(ref_cute2[0]); + if(current_num + count <= max){ + if(current_num + count >= min){ + var next_num = current_num + count; + var next_link = root + ref_cute1[1] + "/" + next_num + "." + ref_cute2[1]; + document.getElementById('mangapage').src = next_link; + if(next_num == min) { + document.getElementById('prevbutton').style.visibility = "hidden"; + } else if (next_num == max) { + document.getElementById('nextbutton').style.visibility = "hidden"; + } else { + document.getElementById('prevbutton').style.visibility = "visible"; + document.getElementById('nextbutton').style.visibility = "visible"; + } + } else { + document.getElementById('progressimage').style.visibility = "hidden"; + document.getElementById('progressimage2').style.visibility = "hidden"; + } + + } else { + document.getElementById('progressimage').style.visibility = "hidden"; + document.getElementById('progressimage2').style.visibility = "hidden"; + } + var manga_page = document.getElementById('mangapage'); + manga_page.onload = function (){ + document.getElementById('progressimage').style.visibility = "hidden"; + document.getElementById('progressimage2').style.visibility = "hidden"; + }; +} +document.onkeydown = function(e) { + if (e.key == "ArrowLeft"){ + page_flip(-1) + } else if (e.key == "ArrowRight") { + page_flip(1) + } else { + // Ignore + } +} + + + diff --git a/js/chapters.js b/js/chapters.js deleted file mode 100644 index bbf40e2..0000000 --- a/js/chapters.js +++ /dev/null @@ -1,38 +0,0 @@ -function start() { - document.getElementById("cardinfo").style.visibility = "hidden"; - var id_chapt = window.location.hash.replace("#", ""); - var requestURL = "json/" + id_chapt + ".json"; - var request = new XMLHttpRequest(); - request.open('GET', requestURL); - request.responseType = 'json'; - request.send(); - request.onload = function() { - if (request.status != 200) { - document.getElementById('title').textContent = "Ошибка " + request.status + ":" + request.statusText; - document.getElementById('progress').style.visibility = "hidden"; - } else { - var json_ready = request.response; - document.getElementById("cardinfo").style.visibility = "visible"; - document.getElementById('title').textContent = json_ready["name"]; - document.title = json_ready["name"]; - document.getElementById('cover').src = json_ready["cover"]; - document.getElementById('cardinfo1').textContent = "Автор: " + json_ready["author"]; - document.getElementById('cardinfo2').textContent = "Статус тайтла: " + json_ready["status_ti"]; - document.getElementById('cardinfo3').textContent = "Статус перевода: " + json_ready["status_tl"]; - var list_ch = json_ready["ch"]; - var index; - for (index = 0; index < list_ch.length; ++index) { - let ch_p_one = document.createElement('p'); - let ch_one = document.createElement('a'); - ch_one.href = "ch.html#" + list_ch[index]["id"]; - ch_one.textContent = list_ch[index]["name"] - ch_p_one.append(ch_one); - document.getElementById('helper1').before(ch_p_one); - } - document.getElementById('progress').style.visibility = "hidden"; - } - } - request.onerror = function() { - document.getElementById('title').textContent = "Ошибка запроса!"; - }; -} \ No newline at end of file diff --git a/js/manga.js b/js/manga.js index b6ad18c..bbf40e2 100644 --- a/js/manga.js +++ b/js/manga.js @@ -1,112 +1,38 @@ -function load_page_first() { - document.getElementById('bodydiv').style.visibility = "hidden"; +function start() { + document.getElementById("cardinfo").style.visibility = "hidden"; var id_chapt = window.location.hash.replace("#", ""); - var requestURL = "img/" + id_chapt + "/info.json"; + var requestURL = "json/" + id_chapt + ".json"; var request = new XMLHttpRequest(); request.open('GET', requestURL); request.responseType = 'json'; request.send(); - request.onload = function(){ + request.onload = function() { if (request.status != 200) { - document.getElementById('titlesys').textContent = "Ошибка " + request.status + ":" + request.statusText; - document.getElementById('progresspage').style.visibility = "hidden"; + document.getElementById('title').textContent = "Ошибка " + request.status + ":" + request.statusText; + document.getElementById('progress').style.visibility = "hidden"; } else { - width_page = document.documentElement.scrollWidth; - if(width_page <= 800){ - document.getElementById('pc_elem').remove() - } else { - document.getElementById('mobile_elem').remove() - } var json_ready = request.response; - document.getElementById('prevbutton').style.visibility = "hidden"; - document.getElementById('namech').textContent = json_ready["name_ch"]; - document.title = json_ready["name_ch"]; - document.getElementById('infostart').textContent = json_ready["start"]; - document.getElementById('infoend').textContent = json_ready["end"]; - document.getElementById('infohead').textContent = json_ready["head"]; - crs_start = "img/" + id_chapt + "/" + json_ready["start"] + "." + json_ready["ext"]; - document.getElementById('mangapage').src = crs_start; - document.getElementById('progresspage').style.visibility = "hidden"; - var manga_page = document.getElementById('mangapage'); - document.getElementById('bodydiv').style.visibility = "visible"; - manga_page.onload = function(){ - document.getElementById('progressimage').style.visibility = "hidden"; - document.getElementById('progressimage2').style.visibility = "hidden"; - }; + document.getElementById("cardinfo").style.visibility = "visible"; + document.getElementById('title').textContent = json_ready["name"]; + document.title = json_ready["name"]; + document.getElementById('cover').src = json_ready["cover"]; + document.getElementById('cardinfo1').textContent = "Автор: " + json_ready["author"]; + document.getElementById('cardinfo2').textContent = "Статус тайтла: " + json_ready["status_ti"]; + document.getElementById('cardinfo3').textContent = "Статус перевода: " + json_ready["status_tl"]; + var list_ch = json_ready["ch"]; + var index; + for (index = 0; index < list_ch.length; ++index) { + let ch_p_one = document.createElement('p'); + let ch_one = document.createElement('a'); + ch_one.href = "ch.html#" + list_ch[index]["id"]; + ch_one.textContent = list_ch[index]["name"] + ch_p_one.append(ch_one); + document.getElementById('helper1').before(ch_p_one); + } + document.getElementById('progress').style.visibility = "hidden"; } } request.onerror = function() { - document.getElementById('titlesys').textContent = "Ошибка запроса!"; + document.getElementById('title').textContent = "Ошибка запроса!"; }; -} - -function toggleFullScreen() { - if (!document.fullscreenElement) { - document.getElementById('title_ch').style.visibility = "collapse"; - document.getElementById('copyright').style.visibility = "collapse"; - document.documentElement.requestFullscreen(); - } else { - if (document.exitFullscreen) { - document.getElementById('title_ch').style.visibility = "visible"; - document.getElementById('copyright').style.visibility = "visible"; - document.exitFullscreen(); - } - } -} - -function manga_page(count) { - var head_info = document.getElementById('infohead').textContent; - document.location.href = "manga.html#" + head_info; -} - -function page_flip(count) { - document.getElementById('progressimage').style.visibility = "visible"; - document.getElementById('progressimage2').style.visibility = "visible"; - window.scrollTo(0, 0); - var min = parseInt(document.getElementById('infostart').textContent); - var max = parseInt(document.getElementById('infoend').textContent); - var root = "img/"; - var current_link = document.getElementById('mangapage').src; - let ref_cute1 = current_link.split('/').reverse(); - let ref_cute2 = ref_cute1[0].split('.'); - current_num = parseInt(ref_cute2[0]); - if(current_num + count <= max){ - if(current_num + count >= min){ - var next_num = current_num + count; - var next_link = root + ref_cute1[1] + "/" + next_num + "." + ref_cute2[1]; - document.getElementById('mangapage').src = next_link; - if(next_num == min) { - document.getElementById('prevbutton').style.visibility = "hidden"; - } else if (next_num == max) { - document.getElementById('nextbutton').style.visibility = "hidden"; - } else { - document.getElementById('prevbutton').style.visibility = "visible"; - document.getElementById('nextbutton').style.visibility = "visible"; - } - } else { - document.getElementById('progressimage').style.visibility = "hidden"; - document.getElementById('progressimage2').style.visibility = "hidden"; - } - - } else { - document.getElementById('progressimage').style.visibility = "hidden"; - document.getElementById('progressimage2').style.visibility = "hidden"; - } - var manga_page = document.getElementById('mangapage'); - manga_page.onload = function (){ - document.getElementById('progressimage').style.visibility = "hidden"; - document.getElementById('progressimage2').style.visibility = "hidden"; - }; -} -document.onkeydown = function(e) { - if (e.key == "ArrowLeft"){ - page_flip(-1) - } else if (e.key == "ArrowRight") { - page_flip(1) - } else { - // Ignore - } -} - - - +} \ No newline at end of file diff --git a/js/theming.js b/js/theming.js new file mode 100644 index 0000000..ad2b038 --- /dev/null +++ b/js/theming.js @@ -0,0 +1,34 @@ +function addstylesheet(name_short) { + var head = document.head; + var link = document.createElement("link"); + link.type = "text/css"; + link.rel = "stylesheet"; + name_style = "css/color-"+name_short+".css" + link.href = name_style; + link.id = "currentstylesheet"; + head.appendChild(link); +} + +function startstylepage() { + var cookieValue = document.cookie.replace(/(?:(?:^|.*;\s*)theme\s*\=\s*([^;]*).*$)|^.*$/, "$1"); + if(cookieValue == "") { + addstylesheet("dark"); + } else { + + addstylesheet(cookieValue); + } +} + +function swap_theme(num) { + if(num == 1) { + document.cookie = "theme=dark; max-age=2592000; secure"; + document.getElementById('currentstylesheet').remove(); + addstylesheet("dark"); + } else if (num == 2) { + document.cookie = "theme=light; max-age=2592000; secure"; + document.getElementById('currentstylesheet').remove(); + addstylesheet("light"); + } else { + // Ignore + } +} \ No newline at end of file diff --git a/manga.html b/manga.html index 2684596..17b6a90 100644 --- a/manga.html +++ b/manga.html @@ -3,8 +3,18 @@ Страница манги - - + + + + + + + @@ -12,6 +22,9 @@ +

@@ -30,7 +43,8 @@