The latest release of Aikau (at the time of writing 1.0.87) contains a new library file that provides functions that can be called to easily build user related content. This file can be imported into WebScripts much like the Data Lists and Document Library examples. This video demonstrates some example pages that you can build (the WebScripts for the pages are included in a JAR that can be downloaded from this GitHub repository).
Building the new people finder page is as simple as building a WebScript with the following JavaScript controller:
<import resource="classpath:/alfresco/site-webscripts/org/alfresco/share/imports/share-header.lib.js">
<import resource="classpath:/alfresco/site-webscripts/org/alfresco/share/imports/share-footer.lib.js">
<import resource="classpath:alfresco/site-webscripts/org/alfresco/aikau/{aikauVersion}/libs/doclib/doclib.lib.js">
<import resource="classpath:alfresco/site-webscripts/org/alfresco/aikau/{aikauVersion}/libs/pages/people.lib.js">
var headerServices = getHeaderServices();
var headerWidgets = getHeaderModel("People Finder");
var docLibServices = getDocumentLibraryServices();
var peopleServices = getUserProfileServices();
var services = headerServices.concat(peopleServices).concat(docLibServices);
var widgets = getUserProfilesWidgets();
headerWidgets.push(widgets);
model.jsonModel = getFooterModel(services, headerWidgets);
model.jsonModel.groupMemberships = user.properties["alfUserGroups"];
Note that we're also pulling in the Document Library lib file to get the services used for document action handling!
As with the other library files the people.lib.js file is broken up into easily re-usable functions so that you can build as much or as little as you require. At the moment it isn't localized for languages other than English and we could do a better job of providing "id" attributes for each widget in the model - but if people show an interest in making use of this library then I'll be happy to make some updates.
Updating the people finder page is not on the road-map for the next release of Share but this library could be very useful for customizations and custom pages.