From 28e993d352d8f1bd83b2bbbc2f9d6a2750be8049 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jon=C3=A1=C5=A1=20Havelka?= Date: Wed, 5 Mar 2025 15:04:36 +0100 Subject: [PATCH 01/18] lang atribut --- korektury/templates/korektury/korekturovatko/htmlstrana.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/korektury/templates/korektury/korekturovatko/htmlstrana.html b/korektury/templates/korektury/korekturovatko/htmlstrana.html index 9c6da702..f27657c9 100644 --- a/korektury/templates/korektury/korekturovatko/htmlstrana.html +++ b/korektury/templates/korektury/korekturovatko/htmlstrana.html @@ -1,6 +1,6 @@ {% load static %} - + -- 2.39.5 From dead0e4f05896a5c3954331c197f66df6fda891f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jon=C3=A1=C5=A1=20Havelka?= Date: Wed, 5 Mar 2025 15:06:45 +0100 Subject: [PATCH 02/18] =?UTF-8?q?Definitivn=C3=AD=20zbaven=C3=AD=20se=20op?= =?UTF-8?q?raf.js?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- korektury/static/korektury/opraf.js | 46 ------------------- .../korektury/korekturovatko/__oprava.html | 46 +++++++++++++++++++ .../korektury/korekturovatko/htmlstrana.html | 1 - 3 files changed, 46 insertions(+), 47 deletions(-) delete mode 100644 korektury/static/korektury/opraf.js diff --git a/korektury/static/korektury/opraf.js b/korektury/static/korektury/opraf.js deleted file mode 100644 index 3963c49c..00000000 --- a/korektury/static/korektury/opraf.js +++ /dev/null @@ -1,46 +0,0 @@ -const W_SKIP = 10; -const H_SKIP = 5; -const POINTER_MIN_H = 30; - -function place_comments_one_div(img_id, comments) -{ - const img = document.getElementById("img-"+img_id); - if( img == null ) return; - const comments_sorted = comments.sort((a, b) => a.y - b.y); - - const par = img.parentNode; - const w = img.clientWidth; - - let bott_max = 0; - for (const oprava of comments_sorted) { - const x = oprava.x; - const y = oprava.y; - const htmlElement = oprava.htmlElement; - const pointer = oprava.pointer; - - par.appendChild(pointer); - par.appendChild(htmlElement); - - const delta_y = (y > bott_max) ? 0: bott_max - y + H_SKIP; - - pointer.style.left = x; - pointer.style.top = y; - pointer.style.width = w - x + W_SKIP; - pointer.style.height = POINTER_MIN_H + delta_y; - - htmlElement.style.left = w + W_SKIP; - htmlElement.style.top = y + delta_y; - - bott_max = Math.max(bott_max, htmlElement.offsetTop + htmlElement.offsetHeight + H_SKIP); // FIXME nemám páru, proč +H_SKIP funguje, ale opravuje to bug, že nově vytvořené korektury za sebou neměly mezeru - } - - if (par.offsetHeight < bott_max) par.style.height = bott_max; -} - -function place_comments() { - for (let [img_id, opravy] of Object.entries(comments)) { - place_comments_one_div(img_id, opravy) - } -} - - diff --git a/korektury/templates/korektury/korekturovatko/__oprava.html b/korektury/templates/korektury/korekturovatko/__oprava.html index fdee6921..4ea0011e 100644 --- a/korektury/templates/korektury/korekturovatko/__oprava.html +++ b/korektury/templates/korektury/korekturovatko/__oprava.html @@ -186,4 +186,50 @@ this.pointer.remove(); } } + + // Umisťování korektur + const W_SKIP = 10; + const H_SKIP = 5; + const POINTER_MIN_H = 30; + + function place_comments_one_div(img_id, comments) + { + const img = document.getElementById("img-"+img_id); + if( img == null ) return; + const comments_sorted = comments.sort((a, b) => a.y - b.y); + + const par = img.parentNode; + const w = img.clientWidth; + + let bott_max = 0; + for (const oprava of comments_sorted) { + const x = oprava.x; + const y = oprava.y; + const htmlElement = oprava.htmlElement; + const pointer = oprava.pointer; + + par.appendChild(pointer); + par.appendChild(htmlElement); + + const delta_y = (y > bott_max) ? 0: bott_max - y + H_SKIP; + + pointer.style.left = x; + pointer.style.top = y; + pointer.style.width = w - x + W_SKIP; + pointer.style.height = POINTER_MIN_H + delta_y; + + htmlElement.style.left = w + W_SKIP; + htmlElement.style.top = y + delta_y; + + bott_max = Math.max(bott_max, htmlElement.offsetTop + htmlElement.offsetHeight + H_SKIP); // FIXME nemám páru, proč +H_SKIP funguje, ale opravuje to bug, že nově vytvořené korektury za sebou neměly mezeru + } + + if (par.offsetHeight < bott_max) par.style.height = bott_max; + } + + function place_comments() { + for (let [img_id, opravy] of Object.entries(comments)) { + place_comments_one_div(img_id, opravy) + } + } diff --git a/korektury/templates/korektury/korekturovatko/htmlstrana.html b/korektury/templates/korektury/korekturovatko/htmlstrana.html index f27657c9..025be8ee 100644 --- a/korektury/templates/korektury/korekturovatko/htmlstrana.html +++ b/korektury/templates/korektury/korekturovatko/htmlstrana.html @@ -5,7 +5,6 @@ - Korektury {{korekturovanepdf.nazev}} -- 2.39.5 From 73fb3a408b9180c6f72b81468a4ff4620d3ae9f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jon=C3=A1=C5=A1=20Havelka?= Date: Wed, 5 Mar 2025 15:16:12 +0100 Subject: [PATCH 03/18] =?UTF-8?q?Tohle=20rozhodn=C4=9B=20nem=C3=A1=20b?= =?UTF-8?q?=C3=BDt=20'toggle-button'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../korekturovatko/__dalsi_korektura.html | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/korektury/templates/korektury/korekturovatko/__dalsi_korektura.html b/korektury/templates/korektury/korekturovatko/__dalsi_korektura.html index 1674d615..dfe969d0 100644 --- a/korektury/templates/korektury/korekturovatko/__dalsi_korektura.html +++ b/korektury/templates/korektury/korekturovatko/__dalsi_korektura.html @@ -2,29 +2,29 @@

-- 2.39.5 From c609aa33b02ae901b642862af27c222237617316 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jon=C3=A1=C5=A1=20Havelka?= Date: Wed, 5 Mar 2025 15:23:02 +0100 Subject: [PATCH 04/18] =?UTF-8?q?P=C5=99ejmenov=C3=A1n=C3=AD=20templat?= =?UTF-8?q?=C5=AF=20v=20korekturov=C3=A1tku?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...{_main.html => hlavni_cast_korekturovatka.html} | 14 ++++++++------ .../{htmlstrana.html => html_obal.html} | 6 ++---- .../dalsi_korektura.html} | 0 .../edit_komentar.html} | 0 .../{__komentar.html => moduly/komentar.html} | 2 +- .../{__oprava.html => moduly/oprava.html} | 10 +++++----- .../schovani_korektur.html} | 0 .../{__stranky.html => moduly/stranky_pdfka.html} | 0 .../{_zmena_stavu.html => zmena_stavu_pdf.html} | 0 korektury/views.py | 2 +- 10 files changed, 17 insertions(+), 17 deletions(-) rename korektury/templates/korektury/korekturovatko/{_main.html => hlavni_cast_korekturovatka.html} (77%) rename korektury/templates/korektury/korekturovatko/{htmlstrana.html => html_obal.html} (91%) rename korektury/templates/korektury/korekturovatko/{__dalsi_korektura.html => moduly/dalsi_korektura.html} (100%) rename korektury/templates/korektury/korekturovatko/{__edit_komentar.html => moduly/edit_komentar.html} (100%) rename korektury/templates/korektury/korekturovatko/{__komentar.html => moduly/komentar.html} (97%) rename korektury/templates/korektury/korekturovatko/{__oprava.html => moduly/oprava.html} (95%) rename korektury/templates/korektury/korekturovatko/{_schovani_korektur.html => moduly/schovani_korektur.html} (100%) rename korektury/templates/korektury/korekturovatko/{__stranky.html => moduly/stranky_pdfka.html} (100%) rename korektury/templates/korektury/korekturovatko/{_zmena_stavu.html => zmena_stavu_pdf.html} (100%) diff --git a/korektury/templates/korektury/korekturovatko/_main.html b/korektury/templates/korektury/korekturovatko/hlavni_cast_korekturovatka.html similarity index 77% rename from korektury/templates/korektury/korekturovatko/_main.html rename to korektury/templates/korektury/korekturovatko/hlavni_cast_korekturovatka.html index fe5c6cac..9031524e 100644 --- a/korektury/templates/korektury/korekturovatko/_main.html +++ b/korektury/templates/korektury/korekturovatko/hlavni_cast_korekturovatka.html @@ -1,12 +1,14 @@ -{% include "korektury/korekturovatko/__edit_komentar.html" %} +{% include "korektury/korekturovatko/moduly/schovani_korektur.html" %} -{% include "korektury/korekturovatko/__stranky.html" %} +{% include "korektury/korekturovatko/moduly/edit_komentar.html" %} -{# {% for o in opravy %} {% include "korektury/korekturovatko/__oprava.html" %} {% endfor %} #} -{% include "korektury/korekturovatko/__oprava.html" %} -{% include "korektury/korekturovatko/__komentar.html" %} +{% include "korektury/korekturovatko/moduly/stranky_pdfka.html" %} -{% include "korektury/korekturovatko/__dalsi_korektura.html" %} +{# {% for o in opravy %} {% include "korektury/korekturovatko/oprava.html" %} {% endfor %} #} +{% include "korektury/korekturovatko/moduly/oprava.html" %} +{% include "korektury/korekturovatko/moduly/komentar.html" %} + +{% include "korektury/korekturovatko/moduly/dalsi_korektura.html" %} -- 2.39.5 From 79a20922919d2a6a0f6bf56994ce06afbc17d012 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jon=C3=A1=C5=A1=20Havelka?= Date: Wed, 5 Mar 2025 16:55:54 +0100 Subject: [PATCH 08/18] =?UTF-8?q?P=C5=99eps=C3=A1n=C3=AD=20korekturov?= =?UTF-8?q?=C3=A1tka=20do=20=C4=8De=C5=A1tiny=20a=20oprava=20->=20korektur?= =?UTF-8?q?a=20(alespo=C5=88=20frontendu)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- korektury/static/korektury/opraf.css | 38 +-- .../hlavni_cast_korekturovatka.html | 24 +- .../korektury/korekturovatko/html_obal.html | 4 +- .../moduly/dalsi_korektura.html | 14 +- .../korekturovatko/moduly/edit_komentar.html | 84 +++---- .../korekturovatko/moduly/komentar.html | 46 ++-- .../korekturovatko/moduly/korektura.html | 234 +++++++++++++++++ .../korekturovatko/moduly/oprava.html | 235 ------------------ .../moduly/schovani_korektur.html | 42 ++-- .../korekturovatko/moduly/stranky_pdfka.html | 26 +- .../korekturovatko/zmena_stavu_pdf.html | 2 +- 11 files changed, 375 insertions(+), 374 deletions(-) create mode 100644 korektury/templates/korektury/korekturovatko/moduly/korektura.html delete mode 100644 korektury/templates/korektury/korekturovatko/moduly/oprava.html diff --git a/korektury/static/korektury/opraf.css b/korektury/static/korektury/opraf.css index de65bd6a..d5107d55 100644 --- a/korektury/static/korektury/opraf.css +++ b/korektury/static/korektury/opraf.css @@ -1,19 +1,19 @@ .textzanaseni { display:none; } .textzastarale { display:none; } -#prekomentar, #preoprava, #prepointer { display: none; } +#prekomentar, #prekorektura, #prepointer { display: none; } body { - &[data-status="pridavani"] { + &[data-stav_pdf="pridavani"] { background: #f3f3f3; } - &[data-status="zanaseni"] { + &[data-stav_pdf="zanaseni"] { background: yellow; .textzanaseni { display: unset; } } - &[data-status="zastarale"] { + &[data-stav_pdf="zastarale"] { background: red; .textzastarale { display: unset; } @@ -28,25 +28,25 @@ body { img{background:white;} /* Barvy korektur */ -[data-opravastatus="k_oprave"] { +[data-stav_korektury="k_oprave"] { --rgb: 255, 0, 0; [value="k_oprave"] { display: none } .komentovat_disabled { display: none } } -[data-opravastatus="opraveno"] { +[data-stav_korektury="opraveno"] { --rgb: 0, 0, 255; [value="opraveno"] { display: none } .komentovat { display: none } } -[data-opravastatus="neni_chyba"] { +[data-stav_korektury="neni_chyba"] { --rgb: 128, 128, 128; [value="neni_chyba"] { display: none } .komentovat { display: none } } -[data-opravastatus="k_zaneseni"] { +[data-stav_korektury="k_zaneseni"] { --rgb: 0, 255, 0; [value="k_zaneseni"] { display: none } @@ -54,10 +54,10 @@ img{background:white;} } /* Skrývání korektur */ -[data-opravazobrazit="false"] { - .corr-body { display: none; } - .corr-buttons { display: none; } - .toggle-button { transform: rotate(180deg); } +[data-korektura_sbalena="true"] { + .korektura-telo { display: none; } + .korektura-tlacitka { display: none; } + .sbal-rozbal-img { transform: rotate(180deg); } } @@ -72,14 +72,14 @@ img{background:white;} --alpha: 0.35; /* Zvýraznění čáry při najetí na korekturu */ - &[data-highlight="true"] { + &[data-hover="true"] { border-width: 3px; --alpha: 1; } } /* Korektura samotná */ -.oprava { +.korektura { margin: 1px; background-color: white; width: 300px; @@ -106,11 +106,11 @@ img{background:white;} button img { pointer-events: none; } - .corr-header { + .hlavicka-komentare { overflow: auto; } - .author { + .autor { font-weight: bold; float: left; margin-top: 3px; @@ -133,7 +133,7 @@ form { } /* Přidávání korektury / úprava komentáře */ -#commform-div { +#korekturovaci-formular-div { position: absolute; background-color: white; padding: 3px; @@ -148,8 +148,8 @@ form { margin: 2px; padding: 2px; - &[data-selected="false"] { background: unset !important; } - /*&[data-selected="true"] { border-color: unset !important; }*/ + &[data-vybran="false"] { background: unset !important; } + /*&[data-vybran="true"] { border-color: unset !important; }*/ } /* Šipky na posouvání korektur */ diff --git a/korektury/templates/korektury/korekturovatko/hlavni_cast_korekturovatka.html b/korektury/templates/korektury/korekturovatko/hlavni_cast_korekturovatka.html index 9031524e..c467e350 100644 --- a/korektury/templates/korektury/korekturovatko/hlavni_cast_korekturovatka.html +++ b/korektury/templates/korektury/korekturovatko/hlavni_cast_korekturovatka.html @@ -4,8 +4,8 @@ {% include "korektury/korekturovatko/moduly/stranky_pdfka.html" %} -{# {% for o in opravy %} {% include "korektury/korekturovatko/oprava.html" %} {% endfor %} #} -{% include "korektury/korekturovatko/moduly/oprava.html" %} +{# {% for k in korektury %} {% include "korektury/korekturovatko/korektura.html" %} {% endfor %} #} +{% include "korektury/korekturovatko/moduly/korektura.html" %} {% include "korektury/korekturovatko/moduly/komentar.html" %} {% include "korektury/korekturovatko/moduly/dalsi_korektura.html" %} @@ -17,21 +17,21 @@ * @param {Boolean} catchError * @param pri_uspechu Akce, která se má provést při úspěchu (speciálně zavřít formulář) */ - function update_all(data={}, catchError=true, pri_uspechu=null) { // FIXME není mi jasné, zda v {} nemá být `cache: "no-store"`, aby prohlížeč necachoval GET. + function aktualizuj_vse(data={}, catchError=true, pri_uspechu=null) { // FIXME není mi jasné, zda v {} nemá být `cache: "no-store"`, aby prohlížeč necachoval GET. fetch('{% url "korektury_api_opravy_a_komentare" korekturovanepdf.id %}', data) .then(response => { if (!response.ok && catchError) {alert('Něco se nepovedlo:' + response.statusText);} else response.json().then(data => { - for (const oprava_data of data["context"]) { - const oprava = Oprava.update_or_create(oprava_data); - for (const komentar_data of oprava_data["komentare"]) { - Komentar.update_or_create(komentar_data, oprava); + for (const korektura_data of data["context"]) { + const korektura = Korektura.aktualizuj_nebo_vytvor(korektura_data); + for (const komentar_data of korektura_data["komentare"]) { + Komentar.aktualizuj_nebo_vytvor(komentar_data, korektura); } } - updatuj_pocty_stavu(); - updatuj_pocty_zasluh(); - place_comments(); + aktualizuj_pocty_stavu(); + aktualizuj_pocty_zasluh(); + umisti_korektury(); if (pri_uspechu) pri_uspechu(); }); }) @@ -39,13 +39,13 @@ } window.addEventListener("load", _ => { - update_all({}, true, _ => { + aktualizuj_vse({}, true, _ => { if (location.hash !== "") location.hash = location.hash; // Po rozházení korektur sescrollujeme na kotvu v URL }); }); // FIXME není mi jasné, zda v {} nemá být `cache: "no-store"`, aby prohlížeč necachoval GET. - setInterval(() => update_all({}, false), 120000); // Každý dvě minuty fetchni korektury + setInterval(() => aktualizuj_vse({}, false), 120000); // Každý dvě minuty fetchni korektury diff --git a/korektury/templates/korektury/korekturovatko/html_obal.html b/korektury/templates/korektury/korekturovatko/html_obal.html index 3d80eda5..bba431d1 100644 --- a/korektury/templates/korektury/korekturovatko/html_obal.html +++ b/korektury/templates/korektury/korekturovatko/html_obal.html @@ -7,7 +7,7 @@ Korektury {{korekturovanepdf.nazev}} - +

Korektury {{korekturovanepdf.nazev}}

@@ -38,7 +38,7 @@ diff --git a/korektury/templates/korektury/korekturovatko/moduly/edit_komentar.html b/korektury/templates/korektury/korekturovatko/moduly/edit_komentar.html index 38c83099..a10e928a 100644 --- a/korektury/templates/korektury/korekturovatko/moduly/edit_komentar.html +++ b/korektury/templates/korektury/korekturovatko/moduly/edit_komentar.html @@ -1,111 +1,111 @@ -