Vista Combinata Vista Piatta Vista ad Albero
Discussioni [ Precedente | Successivo ]
toggle
Adam C
Checking user role in velocity template
30 gennaio 2008 11.50
Risposta

Adam C

Punteggio: Junior Member

Messaggi: 68

Data di Iscrizione: 13 giugno 2007

Messaggi recenti

How can I determine if the user is in a certain role using Velocity? More specifically, I'd like to check if they have the Administrator role.
Jorge Ferrer
RE: Checking user role in velocity template
19 febbraio 2008 9.00
Risposta

Jorge Ferrer

LIFERAY STAFF

Punteggio: Liferay Legend

Messaggi: 2757

Data di Iscrizione: 31 agosto 2006

Messaggi recenti

Hi A C,

The following wiki article explains how to access Liferay's services from a velocity template in a theme:
http://wiki.liferay.com/index.php/Access_to_Liferay_services_in_Velocity


You can then use UserService.hasUserRole(..)
Patrick Stackpoole
RE: Checking user role in velocity template
4 novembre 2010 7.07
Risposta

Patrick Stackpoole

Punteggio: New Member

Messaggi: 21

Data di Iscrizione: 10 giugno 2010

Messaggi recenti

Although I'm replying to a post that's over 2 years old, I had the same question and wanted to post a solution I found that worked.

 1
 2
 3#set ($isAdmin = false)
 4
 5#if ( $is_signed_in )
 6
 7    #set ($rService = $serviceLocator.findService("com.liferay.portal.service.RoleService"))
 8    #set ($usrRoles = $rService.getUserRoles( $user_id ))
 9    #foreach( $usrRole in $usrRoles )
10            #if ( $usrRole.getName() == "Administrator" )
11            #set ($isAdmin = true)
12            #end
13#end
Jairo Luna
RE: Checking user role in velocity template
8 novembre 2010 16.46
Risposta

Jairo Luna

Punteggio: Junior Member

Messaggi: 57

Data di Iscrizione: 21 luglio 2010

Messaggi recenti

May be you can use:

1
2$permissionChecker.isCompanyAdmin($company_id)
Ankit _
RE: Checking user role in velocity template
14 febbraio 2013 6.34
Risposta

Ankit _

Punteggio: Junior Member

Messaggi: 46

Data di Iscrizione: 18 ottobre 2012

Messaggi recenti

Hi, this is old post, but i am still not getting the result that i want.

I am using liferay 6.2.0 M2 , and i created site and assign the owner and admin rights to that user. I just want if user is admin i want to show dockbar.
and i tried
 1
 2#if ( $is_signed_in )
 3    #set ($rService = $serviceLocator.findService("com.liferay.portal.service.RoleService"))
 4    #set ($usrRoles = $rService.getUserRoles( $user_id ))
 5    #foreach( $usrRole in $usrRoles )
 6            #if ( $usrRole.getName() == "Administrator" )
 7                #dockbar()
 8            #end
 9    #end
10#end

and this also
1
2$permissionChecker.isCompanyAdmin($company_id)

but both way i can't get my dockbar for that admin user, i can get dockbar for test user only..
James Falkner
RE: Checking user role in velocity template
14 febbraio 2013 8.23
Risposta

James Falkner

LIFERAY STAFF

Punteggio: Liferay Legend

Messaggi: 1216

Data di Iscrizione: 17 settembre 2010

Messaggi recenti

Make sure you uncheck the 'cacheable' option when editing the template.
Ankit _
RE: Checking user role in velocity template
14 febbraio 2013 21.32
Risposta

Ankit _

Punteggio: Junior Member

Messaggi: 46

Data di Iscrizione: 18 ottobre 2012

Messaggi recenti

Hi James,
Thanks for your reply.
James Falkner:
Make sure you uncheck the 'cacheable' option when editing the template.

but I am trying to do in theme, so i am writing it in navigation.vm file. I cleared all the server cache, but i can't figure it out.


EDIT :
I tried this one also
1#if ($permissionChecker.isOmniadmin())
2#dockbar()
3#end

but still it getting only test user to show dockbar, not for site admin/other site owner(apply after site creation)

Thanks,
Ankit
Ankit _
RE: Checking user role in velocity template
14 febbraio 2013 21.49
Risposta

Ankit _

Punteggio: Junior Member

Messaggi: 46

Data di Iscrizione: 18 ottobre 2012

Messaggi recenti

sorry for post my theme problem to velocity template thread,
mean while i got my solution for site admin can see dockbar throught theme by changing in portal_normal.vm as below

1#if ($is_signed_in && $permissionChecker.isGroupAdmin($group_id))
2        #dockbar()
3    #end


Thanks,
Ankit
Devendra Patel
Re: [Liferay Forums][4. General] RE: Checking user role in velocity templat
28 febbraio 2013 21.30
Risposta

Devendra Patel

Punteggio: Junior Member

Messaggi: 71

Data di Iscrizione: 25 settembre 2011

Messaggi recenti

Hi Ankit

Rather than using service locator for fetching you can use this code :

#foreach($role in $user.getRoles())
#if($role.getName() == "Administrator")
True
#end
#end

Regards,
Dev Patel
Devendra Patel
Re: [Liferay Forums][4. General] RE: Checking user role in velocity templat
28 febbraio 2013 21.30
Risposta

Devendra Patel

Punteggio: Junior Member

Messaggi: 71

Data di Iscrizione: 25 settembre 2011

Messaggi recenti

Hi Ankit

Rather than using service locator for fetching you can use this code :

#foreach($role in $user.getRoles())
#if($role.getName() == "Administrator")
True
#end
#end

Regards,
Dev Patel
Devendra Patel
Re: [Liferay Forums][4. General] RE: Checking user role in velocity templat
28 febbraio 2013 21.30
Risposta

Devendra Patel

Punteggio: Junior Member

Messaggi: 71

Data di Iscrizione: 25 settembre 2011

Messaggi recenti

Hi Ankit

Rather than using service locator for fetching you can use this code :

#foreach($role in $user.getRoles())
#if($role.getName() == "Administrator")
True
#end
#end

Regards,
Dev Patel
Devendra Patel
Re: [Liferay Forums][4. General] RE: Checking user role in velocity templat
28 febbraio 2013 21.30
Risposta

Devendra Patel

Punteggio: Junior Member

Messaggi: 71

Data di Iscrizione: 25 settembre 2011

Messaggi recenti

Hi Ankit

Rather than using service locator for fetching you can use this code :

#foreach($role in $user.getRoles())
#if($role.getName() == "Administrator")
True
#end
#end

Regards,
Dev Patel
Devendra Patel
Re: [Liferay Forums][4. General] RE: Checking user role in velocity templat
28 febbraio 2013 21.30
Risposta

Devendra Patel

Punteggio: Junior Member

Messaggi: 71

Data di Iscrizione: 25 settembre 2011

Messaggi recenti

Hi Ankit

Rather than using service locator for fetching you can use this code :

#foreach($role in $user.getRoles())
#if($role.getName() == "Administrator")
True
#end
#end

Regards,
Dev Patel
cacaca cacaca
RE: Checking user role in velocity template
8 maggio 2013 23.54
Risposta

cacaca cacaca

Punteggio: New Member

Messaggi: 14

Data di Iscrizione: 12 aprile 2013

Messaggi recenti

Patrick Stackpoole:
Although I'm replying to a post that's over 2 years old, I had the same question and wanted to post a solution I found that worked.

 1
 2
 3#set ($isAdmin = false)
 4
 5#if ( $is_signed_in )
 6
 7    #set ($rService = $serviceLocator.findService("com.liferay.portal.service.RoleService"))
 8    #set ($usrRoles = $rService.getUserRoles( $user_id ))
 9    #foreach( $usrRole in $usrRoles )
10            #if ( $usrRole.getName() == "Administrator" )
11            #set ($isAdmin = true)
12            #end
13#end