Změny dokumentu Lightbox support
Naposledy upravil David Brazda 08.04.2021 15:24
Popis verze:
Imported from XAR
Přehled
-
Na stránce změněno: (1 změněno, 0 přidáno, 0 odstraněno)
-
Objects (1 změněno, 1 přidáno, 0 odstraněno)
Rozpis
- Na stránce změněno:
-
- Obsah
-
... ... @@ -1,17 +1,21 @@ 1 -T ento JSX1 +Tato stránka obsahuje JSX, které 2 2 3 -1) a ktivujena 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 lightboxu3 +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ňjezdedodělanáfunkcionalita,kteráu všechA elementů obklopených span xwikiattachement a obsahující child element IMG- nastaví u Adynamicky data-lightbox atribut.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) zachytaná dom-reloaded akce a na jejím základě provedeno totéž - nutné aby fungovalo po uložení editace. 7 +* **vytvoří caption** - tzn. obklopí img element do figure a figureCaption (do kterého zkopíruje alt) - pokud není alt stejné jako název souboru 8 +* **aktivuje lightbox** - tzn. nastaví u A dynamicky data-lightbox atribut 9 +* zároveň zkopíruje alt u image do lightbox-title do A elementu - pokud není alt stejné jako název souboru 8 8 11 +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 14 +Jinak je celý end to end proces následující 15 + 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 19 +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
-
... ... @@ -1,6 +1,31 @@ 1 1 require(['jquery'], function($) { 2 2 //in case of important dom change - like CKEditor save, the lightbox must be re-added again 3 3 $(document).on('xwiki:dom:updated', function() { 4 - $(".wikiattachmentlink img").parent("a").attr("data-lightbox","lightbox"); 5 - }) 6 -}); 4 + //puvodni kod 5 + //$(".wikiattachmentlink img").parents("a").attr("data-lightbox","lightbox"); 6 + 7 + //novy kod - pro attachmenty obrazky nastavit lightbox + add img alt jako atribut lightboxu 8 + $('.wikiattachmentlink img').each(function() { 9 + //nastavime lightbox 10 + $(this).parents("a").attr("data-lightbox","lightbox"); 11 + //pokud ma img alt, pak ho nastavime jako title lightboxu 12 + var img_src = $(this).attr('src'); 13 + var img_alt = $(this).attr('alt'); 14 + if (img_alt && !(img_src.includes(img_alt))) { 15 + $(this).parents("a").attr("data-title", img_alt); 16 + } 17 + //fig and figcaption handling 18 + if (!jQuery(this).parent().is('figure')) { 19 + jQuery(this).wrap($('<figure/>', { 20 + 'class': 'image' 21 + })); 22 + 23 + //pokud neni alt vyplneny a nebo je alt stejný jako název souboru - pak caption nezobrazuj 24 + if (img_alt && !(img_src.includes(img_alt))) { 25 + $(this).after($('<figcaption/>').append(img_alt)); 26 + } 27 + } 28 + }); //each function 29 + }); //dom updated 30 +}); //require 31 + - Jméno
-
... ... @@ -1,1 +1,1 @@ 1 - addlightbox again after save1 +update lightbox when loaded and after save
- XWiki.XWikiRights[4]
-
- Povolit/Zakázat
-
... ... @@ -1,0 +1,1 @@ 1 +Povolené - Skupiny
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Reader, - Úrovně
-
... ... @@ -1,0 +1,1 @@ 1 +view