Development Wiki

Difference between revisions of "Tutorial.Permissions"

From phpBB Development Wiki

m (Reverted edits by ZgwCuu (Talk); changed back to last version by Naderman)
Line 1: Line 1:
== Checking permissions ==
[ fotosde mujeres desnudas] [ www grand hotel excelsior it] [ pigiami] [ carte di credito con conti correnti] [ progettazione parchi] [ sou lseek] [ palm smartphone] [ delitzsch, friedrich] [ drai the blood] [ carlos gardel] [ brigitta e diego] [ foto foto bugil] [ batteria blm1] [ the servant the album] [ finanziamento lignano sabbiadoro] [ ti sento antonella ruggiero] [ sony sa-] [ un ragazzo tutto americano] [ scaffalature foggia] [ fisioterapisti occupazionali] [ tzar] [ castle attak 1] [ sarah connors] [ modelos de ropa interior] [ rimes] [ fico assim sem voc] [ la seconda moglie] [ netgear antenna ant2409] [ garland jeffreys. hail hail rocknroll live] [ tv lcd lettore dvd] [ cd dj 100s] [ viper m1] [ geoogle com] [ djerba alberghi e hotel] [ eau de monteil] [ ati 256 ram] [ a team. stagione 2] [ rx v550] [ amd sempron box] [ mario cipriani] [ lg - tv plasma 42 rz-42px11] [ lassativo] [ traduci] [ mp3 usb2] [ ultima di raf] [ uomini tornati dall aldila] [ v710] [ hp officejet 7210 all-in-one] [ russo chiara] [ monza hotel] [ jeep lombardia] [ avi ac3 dvd] [ hd ata100] [ ardes tk45] [ ventola 12v] [ batteria jabra bluetooth] [ porno video gay italiani] [ adobe photoshop 3] [ monitor eizo lcd m1700] [ douple] [ scelti dalle tenebre] [ sony cp555] [ necromancer] [ bari milano] [ letti] [ scopa siemens] [ mpa] [ telephone] [ donna nude it] [ xutos pontapes] [ dreamcast scart] [ pajero 2500 td] [ le laureande] [ atlantis modem adsl] [ rischio totale] [ epson rd-1] [ cartuccia samsung clp 510] [ disturbi della motilita gastrica] [ cap perugia] [ azienda trasporto] [ senza giacca] [ memoria usb da 5 gb] [ usl 7] [ partecipazioni per matrimoni] [ obiettivi canon eos macro] [ sankt gallen] [ zorba] [ compravendita immobiliare] [ torna il mago di oz] [ frullatore centrifuga] [ geel] [ www blink 182 it] [ gonario] [ chevrolet captiva] [ catherine rivet] [ gary jules] [ scaricare programma dvd] [ gogle art] [ nuova golf auto nuove] [ detroit rock city kiss] [ fanfulla, il-] [ nieuwpoort] [ dr dre testo canzone] [ hotel monterosso] [ o zobne] [ davidoff good life eau de toilette] [ fessa aperta gratis] [ tic tac] [ here without yoy] [ estee lauder bronze powder] [ midi file juanes] [ kati] [ gli uomini dal passo pesante] [ ramazzotti nove] [ turner atlanta 1200] [ argo 235h] [ majestic home teatre] [ torremolinos] [ sinch] [ multifunzione hp laser] [ gioco da corsa] [ zakon jacega] [ david benoit] [ bird feeders] [ mares abyss 2000] [ volo mombasa] [ asciuga] [ el problema] [ provocazione fatale] [ toshiba satellite a60 - 122] [ capitale dell ucraina] [ www hotel pollux croazia] [ geraldine page] [ i sette pilastri] [ www miss italia 2004 it] [ hit parade luglio 2004] [ www trenitalia t] [ roma havana biglietti aerei] [ zani per la scuola] [ hotel in lazise] [ regali festa mamma] [ balenciaga] [ lou dalfin] [ bellucci irreversibile] [ lockyer, sir joseph norman] [ moda mare] [ i need a hero] [ scale in alessandria] [ hercules fortissimo] [ venus frankie avalon] [ annunci massaggiatori milano] [ last get started] [ correttore chanel] [ hino euro 2004 mp3] [ philips al plasma 42 1024x1024] [ climatizzatori vendita] [ http www angolotesti it] [ giussago] [ samsung sm 730bf] [ torrie wi] [ superstar] [ indirizzo postale di alessandra pirelli] [ sandungeras] [ star musicali croazia] [ forno incasso ariston color ghiaccio] [ toner clp 500] [ catania - bruxelles] [ engher] [ sako polumenta] [ magix foto su cd dvd 4] [ moglie vogliosa] [ lo stano percorso 883] [ boca] [ libero it] [ agriturismo in toscana siena] [ dermody, thomas] [ video assassinio baldoni] [ cappa a parete serie eco] [ deportivo] [ oakley - fives] [ on to victory] [ goma, paul] [ report magic] [ foto di locali per scambisti] [ perras] [ www jamelia it] [ sfondi pc] [ luomo meraviglia] [ testo e spartito di happy day] [ toccata e fuga in mi minore] [ presentadora merida] [ film in dvd the mark] [ silvestre, gregorio] [ gene tierney] [ giochi con carte] [ mp3 best in me blue] [ palmari hp ipaq h2210] [ televisori lcd nuovi] [ prove scritte esame di stato 98 99] [ arcanoide] == Checking permissions ==
=== Global perission ===
=== Global perission ===

Revision as of 00:37, 24 August 2007

fotosde mujeres desnudas www grand hotel excelsior it pigiami carte di credito con conti correnti progettazione parchi sou lseek palm smartphone delitzsch, friedrich drai the blood carlos gardel brigitta e diego foto foto bugil batteria blm1 the servant the album finanziamento lignano sabbiadoro ti sento antonella ruggiero sony sa- un ragazzo tutto americano scaffalature foggia fisioterapisti occupazionali tzar castle attak 1 sarah connors modelos de ropa interior rimes fico assim sem voc la seconda moglie netgear antenna ant2409 garland jeffreys. hail hail rocknroll live tv lcd lettore dvd cd dj 100s viper m1 geoogle com djerba alberghi e hotel eau de monteil ati 256 ram a team. stagione 2 rx v550 amd sempron box mario cipriani lg - tv plasma 42 rz-42px11 lassativo traduci mp3 usb2 ultima di raf uomini tornati dall aldila v710 hp officejet 7210 all-in-one russo chiara monza hotel jeep lombardia avi ac3 dvd hd ata100 ardes tk45 ventola 12v batteria jabra bluetooth porno video gay italiani adobe photoshop 3 monitor eizo lcd m1700 douple scelti dalle tenebre sony cp555 necromancer bari milano letti scopa siemens mpa telephone donna nude it xutos pontapes dreamcast scart pajero 2500 td le laureande atlantis modem adsl rischio totale epson rd-1 cartuccia samsung clp 510 disturbi della motilita gastrica cap perugia azienda trasporto senza giacca memoria usb da 5 gb usl 7 partecipazioni per matrimoni obiettivi canon eos macro sankt gallen zorba compravendita immobiliare torna il mago di oz frullatore centrifuga geel www blink 182 it gonario chevrolet captiva catherine rivet gary jules scaricare programma dvd gogle art nuova golf auto nuove detroit rock city kiss fanfulla, il- nieuwpoort dr dre testo canzone hotel monterosso o zobne davidoff good life eau de toilette fessa aperta gratis tic tac here without yoy estee lauder bronze powder midi file juanes kati gli uomini dal passo pesante ramazzotti nove turner atlanta 1200 argo 235h majestic home teatre torremolinos sinch multifunzione hp laser gioco da corsa zakon jacega david benoit bird feeders mares abyss 2000 volo mombasa asciuga el problema provocazione fatale toshiba satellite a60 - 122 capitale dell ucraina www hotel pollux croazia geraldine page i sette pilastri www miss italia 2004 it hit parade luglio 2004 www trenitalia t roma havana biglietti aerei zani per la scuola hotel in lazise regali festa mamma balenciaga lou dalfin bellucci irreversibile lockyer, sir joseph norman moda mare i need a hero scale in alessandria hercules fortissimo venus frankie avalon annunci massaggiatori milano last get started correttore chanel hino euro 2004 mp3 philips al plasma 42 1024x1024 climatizzatori vendita http www angolotesti it giussago samsung sm 730bf torrie wi superstar indirizzo postale di alessandra pirelli sandungeras star musicali croazia forno incasso ariston color ghiaccio toner clp 500 catania - bruxelles engher sako polumenta magix foto su cd dvd 4 moglie vogliosa lo stano percorso 883 boca libero it agriturismo in toscana siena dermody, thomas video assassinio baldoni cappa a parete serie eco deportivo oakley - fives on to victory goma, paul report magic foto di locali per scambisti perras www jamelia it sfondi pc luomo meraviglia testo e spartito di happy day toccata e fuga in mi minore presentadora merida film in dvd the mark silvestre, gregorio gene tierney giochi con carte mp3 best in me blue palmari hp ipaq h2210 televisori lcd nuovi prove scritte esame di stato 98 99 arcanoide == Checking permissions ==

Global perission

To check if user can for example view other users profiles, use this code:

if (!$auth->acl_get('u_viewprofile'))

If he doesn't have permission to do it, he will see only error message and script will stop working after trigger_error.

Local permission

If you want to check a local permission, for example to read posts on forum with ID 5, use this code:

if (!$auth->acl_get('f_read'5))

Full list of existing permissions is in your database, in phpbb_acl_options table.

Adding a permission

Adding new permissions to Olympus is simple. NOTE: The permission can not contain a capital letter, this causes trouble later on if you try and create a module that needs this permission Example how to add a permission to control who can access and manage foo:

Using the API (recommended)

  • Run this code in the installer:
// Setup $auth_admin class so we can add permission options
include($phpbb_root_path 'includes/acp/auth.' $phpEx);
$auth_admin = new auth_admin();

// Add permissions
'local'      => array(),
'global'   => array('u_view_foo''u_manage_foo')

Using SQL

You can also directly insert new rows into the phpbb_acl_options table:

INSERT INTO phpbb_acl_options (auth_option, is_global, is_local, founder_only) VALUES ('u_view_foo', 1, 0, 0);
INSERT INTO phpbb_acl_options (auth_option, is_global, is_local, founder_only) VALUES ('u_manage_foo', 1, 0, 0);

Please note that you need to clear the cache by either deleting cache/data_global.php or executing $cache->destroy('acl_options'); after this.

Language file (Adding tabs)

In both cases it is highly recommended to add language variables for the permissions just added. To do this, simply create a file named permissions_foo.php in language/xx/mods. It will automatically be included, don't worry about how.

if (empty($lang) || !is_array($lang))
$lang = array();

// All language files should use UTF-8 as their encoding and the files must not contain a BOM.
// Placeholders can now contain order information, e.g. instead of
// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows
// translators to re-order the output of data while ensuring it remains correct
// You do not need this where single placeholders are used, e.g. 'Message %d' is fine
// equally where a string contains only two placeholders which are used to wrap text
// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine

// Adding new category
$lang['permission_cat']['foo'] = 'Foo management';

// Adding the permissions
$lang array_merge($lang, array(
'acl_u_view_foo'    => array('lang' => 'Can view foo''cat' => 'foo'),
'acl_u_manage_foo'    => array('lang' => 'Can manage foo''cat' => 'foo'),

In this code they added the category "foo" (will be displayed as a new tab). All language keys where the key cat is equal to "foo" will be displayed in this tab. So you have created an new tab if you use that code.

The permission should be ready to assign to users/groups in the acp now. To check whether the logged in user has the nescessary permission to view foo, use this code:

if (!$auth->acl_get('u_view_foo'))

Panels (in the ACP)

To get the permission to show up under the right panel you need to use correct naming.

a_foo_bar Administrator permissions panel
Moderator permissions panel
User permissions panel
Forum permissions panel

If you use the correct naming and give the permission a category in the language file as described above the permission will show in the selected panel.

Permission types