From 2268596e1a3cb305bc3092394e59d5fdc72f0c1b Mon Sep 17 00:00:00 2001
From: Thomas Tanghus <thomas@tanghus.net>
Date: Fri, 22 Feb 2013 14:51:21 +0100
Subject: [PATCH] Fetch displayname in userlist ajax requests. Refs #1681

---
 settings/ajax/userlist.php | 6 ++++--
 settings/js/users.js       | 8 ++++----
 2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/settings/ajax/userlist.php b/settings/ajax/userlist.php
index 9bbff80ea0..5282f4a714 100644
--- a/settings/ajax/userlist.php
+++ b/settings/ajax/userlist.php
@@ -29,10 +29,11 @@ if (isset($_GET['offset'])) {
 }
 $users = array();
 if (OC_User::isAdminUser(OC_User::getUser())) {
-	$batch = OC_User::getUsers('', 10, $offset);
-	foreach ($batch as $user) {
+	$batch = OC_User::getDisplayNames('', 10, $offset);
+	foreach ($batch as $user => $displayname) {
 		$users[] = array(
 			'name' => $user,
+			'displayname' => $displayname,
 			'groups' => join(', ', OC_Group::getUserGroups($user)),
 			'subadmin' => join(', ', OC_SubAdmin::getSubAdminsGroups($user)),
 			'quota' => OC_Preferences::getValue($user, 'files', 'quota', 'default'));
@@ -43,6 +44,7 @@ if (OC_User::isAdminUser(OC_User::getUser())) {
 	foreach ($batch as $user) {
 		$users[] = array(
 			'name' => $user,
+			'displayname' => OC_User::determineDisplayName($user),
 			'groups' => join(', ', OC_Group::getUserGroups($user)),
 			'quota' => OC_Preferences::getValue($user, 'files', 'quota', 'default'));
 	}
diff --git a/settings/js/users.js b/settings/js/users.js
index 63a6204983..452bdf5f83 100644
--- a/settings/js/users.js
+++ b/settings/js/users.js
@@ -66,10 +66,10 @@ var UserList = {
 		}
 	},
 
-	add: function (username, groups, subadmin, quota, sort) {
+	add: function (username, displayname, groups, subadmin, quota, sort) {
 		var tr = $('tbody tr').first().clone();
 		tr.attr('data-uid', username);
-		tr.attr('data-displayName', username);
+		tr.attr('data-displayName', displayname);
 		tr.find('td.name').text(username);
 		tr.find('td.displayName').text(username);
 		var groupsSelect = $('<select multiple="multiple" class="groupsselect" data-placehoder="Groups" title="' + t('settings', 'Groups') + '"></select>').attr('data-username', username).attr('data-user-groups', groups);
@@ -138,7 +138,7 @@ var UserList = {
 		$.get(OC.Router.generate('settings_ajax_userlist', { offset: UserList.offset }), function (result) {
 			if (result.status === 'success') {
 				$.each(result.data, function (index, user) {
-					var tr = UserList.add(user.name, user.groups, user.subadmin, user.quota, false);
+					var tr = UserList.add(user.name, user.displayname, user.groups, user.subadmin, user.quota, false);
 					UserList.offset++;
 					if (index == 9) {
 						$(tr).bind('inview', function (event, isInView, visiblePartX, visiblePartY) {
@@ -373,7 +373,7 @@ $(document).ready(function () {
 					OC.dialogs.alert(result.data.message,
 						t('settings', 'Error creating user'));
 				} else {
-					UserList.add(username, result.data.groups, null, 'default', true);
+					UserList.add(username, username, result.data.groups, null, 'default', true);
 				}
 			}
 		);
-- 
GitLab