diff --git a/app/assets/javascripts/utilities/buildArticleHTML.js b/app/assets/javascripts/utilities/buildArticleHTML.js index edb51b83e..f403caaf5 100644 --- a/app/assets/javascripts/utilities/buildArticleHTML.js +++ b/app/assets/javascripts/utilities/buildArticleHTML.js @@ -25,8 +25,43 @@ function buildArticleHTML(article) { if (article) { var container = document.getElementById('index-container'); + + var flareTag = ''; + var currentTag = ''; + if (container) { + currentTag = JSON.parse(container.dataset.params).tag; + } + if (article.flare_tag && currentTag !== article.flare_tag.name) { + flareTag = + "#" + + article.flare_tag.name + + ''; + } + if (article.class_name === 'PodcastEpisode') { + flareTag = "podcast"; + } + if (article.class_name === 'Comment') { + flareTag = "comment"; + } + if (article.class_name === 'User') { + flareTag = + "person"; + } + var tagString = ''; - var tagList = article.tag_list || article.cached_tag_list_array; + var tagList = article.tag_list || article.cached_tag_list_array || []; + if (flareTag) { + tagList = tagList.filter(function (tag) { + return tag !== article.flare_tag.name; + }); + tagString += flareTag; + } if (tagList) { tagList.forEach(function buildTagString(t) { tagString = @@ -53,32 +88,6 @@ function buildArticleHTML(article) { ' comments'; } - var flareTag = ''; - var currentTag = ''; - if (container) { - currentTag = JSON.parse(container.dataset.params).tag; - } - if (article.flare_tag && currentTag !== article.flare_tag.name) { - flareTag = - "#" + - article.flare_tag.name + - ''; - } - if (article.class_name === 'PodcastEpisode') { - flareTag = "podcast"; - } - if (article.class_name === 'Comment') { - flareTag = "comment"; - } - if (article.class_name === 'User') { - flareTag = - "person"; - } - var rc = article.public_reactions_count; var reactionsCount = rc || '0'; var reactionsDisplay = ''; @@ -278,7 +287,6 @@ function buildArticleHTML(article) { '" id="article-link-' + article.id + '">' + - flareTag + filterXSS(article.title) + '\