Phpbb3 - auth api 1

iniţializarea

Pentru a utiliza metodele din clasa auth. trebuie mai întâi să determinați metoda. Este mai bine să faceți acest lucru la începutul scriptului dvs. în modul următor:

Imediat după crearea clasei, puteți folosi orice metodă pe care o conține. Rețineți că dacă doriți să utilizați auth_admin. atunci trebuie să elaborați definiția metodei separat, dar toate în același mod.

Următoarele sunt metodele pe care le puteți utiliza.

Metoda acl este o inițializare de rutină pentru toate funcțiile acl. Dacă doriți să apelați orice metodă acl, trebuie să o apelați mai întâi. Această metodă are numai unul, dar parametrul necesar este matricea asociată de informații despre utilizatorul conținută în baza de date. Această matrice trebuie să conțină cel puțin următoarele informații: user_id, user_permissions și type_type. Metoda trebuie utilizată după cum urmează:

În cazul în care userdata este o matrice care conține datele de mai sus.

2.ii. acl_get

Aceasta este metoda principală pentru a determina dacă utilizatorul poate efectua această acțiune la nivel global sau pentru un singur forum. Această metodă este utilizată după cum urmează:

Unde opțiunea este un șir reprezentând lista acțiunilor necesare, de exemplu "f_list", "m_edit", "a_adduser" etc. Adăugarea. înainte de acțiune (de exemplu, '! f_list') rezultatul returnat va fi inversat pentru această acțiune. Un parametru suplimentar al acestei metode de forum este un număr întreg care exprimă forum_id.

Metoda returnează un număr întreg pozitiv când utilizatorul are permisiunea unei acțiuni și zero când nu este permisă. Sau invers, dacă a fost adăugat un semn de exclamare înainte de acțiune.

Dacă definiți posibilitatea unei acțiuni pentru un forum, dar va exista și o definiție globală a posibilității unei acțiuni, atunci această metodă returnează un număr întreg pozitiv în cazul în care există posibilitatea unei acțiuni, fie pentru forum, fie la nivel global. De exemplu, acțiunea m_approve poate fi setată pentru un singur forum sau global. Dacă utilizatorul are o opțiune globală de acțiune m_approve, el va primi în mod automat opțiunea acestei acțiuni în fiecare forum.

Există parametri sau steaguri speciale. care sunt utilizate ca prefixe pentru alți parametri, de exemplu "f_" sau "m_". Aceste steaguri vă permit să combinați mai mulți parametri cu un prefix comun și, ca rezultat, să întoarceți un întreg pozitiv dacă cel puțin unul (sau mai mulți) dintre acești parametri returnează un întreg pozitiv. Setările locale vor avea ca rezultat faptul că pavilionul va fi instalat numai local (deci este necesar să returnați ID-ul forumului). Dacă utilizatorul are una (sau mai multe) opțiuni globale de acțiune și toate opțiunile de acțiune sunt combinate cu un prefix, metoda acl_get returnează un întreg pozitiv indiferent de forumul specificat.

2.III. acl_gets

Această metodă este foarte asemănătoare din punct de vedere funcțional cu acl_get prin faptul că returnează informații despre posibila execuție a acțiunii de către utilizator. Diferența este în capacitatea de a testa câțiva parametri diferiți într-o singură etapă. Acest lucru poate fi util pentru a verifica dacă utilizatorul este un moderator sau un administrator pentru un apel. În loc să trebuiască să verificați și să verificați dublu folosind acl_get.

Metoda trebuie utilizată în felul următor:

Ca și în cazul acl_get, opțiunea utilizează un șir care reprezintă lista drepturilor de acces necesare validării. forum - din nou, un număr întreg care exprimă forum_id.

Metoda returnează un număr întreg pozitiv dacă acl_get pentru una dintre opțiuni evaluează un număr întreg pozitiv (combinați permisiunile cu OR).

2.iv. acl_getf

Această metodă este utilizată pentru a determina în ce forumuri este permis sau interzis utilizatorului să efectueze orice acțiune. Această metodă este utilizată după cum urmează:

La fel ca în metoda acl_get, o opțiune este folosită ca o opțiune pentru a reprezenta lista permisiunilor necesare pentru validare (este posibil să se folosească., Pentru negare). Al doilea parametru este logic. Cu toate acestea, este zero sau un număr întreg pozitiv. Dacă este setat la adevărat numai acele forumuri cu un întreg pozitiv ca rezultat vor fi returnate.

Metoda returnează o matrice asociativă cu următoarea formă:

Unde opțiunea este opțiunea transmisă metodei și întregul este fie zero, fie un întreg pozitiv, iar același acl_get (opțiune, forum_id) se va întoarce.

2.v. acl_getf_global

Această metodă este utilizată pentru a determina dacă un utilizator are capacitatea de a acționa cel puțin într-un forum sau la nivel global. Această metodă este similară cu acl_getf de verificare (opțiune, true) returnează una sau mai multe valori ale forumului, dar acționează mai rapid. Ar trebui să fie folosit în felul următor:

Ca și în metoda precedentă, opțiunea este un șir care specifică drepturile care trebuie verificate.

Metoda returnează zero sau un număr întreg pozitiv.

2.vi. acl_cache

3. Funcțiile utilizate pentru administratori

Sunt disponibile mai multe metode suplimentare legate de auth. Acestea gestionează mai multe funcții de bază, cum ar fi adăugarea de permisiuni de utilizator și de grup, opțiuni noi și ștergerea memoriei cache a utilizatorului. Aceste metode sunt cuprinse într-o clasă separată, auth_admin. Ele pot fi găsite în fișierul include / acp / auth.php.

Pentru a folosi orice metodă pe care această clasă o conține, trebuie mai întâi să fie instanțiată separat de auth. Acest lucru se realizează în același mod ca și auth:

Această metodă vă oferă acces la această metodă specială și la metodele de mai sus auth.