ATLAS-1658: UI updates to fix incorrect terms display in search results and detail pages

Signed-off-by: Madhan Neethiraj <madhan@apache.org>
(cherry picked from commit 9ca6136e2e6e431b0f463344e7e3a731af69646b)
diff --git a/dashboardv2/public/js/utils/CommonViewFunction.js b/dashboardv2/public/js/utils/CommonViewFunction.js
index e1c22a1..a601d81 100644
--- a/dashboardv2/public/js/utils/CommonViewFunction.js
+++ b/dashboardv2/public/js/utils/CommonViewFunction.js
@@ -307,7 +307,8 @@
             entityName = Utils.getName(obj);
         if (traits) {
             traits.map(function(term) {
-                if (term.split(".").length > 1) {
+                var checkTagOrTerm = Utils.checkTagOrTerm(term);
+                if (checkTagOrTerm.term) {
                     terms.push({
                         deleteHtml: '<a class="pull-left" title="Remove Term"><i class="fa fa-trash" data-id="tagClick" data-type="term" data-assetname="' + entityName + '" data-name="' + term + '" data-guid="' + obj.guid + '" ></i></a>',
                         url: _.unescape(term).split(".").join("/"),
@@ -322,7 +323,7 @@
                 className += "showHideDiv hide";
             }
             obj['valueUrl'] = CommonViewFunction.breadcrumbUrlMaker(obj.url);
-            html += '<div class="' + className + '" dataterm-name="' + entityName + '"><div class="liContent"></div>' + obj.deleteHtml + '</div>';
+            html += '<div class="' + className + '" dataterm-name="' + obj.name + '"><div class="liContent"></div>' + obj.deleteHtml + '</div>';
         })
         if (terms.length > 1) {
             html += '<div><a  href="javascript:void(0)" data-id="showMoreLessTerm" class="inputTag inputTagGreen"><span>Show More </span><i class="fa fa-angle-right"></i></a></div>'
@@ -349,7 +350,8 @@
             entityName = Utils.getName(obj);
         if (traits) {
             traits.map(function(tag) {
-                if (tag.split(".").length === 1) {
+                var checkTagOrTerm = Utils.checkTagOrTerm(tag);
+                if (checkTagOrTerm.tag) {
                     var className = "inputTag";
                     if (count >= 1) {
                         popTag += '<a class="' + className + '" data-id="tagClick"><span class="inputValue">' + tag + '</span><i class="fa fa-times" data-id="delete"  data-assetname="' + entityName + '"data-name="' + tag + '" data-type="tag" data-guid="' + obj.guid + '" ></i></a>';
diff --git a/dashboardv2/public/js/utils/Utils.js b/dashboardv2/public/js/utils/Utils.js
index f214c50..b96bc9b 100644
--- a/dashboardv2/public/js/utils/Utils.js
+++ b/dashboardv2/public/js/utils/Utils.js
@@ -295,6 +295,11 @@
                 fullName: value
             }
         }
+        if (value && _.isString(value)) {
+            value = {
+                typeName: value
+            }
+        }
         if (_.isObject(value)) {
             var name = "";
             if (value && value.$typeName$) {
@@ -306,11 +311,14 @@
                 return {}
             }
             name = _.escape(name).split('.');
+
             var trem = false;
             if (value['taxonomy.namespace']) {
                 trem = true;
             } else if (value.values && value.values['taxonomy.namespace']) {
                 trem = true;
+            } else if (name.length > 1) {
+                trem = true; // Temp fix
             }
 
             if (trem) {
diff --git a/dashboardv2/public/js/views/detail_page/DetailPageLayoutView.js b/dashboardv2/public/js/views/detail_page/DetailPageLayoutView.js
index 41be98d..49953fd 100644
--- a/dashboardv2/public/js/views/detail_page/DetailPageLayoutView.js
+++ b/dashboardv2/public/js/views/detail_page/DetailPageLayoutView.js
@@ -247,12 +247,11 @@
                     termData = "";
 
                 _.each(tagObject, function(val) {
-                    //var isTerm = Utils.checkTagOrTerm(val);
-                    if (val.typeName && val.typeName.split('.').length === 1) {
-                        tagData += '<span class="inputTag" data-id="tagClick"><span class="inputValue">' + val.typeName + '</span><i class="fa fa-close" data-id="deleteTag" data-type="tag"></i></span>';
-                    }
-                    if (val.typeName && val.typeName.split('.').length > 1) {
+                    var checkTagOrTerm = Utils.checkTagOrTerm(val);
+                    if (checkTagOrTerm.term) {
                         termData += '<span class="inputTag term" data-id="tagClick" data-href="' + val.typeName + '"><span class="inputValue">' + val.typeName + '</span><i class="fa fa-close" data-id="deleteTag" data-type="term"></i></span>';
+                    } else {
+                        tagData += '<span class="inputTag" data-id="tagClick"><span class="inputValue">' + val.typeName + '</span><i class="fa fa-close" data-id="deleteTag" data-type="tag"></i></span>';
                     }
                 });
                 this.ui.tagList.find("span.inputTag").remove();