|
| File: org/alfresco/components/dashlets/colleagues.get.desc.xml |
<webscript>
<shortname>Site Colleagues</shortname>
<description>Lists colleagues in the collaboration site</description>
<family>site-dashlet</family>
<url>/components/dashlets/colleagues</url>
</webscript> |
| File: org/alfresco/components/dashlets/colleagues.get.html.ftl |
<div class="dashlet">
<div class="title">${msg("header.colleagues")}</div>
<div class="body scrollableList">
<#if (memberships?size > 0)>
<#list memberships as m>
<div class="detail-list-item <#if m_index = 0>first-item<#elseif !m_has_next>last-item</#if>">
<div class="avatar">
<img src="${url.context}<#if m.avatar??>/proxy/alfresco/api/node/${m.avatar?replace(':/','')}/content/thumbnails/avatar?c=force<#else>/components/images/no-user-photo-64.png</#if>" alt="Avatar" />
</div>
<div class="person">
<h4><a href="${url.context}/page/user/${m.person.userName?url}/profile" class="theme-color-1">${m.person.firstName?html} <#if m.person.lastName??>${m.person.lastName?html}</#if></a></h4>
<span>${m.role}</span>
</div>
</div>
</#list>
<#else>
<div class="detail-list-item first-item last-item">
<h3>${msg("label.noMembers")}</h3>
</div>
</#if>
</div>
</div> |
| File: org/alfresco/components/dashlets/colleagues.get.js |
function sortByName(membership1, membership2)
{
var name1 = membership1.person ? membership1.person.firstName + membership1.person.lastName : "";
var name2 = membership2.person ? membership2.person.firstName + membership2.person.lastName : "";
return (name1 > name2) ? 1 : (name1 < name2) ? -1 : 0;
}
// Call the repo for the site memberships
var json = remote.call("/api/sites/" + page.url.templateArgs.site + "/memberships");
var memberships = [];
if (json.status == 200)
{
// Create javascript objects from the repo response
var obj = eval('(' + json + ')');
if (obj)
{
memberships = obj;
var userObj, member;
for (var i = 0, j = memberships.length; i < j; i++)
{
member = memberships[i];
userObj = user.getUser(member.person.userName);
if (userObj != null)
{
member.avatar = userObj.properties.avatar;
}
}
memberships.sort(sortByName);
}
}
// Prepare the model
model.memberships = memberships; |
| File: org/alfresco/components/dashlets/colleagues.get.properties |
header.colleagues = Site Colleagues
link.viewAll = All
link.find = Find
label.noMembers = No members in this site yet
|