<!DOCTYPE html> <html> <head> <title>Manuel</title> <link rel="stylesheet" href="style.css"> <link rel="shortcut icon" href="assets/img/icone.ico" type="image/x-icon"> <!-- <script src="js.js"></script> --> <meta name="viewport" content="width=device-width"> </head> <body onload="editionchoisie(), checkCookie()"> <div id="firstbutton"> <div class="changeTheme"> <img src="assets/img/blackandwhite.png" alt="blackandwhite" style="max-width: 50px; max-height: 50px; margin: 10px;"> </div> <!-- <div class="changeTheme"> <img src="assets/img/blackandwhite.png" alt="blackandwhite" style="max-width: 50px; max-height: 50px; margin: 10px;" onclick="capture()"> </div> --> <div> <label for="code">Entrez le code :</label> <div> <a href="rechercher.html">Cherche ton code ici</a> </div> <input type="text" id="code" name="code" value="9782091317243"> <button onclick="urlachanger()">Changer de livre</button> </div> <div> <label for="nbpage">Entrez la page :</label> <input type="text" id="nbpage" name="nbpage" value="1" onchange="changerNBpage()"> <button onclick="changerNBpage()">Changer la page du livre</button> </div> <div> <label for="edition">Choisissez une édition :</label> <select name="edition" id="edition-select" onchange="editionchoisie()"> <option value="hachette">Hachette</option> <option value="didier">Didier</option> <option value="hatier">Hatier</option> <option value="belin">Belin</option> <option value="LLS">LeLivreScolaire</option> <option value="sesa">Sesamath</option> <option value="magnard">Magnard</option> <option value="delagrave">Delagrave</option> <option value="nathan">Nathan</option> </select> <p id="editionesthcoisieest"></p> </div> <div id="server"> <label for="server">Choisissez un server :</label> <select name="server"> <option value="1" selected>1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="7">7</option> <option value="8">8</option> <option value="9">9</option> </select> </div> </div> <!-- <div> <h1>Liens rapides :</h1> <button onclick="changerURL(9782017102106, 'hachette')"> <h1>Declic Maths 1re</h1> </button> <button onclick="changerURL(9782017102120, 'hachette')"> <h1>Physique Chimie 1re</h1> </button> <button onclick="changerURL(9782017102243, 'hachette')"> <h1>Mitreden Allemand 1re</h1> </button> <button onclick="changerURL(9782401090132, 'hatier')"> <h1>Manuel HB test</h1> </button> <button onclick="changerURL('1ere/histoire-premiere', 'belin')"> <h1>Histoire (belin)</h1> </button> <button onclick="changerURL('1ere/geographie-premiere', 'belin')"> <h1>Geographie (belin)</h1> </button> <button onclick="changerURL('48453088', 'LLS')"> <h1>ES (LLS)</h1> </button> <button onclick="changerURL('ms6_2013', 'sesa')"> <h1>Manuel 6e (Sesa)</h1> </button> <button onclick="changerURL('9782210113183', 'magnard')"> <h1>Magnard test</h1> </button> </div> --> <div class="slider"> <div id="glissière" onclick="taille()" class="col"> <input id="slider" type="range" oninput="taille()" min="30" max="200" class="slider" value="50"> </div> </div> <div id="iframe" style="max-width: 30vh;"> <div id="iframe-1"> <div class="iframe-div-1"> <iframe id="myframe1" src="https://storage.libmanuels.fr/Magnard/specimen/9782210113183/9/OEBPS/page003.xhtml?interface=postMessage"></iframe> </div> </div> <div id="iframe-2"> <div class="iframe-div-2"> <iframe id="myframe2" src="https://storage.libmanuels.fr/Magnard/specimen/9782210113183/9/OEBPS/page003.xhtml?interface=postMessage"></iframe> </div> </div> </div> <div id="img"> <img id="myimg1" src="assets/img/404.png"> <img id="myimg2" src="assets/img/404.png"> </div> <div id="changepagebutton"> <button onclick="pageachanger(-2)">← Page précédente</button> <button onclick="pageachanger(2)">Page suivante →</button> </div> <script> var iframe1 = document.getElementById("myframe1"); var iframe2 = document.getElementById("myframe2"); var diviframe = document.getElementById("iframe") var img1 = document.getElementById("myimg1"); var img2 = document.getElementById("myimg2") var divimg = document.getElementById("img"); var divserver = document.getElementById("server") var url1 = iframe1.src; var url2 = iframe2.src; var page1 = 1; var page2 = 2; var nbpage = document.getElementById("nbpage"); function editionchoisie() { var editionchoisie = document.getElementsByName("edition")[0].value; var slider = document.getElementById("slider"); if (editionchoisie == 'hachette') { console.log("Hachette"); document.getElementById("editionesthcoisieest").innerHTML = ""; diviframe.style.display = ''; slider.style.display = ''; divimg.style.display = 'none'; divserver.style.display = 'none'; document.documentElement.style.setProperty('--iframe-width', '560px'); document.documentElement.style.setProperty('--iframe-height', '800px'); } else if ((editionchoisie == 'didier') || (editionchoisie == 'hatier')) { console.log("Didier ou Hatier"); document.getElementById("editionesthcoisieest").innerHTML = ""; diviframe.style.display = ''; slider.style.display = ''; divimg.style.display = 'none'; divserver.style.display = 'none'; document.documentElement.style.setProperty('--iframe-width', '1426px'); document.documentElement.style.setProperty('--iframe-height', '2048px'); } else if (editionchoisie == 'belin') { console.log("Belin"); document.getElementById("editionesthcoisieest").innerHTML = ""; diviframe.style.display = 'none'; slider.style.display = ''; divimg.style.display = ''; divserver.style.display = 'none'; } else if (editionchoisie == 'LLS') { console.log("LLS"); document.getElementById("editionesthcoisieest").innerHTML = ""; diviframe.style.display = 'none'; slider.style.display = ''; divimg.style.display = ''; divserver.style.display = 'none'; } else if (editionchoisie == 'sesa') { console.log("sesa"); document.getElementById("editionesthcoisieest").innerHTML = ""; diviframe.style.display = 'none'; slider.style.display = ''; divimg.style.display = ''; divserver.style.display = 'none'; } else if (editionchoisie == 'magnard') { console.log("magnard"); document.getElementById("editionesthcoisieest").innerHTML = "Le serveur n°1 devrait marcher mais au cas où les autres sont dispos."; diviframe.style.display = ''; slider.style.display = ''; divimg.style.display = 'none'; divserver.style.display = ''; document.documentElement.style.setProperty('--iframe-width', '1540px'); document.documentElement.style.setProperty('--iframe-height', '2050px'); } else if (editionchoisie == 'delagrave') { console.log("delagrave"); document.getElementById("editionesthcoisieest").innerHTML = ""; diviframe.style.display = ''; slider.style.display = ''; divimg.style.display = 'none'; divserver.style.display = ''; } else if (editionchoisie == 'nathan') { console.log("nathan"); document.getElementById("editionesthcoisieest").innerHTML = ""; diviframe.style.display = ''; slider.style.display = ''; divimg.style.display = 'none'; divserver.style.display = 'none'; document.documentElement.style.setProperty('--iframe-width', '1152px'); document.documentElement.style.setProperty('--iframe-height', '1594px'); } else { document.getElementById("editionesthcoisieest").innerHTML = "⚠ Cette édition n'est pas encore supportée ⚠"; diviframe.style.display = 'none'; divimg.style.display = 'none'; slider.style.display = 'none'; divserver.style.display = 'none'; } } function urlachanger() { var code = document.getElementById("code").value; var editionchoisie = document.getElementsByName("edition")[0].value; changerURL(code, editionchoisie); } function changerURL(code, editionchoisie) { var server = document.querySelector('select[name="server"]').value; console.log(server); if (editionchoisie == 'hachette') { var newUrl1 = "https://exobank.hachette-livre.fr/contents/final/" + code + "-fxl/OEBPS/Page_1.html?interface=postMessage"; var newUrl2 = "https://exobank.hachette-livre.fr/contents/final/" + code + "-fxl/OEBPS/Page_2.html?interface=postMessage"; iframe1.src = newUrl1; iframe2.src = newUrl2; } else if ((editionchoisie == 'didier') || (editionchoisie == 'hatier')) { var newUrl1 = "https://exobank.hachette-livre.fr/contents/final/" + code + "-fxl/OEBPS/page1.xhtml?interface=postMessage"; var newUrl2 = "https://exobank.hachette-livre.fr/contents/final/" + code + "-fxl/OEBPS/page2.xhtml?interface=postMessage"; iframe1.src = newUrl1; iframe2.src = newUrl2; } // https://nohamr.github.io/Manuelcontent/Belin/1ere/geographie-premiere/page1.jpg else if (editionchoisie == 'belin') { var newUrl1 = "https://nohamr.github.io/Manuelcontent/Belin/" + code + "/page1.jpg"; var newUrl2 = "https://nohamr.github.io/Manuelcontent/Belin/" + code + "/page2.jpg"; img1.src = newUrl1; img2.src = newUrl2; } // https://assets.lls.fr/books/48453088/print/14.jpg else if (editionchoisie == 'LLS') { var newUrl1 = "https://assets.lls.fr/books/" + code + "/print/1.jpg"; var newUrl2 = "https://assets.lls.fr/books/" + code + "/print/2.jpg"; img1.src = newUrl1; img2.src = newUrl2; } // https://manuel.sesamath.net/imgs_produites/pages/ms6_2013/ms6_2013_page0.gif else if (editionchoisie == 'sesa') { var newUrl1 = "https://raw.githubusercontent.com/NohamR/Manuelcontent/main/Sesamath/" + code + "/page0.gif"; var newUrl2 = "https://raw.githubusercontent.com/NohamR/Manuelcontent/main/Sesamath/" + code + "/page1.gif"; img1.src = newUrl1; img2.src = newUrl2; } // https://storage.libmanuels.fr/Magnard/specimen/9782210116252/4/OEBPS/images/bg003_01.jpg // https://storage.libmanuels.fr/Magnard/specimen/9782210116252/4/OEBPS/page001.xhtml // https://storage.libmanuels.fr/Magnard/specimen/9782210113183/9/OEBPS/page005.xhtml // https://storage.libmanuels.fr/Magnard/specimen/9782210118201/1/OEBPS/page005.xhtml else if (editionchoisie == 'magnard') { var newUrl1 = "https://storage.libmanuels.fr/Magnard/specimen/" + code + '/' + server + "/OEBPS/page002.xhtml?interface=postMessage"; var newUrl2 = "https://storage.libmanuels.fr/Magnard/specimen/" + code + '/' + server + "/OEBPS/page003.xhtml?interface=postMessage"; iframe1.src = newUrl1; iframe2.src = newUrl2; } // https://storage.libmanuels.fr/Delagrave/specimen/9782206103983/8/OEBPS/page005.xhtml else if (editionchoisie == 'delagrave') { var newUrl1 = "https://storage.libmanuels.fr/Delagrave/specimen/" + code + '/' + server + "/OEBPS/page002.xhtml?interface=postMessage"; var newUrl2 = "https://storage.libmanuels.fr/Delagrave/specimen/" + code + '/' + server + "/OEBPS/page003.xhtml?interface=postMessage"; iframe1.src = newUrl1; iframe2.src = newUrl2; } else if (editionchoisie == 'nathan') { var newUrl1 = "https://raw.githubusercontent.com/NohamR/Manuelcontent/main/Nathan/" + code + "/page0.jpg"; var newUrl2 = "https://raw.githubusercontent.com/NohamR/Manuelcontent/main/Nathan/" + code + "/page1.jpg"; img1.src = newUrl1; img2.src = newUrl2; } else { } url1 = newUrl1; url2 = newUrl2; page1 = 1; page2 = 2; } function pageachanger(delta) { // console.log("pageachanger"); var editionchoisie = document.getElementsByName("edition")[0].value; changerPage(delta, editionchoisie); } function changerPage(delta, editionchoisie) { if (editionchoisie == 'hachette') { // console.log("hachette"); page1 += delta; page2 += delta; if (page1 < 1) { page1 = 1; } else if (page1 > 600) { page1 = 600; } if (page2 < 1) { page2 = 2; } else if (page2 > 600) { page2 = 600; } iframe1.src = url1.replace(/Page_\d+/, "Page_" + page1); iframe2.src = url2.replace(/Page_\d+/, "Page_" + page2); nbpage.value = page1; } // page1.jpg else if ((editionchoisie == 'didier') || (editionchoisie == 'hatier')) { console.log("hatier ou didier ou belin"); page1 += delta; page2 += delta; if (page1 < 1) { page1 = 1; } else if (page1 > 600) { page1 = 600; } if (page2 < 1) { page2 = 2; } else if (page2 > 600) { page2 = 600; } iframe1.src = url1.replace(/page\d+/, "page" + page1); iframe2.src = url2.replace(/page\d+/, "page" + page2); nbpage.value = page1; } else if (editionchoisie == 'belin') { console.log("belin"); page1 += delta; page2 += delta; if (page1 < 1) { page1 = 1; } else if (page1 > 600) { page1 = 600; } if (page2 < 1) { page2 = 2; } else if (page2 > 600) { page2 = 600; } img1.src = url1.replace(/page\d+/, "page" + page1); img2.src = url2.replace(/page\d+/, "page" + page2); nbpage.value = page1 } // print/14.jpg else if (editionchoisie == 'LLS') { // console.log("LLS"); page1 += delta; page2 += delta; if (page1 < 1) { page1 = 1; } else if (page1 > 600) { page1 = 600; } if (page2 < 1) { page2 = 2; } else if (page2 > 600) { page2 = 600; } img1.src = url1.replace(/\d+(?=\.jpg)/, page1); img2.src = url2.replace(/\d+(?=\.jpg)/, page2); // console.log(img1.src); // console.log(img2.src); nbpage.value = page1; } // /ms6_2013_page1.gif else if (editionchoisie == 'sesa') { // console.log("sesa"); page1 += delta; page2 += delta; if (page1 < 1) { page1 = 1; } else if (page1 > 600) { page1 = 600; } if (page2 < 1) { page2 = 2; } else if (page2 > 600) { page2 = 600; } img1.src = url1.replace(/\d+(?=\.gif)/, page1); img2.src = url2.replace(/\d+(?=\.gif)/, page2); console.log(img1.src); console.log(img2.src); nbpage.value = page1; } // /page003.xhtml?interface=postMessage" else if ((editionchoisie == 'magnard') || (editionchoisie == 'delagrave')) { // console.log("magnard"); page1 += delta; page2 += delta; if (page1 < 1) { page1 = 1; } else if (page1 > 600) { page1 = 600; } if (page2 < 1) { page2 = 2; } else if (page2 > 600) { page2 = 600; } iframe1.src = url1.replace(/(\/page)\d{3}(\.xhtml\?interface=postMessage)/, "$1" + ("000" + page1).slice(-3) + "$2"); iframe2.src = url2.replace(/(\/page)\d{3}(\.xhtml\?interface=postMessage)/, "$1" + ("000" + page2).slice(-3) + "$2"); console.log(img1.src); console.log(img2.src); nbpage.value = page1; } else if (editionchoisie == 'nathan') { // console.log("nathan"); page1 += delta; page2 += delta; if (page1 < 1) { page1 = 1; } else if (page1 > 600) { page1 = 600; } if (page2 < 1) { page2 = 2; } else if (page2 > 600) { page2 = 600; } img1.src = url1.replace(/\d+(?=\.jpg)/, page1); img2.src = url2.replace(/\d+(?=\.jpg)/, page2); console.log(img1.src); console.log(img2.src); nbpage.value = page1; } } function changerNBpage() { var nbtochange = 0 var nbpage = document.getElementById("nbpage").value; var editionchoisie = document.getElementsByName("edition")[0].value; // console.log('nbpage', nbpage); nbtochange = nbpage - page1; // console.log('nbtochange', nbtochange); changerPage(nbtochange, editionchoisie); } </script> <script> function taille() { var entree = document.getElementById("slider"); document.documentElement.style.setProperty('--scalenb', entree.value/100) } </script> <script> // https://www.toptal.com/developers/keycode document.onkeydown = function (event) { switch (event.keyCode) { case 37: pageachanger(-2); break; case 38: // alert('Up key'); break; case 39: pageachanger(2); break; case 40: // alert('Down key'); break; case 70: toggleFullScreen(); break; } }; function toggleFullScreen() { if (!document.fullscreenElement) { document.documentElement.requestFullscreen(); } else if (document.exitFullscreen) { document.exitFullscreen(); } } </script> <script> let toggleTheme = 0; var darkMode = getCookie("dark-mode"); function getCookie(name) { var value = "; " + document.cookie; var parts = value.split("; " + name + "="); if (parts.length == 2) return parts.pop().split(";").shift(); } // cookie pour le mode sombre function checkCookie() { if (darkMode == "true") { document.documentElement.style.setProperty('--color-scheme', 'dark') document.documentElement.style.setProperty('--ecriture', '#f1f1f1'); document.documentElement.style.setProperty('--background', '#262626'); toggleTheme--; } else if (darkMode == "false") { document.documentElement.style.setProperty('--color-scheme', 'light') document.documentElement.style.setProperty('--ecriture', '#262626'); document.documentElement.style.setProperty('--background', '#f1f1f1'); } } // mode sombre const switchThemeBtn = document.querySelector('.changeTheme') switchThemeBtn.addEventListener('click', () => { // mode sombre if (toggleTheme === 0) { document.documentElement.style.setProperty('--color-scheme', 'dark') document.documentElement.style.setProperty('--ecriture', '#f1f1f1'); document.documentElement.style.setProperty('--background', '#262626'); document.cookie = "dark-mode=true; expires=Fri, 31 Dec 9999 23:59:59 GMT; path=/"; toggleTheme--; } // mode clairs else { document.documentElement.style.setProperty('--color-scheme', 'light') document.documentElement.style.setProperty('--ecriture', '#262626'); document.documentElement.style.setProperty('--background', '#f1f1f1'); document.cookie = "dark-mode=false; expires=Fri, 31 Dec 9999 23:59:59 GMT; path=/"; toggleTheme++; } }) </script> <!-- <script> function capture() { const canvas = document.createElement("canvas"); const context = canvas.getContext("2d"); const video = document.createElement("video"); try { const captureStream = navigator.mediaDevices.getDisplayMedia(); video.srcObject = captureStream; context.drawImage(video, 0, 0, window.width, window.height); const frame = canvas.toDataURL("image/png"); captureStream.getTracks().forEach(track => track.stop()); window.location.href = frame; } catch (err) { console.error("Error: " + err); } }; capture();</script> --> </body> </html>