null Puberty kits
An error occurred while processing the template.
The following has evaluated to null or missing:
==> request["render-url-normal"]  [in template "10157#10197#67243" at line 299, column 46]

----
Tip: It's the final [] step that caused this error, not those before it.
----
Tip: If the failing expression is known to be legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign renderUrlNormal = request["re...  [in template "10157#10197#67243" at line 299, column 19]
----
1<#-- 
2   ____ ____  _   _ ____                                                                                    
3  / ___|  _ \| | | |  _ \                                                                                   
4 | |  _| | | | |_| | |_) |                                                                                  
5 | |_| | |_| |  _  |  _ <                                                                                   
6  \____|____/|_| |_|_| \_\                                                                                  
7  _                          _                  _        _   _       _ _          __     ___                
8 | |    ___  __ _ _ __ _ __ (_)_ __   __ _     / \   ___| |_(_)_   _(_) |_ _   _  \ \   / (_) _____      __ 
9 | |   / _ \/ _` | '__| '_ \| | '_ \ / _` |   / _ \ / __| __| \ \ / / | __| | | |  \ \ / /| |/ _ \ \ /\ / / 
10 | |__|  __/ (_| | |  | | | | | | | | (_| |  / ___ \ (__| |_| |\ V /| | |_| |_| |   \ V / | |  __/\ V  V /  
11 |_____\___|\__,_|_|  |_| |_|_|_| |_|\__, | /_/   \_\___|\__|_| \_/ |_|\__|\__, |    \_/  |_|\___| \_/\_/   
12                                     |___/                                 |___/                            
13--> 
14<style scoped> 
15.alert-info { 
16    background-color: #0070b4; 
17    border-color: #9ee3f9; 
18    color: white; 
19
20 
21.withRightBorder { 
22    border-right: 0px solid; 
23    padding-right: 10px; 
24
25 
26.accordionBorder { 
27    display: none; 
28    border-bottom: 1px solid #ddd; 
29
30 
31.accordionBorder h3{ 
32    margin-bottom: 0; 
33
34 
35.accordionNoPadding{ 
36    padding-left: 0; 
37
38 
39.accordion a:hover{ 
40    text-decoration: none; 
41
42 
43.ausCuricChevronDown:before{ 
44    float: left; 
45    padding-right:10px; 
46    content: "\f078"; 
47    font-family: 'fontawesome-alloy'; 
48    font-size: 20px; 
49    font-weight: initial; 
50
51 
52.ausCuricChevronUp:before{ 
53    float: left; 
54    padding-right:10px; 
55    content: "\f077"; 
56    font-family: 'fontawesome-alloy'; 
57    font-size: 20px; 
58    font-weight: initial; 
59
60 
61 
62 
63button.close { 
64    color: white !important; 
65    opacity: 1 !important; 
66
67</style> 
68 
69 
70<#assign themeImagePath = themeDisplay.pathThemeImages> 
71 
72<#assign cssClass = "journal-article-"+.vars['reserved-article-id'].data>  
73<#assign learningActivityService = serviceLocator.findService("au.gov.wa.gdhr.content.service.LearningActivityService")> 
74<#assign learningActivitySearchService = serviceLocator.findService("au.gov.wa.gdhr.content.service.LearningActivitySearchService")> 
75<#assign assetCategoryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")> 
76<#assign assetTagService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetTagService")> 
77<#assign userService = serviceLocator.findService("com.liferay.portal.kernel.service.UserService")> 
78<#assign commonTemplateService = serviceLocator.findService("au.gov.wa.gdhr.content.service.CommonTemplateService") > 
79 
80<#assign jaId = .vars['reserved-article-id'].data>  
81<#assign locale = localeUtil.fromLanguageId(request.locale)>  
82<#assign languageId = localeUtil.fromLanguageId(request.locale)>  
83<#assign learningActivity = learningActivityService.getLearningActivity(jaId,getterUtil.getLong(groupId),locale,languageId)> 
84<#assign portalUrl = themeDisplay.portalURL>  
85<#assign scheme = request['scheme']> 
86<#assign layoutLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService")> 
87<#assign layoutId = getterUtil.getLong(plid)>  
88<#assign layout = layoutLocalService.getLayout(layoutId)> 
89<#assign hide = layout.getExpandoBridge().getAttribute('hide-in-breadcrums')> 
90<#assign pageHasReturnButton = layout.expandoBridge.getAttribute('has_return_button')!true /> 
91 
92<#assign companyGroupId = getterUtil.getLong(groupId)> 
93<#assign articleId = .vars['reserved-article-id'].data> 
94<#assign articleTitle = .vars['reserved-article-title'].data> 
95<#assign filename = htmlUtil.escapeURL(articleTitle)> 
96<#assign baseExportServiceUrl = "/c/portal/journal_content_docmosis/export_article"> 
97<#assign baseDownloadUrl = "${baseExportServiceUrl}?groupId=${companyGroupId}&articleId=${articleId}&filename=${htmlUtil.escapeURL(articleTitle)}"> 
98 
99 
100<script> 
101    /*  ------------------------------------------------------------------------------------ 
102    Function to toggle the specified element 
103        - Optional boolean to determine if the element toggles when the user clicks outside 
104        - Example: toggleDropdown($(".dropdown"),true); 
105    ------------------------------------------------------------------------------------- */ 
106    var toggleDropdown = function(e,dropdownTarget,toggleOnBlur) { 
107        /* Stop the default link behaviour */ 
108        e.preventDefault(); 
109 
110        /* Stop the event from bubbling up to the document */ 
111        e.stopPropagation(); 
112 
113        /* Close any elements that are still toggled and have focus */ 
114        /* These elements have called the toggleDropdown function with toggleOnBlur set to true */ 
115        $(".is-toggled.has-focus").each(function() { 
116            /* Don't toggle for the current dropdown target */ 
117            if (!$(this).is(dropdownTarget)) { 
118                $(this).toggleClass("is-toggled has-focus"); 
119
120        }); 
121 
122        /* Toggle the dropdown menu when the dropdown controller is clicked */ 
123        if (toggleOnBlur) { 
124            /* Add a class to show this item can be collapsed when other elements are toggled */ 
125            $(dropdownTarget).toggleClass("is-toggled has-focus"); 
126        } else { 
127            $(dropdownTarget).toggleClass("is-toggled"); 
128
129 
130        /* Toggle the element when it loses focus through the click event */ 
131        if (toggleOnBlur) { 
132            $(document).click(function (e){ 
133                /* Captures clicks outside of the current target */ 
134                if (!dropdownTarget.is(e.target) /* If the target of the click isn't the container */ 
135                    && dropdownTarget.has(e.target).length === 0) /* nor a descendant of the container */ 
136
137                    /* Hide the dropdown menu if it is enabled */ 
138                    if ($(dropdownTarget).hasClass("is-toggled has-focus")) { 
139                        $(dropdownTarget).toggleClass("is-toggled has-focus"); 
140
141
142            }); 
143
144
145 
146    /*  ------------------------------------------------------------------------------------ 
147    jQuery code goes here that needs to wait for the DOM to completely load 
148    ------------------------------------------------------------------------------------- */ 
149    $(function() { 
150        /* Toggle the dropdown menu when the dropdown controller is clicked */ 
151        $(".toggle-control").click(function(e) { 
152            /* Specify the target element to toggle */ 
153            var targetDropdown = $(this).parent(); 
154 
155            if ($(this).hasClass("toggle-on-blur")) { 
156                /* Call the toggle function and specify for the element to collapse when it loses focus */ 
157                toggleDropdown(e,targetDropdown,true); 
158            } else { 
159                /* Call the toggle function */ 
160                toggleDropdown(e,targetDropdown); 
161
162        }); 
163 
164        /* Switch the content within the target when the source controller is clicked */ 
165        $(".switch-control").click(function(e) { 
166            /* Store the current switch control */ 
167            var switchControl = $(this); 
168            /* Store the switch content source */ 
169            var switchSource = $(this).next(".switch-content"); 
170            /* Store the current switch container's grandparent */ 
171            var switchSourceParent = $(this).parent().parent(); 
172 
173            /* Clear all the active states for all other switches in this group */ 
174            $(this).parent().parent().find(".switch-control").each(function() { 
175                /* Method to exclude the current switch control */ 
176                if ($(this).find(".sr-only").text() != switchControl.find(".sr-only").text()) { 
177                        $(this).removeClass("is-active"); 
178
179            }); 
180 
181            /* If the current switch control is active, you are deactivating so clear the switch target's content */ 
182            if (switchControl.hasClass("is-active")) { 
183                $(".switch-target").html(""); 
184                $(".switch-target").removeClass("has-content"); 
185            } else { 
186                /* If the current switch control is not active, you are activating it so populate the switch target's content */ 
187                $(".switch-target").html($(switchSource).html()); 
188                $(".switch-target").addClass("has-content"); 
189
190 
191            /* Change the state of the current switch control */ 
192            switchControl.toggleClass("is-active"); 
193 
194            /* Clear the switch target and remove the active state from the current switch control */ 
195            $(document).click(function (e){ 
196                if (!switchSourceParent.is(e.target) /* If the target of the click isn't the container */ 
197                    && switchSourceParent.has(e.target).length === 0) /* nor a descendant of the container */ 
198
199                    /* Hide the dropdown menu if it is enabled */ 
200                    if (switchControl.hasClass("is-active")) { 
201                    switchControl.toggleClass("is-active"); 
202
203 
204                $(".switch-target").html(""); 
205                $(".switch-target").removeClass("has-content"); 
206
207            }); 
208        }); 
209         
210         
211        /*Clipboard copy code*/  
212        var hasFlash = false; 
213        try { 
214          var fo = new ActiveXObject('ShockwaveFlash.ShockwaveFlash'); 
215          if (fo) { 
216            hasFlash = true; 
217
218        } catch (e) { 
219          if (navigator.mimeTypes 
220                && navigator.mimeTypes['application/x-shockwave-flash'] != undefined 
221                && navigator.mimeTypes['application/x-shockwave-flash'].enabledPlugin) { 
222            hasFlash = true; 
223
224
225 
226<#if learningActivity.learningActivity??> 
227        if (hasFlash){ 
228            var client = new ZeroClipboard(document.getElementById('permLink${learningActivity.learningActivity}'),  
229                { moviePath: Liferay.ThemeDisplay.getPortalURL() + '/gdhr-new-theme/js/lib/ZeroClipboard.swf',  
230                debug:true }); 
231             
232            client.on( 'ready', function(c) { 
233                client.on("copy", function (event){ 
234                    event.clipboardData.setData("text/plain", $(client.elements()[0]).attr('data-link')); 
235                }); 
236                client.on("aftercopy", function (event){ 
237                    $('#dismiss${learningActivity.learningActivity}').remove(); 
238                    var dismissableAlert = $('<div class="alert alert-info alert-dismissable" id="dismiss${learningActivity.learningActivity}"/>'); 
239                    dismissableAlert.append('The link ' + $(client.elements()[0]).attr('data-link') + ' has been copied to your clipboard'); 
240                    dismissableAlert.append($('<button type="button" class="close" data-dismiss="alert" aria-hidden="true"><span>&times;</span></button>')); 
241                    $('#buttons').append(dismissableAlert); 
242                }); 
243            }); 
244      
245            // In case of error - such as Flash not being available 
246            client.on( 'wrongflash noflash', function() { 
247              ZeroClipboard.destroy(); 
248            }); 
249        }   else    { 
250            $('#permLink${learningActivity.learningActivity}').on("click", function (event){ 
251                $('#dismiss${learningActivity.learningActivity}').remove(); 
252                var dismissableAlert = $('<div class="alert alert-info alert-dismissable" id="dismiss${learningActivity.learningActivity}"/>'); 
253                dismissableAlert.append($('#permLink${learningActivity.learningActivity}').attr('data-link')); 
254                dismissableAlert.append($('<button type="button" class="close" data-dismiss="alert" aria-hidden="true"><span>&times;</span></button>')); 
255                $('#buttons').append(dismissableAlert); 
256            }); 
257
258        $( "ul" ).each(function( index ) { 
259            if( $(this) .prev() .is('ol')) { 
260            $(this) .css('margin-left', '35px'); 
261            $(this) .prev().css('margin-bottom', '2px'); 
262            $(this).css('margin-bottom', '2px'); 
263        }});         
264</#if> 
265    }); 
266 
267    function goBack(){ 
268     if(window.history.length){ 
269       window.history.back(); 
270
271
272 
273    function showLink(linkValue, linkDiv){   
274      var textbox = document.getElementById(linkDiv); 
275      textbox.value = linkValue; 
276      textbox.style.display= "block";   
277      textbox.select(); 
278
279 
280    function hideLink(linkDiv){ 
281      linkDiv.style.display = "none"; 
282
283 
284    <#if hide> 
285      removeViewPageFromBreadcrumbs(); 
286    </#if> 
287    </script> 
288 
289<div class="${cssClass}"> 
290 
291    <div class="row"> 
292        <div class="col-md-12"> 
293         
294            <#if !pageHasReturnButton> 
295              <#-- Back button --> 
296              <div class="back-link"> 
297                <span class="header-back-to"> 
298                  <span class="icon-circle-arrow-left"></span> 
299                  <#assign renderUrlNormal = request["render-url-normal"]> 
300                  <#assign portletNamespace = request["portlet-namespace"]> 
301                  <#assign portletNamespaceStrutsActionParam = portletNamespace+"struts_action"> 
302                  <#assign portletNamespaceStrutsActionValue = "/asset_publisher/view"> 
303                  <#assign backURL = httpUtil.addParameter(renderUrlNormal,portletNamespaceStrutsActionParam,portletNamespaceStrutsActionValue)> 
304                   
305                  <a href="${backURL}" title="Go Back">Return</a> 
306                </span> 
307              </div> 
308            </#if> 
309 
310            <h2 class="heading-primary">${learningActivity.title}</h2> 
311 
312            <#assign activityTitle = learningActivity.title>  
313            <#assign companyGroupId = getterUtil.getLong(groupId)>  
314            <#assign completeUrl = scheme + '://' + portalUrl + learningActivity.stableLink /> 
315 
316            <div id="buttons"> 
317                <div class="btn-group">                 
318          <a class="btn btn-primary" href="${baseDownloadUrl}&extension=docx" title="Download Learning Activity in Microsoft Word DOCX format"> WORD </a> 
319          <a class="btn btn-primary" href="${baseDownloadUrl}&extension=pdf" title="Download Learning Activity in Adobe PDF format"> PDF </a> 
320                </div> 
321            </div> 
322        </div> 
323    </div> 
324 
325    <#-- @since https://jira.permeance.com.au/browse/SHBBVP002-57 --> 
326    <#if (learningActivity.time)?has_content> 
327      <div class="row"> 
328        <div class="col-md-12"> 
329          <div class="row"> 
330            <div class="time"> 
331              <span class="sr-only">Time to complete ${learningActivity.title}:</span>  
332              ${learningActivity.time} 
333            </div> 
334          </div> 
335        </div> 
336      </div> 
337    </#if> 
338 
339    <div class="row"> 
340        <div class="col-md-8 withRightBorder"> 
341            <br/> 
342            <h3 class="heading-secondary">Year level: ${learningActivity.typicalAgeRange}</h3> 
343             
344            <h3 class="heading-secondary">Description</h3> 
345            <p>${learningActivity.description}</p> 
346 
347            <h3 class="heading-secondary">Learning focus</h3> 
348            <p>${learning_focus.getData()}</p> 
349 
350            <#if (learningActivity.keyUnderstandings)?has_content> 
351              <h3 class="heading-secondary">Key understandings</h3> 
352              <p>${learningActivity.keyUnderstandings}</p> 
353            </#if> 
354 
355            <#-- REMOVED 10 July 2014 as per PC/PT instruction 
356            <hr class="divider small" /> 
357            --> 
358            <h3 class="heading-secondary">Materials</h3> 
359 
360            <#if learningActivity.materials?has_content> 
361                <#list learningActivity.materials as material> 
362                   <#assign formattedMat = material?replace('<p>','','if') /> 
363                   <#assign formattedMat = formattedMat?replace('</p>','','i')/> 
364                   ${formattedMat}  
365                </#list> 
366            <#else> 
367            <p>There are no listed materials.</p> 
368            </#if>  
369 
370            <div class="accordion accordionBorder"> 
371                 
372 
373                <div class="accordion-heading"> 
374                    <a href="#auscuric-collapse-1" data-parent="#aus-curric-1" data-toggle="collapse" class="accordion-toggle accordionNoPadding"><h3>Australian curriculum 
375                        <span class="ausCuricChevronDown"></span> 
376                    </h3> 
377                    </a> 
378                </div> 
379                <div class="accordion-body collapse" id="auscuric-collapse-1">  
380                    <div class="accordion-inner"> 
381                    <#assign generalCapabilities = 
382                    learningActivityService.getGeneralCapabilityImageDetails(learningActivity,locale)> 
383                    <#if generalCapabilities?has_content> 
384                <h4 class="heading-tertiary"> 
385                    General capabilities <span class="js-only"></span> 
386                </h4> 
387                <div class="general-capabilities"> 
388                    <#list generalCapabilities?keys as key> <#assign generalCapability = 
389                    generalCapabilities[key]> <#assign associatedGeneralCapabilties = 
390                    learningActivityService.getChildrenCategories(generalCapability.rootCategoryId,learningActivity.generalCapabilities,locale)> 
391                    <#assign imagePath = themeImagePath +'/' + 'generalCapabilities/' + 
392                    generalCapability.imageName> <#assign imageTitle = 
393                    generalCapability.title> <#assign titleDescriptor = 
394                    generalCapability.description> <#if 
395                    associatedGeneralCapabilties?has_content> 
396                    <div class="general-capability switch-container"> 
397                        <#-- 
398                        <button class="switch-control" title="${imageTitle}"> 
399                            <img alt="${imageTitle}" height="30" src="${imagePath}" 
400                                title="${imageTitle} (click for details)" width="30" /> <span 
401                                class="sr-only">${imageTitle}</span> 
402                        </button> 
403                        --> 
404                        <button class="switch-control" title="${imageTitle}"> 
405                            <img alt="${imageTitle}" height="30" src="${imagePath}" 
406                                title="${titleDescriptor} (click for details)" width="30" /> <span 
407                                class="sr-only">${imageTitle}</span> 
408                        </button> 
409                        <div class="switch-content"> 
410                            <#list associatedGeneralCapabilties?keys as key> 
411                            <h4 class="heading-tertiary">${key}</h4> 
412                            <#assign values = associatedGeneralCapabilties[key]> <#list values 
413                            as value> 
414                            <p>${value.getTitle(locale)}</p> 
415                            </#list> </#list> 
416                        </div> 
417                    </div> 
418                <#else> 
419                <div class="general-capability is-inactive"> 
420                    <img alt="${titleDescriptor}" height="30" src="${imagePath}" 
421                        title="${titleDescriptor}" width="30" /> <span class="sr-only">${imageTitle}</span> 
422                    <h4 class="heading-tertiary">${imageTitle}</h4> 
423                </div> 
424                </#if> </#list> 
425                <div class="switch-target"></div> 
426            </div> 
427            <#else> 
428            <h4 class="heading-tertiary">General capabilities</h4> 
429            <p>No General Capabilities values have been selected.</p> 
430            </#if>                     
431                     
432                     
433                        <#if learningActivity.nationalCurriculum?has_content> <#assign 
434                        categoryMap = 
435                        learningActivityService.getCategoryMap(learningActivity.nationalCurriculum,locale)> 
436             
437                        <#list categoryMap?keys as key> 
438                        <h4 class="heading-tertiary">${key}</h4> 
439                        <#assign values = categoryMap[key]> <#list values as value> <#assign 
440                        title = value.getTitle(locale)> <#if 
441                        value.getDescription(locale)?has_content> 
442                        <div class="toggle-container padding-vertical"> 
443                            <div class="gravur toggle-control"> 
444                                <#if value.getParentCategoryId() != 0> ${title} <span 
445                                    title="Show details" class="off-state"><i class="icon-plus"></i></span> 
446                                <span title="Hide details" class="on-state"><i 
447                                    class="icon-minus"></i></span> </#if> 
448                                <div class="clear"></div> 
449                            </div> 
450                            <div class="clear"></div> 
451                            <div class="toggle-content"> 
452                                <p>${value.getDescription(locale)}</p> 
453                            </div> 
454                        </div> 
455                        <#else> <#if value.getParentCategoryId() != 0> 
456                        <p> 
457                            <strong>${title}</strong> 
458                        </p> 
459                        </#if> </#if> </#list> </#list> <#else> 
460                        <p>No Australian Curriculum values have been selected.</p> 
461                        </#if> <#-- REMOVED 10 July 2014 as per PC/PT instruction 
462                        <h3 class="heading-secondary">Subject</h3> 
463             
464                        <#if learningActivity.subject?has_content> <#list 
465                        learningActivity.subject as scot> <#assign scotCategoryId 
466                        =getterUtil.getLong(scot)> <#assign scotCategory = 
467                        assetCategoryService.getCategory(scotCategoryId)> 
468                        <p>${scotCategory.getTitle(locale)}</p> 
469                        </#list> <#else> 
470                        <p>No Subject values have been selected.</p> 
471                        </#if> 
472             
473             
474                        <hr class="divider small" /> 
475                        --> 
476             
477                        <h3 class="heading-secondary">Blooms revised taxonomy</h3> 
478             
479                        <#if learningActivity.blooms?has_content> <#list 
480                        learningActivity.blooms as bloom> <#assign bloomsCategoryId 
481                        =getterUtil.getLong(bloom)> <#assign bloomsCategory = 
482                        assetCategoryService.getCategory(bloomsCategoryId)> 
483                        <p>${bloomsCategory.getTitle(locale)}</p> 
484                        </#list> <#else> 
485                        <p>No Blooms values have been selected.</p> 
486                        </#if> 
487             
488                        <h3 class="heading-secondary">Inquiry learning phase</h3> 
489             
490                        <#if learningActivity.inquiryLearningPhase?has_content> <#list 
491                        learningActivity.inquiryLearningPhase as ipl> <#assign 
492                        inquiryLearningPhaseCategoryId =getterUtil.getLong(ipl)> <#assign 
493                        inquiryLearningPhaseCategory = 
494                        assetCategoryService.getCategory(inquiryLearningPhaseCategoryId)> 
495                        <p> 
496                            <a href=${inquiryLearningPhaseCategory.getDescription(locale)}>${inquiryLearningPhaseCategory.getTitle(locale)}</a> 
497                        </p> 
498                        </#list> <#else> 
499                        <p>No Inquiry Learning phase values have been selected.</p> 
500                        </#if> <#-- REMOVED 10 July 2014 as per PC/PT instruction 
501                        <hr class="divider small" /> 
502             
503                        <h3 class="heading-secondary">Keywords</h3> 
504                        <#assign keywords = ""> <#if learningActivity.tags?has_content> 
505                        <#assign size = learningActivity.tags?size> <#assign counter = 0> 
506                        <#list learningActivity.tags as tag> <#assign keywords = keywords + 
507                        tag> <#assign counter = counter + 1> <#if counter < size> <#assign 
508                        keywords = keywords + ", "> </#if> </#list> 
509                        <p>${keywords}</p> 
510                        <#else> 
511                        <p>No Keywords have been selected.</p> 
512                        </#if>--> 
513                     </div> 
514                   </div> 
515               </div> 
516             
517        </div> 
518 
519 
520        <div class="col-md-4"> 
521 
522    <style> 
523    .related-asset-icon {margin-right: 1em;} 
524    .related-asset-item {margin-left: 2em;} 
525    </style> 
526 
527    <#assign commonTemplateService = serviceLocator.findService("au.gov.wa.gdhr.content.service.CommonTemplateService") > 
528    <#assign jaId = .vars['reserved-article-id'].data> 
529    <#assign identifiedRelatedAssetsList = commonTemplateService.getIdentifiedRelatedAssetModelsForWebContent(scopeGroupId, jaId) > 
530 
531    <#assign teachingNotesStructureKey = commonTemplateService.getStructureKeyByName(scopeGroupId, "Teaching Note") > 
532    <#assign backgroundNotesStructureKey = commonTemplateService.getStructureKeyByName(scopeGroupId, "Background Note") > 
533    <#assign resourceCollectionStructureKey = commonTemplateService.getStructureKeyByName(scopeGroupId, "Resource Collection") > 
534    <#assign faqStructureKey = commonTemplateService.getStructureKeyByName(scopeGroupId, "FAQ") > 
535    <#assign videoStructureKey = commonTemplateService.getStructureKeyByName(scopeGroupId, "Video") > 
536    <#assign bookletBrochureStructureKey = commonTemplateService.getStructureKeyByName(scopeGroupId, "Booklets and Brochures") > 
537 
538    <#assign hasRelatedResources = false > 
539    <#assign listRRImages = [] > 
540    <#assign listRRVideos = [] > 
541    <#assign listRRDownloads = [] > 
542    <#assign listRRTeachingNotes = [] > 
543    <#assign listRRBackgroundNotes = [] > 
544    <#assign listRRResourceCollections = [] > 
545    <#assign listRRFAQs = [] > 
546    <#assign listRRExternalLinks = [] > 
547    <#assign listRRBookletBrochure = [] > 
548 
549 
550    <#list identifiedRelatedAssetsList as identifiedModel> 
551        <#if identifiedModel.type == "JournalArticle"> 
552             <#if (identifiedModel.model.structureId == teachingNotesStructureKey) > 
553                 <#assign hasRelatedResources = true > 
554                 <#assign listRRTeachingNotes = listRRTeachingNotes + [identifiedModel] > 
555             </#if> 
556             <#if (identifiedModel.model.structureId == backgroundNotesStructureKey) > 
557                 <#assign hasRelatedResources = true > 
558                 <#assign listRRBackgroundNotes = listRRBackgroundNotes + [identifiedModel] > 
559             </#if> 
560             <#if (identifiedModel.model.structureId == resourceCollectionStructureKey) > 
561                 <#assign hasRelatedResources = true > 
562                 <#assign listRRResourceCollections = listRRResourceCollections + [identifiedModel] > 
563             </#if> 
564             <#if (identifiedModel.model.structureId == faqStructureKey) > 
565                 <#assign hasRelatedResources = true > 
566                 <#assign listRRFAQs = listRRFAQs + [identifiedModel] > 
567             </#if> 
568             <#if (identifiedModel.model.structureId == videoStructureKey) > 
569                 <#assign hasRelatedResources = true > 
570                 <#assign listRRVideos = listRRVideos + [identifiedModel] > 
571             </#if> 
572             <#if (identifiedModel.model.structureId == bookletBrochureStructureKey) > 
573                 <#assign hasRelatedResources = true > 
574                 <#assign listRRBookletBrochure = listRRBookletBrochure + [identifiedModel] > 
575             </#if> 
576        </#if> 
577        <#if identifiedModel.type == "FileEntry"> 
578             <#if (identifiedModel.model.mimeType?starts_with("image/")) > 
579                 <#assign hasRelatedResources = true > 
580                 <#assign listRRImages = listRRImages + [identifiedModel] > 
581             <#else> 
582                 <#assign hasRelatedResources = true > 
583                 <#assign listRRDownloads = listRRDownloads + [identifiedModel] > 
584             </#if> 
585        </#if> 
586        <#if identifiedModel.type == "BookmarksEntry"> 
587             <#assign hasRelatedResources = true > 
588                 <#assign listRRExternalLinks = listRRExternalLinks + [identifiedModel] > 
589        </#if> 
590    </#list> 
591 
592 
593    <#if hasRelatedResources> 
594    <h3 style="color:#007FBC;">Related items</h3> 
595    <#-- 
596     |  
597        <#if (listRRImages?size > 0)><a href="#rrimages">Images</a> | </#if> 
598        <#if (listRRVideos?size > 0)><a href="#rrvideos">Videos</a> | </#if> 
599        <#if (listRRDownloads?size > 0)><a href="#rrdownloads">Teaching Resource (download)</a> | </#if> 
600        <#if (listRRTeachingNotes?size > 0)><a href="#rrtcnotes">Teaching Notes</a> | </#if> 
601        <#if (listRRBackgroundNotes?size > 0)><a href="#rrbgnotes">Background Notes</a> | </#if> 
602        <#if (listRRResourceCollections?size > 0)><a href="#rrrescollections">Resource Collections</a> | </#if> 
603        <#if (listRRFAQs?size > 0)><a href="#rrfaqs">FAQs</a> | </#if> 
604        <#if (listRRBookletBrochure?size > 0)><a href="#rrbandb">Booklets and Brochures</a> | </#if> 
605 
606        <#if (listRRExternalLinks?size > 0)><a href="#rrextlinks">External Links</a> | </#if>--> 
607        <#if (listRRImages?size > 0)> 
608             <a name="rrimages"></a> 
609             <i class="icon-picture related-asset-icon"></i><span class="heading-secondary">Images</span> 
610             <ul class="unstyled"> 
611             <#list listRRImages as identifiedModel> 
612                <li class="related-asset-item"><a href="/documents/${identifiedModel.model.groupId}/${htmlUtil.escapeURL(identifiedModel.model.title)}/${identifiedModel.model.folderId}/${identifiedModel.model.uuid}?t=${dateUtil.newTime()}"><img src="/documents/${identifiedModel.model.groupId}/${htmlUtil.escapeURL(identifiedModel.model.title)}/${identifiedModel.model.folderId}/${identifiedModel.model.uuid}?t=${dateUtil.newTime()}&amp;imageThumbnail=1"/> ${htmlUtil.escape(identifiedModel.model.title)}</a></li>   
613             </#list> 
614             </ul> 
615        </#if> 
616 
617        <#if (listRRVideos?size > 0)> 
618             <a name="rrvideos"></a> 
619             <i class="icon-film related-asset-icon"></i><span class="heading-secondary">Videos</span> 
620             <ul class="unstyled"> 
621             <#list listRRVideos as identifiedModel> 
622                  <li class="related-asset-item"><a href="/-/${identifiedModel.model.urlTitle}">${htmlUtil.escape(identifiedModel.model.titleCurrentValue)}</a></li> 
623             </#list> 
624             </ul> 
625        </#if> 
626 
627        <#if (listRRDownloads?size > 0)> 
628             <a name="rrdownloads"></a> 
629             <i class="icon-download-alt related-asset-icon"></i><span class="heading-secondary">Teaching resource (download)</span> 
630             <ul class="unstyled"> 
631             <#list listRRDownloads as identifiedModel> 
632                <li class="related-asset-item"><a href="/documents/${identifiedModel.model.groupId}/${htmlUtil.escapeURL(identifiedModel.model.title)}/${identifiedModel.model.folderId}/${identifiedModel.model.uuid}?t=${dateUtil.newTime()}">${htmlUtil.escape(identifiedModel.model.title)}</a></li>   
633             </#list> 
634             </ul> 
635        </#if> 
636 
637        <#if (listRRTeachingNotes?size > 0)> 
638             <a name="rrtcnotes"></a> 
639             <i class="icon-book related-asset-icon"></i><span class="heading-secondary">Guides</span> 
640             <ul class="unstyled"> 
641             <#list listRRTeachingNotes as identifiedModel> 
642                  <li class="related-asset-item"><a href="/-/${identifiedModel.model.urlTitle}">${htmlUtil.escape(identifiedModel.model.titleCurrentValue)}</a></li> 
643             </#list> 
644                <#if (listRRBackgroundNotes?size > 0)> 
645                     <#list listRRBackgroundNotes as identifiedModel> 
646                          <li class="related-asset-item"><a href="/-/${identifiedModel.model.urlTitle}">${htmlUtil.escape(identifiedModel.model.titleCurrentValue)}</a></li> 
647                     </#list> 
648                </#if> 
649             </ul> 
650        <#elseif (listRRBackgroundNotes?size > 0)> 
651             <a name="rrtcnotes"></a> 
652             <i class="icon-book related-asset-icon"></i><span class="heading-secondary">Guides</span> 
653             <ul class="unstyled"> 
654             <#list listRRBackgroundNotes as identifiedModel> 
655                  <li class="related-asset-item"><a href="/-/${identifiedModel.model.urlTitle}">${htmlUtil.escape(identifiedModel.model.titleCurrentValue)}</a></li> 
656             </#list> 
657                <#if (listRRTeachingNotes?size > 0)> 
658                     <#list listRRTeachingNotes as identifiedModel> 
659                          <li class="related-asset-item"><a href="/-/${identifiedModel.model.urlTitle}">${htmlUtil.escape(identifiedModel.model.titleCurrentValue)}</a></li> 
660                     </#list> 
661                </#if> 
662             </ul> 
663        <#else> 
664            <!--NO CONTENT--> 
665        </#if> 
666 
667                 
668        <#if (listRRResourceCollections?size > 0)> 
669             <a name="rrrescollections"></a> 
670             <i class="icon-briefcase related-asset-icon"></i><span class="heading-secondary">Resource collections</span> 
671             <ul class="unstyled"> 
672             <#list listRRResourceCollections as identifiedModel> 
673                  <li class="related-asset-item"><a href="/-/${identifiedModel.model.urlTitle}">${htmlUtil.escape(identifiedModel.model.titleCurrentValue)}</a></li> 
674             </#list> 
675             </ul> 
676        </#if> 
677         
678        <#if (listRRFAQs?size > 0)> 
679             <a name="rrfaqs"></a> 
680             <i class="icon-question-sign related-asset-icon"></i><span class="heading-secondary">FAQs</span> 
681             <ul class="unstyled"> 
682             <#list listRRFAQs as identifiedModel> 
683                  <li class="related-asset-item"><a href="/-/${identifiedModel.model.urlTitle}">${htmlUtil.escape(identifiedModel.model.titleCurrentValue)}</a></li> 
684             </#list> 
685             </ul> 
686        </#if> 
687 
688        <#if (listRRBookletBrochure?size > 0)> 
689             <a name="rrbandb"></a> 
690             <i class="icon-book related-asset-icon"></i><span class="heading-secondary">Booklets and Brochures</span> 
691             <ul class="unstyled"> 
692             <#list listRRBookletBrochure as identifiedModel> 
693                  <li class="related-asset-item"><a href="/-/${identifiedModel.model.urlTitle}">${htmlUtil.escape(identifiedModel.model.titleCurrentValue)}</a></li> 
694             </#list> 
695             </ul> 
696        </#if> 
697 
698        <#if (listRRExternalLinks?size > 0)> 
699             <a name="rrextlinks"></a> 
700             <i class="icon-link related-asset-icon"></i> <span class="heading-secondary">External links</span> 
701             <ul class="unstyled"> 
702             <#list listRRExternalLinks as identifiedModel> 
703                 <li class="related-asset-item"><a href="${identifiedModel.model.url}">${htmlUtil.escape(identifiedModel.model.name)}</a></li> 
704             </#list> 
705             </ul> 
706        </#if> 
707 
708    </#if> 
709 
710 
711 
712 
713 
714 
715        </div> 
716    </div> 
717 
718 
719 
720    <hr class="divider small" /> 
721 
722    <div class="row"> 
723        <div class="col-md-12"> 
724 
725            <#--  Relocate 'Before you get started' before the 'Learning activities' --> 
726            <#--  @since https://jira.permeance.com.au/browse/SHBBVP002-58 --> 
727             
728            <#list learningActivity.activitySections as activitySection> 
729                <#assign name = (activitySection.name)!"" /> 
730                <#assign label = (activitySection.label)!"" /> 
731                <#if name?trim?lower_case == "before you get started" || label?trim?lower_case == "before you get started"> 
732                    <div class="row"> 
733                        <div class="span"> 
734                            <#if name?has_content> 
735                                <h3 class="heading-secondary">${name}</h3> 
736                                <p>${label}</p> 
737                                <p>${activitySection.body}</p> 
738                            <#else> 
739                                <h3 class="heading-secondary">${label}</h3> 
740                                <p>${activitySection.body}</p> 
741                            </#if> 
742                        </div> 
743                    </div> 
744                </#if> 
745            </#list> 
746 
747            <h3 class="heading-secondary" style="color: #007fbc;">Learning activities</h3> 
748 
749            <#list learningActivity.activitySections as activitySection> 
750                <#assign name = (activitySection.name)!"" /> 
751                <#assign label = (activitySection.label)!"" /> 
752                <#if name?trim?lower_case != "before you get started" && label?trim?lower_case != "before you get started"> 
753                    <div class="row"> 
754                        <div class="span"> 
755                            <#if name?has_content> 
756                                <h4 class="heading-tertiary">${name}</h4> 
757                            <#else> 
758                                <h4>${label}</h4> 
759                            </#if> 
760                        </div> 
761                    </div> 
762                    <#-- @since https://jira.permeance.com.au/browse/SHBBVP002-57 --> 
763                    <#if (activitySection.time)?has_content> 
764                        <div class="row"> 
765                            <div class="time time-subsection"> 
766                                <span class="sr-only">Time to complete ${name}:</span>  
767                                ${activitySection.time} 
768                            </div> 
769                        </div> 
770                    </#if> 
771                    <div class="row"> 
772                        <div class="span"> 
773                            <#if name?has_content> 
774                                <p>${label}</p> 
775                                <p>${activitySection.body}</p> 
776                            <#else> 
777                                <p>${activitySection.body}</p> 
778                            </#if> 
779                        </div> 
780                    </div> 
781                </#if> 
782            </#list> 
783 
784        </div> 
785    </div> 
786</div> 
787 
788<style> 
789.related-asset-icon { 
790    margin-right: 1em; 
791
792 
793.related-asset-item { 
794    margin-left: 2em; 
795
796</style> 
797 
798<script> 
799$( ".accordion-heading" ).click(function() { 
800    $(this).find("h3 span").toggleClass('ausCuricChevronDown, ausCuricChevronUp'); 
801    console.log("gog her"); 
802    }); 
803</script>