Projekt

Obecné

Profil

Úkol #9740

uzavřený

GitHub repozitář na šablony, přiřazení pirátské domény a její následné povolení v CSP, aby obsah mohlo číst forum

Přidáno uživatelem Ondřej Kotas před více než 6 roky(ů). Aktualizováno před více než 6 roky(ů).

Stav:
Dokončen
Priorita:
Normální
Přiřazeno:
Kategorie:
-
Cílová verze:
-
Začátek:
06.03.2018
Uzavřít do:
% Hotovo:

100%

Odhadovaná doba:
Smlouva:

Popis

Pro vývoj šablon na fórum jsem původně zamýšlel využít readonly padů. Bohužel readonly pady mají bug s exportem do TXT souboru a i když už jste mi povolili pad.pirati.cz v CSP, tak to stále není ideální řešení.

Martin Rejman psal:
Co tomu tedy udělat GitHub repozitář, a následně ho publikovat např. na doméně forum-vzory.pirati.cz ? Tím zajistíme, že máme povolený jen velice omezený okruh dat, která jsou navíc pod dozorem konkrétní osoby. A může tam být rovnou i seznam a popis toho, k čemu to je a jak se to používá.

PS: Máš pravdu,že povolit GitHUB je ještě více, než povolit PAD. Na druhou stranu, když PAD nemá řízení oprávnění k editaci (a víme, že ho někdo skenuje), tak mi to též nepčijde jako dobré řešení.

Tímto bych rád požádal o:

  • vytvoření repositáře na GitHubu, který bude obsahovat XML předpisy pro šablony na fórum. (Momentálně šablony umí kromě vepsání obsahu do políčka pro text i předvyplnit anketu apod., do budoucna chci přidat i formulář na vyplnění částí šablony (číslo schůze co se pak 3x opakuje, atd.).)
  • nasměrování domény xyz(doplňte co uznáte za vhodné).pirati.cz na tento repositář
  • povolení čtení obsahu z této domény skrz forum.pirati.cz

Aktualizováno uživatelem Martin Rejman před více než 6 roky(ů)

  • Stav změněn z Nový na Čeká se na podatele

Chceme tedy již zahájit kroky k ostrému nasazení ... ? Je k dispozici testovací verze aplikace, abychom mohli udělat code-review ?

Aktualizováno uživatelem Martin Rejman před více než 6 roky(ů)

To vypadá dobře, pokud přesvědčíme ostatní o tom, že je to bezpečné, tak to bude fajn :-)

Bylo by možné ohledně kódu:

  • udělat "master" a "production" větve tak, aby bylo jasné, co je jaký kód ? (teď je např. DEBUG enabled by default).
  • doplnit komentáře do kódu, co a hlavně proč ten který řádek něco dělá. Má to návaznosti na PHPbb a to, jak je udělané, ale to ty teď víš, tak bych to tam "zvěčnil", ať si to potom nemusíme znovu uvědomovat. (napsaný to máš krásně, jen navrhuji, co bych s tím ještě udělal já, aby to bylo udržovatelné i třetí osobou - můžeme se na to případně podívat společně např. přes mumble)
  • jakým způsobem je zajištěno, že šablona např. nenahraje obsah, který se pak spustí ? Je tam nějaká validace v tomto směru (nebo si myslíš, že je neúčinná, a proto tam není) ?
  • je použitá verze select2 ověřená ohledně bezpečnosti ?

A potom ještě k vylepšení fungování:

  • šlo by rozdělit nabídku na dva combo boxy ... Kategorie a Výpis ... to by navazovalo třeba na adresáře GitHubu, a nebo by se to bralo ze souboru. Výhoda by byla v tom, že bychom dokázali oddělit "oficiální" a krajské šablony ... každý určitě bude využívat něco trochu jiného. Tím se rovněž sníží počet položek, ze kterých se vybírá vpravo. Klidně tam může být i kategorie "vše", aby se v tom dalo hledat.

Díky za odpovědi, pokusím se s Ondrou zajistit zařízení repozitáře do konce týdne.

Aktualizováno uživatelem Ondřej Kotas před více než 6 roky(ů)

  • Udělal jsem vedle masteru větev release a upravil návod na instalaci, takže vede na release verzi
  • Doplnil jsem komentáře do kódu
  • Zrušil jsem debug=true a další zapomenuté věci

Rozhodně chci aby to bylo udržovatelné i někým jiným, porjít to po mumble klidně můžeme.

  • bezpečnost šablony aby nenahrála něco nechtěného - to vyřešeno není (NEED HELP) mělo by být hotovo
  • verze select2 ověřená ohledně bezpečnosti - není vyřešeno (nevím co přesně to má splňovat - NEED HELP)

Ad vylepšení fungování - pojďme se o tom pobavit. Mě se moc dva comboboxy nelíbí (proto si hraju se select2, co má vyhledávání), ale chápu že v budoucnu při velkém kvantu šablon to nějak zpřehlednit bude chtít.

Aktualizováno uživatelem Martin Rejman před více než 6 roky(ů)

  • Fronta změněn z Podání na Úkol
  • Stav změněn z Čeká se na podatele na V řešení (diskutuje se)
  • Zobrazit v nabídce nastaven na Ne
  • Organizační struktura nastaven na Ne

Super ... wow, komunikace přes Redmine funguje :-)

Děkuju za úpravy. Ohledně bezpečnosti nahrávaných šablon: dávalo by smysl text, který se vkládá přímo do stránky, protáhnout nějaký escapováním tak, aby nedošlo k interpretování HTML, JS nebo dalších prvků ? (Nejsem si jist, jestli to už nějak ošetřeno je, nebo ne.) Klasické escapování uživatelského vstupu.

Select2 je super prvek, vytváří to další závislost. Pokud to nahrajeme přímo do fóra (je to jen CSS a JS, takže by to mělo být po kontrole OK), ušetříme instalaci těch rozšíření u uživatelských prohlížečů (což jim vytváří celkem velké riziko - přece jen to umí manipulovat libovolné stránky, a ani si toho nemusíš všimnout).

Podle kódu je Select2 "nepovinná", tj. zlepší komfort, ale dá se to použít i bez toho. Zkusím zjistit, jakou verzi bychom mohli prohlásit za bezpečnou. Mohli bychom ji pak přidat opět přímo do PHPbb.

Jak jsem psal, doména a GitHub budou až zítra.

Aktualizováno uživatelem Ondřej Kotas před více než 6 roky(ů)

Escapování uživatelského vstupu tam je.

Pokud by se ten select2 podařil, bylo by to velmi super!

Na doménu a GitHub počkám a poté kód upravím, díky :)

Aktualizováno uživatelem Ondřej Kotas před více než 6 roky(ů)

Ola,

chci se zeptat, jak to vypadá s repositářem a doménou?

díky za odpověď :)

Aktualizováno uživatelem Martin Rejman před více než 6 roky(ů)

  • Stav změněn z V řešení (diskutuje se) na Čeká se na řešitele
  • Přiřazeno nastaven na Martin Rejman

Ahoj, teď už to visí u mně ... doména a git bude, následně bychom to výhledově chtěli integrovat přímo do fóra, ať si uživatelé nemusejí instalovat ty GreaseMonkey a podobné věci (přece jen pro nezkušeného uživatele to může být celkem zákeřná věc).

Aktualizováno uživatelem Martin Rejman před více než 6 roky(ů)

Vyrobil jsem Git repozitář https://github.com/pirati-web/sablony.pirati.cz, doménu bychom pojmenovali podle toho.

Asi bych vyrobil podadresář "forum" a tam dal vše, co bude chtít fórum. Možná časem šablony využije i jiná aplikace, tak ať se to pak nepobije.

Prosím o vytvoření pull-requestu s aktuálním obsahem :-)

Aktualizováno uživatelem Ondřej Kotas před více než 6 roky(ů)

Dal jsem do toho repozitáře pull request s aktuálně 4 šablonami, co mám pro JmK: https://github.com/pirati-web/sablony.pirati.cz/pull/1
Další šablony budou vznikat postupně (chci tím někoho zaúkolovat).

Rozšíření (JS a CSS) jsou momentálně ve stavu, kdy mi vyhovuje to chování, ale stále čtou z padu (to je potřeba ještě upravit).

Aktualizováno uživatelem Martin Rejman před více než 6 roky(ů)

  • Přiřazeno změněn z Martin Rejman na Stanislav Štipl

Stando, můžeme prosím vytvořit potřebnou doménu sablony.pirati.cz a nastavit gh-pages ?

Aktualizováno uživatelem Martin Rejman před více než 6 roky(ů)

  • % Hotovo změněn z 0 na 80

Vytvořena doména.

Aktualizováno uživatelem Martin Rejman před více než 6 roky(ů)

  • Přiřazeno změněn z Stanislav Štipl na Martin Rejman

Aktualizováno uživatelem Martin Rejman před více než 6 roky(ů)

Zbývá webhook a merge do GITu.

Aktualizováno uživatelem Ondřej Kotas před více než 6 roky(ů)

Jak to vypadá s tím webhookem a gitem?

Aktualizováno uživatelem Martin Rejman před více než 6 roky(ů)

  • Stav změněn z Čeká se na řešitele na Dokončen

Nastavení je kompletní, funguje např. https://sablony.pirati.cz/forum/rozprava_-_volba_predsednictva.xml .

Není tam nastaven listing adresářů, takže případně bude potřeba seznam dostupných šablon.

Pull-request jsem schválil, takže by to již mělo být všechno.

Aktualizováno uživatelem Martin Rejman před více než 6 roky(ů)

  • % Hotovo změněn z 80 na 100

Také k dispozici: Atom PDF