Web Script: org/alfresco/components/dashlets/site-links.get
Generated from /share/service/script/org/alfresco/components/dashlets/site-links.get on Jun 14, 2026 2:45:20 PM

Script Properties
Id:org/alfresco/components/dashlets/site-links.get
Short Name:Site Links
Description:Component used to list links a user belongs to
Authentication:none
Transaction:none
Method:GET
URL Template:/components/dashlets/site-links
Format Style:any
Default Format:html
Negotiated Formats:[undefined]
Implementation:class org.alfresco.web.scripts.DeclarativeWebScript
Extensions:[undefined]

Store: classpath:alfresco/site-webscripts

File: org/alfresco/components/dashlets/site-links.get.desc.xml
<webscript>
   <shortname>Site Links</shortname>
   <description>Component used to list links a user belongs to</description>
   <family>site-dashlet</family>
   <url>/components/dashlets/site-links</url>
</webscript>
File: org/alfresco/components/dashlets/site-links.get.head.ftl
<link rel="stylesheet" type="text/css" href="${page.url.context}/components/dashlets/site-links.css"/>
<script type="text/javascript" src="${page.url.context}/components/dashlets/site-links.js"></script>

<link rel="stylesheet" type="text/css" href="${page.url.context}/modules/delete-link.css"/>
<script type="text/javascript" src="${page.url.context}/modules/delete-link.js"></script>
File: org/alfresco/components/dashlets/site-links.get.html.ftl
<script type="text/javascript">//<![CDATA[
new Alfresco.SiteLinks("${args.htmlid}").setOptions({
   siteId: "${page.url.templateArgs.site!''}",
   links: [
   <#if links??>
	   <#list links as link>
      {
         id: '${link.name?js_string}',
         title: '${link.title?js_string}',
         url: '${link.url?js_string}',
         description: '${link.description?js_string}'
      }<#if (link_has_next)>,</#if>
	   </#list>
   </#if>
   ]
});
//]]></script>

<#assign site=page.url.templateArgs.site>

<div class="dashlet site-links">
   <div class="title">${msg("header.links")}</div>
   <div class="toolbar">
      <a id="${args.htmlid}-createLink-button" class="create-link" >${msg("link.createLink")}</a>
   </div>
   <div class="body scrollableList">
<#if links??>
   <#list links as link>
      <#assign linkUrl=link.url >
      <div id="${args.htmlid}-link-div-${link.name}" class="detail-list-item <#if link_index = 0>first-item<#elseif !link_has_next>last-item</#if>">
         <div>
            <div class="link">
               <a <#if !link.internal>target="_blank"</#if> href="<#if link.url?substring(0,1) == "/" || link.url?index_of("://") == -1>http://</#if>${link.url}" class="theme-color-1">${link.title?html}</a>
            </div>
            <div class="actions">
               <a id="${args.htmlid}-details-span-${link_index}" href="${url.context}/page/site/${site}/links-view?linkId=${link.name}" class="details" title="${msg("link.details")}">&nbsp;</a>
            </div>
         </div>
      </div>
   </#list>
<#else>
      <div class="detail-list-item first-item last-item">
         <span>${msg("label.noLinks")}</span>
      </div>
</#if>
   </div>
</div>
File: org/alfresco/components/dashlets/site-links.get.js
function sortByTitle(link1, link2)
{
   return (link1.title > link2.title) ? 1 : (link1.title < link2.title) ? -1 : 0;
}

function main()
{
   var site = page.url.templateArgs.site;
   var container = 'links';
	var url = '/api/links/site/' + site + '/' + container + '?page=1&pageSize=512';
   var connector = remote.connect("alfresco");
   var result = connector.get(url);
	if (result.status == 200)
	{
		var links = eval('(' + result.response + ')').items;
      links.sort(sortByTitle);
		model.links = links;
	}
}

main();
File: org/alfresco/components/dashlets/site-links.get.properties
header.links=Site Links
link.createLink=Create Link
link.details=Link's details
label.noLinks=No links to display

Store: classpath:alfresco/webscripts

[No implementation files]