Hoekstra_VFZ
4 years agoAdvisor
Built a service/status tracker status based on tags
Hello,
I am creating a component that only shows based on the tags given to the message.
The tags are hidden for non admins by the way.
Using Freemarker I have no luck yet in getting/reading the tags or taglist from the current thread.
Please help, half answers are also very welcome 🙂 Does anyone have a code snippet that shows how to 'get' the tags of the thread?
Allright: Full component here:
<#import "theme-lib.common-functions.ftl" as commonUtils /> <#assign threadId = page.context.thread.topicMessage.uniqueId /> <#assign query = "SELECT text FROM tags WHERE messages.id = '${threadId}'" /> <#assign tagData = commonUtils.executeLiQLQuery(query) /> <#if tagData?size gt 0> <#assign issueTag = false /> <#assign onderzoekTag = false /> <#assign oorzaakbekendTag = false /> <#assign opgelostTag = false /> <#assign softwareupdateTag = false /> <#assign websiteTag = false /> <#list tagData as list> <#-- <h1>${list.text}</h1> --> <#if list.text == 'issue' || list.text == 'Issue'> <#assign issueTag = true /> </#if> <#if list.text == 'onderzoek' || list.text == 'Onderzoek'> <#assign onderzoekTag = true /> </#if> <#if list.text == 'oorzaak bekend' || list.text == 'Oorzaak Bekend'> <#assign oorzaakbekendTag = true /> </#if> <#if list.text == 'opgelost' || list.text == 'Opgelost'> <#assign opgelostTag = true /> </#if> <#if list.text == 'software update' || list.text == 'Software Update'> <#assign softwareupdateTag = true /> </#if> <#if list.text == 'website' || list.text == 'Website'> <#assign websiteTag = true /> </#if> </#list> <#if issueTag == true > <#assign statusTitle = 'In onderzoek' /> <#assign statusBody = 'Moderators verzamelen jullie voorbeelden een gaan dit bundelen naar de technische dienst.' /> <#assign statusButton = ['Geef jouw voorbeeld hier door','https://community.ziggo.nl'] /> </#if> <#if issueTag == true && onderzoekTag == true > <#assign statusTitle = 'In onderzoek' /> <#assign statusBody = 'De technische dienst is op de hoogte gesteld. Zij zoeken nu naar de oorzaak.' /> <#assign statusButton = ['Lees hoe je kan helpen','https://community.ziggo.nl'] /> </#if> <#if issueTag == true && oorzaakbekendTag == true > <#assign statusTitle = 'Issue bekend' /> <#assign statusBody = 'De technische dienst heeft de oorzaak gevonden. Er wordt aan een oplossing gewerkt.' /> <#assign statusButton = ['',''] /> </#if> <#if issueTag == true && softwareupdateTag == true > <#assign statusBody = statusBody+' Een volgende softwareupdate bevat de fix.' /> <#assign statusButton = ['Update je software','https://community.ziggo.nl'] /> </#if> <#if issueTag == true && websiteTag == true > <#assign statusBody = statusBody+' Volg onze storingschecker voor updates.' /> <#assign statusButton = ['Naar de storingschecker','https://community.ziggo.nl'] /> </#if> <#if statusTitle?? && statusBody??> <div class="">${statusTitle}</div> <div class=""><p>${statusBody}</p></div> <#if statusButton[0] != '' && statusButton[1] != '' > <a class="lia-button lia-button-secondary lia-link-ticket-post-action" href="${statusButton[1]}">${statusButton[0]}</a> </#if> </#if> </#if>