Landlord and tenant representation
The right place for success
Whether you are a tenant or landlord, investing in or carrying out a project, we take the time to analyse your needs and to understand your business goals in order to offer you the best solutions.
Landlords
By working with you to identify all the characterists and your fundamental business drivers, we are able to help shape the best strategies in order to maximise the value of your assets.
Tenants
Finding the right property, in the right location, and at the right price is critical to success. We work closely with you to understand your business goals and define your needs. We support you in the collection of data points including location, the costs of occupation, workplace dynamics and green performance. We then assist you in negotiating the best terms and conditions to ensure your ongoing success.

Java method "com.avisonyoung.portal.ui.contactlist.service.ContactListServiceUtil.getContactListDisplayFromAssetEntry(com.liferay.asset.kernel.model.AssetEntry, com.liferay.portal.kernel.theme.ThemeDisplay, javax.portlet.RenderRequest, javax.portlet.RenderResponse)" threw an exception when invoked on com.avisonyoung.portal.ui.contactlist.service.ContactListServiceUtil object "com.avisonyoung.portal.ui.contactlist.service.ContactListServiceUtil@65df1f6"; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign contactListDisplay = contactL... [in template "20302#20342#81179307" at line 5, column 3] ----
1<#assign contactListServiceUtil = serviceLocator.findService("com.avisonyoung.portal.ui.contactlist.service.ContactListServiceUtil")>
2<#assign localeEn = localeUtil.fromLanguageId("en_US")>
3
4<#list entries as entry>
5 <#assign contactListDisplay = contactListServiceUtil.getContactListDisplayFromAssetEntry(entry, themeDisplay, renderRequest, renderResponse)>
6
7 <!-- Display Title -->
8 <div class="list-title">
9 <h2 class="ay-service-lts-title">${contactListDisplay.getDisplayTitle()}</h2>
10 </div>
11
12 <!-- Display Edit Link if User has permissions -->
13 <#if entry.getAssetRenderer().hasEditPermission(permissionChecker)>
14 <#assign portletId = themeDisplay.getPortletDisplay().getId()>
15 <#assign portletIdNum = portletId?split("_")[0]>
16 <#assign portletName = themeDisplay.getPortletDisplay().getPortletName()>
17 <#assign plid = getterUtil.getLong(themeDisplay.getPlid())>
18
19 <#assign
20 portletURL = portletURLFactory.create(renderRequest, portletName, plid, "RENDER_PHASE"),
21 windowState = windowStateFactory.getWindowState("MAXIMIZED"),
22 assetRenderer = entry.getAssetRenderer()
23 >
24
25 <!-- Create edit URL -->
26 <#assign editURL = entry.getAssetRenderer().getURLEdit(renderRequest, renderResponse, windowState, portletURL)>
27 <#if assetRenderer.hasEditPermission(permissionChecker)>
28 <div class="ay-asset-edit-container lfr-meta-actions">
29 <a href='${editURL}' data-title='Edit ${entry.getTitle(locale)}'
30 class='ay-news-card-edit-link asset-edit-link'>
31 Edit this List of Contacts
32 </a>
33 </div>
34 </#if>
35
36 <style>
37 .ay-asset-edit-container {
38 margin-bottom: 2.4rem;
39 }
40
41 .ay-news-card-edit-link.asset-edit-link {
42 float: left;
43 }
44 </style>
45
46 </#if>
47
48 <!-- Loop over list of items and display results -->
49 <div class="ay-lts-key-professionals-wrap">
50 <#list contactListDisplay.getContacts() as contact>
51 <div class="ay-lts-media-block ay-lts-text-right ay-lts-key-professionals-item">
52 <div class="ay-lts-media-block-content">
53 <h3>
54 <a href="${contact.getPreferredLinkUri()}" target="_blank">
55 ${contact.getFullName()}
56 </a>
57 </h3>
58 <ul class="">
59 <li>
60 <ul class="bold">
61 <#list contact.getJobTitles() as jobTitle>
62 <li>${jobTitle.getTitle()}</li>
63 </#list>
64 </ul>
65 </li>
66 <li>
67 <ul class="">
68 <#list contact.getProfessionalSpecialties() as specialty>
69 <li>${specialty.getTitle()}</li>
70 </#list>
71 </ul>
72 </li>
73 </ul>
74 <a href="mailto:${contact.getEmailAddress()}" class="ay-lts-email-phone-link">
75 ${contact.getEmailAddress()}
76 </a>
77 <div class="ay-lts-media-block-phone-links">
78 <!-- if phone number is not to be shown an empty div needs to be in it's place to ensure open link is on the right -->
79 <a href="tel:${contact.getPhoneNumber()}" class="ay-lts-email-phone-link">
80 ${contact.getPhoneNumber()}
81 </a>
82 </div>
83 </div>
84 <figure class="ay-lts-media-block-media">
85 <#assign imgThumb = contact.getThumbnailImageUri()>
86 <img src="${imgThumb}" alt="">
87 </figure>
88 </div>
89 </#list>
90 </div>
91</#list>