It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

How do I get a list of all users and their profile details

In case any one wants to know ho to do this. I use a group parameter to narrow down the list.

## @param Group:title=Group|type=string|required=false|desc=Group
#set ( $containerManagerClass = $content.class.forName('com.atlassian.spring.container.ContainerManager'))
#set ( $getInstanceMethod = $containerManagerClass.getDeclaredMethod('getInstance',null))
#set ( $containerManager = $getInstanceMethod.invoke(null,null))
#set ( $containerContext = $containerManager.containerContext)
#set ( $userDetailsManager = $containerContext.getComponent('userDetailsManager'))
#set ( $personalInformationManager = $containerContext.getComponent('personalInformationManager'))
#set ( $wikiStyleRenderer = $containerContext.getComponent('wikiStyleRenderer'))
#set ( $users = $userAccessor.getMembers($userAccessor.getGroup($paramGroup)))

<table>
	<tr>
		<th></th>
		<th>Users</th>
		<th>Email</th>
		<th>Phone</th>
		<th>Location</th>
		<th>Role</th>
		<th>Department</th>
		<th>About User</th>
	</tr>

#foreach ($user in $users)
	#set ( $userD = $userAccessor.getUserByName($user.name))
	#set ( $pi = $personalInformationManager.getPersonalInformation($user))
	#set ( $renderedAboutMe = $wikiStyleRenderer.convertWikiToXHtml($pi.toPageContext(), $pi.getBodyAsString()))

	#set ( $phone = $userDetailsManager.getStringProperty($userD, "phone"))
	#set ( $location = $userDetailsManager.getStringProperty($userD, 'location'))
	#set ( $position = $userDetailsManager.getStringProperty($userD, 'position'))
	#set ( $department = $userDetailsManager.getStringProperty($userD, 'department'))
	#set ( $profile_pic = $userAccessor.getUserProfilePicture($userD))
	#set ( $pic_src=$profile_pic.getDownloadPath())

	<tr>
		<td>
			<a class="confluence-userlink url fn" data-username="$user.name" href="    /display/~$user.name">
				<img style="width:40px; height:auto;" src="$pic_src" alt="$usr_nm" border="0" />
			</a><br/>
		</td>
		<td>Name: $user.fullName <br/>
		    Username: $user.name<br/>
		    <a style="font-size:12px;" href="$action.getGlobalSettings().getBaseUrl()/admin/users/edituser.action?username=$user.name" title="Edit User Details">Edit Details</a>
		</td>
		<td>$user.email</td>
		<td>$phone</td>
		<td>$location</td>
		<td>$position</td>
		<td>$department</td>
		<td>
    			$renderedAboutMe
		</td>
	</tr>
    ## Clears out latent Value at end of loop to stop value from being set on successive items if empty for user
	#set ( $renderedAboutMe = "")
	#set ( $phone = "" )
	#set ( $location = "")
	#set ( $position = "")
	#set ( $department = "")
#end
</table>

0 answers

Suggest an answer

Log in or Sign up to answer
TAGS
Community showcase
Published in Confluence Cloud

What's New in Confluence Cloud – July 2020 Edition

Here’s another edition of “What’s New” this month in Confluence Cloud. Quickly (and more easily) adjust permission settings We know that sometimes the layers of space permissions and page restric...

6,464 views 11 30
Read article

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you