|
| File: org/alfresco/components/dashlets/my-workspaces.get.desc.xml |
<webscript>
<shortname>My Workspaces</shortname>
<description>Component used to list workspaces a user belongs to</description>
<family>user-dashlet</family>
<url>/components/dashlets/my-workspaces</url>
</webscript> |
| File: org/alfresco/components/dashlets/my-workspaces.get.head.ftl |
<!-- My Sites Assets -->
<link rel="stylesheet" type="text/css" href="${page.url.context}/components/dashlets/my-sites.css"/>
<script type="text/javascript" src="${page.url.context}/components/dashlets/my-sites.js"></script>
<link rel="stylesheet" type="text/css" href="${page.url.context}/modules/create-site.css"/>
<script type="text/javascript" src="${page.url.context}/modules/create-site.js"></script>
<link rel="stylesheet" type="text/css" href="${page.url.context}/modules/delete-site.css"/>
<script type="text/javascript" src="${page.url.context}/modules/delete-site.js"></script>
|
| File: org/alfresco/components/dashlets/my-workspaces.get.html.ftl |
<script type="text/javascript">//<![CDATA[
new Alfresco.MySites("${args.htmlid}").setOptions({
sites: [
<#if sites??>
<#list sites as site>
{
shortName: '${site.shortName?js_string}',
title: '${site.title?js_string}',
sitePreset: '${site.sitePreset?js_string}',
isSiteManager: ${site.isSiteManager?string}
}<#if (site_has_next)>,</#if>
</#list>
</#if>
]
});
//]]></script>
<div class="dashlet my-sites">
<div class="title">${msg("header.myWorkspaces")}</div>
<div class="body scrollableList">
<#if sites??>
<#list sites as site>
<#if site.sitePreset == "document-workspace">
<div id="${args.htmlid}-site-div-${site.shortName}" class="detail-list-item <#if site_index = 0>first-item<#elseif !site_has_next>last-item</#if>">
<div>
<div class="site">
<a href="${url.context}/page/site/${site.shortName}/dashboard">${site.title?html}</a>
</div>
<div class="actions">
<#if (site.isSiteManager)>
<span id="${args.htmlid}-delete-span-${site_index}" class="delete" title="${msg("link.deleteWorkspaces")}"> </span>
</#if>
</div>
</div>
<#if site.description?exists && site.description != "">
<div class="description">${site.description?html}</div>
<#else>
<div class="clear"></div>
</#if>
</div>
</#if>
</#list>
<#else>
<div class="detail-list-item first-item last-item">
<span>${msg("label.noWorkspaces")}</span>
</div>
</#if>
</div>
</div> |
| File: org/alfresco/components/dashlets/my-workspaces.get.js |
function sortByTitle(site1, site2)
{
return (site1.title > site2.title) ? 1 : (site1.title < site2.title) ? -1 : 0;
}
function main()
{
// Call the repo for sites the user is a member of
var result = remote.call("/api/people/" + stringUtils.urlEncode(user.name) + "/sites");
if (result.status == 200)
{
// Create javascript objects from the server response
var sites = eval('(' + result + ')');
// Sort the sites by title
sites.sort(sortByTitle);
for (i = 0, ii = sites.length; i < ii; i++)
{
site = sites[i];
// Is current user a Site Manager for this site?
site.isSiteManager = false;
if (site.siteManagers)
{
managers = site.siteManagers;
for (j = 0, jj = managers.length; j < jj; j++)
{
if (managers[j] == user.name)
{
site.isSiteManager = true;
break;
}
}
}
}
// Prepare the model for the template
model.sites = sites;
}
}
main(); |
| File: org/alfresco/components/dashlets/my-workspaces.get.properties |
header.myWorkspaces=My Workspaces
link.deleteWorkspaces=Delete
label.noWorkspaces=No workspaces to display |