Consider the business process "Review and Approve (one or more reviewers) - Assign a review task to multiple reviewers".
When I choose reviewers I see only their properties cm:userName
. How to display all the properties of the type cm:person
?
For example:
cm:userName
cm:firstName
cm:middleName
cm:email
cm:organizationId
cm:jobtitle
cm:googleusername
And so on...
Instead of this container (part of the association.ftl):
...
<div id="${controlId}-currentValueDisplay" class="current-values"></div>
...
I would like to use table. IMHO for that I should override some parts of the Alfresco.ObjectFinder, such as:
if (this.options.displayMode == "items")
{
Dom.get(this.id + "-currentValueDisplay").innerHTML = displayValue;
}
...etc. But how to display all the properties of the selected reviewers?
Let's say, this part:
displayValue +=
this.options.objectRenderer.renderItem(
item,
16,
"<div class='itemtype-" + $html(item.type) +
"' style='word-wrap: break-word;'>{icon} {name}</div>"
);
I assume that it's property is name
Ok, then where to find the mapping "property in object-finder : property in the person type"
?..
I would be very grateful for the information. Thanks to all.
To display the companyname, email etc fields to you need to modify the following files in the repo side.
In the pickerresults.lib.js, I added the required extra properties in the CreatePersonResult(node) method.
In the pickerresults.lib.ftl, I added the extra properties to the result set, below to the
"selectable" : ${row.selectable?string}</#if>
Hope this helps you now.
Object-finder.js is used for different kind of objects like person, tags etc.
item.type
iscm:person
, but it doesn't have all the person of person object here. Refer the below image.