szentiras.hu
szentiras.hu copied to clipboard
JSON formátumban ne legyen HTML kódolás
A KNB fordításban a JSON formátumú válaszban is van HTML formázás a sima szöveg helyett (példa, ebben csak <br/>
van, de máshol akad formázás (<i>
, <b>
) is). Emiatt a bővítményekben ezt csak HTML-ként lehet beszúrni az oldalba (innerHTML), de pl. a Firefox bővítményeknél ez automatikusan elutasítást jelent, a biztonsági kockázatok miatt egyébként jogosan. Ehelyett a különféle verstípusokat (szöveg, magyarázat, hivatkozás) is jelölni kellene az eredményben, úgyhogy ez összefügg a #14-gyel.
Miert ne legyen? Alapvetoen a kliens dolga szerintem, hogy kezelje, kiszedje. Vagy fol kell talalnunk valami sajat formatumot, hogy tudjuk jelolni a bekezdeseket es a sorokat. Pl. a Bekes-Dalos tele van versformazassal, meg bekezdesekkel.
@molnarm mondta, hogy a firefox böngésző-kiegészítő nem akart átmenni az engedélyeztetésen, mert hogy html-t is tartalmazott a lekérésből visszakapott válasz és az biztonsági kockázat talán.
@borazslo ezt már megoldottam közben.
Szerintem éppen azért nem kellene keverni a formátumokat, mert "alapvetoen a kliens dolga szerintem, hogy kezelje" a megjelenítést. A JSON-ban az adat, vagyis szöveg legyen, amit utána a kliens úgy formáz, ahogy akar (Tényleg, az API-ban most mi történik az alcímekkel? (#3) Ha benne vannak, a bekezdések kérdése meg van oldva.). Ha formázott kimenetet szeretnénk, arra meg lehetne egy kimondottan HTML formátum, egyszerűen felhasználva a meglévő template-et. Persze ha már eleve HTML tagek vannak a szövegben akkor mindegy, maradjon így...
A szövegben elvileg igen kevés számú és fajtájú formázás van. Akadi <i>
és olykor <b>
, valamint sokszor <br/>
. Ez utóbbi szerepel elvileg a bekezdések végén. Valamint pl. a zsoltároknál minden szükséges sortörésnél. (Aktuális pillanatban a zsoltároknál a versek közepébe van csak berakva a majdnem mindig versvégén is lévő nincs, de az majd bekerül a forrásszövegbe.)
Lehetne egy json parameter, amiben html-ben vagy markdown-ban vagy akarmiben kerjuk a szovegreszeket. (Amugy kesobb lehet, hogy tobb formazast fogunk tamogatni, mondjuk ha a Jeromos Biblia-kommentar is felkerul... :))
A <p>-t meg a <br>-t azert jo lenne megkulonboztetni a forrasszovegben is, mert ha szeretnenk valamikor szepen formazni, akkor nem mindegy. A konkret problemara a kovetkezo megoldasokat latom:
- Alapbol minden taget kiszedunk.
- Kulon parameterrel az eredeti "raw" tartalom visszaadva
- Sajat tageket rakunk be, akar sima soremeles br helyett, dupla soremeles p eseten.
- Specialis strukturat adunk vissza, pl. minden verse bekezdesekre es sorokra van osztva:
{ 'szoveg': [ 'sor1', 'sor2', 'P', 'sor...' ] }
Nekem az 1 a 3-mal egyutt tetszik a legjobban, szerintem ezt a legkonnyebb egy kulso kliensnek feldolgozni.
A speciális tagek jók lehetnek (a soremelés talán annyira nem szerencsés, ha Excelben szerkesztik a szövegeket). Lehetne mondjuk valami BBCode-szerű, vagy formailag akár HTML is, de akkor egyrészt legyen pontosan meghatározva, hogy mi megengedett és hogyan (pl. <br>
vs <br/>
vs <br />
), másrészt ez talán inkább értelmi (szemantikai) megkülönböztetés, mint közvetlen formázás, amit akár a verstípusok is befolyásolhatnak: pl. egy szövegbeli idézetet formázhatunk dőlten, lehet külön sorban kiemelve, lábjegyzetben vagy kereszthivatkozásban megint máshogy - bár az értelmi szerep ugyanaz, a megjelenítést nem biztos, hogy szövegszinten meg kellene szabni.
A szövegforrásban az exceles szerkesztők által használt tagek függetlenek lehetnek az általunk használtaktól, ill. mindenképpen célszerű valami átfordítást, validációt stb. csinálni A lényeg tehát valóban az, hogy a szerkesztők számára definiáljunk egy készletet, és abból mi azt csinálunk, ami az adott szituban kell. Ebben az esetben megoldható lesz pl. az idézőjelek körüli káosz is. Azt hiszem ez az a pont, ahol a szerkesztőket is be kell venni a githubba és itt megbeszélni, hogy mire van szükségük, mit tudnak könnyen használni :-) 2014.04.16. 13:04 ezt írta ("Márton Molnár" [email protected]):
A speciális tagek jók lehetnek (a soremelés talán annyira nem szerencsés, ha Excelben szerkesztik a szövegeket). Lehetne mondjuk valami BBCodehttp://en.wikipedia.org/wiki/BBCode-szerű, vagy formailag akár HTML is, de akkor egyrészt legyen pontosan meghatározva, hogy mi megengedett és hogyan (pl. vs vs ), másrészt ez talán inkább értelmi (szemantikai) megkülönböztetés, mint közvetlen formázás, amit akár a verstípusok is befolyásolhatnak: pl. egy szövegbeli idézetet formázhatunk dőlten, lehet külön sorban kiemelve, lábjegyzetben vagy kereszthivatkozásban megint máshogy - bár az értelmi szerep ugyanaz, a megjelenítést nem biztos, hogy szövegszinten meg kellene szabni.
— Reply to this email directly or view it on GitHubhttps://github.com/borazslo/szentiras.hu/issues/18#issuecomment-40586792 .
Nekem ez a hiba ma jelent meg. Esetleg lehetne azt is szerintem, hogy json-be \n
-es sortörés megy.