Z verze
změnil(a) David Brazda
k 08.04.2021 09:39
Na verzi < 9.1 >
změnil(a) David Brazda
k 08.04.2021 10:03
< >
Popis verze: allow view právo pro XWiki.Reader

Přehled

Rozpis

Na stránce změněno:
Obsah
... ... @@ -1,17 +1,20 @@
1 -Tento JSX
1 +Tato stránka obsahuje JSX, které
2 2  
3 -1) aktivuje na celé wiki [[lightbox viewer>>https://lokeshdhakar.com/projects/lightbox2/]] pro zobrazení obrázků - pokud najde A hrefu s atributem data-lightbox="lightbox" pak zobrazí child element v lightboxu
3 +1) **enablují** na celé wiki [[lightbox viewer>>https://lokeshdhakar.com/projects/lightbox2/]] pro zobrazení obrázků - pokud najde A hrefu s atributem data-lightbox="lightbox" pak zobrazí child img element v lightboxu
4 4  
5 -2) zároveň je zde dodělaná funkcionalita, která u všech A elementů obklopených span xwikiattachement a obsahující child element IMG - nastaví u A dynamicky data-lightbox atribut, zároveň zkopíruje alt u image do lightbox-title do A elementu
5 +2) u všech příloh s obrázkem (tzn. A elementů obklopených span xwikiattachement a obsahující child element IMG) provede:
6 6  
7 -3) tento update je proveden na dom-reloaded akci - nutné aby zafungovalo i po uložení editace a nejenom reloadu stranky
7 +* **vytvoří caption** - tzn. obklopí img element do figure a figureCaption (do kterého zkopíruje alt)
8 +* **aktivuje lightbox** - tzn. nastaví u A dynamicky data-lightbox atribut, zároveň zkopíruje alt u image do lightbox-title do A elementu
8 8  
10 +3) tento update je triggerován na dom-reloaded akci - nutné aby zafungovalo i po uložení editace a nejenom reloadu stranky
9 9  
10 -Jinak je celý proces následující
11 11  
13 +Jinak je celý end to end proces následující
14 +
12 12  1. uživatel vloží paste obrázku do CKEditoru
13 13  1. zafunguje upraveny upload plugin a místo samotného image vrací image nalinkovaný na daný attachement, tzn. uploadovaná image je vždycky s linkem a validní v xwiki 2.1 syntax -  xwiki-upload (loaduje [[CKEditor plugin loader>>BackEnd.CKEditor plugin loader.WebHome]] a samotny kod je v /resources/mujupload.js xwiki-upload (loaduje [[CKEditor plugin loader>>BackEnd.CKEditor plugin loader.WebHome]] a samotny kod je v /resources/mujupload.js
14 14  1. standardní render z tohoto udělá IMG obalený A
15 -1. JSX v Lightbox supportu dynamicky přidá data-lightbox atribut pro všechyn A
18 +1. JSX v Lightbox supportu dynamicky přidá data-lightbox atribut pro všechyn A a vytvori fig a figcaption viz výše
16 16  
17 17  
XWiki.JavaScriptExtension[1]
Kód
... ... @@ -9,8 +9,9 @@
9 9   //nastavime lightbox
10 10   $(this).parents("a").attr("data-lightbox","lightbox");
11 11   //pokud ma img alt, pak ho nastavime jako title lightboxu
12 + var img_src = $(this).attr('src');
12 12   var img_alt = $(this).attr('alt');
13 - if (img_alt) {
14 + if (img_alt and !img_src.includes(img_alt)) {
14 14   $(this).parents("a").attr("data-title", img_alt);
15 15   }
16 16   //fig and figcaption handling
... ... @@ -18,7 +18,9 @@
18 18   jQuery(this).wrap($('<figure/>', {
19 19   'class': 'image'
20 20   }));
21 - if (img_alt) {
22 +
23 + //pokud neni alt vyplneny a nebo je alt stejný jako název souboru - pak caption nezobrazuj
24 + if (img_alt and !img_src.includes(img_alt))
22 22   $(this).after($('<figcaption/>').append(img_alt));
23 23   }
24 24   }