Preparando un sito che fosse ad uso scolastico, mi sono imbattuto nel problema di dover fare in modo che il bambino potesse inviare un proprio articolo ma che non fosse in grado di modificare gli articoli degli altri. Joomla! 1.5 non offre questa possibilità se non attraverso applicazioni esterne.

Per ovviare a questo inconveniete ho scovato in un forum questo veloce metodo..
Ho escluso, ai bimbi registrati, il livello “author” e “editor” in quanto l’invio dell’articolo aveva bisogno di essere visionato da un amministratore prima di essere pubblicato… (un lavoraccio che preferisco evitare!). Son quindi passato a “publisher”. Questo livello permette di poter inviare articoli e modificarli… si, modificarli proprio tutti e non solo il proprio, con il rischio quindi che, come accennato prima, un bambino potesse modificare l’articolo scritto da una altro.

Quindi, non resta che fare in modo che il “publisher” veda l’iconcina di “modifica articolo” solo per il proprio articolo !! Ecco come fare:

Aprire il proprio FTP o “extplorer” se installato in joomla e posizionarsi sul file “authorization.php” che si trova in:

libraries>joomla>user

Una volta aperto con il proprio editor preferito il file in questione si deve cercare questa riga (riga 197 in joomla!1.5.15):

 

$this->addACL( 'com_content', 'edit', 'users', 'publisher', 'content', 'all' );

e la si modifica in:

$this->addACL( 'com_content', 'edit', 'users', 'publisher', 'content', 'own' );

In sintesi è stato cambiato da “all” a “own”.
Ecco quindi che l’utente “Pippo” potrà inviare articoli e avrà modo di modificare solo i suoi personali.

N.B.: Dobbiamo stare attenti infine di portare a livelli di amministrazione eventuali componenti/moduli installati nel sistema tipo forum, chat o commenti che precedentemente erano appannaggio anche dei publisher.