Skip to content

borazslo/szentiras.hu

Repository files navigation

Szentírás .hu

A szentiras.hu teljes kódja. Build Status

Felépítés

Framework

A Laravel keretrendszert használjuk.

Könyvtár struktúra

  • app - Maga a webalkalmazás.
  • bootstrap - Framework beizzítás
  • deploy - deployment konfigurációk és scriptek (apache, git hook stb.)
  • old - a régi, össze-vissza programozott szentiras.hu kódja
  • public - a közvetlenül kiszolgált fájlok, az index.php, css, js és hasonlók
  • tmp - tesztadatbázis-példa

Alapvető funkciók

Főoldal:

  • fordítások listája, néhány információval kiegészítve
  • igenaptár adott napi megjelenítése a katolikus.hu/igenaptar-ból kihalászva minden alkalommal
  • mysql-ből hírek (szerkesztő felület nélkül)

Könyvnézegetés

  • Fordítás könyveinek listája
  • Egy-egy könyv fejezeteinek listája bevezetővel
  • Egy-egy fejezet megjelenítése
    • Lépés a következő/előző fejezetre

Idézés

  • Url-be vagy keresőbe beírt szentírás hivatkozás észrevétele, elemzése és megjelenítése. pl. Mk3,4-7.9-12 vagy Mk3-6 vagy Mk 5,3-7,4.7 stb.
  • Adott igehely/rész megjelenítése lábjegyzettel és magyarázattal - PARTLY DONE Egyelőre a lábjegyzet és magyarázat nem támogatott
  • Link a többi fordítás azonos könyvére (sokszor már a rövidítés!)
  • Hibás fordítás/könyvrövidítés estén átvisz a helyes kombinációra

Szövegmegjelenítés - Idézésnél és fejezet nézetnél is

  • Vannak címsorok, alcímsorok és a szöveg
  • A vers száma felső indexben nem mindig a tényleges sorszám (akár betű is lehet)
  • Twitter és facebook megosztás (hozzávaló html tag-ek, hogy szebb legyen a megosztott anyag)
  • Link a többi fordítás azonos könyvére (sokszor már a rövidítés!)
  • Lábjegyztekkel és magyarázatokkal. Ezek nem versekhez, hanem verstartományokhoz tartoznak.(Éppen nem működik, mert nincs az adatbázisban.)

Keresés

  • Url-be vagy keresőbe beírt kifejezés keresése
  • szűrési lehetőség: bármely könyvre ill. Újszöv/Ószöv; fordítás
  • találatok csoportosítása: versenként vagy fejezetenként
  • A találatokat súlyozza és a legsúlyosabbal kezdi (tehát nem előfordulási könyvbeli sorrendben jelennek meg)
  • Amit figyel
    • Sphinx extended search nyelvtan szerint
    • szótőben keres (megkeresi a hunspell a keresőszó szótöveit, a szentírás minden versét szótöves változatban is tároljuk) PARTLY DONE (a keresőszót nem tövezzük)
  • Extrák
    • megnézni, hogy az alternatív fordításokban ugyan erre mennyi a találat - csak a Sphinx indexben nézi, ezért villámgyors
    • tippeket ad hasonló kifejezésekre ill. azonos szótövű szavakra
    • tippeket ad kézzel készülő szinoníma szótár alapján: létra/lajtorja, Nebukodonozor/Nebukadanazzár, stb.
    • ugyan ezen szótár szerint elgépelt nevekre is tippeket ad

API/Fejlesztőknek

  • JSON válaszokat ad megfelelő kérésekre
  • főként a keresésekre válaszol és elvileg mindent tudnia kéne, amit a keresőnek, csak más formátumban válaszol
  • TODO: könyvek automatikus /epub kimenetele ill. abból generált /mobi (havonta egyszer gyárt, onnantól mindig azt hivatkozza)

Egyéb

  • pár statikusabb oldal van (címlap, infó, impresszum, stb.) (nem kell szerkesztő felület)
  • cache: van egy csomó cache-elés, főleg db
  • mysql cache: a kereséseket logolja és cacheli, hogy az alternítvákat jól mutassa és lássam, mi megy az életben DONE
  • rövid urlek (és régi-régi linkek hosszú url-jeit is értelmezi)
  • GoogleAnalytics