Commit 5e8b7f34 by kevalbhatt

ATLAS-3851:- UI: Remove hourglass icon from in progress entity

parent a3fd6441
...@@ -21,6 +21,7 @@ ...@@ -21,6 +21,7 @@
>li:first-child { >li:first-child {
font-weight: 600; font-weight: 600;
word-break: break-all;
} }
.business-metadata-tree-child { .business-metadata-tree-child {
...@@ -38,6 +39,26 @@ ...@@ -38,6 +39,26 @@
margin-top: 10px; margin-top: 10px;
font-weight: 100; font-weight: 100;
} }
.custom-table {
&:not(.bm-create) {
.custom-tr {
.custom-col-1 {
width: calc(50% - 55px);
.select2-selection--multiple .select2-selection__rendered {
overflow: scroll;
}
}
.custom-col-2 {
width: 45px;
}
}
}
}
} }
.business-metadata-options.dropdown { .business-metadata-options.dropdown {
...@@ -165,6 +186,8 @@ ...@@ -165,6 +186,8 @@
.panel-title { .panel-title {
font-size: 14px; font-size: 14px;
word-break: break-all;
width: inherit;
a:hover { a:hover {
color: #686868 !important; color: #686868 !important;
...@@ -176,4 +199,10 @@ ...@@ -176,4 +199,10 @@
.btn-group>button { .btn-group>button {
color: #686868 !important; color: #686868 !important;
} }
.business-metadata-detail-attr-key {
width: 30%;
word-break: break-word;
}
} }
\ No newline at end of file
...@@ -14,9 +14,7 @@ ...@@ -14,9 +14,7 @@
// See the License for the specific language governing permissions and // See the License for the specific language governing permissions and
// limitations under the License. // limitations under the License.
/* common.scss */ /* common.scss */
.readOnly { .readOnly {
span, span,
...@@ -221,10 +219,18 @@ pre { ...@@ -221,10 +219,18 @@ pre {
.custom-table { .custom-table {
width: 100%; width: 100%;
display: flex;
tbody {
display: flex;
flex-flow: column;
width: 100%;
}
.custom-tr { .custom-tr {
margin-left: 15px; margin-left: 15px;
margin-right: 15px; display: flex;
width: calc(100% - 15px);
.custom-col-0, .custom-col-0,
.custom-col-1, .custom-col-1,
...@@ -242,20 +248,30 @@ pre { ...@@ -242,20 +248,30 @@ pre {
.custom-col-0 { .custom-col-0 {
text-align: center;
vertical-align: middle;
line-height: 31px; line-height: 31px;
width: 3%; width: 9px;
padding: 0px 2px;
} }
.custom-col-1 { .custom-col-1 {
width: 39%; width: calc(50% - 90px);
flex-grow: 2;
&:first-child {
width: 30% !important;
flex-grow: 1;
}
} }
.custom-col-2 { .custom-col-2 {
text-align: center; text-align: center;
width: 17%; width: 80px;
margin-left: 1%; padding-left: 10px;
&>button {
padding: 7px 10px;
margin-bottom: 10px;
}
} }
} }
} }
......
...@@ -546,94 +546,6 @@ hr[size="10"] { ...@@ -546,94 +546,6 @@ hr[size="10"] {
border-bottom-color: #000; border-bottom-color: #000;
} }
td.searchTableName:hover {
.isIncomplete {
&.show.search-result-page {
i {
left: 7px;
}
}
}
}
.globalsearchImgItem.isIncomplete {
display: inline-block !important;
position: relative;
i.fa {
left: 10px;
top: 7px;
font-size: 12px;
}
}
.isIncomplete {
&.show {
img {
opacity: .2;
//animation: blink 2.5s infinite;
}
i.fa {
display: block;
}
.entity-icon-box {
background: none;
i.fa {
top: 27px;
font-size: 18px;
}
}
foreignObject {
display: block;
i.fa {
font-size: 15px;
top: 17px;
left: 18.5px;
}
}
image,
circle {
opacity: 0.2;
//animation: blink 2.5s infinite;
}
&.search-result-page {
position: relative;
i {
left: 13px;
font-size: 9px;
top: 5px;
}
}
}
foreignObject {
display: none;
}
i.fa {
color: #898989;
display: none;
text-align: center;
font-size: 16px;
top: 0;
position: absolute;
z-index: 1;
left: calc(50% - 8px);
}
}
.dropdown-menu.multi-level { .dropdown-menu.multi-level {
.dropdown-submenu { .dropdown-submenu {
position: relative; position: relative;
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
<i class="fa fa-refresh fa-spin-custom"></i> <i class="fa fa-refresh fa-spin-custom"></i>
</div> </div>
<div class="entityDetail form-horizontal col-sm-12"> <div class="entityDetail form-horizontal col-sm-12">
<h1 class="title isIncomplete"> <h1 class="title">
<div data-id="entityIcon" class="entity-icon-box position-relative"></div> <div data-id="entityIcon" class="entity-icon-box position-relative"></div>
<span data-id="title"></span> <span data-id="title"></span>
</h1> {{#if entityUpdate}} </h1> {{#if entityUpdate}}
......
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
* limitations under the License. * limitations under the License.
--> -->
{{#ifCond model "has" "isNew"}} {{#ifCond model "has" "isNew"}}
<table class="custom-table" style="font-weight: 100;"> <table class="custom-table bm-create" style="font-weight: 100;">
<tr class="custom-tr"> <tr class="custom-tr">
<td class="custom-col-1"> <td class="custom-col-1">
{{{callmyfunction getBusinessMetadataDroupdown businessMetadataCollection}}} {{{callmyfunction getBusinessMetadataDroupdown businessMetadataCollection}}}
......
...@@ -139,7 +139,6 @@ ...@@ -139,7 +139,6 @@
</div> </div>
<div class="legends pull-left" style="height: 25px; padding: 2px;"> <div class="legends pull-left" style="height: 25px; padding: 2px;">
<span style="margin-right: 8px; color:#fb4200;"><i class="fa fa-circle-o fa-fw"></i>Current Entity</span> <span style="margin-right: 8px; color:#fb4200;"><i class="fa fa-circle-o fa-fw"></i>Current Entity</span>
<span style="margin-right: 8px;"><i class="fa fa-hourglass-half fa-fw"></i>In Progress</span>
<span style="margin-right: 8px; color:#df9b00;"><i class="fa fa-long-arrow-right fa-fw"></i>Lineage</span> <span style="margin-right: 8px; color:#df9b00;"><i class="fa fa-long-arrow-right fa-fw"></i>Lineage</span>
<span style="margin-right: 8px; color:#fb4200;"><i class="fa fa-long-arrow-right fa-fw"></i>Impact</span> <span style="margin-right: 8px; color:#fb4200;"><i class="fa fa-long-arrow-right fa-fw"></i>Impact</span>
</div> </div>
......
...@@ -221,9 +221,9 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum ...@@ -221,9 +221,9 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
tempLink += '<div data-id="' + fetchId + '"><div class="value-loader"></div></div>'; tempLink += '<div data-id="' + fetchId + '"><div class="value-loader"></div></div>';
} else { } else {
if (inputOutputField.typeName == "AtlasGlossaryTerm") { if (inputOutputField.typeName == "AtlasGlossaryTerm") {
tempLink += '<a href="#!/glossary/' + id + '?guid=' + id + '&gType=term&viewType=term&fromView=entity">' + getValue(name) + '</a>' tempLink += '<a href="#!/glossary/' + id + '?guid=' + id + '&gType=term&viewType=term&fromView=entity">' + name + '</a>'
} else { } else {
tempLink += '<a href="#!/detailPage/' + id + '">' + getValue(name) + '</a>' tempLink += '<a href="#!/detailPage/' + id + '">' + name + '</a>'
} }
} }
} }
...@@ -254,7 +254,6 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum ...@@ -254,7 +254,6 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
valueObjectKeysList = _.sortBy(valueObjectKeysList); valueObjectKeysList = _.sortBy(valueObjectKeysList);
} }
valueObjectKeysList.map(function(key) { valueObjectKeysList.map(function(key) {
key = _.escape(key);
if (key == "profileData") { if (key == "profileData") {
return; return;
} }
...@@ -276,8 +275,6 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum ...@@ -276,8 +275,6 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
var val = ""; var val = "";
if (_.isObject(valueObject[key])) { if (_.isObject(valueObject[key])) {
val = keyValue val = keyValue
} else if (Utils.isUrl(keyValue)) {
val = '<a target="_blank" class="blue-link" href="' + _.escape(keyValue) + '">' + getValue(keyValue) + '</a>';
} else if (key === 'guid' || key === "__guid") { } else if (key === 'guid' || key === "__guid") {
if (options.fromAdminAudit) { if (options.fromAdminAudit) {
val = getValue(keyValue); val = getValue(keyValue);
...@@ -322,9 +319,9 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum ...@@ -322,9 +319,9 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
var className = "btn btn-action btn-sm btn-blue btn-icon", var className = "btn btn-action btn-sm btn-blue btn-icon",
deleteIcon = ""; deleteIcon = "";
if (obj.guid === tag.entityGuid) { if (obj.guid === tag.entityGuid) {
deleteIcon = '<i class="fa fa-times" data-id="delete" data-assetname="' + entityName + '"data-name="' + tag.typeName + '" data-type="tag" data-guid="' + obj.guid + '" ></i>'; deleteIcon = '<i class="fa fa-times" data-id="delete" data-assetname="' + entityName + '" data-name="' + tag.typeName + '" data-type="tag" data-guid="' + obj.guid + '" ></i>';
} else if (obj.guid !== tag.entityGuid && tag.entityStatus === "DELETED") { } else if (obj.guid !== tag.entityGuid && tag.entityStatus === "DELETED") {
deleteIcon = '<i class="fa fa-times" data-id="delete" data-assetname="' + entityName + '"data-name="' + tag.typeName + '" data-type="tag" data-entityguid="' + tag.entityGuid + '" data-guid="' + obj.guid + '" ></i>'; deleteIcon = '<i class="fa fa-times" data-id="delete" data-assetname="' + entityName + '" data-name="' + tag.typeName + '" data-type="tag" data-entityguid="' + tag.entityGuid + '" data-guid="' + obj.guid + '" ></i>';
} else { } else {
className += " propagte-classification"; className += " propagte-classification";
} }
...@@ -358,9 +355,10 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum ...@@ -358,9 +355,10 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
entityName = Utils.getName(obj); entityName = Utils.getName(obj);
if (terms) { if (terms) {
terms.map(function(term) { terms.map(function(term) {
var displayText = _.escape(term.displayText);
var className = "btn btn-action btn-sm btn-blue btn-icon", var className = "btn btn-action btn-sm btn-blue btn-icon",
deleteIcon = '<i class="fa fa-times" data-id="delete" data-assetname="' + entityName + '"data-name="' + term.displayText + '" data-type="term" data-guid="' + obj.guid + '" data-termGuid="' + term.termGuid + '" ></i>', deleteIcon = '<i class="fa fa-times" data-id="delete" data-assetname="' + entityName + '" data-name="' + displayText + '" data-type="term" data-guid="' + obj.guid + '" data-termGuid="' + term.termGuid + '" ></i>',
termString = '<a class="' + className + '" data-id="termClick"><span title="' + _.escape(term.displayText) + '">' + _.escape(term.displayText) + '</span>' + deleteIcon + '</a>'; termString = '<a class="' + className + '" data-id="termClick"><span title="' + displayText + '">' + displayText + '</span>' + deleteIcon + '</a>';
if (count >= 1) { if (count >= 1) {
popTerm += termString; popTerm += termString;
} else { } else {
......
...@@ -233,8 +233,8 @@ define(['require', ...@@ -233,8 +233,8 @@ define(['require',
selectedEnumValues = selectedEnum ? selectedEnum.get('elementDefs') : null, selectedEnumValues = selectedEnum ? selectedEnum.get('elementDefs') : null,
savedValues = []; savedValues = [];
_.each(selectedEnumValues, function(enumVal, index) { _.each(selectedEnumValues, function(enumVal, index) {
selectedValues.push(_.unescape(enumVal.value)); selectedValues.push(enumVal.value);
enumValues += "<option>" + enumVal.value + "</option>"; enumValues += "<option>" + _.escape(enumVal.value) + "</option>";
}); });
this.ui.enumValueSelector.empty(); this.ui.enumValueSelector.empty();
this.ui.enumValueSelector.append(enumValues); this.ui.enumValueSelector.append(enumValues);
......
...@@ -53,7 +53,7 @@ define(['require', ...@@ -53,7 +53,7 @@ define(['require',
renderDetail: function() { renderDetail: function() {
this.ui.title.html('<span>' + this.model.get('name') + '</span>'); this.ui.title.html('<span>' + this.model.get('name') + '</span>');
if (this.model.get('description')) { if (this.model.get('description')) {
this.ui.description.text((this.model.get('description'))); this.ui.description.text(this.model.get('description'));
} }
}, },
onDestroy: function() { onDestroy: function() {
......
...@@ -296,7 +296,7 @@ define(['require', ...@@ -296,7 +296,7 @@ define(['require',
editable: false, editable: false,
formatter: _.extend({}, Backgrid.CellFormatter.prototype, { formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
fromRaw: function(rawValue, model) { fromRaw: function(rawValue, model) {
return model.get('description'); return _.escape(model.get('description'));
} }
}) })
}, },
...@@ -351,7 +351,7 @@ define(['require', ...@@ -351,7 +351,7 @@ define(['require',
editable: false, editable: false,
formatter: _.extend({}, Backgrid.CellFormatter.prototype, { formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
fromRaw: function(rawValue, model) { fromRaw: function(rawValue, model) {
return "<button type='button' data-id='addAttribute' data-guid='" + model.get('guid') + "'' title='' class='btn btn-action btn-sm ' style='margin-bottom: 10px;' data-action='createAttr' data-original-title='Add Business Metadata attribute'><i class='fa fa-plus'></i> Attributes</button>"; return "<button type='button' data-id='addAttribute' data-guid='" + model.get('guid') + "' class='btn btn-action btn-sm' style='margin-bottom: 10px;' data-action='createAttr' data-original-title='Add Business Metadata attribute'><i class='fa fa-plus'></i> Attributes</button>";
} }
}) })
} }
......
...@@ -223,7 +223,7 @@ define(['require', ...@@ -223,7 +223,7 @@ define(['require',
}; };
this.loaderStatus(true); this.loaderStatus(true);
var name = this.ui.name.val(), var name = this.ui.name.val(),
description = _.escape(this.ui.description.val()); description = this.ui.description.val();
var attributeObj = this.collection.toJSON(); var attributeObj = this.collection.toJSON();
if (this.collection.length === 1 && this.collection.first().get("name") === "") { if (this.collection.length === 1 && this.collection.first().get("name") === "") {
attributeObj = []; attributeObj = [];
......
...@@ -104,8 +104,8 @@ define(["require", "backbone", "hbs!tmpl/business_metadata/EnumCreateUpdateItemV ...@@ -104,8 +104,8 @@ define(["require", "backbone", "hbs!tmpl/business_metadata/EnumCreateUpdateItemV
selectedEnum = this.enumDefCollection.fullCollection.findWhere({ name: enumName }), selectedEnum = this.enumDefCollection.fullCollection.findWhere({ name: enumName }),
selectedEnumValues = selectedEnum ? selectedEnum.get("elementDefs") : null; selectedEnumValues = selectedEnum ? selectedEnum.get("elementDefs") : null;
_.each(selectedEnumValues, function(enumVal, index) { _.each(selectedEnumValues, function(enumVal, index) {
selectedValues.push(_.unescape(enumVal.value)); selectedValues.push(enumVal.value);
enumValues += "<option>" + enumVal.value + "</option>"; enumValues += "<option>" + _.escape(enumVal.value) + "</option>";
}); });
this.ui.enumCancleBtn.removeAttr("disabled"); this.ui.enumCancleBtn.removeAttr("disabled");
...@@ -197,7 +197,7 @@ define(["require", "backbone", "hbs!tmpl/business_metadata/EnumCreateUpdateItemV ...@@ -197,7 +197,7 @@ define(["require", "backbone", "hbs!tmpl/business_metadata/EnumCreateUpdateItemV
_.each(selectedEnumValues, function(inputEnumVal, index) { _.each(selectedEnumValues, function(inputEnumVal, index) {
elementValues.push({ elementValues.push({
ordinal: index + 1, ordinal: index + 1,
value: _.escape(inputEnumVal) value: inputEnumVal
}); });
}); });
......
...@@ -202,10 +202,7 @@ define(['require', ...@@ -202,10 +202,7 @@ define(['require',
} else { } else {
this.ui.entityIcon.removeClass('disabled'); this.ui.entityIcon.removeClass('disabled');
} }
if (collectionJSON.isIncomplete === true) { this.ui.entityIcon.attr('title', _.escape(collectionJSON.typeName)).html('<img src="' + Utils.getEntityIconPath({ entityData: entityData }) + '"/>').find("img").on('error', function() {
this.$(".isIncomplete").addClass("show");
}
this.ui.entityIcon.attr('title', _.escape(collectionJSON.typeName)).html('<img src="' + Utils.getEntityIconPath({ entityData: entityData }) + '"/><i class="fa fa-hourglass-half"></i>').find("img").on('error', function() {
this.src = Utils.getEntityIconPath({ entityData: entityData, errorUrl: this.src }); this.src = Utils.getEntityIconPath({ entityData: entityData, errorUrl: this.src });
}); });
} else { } else {
...@@ -378,7 +375,7 @@ define(['require', ...@@ -378,7 +375,7 @@ define(['require',
CommonViewFunction.deleteTag(_.extend({}, { CommonViewFunction.deleteTag(_.extend({}, {
guid: that.id, guid: that.id,
associatedGuid: that.id != entityGuid ? entityGuid : null, associatedGuid: that.id != entityGuid ? entityGuid : null,
msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from" + " " + "<b>" + this.name + "?</b></div>", msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from <b>" + this.name + "?</b></div>",
titleMessage: Messages.removeTag, titleMessage: Messages.removeTag,
okText: "Remove", okText: "Remove",
showLoader: that.showLoader.bind(that), showLoader: that.showLoader.bind(that),
...@@ -405,7 +402,7 @@ define(['require', ...@@ -405,7 +402,7 @@ define(['require',
relationshipGuid: termObj.relationshipGuid relationshipGuid: termObj.relationshipGuid
}, },
collection: that.glossaryCollection, collection: that.glossaryCollection,
msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(termName) + "</b> assignment from" + " " + "<b>" + this.name + "?</b></div>", msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(termName) + "</b> assignment from <b>" + this.name + "?</b></div>",
titleMessage: Messages.glossary.removeTermfromEntity, titleMessage: Messages.glossary.removeTermfromEntity,
isEntityView: true, isEntityView: true,
buttonText: "Remove", buttonText: "Remove",
...@@ -428,11 +425,11 @@ define(['require', ...@@ -428,11 +425,11 @@ define(['require',
val.entityGuid === that.id ? tag['self'].push(val) : tag['propagated'].push(val); val.entityGuid === that.id ? tag['self'].push(val) : tag['propagated'].push(val);
}); });
_.each(tag.self, function(val) { _.each(tag.self, function(val) {
tagData += '<span class="btn btn-action btn-sm btn-icon btn-blue" data-id="tagClick"><span title=' + val.typeName + ' >' + val.typeName + '</span><i class="fa fa-close" data-id="deleteTag" data-type="tag" title="Remove Classification"></i></span>'; tagData += '<span class="btn btn-action btn-sm btn-icon btn-blue" data-id="tagClick"><span>' + val.typeName + '</span><i class="fa fa-close" data-id="deleteTag" data-type="tag" title="Remove Classification"></i></span>';
}); });
_.each(tag.propagated, function(val) { _.each(tag.propagated, function(val) {
var crossButton = '<i class="fa fa-close" data-id="deleteTag" data-entityguid="' + val.entityGuid + '" data-type="tag" title="Remove Classification"></i>'; var crossButton = '<i class="fa fa-close" data-id="deleteTag" data-entityguid="' + val.entityGuid + '" data-type="tag" title="Remove Classification"></i>';
propagatedTagListData += '<span class="btn btn-action btn-sm btn-icon btn-blue" title=' + val.typeName + ' data-id="tagClick"><span>' + val.typeName + '</span>' + ((that.id !== val.entityGuid && val.entityStatus === "DELETED") ? crossButton : "") + '</span>'; propagatedTagListData += '<span class="btn btn-action btn-sm btn-icon btn-blue" data-id="tagClick"><span>' + val.typeName + '</span>' + ((that.id !== val.entityGuid && val.entityStatus === "DELETED") ? crossButton : "") + '</span>';
}); });
propagatedTagListData !== "" ? this.ui.propagatedTagDiv.show() : this.ui.propagatedTagDiv.hide(); propagatedTagListData !== "" ? this.ui.propagatedTagDiv.show() : this.ui.propagatedTagDiv.hide();
this.ui.tagList.find("span.btn").remove(); this.ui.tagList.find("span.btn").remove();
...@@ -445,9 +442,7 @@ define(['require', ...@@ -445,9 +442,7 @@ define(['require',
var that = this, var that = this,
termData = ""; termData = "";
_.each(data, function(val) { _.each(data, function(val) {
// if (val.relationshipStatus == "ACTIVE") { termData += '<span class="btn btn-action btn-sm btn-icon btn-blue" data-id="termClick"><span>' + _.escape(val.displayText) + '</span><i class="' + (val.relationshipStatus == "ACTIVE" ? 'fa fa-close' : "") + '" data-id="deleteTerm" data-guid="' + val.guid + '" data-type="term" title="Remove Term"></i></span>';
termData += '<span class="btn btn-action btn-sm btn-icon btn-blue" data-id="termClick"><span title=' + _.escape(val.displayText) + '>' + _.escape(val.displayText) + '</span><i class="' + (val.relationshipStatus == "ACTIVE" ? 'fa fa-close' : "") + '" data-id="deleteTerm" data-guid="' + val.guid + '" data-type="term" title="Remove Term"></i></span>';
// }
}); });
this.ui.termList.find("span.btn").remove(); this.ui.termList.find("span.btn").remove();
this.ui.termList.prepend(termData); this.ui.termList.prepend(termData);
......
...@@ -513,7 +513,7 @@ define(['require', ...@@ -513,7 +513,7 @@ define(['require',
}, },
getSelect: function(object) { getSelect: function(object) {
var value = object.value, var value = object.value,
entityValue = object.entityValue, entityValue = _.escape(object.entityValue),
isAttribute = object.isAttribute, isAttribute = object.isAttribute,
isRelation = object.isRelation; isRelation = object.isRelation;
if (value.typeName === "boolean") { if (value.typeName === "boolean") {
...@@ -543,7 +543,7 @@ define(['require', ...@@ -543,7 +543,7 @@ define(['require',
}, },
getTextArea: function(object) { getTextArea: function(object) {
var value = object.value, var value = object.value,
setValue = object.entityValue, setValue = _.escape(object.entityValue),
isAttribute = object.isAttribute, isAttribute = object.isAttribute,
isRelation = object.isRelation, isRelation = object.isRelation,
structType = object.structType; structType = object.structType;
...@@ -567,7 +567,7 @@ define(['require', ...@@ -567,7 +567,7 @@ define(['require',
}, },
getInput: function(object) { getInput: function(object) {
var value = object.value, var value = object.value,
entityValue = object.entityValue, entityValue = _.escape(object.entityValue),
isAttribute = object.isAttribute, isAttribute = object.isAttribute,
isRelation = object.isRelation; isRelation = object.isRelation;
return '<input class="form-control entityInputBox ' + (value.isOptional === true ? "false" : "true") + '"' + return '<input class="form-control entityInputBox ' + (value.isOptional === true ? "false" : "true") + '"' +
......
...@@ -153,7 +153,8 @@ define(['require', ...@@ -153,7 +153,8 @@ define(['require',
val = options.val.value, val = options.val.value,
isMultiValued = typeName && typeName.indexOf("array<") === 0, isMultiValued = typeName && typeName.indexOf("array<") === 0,
businessMetadata = options.businessMetadata, businessMetadata = options.businessMetadata,
allowOnlyNum = false; allowOnlyNum = false,
isEnum = false;
var elType = isMultiValued ? "select" : "input"; var elType = isMultiValued ? "select" : "input";
if (!isMultiValued && !_.isEmpty(val)) { if (!isMultiValued && !_.isEmpty(val)) {
val = _.escape(val); val = _.escape(val);
...@@ -175,7 +176,7 @@ define(['require', ...@@ -175,7 +176,7 @@ define(['require',
} }
} }
if (typeName.indexOf("string") > -1) { if (typeName.indexOf("string") > -1) {
returnEL = '<' + elType + ' type="text" data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '" data-multi="' + isMultiValued + '" data-tags="true" placeholder="Enter String" class="form-control" ' + (!_.isUndefinedNull(val) ? 'value="' + val + '"' : "") + '></' + elType + '>'; returnEL = '<' + elType + ' type="text" data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '" data-multi="' + isMultiValued + '" data-tags="true" placeholder="Enter String" class="form-control" ' + (isMultiValued === false && !_.isUndefinedNull(val) ? 'value="' + val + '"' : "") + '></' + elType + '>';
} else if (typeName.indexOf("boolean") > -1) { } else if (typeName.indexOf("boolean") > -1) {
returnEL = '<select data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '" data-multi="' + isMultiValued + '" class="form-control">' + (isMultiValued ? "" : '<option value="">--Select Value--</option>') + '<option value="true" ' + (!_.isUndefinedNull(val) && val == "true" ? "selected" : "") + '>true</option><option value="false" ' + (!_.isUndefinedNull(val) && val == "false" ? "selected" : "") + '>false</option></select>'; returnEL = '<select data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '" data-multi="' + isMultiValued + '" class="form-control">' + (isMultiValued ? "" : '<option value="">--Select Value--</option>') + '<option value="true" ' + (!_.isUndefinedNull(val) && val == "true" ? "selected" : "") + '>true</option><option value="false" ' + (!_.isUndefinedNull(val) && val == "false" ? "selected" : "") + '>false</option></select>';
} else if (typeName.indexOf("date") > -1) { } else if (typeName.indexOf("date") > -1) {
...@@ -198,6 +199,7 @@ define(['require', ...@@ -198,6 +199,7 @@ define(['require',
allowOnlyNum = true; allowOnlyNum = true;
returnEL = '<' + elType + ' data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '" type="number" data-multi="' + isMultiValued + '" data-tags="true" placeholder="Enter Number" class="form-control" ' + (!_.isUndefinedNull(val) ? 'value="' + val + '"' : "") + '></' + elType + '>'; returnEL = '<' + elType + ' data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '" type="number" data-multi="' + isMultiValued + '" data-tags="true" placeholder="Enter Number" class="form-control" ' + (!_.isUndefinedNull(val) ? 'value="' + val + '"' : "") + '></' + elType + '>';
} else if (typeName) { } else if (typeName) {
isEnum = true;
var modTypeName = typeName; var modTypeName = typeName;
if (isMultiValued) { if (isMultiValued) {
var multipleType = typeName.match("array<(.*)>"); var multipleType = typeName.match("array<(.*)>");
...@@ -209,30 +211,31 @@ define(['require', ...@@ -209,30 +211,31 @@ define(['require',
if (foundEnumType) { if (foundEnumType) {
var enumOptions = ""; var enumOptions = "";
_.forEach(foundEnumType.get("elementDefs"), function(obj) { _.forEach(foundEnumType.get("elementDefs"), function(obj) {
enumOptions += '<option value="' + obj.value + '">' + obj.value + '</option>' enumOptions += '<option value="' + _.escape(obj.value) + '">' + _.escape(obj.value) + '</option>'
}); });
returnEL = '<select data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '" data-multi="' + isMultiValued + '" >' + enumOptions + '</select>'; returnEL = '<select data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '" data-multi="' + isMultiValued + '" data-enum="true">' + enumOptions + '</select>';
} }
setTimeout(function() {
if (!isMultiValued) {
var selectEl = that.$el.find('.custom-col-1[data-id="value"] select[data-key="' + key + '"]');
selectEl.val((val || ""));
selectEl.select2();
}
}, 0);
} }
if (isMultiValued) { if (isEnum || elType === "select") {
setTimeout(function() { setTimeout(function() {
var selectEl = that.$el.find('.custom-col-1[data-id="value"] select[data-key="' + key + '"][data-multi="true"]'); var selectEl = that.$el.find('.custom-col-1[data-id="value"] select[data-key="' + key + '"]');
var data = val && val.length && (_.isArray(val) ? val : val.split(",")) || []; var data = [];
if (selectEl.data("multi")) {
data = val && val.length && (_.isArray(val) ? val : val.split(",")) || [];
} else {
data = _.unescape(val);
}
if (allowOnlyNum) { if (allowOnlyNum) {
selectEl.parent().addClass("select2_only_number"); selectEl.parent().addClass("select2_only_number");
} }
selectEl.select2({ var opt = {
tags: selectEl.data("tags") ? true : false, tags: selectEl.data("tags") ? true : false,
multiple: true, multiple: selectEl.data("multi")
data: data }
}); if (!selectEl.data("enum")) {
opt.data = data;
}
selectEl.select2(opt);
selectEl.val(data).trigger("change"); selectEl.val(data).trigger("change");
}, 0); }, 0);
} }
......
...@@ -25,9 +25,9 @@ define([ ...@@ -25,9 +25,9 @@ define([
"utils/Utils", "utils/Utils",
"utils/Messages", "utils/Messages",
"utils/CommonViewFunction", "utils/CommonViewFunction",
'utils/Globals', "moment",
'moment' "utils/Globals"
], function(require, Backbone, EntityBusinessMetaDataView_tmpl, EntityBusinessMetaDataItemView, VEntity, Utils, Messages, CommonViewFunction, Globals, moment) { ], function(require, Backbone, EntityBusinessMetaDataView_tmpl, EntityBusinessMetaDataItemView, VEntity, Utils, Messages, CommonViewFunction, moment, Globals) {
"use strict"; "use strict";
return Backbone.Marionette.CompositeView.extend({ return Backbone.Marionette.CompositeView.extend({
...@@ -237,7 +237,7 @@ define([ ...@@ -237,7 +237,7 @@ define([
} }
} }
attrLi += "<tr><td>" + _.escape(key) + " (" + _.escape(val.typeName) + ")</td><td>" + _.escape(newVal) + "</td></tr>"; attrLi += "<tr><td class='business-metadata-detail-attr-key'>" + _.escape(key) + " (" + _.escape(val.typeName) + ")</td><td>" + _.escape(newVal) + "</td></tr>";
} }
}); });
li += that.associateAttributePanel(obj, attrLi); li += that.associateAttributePanel(obj, attrLi);
...@@ -250,7 +250,7 @@ define([ ...@@ -250,7 +250,7 @@ define([
}, },
associateAttributePanel: function(obj, tableBody) { associateAttributePanel: function(obj, tableBody) {
return '<div class="panel panel-default custom-panel expand_collapse_panel-icon no-border business-metadata-detail-attr">' + return '<div class="panel panel-default custom-panel expand_collapse_panel-icon no-border business-metadata-detail-attr">' +
'<div class="panel-heading" data-toggle="collapse" href="#' + _.escape(obj.get("__internal_UI_businessMetadataName")) + '" aria-expanded="true" style="width: 70%;">' + '<div class="panel-heading" data-toggle="collapse" href="#' + _.escape(obj.get("__internal_UI_businessMetadataName")) + '" aria-expanded="true" style="width: 90%;">' +
'<h4 class="panel-title"> <a>' + _.escape(obj.get("__internal_UI_businessMetadataName")) + '</a></h4>' + '<h4 class="panel-title"> <a>' + _.escape(obj.get("__internal_UI_businessMetadataName")) + '</a></h4>' +
'<div class="btn-group pull-left"> <button type="button" title="Collapse"><i class="ec-icon fa"></i></button></div>' + '<div class="btn-group pull-left"> <button type="button" title="Collapse"><i class="ec-icon fa"></i></button></div>' +
'</div>' + '</div>' +
......
...@@ -72,7 +72,7 @@ define(['require', ...@@ -72,7 +72,7 @@ define(['require',
populateLabelOptions: function() { populateLabelOptions: function() {
var that = this, var that = this,
str = this.labels.map(function(label) { str = this.labels.map(function(label) {
return "<option selected > " + label + " </option>"; return "<option selected > " + _.escape(label) + " </option>";
}); });
this.ui.addLabelOptions.html(str); this.ui.addLabelOptions.html(str);
var getLabelData = function(data, selectedData) { var getLabelData = function(data, selectedData) {
...@@ -104,7 +104,7 @@ define(['require', ...@@ -104,7 +104,7 @@ define(['require',
delay: 250, delay: 250,
data: function(params) { data: function(params) {
return { return {
prefixString: _.escape(params.term), // search term prefixString: params.term, // search term
fieldName: '__labels' fieldName: '__labels'
}; };
}, },
...@@ -131,7 +131,7 @@ define(['require', ...@@ -131,7 +131,7 @@ define(['require',
} }
}, },
onChangeLabelChange: function() { onChangeLabelChange: function() {
this.labels = this.ui.addLabelOptions.val().map(function(v) { return _.escape(v) }); this.labels = this.ui.addLabelOptions.val();
}, },
handleBtnClick: function() { handleBtnClick: function() {
this.swapItem = !this.swapItem; this.swapItem = !this.swapItem;
......
...@@ -99,7 +99,7 @@ define(['require', ...@@ -99,7 +99,7 @@ define(['require',
var el = e.currentTarget; var el = e.currentTarget;
this.handleCharSupport(el); this.handleCharSupport(el);
if (!el.value.trim().includes(':')) { if (!el.value.trim().includes(':')) {
this.items[el.dataset.index].value = _.escape(el.value.trim()); this.items[el.dataset.index].value = el.value.trim();
} }
}, },
handleCharSupport: function(el) { handleCharSupport: function(el) {
......
...@@ -281,7 +281,7 @@ define(['require', ...@@ -281,7 +281,7 @@ define(['require',
categories = ""; categories = "";
_.each(data, function(val) { _.each(data, function(val) {
var name = _.escape(val.displayText); var name = _.escape(val.displayText);
categories += '<span data-guid="' + val.categoryGuid + '"" class="btn btn-action btn-sm btn-icon btn-blue" data-id="categoryClick"><span title=' + name + '>' + name + '</span><i class="fa fa-close" data-id="removeCategory" data-type="category" title="Remove Category"></i></span>'; categories += '<span data-guid="' + val.categoryGuid + '" class="btn btn-action btn-sm btn-icon btn-blue" data-id="categoryClick"><span>' + name + '</span><i class="fa fa-close" data-id="removeCategory" data-type="category" title="Remove Category"></i></span>';
}); });
this.ui.categoryList.find("span.btn").remove(); this.ui.categoryList.find("span.btn").remove();
this.ui.categoryList.prepend(categories); this.ui.categoryList.prepend(categories);
...@@ -291,7 +291,7 @@ define(['require', ...@@ -291,7 +291,7 @@ define(['require',
terms = ""; terms = "";
_.each(data, function(val) { _.each(data, function(val) {
var name = _.escape(val.displayText); var name = _.escape(val.displayText);
terms += '<span data-guid="' + val.termGuid + '"" class="btn btn-action btn-sm btn-icon btn-blue" data-id="termClick"><span title=' + name + '>' + name + '</span><i class="fa fa-close" data-id="removeTerm" data-type="term" title="Remove Term"></i></span>'; terms += '<span data-guid="' + val.termGuid + '" class="btn btn-action btn-sm btn-icon btn-blue" data-id="termClick"><span>' + name + '</span><i class="fa fa-close" data-id="removeTerm" data-type="term" title="Remove Term"></i></span>';
}); });
this.ui.termList.find("span.btn").remove(); this.ui.termList.find("span.btn").remove();
this.ui.termList.prepend(terms); this.ui.termList.prepend(terms);
...@@ -301,7 +301,7 @@ define(['require', ...@@ -301,7 +301,7 @@ define(['require',
var that = this, var that = this,
tagData = ""; tagData = "";
_.each(tagObject, function(val) { _.each(tagObject, function(val) {
tagData += '<span class="btn btn-action btn-sm btn-icon btn-blue" data-id="tagClickTerm"><span title=' + val.typeName + '>' + val.typeName + '</span><i class="fa fa-close" data-id="removeTagTerm" data-type="tag" title="Remove Classification"></i></span>'; tagData += '<span class="btn btn-action btn-sm btn-icon btn-blue" data-id="tagClickTerm"><span>' + val.typeName + '</span><i class="fa fa-close" data-id="removeTagTerm" data-type="tag" title="Remove Classification"></i></span>';
}); });
this.ui.tagList.find("span.btn").remove(); this.ui.tagList.find("span.btn").remove();
this.ui.tagList.prepend(tagData); this.ui.tagList.prepend(tagData);
...@@ -389,7 +389,7 @@ define(['require', ...@@ -389,7 +389,7 @@ define(['require',
tagName = $(e.currentTarget).text(), tagName = $(e.currentTarget).text(),
termName = this.data.name; termName = this.data.name;
CommonViewFunction.deleteTag(_.extend({}, { CommonViewFunction.deleteTag(_.extend({}, {
msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from" + " " + "<b>" + _.escape(termName) + "?</b></div>", msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from <b>" + _.escape(termName) + "?</b></div>",
titleMessage: Messages.removeTag, titleMessage: Messages.removeTag,
okText: "Remove", okText: "Remove",
showLoader: that.showLoader.bind(that), showLoader: that.showLoader.bind(that),
...@@ -410,7 +410,7 @@ define(['require', ...@@ -410,7 +410,7 @@ define(['require',
selectedGuid: guid, selectedGuid: guid,
model: that.data, model: that.data,
collection: that.glossaryCollection, collection: that.glossaryCollection,
msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(name) + "</b> assignment from" + " " + "<b>" + _.escape(that.data.name) + "?</b></div>", msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(name) + "</b> assignment from <b>" + _.escape(that.data.name) + "?</b></div>",
titleMessage: Messages.glossary[that.isTermView ? "removeCategoryfromTerm" : "removeTermfromCategory"], titleMessage: Messages.glossary[that.isTermView ? "removeCategoryfromTerm" : "removeTermfromCategory"],
isCategoryView: that.isCategoryView, isCategoryView: that.isCategoryView,
isTermView: that.isTermView, isTermView: that.isTermView,
...@@ -433,7 +433,7 @@ define(['require', ...@@ -433,7 +433,7 @@ define(['require',
require(['views/tag/TagDetailTableLayoutView'], function(TagDetailTableLayoutView) { require(['views/tag/TagDetailTableLayoutView'], function(TagDetailTableLayoutView) {
if (that.RTagTableLayoutView) { if (that.RTagTableLayoutView) {
that.RTagTableLayoutView.show(new TagDetailTableLayoutView(_.extend({}, options, { that.RTagTableLayoutView.show(new TagDetailTableLayoutView(_.extend({}, options, {
"entityName": that.ui.title.text(), "entityName": _.escape(that.ui.title.text()),
"fetchCollection": that.getData.bind(that), "fetchCollection": that.getData.bind(that),
"entity": that.data "entity": that.data
}))); })));
......
...@@ -85,7 +85,7 @@ define(['require', ...@@ -85,7 +85,7 @@ define(['require',
}; };
events["click " + this.ui.importGlossary] = 'onClickImportGlossary'; events["click " + this.ui.importGlossary] = 'onClickImportGlossary';
events["keyup " + this.ui.searchTerm] = function() { events["keyup " + this.ui.searchTerm] = function() {
this.ui.termTree.jstree("search", this.ui.searchTerm.val()); this.ui.termTree.jstree("search", _.escape(this.ui.searchTerm.val()));
}; };
events["keyup " + this.ui.searchCategory] = function() { events["keyup " + this.ui.searchCategory] = function() {
this.ui.categoryTree.jstree("search", this.ui.searchCategory.val()); this.ui.categoryTree.jstree("search", this.ui.searchCategory.val());
......
...@@ -231,7 +231,7 @@ define(['require', ...@@ -231,7 +231,7 @@ define(['require',
getTerms: function(key) { getTerms: function(key) {
var terms = _.map(that.data[key], function(obj) { var terms = _.map(that.data[key], function(obj) {
var name = _.escape(obj.displayText); var name = _.escape(obj.displayText);
return '<span data-guid="' + obj.termGuid + '" class="btn btn-action btn-sm btn-icon btn-blue" title=' + _.escape(name) + ' data-id="termClick"><span>' + name + '</span><i class="fa fa-close" data-id="deleteAttribute" data-attributename="' + key + '" data-termguid="' + obj.termGuid + '" data-type="term" title="Remove Term"></i></span>'; return '<span data-guid="' + obj.termGuid + '" class="btn btn-action btn-sm btn-icon btn-blue" data-id="termClick"><span>' + name + '</span><i class="fa fa-close" data-id="deleteAttribute" data-attributename="' + key + '" data-termguid="' + obj.termGuid + '" data-type="term" title="Remove Term"></i></span>';
}).join(""), }).join(""),
attributeButtons = ""; attributeButtons = "";
if (terms.length) { if (terms.length) {
......
...@@ -326,18 +326,6 @@ define(['require', 'utils/Utils'], function(require, Utils) { ...@@ -326,18 +326,6 @@ define(['require', 'utils/Utils'], function(require, Utils) {
shapeSvg.attr("stroke", "#fb4200") shapeSvg.attr("stroke", "#fb4200")
} }
if (node.isIncomplete === true) {
parent.attr("class", "node isIncomplete show");
parent.insert("foreignObject")
.attr("x", "-25")
.attr("y", "-25")
.attr("width", "50")
.attr("height", "50")
.append("xhtml:div")
.insert("i")
.attr("class", "fa fa-hourglass-half");
}
if ($defs.select('pattern[id="img_' + imgName + '"]').empty()) { if ($defs.select('pattern[id="img_' + imgName + '"]').empty()) {
var $pattern = $defs.append("pattern") var $pattern = $defs.append("pattern")
.attr("x", "0%") .attr("x", "0%")
......
...@@ -151,7 +151,7 @@ define(['require', ...@@ -151,7 +151,7 @@ define(['require',
fromEntity = this.lineageData.guidEntityMap[obj.fromEntityId], fromEntity = this.lineageData.guidEntityMap[obj.fromEntityId],
toEntity = this.lineageData.guidEntityMap[obj.toEntityId]; toEntity = this.lineageData.guidEntityMap[obj.toEntityId];
if (fromEntity && toEntity) { if (fromEntity && toEntity) {
this.ui.edgeDetailName.html(fromEntity.displayText + " <span class='navigation-font'><i class='fa fa-long-arrow-right fa-color'></i></span> " + toEntity.displayText); this.ui.edgeDetailName.html(_.escape(fromEntity.displayText) + " <span class='navigation-font'><i class='fa fa-long-arrow-right fa-color'></i></span> " + _.escape(toEntity.displayText));
} }
if (obj && obj.relationshipId) { if (obj && obj.relationshipId) {
this.showLoader(); this.showLoader();
......
...@@ -142,12 +142,12 @@ define(['require', ...@@ -142,12 +142,12 @@ define(['require',
updateRelationshipDetails: function(options) { updateRelationshipDetails: function(options) {
var data = options.obj.value, var data = options.obj.value,
typeName = data.typeName || options.obj.name, typeName = data.typeName || options.obj.name,
searchString = options.searchString, searchString = _.escape(options.searchString),
listString = "", listString = "",
getEntityTypelist = function(options) { getEntityTypelist = function(options) {
var activeEntityColor = "#4a90e2", var activeEntityColor = "#4a90e2",
deletedEntityColor = "#BB5838", deletedEntityColor = "#BB5838",
entityTypeHtml = '', entityTypeHtml = '<pre>',
getdefault = function(obj) { getdefault = function(obj) {
var options = obj.options, var options = obj.options,
status = (Enums.entityStateReadOnly[options.entityStatus || options.status] ? " deleted-relation" : ''), status = (Enums.entityStateReadOnly[options.entityStatus || options.status] ? " deleted-relation" : ''),
...@@ -155,7 +155,6 @@ define(['require', ...@@ -155,7 +155,6 @@ define(['require',
entityColor = obj.color, entityColor = obj.color,
name = obj.name, name = obj.name,
typeName = options.typeName; typeName = options.typeName;
if (typeName === "AtlasGlossaryTerm") { if (typeName === "AtlasGlossaryTerm") {
return '<li class=' + status + '>' + return '<li class=' + status + '>' +
'<a style="color:' + entityColor + '" href="#!/glossary/' + guid + '?guid=' + guid + '&gType=term&viewType=term&fromView=entity">' + name + ' (' + typeName + ')</a>' + '<a style="color:' + entityColor + '" href="#!/glossary/' + guid + '?guid=' + guid + '&gType=term&viewType=term&fromView=entity">' + name + ' (' + typeName + ')</a>' +
...@@ -194,13 +193,13 @@ define(['require', ...@@ -194,13 +193,13 @@ define(['require',
entityTypeHtml = getdefault({ entityTypeHtml = getdefault({
"color": activeEntityColor, "color": activeEntityColor,
"options": options, "options": options,
"name": _.escape(name) "name": name
}); });
} else if (options.relationshipStatus == "DELETED") { } else if (options.relationshipStatus == "DELETED") {
entityTypeHtml = getWithButton({ entityTypeHtml = getWithButton({
"color": activeEntityColor, "color": activeEntityColor,
"options": options, "options": options,
"name": _.escape(name), "name": name,
"relationship": true "relationship": true
}) })
} }
...@@ -208,18 +207,17 @@ define(['require', ...@@ -208,18 +207,17 @@ define(['require',
entityTypeHtml = getWithButton({ entityTypeHtml = getWithButton({
"color": deletedEntityColor, "color": deletedEntityColor,
"options": options, "options": options,
"name": _.escape(name), "name": name,
"entity": true "entity": true
}) })
} else { } else {
entityTypeHtml = getdefault({ entityTypeHtml = getdefault({
"color": activeEntityColor, "color": activeEntityColor,
"options": options, "options": options,
"name": _.escape(name) "name": name
}); });
} }
return entityTypeHtml; return entityTypeHtml + '</pre>';
}; };
this.ui.searchNode.hide(); this.ui.searchNode.hide();
this.$("[data-id='typeName']").text(typeName); this.$("[data-id='typeName']").text(typeName);
......
...@@ -207,7 +207,7 @@ define(['require', ...@@ -207,7 +207,7 @@ define(['require',
className: "searchTableName", className: "searchTableName",
formatter: _.extend({}, Backgrid.CellFormatter.prototype, { formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
fromRaw: function(rawValue, model) { fromRaw: function(rawValue, model) {
var value = model.get('attributes')[key]; var value = _.escape(model.get('attributes')[key]);
if (key === "name" && model.get('guid')) { if (key === "name" && model.get('guid')) {
var nameHtml = '<a href="#!/detailPage/' + model.get('guid') + '">' + value + '</a>'; var nameHtml = '<a href="#!/detailPage/' + model.get('guid') + '">' + value + '</a>';
if (model.get('status') && Enums.entityStateReadOnly[model.get('status')]) { if (model.get('status') && Enums.entityStateReadOnly[model.get('status')]) {
...@@ -288,7 +288,7 @@ define(['require', ...@@ -288,7 +288,7 @@ define(['require',
CommonViewFunction.deleteTag({ CommonViewFunction.deleteTag({
tagName: tagName, tagName: tagName,
guid: guid, guid: guid,
msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from" + " " + "<b>" + assetName + " ?</b></div>", msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from <b>" + _.escape(assetName) + " ?</b></div>",
titleMessage: Messages.removeTag, titleMessage: Messages.removeTag,
okText: "Remove", okText: "Remove",
showLoader: that.showLoader.bind(that), showLoader: that.showLoader.bind(that),
......
...@@ -621,7 +621,7 @@ define(['require', ...@@ -621,7 +621,7 @@ define(['require',
_.each(dataList, function(obj) { _.each(dataList, function(obj) {
if (obj) { if (obj) {
if (obj.guid) { if (obj.guid) {
obj['id'] = Utils.getName(obj, 'qualifiedName'); obj['id'] = obj.attributes['qualifiedName'];
} }
foundOptions.push(obj); foundOptions.push(obj);
} }
...@@ -705,7 +705,7 @@ define(['require', ...@@ -705,7 +705,7 @@ define(['require',
} }
if (this.value.term) { if (this.value.term) {
this.ui.termLov.append('<option value="' + this.value.term + '" selected="selected">' + this.value.term + '</option>'); this.ui.termLov.append('<option value="' + _.escape(this.value.term) + '" selected="selected">' + _.escape(this.value.term) + '</option>');
} }
if (this.ui.termLov.data('select2')) { if (this.ui.termLov.data('select2')) {
if (this.ui.termLov.val() !== this.value.term) { if (this.ui.termLov.val() !== this.value.term) {
......
...@@ -710,12 +710,8 @@ define(['require', ...@@ -710,12 +710,8 @@ define(['require',
} }
}); });
} }
var img = "", var img = "";
isIncompleteClass = "isIncomplete search-result-page"; img = "<div><img data-imgGuid='" + obj.guid + "' class='searchTableLogoLoader'></div>";
if (obj.isIncomplete === true) {
isIncompleteClass += " show";
}
img = "<div class='" + isIncompleteClass + "'><img data-imgGuid='" + obj.guid + "' class='searchTableLogoLoader'><i class='fa fa-hourglass-half'></i></div>";
getImageData({ imagePath: Utils.getEntityIconPath({ entityData: obj }) }); getImageData({ imagePath: Utils.getEntityIconPath({ entityData: obj }) });
return (img + nameHtml); return (img + nameHtml);
} }
...@@ -879,7 +875,7 @@ define(['require', ...@@ -879,7 +875,7 @@ define(['require',
if (values[values.length - 1] === "") { values.pop(); } if (values[values.length - 1] === "") { values.pop(); }
if (values[0] === "") { values.shift(); } if (values[0] === "") { values.shift(); }
_.each(values, function(names) { _.each(values, function(names) {
valueOfArray.push('<span class="json-string"><a class="btn btn-action btn-sm btn-blue btn-icon" ><span title="" data-original-title="' + names + '" >' + names + '</span></a></span>'); valueOfArray.push('<span class="json-string"><a class="btn btn-action btn-sm btn-blue btn-icon" ><span>' + _.escape(names) + '</span></a></span>');
}); });
return valueOfArray.join(' '); return valueOfArray.join(' ');
} }
...@@ -889,7 +885,7 @@ define(['require', ...@@ -889,7 +885,7 @@ define(['require',
valueOfArray = []; valueOfArray = [];
if (customAttributes) { if (customAttributes) {
_.each(Object.keys(customAttributes), function(value, index) { _.each(Object.keys(customAttributes), function(value, index) {
valueOfArray.push('<span class="json-string"><a class="btn btn-action btn-sm btn-blue btn-icon" ><span title="" data-original-title="' + value + ' : ' + Object.values(customAttributes)[index] + '" ><span>' + value + '</span> : <span>' + Object.values(customAttributes)[index] + '</span></span></a></span>'); valueOfArray.push('<span class="json-string"><a class="btn btn-action btn-sm btn-blue btn-icon" ><span><span>' + _.escape(value) + '</span> : <span>' + _.escape(Object.values(customAttributes)[index]) + '</span></span></a></span>');
}); });
return valueOfArray.join(' '); return valueOfArray.join(' ');
} }
...@@ -949,7 +945,7 @@ define(['require', ...@@ -949,7 +945,7 @@ define(['require',
var modelObj = model.toJSON(); var modelObj = model.toJSON();
if (key == "name") { if (key == "name") {
var nameHtml = "", var nameHtml = "",
name = modelObj[key]; name = _.escape(modelObj[key]);
if (modelObj.guid) { if (modelObj.guid) {
nameHtml = '<a title="' + name + '" href="#!/detailPage/' + modelObj.guid + (that.fromView ? "?from=" + that.fromView : "") + '">' + name + '</a>'; nameHtml = '<a title="' + name + '" href="#!/detailPage/' + modelObj.guid + (that.fromView ? "?from=" + that.fromView : "") + '">' + name + '</a>';
} else { } else {
...@@ -1139,7 +1135,7 @@ define(['require', ...@@ -1139,7 +1135,7 @@ define(['require',
tagName: tagName, tagName: tagName,
guid: guid, guid: guid,
associatedGuid: guid != entityGuid ? entityGuid : null, associatedGuid: guid != entityGuid ? entityGuid : null,
msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from" + " " + "<b>" + assetName + " ?</b></div>", msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from <b>" + _.escape(assetName) + " ?</b></div>",
titleMessage: Messages.removeTag, titleMessage: Messages.removeTag,
okText: "Remove", okText: "Remove",
showLoader: that.showLoader.bind(that), showLoader: that.showLoader.bind(that),
...@@ -1166,7 +1162,7 @@ define(['require', ...@@ -1166,7 +1162,7 @@ define(['require',
relationshipGuid: termObj.relationGuid relationshipGuid: termObj.relationGuid
}, },
collection: that.glossaryCollection, collection: that.glossaryCollection,
msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(termName) + "</b> assignment from" + " " + "<b>" + assetname + "?</b></div>", msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(termName) + "</b> assignment from <b>" + _.escape(assetname) + "?</b></div>",
titleMessage: Messages.glossary.removeTermfromEntity, titleMessage: Messages.glossary.removeTermfromEntity,
isEntityView: true, isEntityView: true,
buttonText: "Remove", buttonText: "Remove",
......
...@@ -276,10 +276,9 @@ define(['require', ...@@ -276,10 +276,9 @@ define(['require',
} }
item.serviceType = Globals.serviceTypeMap[item.typeName]; item.serviceType = Globals.serviceTypeMap[item.typeName];
options.entityData = item; options.entityData = item;
var imgEl = $('<img src="' + Utils.getEntityIconPath(options) + '">').on("error", function(error, s) { var img = $('<img src="' + Utils.getEntityIconPath(options) + '">').on("error", function(error, s) {
this.src = Utils.getEntityIconPath(_.extend(options, { errorUrl: this.src })); this.src = Utils.getEntityIconPath(_.extend(options, { errorUrl: this.src }));
}); });
var img = $('<div class="globalsearchImgItem isIncomplete ' + (item.isIncomplete ? "show" : "") + '"><i class="fa fa-hourglass-half"></i><div>').prepend(imgEl);
var span = $("<span>" + (getHighlightedTerm(item.itemText)) + "</span>") var span = $("<span>" + (getHighlightedTerm(item.itemText)) + "</span>")
.prepend(img); .prepend(img);
li = $("<li class='with-icon'>") li = $("<li class='with-icon'>")
......
...@@ -355,7 +355,7 @@ define(['require', ...@@ -355,7 +355,7 @@ define(['require',
var str = '<option value=""' + (!that.tagModel ? 'selected' : '') + '>-- Select ' + typeName + " --</option>"; var str = '<option value=""' + (!that.tagModel ? 'selected' : '') + '>-- Select ' + typeName + " --</option>";
var enumValue = typeNameValue.get('elementDefs'); var enumValue = typeNameValue.get('elementDefs');
_.each(enumValue, function(key, value) { _.each(enumValue, function(key, value) {
str += '<option ' + ((that.tagModel && key.value === that.tagModel.attributes[name]) ? 'selected' : '') + '>' + key.value + '</option>'; str += '<option ' + ((that.tagModel && key.value === that.tagModel.attributes[name]) ? 'selected' : '') + '>' + _.escape(key.value) + '</option>';
}) })
that.ui.tagAttribute.append('<div class="form-group"><label>' + name + '</label>' + ' (' + typeName + ')' + that.ui.tagAttribute.append('<div class="form-group"><label>' + name + '</label>' + ' (' + typeName + ')' +
'<select class="form-control attributeInputVal attrName" data-key="' + name + '">' + str + '</select></div>'); '<select class="form-control attributeInputVal attrName" data-key="' + name + '">' + str + '</select></div>');
...@@ -393,7 +393,7 @@ define(['require', ...@@ -393,7 +393,7 @@ define(['require',
} }
}, },
getElement: function(labelName, typeName) { getElement: function(labelName, typeName) {
var value = this.tagModel && this.tagModel.attributes ? (this.tagModel.attributes[labelName] || "") : "", var value = this.tagModel && this.tagModel.attributes ? (this.tagModel.attributes[_.unescape(labelName)] || "") : "",
isTypeNumber = typeName === "int" || typeName === "byte" || typeName === "short" || typeName === "double" || typeName === "float", isTypeNumber = typeName === "int" || typeName === "byte" || typeName === "short" || typeName === "double" || typeName === "float",
inputClassName = "form-control attributeInputVal attrName"; inputClassName = "form-control attributeInputVal attrName";
if (isTypeNumber) { if (isTypeNumber) {
...@@ -405,7 +405,7 @@ define(['require', ...@@ -405,7 +405,7 @@ define(['require',
'<option value="true">true</option>' + '<option value="true">true</option>' +
'<option value="false">false</option></select>'; '<option value="false">false</option></select>';
} else { } else {
return '<input type="text" value="' + value + '" class="' + inputClassName + '" data-key="' + labelName + '" data-type="' + typeName + '"/>'; return '<input type="text" value="' + _.escape(value) + '" class="' + inputClassName + '" data-key="' + labelName + '" data-type="' + typeName + '"/>';
} }
}, },
......
...@@ -228,7 +228,7 @@ define(['require', ...@@ -228,7 +228,7 @@ define(['require',
return activeTagObj.name.toLowerCase() === obj.name.toLowerCase(); return activeTagObj.name.toLowerCase() === obj.name.toLowerCase();
}); });
if (duplicateCheck) { if (duplicateCheck) {
duplicateAttributeList.push(obj.name); duplicateAttributeList.push(_.escape(obj.name));
} else { } else {
saveObj.attributeDefs.push(obj); saveObj.attributeDefs.push(obj);
} }
......
...@@ -207,7 +207,7 @@ define(['require', ...@@ -207,7 +207,7 @@ define(['require',
tagName: tagName, tagName: tagName,
guid: that.guid, guid: that.guid,
associatedGuid: that.guid != entityGuid ? entityGuid : null, associatedGuid: that.guid != entityGuid ? entityGuid : null,
msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from" + " " + "<b>" + this.entityName + "?</b></div>", msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from <b>" + this.entityName + "?</b></div>",
titleMessage: Messages.removeTag, titleMessage: Messages.removeTag,
okText: "Remove", okText: "Remove",
showLoader: function() { showLoader: function() {
......
...@@ -447,7 +447,7 @@ define(['require', ...@@ -447,7 +447,7 @@ define(['require',
return activeTagObj.name.toLowerCase() === obj.name.toLowerCase(); return activeTagObj.name.toLowerCase() === obj.name.toLowerCase();
}); });
if (duplicateCheck) { if (duplicateCheck) {
duplicateAttributeList.push(obj.name); duplicateAttributeList.push(_.escape(obj.name));
} }
}); });
var notifyObj = { var notifyObj = {
......
...@@ -21,6 +21,7 @@ ...@@ -21,6 +21,7 @@
>li:first-child { >li:first-child {
font-weight: 600; font-weight: 600;
word-break: break-all;
} }
.business-metadata-tree-child { .business-metadata-tree-child {
...@@ -38,6 +39,26 @@ ...@@ -38,6 +39,26 @@
margin-top: 10px; margin-top: 10px;
font-weight: 100; font-weight: 100;
} }
.custom-table {
&:not(.bm-create) {
.custom-tr {
.custom-col-1 {
width: calc(50% - 55px);
.select2-selection--multiple .select2-selection__rendered {
overflow: scroll;
}
}
.custom-col-2 {
width: 45px;
}
}
}
}
} }
.business-metadata-options.dropdown { .business-metadata-options.dropdown {
...@@ -165,6 +186,8 @@ ...@@ -165,6 +186,8 @@
.panel-title { .panel-title {
font-size: 14px; font-size: 14px;
word-break: break-all;
width: inherit;
a:hover { a:hover {
color: #686868 !important; color: #686868 !important;
...@@ -176,4 +199,10 @@ ...@@ -176,4 +199,10 @@
.btn-group>button { .btn-group>button {
color: #686868 !important; color: #686868 !important;
} }
.business-metadata-detail-attr-key {
width: 30%;
word-break: break-word;
}
} }
\ No newline at end of file
...@@ -219,10 +219,18 @@ pre { ...@@ -219,10 +219,18 @@ pre {
.custom-table { .custom-table {
width: 100%; width: 100%;
display: flex;
tbody {
display: flex;
flex-flow: column;
width: 100%;
}
.custom-tr { .custom-tr {
margin-left: 15px; margin-left: 15px;
margin-right: 15px; display: flex;
width: calc(100% - 15px);
.custom-col-0, .custom-col-0,
.custom-col-1, .custom-col-1,
...@@ -239,22 +247,25 @@ pre { ...@@ -239,22 +247,25 @@ pre {
.custom-col-0 { .custom-col-0 {
text-align: center;
vertical-align: middle;
line-height: 31px; line-height: 31px;
width: 3%; width: 9px;
padding: 0px 2px;
} }
.custom-col-1 { .custom-col-1 {
width: 39%; width: calc(50% - 90px);
margin-bottom: 10px; flex-grow: 2;
&:first-child {
width: 30% !important;
flex-grow: 1;
}
} }
.custom-col-2 { .custom-col-2 {
text-align: center; text-align: center;
width: 17%; width: 80px;
padding-left: 1%; padding-left: 10px;
margin-bottom: 10px;
&>button { &>button {
padding: 7px 10px; padding: 7px 10px;
......
...@@ -684,90 +684,6 @@ hr[size="10"] { ...@@ -684,90 +684,6 @@ hr[size="10"] {
border-bottom-color: #000; border-bottom-color: #000;
} }
td.searchTableName:hover {
.isIncomplete {
&.show.search-result-page {
i {
left: 7px;
}
}
}
}
.globalsearchImgItem.isIncomplete {
display: inline-block !important;
position: relative;
i.fa {
left: 10px;
top: 7px;
font-size: 12px;
}
}
.isIncomplete {
&.show {
img {
opacity: 0.2;
//animation: blink 2.5s infinite;
}
i.fa {
display: block;
}
.entity-icon-box {
background: none;
i.fa {
top: 27px;
font-size: 18px;
}
}
foreignObject {
display: block;
i.fa {
font-size: 15px;
top: 17px;
left: 18.5px;
}
}
image,
circle {
opacity: 0.2;
//animation: blink 2.5s infinite;
}
&.search-result-page {
position: relative;
i {
left: 13px;
font-size: 9px;
top: 5px;
}
}
}
foreignObject {
display: none;
}
i.fa {
color: #898989;
display: none;
text-align: center;
font-size: 16px;
top: 0;
position: absolute;
z-index: 1;
left: calc(50% - 8px);
}
}
.dropdown-menu.multi-level { .dropdown-menu.multi-level {
.dropdown-submenu { .dropdown-submenu {
position: relative; position: relative;
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
<i class="fa fa-refresh fa-spin-custom"></i> <i class="fa fa-refresh fa-spin-custom"></i>
</div> </div>
<div class="entityDetail form-horizontal col-sm-12"> <div class="entityDetail form-horizontal col-sm-12">
<h1 class="title isIncomplete"> <h1 class="title">
<div data-id="entityIcon" class="entity-icon-box position-relative"></div> <div data-id="entityIcon" class="entity-icon-box position-relative"></div>
<span data-id="title"></span> <span data-id="title"></span>
</h1> {{#if entityUpdate}} </h1> {{#if entityUpdate}}
......
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
* limitations under the License. * limitations under the License.
--> -->
{{#ifCond model "has" "isNew"}} {{#ifCond model "has" "isNew"}}
<table class="custom-table" style="font-weight: 100;"> <table class="custom-table bm-create" style="font-weight: 100;">
<tr class="custom-tr"> <tr class="custom-tr">
<td class="custom-col-1"> <td class="custom-col-1">
{{{callmyfunction getBusinessMetadataDroupdown businessMetadataCollection}}} {{{callmyfunction getBusinessMetadataDroupdown businessMetadataCollection}}}
......
...@@ -139,7 +139,6 @@ ...@@ -139,7 +139,6 @@
</div> </div>
<div class="legends pull-left" style="height: 25px; padding: 2px;"> <div class="legends pull-left" style="height: 25px; padding: 2px;">
<span style="margin-right: 8px; color:#fb4200;"><i class="fa fa-circle-o fa-fw"></i>Current Entity</span> <span style="margin-right: 8px; color:#fb4200;"><i class="fa fa-circle-o fa-fw"></i>Current Entity</span>
<span style="margin-right: 8px;"><i class="fa fa-hourglass-half fa-fw"></i>In Progress</span>
<span style="margin-right: 8px; color:#df9b00;"><i class="fa fa-long-arrow-right fa-fw"></i>Lineage</span> <span style="margin-right: 8px; color:#df9b00;"><i class="fa fa-long-arrow-right fa-fw"></i>Lineage</span>
<span style="margin-right: 8px; color:#fb4200;"><i class="fa fa-long-arrow-right fa-fw"></i>Impact</span> <span style="margin-right: 8px; color:#fb4200;"><i class="fa fa-long-arrow-right fa-fw"></i>Impact</span>
</div> </div>
......
...@@ -221,9 +221,9 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum ...@@ -221,9 +221,9 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
tempLink += '<div data-id="' + fetchId + '"><div class="value-loader"></div></div>'; tempLink += '<div data-id="' + fetchId + '"><div class="value-loader"></div></div>';
} else { } else {
if (inputOutputField.typeName == "AtlasGlossaryTerm") { if (inputOutputField.typeName == "AtlasGlossaryTerm") {
tempLink += '<a href="#!/glossary/' + id + '?guid=' + id + '&gType=term&viewType=term">' + getValue(name) + '</a>' tempLink += '<a href="#!/glossary/' + id + '?guid=' + id + '&gType=term&viewType=term">' + name + '</a>'
} else { } else {
tempLink += '<a href="#!/detailPage/' + id + '">' + getValue(name) + '</a>' tempLink += '<a href="#!/detailPage/' + id + '">' + name + '</a>'
} }
} }
} }
...@@ -254,7 +254,6 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum ...@@ -254,7 +254,6 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
valueObjectKeysList = _.sortBy(valueObjectKeysList); valueObjectKeysList = _.sortBy(valueObjectKeysList);
} }
valueObjectKeysList.map(function(key) { valueObjectKeysList.map(function(key) {
key = _.escape(key);
if (key == "profileData") { if (key == "profileData") {
return; return;
} }
...@@ -276,8 +275,6 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum ...@@ -276,8 +275,6 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
var val = ""; var val = "";
if (_.isObject(valueObject[key])) { if (_.isObject(valueObject[key])) {
val = keyValue val = keyValue
} else if (Utils.isUrl(keyValue)) {
val = '<a target="_blank" class="blue-link" href="' + _.escape(keyValue) + '">' + getValue(keyValue) + '</a>';
} else if (key === 'guid' || key === "__guid") { } else if (key === 'guid' || key === "__guid") {
if (options.fromAdminAudit) { if (options.fromAdminAudit) {
val = getValue(keyValue); val = getValue(keyValue);
...@@ -322,9 +319,9 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum ...@@ -322,9 +319,9 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
var className = "btn btn-action btn-sm btn-blue btn-icon", var className = "btn btn-action btn-sm btn-blue btn-icon",
deleteIcon = ""; deleteIcon = "";
if (obj.guid === tag.entityGuid) { if (obj.guid === tag.entityGuid) {
deleteIcon = '<i class="fa fa-times" data-id="delete" data-assetname="' + entityName + '"data-name="' + tag.typeName + '" data-type="tag" data-guid="' + obj.guid + '" ></i>'; deleteIcon = '<i class="fa fa-times" data-id="delete" data-assetname="' + entityName + '" data-name="' + tag.typeName + '" data-type="tag" data-guid="' + obj.guid + '" ></i>';
} else if (obj.guid !== tag.entityGuid && tag.entityStatus === "DELETED") { } else if (obj.guid !== tag.entityGuid && tag.entityStatus === "DELETED") {
deleteIcon = '<i class="fa fa-times" data-id="delete" data-assetname="' + entityName + '"data-name="' + tag.typeName + '" data-type="tag" data-entityguid="' + tag.entityGuid + '" data-guid="' + obj.guid + '" ></i>'; deleteIcon = '<i class="fa fa-times" data-id="delete" data-assetname="' + entityName + '" data-name="' + tag.typeName + '" data-type="tag" data-entityguid="' + tag.entityGuid + '" data-guid="' + obj.guid + '" ></i>';
} else { } else {
className += " propagte-classification"; className += " propagte-classification";
} }
...@@ -358,9 +355,10 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum ...@@ -358,9 +355,10 @@ define(['require', 'utils/Utils', 'modules/Modal', 'utils/Messages', 'utils/Enum
entityName = Utils.getName(obj); entityName = Utils.getName(obj);
if (terms) { if (terms) {
terms.map(function(term) { terms.map(function(term) {
var displayText = _.escape(term.displayText);
var className = "btn btn-action btn-sm btn-blue btn-icon", var className = "btn btn-action btn-sm btn-blue btn-icon",
deleteIcon = '<i class="fa fa-times" data-id="delete" data-assetname="' + entityName + '"data-name="' + term.displayText + '" data-type="term" data-guid="' + obj.guid + '" data-termGuid="' + term.termGuid + '" ></i>', deleteIcon = '<i class="fa fa-times" data-id="delete" data-assetname="' + entityName + '" data-name="' + displayText + '" data-type="term" data-guid="' + obj.guid + '" data-termGuid="' + term.termGuid + '" ></i>',
termString = '<a class="' + className + '" data-id="termClick"><span title="' + _.escape(term.displayText) + '">' + _.escape(term.displayText) + '</span>' + deleteIcon + '</a>'; termString = '<a class="' + className + '" data-id="termClick"><span title="' + displayText + '">' + displayText + '</span>' + deleteIcon + '</a>';
if (count >= 1) { if (count >= 1) {
popTerm += termString; popTerm += termString;
} else { } else {
......
...@@ -233,8 +233,8 @@ define(['require', ...@@ -233,8 +233,8 @@ define(['require',
selectedEnumValues = selectedEnum ? selectedEnum.get('elementDefs') : null, selectedEnumValues = selectedEnum ? selectedEnum.get('elementDefs') : null,
savedValues = []; savedValues = [];
_.each(selectedEnumValues, function(enumVal, index) { _.each(selectedEnumValues, function(enumVal, index) {
selectedValues.push(_.unescape(enumVal.value)); selectedValues.push(enumVal.value);
enumValues += "<option>" + enumVal.value + "</option>"; enumValues += "<option>" + _.escape(enumVal.value) + "</option>";
}); });
this.ui.enumValueSelector.empty(); this.ui.enumValueSelector.empty();
this.ui.enumValueSelector.append(enumValues); this.ui.enumValueSelector.append(enumValues);
......
...@@ -56,7 +56,7 @@ define(['require', ...@@ -56,7 +56,7 @@ define(['require',
renderDetail: function() { renderDetail: function() {
this.ui.title.html('<span>' + this.model.get('name') + '</span>'); this.ui.title.html('<span>' + this.model.get('name') + '</span>');
if (this.model.get('description')) { if (this.model.get('description')) {
this.ui.description.text((this.model.get('description'))); this.ui.description.text(this.model.get('description'));
} }
} }
}); });
......
...@@ -296,7 +296,7 @@ define(['require', ...@@ -296,7 +296,7 @@ define(['require',
editable: false, editable: false,
formatter: _.extend({}, Backgrid.CellFormatter.prototype, { formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
fromRaw: function(rawValue, model) { fromRaw: function(rawValue, model) {
return model.get('description'); return _.escape(model.get('description'));
} }
}) })
}, },
...@@ -351,7 +351,7 @@ define(['require', ...@@ -351,7 +351,7 @@ define(['require',
editable: false, editable: false,
formatter: _.extend({}, Backgrid.CellFormatter.prototype, { formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
fromRaw: function(rawValue, model) { fromRaw: function(rawValue, model) {
return "<button type='button' data-id='addAttribute' data-guid='" + model.get('guid') + "'' title='' class='btn btn-action btn-xs ' style='margin-bottom: 10px;' data-action='createAttr' data-original-title='Add Business Metadata attribute'><i class='fa fa-plus'></i> Attributes</button>"; return "<button type='button' data-id='addAttribute' data-guid='" + model.get('guid') + "' class='btn btn-action btn-sm' style='margin-bottom: 10px;' data-action='createAttr' data-original-title='Add Business Metadata attribute'><i class='fa fa-plus'></i> Attributes</button>";
} }
}) })
} }
......
...@@ -223,7 +223,7 @@ define(['require', ...@@ -223,7 +223,7 @@ define(['require',
}; };
this.loaderStatus(true); this.loaderStatus(true);
var name = this.ui.name.val(), var name = this.ui.name.val(),
description = _.escape(this.ui.description.val()); description = this.ui.description.val();
var attributeObj = this.collection.toJSON(); var attributeObj = this.collection.toJSON();
if (this.collection.length === 1 && this.collection.first().get("name") === "") { if (this.collection.length === 1 && this.collection.first().get("name") === "") {
attributeObj = []; attributeObj = [];
......
...@@ -104,8 +104,8 @@ define(["require", "backbone", "hbs!tmpl/business_metadata/EnumCreateUpdateItemV ...@@ -104,8 +104,8 @@ define(["require", "backbone", "hbs!tmpl/business_metadata/EnumCreateUpdateItemV
selectedEnum = this.enumDefCollection.fullCollection.findWhere({ name: enumName }), selectedEnum = this.enumDefCollection.fullCollection.findWhere({ name: enumName }),
selectedEnumValues = selectedEnum ? selectedEnum.get("elementDefs") : null; selectedEnumValues = selectedEnum ? selectedEnum.get("elementDefs") : null;
_.each(selectedEnumValues, function(enumVal, index) { _.each(selectedEnumValues, function(enumVal, index) {
selectedValues.push(_.unescape(enumVal.value)); selectedValues.push(enumVal.value);
enumValues += "<option>" + enumVal.value + "</option>"; enumValues += "<option>" + _.escape(enumVal.value) + "</option>";
}); });
this.ui.enumCancleBtn.removeAttr("disabled"); this.ui.enumCancleBtn.removeAttr("disabled");
...@@ -197,7 +197,7 @@ define(["require", "backbone", "hbs!tmpl/business_metadata/EnumCreateUpdateItemV ...@@ -197,7 +197,7 @@ define(["require", "backbone", "hbs!tmpl/business_metadata/EnumCreateUpdateItemV
_.each(selectedEnumValues, function(inputEnumVal, index) { _.each(selectedEnumValues, function(inputEnumVal, index) {
elementValues.push({ elementValues.push({
ordinal: index + 1, ordinal: index + 1,
value: _.escape(inputEnumVal) value: inputEnumVal
}); });
}); });
......
...@@ -206,10 +206,7 @@ define(['require', ...@@ -206,10 +206,7 @@ define(['require',
} else { } else {
this.ui.entityIcon.removeClass('disabled'); this.ui.entityIcon.removeClass('disabled');
} }
if (collectionJSON.isIncomplete === true) { this.ui.entityIcon.attr('title', _.escape(collectionJSON.typeName)).html('<img src="' + Utils.getEntityIconPath({ entityData: entityData }) + '"/>').find("img").on('error', function() {
this.$(".isIncomplete").addClass("show");
}
this.ui.entityIcon.attr('title', _.escape(collectionJSON.typeName)).html('<img src="' + Utils.getEntityIconPath({ entityData: entityData }) + '"/><i class="fa fa-hourglass-half"></i>').find("img").on('error', function() {
this.src = Utils.getEntityIconPath({ entityData: entityData, errorUrl: this.src }); this.src = Utils.getEntityIconPath({ entityData: entityData, errorUrl: this.src });
}); });
} else { } else {
...@@ -382,7 +379,7 @@ define(['require', ...@@ -382,7 +379,7 @@ define(['require',
CommonViewFunction.deleteTag(_.extend({}, { CommonViewFunction.deleteTag(_.extend({}, {
guid: that.id, guid: that.id,
associatedGuid: that.id != entityGuid ? entityGuid : null, associatedGuid: that.id != entityGuid ? entityGuid : null,
msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from" + " " + "<b>" + this.name + "?</b></div>", msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from <b>" + this.name + "?</b></div>",
titleMessage: Messages.removeTag, titleMessage: Messages.removeTag,
okText: "Remove", okText: "Remove",
showLoader: that.showLoader.bind(that), showLoader: that.showLoader.bind(that),
...@@ -409,7 +406,7 @@ define(['require', ...@@ -409,7 +406,7 @@ define(['require',
relationshipGuid: termObj.relationshipGuid relationshipGuid: termObj.relationshipGuid
}, },
collection: that.glossaryCollection, collection: that.glossaryCollection,
msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(termName) + "</b> assignment from" + " " + "<b>" + this.name + "?</b></div>", msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(termName) + "</b> assignment from <b>" + this.name + "?</b></div>",
titleMessage: Messages.glossary.removeTermfromEntity, titleMessage: Messages.glossary.removeTermfromEntity,
isEntityView: true, isEntityView: true,
buttonText: "Remove", buttonText: "Remove",
...@@ -432,11 +429,11 @@ define(['require', ...@@ -432,11 +429,11 @@ define(['require',
val.entityGuid === that.id ? tag['self'].push(val) : tag['propagated'].push(val); val.entityGuid === that.id ? tag['self'].push(val) : tag['propagated'].push(val);
}); });
_.each(tag.self, function(val) { _.each(tag.self, function(val) {
tagData += '<span class="btn btn-action btn-sm btn-icon btn-blue" data-id="tagClick"><span title=' + val.typeName + ' >' + val.typeName + '</span><i class="fa fa-close" data-id="deleteTag" data-type="tag" title="Remove Classification"></i></span>'; tagData += '<span class="btn btn-action btn-sm btn-icon btn-blue" data-id="tagClick"><span>' + val.typeName + '</span><i class="fa fa-close" data-id="deleteTag" data-type="tag" title="Remove Classification"></i></span>';
}); });
_.each(tag.propagated, function(val) { _.each(tag.propagated, function(val) {
var crossButton = '<i class="fa fa-close" data-id="deleteTag" data-entityguid="' + val.entityGuid + '" data-type="tag" title="Remove Classification"></i>'; var crossButton = '<i class="fa fa-close" data-id="deleteTag" data-entityguid="' + val.entityGuid + '" data-type="tag" title="Remove Classification"></i>';
propagatedTagListData += '<span class="btn btn-action btn-sm btn-icon btn-blue" title=' + val.typeName + ' data-id="tagClick"><span>' + val.typeName + '</span>' + ((that.id !== val.entityGuid && val.entityStatus === "DELETED") ? crossButton : "") + '</span>'; propagatedTagListData += '<span class="btn btn-action btn-sm btn-icon btn-blue" data-id="tagClick"><span>' + val.typeName + '</span>' + ((that.id !== val.entityGuid && val.entityStatus === "DELETED") ? crossButton : "") + '</span>';
}); });
propagatedTagListData !== "" ? this.ui.propagatedTagDiv.show() : this.ui.propagatedTagDiv.hide(); propagatedTagListData !== "" ? this.ui.propagatedTagDiv.show() : this.ui.propagatedTagDiv.hide();
this.ui.tagList.find("span.btn").remove(); this.ui.tagList.find("span.btn").remove();
...@@ -449,9 +446,7 @@ define(['require', ...@@ -449,9 +446,7 @@ define(['require',
var that = this, var that = this,
termData = ""; termData = "";
_.each(data, function(val) { _.each(data, function(val) {
// if (val.relationshipStatus == "ACTIVE") { termData += '<span class="btn btn-action btn-sm btn-icon btn-blue" data-id="termClick"><span>' + _.escape(val.displayText) + '</span><i class="' + (val.relationshipStatus == "ACTIVE" ? 'fa fa-close' : "") + '" data-id="deleteTerm" data-guid="' + val.guid + '" data-type="term" title="Remove Term"></i></span>';
termData += '<span class="btn btn-action btn-sm btn-icon btn-blue" data-id="termClick"><span title=' + _.escape(val.displayText) + '>' + _.escape(val.displayText) + '</span><i class="' + (val.relationshipStatus == "ACTIVE" ? 'fa fa-close' : "") + '" data-id="deleteTerm" data-guid="' + val.guid + '" data-type="term" title="Remove Term"></i></span>';
// }
}); });
this.ui.termList.find("span.btn").remove(); this.ui.termList.find("span.btn").remove();
this.ui.termList.prepend(termData); this.ui.termList.prepend(termData);
......
...@@ -516,7 +516,7 @@ define(['require', ...@@ -516,7 +516,7 @@ define(['require',
}, },
getSelect: function(object) { getSelect: function(object) {
var value = object.value, var value = object.value,
entityValue = object.entityValue, entityValue = _.escape(object.entityValue),
isAttribute = object.isAttribute, isAttribute = object.isAttribute,
isRelation = object.isRelation; isRelation = object.isRelation;
if (value.typeName === "boolean") { if (value.typeName === "boolean") {
...@@ -546,7 +546,7 @@ define(['require', ...@@ -546,7 +546,7 @@ define(['require',
}, },
getTextArea: function(object) { getTextArea: function(object) {
var value = object.value, var value = object.value,
setValue = object.entityValue, setValue = _.escape(object.entityValue),
isAttribute = object.isAttribute, isAttribute = object.isAttribute,
isRelation = object.isRelation, isRelation = object.isRelation,
structType = object.structType; structType = object.structType;
...@@ -570,7 +570,7 @@ define(['require', ...@@ -570,7 +570,7 @@ define(['require',
}, },
getInput: function(object) { getInput: function(object) {
var value = object.value, var value = object.value,
entityValue = object.entityValue, entityValue = _.escape(object.entityValue),
isAttribute = object.isAttribute, isAttribute = object.isAttribute,
isRelation = object.isRelation; isRelation = object.isRelation;
return '<input class="form-control entityInputBox ' + (value.isOptional === true ? "false" : "true") + '"' + return '<input class="form-control entityInputBox ' + (value.isOptional === true ? "false" : "true") + '"' +
......
...@@ -153,7 +153,8 @@ define(['require', ...@@ -153,7 +153,8 @@ define(['require',
val = options.val.value, val = options.val.value,
isMultiValued = typeName && typeName.indexOf("array<") === 0, isMultiValued = typeName && typeName.indexOf("array<") === 0,
businessMetadata = options.businessMetadata, businessMetadata = options.businessMetadata,
allowOnlyNum = false; allowOnlyNum = false,
isEnum = false;
var elType = isMultiValued ? "select" : "input"; var elType = isMultiValued ? "select" : "input";
if (!isMultiValued && !_.isEmpty(val)) { if (!isMultiValued && !_.isEmpty(val)) {
val = _.escape(val); val = _.escape(val);
...@@ -175,7 +176,7 @@ define(['require', ...@@ -175,7 +176,7 @@ define(['require',
} }
} }
if (typeName.indexOf("string") > -1) { if (typeName.indexOf("string") > -1) {
returnEL = '<' + elType + ' type="text" data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '" data-multi="' + isMultiValued + '" data-tags="true" placeholder="Enter String" class="form-control" ' + (!_.isUndefinedNull(val) ? 'value="' + val + '"' : "") + '></' + elType + '>'; returnEL = '<' + elType + ' type="text" data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '" data-multi="' + isMultiValued + '" data-tags="true" placeholder="Enter String" class="form-control" ' + (isMultiValued === false && !_.isUndefinedNull(val) ? 'value="' + val + '"' : "") + '></' + elType + '>';
} else if (typeName.indexOf("boolean") > -1) { } else if (typeName.indexOf("boolean") > -1) {
returnEL = '<select data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '" data-multi="' + isMultiValued + '" class="form-control">' + (isMultiValued ? "" : '<option value="">--Select Value--</option>') + '<option value="true" ' + (!_.isUndefinedNull(val) && val == "true" ? "selected" : "") + '>true</option><option value="false" ' + (!_.isUndefinedNull(val) && val == "false" ? "selected" : "") + '>false</option></select>'; returnEL = '<select data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '" data-multi="' + isMultiValued + '" class="form-control">' + (isMultiValued ? "" : '<option value="">--Select Value--</option>') + '<option value="true" ' + (!_.isUndefinedNull(val) && val == "true" ? "selected" : "") + '>true</option><option value="false" ' + (!_.isUndefinedNull(val) && val == "false" ? "selected" : "") + '>false</option></select>';
} else if (typeName.indexOf("date") > -1) { } else if (typeName.indexOf("date") > -1) {
...@@ -198,6 +199,7 @@ define(['require', ...@@ -198,6 +199,7 @@ define(['require',
allowOnlyNum = true; allowOnlyNum = true;
returnEL = '<' + elType + ' data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '" type="number" data-multi="' + isMultiValued + '" data-tags="true" placeholder="Enter Number" class="form-control" ' + (!_.isUndefinedNull(val) ? 'value="' + val + '"' : "") + '></' + elType + '>'; returnEL = '<' + elType + ' data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '" type="number" data-multi="' + isMultiValued + '" data-tags="true" placeholder="Enter Number" class="form-control" ' + (!_.isUndefinedNull(val) ? 'value="' + val + '"' : "") + '></' + elType + '>';
} else if (typeName) { } else if (typeName) {
isEnum = true;
var modTypeName = typeName; var modTypeName = typeName;
if (isMultiValued) { if (isMultiValued) {
var multipleType = typeName.match("array<(.*)>"); var multipleType = typeName.match("array<(.*)>");
...@@ -209,30 +211,31 @@ define(['require', ...@@ -209,30 +211,31 @@ define(['require',
if (foundEnumType) { if (foundEnumType) {
var enumOptions = ""; var enumOptions = "";
_.forEach(foundEnumType.get("elementDefs"), function(obj) { _.forEach(foundEnumType.get("elementDefs"), function(obj) {
enumOptions += '<option value="' + obj.value + '">' + obj.value + '</option>' enumOptions += '<option value="' + _.escape(obj.value) + '">' + _.escape(obj.value) + '</option>'
}); });
returnEL = '<select data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '" data-multi="' + isMultiValued + '" >' + enumOptions + '</select>'; returnEL = '<select data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '" data-multi="' + isMultiValued + '" data-enum="true">' + enumOptions + '</select>';
} }
setTimeout(function() {
if (!isMultiValued) {
var selectEl = that.$el.find('.custom-col-1[data-id="value"] select[data-key="' + key + '"]');
selectEl.val((val || ""));
selectEl.select2();
}
}, 0);
} }
if (isMultiValued) { if (isEnum || elType === "select") {
setTimeout(function() { setTimeout(function() {
var selectEl = that.$el.find('.custom-col-1[data-id="value"] select[data-key="' + key + '"][data-multi="true"]'); var selectEl = that.$el.find('.custom-col-1[data-id="value"] select[data-key="' + key + '"]');
var data = val && val.length && (_.isArray(val) ? val : val.split(",")) || []; var data = [];
if (selectEl.data("multi")) {
data = val && val.length && (_.isArray(val) ? val : val.split(",")) || [];
} else {
data = _.unescape(val);
}
if (allowOnlyNum) { if (allowOnlyNum) {
selectEl.parent().addClass("select2_only_number"); selectEl.parent().addClass("select2_only_number");
} }
selectEl.select2({ var opt = {
tags: selectEl.data("tags") ? true : false, tags: selectEl.data("tags") ? true : false,
multiple: true, multiple: selectEl.data("multi")
data: data }
}); if (!selectEl.data("enum")) {
opt.data = data;
}
selectEl.select2(opt);
selectEl.val(data).trigger("change"); selectEl.val(data).trigger("change");
}, 0); }, 0);
} }
......
...@@ -25,8 +25,8 @@ define([ ...@@ -25,8 +25,8 @@ define([
"utils/Utils", "utils/Utils",
"utils/Messages", "utils/Messages",
"utils/CommonViewFunction", "utils/CommonViewFunction",
'moment', "moment",
'utils/Globals' "utils/Globals"
], function(require, Backbone, EntityBusinessMetaDataView_tmpl, EntityBusinessMetaDataItemView, VEntity, Utils, Messages, CommonViewFunction, moment, Globals) { ], function(require, Backbone, EntityBusinessMetaDataView_tmpl, EntityBusinessMetaDataItemView, VEntity, Utils, Messages, CommonViewFunction, moment, Globals) {
"use strict"; "use strict";
...@@ -237,7 +237,7 @@ define([ ...@@ -237,7 +237,7 @@ define([
} }
} }
attrLi += "<tr><td>" + _.escape(key) + " (" + _.escape(val.typeName) + ")</td><td>" + _.escape(newVal) + "</td></tr>"; attrLi += "<tr><td class='business-metadata-detail-attr-key'>" + _.escape(key) + " (" + _.escape(val.typeName) + ")</td><td>" + _.escape(newVal) + "</td></tr>";
} }
}); });
li += that.associateAttributePanel(obj, attrLi); li += that.associateAttributePanel(obj, attrLi);
...@@ -250,7 +250,7 @@ define([ ...@@ -250,7 +250,7 @@ define([
}, },
associateAttributePanel: function(obj, tableBody) { associateAttributePanel: function(obj, tableBody) {
return '<div class="panel panel-default custom-panel expand_collapse_panel-icon no-border business-metadata-detail-attr">' + return '<div class="panel panel-default custom-panel expand_collapse_panel-icon no-border business-metadata-detail-attr">' +
'<div class="panel-heading" data-toggle="collapse" href="#' + _.escape(obj.get("__internal_UI_businessMetadataName")) + '" aria-expanded="true" style="width: 70%;">' + '<div class="panel-heading" data-toggle="collapse" href="#' + _.escape(obj.get("__internal_UI_businessMetadataName")) + '" aria-expanded="true" style="width: 90%;">' +
'<h4 class="panel-title"> <a>' + _.escape(obj.get("__internal_UI_businessMetadataName")) + '</a></h4>' + '<h4 class="panel-title"> <a>' + _.escape(obj.get("__internal_UI_businessMetadataName")) + '</a></h4>' +
'<div class="btn-group pull-left"> <button type="button" title="Collapse"><i class="ec-icon fa"></i></button></div>' + '<div class="btn-group pull-left"> <button type="button" title="Collapse"><i class="ec-icon fa"></i></button></div>' +
'</div>' + '</div>' +
......
...@@ -72,7 +72,7 @@ define(['require', ...@@ -72,7 +72,7 @@ define(['require',
populateLabelOptions: function() { populateLabelOptions: function() {
var that = this, var that = this,
str = this.labels.map(function(label) { str = this.labels.map(function(label) {
return "<option selected > " + label + " </option>"; return "<option selected > " + _.escape(label) + " </option>";
}); });
this.ui.addLabelOptions.html(str); this.ui.addLabelOptions.html(str);
var getLabelData = function(data, selectedData) { var getLabelData = function(data, selectedData) {
...@@ -104,7 +104,7 @@ define(['require', ...@@ -104,7 +104,7 @@ define(['require',
delay: 250, delay: 250,
data: function(params) { data: function(params) {
return { return {
prefixString: _.escape(params.term), // search term prefixString: params.term, // search term
fieldName: '__labels' fieldName: '__labels'
}; };
}, },
...@@ -131,7 +131,7 @@ define(['require', ...@@ -131,7 +131,7 @@ define(['require',
} }
}, },
onChangeLabelChange: function() { onChangeLabelChange: function() {
this.labels = this.ui.addLabelOptions.val().map(function(v) { return _.escape(v) }); this.labels = this.ui.addLabelOptions.val();
}, },
handleBtnClick: function() { handleBtnClick: function() {
this.swapItem = !this.swapItem; this.swapItem = !this.swapItem;
......
...@@ -99,7 +99,7 @@ define(['require', ...@@ -99,7 +99,7 @@ define(['require',
var el = e.currentTarget; var el = e.currentTarget;
this.handleCharSupport(el); this.handleCharSupport(el);
if (!el.value.trim().includes(':')) { if (!el.value.trim().includes(':')) {
this.items[el.dataset.index].value = _.escape(el.value.trim()); this.items[el.dataset.index].value = el.value.trim();
} }
}, },
handleCharSupport: function(el) { handleCharSupport: function(el) {
......
...@@ -296,7 +296,7 @@ define(['require', ...@@ -296,7 +296,7 @@ define(['require',
categories = ""; categories = "";
_.each(data, function(val) { _.each(data, function(val) {
var name = _.escape(val.displayText); var name = _.escape(val.displayText);
categories += '<span data-guid="' + val.categoryGuid + '"" class="btn btn-action btn-sm btn-icon btn-blue" data-id="categoryClick"><span title=' + name + '>' + name + '</span><i class="fa fa-close" data-id="removeCategory" data-type="category" title="Remove Category"></i></span>'; categories += '<span data-guid="' + val.categoryGuid + '" class="btn btn-action btn-sm btn-icon btn-blue" data-id="categoryClick"><span>' + name + '</span><i class="fa fa-close" data-id="removeCategory" data-type="category" title="Remove Category"></i></span>';
}); });
this.ui.categoryList.find("span.btn").remove(); this.ui.categoryList.find("span.btn").remove();
this.ui.categoryList.prepend(categories); this.ui.categoryList.prepend(categories);
...@@ -306,7 +306,7 @@ define(['require', ...@@ -306,7 +306,7 @@ define(['require',
terms = ""; terms = "";
_.each(data, function(val) { _.each(data, function(val) {
var name = _.escape(val.displayText); var name = _.escape(val.displayText);
terms += '<span data-guid="' + val.termGuid + '"" class="btn btn-action btn-sm btn-icon btn-blue" data-id="termClick"><span title=' + name + '>' + name + '</span><i class="fa fa-close" data-id="removeTerm" data-type="term" title="Remove Term"></i></span>'; terms += '<span data-guid="' + val.termGuid + '" class="btn btn-action btn-sm btn-icon btn-blue" data-id="termClick"><span>' + name + '</span><i class="fa fa-close" data-id="removeTerm" data-type="term" title="Remove Term"></i></span>';
}); });
this.ui.termList.find("span.btn").remove(); this.ui.termList.find("span.btn").remove();
this.ui.termList.prepend(terms); this.ui.termList.prepend(terms);
...@@ -316,7 +316,7 @@ define(['require', ...@@ -316,7 +316,7 @@ define(['require',
var that = this, var that = this,
tagData = ""; tagData = "";
_.each(tagObject, function(val) { _.each(tagObject, function(val) {
tagData += '<span class="btn btn-action btn-sm btn-icon btn-blue" data-id="tagClickTerm"><span title=' + val.typeName + '>' + val.typeName + '</span><i class="fa fa-close" data-id="removeTagTerm" data-type="tag" title="Remove Classification"></i></span>'; tagData += '<span class="btn btn-action btn-sm btn-icon btn-blue" data-id="tagClickTerm"><span>' + val.typeName + '</span><i class="fa fa-close" data-id="removeTagTerm" data-type="tag" title="Remove Classification"></i></span>';
}); });
this.ui.tagList.find("span.btn").remove(); this.ui.tagList.find("span.btn").remove();
this.ui.tagList.prepend(tagData); this.ui.tagList.prepend(tagData);
...@@ -407,7 +407,7 @@ define(['require', ...@@ -407,7 +407,7 @@ define(['require',
tagName = $(e.currentTarget).text(), tagName = $(e.currentTarget).text(),
termName = this.data.name; termName = this.data.name;
CommonViewFunction.deleteTag(_.extend({}, { CommonViewFunction.deleteTag(_.extend({}, {
msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from" + " " + "<b>" + _.escape(termName) + "?</b></div>", msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from <b>" + _.escape(termName) + "?</b></div>",
titleMessage: Messages.removeTag, titleMessage: Messages.removeTag,
okText: "Remove", okText: "Remove",
showLoader: that.showLoader.bind(that), showLoader: that.showLoader.bind(that),
...@@ -431,7 +431,7 @@ define(['require', ...@@ -431,7 +431,7 @@ define(['require',
selectedGuid: guid, selectedGuid: guid,
model: that.data, model: that.data,
collection: that.glossaryCollection, collection: that.glossaryCollection,
msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(name) + "</b> assignment from" + " " + "<b>" + _.escape(that.data.name) + "?</b></div>", msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(name) + "</b> assignment from <b>" + _.escape(that.data.name) + "?</b></div>",
titleMessage: Messages.glossary[that.isTermView ? "removeCategoryfromTerm" : "removeTermfromCategory"], titleMessage: Messages.glossary[that.isTermView ? "removeCategoryfromTerm" : "removeTermfromCategory"],
isCategoryView: that.isCategoryView, isCategoryView: that.isCategoryView,
isTermView: that.isTermView, isTermView: that.isTermView,
...@@ -454,7 +454,7 @@ define(['require', ...@@ -454,7 +454,7 @@ define(['require',
require(['views/tag/TagDetailTableLayoutView'], function(TagDetailTableLayoutView) { require(['views/tag/TagDetailTableLayoutView'], function(TagDetailTableLayoutView) {
if (that.RTagTableLayoutView) { if (that.RTagTableLayoutView) {
that.RTagTableLayoutView.show(new TagDetailTableLayoutView(_.extend({}, options, { that.RTagTableLayoutView.show(new TagDetailTableLayoutView(_.extend({}, options, {
"entityName": that.ui.title.text(), "entityName": _.escape(that.ui.title.text()),
"fetchCollection": that.getData.bind(that), "fetchCollection": that.getData.bind(that),
"entity": that.data "entity": that.data
}))); })));
......
...@@ -231,7 +231,7 @@ define(['require', ...@@ -231,7 +231,7 @@ define(['require',
getTerms: function(key) { getTerms: function(key) {
var terms = _.map(that.data[key], function(obj) { var terms = _.map(that.data[key], function(obj) {
var name = _.escape(obj.displayText); var name = _.escape(obj.displayText);
return '<span data-guid="' + obj.termGuid + '" class="btn btn-action btn-sm btn-icon btn-blue" title=' + _.escape(name) + ' data-id="termClick"><span>' + name + '</span><i class="fa fa-close" data-id="deleteAttribute" data-attributename="' + key + '" data-termguid="' + obj.termGuid + '" data-type="term" title="Remove Term"></i></span>'; return '<span data-guid="' + obj.termGuid + '" class="btn btn-action btn-sm btn-icon btn-blue" data-id="termClick"><span>' + name + '</span><i class="fa fa-close" data-id="deleteAttribute" data-attributename="' + key + '" data-termguid="' + obj.termGuid + '" data-type="term" title="Remove Term"></i></span>';
}).join(""), }).join(""),
attributeButtons = ""; attributeButtons = "";
if (terms.length) { if (terms.length) {
......
...@@ -326,18 +326,6 @@ define(['require', 'utils/Utils'], function(require, Utils) { ...@@ -326,18 +326,6 @@ define(['require', 'utils/Utils'], function(require, Utils) {
shapeSvg.attr("stroke", "#fb4200") shapeSvg.attr("stroke", "#fb4200")
} }
if (node.isIncomplete === true) {
parent.attr("class", "node isIncomplete show");
parent.insert("foreignObject")
.attr("x", "-25")
.attr("y", "-25")
.attr("width", "50")
.attr("height", "50")
.append("xhtml:div")
.insert("i")
.attr("class", "fa fa-hourglass-half");
}
if ($defs.select('pattern[id="img_' + imgName + '"]').empty()) { if ($defs.select('pattern[id="img_' + imgName + '"]').empty()) {
var $pattern = $defs.append("pattern") var $pattern = $defs.append("pattern")
.attr("x", "0%") .attr("x", "0%")
......
...@@ -151,7 +151,7 @@ define(['require', ...@@ -151,7 +151,7 @@ define(['require',
fromEntity = this.lineageData.guidEntityMap[obj.fromEntityId], fromEntity = this.lineageData.guidEntityMap[obj.fromEntityId],
toEntity = this.lineageData.guidEntityMap[obj.toEntityId]; toEntity = this.lineageData.guidEntityMap[obj.toEntityId];
if (fromEntity && toEntity) { if (fromEntity && toEntity) {
this.ui.edgeDetailName.html(fromEntity.displayText + " <span class='navigation-font'><i class='fa fa-long-arrow-right fa-color'></i></span> " + toEntity.displayText); this.ui.edgeDetailName.html(_.escape(fromEntity.displayText) + " <span class='navigation-font'><i class='fa fa-long-arrow-right fa-color'></i></span> " + _.escape(toEntity.displayText));
} }
if (obj && obj.relationshipId) { if (obj && obj.relationshipId) {
this.showLoader(); this.showLoader();
......
...@@ -146,12 +146,12 @@ define(['require', ...@@ -146,12 +146,12 @@ define(['require',
updateRelationshipDetails: function(options) { updateRelationshipDetails: function(options) {
var data = options.obj.value, var data = options.obj.value,
typeName = data.typeName || options.obj.name, typeName = data.typeName || options.obj.name,
searchString = options.searchString, searchString = _.escape(options.searchString),
listString = "", listString = "",
getEntityTypelist = function(options) { getEntityTypelist = function(options) {
var activeEntityColor = "#4a90e2", var activeEntityColor = "#4a90e2",
deletedEntityColor = "#BB5838", deletedEntityColor = "#BB5838",
entityTypeHtml = '', entityTypeHtml = '<pre>',
getdefault = function(obj) { getdefault = function(obj) {
var options = obj.options, var options = obj.options,
status = (Enums.entityStateReadOnly[options.entityStatus || options.status] ? " deleted-relation" : ''), status = (Enums.entityStateReadOnly[options.entityStatus || options.status] ? " deleted-relation" : ''),
...@@ -197,13 +197,13 @@ define(['require', ...@@ -197,13 +197,13 @@ define(['require',
entityTypeHtml = getdefault({ entityTypeHtml = getdefault({
"color": activeEntityColor, "color": activeEntityColor,
"options": options, "options": options,
"name": _.escape(name) "name": name
}); });
} else if (options.relationshipStatus == "DELETED") { } else if (options.relationshipStatus == "DELETED") {
entityTypeHtml = getWithButton({ entityTypeHtml = getWithButton({
"color": activeEntityColor, "color": activeEntityColor,
"options": options, "options": options,
"name": _.escape(name), "name": name,
"relationship": true "relationship": true
}) })
} }
...@@ -211,18 +211,17 @@ define(['require', ...@@ -211,18 +211,17 @@ define(['require',
entityTypeHtml = getWithButton({ entityTypeHtml = getWithButton({
"color": deletedEntityColor, "color": deletedEntityColor,
"options": options, "options": options,
"name": _.escape(name), "name": name,
"entity": true "entity": true
}) })
} else { } else {
entityTypeHtml = getdefault({ entityTypeHtml = getdefault({
"color": activeEntityColor, "color": activeEntityColor,
"options": options, "options": options,
"name": _.escape(name) "name": name
}); });
} }
return entityTypeHtml; return entityTypeHtml + '</pre>';
}; };
this.ui.searchNode.hide(); this.ui.searchNode.hide();
this.$("[data-id='typeName']").text(typeName); this.$("[data-id='typeName']").text(typeName);
......
...@@ -207,7 +207,7 @@ define(['require', ...@@ -207,7 +207,7 @@ define(['require',
className: "searchTableName", className: "searchTableName",
formatter: _.extend({}, Backgrid.CellFormatter.prototype, { formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
fromRaw: function(rawValue, model) { fromRaw: function(rawValue, model) {
var value = model.get('attributes')[key]; var value = _.escape(model.get('attributes')[key]);
if (key === "name" && model.get('guid')) { if (key === "name" && model.get('guid')) {
var nameHtml = '<a href="#!/detailPage/' + model.get('guid') + '">' + value + '</a>'; var nameHtml = '<a href="#!/detailPage/' + model.get('guid') + '">' + value + '</a>';
if (model.get('status') && Enums.entityStateReadOnly[model.get('status')]) { if (model.get('status') && Enums.entityStateReadOnly[model.get('status')]) {
...@@ -291,7 +291,7 @@ define(['require', ...@@ -291,7 +291,7 @@ define(['require',
CommonViewFunction.deleteTag({ CommonViewFunction.deleteTag({
tagName: tagName, tagName: tagName,
guid: guid, guid: guid,
msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from" + " " + "<b>" + assetName + " ?</b></div>", msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from <b>" + _.escape(assetName) + " ?</b></div>",
titleMessage: Messages.removeTag, titleMessage: Messages.removeTag,
okText: "Remove", okText: "Remove",
showLoader: that.showLoader.bind(that), showLoader: that.showLoader.bind(that),
......
...@@ -305,12 +305,10 @@ define(["require", ...@@ -305,12 +305,10 @@ define(["require",
} }
item.serviceType = Globals.serviceTypeMap[item.typeName]; item.serviceType = Globals.serviceTypeMap[item.typeName];
options.entityData = item; options.entityData = item;
var imgEl = $('<img src="' + Utils.getEntityIconPath(options) + '">').on("error", function(error, s) { var img = $('<img src="' + Utils.getEntityIconPath(options) + '">').on("error", function(error, s) {
this.src = Utils.getEntityIconPath(_.extend(options, { errorUrl: this.src })); this.src = Utils.getEntityIconPath(_.extend(options, { errorUrl: this.src }));
}); });
var img = $('<div class="globalsearchImgItem isIncomplete ' + (item.isIncomplete ? "show" : "") + '"><i class="fa fa-hourglass-half"></i><div>').prepend(imgEl);
var span = $("<span>" + getHighlightedTerm(item.itemText) + "</span>").prepend(img); var span = $("<span>" + getHighlightedTerm(item.itemText) + "</span>").prepend(img);
li = $("<li class='with-icon'>").append(span); li = $("<li class='with-icon'>").append(span);
} else { } else {
......
...@@ -311,7 +311,7 @@ define(["require", "backbone", "utils/Globals", "hbs!tmpl/search/SearchDefaultLa ...@@ -311,7 +311,7 @@ define(["require", "backbone", "utils/Globals", "hbs!tmpl/search/SearchDefaultLa
attrObj: attrTypeObj attrObj: attrTypeObj
}), this.RQueryBuilderEntity); }), this.RQueryBuilderEntity);
this.ui.entityName.html(that.options.value.type); this.ui.entityName.html(_.escape(that.options.value.type));
} }
} }
......
...@@ -40,7 +40,6 @@ define([ ...@@ -40,7 +40,6 @@ define([
RBusinessMetadataTreeRender: '[data-id="r_businessMetadataTreeRender"]' RBusinessMetadataTreeRender: '[data-id="r_businessMetadataTreeRender"]'
}, },
ui: { ui: {
//search
searchNode: '[data-id="searchNode"]', searchNode: '[data-id="searchNode"]',
sliderBar: '[data-id="sliderBar"]', sliderBar: '[data-id="sliderBar"]',
menuItems: ".menu-items" menuItems: ".menu-items"
...@@ -66,16 +65,9 @@ define([ ...@@ -66,16 +65,9 @@ define([
}; };
events["keyup " + this.ui.searchNode] = function(e) { events["keyup " + this.ui.searchNode] = function(e) {
// var type = $(e.currentTarget).data("type"); var searchString = _.escape(e.target.value);
// var showEmpty = false;
// this.RClassificationTreeRender.currentView.onSearchClassificationNode(showEmpty);
// this.REntityTreeRender.currentView.onSearchEntityNode(showEmpty);
var searchString = e.target.value;
if (searchString.trim() === "") { if (searchString.trim() === "") {
this.$(".panel").removeClass("hide"); this.$(".panel").removeClass("hide");
// showEmpty = true;
// this.RClassificationTreeRender.currentView.onSearchClassificationNode(showEmpty);
// this.REntityTreeRender.currentView.onSearchEntityNode(showEmpty);
} }
this.entitySearchTree = this.$('[data-id="entitySearchTree"]'); this.entitySearchTree = this.$('[data-id="entitySearchTree"]');
this.classificationSearchTree = this.$('[data-id="classificationSearchTree"]'); this.classificationSearchTree = this.$('[data-id="classificationSearchTree"]');
...@@ -99,7 +91,6 @@ define([ ...@@ -99,7 +91,6 @@ define([
events["click " + this.ui.menuItems] = function(e) { events["click " + this.ui.menuItems] = function(e) {
e.stopPropagation(); e.stopPropagation();
//this.$('.menu-items').removeClass('open');
}; };
return events; return events;
}, },
......
...@@ -723,12 +723,8 @@ define(['require', ...@@ -723,12 +723,8 @@ define(['require',
} }
}); });
} }
var img = "", var img = "";
isIncompleteClass = "isIncomplete search-result-page"; img = "<div><img data-imgGuid='" + obj.guid + "' class='searchTableLogoLoader'></div>";
if (obj.isIncomplete === true) {
isIncompleteClass += " show";
}
img = "<div class='" + isIncompleteClass + "'><img data-imgGuid='" + obj.guid + "' class='searchTableLogoLoader'><i class='fa fa-hourglass-half'></i></div>";
getImageData({ imagePath: Utils.getEntityIconPath({ entityData: obj }) }); getImageData({ imagePath: Utils.getEntityIconPath({ entityData: obj }) });
return (img + nameHtml); return (img + nameHtml);
} }
...@@ -890,7 +886,7 @@ define(['require', ...@@ -890,7 +886,7 @@ define(['require',
if (values[values.length - 1] === "") { values.pop(); } if (values[values.length - 1] === "") { values.pop(); }
if (values[0] === "") { values.shift(); } if (values[0] === "") { values.shift(); }
_.each(values, function(names) { _.each(values, function(names) {
valueOfArray.push('<span class="json-string"><a class="btn btn-action btn-sm btn-blue btn-icon" ><span title="" data-original-title="' + names + '" >' + names + '</span></a></span>'); valueOfArray.push('<span class="json-string"><a class="btn btn-action btn-sm btn-blue btn-icon" ><span>' + _.escape(names) + '</span></a></span>');
}); });
return valueOfArray.join(' '); return valueOfArray.join(' ');
} }
...@@ -900,7 +896,7 @@ define(['require', ...@@ -900,7 +896,7 @@ define(['require',
valueOfArray = []; valueOfArray = [];
if (customAttributes) { if (customAttributes) {
_.each(Object.keys(customAttributes), function(value, index) { _.each(Object.keys(customAttributes), function(value, index) {
valueOfArray.push('<span class="json-string"><a class="btn btn-action btn-sm btn-blue btn-icon" ><span title="" data-original-title="' + value + ' : ' + Object.values(customAttributes)[index] + '" ><span>' + value + '</span> : <span>' + Object.values(customAttributes)[index] + '</span></span></a></span>'); valueOfArray.push('<span class="json-string"><a class="btn btn-action btn-sm btn-blue btn-icon" ><span><span>' + _.escape(value) + '</span> : <span>' + _.escape(Object.values(customAttributes)[index]) + '</span></span></a></span>');
}); });
return valueOfArray.join(' '); return valueOfArray.join(' ');
} }
...@@ -960,7 +956,7 @@ define(['require', ...@@ -960,7 +956,7 @@ define(['require',
var modelObj = model.toJSON(); var modelObj = model.toJSON();
if (key == "name") { if (key == "name") {
var nameHtml = "", var nameHtml = "",
name = modelObj[key]; name = _.escape(modelObj[key]);
if (modelObj.guid) { if (modelObj.guid) {
nameHtml = '<a title="' + name + '" href="#!/detailPage/' + modelObj.guid + (that.fromView ? "?from=" + that.fromView : "") + '">' + name + '</a>'; nameHtml = '<a title="' + name + '" href="#!/detailPage/' + modelObj.guid + (that.fromView ? "?from=" + that.fromView : "") + '">' + name + '</a>';
} else { } else {
...@@ -1154,7 +1150,7 @@ define(['require', ...@@ -1154,7 +1150,7 @@ define(['require',
tagName: tagName, tagName: tagName,
guid: guid, guid: guid,
associatedGuid: guid != entityGuid ? entityGuid : null, associatedGuid: guid != entityGuid ? entityGuid : null,
msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from" + " " + "<b>" + assetName + " ?</b></div>", msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from <b>" + _.escape(assetName) + " ?</b></div>",
titleMessage: Messages.removeTag, titleMessage: Messages.removeTag,
okText: "Remove", okText: "Remove",
showLoader: that.showLoader.bind(that), showLoader: that.showLoader.bind(that),
...@@ -1184,7 +1180,7 @@ define(['require', ...@@ -1184,7 +1180,7 @@ define(['require',
relationshipGuid: termObj.relationGuid relationshipGuid: termObj.relationGuid
}, },
collection: that.glossaryCollection, collection: that.glossaryCollection,
msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(termName) + "</b> assignment from" + " " + "<b>" + assetname + "?</b></div>", msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(termName) + "</b> assignment from <b>" + _.escape(assetname) + "?</b></div>",
titleMessage: Messages.glossary.removeTermfromEntity, titleMessage: Messages.glossary.removeTermfromEntity,
isEntityView: true, isEntityView: true,
buttonText: "Remove", buttonText: "Remove",
......
...@@ -724,7 +724,7 @@ define([ ...@@ -724,7 +724,7 @@ define([
return activeTagObj.name.toLowerCase() === obj.name.toLowerCase(); return activeTagObj.name.toLowerCase() === obj.name.toLowerCase();
}); });
if (duplicateCheck) { if (duplicateCheck) {
duplicateAttributeList.push(obj.name); duplicateAttributeList.push(_.escape(obj.name));
} }
}); });
var notifyObj = { var notifyObj = {
......
...@@ -429,7 +429,7 @@ define([ ...@@ -429,7 +429,7 @@ define([
var notifyObj = { var notifyObj = {
modal: true, modal: true,
html: true, html: true,
text: Messages.conformation.deleteMessage + "<b>" + options.model.get('name') + "</b>" + " ?", text: Messages.conformation.deleteMessage + "<b>" + _.escape(options.model.get('name')) + "</b>" + " ?",
ok: function(argument) { ok: function(argument) {
that.onDeleteNotifyOk(options); that.onDeleteNotifyOk(options);
}, },
......
...@@ -355,7 +355,7 @@ define(['require', ...@@ -355,7 +355,7 @@ define(['require',
var str = '<option value=""' + (!that.tagModel ? 'selected' : '') + '>-- Select ' + typeName + " --</option>"; var str = '<option value=""' + (!that.tagModel ? 'selected' : '') + '>-- Select ' + typeName + " --</option>";
var enumValue = typeNameValue.get('elementDefs'); var enumValue = typeNameValue.get('elementDefs');
_.each(enumValue, function(key, value) { _.each(enumValue, function(key, value) {
str += '<option ' + ((that.tagModel && key.value === that.tagModel.attributes[name]) ? 'selected' : '') + '>' + key.value + '</option>'; str += '<option ' + ((that.tagModel && key.value === that.tagModel.attributes[name]) ? 'selected' : '') + '>' + _.escape(key.value) + '</option>';
}) })
that.ui.tagAttribute.append('<div class="form-group"><label>' + name + '</label>' + ' (' + typeName + ')' + that.ui.tagAttribute.append('<div class="form-group"><label>' + name + '</label>' + ' (' + typeName + ')' +
'<select class="form-control attributeInputVal attrName" data-key="' + name + '">' + str + '</select></div>'); '<select class="form-control attributeInputVal attrName" data-key="' + name + '">' + str + '</select></div>');
...@@ -393,7 +393,7 @@ define(['require', ...@@ -393,7 +393,7 @@ define(['require',
} }
}, },
getElement: function(labelName, typeName) { getElement: function(labelName, typeName) {
var value = this.tagModel && this.tagModel.attributes ? (this.tagModel.attributes[labelName] || "") : "", var value = this.tagModel && this.tagModel.attributes ? (this.tagModel.attributes[_.unescape(labelName)] || "") : "",
isTypeNumber = typeName === "int" || typeName === "byte" || typeName === "short" || typeName === "double" || typeName === "float", isTypeNumber = typeName === "int" || typeName === "byte" || typeName === "short" || typeName === "double" || typeName === "float",
inputClassName = "form-control attributeInputVal attrName"; inputClassName = "form-control attributeInputVal attrName";
if (isTypeNumber) { if (isTypeNumber) {
...@@ -405,7 +405,7 @@ define(['require', ...@@ -405,7 +405,7 @@ define(['require',
'<option value="true">true</option>' + '<option value="true">true</option>' +
'<option value="false">false</option></select>'; '<option value="false">false</option></select>';
} else { } else {
return '<input type="text" value="' + value + '" class="' + inputClassName + '" data-key="' + labelName + '" data-type="' + typeName + '"/>'; return '<input type="text" value="' + _.escape(value) + '" class="' + inputClassName + '" data-key="' + labelName + '" data-type="' + typeName + '"/>';
} }
}, },
......
...@@ -232,7 +232,7 @@ define(['require', ...@@ -232,7 +232,7 @@ define(['require',
return activeTagObj.name.toLowerCase() === obj.name.toLowerCase(); return activeTagObj.name.toLowerCase() === obj.name.toLowerCase();
}); });
if (duplicateCheck) { if (duplicateCheck) {
duplicateAttributeList.push(obj.name); duplicateAttributeList.push(_.escape(obj.name));
} else { } else {
saveObj.attributeDefs.push(obj); saveObj.attributeDefs.push(obj);
} }
......
...@@ -207,7 +207,7 @@ define(['require', ...@@ -207,7 +207,7 @@ define(['require',
tagName: tagName, tagName: tagName,
guid: that.guid, guid: that.guid,
associatedGuid: that.guid != entityGuid ? entityGuid : null, associatedGuid: that.guid != entityGuid ? entityGuid : null,
msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from" + " " + "<b>" + this.entityName + "?</b></div>", msg: "<div class='ellipsis-with-margin'>Remove: " + "<b>" + _.escape(tagName) + "</b> assignment from <b>" + this.entityName + "?</b></div>",
titleMessage: Messages.removeTag, titleMessage: Messages.removeTag,
okText: "Remove", okText: "Remove",
showLoader: function() { showLoader: function() {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment