Fórumok

Customizzazione Tema - Ruoli dell'utente corrente

Alex alex, módosítva 11 év-val korábban

Customizzazione Tema - Ruoli dell'utente corrente

New Member Bejegyzések: 13 Csatlakozás dátuma: 2012.10.16. Legújabb bejegyzések
Salve a tutti,
vorrei modificare un tema agendo sul portal-normal.vm in modo tale che un Logo possa essere cliccabile o meno a seconda del ruolo dell'utente.
Es.
utente1 ha il ruolo1 e quindi può cliccarlo
utente2 non ha il ruolo1 e quindi non può cliccarlo.

Il codice che sto usando per recuperare il ruolo dell'utente corrente è il seguente:
#set ($rService = $serviceLocator.findService("com.liferay.portal.service.RoleService"))
#set ($usrRoles = $rService.getUserRoles( $user_id ))
#foreach( $usrRole in $usrRoles )
#If ($usrRole.getName() == "MyRole")
do something
#end
#end

Tuttavia mi ritrovo la variabile $usrRoles riempita con l'elenco dei ruoli solo se sono loggato all'interno del portale come Amministratore.
La $usrRoles risulta invece vuota se mi loggo con un'utenza normale: utente (Power User, user).
Stando cosi le cose, a meno che io non sia amministratore, non potrei mai conoscere il ruolo dell'utente corrente e quindi nascondere o meno il logo in questione.
Dove sbaglio? Perché quel codice funziona solo da amministrazione?
Esistono alternative per raggiungere il mio scopo lavorando sui temi?
Grazie mille.
thumbnail
Daniele Baggio, módosítva 11 év-val korábban

RE: Customizzazione Tema - Ruoli dell'utente corrente

Expert Bejegyzések: 336 Csatlakozás dátuma: 2008.12.05. Legújabb bejegyzések
Consiglio: meglio se costruisci un portlet che ha la logica che vuoi, e poi inserisci il portlet nel tema.
Alex alex, módosítva 11 év-val korábban

RE: Customizzazione Tema - Ruoli dell'utente corrente

New Member Bejegyzések: 13 Csatlakozás dátuma: 2012.10.16. Legújabb bejegyzések
Si, grazie mille, in effetti ci avevo già pensato come alternativa, ma contavo di usare il Velocity per un approccio magari più rapido... ma è possibile che quella porzione di codice in velocity funzioni solamente sotto amministratore?
Eppure in molti forum viene riportato come soluzione per identificare i ruoli dell'utente corrente... E' strano questo comportamento.
Alex alex, módosítva 11 év-val korábban

RE: Customizzazione Tema - Ruoli dell'utente corrente

New Member Bejegyzések: 13 Csatlakozás dátuma: 2012.10.16. Legújabb bejegyzések
Soluzione:

#set ($usrRoles = $user.getRoles())
#foreach( $usrRole in $usrRoles )
#If ($usrRole.getName() == "MyRole")
do something
#end
#end