A jogosultságok kezelésére szolgáló osztály. Rendkívül egyszerű, strukturált jogok kezelésére alkalmas, amelyek formátuma elso.masodik.harmadik. Néhány fontos szabály, amelyet szem előtt kell tartani a használatához:
elso.masodik és az elso jog is)
CAuthority()
Az éppen aktuálisan érvényes jogosultsággal fog visszatérni. Amennyiben nincs érvényben jogosítás, úgy létrehoz egy üreset, amit azonnal aktuálissá is tesz, ezért utána egyetlen jog sem lesz megadva!
CAuthority(string $auth)
A toString metódus által adott string alapján létrehoz egy új objektumot. Ha új, üres objektumot szeretnénk példányosítani, akkor a new CAuthority(””) hívást használjuk.
bool add(string auth)
Egy új jogot ad hozzá. Akkor ad vissza true értéket, ha a jog már előtte is létezett.
bool add(CAuthority auth)
Hozzáadja a auth paraméterben megadott objektumban tárolt jogokat, amivel lényegében a két jog halmaz unióját képezhetjük.
bool remove(string auth)
Egy jogot távolíthatunk el a jogok közül. Amennyiben a jognak vannak leszármazottai, azok is eltávolításra kerülnek. Akkor az vissza true értéket, ha a jog létezett a törlés előtt.
bool isAuth(string auth)
Megadja, hogy az adott jog szerepel-e a jogok között. Emlékezzünk rá, hogy amennyiben egy joggal rendelkezünk, akkor minden prefix joggal is rendelkezni fogunk.
bool intersect(CAuthority auth)
Csak azokat a jogokat hagyja meg, amelyek az auth objektumban is meg vannak adva, így lényegében a két jog halmaz metszetét képzi.
string toString()
Visszaadja az objektum string reprezentációját, amely alapján az objektumot példányosíthatjuk.
void setSystemAuth()
Ezt az objektumot beállítja az aktuális jogosultság kezelő objektummá.