Nejprve síla práv
V "běžném počítačovém" (zvláště Unixovém) světě se setkáváme s třemi právy R - čtení, W - zápis a X - spuštění. PostNuke může pro každé právo (rozuměj řádek v tabulce) nastavit tuto sílu (od nejmenší po největší):- None = Nic : žádný přístup neboli nulové právo
- Overview = Prohlížet : může nahlédnout na obsah nebo část obsahu (většinou úvodník nebo upoutávku)
- Read = Číst : -objekt je kompletně k přečtení
- Comment = Komentář : je možné k obsahu přidat komentář
- Moderate = Moderovat : obsah může být příslušným uživatelem moderován
- Edit = Úprava : obsah objektu může být upravován a měněn
- Add = Přidat : je možné přidat nový objekt s novým obsahem
- Delete = Smazat : uživatel může mazat objekty
- Admin = Administrátor : uživatel má plná práva a tudíž může i vstoupit do adminstrace a nakonfigurovat rozhraní pro správu objektů
Zároveň je důležité upozornit na to, že většina bloků a modulů využívá pouze část práv, pro některé stačí třeba jen tři (Nic, číst, Administrátor).
Komponeta a instance
Abychom mohli odlišit, jaké části systému (zjednušeně řečeno modulu či bloku) se příslušné právo týká, využíváme k tomu tzv. komponenty. Zápis komponenty je jednoznačný a musí být do puntíku přesně napsán (ještě lépe - opsán). Takže příklady z prvního dílu v podobě Články nebo Fotogalerie je dozajista nepoužitelný.Instance určuje skupinu objektů z dané komponenty, pro kterou chceme dané právo použít. Zde již musíme napsat zápis, který definuje danou skupinu objektů, například u článků název tématu, u fotogalerie název albumu apod.
Kde najdu konkrétní zápisy komponent a instancí?
V prvé řadě musíme odlišit, zda chceme nastavovat právo pro modul nebo pro blok.U modulu doporučuji, abyste si otevřeli soubor /modules/nazevmodulu/pnversion.php (případně ještě starší verzi Version.php). V něm najdete definici proměnné $modversion['securityschema'], která obsahuje asociativní pole (oddělená znakem "=>"). První položka obsahuje komponentu (to je nutné přesně opisovat), druhá instanci (zde je nutné napsat konkrétnější výběr skupiny objektů).
Příklad - pro články se používá modul News. Pro něj se využívá soubor /modules/nazevmodulu/Version.php. Uvnitř najdete dva prvky pole $modversion['securityschema']:
- 'Stories::Story' => 'Author ID:Category name:Story ID'
Komponenta 'Stories::Story' určuje, že se budou omezovat články dle jeho vlastností. Za instanci se pak musí dosadit konkrétní zápis. Například:
- 2:: říká, že příslušné právo se omezí na uživatele s ID 2.
- :Učitelé: omezuje práva pouze na články, které patří do kategorie Učitelé. (Poznámka: využíváme na webu školy ZŠ Hustopeče nad Bečvou)
- ::145 nastavuje práva pouze pro článek s ID 145
- 'Stories::Category' => 'Category name::Category ID'
Tato komponenta určuje oprávnění k vytváření Kategorií článků (tuto možnost najdete při schvalování článků). Pro naše seznamování však není nutné detailněji vysvětlovat.
- 'Topics::Topic' => 'Topic name::Topic ID'
Komponenta 'Topics::Topic' určuje, že se bude omezovat na základě příslušnosti k tématu. Za instanci se dosazují konkrétní zápisy. Například:
- Pro vybrané:: říká, že příslušné právo se omezí na objekty, které náleží tématu Pro vybrané.
- ::5 nastavuje práva pouze pro objekty v tématu s ID 5
Pro bloky jen malá poznámka - u nich se v drtivé většině využívají pouze práva Nic, Čtení a Administrátor. Ostatní většinou nemají smysl.
Příklad - pro dynamické menu se využívá blok Dynamenu a tudíž soubor /includes/blocks/dynamenu.php:
- 'Dynamenublock::', 'Block title:(Link 1|Link 2):'
Komponenta 'Dynamenublock::' určuje, že se bude omezovat zobrazení články dle jeho vlastností. Instance pak odlišuje, o který blok se jedná a případně jaké položky v menu budou omezeny. Například:
- Hlavní nabídka:: omezí zobrazování pouze na dynamický blok s názvem Hlavní nabídka.
- Hlavní nabídka:(Pro registrované|Administrace): rozšiřuje předchozí případ o dvě položky v menu, konkrétně položku Pro registrované a položku Administrace. (Poznámka: Využíváme při zobrazování menu v záhlaví podle toho, zda je uživatel přihlášen nebo se jedná o neregistrovaného návštěvníka).
Složité? Možná vám pomůže jednoduchá editace...
Jelikož jsme si byli vědomi toho, že nastavování práv ve standardním rozhraní (Administrace - Práva - Standardní editace) může být oříškem, pokusili jsme se pro začínající uživatele vytvořit jednodušší prostředí. To jsme poměrně obsáhle ve zvláštním dokumentu Permissions 1.4 - Správa práv, kde najdete i mail na autora těchto úprav, takže se na něj můžete případně obracet s prosbou o radu či pomoc.Poznámka: Zkrácená verze příručky o jednoduché editaci práv je navíc součástí poslední verze příručky, konkrétně na stránkách 59-66.
Žádné komentáře:
Okomentovat