Commit 3d0fcedb by kevalbhatt Committed by Sarath Subramanian

ATLAS-3656 : UI: Rename type Namespace to BusinessMetadata

parent aa4bbb08
...@@ -15,15 +15,15 @@ ...@@ -15,15 +15,15 @@
// limitations under the License. // limitations under the License.
/* namespace */ /* business-metadata */
.namespace-tree-parent { .business-metadata-tree-parent {
padding: 0px; padding: 0px;
>li:first-child { >li:first-child {
font-weight: 600; font-weight: 600;
} }
.namespace-tree-child { .business-metadata-tree-child {
&.entity-detail-table table { &.entity-detail-table table {
td { td {
&:nth-child(1) { &:nth-child(1) {
...@@ -40,7 +40,7 @@ ...@@ -40,7 +40,7 @@
} }
} }
.namespace-options.dropdown { .business-metadata-options.dropdown {
.dropdown-menu { .dropdown-menu {
min-width: 100px; min-width: 100px;
...@@ -59,7 +59,7 @@ ...@@ -59,7 +59,7 @@
} }
} }
.namespace-options.dropdown.open { .business-metadata-options.dropdown.open {
.btn-action { .btn-action {
background-color: $color_jungle_green_approx; background-color: $color_jungle_green_approx;
border: 1px solid $color_jungle_green_approx; border: 1px solid $color_jungle_green_approx;
...@@ -67,7 +67,7 @@ ...@@ -67,7 +67,7 @@
} }
} }
.namespace-details { .business-metadata-details {
.expandable .attr-details { .expandable .attr-details {
max-height: 300px; max-height: 300px;
...@@ -78,7 +78,7 @@ ...@@ -78,7 +78,7 @@
} }
.tab-pane { .tab-pane {
.namespace-attr-page { .business-metadata-attr-page {
position: absolute; position: absolute;
top: 0px; top: 0px;
left: 0px; left: 0px;
...@@ -89,7 +89,7 @@ ...@@ -89,7 +89,7 @@
} }
} }
.namespace-attr-page { .business-metadata-attr-page {
.form-horizontal { .form-horizontal {
padding: 10px 22px; padding: 10px 22px;
// border: 1px solid #DEDEDE; // border: 1px solid #DEDEDE;
...@@ -108,21 +108,21 @@ ...@@ -108,21 +108,21 @@
padding-right: 10px; padding-right: 10px;
} }
.namespace-attr { .business-metadata-attr {
border: 1px solid #DEDEDE; border: 1px solid #DEDEDE;
padding: 10px 20px padding: 10px 20px
} }
} }
} }
.namespace-attr-fontLoader { .business-metadata-attr-fontLoader {
position: absolute; position: absolute;
top: 50%; top: 50%;
left: 50%; left: 50%;
display: none; display: none;
} }
.namespace-attr-tableOverlay { .business-metadata-attr-tableOverlay {
position: absolute; position: absolute;
width: 100%; width: 100%;
height: 100%; height: 100%;
...@@ -132,7 +132,7 @@ ...@@ -132,7 +132,7 @@
opacity: 0.2; opacity: 0.2;
} }
.name-space-details { .business-metadata-details {
.backgrid { .backgrid {
td.expandable-content { td.expandable-content {
max-width: none; max-width: none;
...@@ -152,7 +152,7 @@ ...@@ -152,7 +152,7 @@
} }
} }
.namespace-attr-page { .business-metadata-attr-page {
.modal-footer { .modal-footer {
text-align: center; text-align: center;
} }
......
...@@ -34,7 +34,7 @@ ...@@ -34,7 +34,7 @@
@import "profile-table.scss"; @import "profile-table.scss";
@import "glossary.scss"; @import "glossary.scss";
@import "wizard.scss"; @import "wizard.scss";
@import "namespace.scss"; @import "business-metadata.scss";
@import "stats.scss"; @import "stats.scss";
@import "override.scss"; @import "override.scss";
@import "leftsidebar.scss" @import "leftsidebar.scss"
\ No newline at end of file
...@@ -129,6 +129,9 @@ define(['require', ...@@ -129,6 +129,9 @@ define(['require',
nonCrudOperation: function(url, requestMethod, options) { nonCrudOperation: function(url, requestMethod, options) {
var that = this; var that = this;
options['beforeSend'] = CommonViewFunction.addRestCsrfCustomHeader; options['beforeSend'] = CommonViewFunction.addRestCsrfCustomHeader;
if (options.data && typeof options.data === "object") {
options.data = JSON.stringify(options.data);
}
return Backbone.sync.call(this, null, this, _.extend({ return Backbone.sync.call(this, null, this, _.extend({
url: url, url: url,
type: requestMethod type: requestMethod
......
...@@ -219,10 +219,10 @@ require(['App', ...@@ -219,10 +219,10 @@ require(['App',
this.metricCollection = new VTagList(); this.metricCollection = new VTagList();
this.metricCollection.url = UrlLinks.metricsApiUrl(); this.metricCollection.url = UrlLinks.metricsApiUrl();
this.metricCollection.modelAttrName = "data"; this.metricCollection.modelAttrName = "data";
// nameSpace // businessMetadata
this.nameSpaceCollection = new VEntityList(); this.businessMetadataDefCollection = new VEntityList();
this.nameSpaceCollection.url = UrlLinks.nameSpaceApiUrl(); this.businessMetadataDefCollection.url = UrlLinks.businessMetadataDefApiUrl();
this.nameSpaceCollection.modelAttrName = "namespaceDefs"; this.businessMetadataDefCollection.modelAttrName = "businessMetadataDefs";
App.appRouter = new Router({ App.appRouter = new Router({
entityDefCollection: this.entityDefCollection, entityDefCollection: this.entityDefCollection,
...@@ -230,7 +230,7 @@ require(['App', ...@@ -230,7 +230,7 @@ require(['App',
enumDefCollection: this.enumDefCollection, enumDefCollection: this.enumDefCollection,
classificationDefCollection: this.classificationDefCollection, classificationDefCollection: this.classificationDefCollection,
metricCollection: this.metricCollection, metricCollection: this.metricCollection,
nameSpaceCollection: this.nameSpaceCollection businessMetadataDefCollection: this.businessMetadataDefCollection
}); });
var startApp = function() { var startApp = function() {
...@@ -318,12 +318,12 @@ require(['App', ...@@ -318,12 +318,12 @@ require(['App',
} }
}); });
this.nameSpaceCollection.fetch({ this.businessMetadataDefCollection.fetch({
complete: function() { complete: function() {
that.nameSpaceCollection.fullCollection.comparator = function(model) { that.businessMetadataDefCollection.fullCollection.comparator = function(model) {
return model.get('name').toLowerCase(); return model.get('name').toLowerCase();
}; };
that.nameSpaceCollection.fullCollection.sort({ silent: true }); that.businessMetadataDefCollection.fullCollection.sort({ silent: true });
--that.asyncFetchCounter; --that.asyncFetchCounter;
startApp(); startApp();
} }
......
...@@ -57,6 +57,9 @@ define(['require', 'utils/Utils', 'backbone', 'utils/CommonViewFunction'], funct ...@@ -57,6 +57,9 @@ define(['require', 'utils/Utils', 'backbone', 'utils/CommonViewFunction'], funct
nonCrudOperation: function(url, requestMethod, options) { nonCrudOperation: function(url, requestMethod, options) {
var that = this; var that = this;
options['beforeSend'] = CommonViewFunction.addRestCsrfCustomHeader; options['beforeSend'] = CommonViewFunction.addRestCsrfCustomHeader;
if (options.data && typeof options.data === "object") {
options.data = JSON.stringify(options.data);
}
return Backbone.sync.call(this, null, this, _.extend({ return Backbone.sync.call(this, null, this, _.extend({
url: url, url: url,
type: requestMethod type: requestMethod
......
...@@ -96,20 +96,20 @@ define(['require', ...@@ -96,20 +96,20 @@ define(['require',
}, options); }, options);
return this.constructor.nonCrudOperation.call(this, url, "POST", options); return this.constructor.nonCrudOperation.call(this, url, "POST", options);
}, },
saveNameSpaceAttribute: function(options) { saveBusinessMetadata: function(options) {
var url = UrlLinks.nameSpaceUpdateUrl(); var url = UrlLinks.businessMetadataDefApiUrl();
options = _.extend({ options = _.extend({
contentType: 'application/json', contentType: 'application/json',
dataType: 'json' dataType: 'json'
}, options); }, options);
return this.constructor.nonCrudOperation.call(this, url, 'PUT', options); return this.constructor.nonCrudOperation.call(this, url, '', options);
}, },
deleteNameSpace: function(options) { deleteBusinessMetadata: function(options) {
var url = UrlLinks.nameSpaceUpdateUrl(options.typeName); var url = UrlLinks.businessMetadataDefApiUrl(options.typeName);
return this.constructor.nonCrudOperation.call(this, url, 'DELETE', options); return this.constructor.nonCrudOperation.call(this, url, 'DELETE', options);
}, },
saveNamespaceEntity: function(guid, options) { saveBusinessMetadataEntity: function(guid, options) {
var url = UrlLinks.entitiesNamespaceApiUrl(guid); var url = UrlLinks.entitiesBusinessMetadataApiUrl(guid);
options = _.extend({ options = _.extend({
contentType: 'application/json', contentType: 'application/json',
dataType: 'json' dataType: 'json'
......
...@@ -49,14 +49,14 @@ define([ ...@@ -49,14 +49,14 @@ define([
"!/detailPage/:id": "detailPage", "!/detailPage/:id": "detailPage",
//Audit table //Audit table
'!/administrator': 'administrator', '!/administrator': 'administrator',
'!/administrator/namespace/:id': 'nameSpaceDetailPage', '!/administrator/businessMetadata/:id': 'businessMetadataDetailPage',
// Default // Default
"*actions": "defaultAction" "*actions": "defaultAction"
}, },
initialize: function(options) { initialize: function(options) {
_.extend( _.extend(
this, this,
_.pick(options, "entityDefCollection", "typeHeaders", "enumDefCollection", "classificationDefCollection", "metricCollection", "nameSpaceCollection") _.pick(options, "entityDefCollection", "typeHeaders", "enumDefCollection", "classificationDefCollection", "metricCollection", "businessMetadataDefCollection")
); );
this.showRegions(); this.showRegions();
this.bindCommonEvents(); this.bindCommonEvents();
...@@ -75,7 +75,7 @@ define([ ...@@ -75,7 +75,7 @@ define([
classificationDefCollection: this.classificationDefCollection, classificationDefCollection: this.classificationDefCollection,
glossaryCollection: this.glossaryCollection, glossaryCollection: this.glossaryCollection,
metricCollection: this.metricCollection, metricCollection: this.metricCollection,
nameSpaceCollection: this.nameSpaceCollection businessMetadataDefCollection: this.businessMetadataDefCollection
}; };
this.sharedObj = { this.sharedObj = {
searchTableColumns: {}, searchTableColumns: {},
...@@ -486,7 +486,7 @@ define([ ...@@ -486,7 +486,7 @@ define([
var that = this; var that = this;
require(["views/site/Header", "views/site/SideNavLayoutView", 'views/administrator/AdministratorLayoutView'], function(Header, SideNavLayoutView, AdministratorLayoutView) { require(["views/site/Header", "views/site/SideNavLayoutView", 'views/administrator/AdministratorLayoutView'], function(Header, SideNavLayoutView, AdministratorLayoutView) {
var value = Utils.getUrlState.getQueryParams(), var value = Utils.getUrlState.getQueryParams(),
paramObj = _.extend({ value: value, namespaceID: null }, that.preFetchedCollectionLists); paramObj = _.extend({ value: value, guid: null }, that.preFetchedCollectionLists);
that.renderViewIfNotExists(that.getHeaderOptions(Header)); that.renderViewIfNotExists(that.getHeaderOptions(Header));
that.renderViewIfNotExists({ that.renderViewIfNotExists({
view: App.rSideNav, view: App.rSideNav,
...@@ -502,13 +502,13 @@ define([ ...@@ -502,13 +502,13 @@ define([
App.rContent.show(new AdministratorLayoutView(paramObj)); App.rContent.show(new AdministratorLayoutView(paramObj));
}); });
}, },
nameSpaceDetailPage: function(namespaceGuid) { businessMetadataDetailPage: function(guid) {
var that = this; var that = this;
require(["views/site/Header", "views/site/SideNavLayoutView", "views/name_space/NameSpaceContainerLayoutView", ], function(Header, SideNavLayoutView, NameSpaceContainerLayoutView) { require(["views/site/Header", "views/site/SideNavLayoutView", "views/business_metadata/BusinessMetadataContainerLayoutView", ], function(Header, SideNavLayoutView, BusinessMetadataContainerLayoutView) {
var paramObj = Utils.getUrlState.getQueryParams(); var paramObj = Utils.getUrlState.getQueryParams();
that.renderViewIfNotExists(that.getHeaderOptions(Header)); that.renderViewIfNotExists(that.getHeaderOptions(Header));
var options = _.extend({ var options = _.extend({
namespaceID: namespaceGuid, guid: guid,
value: paramObj, value: paramObj,
searchVent: that.searchVent, searchVent: that.searchVent,
categoryEvent: that.categoryEvent categoryEvent: that.categoryEvent
...@@ -525,7 +525,7 @@ define([ ...@@ -525,7 +525,7 @@ define([
return new SideNavLayoutView(options); return new SideNavLayoutView(options);
} }
}); });
App.rContent.show(new NameSpaceContainerLayoutView(options)); App.rContent.show(new BusinessMetadataContainerLayoutView(options));
}); });
}, },
defaultAction: function(actions) { defaultAction: function(actions) {
......
...@@ -20,15 +20,15 @@ ...@@ -20,15 +20,15 @@
</div> --> </div> -->
<div class="col-sm-12 default-tab"> <div class="col-sm-12 default-tab">
<ul class="nav nav-tabs" data-id="tab-list"> <ul class="nav nav-tabs" data-id="tab-list">
<li role="namespace" class="tab active"><a href="#tab-namespace" aria-controls="tab-namespace" role="tab" data-toggle="tab">Namespaces</a></li> <li role="businessMetadata" class="tab active"><a href="#tab-businessMetadata" aria-controls="tab-businessMetadata" role="tab" data-toggle="tab">Business Metadata</a></li>
<li role="enum"><a href="#tab-enum" aria-controls="tab-enum" role="tab" data-toggle="tab">Enumerations</a></li> <li role="enum"><a href="#tab-enum" aria-controls="tab-enum" role="tab" data-toggle="tab">Enumerations</a></li>
</ul> </ul>
</div> </div>
</div> </div>
<div> <div>
<div class="tab-content purge-details"> <div class="tab-content purge-details">
<div id="tab-namespace" role="namespace" class="tab-pane active animated fadeIn"> <div id="tab-businessMetadata" role="businessMetadata" class="tab-pane active animated fadeIn">
<div id="r_namespaceTableLayoutView"> <div id="r_businessMetadataTableLayoutView">
</div> </div>
</div> </div>
<div id="tab-enum" role="enum" class="tab-pane animated fadeIn"> <div id="tab-enum" role="enum" class="tab-pane animated fadeIn">
......
...@@ -14,34 +14,34 @@ ...@@ -14,34 +14,34 @@
* 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.
--> -->
<div class="namespace-attr-page" data-id="namespaceAttrPage"> <div class="business-metadata-attr-page" data-id="businessMetadataAttrPage">
<div class="namespace-attr-tableOverlay"></div> <div class="business-metadata-attr-tableOverlay"></div>
<div class=" modal-header" data-id="namespaceAttrPageHeader"> <div class=" modal-header" data-id="businessMetadataAttrPageHeader">
<h4 class="modal-title" data-id="namespaceAttrPageTitle"></h4> <h4 class="modal-title" data-id="businessMetadataAttrPageTitle"></h4>
</div> </div>
<div id="r_modal"> <div id="r_modal">
</div> </div>
<div class="namespace-attr-fontLoader"> <div class="business-metadata-attr-fontLoader">
<i class="fa fa-refresh fa-spin-custom"></i> <i class="fa fa-refresh fa-spin-custom"></i>
</div> </div>
<!-- <div class="modal-footer " data-id="modalFooter"> <!-- <div class="modal-footer " data-id="modalFooter">
<button type="button" class="btn btn-action cancel" data-id="namespaceAttrPageCancle">Cancel</button> <button type="button" class="btn btn-action cancel" data-id="businessMetadataAttrPageCancle">Cancel</button>
<button type="button" class="btn btn-atlas ok" data-id="namespaceAttrPageOk">Ok</button> <button type="button" class="btn btn-atlas ok" data-id="businessMetadataAttrPageOk">Ok</button>
</div> --> </div> -->
</div> </div>
<div class="namespace-details" data-id="namespaceDetailPage"> <div class="business-metadata-details" data-id="businessMetadataDetailPage">
<div class="position-relative"> <div class="position-relative">
<div class="pull-right inline-content-fr no-padding-left"> <div class="pull-right inline-content-fr no-padding-left">
<div class="inline" data-id="colManager"></div> <div class="inline" data-id="colManager"></div>
<div class="inline"> <div class="inline">
<button type="button" data-id="addAttribute" title="Create Namespace" class="btn btn-action btn-sm pull-right btn-loader" style="margin-bottom: 10px;" data-action="createNamespace"> <button type="button" data-id="addAttribute" title="Create Business Metadata Attribute" class="btn btn-action btn-sm pull-right btn-loader" style="margin-bottom: 10px;" data-action="createBusinessMetadata">
<i class='fa fa-plus'></i> Attributes <i class='fa fa-plus'></i> Attributes
</button></div> </button></div>
</div> </div>
<div class="tableOverlay"></div> <div class="tableOverlay"></div>
<div class='attr-filter-overlay hide'></div> <div class='attr-filter-overlay hide'></div>
<div class="auditTable name-space-details"> <div class="auditTable business-metadata-details">
<div id="r_nameSpaceAttrTableLayoutView"></div> <div id="r_businessMetadataAttrTableLayoutView"></div>
</div> </div>
</div> </div>
</div> </div>
\ No newline at end of file
...@@ -14,7 +14,7 @@ ...@@ -14,7 +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.
--> -->
<div id="{{modalID}}" class="form-group clearfix namespace-attr"> <div id="{{modalID}}" class="form-group clearfix business-metadata-attr">
<div class="form-group"> <div class="form-group">
<div class="col-sm-12 attributePlusData " align="right"> <div class="col-sm-12 attributePlusData " align="right">
<button type="button" class="btn btn-danger btn-sm closeInput" data-id="close"><i class="fa fa-times"></i></button> <button type="button" class="btn btn-danger btn-sm closeInput" data-id="close"><i class="fa fa-times"></i></button>
...@@ -79,7 +79,7 @@ ...@@ -79,7 +79,7 @@
</div> </div>
</div> </div>
</div> </div>
<div class="form-group entity-namespace-selector"> <div class="form-group entity-businessMetadata-selector">
<label class="control-label col-sm-3" for="name">Applicable Types</label> <label class="control-label col-sm-3" for="name">Applicable Types</label>
<div class="col-sm-8"> <div class="col-sm-8">
<select class="form-control entityTypeSelector" data-id="entityTypeSelector" multiple="multiple"> <select class="form-control entityTypeSelector" data-id="entityTypeSelector" multiple="multiple">
......
...@@ -15,6 +15,6 @@ ...@@ -15,6 +15,6 @@
* limitations under the License. * limitations under the License.
--> -->
<div> <div>
<div id="r_nameSpaceDetailContainer" class="sidebar-fixed-filter"></div> <div id="r_businessMetadataDetailContainer" class="sidebar-fixed-filter"></div>
<div id="r_nameSpaceAttrContainer" class="col-sm-12"></div> <div id="r_businessMetadataAttrContainer" class="col-sm-12"></div>
</div> </div>
\ No newline at end of file
...@@ -14,34 +14,34 @@ ...@@ -14,34 +14,34 @@
* 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.
--> -->
<div class="namespace-attr-page" data-id="namespaceAttrPage"> <div class="business-metadata-attr-page" data-id="businessMetadataAttrPage">
<div class="namespace-attr-tableOverlay"></div> <div class="business-metadata-attr-tableOverlay"></div>
<div class=" modal-header" data-id="namespaceAttrPageHeader"> <div class=" modal-header" data-id="businessMetadataAttrPageHeader">
<h4 class="modal-title" data-id="namespaceAttrPageTitle"></h4> <h4 class="modal-title" data-id="businessMetadataAttrPageTitle"></h4>
</div> </div>
<div id="r_modal"> <div id="r_modal">
</div> </div>
<div class="namespace-attr-fontLoader"> <div class="business-metadata-attr-fontLoader">
<i class="fa fa-refresh fa-spin-custom"></i> <i class="fa fa-refresh fa-spin-custom"></i>
</div> </div>
<!-- <div class="modal-footer " data-id="modalFooter"> <!-- <div class="modal-footer " data-id="modalFooter">
<button type="button" class="btn btn-action cancel" data-id="namespaceAttrPageCancle">Cancel</button> <button type="button" class="btn btn-action cancel" data-id="businessMetadataAttrPageCancle">Cancel</button>
<button type="button" class="btn btn-atlas ok" data-id="namespaceAttrPageOk">Ok</button> <button type="button" class="btn btn-atlas ok" data-id="businessMetadataAttrPageOk">Ok</button>
</div> --> </div> -->
</div> </div>
<div class="namespace-details" data-id="namespaceDetailPage"> <div class="business-metadata-details" data-id="businessMetadataDetailPage">
<div class="position-relative"> <div class="position-relative">
<div class="pull-right inline-content-fr no-padding-left"> <div class="pull-right inline-content-fr no-padding-left">
<div class="inline" data-id="colManager"></div> <div class="inline" data-id="colManager"></div>
<div class="inline"> <div class="inline">
<button type="button" data-id="createNameSpace" title="Create Namespace" class="btn btn-action btn-sm pull-right btn-loader" style="margin-bottom: 10px;" data-action="createNamespace"> <button type="button" data-id="createBusinessMetadata" title="Create Business Metadata" class="btn btn-action btn-sm pull-right btn-loader" style="margin-bottom: 10px;" data-action="createBusinessMetadata">
<i class='fa fa-plus'></i> Create Namespace <i class='fa fa-plus'></i> Create Business Metadata
</button></div> </button></div>
</div> </div>
<div class="tableOverlay"></div> <div class="tableOverlay"></div>
<div class='attr-filter-overlay hide'></div> <div class='attr-filter-overlay hide'></div>
<div class="auditTable name-space-details"> <div class="auditTable business-metadata-details">
<div id="r_nameSpaceTableLayoutView"></div> <div id="r_businessMetadataTableLayoutView"></div>
</div> </div>
</div> </div>
</div> </div>
\ No newline at end of file
...@@ -17,13 +17,13 @@ ...@@ -17,13 +17,13 @@
<div class="fontLoader"> <div class="fontLoader">
<i class="fa fa-refresh fa-spin-custom"></i> <i class="fa fa-refresh fa-spin-custom"></i>
</div> </div>
<form name="tagDefinitionform" class="hide form-horizontal" data-id="createTagForm" style="width: 70%;margin: 0 auto;"> <form class="hide form-horizontal" data-id="createForm" style="width: 70%;margin: 0 auto;">
{{#if fromTable}} {{#if fromTable}}
<div class="form-group"> <div class="form-group">
<label class="control-label col-sm-2 {{#if create}}required{{/if}}" for="name">Name</label> <label class="control-label col-sm-2 {{#if create}}required{{/if}}" for="name">Name</label>
{{#if create}} {{#if create}}
<div class="col-sm-10"> <div class="col-sm-10">
<input class="form-control namespace-name" data-id="tagName" placeholder="Name(required)" autofocus /> <input class="form-control businessMetadata-name" data-id="name" placeholder="Name(required)" autofocus />
</div> </div>
{{else}} {{else}}
<span class="ellipsis-with-margin control-label text-left col-sm-10" data-id="title"></span> {{/if}} <span class="ellipsis-with-margin control-label text-left col-sm-10" data-id="title"></span> {{/if}}
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
<!-- <h4 class="col-sm-6">Attributes</h4> --> <!-- <h4 class="col-sm-6">Attributes</h4> -->
{{#if isEditAttr}} {{#if isEditAttr}}
<div class="col-sm-12 no-padding-left"> <div class="col-sm-12 no-padding-left">
<button title="Add Namespace attribute" type="button" class="btn btn-action btn-sm pull-left" data-id="attributeData"><i class="fa fa-plus"></i> Add Namespace attribute</button> <button title="Add Business Metadata attribute" type="button" class="btn btn-action btn-sm pull-left" data-id="attributeData"><i class="fa fa-plus"></i> Add Business Metadata attribute</button>
</div> </div>
{{/if}} {{/if}}
</div> </div>
...@@ -48,6 +48,6 @@ ...@@ -48,6 +48,6 @@
</div> </div>
</form> </form>
<div class="modal-footer " data-id="modalFooter"> <div class="modal-footer " data-id="modalFooter">
<button type="button" class="btn btn-action cancel" data-id="namespaceAttrPageCancle">Cancel</button> <button type="button" class="btn btn-action cancel" data-id="businessMetadataAttrPageCancle">Cancel</button>
<button type="button" class="btn btn-atlas ok" data-id="namespaceAttrPageOk">Ok</button> <button type="button" class="btn btn-atlas ok" data-id="businessMetadataAttrPageOk">Ok</button>
</div> </div>
\ No newline at end of file
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
</div> </div>
</div> </div>
<div id="r_entityLabelDefineView"></div> <div id="r_entityLabelDefineView"></div>
<div id="r_entityNameSpaceView"></div> <div id="r_entityBusinessMetadataView"></div>
</div> </div>
</div> </div>
</div> </div>
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
<table class="custom-table" style="font-weight: 100;"> <table class="custom-table" style="font-weight: 100;">
<tr class="custom-tr"> <tr class="custom-tr">
<td class="custom-col-1"> <td class="custom-col-1">
{{{callmyfunction getNamespaceDroupdown nameSpaceCollection}}} {{{callmyfunction getBusinessMetadataDroupdown businessMetadataCollection}}}
</td> </td>
<td class="custom-col-0"> : </td> <td class="custom-col-0"> : </td>
<td class="custom-col-1" data-id="value"> <td class="custom-col-1" data-id="value">
...@@ -36,9 +36,9 @@ ...@@ -36,9 +36,9 @@
</table> </table>
{{else}} {{else}}
<hr /> <hr />
<ul class="namespace-tree-parent"> <ul class="business-metadata-tree-parent">
<li>{{model.__internal_UI_nameSpaceName}}</li> <li>{{model.__internal_UI_businessMetadataName}}</li>
<li class="namespace-tree-child" data-id="namespaceTreeChild"> <li class="business-metadata-tree-child" data-id="businessMetadataTreeChild">
</li> </li>
</ul> </ul>
{{/ifCond}} {{/ifCond}}
\ No newline at end of file
...@@ -14,28 +14,28 @@ ...@@ -14,28 +14,28 @@
* 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.
--> -->
<div class="panel panel-default custom-panel expand_collapse_panel-icon" data-id="namespace"> <div class="panel panel-default custom-panel expand_collapse_panel-icon">
<div class="panel-heading" data-toggle="collapse" href="#namespaceCollapse" aria-expanded="false" style="width: 70%;"> <div class="panel-heading" data-toggle="collapse" href="#businessMetadataCollapse" aria-expanded="false" style="width: 70%;">
<h4 class="panel-title"> <h4 class="panel-title">
<a>Namespaces</a> <a>Business Metadata</a>
</h4> </h4>
<div class="btn-group pull-left"> <div class="btn-group pull-left">
<button type="button" title="Collapse"><i class="ec-icon fa"></i></button> <button type="button" title="Collapse"><i class="ec-icon fa"></i></button>
</div> </div>
</div> </div>
<div class="panel-actions"> <div class="panel-actions">
<button class="btn btn-action btn-sm" data-id="addNameSpace">Add</button> <button class="btn btn-action btn-sm" data-id="addBusinessMetadata">Add</button>
<button class="btn btn-action btn-sm" style="display: none;" data-id="saveNameSpace">Save</button> <button class="btn btn-action btn-sm" style="display: none;" data-id="saveBusinessMetadata">Save</button>
<button class="btn btn-action btn-sm" style="display: none;" data-id="cancel">Cancel</button> <button class="btn btn-action btn-sm" style="display: none;" data-id="cancel">Cancel</button>
</div> </div>
<div id="namespaceCollapse" class="panel-collapse collapse"> <div id="businessMetadataCollapse" class="panel-collapse collapse">
<div class="panel-body"> <div class="panel-body">
<div data-id="namespaceTree"></div> <div data-id="businessMetadataTree"></div>
<div class="editBox" style="display: none;"> <div class="editBox" style="display: none;">
<div class="form-group"> <div class="form-group">
<a href="javascript:void(0)" class="btn btn-action btn-sm" data-id="addItem" data-type="addAttrButton">Add New Attribute</a> <a href="javascript:void(0)" class="btn btn-action btn-sm" data-id="addItem" data-type="addAttrButton">Add New Attribute</a>
</div> </div>
<ul class="namespace-tree-parent" data-id="itemView"></ul> <ul class="business-metadata-tree-parent" data-id="itemView"></ul>
</div> </div>
</div> </div>
</div> </div>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
<div data-id="r_classificationTreeRender"></div> <div data-id="r_classificationTreeRender"></div>
</div> </div>
<div class="col-sm-12"> <div class="col-sm-12">
<div data-id="r_nameSpaceTreeRender"></div> <div data-id="r_businessMetadataTreeRender"></div>
</div> </div>
<div class="col-sm-12"> <div class="col-sm-12">
<div data-id="r_glossaryTreeRender"></div> <div data-id="r_glossaryTreeRender"></div>
......
...@@ -15,31 +15,21 @@ ...@@ -15,31 +15,21 @@
* limitations under the License. * limitations under the License.
--> -->
<div class="panel panel-default expand_collapse_panel-icon right-icons"> <div class="panel panel-default expand_collapse_panel-icon right-icons">
<div class="panel-heading dash-button-icon clearfix" data-toggle="collapse" aria-expanded="true" href="#c_namespace"> <div class="panel-heading dash-button-icon clearfix" data-toggle="collapse" aria-expanded="true" href="#businessMetadataTree">
<i class="ec-icon fa"></i> <i class="ec-icon fa"></i>
<h4 class="panel-title">Namespaces</h4> <h4 class="panel-title">Business Metadata</h4>
<div class="btn-group pull-right"> <div class="btn-group pull-right">
<button type="button" class="typeRefresh drop-down-menu-view" data-id="refreshTree" data-type="classification" title="Refresh"> <button type="button" class="typeRefresh drop-down-menu-view" data-id="refreshTree" title="Refresh">
<i class="fa fa-refresh"></i> <i class="fa fa-refresh"></i>
</button> </button>
<button type="button" class="typeRefresh drop-down-menu-view" data-id="createNameSpace" data-type="classification" title="Open Namespaces"> <button type="button" class="typeRefresh drop-down-menu-view" data-id="createBusinessMetadata" title="Open Business Metadata">
<i class="fa fa-external-link"></i> <i class="fa fa-external-link"></i>
</button> </button>
<!-- <button type="button" class="typeRefresh dropdown">
<div class=" btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<i class="fa fa-ellipsis-v"></i>
</div>
<ul class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<li data-id="groupOrFlatTreeView" data-type="classification"> <i class="fa fa-list-ul"></i><span>Show flat tree</span>
</li>
<li data-id="createNameSpace" data-type="classification"> <i class="fa fa-plus"></i><span>Create Namespace</span>
</li>
</button> -->
</ul> </ul>
</button> </button>
</div> </div>
</div> </div>
<div id="c_namespace" class="panel-collapse collapse jstree-with-action in"> <div id="businessMetadataTree" class="panel-collapse collapse jstree-with-action in">
<div data-id="nameSpaceSearchTree"></div> <div data-id="businessMetadataSearchTree"></div>
</div> </div>
</div> </div>
\ No newline at end of file
...@@ -37,6 +37,9 @@ define(['require', 'utils/Enums', 'utils/Utils', 'underscore'], function(require ...@@ -37,6 +37,9 @@ define(['require', 'utils/Enums', 'utils/Utils', 'underscore'], function(require
classificationDefApiUrl: function(name) { classificationDefApiUrl: function(name) {
return this.getDefApiUrl('classification', name); return this.getDefApiUrl('classification', name);
}, },
businessMetadataDefApiUrl: function(name) {
return this.getDefApiUrl('business_metadata', name);
},
enumDefApiUrl: function(name) { enumDefApiUrl: function(name) {
return this.getDefApiUrl('enum', name); return this.getDefApiUrl('enum', name);
}, },
...@@ -99,9 +102,9 @@ define(['require', 'utils/Enums', 'utils/Utils', 'underscore'], function(require ...@@ -99,9 +102,9 @@ define(['require', 'utils/Enums', 'utils/Utils', 'underscore'], function(require
return this.baseUrlV2 + '/entity/bulk/classification'; return this.baseUrlV2 + '/entity/bulk/classification';
} }
}, },
entitiesNamespaceApiUrl: function(guid) { entitiesBusinessMetadataApiUrl: function(guid) {
if (guid) { if (guid) {
return this.baseUrlV2 + '/entity/guid/' + guid + '/namespaces?isOverwrite=true'; return this.baseUrlV2 + '/entity/guid/' + guid + '/businessmetata?isOverwrite=true';
} }
}, },
entityCollectionaudit: function(guid) { entityCollectionaudit: function(guid) {
...@@ -130,14 +133,6 @@ define(['require', 'utils/Enums', 'utils/Utils', 'underscore'], function(require ...@@ -130,14 +133,6 @@ define(['require', 'utils/Enums', 'utils/Utils', 'underscore'], function(require
} }
return url; return url;
}, },
classicationApiUrl: function(name, guid) {
var typeUrl = this.typedefsUrl();
if (name) {
return typeUrl.def + '/name/' + name + '?type=classification';
} else if (guid) {
return typeUrl.def + '/guid/' + guid + '?type=classification';
}
},
typesApiUrl: function() { typesApiUrl: function() {
return this.typedefsUrl().defs + '/headers?excludeInternalTypesAndReferences=true' return this.typedefsUrl().defs + '/headers?excludeInternalTypesAndReferences=true'
}, },
...@@ -234,24 +229,6 @@ define(['require', 'utils/Enums', 'utils/Utils', 'underscore'], function(require ...@@ -234,24 +229,6 @@ define(['require', 'utils/Enums', 'utils/Utils', 'underscore'], function(require
}, },
purgeApiUrl: function() { purgeApiUrl: function() {
return this.baseUrl + '/admin/audit'; return this.baseUrl + '/admin/audit';
},
nameSpaceApiUrl: function() {
return this.typedefsUrl().defs + '?type=namespace';
},
nameSpaceGuidApiUrl: function(guid) {
var lineageUrl = this.baseUrlV2 + '/types/namespacedef/guid';
if (guid) {
return lineageUrl + '/' + guid;
} else {
return lineageUrl
}
},
nameSpaceUpdateUrl: function(name) {
if (name) {
return this.typedefsUrl().def + '/name/' + name;
} else {
return this.typedefsUrl().defs + '?type=namespace';
}
} }
}); });
......
...@@ -567,7 +567,7 @@ define(['require', 'utils/Globals', 'pnotify', 'utils/Messages', 'utils/Enums', ...@@ -567,7 +567,7 @@ define(['require', 'utils/Globals', 'pnotify', 'utils/Messages', 'utils/Enums',
urlPath = "tagUrl"; urlPath = "tagUrl";
} else if (queryParams.from == "glossary") { } else if (queryParams.from == "glossary") {
urlPath = "glossaryUrl"; urlPath = "glossaryUrl";
} else if (queryParams.from == "namespace") { } else if (queryParams.from == "bm") {
urlPath = "administratorUrl"; urlPath = "administratorUrl";
} }
} }
......
...@@ -37,7 +37,7 @@ define(['require', ...@@ -37,7 +37,7 @@ define(['require',
/** Layout sub regions */ /** Layout sub regions */
regions: { regions: {
RNamespaceTableLayoutView: "#r_namespaceTableLayoutView", RBusinessMetadataTableLayoutView: "#r_businessMetadataTableLayoutView",
REnumTableLayoutView: '#r_enumTableLayoutView' REnumTableLayoutView: '#r_enumTableLayoutView'
}, },
...@@ -67,7 +67,7 @@ define(['require', ...@@ -67,7 +67,7 @@ define(['require',
* @constructs * @constructs
*/ */
initialize: function(options) { initialize: function(options) {
_.extend(this, _.pick(options, 'value', 'guid', 'entity', 'entityName', 'attributeDefs', 'entityDefCollection', 'nameSpaceCollection', 'enumDefCollection')); _.extend(this, _.pick(options, 'value', 'guid', 'entityDefCollection', 'businessMetadataDefCollection', 'enumDefCollection'));
}, },
onShow: function() { onShow: function() {
...@@ -81,21 +81,21 @@ define(['require', ...@@ -81,21 +81,21 @@ define(['require',
this.renderEnumLayoutView(); this.renderEnumLayoutView();
}, },
onRender: function() { onRender: function() {
this.renderNameSpaceLayoutView(); this.renderBusinessMetadataLayoutView();
this.bindEvents(); this.bindEvents();
}, },
renderNameSpaceLayoutView: function(obj) { renderBusinessMetadataLayoutView: function(obj) {
var that = this; var that = this;
require(['views/name_space/NameSpaceTableLayoutView'], function(NameSpaceTableLayoutView) { require(['views/business_metadata/BusinessMetadataTableLayoutView'], function(BusinessMetadataTableLayoutView) {
that.RNamespaceTableLayoutView.show(new NameSpaceTableLayoutView({ nameSpaceCollection: that.nameSpaceCollection, entityDefCollection: that.entityDefCollection })); that.RBusinessMetadataTableLayoutView.show(new BusinessMetadataTableLayoutView({ businessMetadataDefCollection: that.businessMetadataDefCollection, entityDefCollection: that.entityDefCollection }));
}); });
}, },
renderEnumLayoutView: function(obj) { renderEnumLayoutView: function(obj) {
var that = this; var that = this;
require(["views/name_space/EnumCreateUpdateItemView"], function(EnumCreateUpdateItemView) { require(["views/business_metadata/EnumCreateUpdateItemView"], function(EnumCreateUpdateItemView) {
var view = new EnumCreateUpdateItemView({ var view = new EnumCreateUpdateItemView({
enumDefCollection: that.enumDefCollection, enumDefCollection: that.enumDefCollection,
nameSpaceCollection: that.nameSpaceCollection businessMetadataDefCollection: that.businessMetadataDefCollection
}); });
that.REnumTableLayoutView.show(view); that.REnumTableLayoutView.show(view);
}); });
......
...@@ -18,28 +18,21 @@ ...@@ -18,28 +18,21 @@
define(['require', define(['require',
'backbone', 'backbone',
'hbs!tmpl/name_space/NameSpaceAttrTableLayoutView_tmpl', 'hbs!tmpl/business_metadata/BusinessMetadataAttrTableLayoutView_tmpl',
'collection/VEntityList', 'collection/VEntityList'
'collection/VTagList', ], function(require, Backbone, BusinessMetadataAttrTableLayoutView_tmpl, VEntityList) {
'models/VSearch',
'utils/Utils',
'utils/Messages',
'utils/Enums',
'utils/UrlLinks',
'utils/CommonViewFunction'
], function(require, Backbone, NameSpaceAttrTableLayoutView_tmpl, VEntityList, VTagList, VSearch, Utils, Messages, Enums, UrlLinks, CommonViewFunction) {
'use strict'; 'use strict';
var NameSpaceAttrTableLayoutView = Backbone.Marionette.LayoutView.extend( var BusinessMetadataAttrTableLayoutView = Backbone.Marionette.LayoutView.extend(
/** @lends NameSpaceAttrTableLayoutView */ /** @lends BusinessMetadataAttrTableLayoutView */
{ {
_viewName: 'NameSpaceAttrTableLayoutView', _viewName: 'BusinessMetadataAttrTableLayoutView',
template: NameSpaceAttrTableLayoutView_tmpl, template: BusinessMetadataAttrTableLayoutView_tmpl,
/** Layout sub regions */ /** Layout sub regions */
regions: { regions: {
RNameSpaceAttrTableLayoutView: "#r_nameSpaceAttrTableLayoutView", RBusinessMetadataAttrTableLayoutView: "#r_businessMetadataAttrTableLayoutView",
RModal: "#r_modal" RModal: "#r_modal"
}, },
...@@ -47,9 +40,9 @@ define(['require', ...@@ -47,9 +40,9 @@ define(['require',
ui: { ui: {
attributeEdit: "[data-id='attributeEdit']", attributeEdit: "[data-id='attributeEdit']",
addAttribute: '[data-id="addAttribute"]', addAttribute: '[data-id="addAttribute"]',
namespaceAttrPage: "[data-id='namespaceAttrPage']", businessMetadataAttrPage: "[data-id='businessMetadataAttrPage']",
namespaceAttrPageTitle: "[data-id='namespaceAttrPageTitle']", businessMetadataAttrPageTitle: "[data-id='businessMetadataAttrPageTitle']",
namespaceDetailPage: "[data-id='namespaceDetailPage']", businessMetadataDetailPage: "[data-id='businessMetadataDetailPage']",
}, },
/** ui events hash */ /** ui events hash */
events: function() { events: function() {
...@@ -59,13 +52,14 @@ define(['require', ...@@ -59,13 +52,14 @@ define(['require',
return events; return events;
}, },
/** /**
* intialize a new NameSpaceAttrTableLayoutView Layout * intialize a new BusinessMetadataAttrTableLayoutView Layout
* @constructs * @constructs
*/ */
initialize: function(options) { initialize: function(options) {
_.extend(this, _.pick(options, 'guid', 'entity', 'entityName', 'attributeDefs', 'typeHeaders', 'nameSpaceCollection', 'nameSpaceAttr', 'entityDefCollection')); _.extend(this, _.pick(options, 'guid', 'model', 'typeHeaders', 'businessMetadataDefCollection', 'entityDefCollection'));
this.businessMetadataAttr = new VEntityList(this.model.get("attributeDefs") || []);
this.commonTableOptions = { this.commonTableOptions = {
collection: this.nameSpaceAttr, collection: this.businessMetadataAttr,
includeFilter: false, includeFilter: false,
includePagination: false, includePagination: false,
includePageSize: false, includePageSize: false,
...@@ -82,35 +76,31 @@ define(['require', ...@@ -82,35 +76,31 @@ define(['require',
this.showDetails = true; this.showDetails = true;
}, },
onRender: function() { onRender: function() {
this.toggleNamespaceDetailsAttrView();
if (this.nameSpaceCollection.models.length && !this.model) {
this.model = this.nameSpaceCollection.fullCollection.findWhere({ guid: this.guid });
Utils.showTitleLoader(this.$('.page-title .fontLoader'), this.$('.tagDetail'));
this.renderTableLayoutView(); this.renderTableLayoutView();
} this.toggleBusinessMetadataDetailsAttrView();
}, },
bindEvents: function() {}, bindEvents: function() {},
toggleNamespaceDetailsAttrView: function() { toggleBusinessMetadataDetailsAttrView: function() {
var that = this; var that = this;
if (that.showDetails) { if (that.showDetails) {
that.ui.namespaceAttrPage.hide(); that.ui.businessMetadataAttrPage.hide();
that.ui.namespaceDetailPage.show(); that.ui.businessMetadataDetailPage.show();
} else { } else {
that.ui.namespaceAttrPage.show(); that.ui.businessMetadataAttrPage.show();
that.ui.namespaceDetailPage.hide(); that.ui.businessMetadataDetailPage.hide();
} }
}, },
onEditAttr: function(e) { onEditAttr: function(e) {
var that = this, var that = this,
isAttrEdit = false, isAttrEdit = false,
selectedNamespace = that.nameSpaceCollection.fullCollection.findWhere({ guid: that.guid }), selectedBusinessMetadata = that.model,
attrributes = selectedNamespace ? selectedNamespace.get('attributeDefs') : null, attrributes = selectedBusinessMetadata ? selectedBusinessMetadata.get('attributeDefs') : null,
attrName = e.target.dataset.name ? e.target.dataset.name : null, attrName = e.target.dataset.name ? e.target.dataset.name : null,
attrDetails = { name: attrName }; attrDetails = { name: attrName };
if (e.target.dataset.action == 'attributeEdit') { if (e.target.dataset.action == 'attributeEdit') {
isAttrEdit = true isAttrEdit = true
} }
if (selectedNamespace) { if (selectedBusinessMetadata) {
that.newAttr = isAttrEdit ? false : true; that.newAttr = isAttrEdit ? false : true;
_.each(attrributes, function(attrObj) { _.each(attrributes, function(attrObj) {
if (attrObj.name === attrName) { if (attrObj.name === attrName) {
...@@ -125,39 +115,32 @@ define(['require', ...@@ -125,39 +115,32 @@ define(['require',
} }
}); });
this.showDetails = false; this.showDetails = false;
that.toggleNamespaceDetailsAttrView(); that.toggleBusinessMetadataDetailsAttrView();
require(["views/name_space/CreateNameSpaceLayoutView"], function(CreateNameSpaceLayoutView) { require(["views/business_metadata/CreateBusinessMetadataLayoutView"], function(CreateBusinessMetadataLayoutView) {
that.view = new CreateNameSpaceLayoutView({ that.view = new CreateBusinessMetadataLayoutView({
onEditCallback: function() { onEditCallback: function() {
enumDefCollection.fetch({ reset: true }); enumDefCollection.fetch({ reset: true });
that.nameSpaceAttr.fullCollection.reset(); that.businessMetadataAttr.reset(that.model.get("attributeDefs"));
that.options.selectedNameSpace.fetch({
complete: function(model, status) {
that.nameSpaceAttr.fullCollection.add(model.responseJSON.attributeDefs);
}
});
}, },
onUpdateNamespace: function() { onUpdateBusinessMetadata: function() {
that.renderTableLayoutView();
that.showDetails = true; that.showDetails = true;
that.toggleNamespaceDetailsAttrView(); that.toggleBusinessMetadataDetailsAttrView();
that.entityDefCollection.fetch({ silent: true }); that.entityDefCollection.fetch({ silent: true });
}, },
parent: that.$el, parent: that.$el,
tagCollection: that.nameSpaceCollection, businessMetadataDefCollection: that.businessMetadataDefCollection,
enumDefCollection: enumDefCollection, enumDefCollection: enumDefCollection,
isAttrEdit: isAttrEdit, isAttrEdit: isAttrEdit,
attrDetails: attrDetails, attrDetails: attrDetails,
typeHeaders: typeHeaders, typeHeaders: typeHeaders,
selectedNamespace: selectedNamespace, selectedBusinessMetadata: that.model,
nameSpaceCollection: nameSpaceCollection,
guid: that.guid, guid: that.guid,
isNewAttr: that.newAttr isNewAttr: that.newAttr
}); });
if (isAttrEdit) { if (isAttrEdit) {
that.ui.namespaceAttrPageTitle.text("Update Attribute of: " + selectedNamespace.get('name')); that.ui.businessMetadataAttrPageTitle.text("Update Attribute of: " + selectedBusinessMetadata.get('name'));
} else { } else {
that.ui.namespaceAttrPageTitle.text("Add Namespace Attribute for: " + selectedNamespace.get('name')); that.ui.businessMetadataAttrPageTitle.text("Add Business Metadata Attribute for: " + selectedBusinessMetadata.get('name'));
} }
that.RModal.show(that.view); that.RModal.show(that.view);
}); });
...@@ -167,18 +150,15 @@ define(['require', ...@@ -167,18 +150,15 @@ define(['require',
renderTableLayoutView: function() { renderTableLayoutView: function() {
var that = this; var that = this;
require(['utils/TableLayout'], function(TableLayout) { require(['utils/TableLayout'], function(TableLayout) {
var cols = new Backgrid.Columns(that.getNamespaceTableColumns()); var cols = new Backgrid.Columns(that.getBusinessMetadataTableColumns());
that.RNameSpaceAttrTableLayoutView.show(new TableLayout(_.extend({}, that.commonTableOptions, { that.RBusinessMetadataAttrTableLayoutView.show(new TableLayout(_.extend({}, that.commonTableOptions, {
columns: cols columns: cols
}))); })));
if (!(that.nameSpaceAttr.models.length < that.limit)) {
// that.RNameSpaceAttrTableLayoutView.$el.find('table tr').last().hide();
}
}); });
}, },
getNamespaceTableColumns: function() { getBusinessMetadataTableColumns: function() {
var that = this; var that = this;
return this.nameSpaceAttr.constructor.getTableCols({ return this.businessMetadataAttr.constructor.getTableCols({
name: { name: {
label: "Attribute Name", label: "Attribute Name",
cell: "html", cell: "html",
...@@ -205,13 +185,16 @@ define(['require', ...@@ -205,13 +185,16 @@ define(['require',
editable: false, editable: false,
formatter: _.extend({}, Backgrid.CellFormatter.prototype, { formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
fromRaw: function(rawValue, model) { fromRaw: function(rawValue, model) {
var options = model.get('options')
if (options && options.applicableEntityTypes) {
var applicableEntityTypes = '', var applicableEntityTypes = '',
attrEntityTypes = JSON.parse(model.get('options').applicableEntityTypes); attrEntityTypes = JSON.parse(options.applicableEntityTypes);
_.each(attrEntityTypes, function(values) { _.each(attrEntityTypes, function(values) {
applicableEntityTypes += '<label class="btn btn-action btn-xs btn-blue no-pointer">' + values + '</label>'; applicableEntityTypes += '<label class="btn btn-action btn-xs btn-blue no-pointer">' + values + '</label>';
}); });
return applicableEntityTypes; return applicableEntityTypes;
} }
}
}) })
}, },
tool: { tool: {
...@@ -225,8 +208,8 @@ define(['require', ...@@ -225,8 +208,8 @@ define(['require',
} }
}) })
} }
}, this.nameSpaceAttr); }, this.businessMetadataAttr);
} }
}); });
return NameSpaceAttrTableLayoutView; return BusinessMetadataAttrTableLayoutView;
}); });
\ No newline at end of file
...@@ -17,19 +17,19 @@ ...@@ -17,19 +17,19 @@
*/ */
define(['require', define(['require',
'backbone', 'backbone',
'hbs!tmpl/name_space/NameSpaceAttributeItemView_tmpl', 'hbs!tmpl/business_metadata/BusinessMetadataAttributeItemView_tmpl',
'utils/Utils', 'utils/Utils',
'utils/UrlLinks', 'utils/UrlLinks',
'utils/Messages' 'utils/Messages'
], function(require, Backbone, NameSpaceAttributeItemViewTmpl, Utils, UrlLinks, Messages) { ], function(require, Backbone, BusinessMetadataAttributeItemViewTmpl, Utils, UrlLinks, Messages) {
'use strict'; 'use strict';
return Backbone.Marionette.ItemView.extend( return Backbone.Marionette.ItemView.extend(
/** @lends GlobalExclusionListView */ /** @lends GlobalExclusionListView */
{ {
template: NameSpaceAttributeItemViewTmpl, template: BusinessMetadataAttributeItemViewTmpl,
templateHelpers: function() { templateHelpers: function() {
return { return {
modalID: this.viewId modalID: this.viewId
...@@ -62,34 +62,47 @@ define(['require', ...@@ -62,34 +62,47 @@ define(['require',
this.model.set({ "name": e.target.value.trim() }); this.model.set({ "name": e.target.value.trim() });
}; };
events["change " + this.ui.dataTypeSelector] = function(e) { events["change " + this.ui.dataTypeSelector] = function(e) {
var obj = { options: this.model.get('options') || {} };
debugger;
delete obj.enumValues;
delete obj.options.maxStrLength;
if (e.target.value.trim() === 'enumeration' || e.target.value.trim() === 'Enumeration') { if (e.target.value.trim() === 'enumeration' || e.target.value.trim() === 'Enumeration') {
this.ui.enumTypeSelectorContainer.show(); this.ui.enumTypeSelectorContainer.show();
this.emumTypeSelectDisplay(); this.emumTypeSelectDisplay();
this.ui.stringLengthContainer.hide(); this.ui.stringLengthContainer.hide();
} else if (e.target.value.trim() === 'string' || e.target.value.trim() === 'String') { } else {
this.model.set({ "typeName": e.target.value.trim() }); obj.typeName = e.target.value.trim();
this.model.set({ "enumValues": null }); if (e.target.value.trim() === 'string' || e.target.value.trim() === 'String') {
this.ui.stringLengthContainer.show(); this.ui.stringLengthContainer.show();
this.ui.enumTypeSelectorContainer.hide(); this.ui.enumTypeSelectorContainer.hide();
this.ui.enumValueSelectorContainer.hide(); this.ui.enumValueSelectorContainer.hide();
obj.options["maxStrLength"] = e.target.value.trim();
} else { } else {
this.model.set({ "typeName": e.target.value.trim() });
this.model.set({ "enumValues": null });
this.ui.enumTypeSelectorContainer.hide(); this.ui.enumTypeSelectorContainer.hide();
this.ui.enumValueSelectorContainer.hide(); this.ui.enumValueSelectorContainer.hide();
this.ui.stringLengthContainer.hide(); this.ui.stringLengthContainer.hide();
} }
}
this.model.set(obj);
}; };
events["change " + this.ui.enumTypeSelector] = function(e) { events["change " + this.ui.enumTypeSelector] = function(e) {
this.model.set({ "enumValues": e.target.value.trim() }); this.model.set({ "enumValues": e.target.value.trim() });
}; };
events["change " + this.ui.stringLengthContainer] = function(e) { events["change " + this.ui.stringLengthContainer] = function(e) {
this.model.set({ "maxStrLength": e.target.value.trim() }); var options = this.model.get('options') || {};
if (this.ui.dataTypeSelector.val() == 'string') {
options["maxStrLength"] = e.target.value.trim();
}
this.model.set({ "options": options });
}; };
events["change " + this.ui.enumTypeSelector] = function(e) { events["change " + this.ui.enumTypeSelector] = function(e) {
var emumValue = this.ui.enumTypeSelector.select2('data')[0] ? this.ui.enumTypeSelector.select2('data')[0].text : this.ui.enumTypeSelector.val(); var emumValue = this.ui.enumTypeSelector.select2('data')[0] ? this.ui.enumTypeSelector.select2('data')[0].text : this.ui.enumTypeSelector.val();
this.model.set({ "typeName": emumValue }); this.model.set({ "typeName": emumValue });
if (this.model.get("multiValueSelect")) {
this.model.set({ "typeName": "array<" + emumValue + ">" });
}
if (emumValue == '' || emumValue == null) { if (emumValue == '' || emumValue == null) {
this.ui.enumValueSelectorContainer.hide(); this.ui.enumValueSelectorContainer.hide();
} else { } else {
...@@ -102,7 +115,19 @@ define(['require', ...@@ -102,7 +115,19 @@ define(['require',
}; };
events["change " + this.ui.multiValueSelectStatus] = function(e) { events["change " + this.ui.multiValueSelectStatus] = function(e) {
this.model.set({ "multiValueSelect": e.target.checked }); this.model.set({ "multiValueSelect": e.target.checked });
var typename = this.model.get('typeName');
if (e.target.checked) {
typename = "array<" + typename + ">";
} else {
typename = typename.replace('array<', '').replace('>', '');
}
this.model.set({ "typeName": typename });
}; };
events["change " + this.ui.entityTypeSelector] = function(e) {
var options = this.model.get('options') || {};
options.applicableEntityTypes = JSON.stringify(this.ui.entityTypeSelector.val());
this.model.set({ "options": options });
}
events["click " + this.ui.close] = 'onCloseButton'; events["click " + this.ui.close] = 'onCloseButton';
events["click " + this.ui.createNewEnum] = 'onCreateUpdateEnum'; events["click " + this.ui.createNewEnum] = 'onCreateUpdateEnum';
return events; return events;
...@@ -115,13 +140,12 @@ define(['require', ...@@ -115,13 +140,12 @@ define(['require',
initialize: function(options) { initialize: function(options) {
this.parentView = options.parentView; this.parentView = options.parentView;
this.viewId = options.model ? options.model.cid : this.parentView.cid; this.viewId = options.model ? options.model.cid : this.parentView.cid;
}, },
onRender: function() { onRender: function() {
var that = this, var that = this,
entitytypes = '', entitytypes = '',
enumTypes = []; enumTypes = [];
this.model.set({ "modalID": this.viewId }); //this.model.set({ "modalID": this.viewId });
this.parentView.typeHeaders.fullCollection.each(function(model) { this.parentView.typeHeaders.fullCollection.each(function(model) {
if (model.toJSON().category == "ENTITY") { if (model.toJSON().category == "ENTITY") {
that.ui.entityTypeSelector.append("<option>" + model.get('name') + "</option>"); that.ui.entityTypeSelector.append("<option>" + model.get('name') + "</option>");
...@@ -139,14 +163,14 @@ define(['require', ...@@ -139,14 +163,14 @@ define(['require',
this.ui.entityTypeSelector.on('select2:open', function(e) { // to make selected option disable in dropdown added remove-from-list class this.ui.entityTypeSelector.on('select2:open', function(e) { // to make selected option disable in dropdown added remove-from-list class
$('.select2-dropdown--below').addClass('remove-from-list'); $('.select2-dropdown--below').addClass('remove-from-list');
}); });
this.ui.stringLengthValue.val('50'); //default length for string is 50 this.ui.stringLengthValue.val('50').trigger('change'); //default length for string is 50
this.ui.enumValueSelector.attr("disabled", "false"); // cannot edit the values this.ui.enumValueSelector.attr("disabled", "false"); // cannot edit the values
this.emumTypeSelectDisplay(); this.emumTypeSelectDisplay();
this.ui.enumTypeSelectorContainer.hide(); this.ui.enumTypeSelectorContainer.hide();
this.ui.enumValueSelectorContainer.hide(); this.ui.enumValueSelectorContainer.hide();
if (this.parentView.isAttrEdit) { if (this.parentView.isAttrEdit) {
this.ui.close.hide(); this.ui.close.hide();
this.ui.createNewEnum.hide(); // cannot add new namespace on edit view this.ui.createNewEnum.hide(); // cannot add new businessMetadata on edit view
this.ui.attributeInput.val(this.parentView.attrDetails.name); this.ui.attributeInput.val(this.parentView.attrDetails.name);
this.ui.attributeInput.attr("disabled", "false"); this.ui.attributeInput.attr("disabled", "false");
this.ui.dataTypeSelector.attr("disabled", "false"); this.ui.dataTypeSelector.attr("disabled", "false");
...@@ -222,7 +246,7 @@ define(['require', ...@@ -222,7 +246,7 @@ define(['require',
}, },
onCreateUpdateEnum: function(e) { onCreateUpdateEnum: function(e) {
var that = this; var that = this;
require(["views/name_space/EnumCreateUpdateItemView", "modules/Modal"], function(EnumCreateUpdateItemView, Modal) { require(["views/business_metadata/EnumCreateUpdateItemView", "modules/Modal"], function(EnumCreateUpdateItemView, Modal) {
var view = new EnumCreateUpdateItemView({ var view = new EnumCreateUpdateItemView({
onUpdateEnum: function() { onUpdateEnum: function() {
that.ui.enumValueSelectorContainer.hide(); that.ui.enumValueSelectorContainer.hide();
...@@ -238,7 +262,7 @@ define(['require', ...@@ -238,7 +262,7 @@ define(['require',
}); });
}, },
enumDefCollection: that.parentView.enumDefCollection, enumDefCollection: that.parentView.enumDefCollection,
nameSpaceCollection: that.parentView.options.nameSpaceCollection businessMetadataDefCollection: that.parentView.options.businessMetadataDefCollection
}), }),
modal = new Modal({ modal = new Modal({
title: "Create/ Update Enum", title: "Create/ Update Enum",
......
/**
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
define([
"require",
"backbone",
"hbs!tmpl/business_metadata/BusinessMetadataContainerLayoutView_tmpl"
], function(require, Backbone, BusinessMetadataContainerLayoutViewTmpl) {
"use strict";
var BusinessMetadataContainerLayoutView = Backbone.Marionette.LayoutView.extend(
/** @lends BusinessMetadataContainerLayoutView */
{
_viewName: "BusinessMetadataContainerLayoutView",
template: BusinessMetadataContainerLayoutViewTmpl,
/** Layout sub regions */
regions: {
RBusinessMetadataDetailContainer: "#r_businessMetadataDetailContainer",
RBusinessMetadataAttrContainer: "#r_businessMetadataAttrContainer"
},
/** ui selector cache */
ui: {},
/** ui events hash */
events: function() {},
/**
* intialize a new TagLayoutView Layout
* @constructs
*/
initialize: function(options) {
_.extend(this, options);
},
bindEvents: function() {
// this.listenTo(this.businessMetadataDefCollection, 'reset', function() {
// if (!this.model) {
// this.model = this.businessMetadataDefCollection.fullCollection.findWhere({ guid: this.guid });
// if (this.model) {
// this.renderTagDetail();
// } else {
// this.$('.fontLoader').hide();
// Utils.notifyError({
// content: 'Tag Not Found'
// });
// }
// }
// }, this);
// this.listenTo(this.collection, 'error', function(error, response) {
// if (response.responseJSON && response.responseJSON.error) {
// Utils.notifyError({
// content: response.responseJSON.error
// });
// } else {
// Utils.notifyError({
// content: 'Something went wrong'
// });
// }
// this.$('.fontLoader').hide();
// }, this);
},
onRender: function() {
this.updateView();
},
updateView: function() {
this.model = this.businessMetadataDefCollection.fullCollection.findWhere({ guid: this.guid });
this.renderBusinessMetadataDetailLayoutView();
this.renderBusinessMetadataAttrLayoutView();
},
renderBusinessMetadataDetailLayoutView: function() {
var that = this;
require(["views/business_metadata/BusinessMetadataDetailLayoutView"], function(BusinessMetadataDetailLayoutView) {
if (that.isDestroyed) {
return;
}
that.RBusinessMetadataDetailContainer.show(new BusinessMetadataDetailLayoutView({
businessMetadataDefCollection: that.businessMetadataDefCollection,
guid: that.guid,
model: that.model,
enumDefCollection: that.enumDefCollection,
typeHeaders: that.typeHeaders
}));
});
},
renderBusinessMetadataAttrLayoutView: function() {
var that = this;
require(["views/business_metadata/BusinessMetadataAttrTableLayoutView"], function(BusinessMetadataAttrTableLayoutView) {
if (that.isDestroyed) {
return;
}
that.RBusinessMetadataAttrContainer.show(new BusinessMetadataAttrTableLayoutView({
businessMetadataDefCollection: that.businessMetadataDefCollection,
model: that.model,
guid: that.guid,
typeHeaders: that.typeHeaders,
enumDefCollection: that.enumDefCollection,
entityDefCollection: that.entityDefCollection
}));
});
}
}
);
return BusinessMetadataContainerLayoutView;
});
\ No newline at end of file
...@@ -18,21 +18,15 @@ ...@@ -18,21 +18,15 @@
define(['require', define(['require',
'backbone', 'backbone',
'hbs!tmpl/name_space/NameSpaceDetailLayoutView_tmpl', 'hbs!tmpl/business_metadata/BusinessMetadataDetailLayoutView_tmpl',
'utils/Utils', 'utils/Utils',
'views/tag/AddTagAttributeView', ], function(require, Backbone, BusinessMetadataDetailLayoutViewTmpl, Utils) {
'collection/VTagList',
'models/VTag',
'utils/Messages',
'utils/UrlLinks',
"utils/Globals",
], function(require, Backbone, NameSpaceDetailLayoutViewTmpl, Utils, AddTagAttributeView, VTagList, VTag, Messages, UrlLinks, Globals) {
'use strict'; 'use strict';
var NameSpaceDetailLayoutView = Backbone.Marionette.LayoutView.extend( var BusinessMetadataDetailLayoutView = Backbone.Marionette.LayoutView.extend(
/** @lends NameSpaceDetailLayoutView */ /** @lends BusinessMetadataDetailLayoutView */
{ {
template: NameSpaceDetailLayoutViewTmpl, template: BusinessMetadataDetailLayoutViewTmpl,
/** Layout sub regions */ /** Layout sub regions */
regions: {}, regions: {},
/** ui selector cache */ /** ui selector cache */
...@@ -53,58 +47,22 @@ define(['require', ...@@ -53,58 +47,22 @@ define(['require',
return events; return events;
}, },
/** /**
* intialize a new NameSpaceDetailLayoutView Layout * intialize a new BusinessMetadataDetailLayoutView Layout
* @constructs * @constructs
*/ */
initialize: function(options) { initialize: function(options) {
_.extend(this, _.pick(options, 'guid', 'entity', 'entityName', 'attributeDefs', 'enumDefCollection', 'typeHeaders', 'nameSpaceCollection', 'selectedNameSpace', 'nameSpaceAttr')); _.extend(this, _.pick(options, 'guid', 'model', 'enumDefCollection', 'typeHeaders'));
},
bindEvents: function() {
this.listenTo(this.nameSpaceCollection, 'reset', function() {
if (!this.model) {
this.model = this.nameSpaceCollection.fullCollection.findWhere({ guid: this.guid });
if (this.model) {
this.renderTagDetail();
} else {
this.$('.fontLoader').hide();
Utils.notifyError({
content: 'Tag Not Found'
});
}
}
}, this);
this.listenTo(this.collection, 'error', function(error, response) {
if (response.responseJSON && response.responseJSON.error) {
Utils.notifyError({
content: response.responseJSON.error
});
} else {
Utils.notifyError({
content: 'Something went wrong'
});
}
this.$('.fontLoader').hide();
}, this);
}, },
onRender: function() { onRender: function() {
if (this.nameSpaceCollection.models.length && !this.model) { this.renderDetail();
this.model = this.nameSpaceCollection.fullCollection.findWhere({ guid: this.guid });
Utils.showTitleLoader(this.$('.page-title .fontLoader'), this.$('.tagDetail'));
this.renderTagDetail();
}
this.bindEvents();
}, },
renderTagDetail: function() { renderDetail: function() {
var that = this, var that = this;
attributeData = "";
this.attributeDefs = this.model.get('attributeDefs');
this.ui.title.html('<span>' + that.model.get('name') + '</span>'); this.ui.title.html('<span>' + that.model.get('name') + '</span>');
if (that.model.get('description')) { if (that.model.get('description')) {
this.ui.description.text((that.model.get('description'))); this.ui.description.text((that.model.get('description')));
} }
Utils.hideTitleLoader(this.$('.fontLoader'), this.$('.tagDetail'));
} }
}); });
return NameSpaceDetailLayoutView; return BusinessMetadataDetailLayoutView;
}); });
\ No newline at end of file
...@@ -18,75 +18,74 @@ ...@@ -18,75 +18,74 @@
define(['require', define(['require',
'backbone', 'backbone',
'hbs!tmpl/name_space/NameSpaceTableLayoutView_tmpl', 'hbs!tmpl/business_metadata/BusinessMetadataTableLayoutView_tmpl',
'collection/VEntityList', 'collection/VEntityList',
'collection/VTagList',
'models/VSearch', 'models/VSearch',
'utils/Utils', 'utils/Utils',
'utils/Messages', 'utils/Messages',
'utils/Enums', 'utils/Enums',
'utils/UrlLinks', 'utils/UrlLinks',
'utils/CommonViewFunction' 'utils/CommonViewFunction'
], function(require, Backbone, NameSpaceTableLayoutView_tmpl, VEntityList, VTagList, VSearch, Utils, Messages, Enums, UrlLinks, CommonViewFunction) { ], function(require, Backbone, BusinessMetadataTableLayoutView_tmpl, VEntityList, VSearch, Utils, Messages, Enums, UrlLinks, CommonViewFunction) {
'use strict'; 'use strict';
var NameSpaceTableLayoutView = Backbone.Marionette.LayoutView.extend( var BusinessMetadataTableLayoutView = Backbone.Marionette.LayoutView.extend(
/** @lends NameSpaceTableLayoutView */ /** @lends BusinessMetadataTableLayoutView */
{ {
_viewName: 'NameSpaceTableLayoutView', _viewName: 'BusinessMetadataTableLayoutView',
template: NameSpaceTableLayoutView_tmpl, template: BusinessMetadataTableLayoutView_tmpl,
/** Layout sub regions */ /** Layout sub regions */
regions: { regions: {
RNameSpaceTableLayoutView: "#r_nameSpaceTableLayoutView", RBusinessMetadataTableLayoutView: "#r_businessMetadataTableLayoutView",
RModal: "#r_modal" RModal: "#r_modal"
}, },
/** ui selector cache */ /** ui selector cache */
ui: { ui: {
namespaceAttrPage: "[data-id='namespaceAttrPage']", businessMetadataAttrPage: "[data-id='businessMetadataAttrPage']",
namespaceAttrPageTitle: "[data-id='namespaceAttrPageTitle']", businessMetadataAttrPageTitle: "[data-id='businessMetadataAttrPageTitle']",
namespaceDetailPage: "[data-id='namespaceDetailPage']", businessMetadataDetailPage: "[data-id='businessMetadataDetailPage']",
auditCreate: "[data-id='auditCreate']", auditCreate: "[data-id='auditCreate']",
pageRecordText: "[data-id='pageRecordText']", pageRecordText: "[data-id='pageRecordText']",
activePage: "[data-id='activePage']", activePage: "[data-id='activePage']",
createNameSpace: "[data-id='createNameSpace']", createBusinessMetadata: "[data-id='createBusinessMetadata']",
attributeEdit: "[data-id='attributeEdit']", attributeEdit: "[data-id='attributeEdit']",
addAttribute: '[data-id="addAttribute"]', addAttribute: '[data-id="addAttribute"]',
namespaceAttrPageOk: '[data-id="namespaceAttrPageOk"]', businessMetadataAttrPageOk: '[data-id="businessMetadataAttrPageOk"]',
colManager: "[data-id='colManager']", colManager: "[data-id='colManager']",
deleteNamespace: '[data-id="deleteNamespace"]', deleteBusinessMetadata: '[data-id="deleteBusinessMetadata"]',
namespaceAttrFontLoader: '.namespace-attr-fontLoader', businessMetadataAttrFontLoader: '.business-metadata-attr-fontLoader',
namespaceAttrTableOverlay: '.namespace-attr-tableOverlay' businessMetadataAttrTableOverlay: '.businessMetadata-attr-tableOverlay'
}, },
/** ui events hash */ /** ui events hash */
events: function() { events: function() {
var events = {}, var events = {},
that = this; that = this;
events["click " + this.ui.createNameSpace] = "onClickCreateNamespace"; events["click " + this.ui.createBusinessMetadata] = "onClickCreateBusinessMetadata";
events["click " + this.ui.addAttribute] = "onEditAttr"; events["click " + this.ui.addAttribute] = "onEditAttr";
events["click " + this.ui.attributeEdit] = "onEditAttr"; events["click " + this.ui.attributeEdit] = "onEditAttr";
events["click " + this.ui.deleteNamespace] = function(e) { events["click " + this.ui.deleteBusinessMetadata] = function(e) {
that.guid = e.target.dataset.guid; that.guid = e.target.dataset.guid;
that.deleteNamespaceElement(); that.deleteBusinessMetadataElement();
}; };
return events; return events;
}, },
/** /**
* intialize a new NameSpaceTableLayoutView Layout * intialize a new BusinessMetadataTableLayoutView Layout
* @constructs * @constructs
*/ */
initialize: function(options) { initialize: function(options) {
_.extend(this, _.pick(options, 'guid', 'entity', 'entityName', 'attributeDefs', 'typeHeaders', 'nameSpaceCollection', 'entityDefCollection', 'nameSpaceAttr', 'selectedNameSpace')); _.extend(this, _.pick(options, 'guid', 'entity', 'entityName', 'attributeDefs', 'typeHeaders', 'businessMetadataDefCollection', 'entityDefCollection', 'businessMetadataAttr', 'selectedBusinessMetadata'));
this.limit = 10; this.limit = 10;
this.offset = 0; this.offset = 0;
this.pervOld = []; this.pervOld = [];
this.onlyPurge = true; this.onlyPurge = true;
this.newAttr = false; this.newAttr = false;
this.commonTableOptions = { this.commonTableOptions = {
collection: this.nameSpaceCollection, collection: this.businessMetadataDefCollection,
includeFilter: false, includeFilter: false,
includePagination: true, includePagination: true,
includeFooterRecords: true, includeFooterRecords: true,
...@@ -118,47 +117,47 @@ define(['require', ...@@ -118,47 +117,47 @@ define(['require',
this.showDetails = true; // toggle between sttribute page and detail page this.showDetails = true; // toggle between sttribute page and detail page
}, },
onRender: function() { onRender: function() {
this.toggleNamespaceDetailsAttrView(); this.toggleBusinessMetadataDetailsAttrView();
$.extend(this.nameSpaceCollection.queryParams, { count: this.limit }); $.extend(this.businessMetadataDefCollection.queryParams, { count: this.limit });
this.nameSpaceCollection.fullCollection.sort({ silent: true }); this.businessMetadataDefCollection.fullCollection.sort({ silent: true });
this.renderTableLayoutView(); this.renderTableLayoutView();
this.$('.tableOverlay').hide(); this.$('.tableOverlay').hide();
this.$('.auditTable').show(); // Only for first time table show because we never hide after first render. this.$('.auditTable').show(); // Only for first time table show because we never hide after first render.
this.nameSpaceCollection.comparator = function(model) { this.businessMetadataDefCollection.comparator = function(model) {
return -model.get('timestamp'); return -model.get('timestamp');
} }
}, },
toggleNamespaceDetailsAttrView: function() { toggleBusinessMetadataDetailsAttrView: function() {
var that = this; var that = this;
if (that.showDetails) { if (that.showDetails) {
that.ui.namespaceAttrPage.hide(); that.ui.businessMetadataAttrPage.hide();
that.ui.namespaceDetailPage.show(); that.ui.businessMetadataDetailPage.show();
} else { } else {
that.ui.namespaceAttrPage.show(); that.ui.businessMetadataAttrPage.show();
that.ui.namespaceDetailPage.hide(); that.ui.businessMetadataDetailPage.hide();
} }
}, },
bindEvents: function() {}, bindEvents: function() {},
loaderStatus: function(isActive) { loaderStatus: function(isActive) {
var that = this; var that = this;
if (isActive) { if (isActive) {
that.$('.namespace-attr-tableOverlay').show(); that.$('.businessMetadata-attr-tableOverlay').show();
that.$('.namespace-attr-fontLoader').show(); that.$('.business-metadata-attr-fontLoader').show();
} else { } else {
that.$('.namespace-attr-tableOverlay').hide(); that.$('.businessMetadata-attr-tableOverlay').hide();
that.$('.namespace-attr-fontLoader').hide(); that.$('.business-metadata-attr-fontLoader').hide();
} }
}, },
onEditAttr: function(e) { onEditAttr: function(e) {
var that = this, var that = this,
isAttrEdit = e.currentTarget.dataset && e.currentTarget.dataset.id === 'attributeEdit' ? true : false, isAttrEdit = e.currentTarget.dataset && e.currentTarget.dataset.id === 'attributeEdit' ? true : false,
guid = e.currentTarget.dataset && e.currentTarget.dataset.guid ? e.currentTarget.dataset.guid : null, guid = e.currentTarget.dataset && e.currentTarget.dataset.guid ? e.currentTarget.dataset.guid : null,
selectedNamespace = that.nameSpaceCollection.fullCollection.findWhere({ guid: guid }), selectedBusinessMetadata = that.businessMetadataDefCollection.fullCollection.findWhere({ guid: guid }),
attrributes = selectedNamespace ? selectedNamespace.get('attributeDefs') : null, attrributes = selectedBusinessMetadata ? selectedBusinessMetadata.get('attributeDefs') : null,
attrName = e.currentTarget.dataset.name ? e.currentTarget.dataset.name : null, attrName = e.currentTarget.dataset.name ? e.currentTarget.dataset.name : null,
attrDetails = { name: attrName }; attrDetails = { name: attrName };
if (selectedNamespace) { if (selectedBusinessMetadata) {
that.ui.namespaceAttrPageOk.text("Save"); that.ui.businessMetadataAttrPageOk.text("Save");
that.newAttr = e.currentTarget && e.currentTarget.dataset.action === "createAttr" ? true : false; that.newAttr = e.currentTarget && e.currentTarget.dataset.action === "createAttr" ? true : false;
that.guid = guid; that.guid = guid;
_.each(attrributes, function(attrObj) { _.each(attrributes, function(attrObj) {
...@@ -175,63 +174,62 @@ define(['require', ...@@ -175,63 +174,62 @@ define(['require',
}); });
that.showDetails = false; that.showDetails = false;
that.toggleNamespaceDetailsAttrView(); that.toggleBusinessMetadataDetailsAttrView();
that.ui.namespaceAttrPageOk.attr('data-action', e.currentTarget.dataset.id); that.ui.businessMetadataAttrPageOk.attr('data-action', e.currentTarget.dataset.id);
require(["views/name_space/CreateNameSpaceLayoutView"], function(CreateNameSpaceLayoutView) { require(["views/business_metadata/CreateBusinessMetadataLayoutView"], function(CreateBusinessMetadataLayoutView) {
that.view = new CreateNameSpaceLayoutView({ that.view = new CreateBusinessMetadataLayoutView({
onEditCallback: function() { onEditCallback: function() {
that.nameSpaceCollection.fullCollection.sort({ silent: true }); that.businessMetadataDefCollection.fullCollection.sort({ silent: true });
that.renderTableLayoutView(); that.renderTableLayoutView();
}, },
onUpdateNamespace: function() { onUpdateBusinessMetadata: function() {
enumDefCollection.fetch({ reset: true }); enumDefCollection.fetch({ reset: true });
that.showDetails = true; that.showDetails = true;
that.toggleNamespaceDetailsAttrView(); that.toggleBusinessMetadataDetailsAttrView();
that.entityDefCollection.fetch({ silent: true }); that.entityDefCollection.fetch({ silent: true });
}, },
parent: that.$el, parent: that.$el,
tagCollection: that.nameSpaceCollection, businessMetadataDefCollection: that.businessMetadataDefCollection,
enumDefCollection: enumDefCollection, enumDefCollection: enumDefCollection,
isAttrEdit: isAttrEdit, isAttrEdit: isAttrEdit,
typeHeaders: typeHeaders, typeHeaders: typeHeaders,
attrDetails: attrDetails, attrDetails: attrDetails,
selectedNamespace: selectedNamespace, selectedBusinessMetadata: selectedBusinessMetadata,
nameSpaceCollection: nameSpaceCollection,
guid: that.guid, guid: that.guid,
isNewAttr: that.newAttr isNewAttr: that.newAttr
}); });
if (isAttrEdit) { if (isAttrEdit) {
that.ui.namespaceAttrPageTitle.text("Update Attribute of: " + selectedNamespace.get('name')); that.ui.businessMetadataAttrPageTitle.text("Update Attribute of: " + selectedBusinessMetadata.get('name'));
} else { } else {
that.ui.namespaceAttrPageTitle.text("Add Namespace Attribute for: " + selectedNamespace.get('name')); that.ui.businessMetadataAttrPageTitle.text("Add Business Metadata Attribute for: " + selectedBusinessMetadata.get('name'));
} }
that.RModal.show(that.view); that.RModal.show(that.view);
}); });
} }
}, },
onClickCreateNamespace: function(e) { onClickCreateBusinessMetadata: function(e) {
var that = this, var that = this,
isNewNameSpace = true; isNewBusinessMetadata = true;
that.showDetails = false; that.showDetails = false;
that.ui.namespaceAttrPageOk.text("Create"); that.ui.businessMetadataAttrPageOk.text("Create");
that.ui.namespaceAttrPageOk.attr('data-action', 'createNamespace'); that.ui.businessMetadataAttrPageOk.attr('data-action', 'createBusinessMetadata');
that.ui.namespaceAttrPageTitle.text("Create Namespace"); that.ui.businessMetadataAttrPageTitle.text("Create Business Metadata");
that.toggleNamespaceDetailsAttrView(); that.toggleBusinessMetadataDetailsAttrView();
require(["views/name_space/CreateNameSpaceLayoutView"], function(CreateNameSpaceLayoutView) { require(["views/business_metadata/CreateBusinessMetadataLayoutView"], function(CreateBusinessMetadataLayoutView) {
that.view = new CreateNameSpaceLayoutView({ that.view = new CreateBusinessMetadataLayoutView({
onUpdateNamespace: function() { onUpdateBusinessMetadata: function() {
enumDefCollection.fetch({ reset: true }); enumDefCollection.fetch({ reset: true });
that.showDetails = true; that.showDetails = true;
that.toggleNamespaceDetailsAttrView(); that.toggleBusinessMetadataDetailsAttrView();
that.entityDefCollection.fetch({ silent: true }); that.entityDefCollection.fetch({ silent: true });
}, },
tagCollection: that.nameSpaceCollection, tagCollection: that.businessMetadataDefCollection,
enumDefCollection: enumDefCollection, enumDefCollection: enumDefCollection,
typeHeaders: typeHeaders, typeHeaders: typeHeaders,
isNewNameSpace: isNewNameSpace, isNewBusinessMetadata: isNewBusinessMetadata,
nameSpaceCollection: nameSpaceCollection businessMetadataDefCollection: businessMetadataDefCollection
}); });
that.RModal.show(that.view); that.RModal.show(that.view);
}); });
...@@ -239,19 +237,19 @@ define(['require', ...@@ -239,19 +237,19 @@ define(['require',
renderTableLayoutView: function() { renderTableLayoutView: function() {
var that = this; var that = this;
require(['utils/TableLayout'], function(TableLayout) { require(['utils/TableLayout'], function(TableLayout) {
var cols = new Backgrid.Columns(that.getNamespaceTableColumns()); var cols = new Backgrid.Columns(that.getBusinessMetadataTableColumns());
that.RNameSpaceTableLayoutView.show(new TableLayout(_.extend({}, that.commonTableOptions, { that.RBusinessMetadataTableLayoutView.show(new TableLayout(_.extend({}, that.commonTableOptions, {
columns: cols columns: cols
}))); })));
if (!(that.nameSpaceCollection.models.length < that.limit)) { if (!(that.businessMetadataDefCollection.models.length < that.limit)) {
that.RNameSpaceTableLayoutView.$el.find('table tr').last().hide(); that.RBusinessMetadataTableLayoutView.$el.find('table tr').last().hide();
} }
}); });
}, },
getNamespaceTableColumns: function() { getBusinessMetadataTableColumns: function() {
var that = this; var that = this;
return this.nameSpaceCollection.constructor.getTableCols({ return this.businessMetadataDefCollection.constructor.getTableCols({
attributeDefs: { attributeDefs: {
label: "", label: "",
cell: "html", cell: "html",
...@@ -273,7 +271,7 @@ define(['require', ...@@ -273,7 +271,7 @@ define(['require',
_.each(model.attributes.attributeDefs, function(attrObj) { _.each(model.attributes.attributeDefs, function(attrObj) {
var applicableEntityTypes = '', var applicableEntityTypes = '',
typeName = attrObj.typeName; typeName = attrObj.typeName;
if (attrObj.options) { if (attrObj.options && attrObj.options.applicableEntityTypes) {
// attrEntityTypes = JSON.parse(attrObj.options.applicableEntityTypes).join(', '); // attrEntityTypes = JSON.parse(attrObj.options.applicableEntityTypes).join(', ');
var entityTypes = JSON.parse(attrObj.options.applicableEntityTypes); var entityTypes = JSON.parse(attrObj.options.applicableEntityTypes);
_.each(entityTypes, function(values) { _.each(entityTypes, function(values) {
...@@ -300,7 +298,7 @@ define(['require', ...@@ -300,7 +298,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 '<a title= "' + model.get('name') + '" href ="#!/administrator/namespace/' + model.get('guid') + '?from=namespace">' + model.get('name') + '</a>'; return '<a title= "' + model.get('name') + '" href ="#!/administrator/businessMetadata/' + model.get('guid') + '?from=bm">' + model.get('name') + '</a>';
} }
}) })
}, },
...@@ -365,14 +363,14 @@ define(['require', ...@@ -365,14 +363,14 @@ 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 Namespace attribute'><i class='fa fa-plus'></i> Attributes</button>"; 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>";
// "<button type='button' data-id='deleteNamespace' data-guid='" + model.get('guid') + "'' title='' class='btn btn-action btn-xs ' style='margin-bottom: 10px;' data-action='createAttr' data-original-title='Delete Namespace'><i class='fa fa-trash-o'></i> Delete</button>"; // "<button type='button' data-id='deleteBusinessMetadata' data-guid='" + model.get('guid') + "'' title='' class='btn btn-action btn-xs ' style='margin-bottom: 10px;' data-action='createAttr' data-original-title='Delete BusinessMetadata'><i class='fa fa-trash-o'></i> Delete</button>";
} }
}) })
} }
}, this.nameSpaceCollection); }, this.businessMetadataDefCollection);
}, },
deleteNamespaceElement: function(nameSpaceName) { deleteBusinessMetadataElement: function(businessMetadataName) {
var that = this, var that = this,
notifyObj = { notifyObj = {
modal: true, modal: true,
...@@ -381,28 +379,28 @@ define(['require', ...@@ -381,28 +379,28 @@ define(['require',
}, },
cancel: function(argument) {} cancel: function(argument) {}
}; };
var text = "Are you sure you want to delete the namespace"; var text = "Are you sure you want to delete the business metadata";
notifyObj["text"] = text; notifyObj["text"] = text;
Utils.notifyConfirm(notifyObj); Utils.notifyConfirm(notifyObj);
}, },
onNotifyDeleteOk: function(data) { onNotifyDeleteOk: function(data) {
var that = this, var that = this,
deleteNamespaceData = that.nameSpaceCollection.fullCollection.findWhere({ guid: that.guid }); deleteBusinessMetadataData = that.businessMetadataDefCollection.fullCollection.findWhere({ guid: that.guid });
// that.$('.position-relative .fontLoader').addClass('show'); // that.$('.position-relative .fontLoader').addClass('show');
that.$('.tableOverlay').show(); that.$('.tableOverlay').show();
if (deleteNamespaceData) { if (deleteBusinessMetadataData) {
var nameSpaceName = deleteNamespaceData.get("name"); var businessMetadataName = deleteBusinessMetadataData.get("name");
deleteNamespaceData.deleteNameSpace({ deleteBusinessMetadataData.deleteBusinessMetadata({
typeName: nameSpaceName, typeName: businessMetadataName,
success: function() { success: function() {
Utils.notifySuccess({ Utils.notifySuccess({
content: "Namespace " + nameSpaceName + Messages.getAbbreviationMsg(false, 'deleteSuccessMessage') content: "Business Metadata " + businessMetadataName + Messages.getAbbreviationMsg(false, 'deleteSuccessMessage')
}); });
that.nameSpaceCollection.fullCollection.remove(deleteNamespaceData); that.businessMetadataDefCollection.fullCollection.remove(deleteBusinessMetadataData);
that.nameSpaceCollection.fullCollection.sort({ silent: true }); that.businessMetadataDefCollection.fullCollection.sort({ silent: true });
that.renderTableLayoutView(); that.renderTableLayoutView();
that.showDetails = true; that.showDetails = true;
that.toggleNamespaceDetailsAttrView(); that.toggleBusinessMetadataDetailsAttrView();
that.loaderStatus(false); that.loaderStatus(false);
}, },
complete: function() { complete: function() {
...@@ -417,5 +415,5 @@ define(['require', ...@@ -417,5 +415,5 @@ define(['require',
} }
} }
}); });
return NameSpaceTableLayoutView; return BusinessMetadataTableLayoutView;
}); });
\ No newline at end of file
...@@ -18,21 +18,22 @@ ...@@ -18,21 +18,22 @@
define(['require', define(['require',
'backbone', 'backbone',
'hbs!tmpl/name_space/CreateNameSpaceLayoutView_tmpl', 'hbs!tmpl/business_metadata/CreateBusinessMetadataLayoutView_tmpl',
'utils/Utils', 'utils/Utils',
'utils/Messages', 'utils/Messages',
'views/name_space/NameSpaceAttributeItemView', 'views/business_metadata/BusinessMetadataAttributeItemView',
'collection/VTagList', 'collection/VTagList',
'models/VEntity',
'utils/UrlLinks', 'utils/UrlLinks',
'platform' 'platform'
], function(require, Backbone, CreateNameSpaceLayoutViewTmpl, Utils, Messages, NameSpaceAttributeItemView, VTagList, UrlLinks, platform) { ], function(require, Backbone, CreateBusinessMetadataLayoutViewTmpl, Utils, Messages, BusinessMetadataAttributeItemView, VTagList, VEntity, UrlLinks, platform) {
var CreateNameSpaceLayoutView = Backbone.Marionette.CompositeView.extend( var CreateBusinessMetadataLayoutView = Backbone.Marionette.CompositeView.extend(
/** @lends CreateNameSpaceLayoutView */ /** @lends CreateBusinessMetadataLayoutView */
{ {
_viewName: 'CreateNameSpaceLayoutView', _viewName: 'CreateBusinessMetadataLayoutView',
template: CreateNameSpaceLayoutViewTmpl, template: CreateBusinessMetadataLayoutViewTmpl,
templateHelpers: function() { templateHelpers: function() {
return { return {
...@@ -46,7 +47,7 @@ define(['require', ...@@ -46,7 +47,7 @@ define(['require',
/** Layout sub regions */ /** Layout sub regions */
regions: {}, regions: {},
childView: NameSpaceAttributeItemView, childView: BusinessMetadataAttributeItemView,
childViewContainer: "[data-id='addAttributeDiv']", childViewContainer: "[data-id='addAttributeDiv']",
...@@ -58,57 +59,58 @@ define(['require', ...@@ -58,57 +59,58 @@ define(['require',
}, },
/** ui selector cache */ /** ui selector cache */
ui: { ui: {
tagName: "[data-id='tagName']", name: "[data-id='name']",
description: "[data-id='description']", description: "[data-id='description']",
title: "[data-id='title']", title: "[data-id='title']",
attributeData: "[data-id='attributeData']", attributeData: "[data-id='attributeData']",
addAttributeDiv: "[data-id='addAttributeDiv']", addAttributeDiv: "[data-id='addAttributeDiv']",
createTagForm: '[data-id="createTagForm"]', createForm: '[data-id="createForm"]',
namespaceAttrPageCancle: '[data-id="namespaceAttrPageCancle"]', businessMetadataAttrPageCancle: '[data-id="businessMetadataAttrPageCancle"]',
namespaceAttrPageOk: '[data-id="namespaceAttrPageOk"]' businessMetadataAttrPageOk: '[data-id="businessMetadataAttrPageOk"]'
}, },
/** ui events hash */ /** ui events hash */
events: function() { events: function() {
var events = {}; var events = {};
events["click " + this.ui.attributeData] = "onClickAddAttriBtn"; events["click " + this.ui.attributeData] = "onClickAddAttriBtn";
events["click " + this.ui.namespaceAttrPageOk] = function(e) { events["click " + this.ui.businessMetadataAttrPageOk] = function(e) {
var that = this, var that = this,
modal = that.$el; modal = that.$el;
if (e.target.dataset.action == "attributeEdit" || e.target.dataset.action == "addAttribute") { if (e.target.dataset.action == "attributeEdit" || e.target.dataset.action == "addAttribute") {
// var selectedNamespace = that.nameSpaceCollection.fullCollection.findWhere({ guid: that.guid }); // var selectedBusinessMetadata = that.businessMetadataDefCollection.fullCollection.findWhere({ guid: that.guid });
that.onUpdateAttr(); that.onUpdateAttr();
} else { } else {
if (that.$el.find('.form-control.namespace-name')[0].value === "") { if (that.$el.find('.form-control.businessMetadata-name')[0].value === "") {
$(that.$el.find('.form-control.namespace-name')[0]).css("borderColor", "red"); $(that.$el.find('.form-control.businessMetadata-name')[0]).css("borderColor", "red");
Utils.notifyInfo({ Utils.notifyInfo({
content: "Namespace name is empty." content: "Business Metadata name is empty."
}); });
} else { } else {
that.onCreateNameSpace(); that.onCreateBusinessMetadata();
} }
} }
}; };
events["click " + this.ui.namespaceAttrPageCancle] = function(e) { events["click " + this.ui.businessMetadataAttrPageCancle] = function(e) {
this.options.onUpdateNamespace(); this.options.onUpdateBusinessMetadata();
}; };
return events; return events;
}, },
/** /**
* intialize a new CreateNameSpaceLayoutView Layout * intialize a new CreateBusinessMetadataLayoutView Layout
* @constructs * @constructs
*/ */
initialize: function(options) { initialize: function(options) {
_.extend(this, _.pick(options, 'tagCollection', 'enumDefCollection', 'model', 'tag', 'descriptionData', 'selectedTag', 'isNewNameSpace', 'isAttrEdit', 'entityDefCollection', 'typeHeaders', 'attrDetails')); _.extend(this, _.pick(options, 'businessMetadataDefCollection', 'enumDefCollection', 'model', 'descriptionData', 'isNewBusinessMetadata', 'isAttrEdit', 'entityDefCollection', 'typeHeaders', 'attrDetails'));
this.fromTable = this.isNewNameSpace ? true : false; this.fromTable = this.isNewBusinessMetadata ? true : false;
this.isEditAttr = this.isAttrEdit ? false : true; this.isEditAttr = this.isAttrEdit ? false : true;
this.businessMetadataModel = new VEntity();
if (this.model) { if (this.model) {
this.description = this.model.get('description'); this.description = this.model.get('description');
} else { } else {
this.create = true; this.create = true;
} }
if (!this.isNewNameSpace) { if (!this.isNewBusinessMetadata) {
this.collection = this.isAttrEdit ? new Backbone.Collection([{ this.collection = this.isAttrEdit ? new Backbone.Collection([{
"name": this.attrDetails.name, "name": this.attrDetails.name,
"typeName": this.attrDetails.attrTypeName, "typeName": this.attrDetails.attrTypeName,
...@@ -137,31 +139,18 @@ define(['require', ...@@ -137,31 +139,18 @@ define(['require',
onRender: function() { onRender: function() {
var that = this; var that = this;
this.$('.fontLoader').show(); this.$('.fontLoader').show();
if (this.create) {
this.tagCollectionList();
} else {
this.ui.title.html('<span>' + _.escape(this.tag) + '</span>');
}
if (!('placeholder' in HTMLInputElement.prototype)) { if (!('placeholder' in HTMLInputElement.prototype)) {
this.ui.createTagForm.find('input,textarea').placeholder(); this.ui.createForm.find('input,textarea').placeholder();
} }
if (this.isNewNameSpace == true) { if (this.isNewBusinessMetadata == true) {
that.ui.namespaceAttrPageOk.text("Create"); that.ui.businessMetadataAttrPageOk.text("Create");
that.ui.namespaceAttrPageOk.attr('data-action', 'newNamespace'); that.ui.businessMetadataAttrPageOk.attr('data-action', 'newBusinessMetadata');
} else { } else {
that.ui.namespaceAttrPageOk.text("Save"); that.ui.businessMetadataAttrPageOk.text("Save");
that.ui.namespaceAttrPageOk.attr('data-action', 'attributeEdit'); that.ui.businessMetadataAttrPageOk.attr('data-action', 'attributeEdit');
} }
this.hideLoader(); this.hideLoader();
}, },
tagCollectionList: function() {
var that = this,
str = '';
this.tagCollection.fullCollection.each(function(val) {
var name = Utils.getName(val.toJSON());
str += '<option ' + (name == that.selectedTag ? 'selected' : '') + '>' + (name) + '</option>';
});
},
hideLoader: function() { hideLoader: function() {
this.$('.fontLoader').hide(); this.$('.fontLoader').hide();
this.$('.hide').removeClass('hide'); this.$('.hide').removeClass('hide');
...@@ -183,16 +172,15 @@ define(['require', ...@@ -183,16 +172,15 @@ define(['require',
if (!('placeholder' in HTMLInputElement.prototype)) { if (!('placeholder' in HTMLInputElement.prototype)) {
this.ui.addAttributeDiv.find('input,textarea').placeholder(); this.ui.addAttributeDiv.find('input,textarea').placeholder();
} }
}, },
loaderStatus: function(isActive) { loaderStatus: function(isActive) {
var that = this; var that = this;
if (isActive) { if (isActive) {
parent.$('.namespace-attr-tableOverlay').show(); parent.$('.business-metadata-attr-tableOverlay').show();
parent.$('.namespace-attr-fontLoader').show(); parent.$('.business-metadata-attr-fontLoader').show();
} else { } else {
parent.$('.namespace-attr-tableOverlay').hide(); parent.$('.business-metadata-attr-tableOverlay').hide();
parent.$('.namespace-attr-fontLoader').hide(); parent.$('.business-metadata-attr-fontLoader').hide();
} }
}, },
validateValues: function() { validateValues: function() {
...@@ -200,8 +188,6 @@ define(['require', ...@@ -200,8 +188,6 @@ define(['require',
enumValue = true, enumValue = true,
stringValidate = true, stringValidate = true,
enumType = true; enumType = true;
this.ui;
if (this.$el.find(".attributeInput").length > 0) { if (this.$el.find(".attributeInput").length > 0) {
this.$el.find(".attributeInput").each(function() { this.$el.find(".attributeInput").each(function() {
if ($(this).val() === "") { if ($(this).val() === "") {
...@@ -281,40 +267,25 @@ define(['require', ...@@ -281,40 +267,25 @@ define(['require',
return true; return true;
} }
}, },
namespaceAttributes: function(modelEl, obj, elementValues) { businessMetadataAttributes: function(modelEl, attrObj) {
obj.options = { var obj = {
options: {
"applicableEntityTypes": JSON.stringify(modelEl.find(".entityTypeSelector").val()), "applicableEntityTypes": JSON.stringify(modelEl.find(".entityTypeSelector").val()),
"maxStrLength": modelEl.find(".stringLengthVal").val() ? modelEl.find(".stringLengthVal").val() : "0" "maxStrLength": modelEl.find(".stringLengthVal").val() ? modelEl.find(".stringLengthVal").val() : "0"
};
if (obj.typeName != "string" && obj.typeName != "boolean" && obj.typeName != "byte" && obj.typeName != "short" && obj.typeName != "int" && obj.typeName != "float" && obj.typeName != "double" && obj.typeName != "long" && obj.typeName != "date") {
var enumName = enumDefCollection.fullCollection.findWhere({ name: obj.typeName });
if (enumName) {
var enumDef = enumName.get('elementDefs');
if (enumDef.length === obj.enumValues.length) {
_.each(enumDef, function(enumVal, index) {
if (obj.enumValues.indexOf(enumVal.value) === -1) {
this.isPutCall = true;
};
})
} else {
this.isPutCall = true;
}
} else {
this.isPostCallEnum = true;
}
_.each(obj.enumValues, function(inputEnumVal, index) {
elementValues.push({
"ordinal": index + 1,
"value": inputEnumVal
})
});
} }
};
// var types = ["string","boolean"];
// if (attrObj.typeName != "string" && attrObj.typeName != "boolean" && attrObj.typeName != "byte" && attrObj.typeName != "short" && attrObj.typeName != "int" && attrObj.typeName != "float" && attrObj.typeName != "double" && attrObj.typeName != "long" && attrObj.typeName != "date") {
// var enumName = enumDefCollection.fullCollection.findWhere({ name: attrObj.typeName });
// if (enumName) {
// return
// }
// }
if (obj.multiValueSelect) { if (obj.multiValueSelect) {
obj.multiValued = true; obj.multiValued = true;
obj.typeName = "array<" + obj.typeName + ">"; obj.typeName = "array<" + obj.typeName + ">";
} }
return obj;
}, },
highlightAttrinuteName: function(modelEl, obj) { highlightAttrinuteName: function(modelEl, obj) {
Utils.notifyInfo({ Utils.notifyInfo({
...@@ -329,50 +300,40 @@ define(['require', ...@@ -329,50 +300,40 @@ define(['require',
"elementDefs": enumVal "elementDefs": enumVal
}); });
}, },
onCreateNameSpace: function() { onCreateBusinessMetadata: function() {
var that = this, var that = this,
validate = true,
attrNameValidate = true,
enumValue = true,
stringValidate = true,
enumDefs = [],
putEnumDef = [],
attrNames = [], attrNames = [],
isvalidName = true; isvalidName = true;
this.checkLoader = 0;
this.isPutCall = false;
this.isPostCallEnum = false;
if (this.validateValues()) { if (this.validateValues()) {
return; return;
}; };
this.loaderStatus(true); this.loaderStatus(true);
var name = this.ui.tagName.val(), var name = this.ui.name.val(),
description = _.escape(this.ui.description.val()); description = _.escape(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 = [];
} }
if (attributeObj.length) { if (attributeObj.length) {
_.each(attributeObj, function(obj) { // _.each(attributeObj, function(obj) {
var modelEl = this.$('#' + obj.modalID); // var modelEl = this.$('#' + obj.modalID);
modelEl.find(".attributeInput").css("borderColor", "transparent");; // modelEl.find(".attributeInput").css("borderColor", "transparent");;
if (attrNames.indexOf(obj.name) > -1) { // if (attrNames.indexOf(obj.name) > -1) {
that.highlightAttrinuteName(modelEl, obj); // that.highlightAttrinuteName(modelEl, obj);
isvalidName = false; // isvalidName = false;
return true; // return true;
} else { // } else {
attrNames.push(obj.name); // attrNames.push(obj.name);
} // }
var elementValues = []; // obj = that.businessMetadataAttributes(modelEl, obj);
that.namespaceAttributes(modelEl, obj, elementValues); // // if (that.isPostCallEnum) {
if (that.isPostCallEnum) { // // that.createEnumObject(enumDefs, obj, elementValues);
that.createEnumObject(enumDefs, obj, elementValues); // // }
} // // if (that.isPutCall) {
if (that.isPutCall) { // // that.createEnumObject(putEnumDef, obj, elementValues);
that.createEnumObject(putEnumDef, obj, elementValues); // // }
} // });
});
var notifyObj = { var notifyObj = {
modal: true, modal: true,
confirm: { confirm: {
...@@ -391,12 +352,12 @@ define(['require', ...@@ -391,12 +352,12 @@ define(['require',
} }
if (isvalidName) { if (isvalidName) {
this.json = { this.json = {
"enumDefs": enumDefs, "enumDefs": [],
"structDefs": [], "structDefs": [],
"classificationDefs": [], "classificationDefs": [],
"entityDefs": [], "entityDefs": [],
"namespaceDefs": [{ "businessMetadataDefs": [{
"category": "NAMESPACE", "category": "BUSINESS_METADATA",
"createdBy": "admin", "createdBy": "admin",
"updatedBy": "admin", "updatedBy": "admin",
"version": 1, "version": 1,
...@@ -408,18 +369,16 @@ define(['require', ...@@ -408,18 +369,16 @@ define(['require',
}; };
var apiObj = { var apiObj = {
sort: false, sort: false,
data: this.json,
success: function(model, response) { success: function(model, response) {
var nameSpaveDef = model.namespaceDefs; var nameSpaveDef = model.businessMetadataDefs;
if (nameSpaveDef) { if (nameSpaveDef) {
that.options.nameSpaceCollection.fullCollection.add(nameSpaveDef); that.options.businessMetadataDefCollection.fullCollection.add(nameSpaveDef);
Utils.notifySuccess({ Utils.notifySuccess({
content: "Namespace " + name + Messages.getAbbreviationMsg(false, 'addSuccessMessage') content: "Business Metadata " + name + Messages.getAbbreviationMsg(false, 'addSuccessMessage')
}); });
} }
that.checkLoader--; that.options.onUpdateBusinessMetadata();
if (that.checkLoader == 0) {
that.options.onUpdateNamespace();
}
}, },
silent: true, silent: true,
reset: true, reset: true,
...@@ -428,122 +387,79 @@ define(['require', ...@@ -428,122 +387,79 @@ define(['require',
that.loaderStatus(false); that.loaderStatus(false);
} }
} }
that.checkLoader++; apiObj.type = "POST";
$.extend(apiObj, { contentType: 'application/json', dataType: 'json', data: JSON.stringify(that.json) }) that.businessMetadataModel.saveBusinessMetadata(apiObj);
this.options.nameSpaceCollection.constructor.nonCrudOperation.call(this, UrlLinks.nameSpaceApiUrl(), "POST", apiObj);
if (that.isPutCall) {
var putData = {
"enumDefs": putEnumDef
};
that.checkLoader++;
$.extend(apiObj, { contentType: 'application/json', dataType: 'json', data: JSON.stringify(putData) })
this.options.nameSpaceCollection.constructor.nonCrudOperation.call(this, UrlLinks.typedefsUrl().defs, "PUT", apiObj);
}
} else { } else {
attrNames = []; attrNames = [];
} }
}, },
onUpdateAttr: function() { onUpdateAttr: function() {
var that = this, var that = this,
attrNameValidate = true, selectedBusinessMetadata = $.extend(true, {}, that.options.selectedBusinessMetadata.toJSON()),
enumValue = true, attributeDefs = selectedBusinessMetadata['attributeDefs'],
stringValidate = true,
enumDefs = [],
postEnumDef = [],
selectedNamespace = $.extend(true, {}, that.options.selectedNamespace.toJSON()),
attributeDefs = selectedNamespace['attributeDefs'],
isvalidName = true; isvalidName = true;
this.checkLoader = 0;
this.isPutCall = false;
this.isPostCallEnum = false;
if (this.validateValues()) { if (this.validateValues()) {
return; return;
}; };
if (this.$el.find(".namespace-attr").length > 0 && this.collection.length > 0) {
this.loaderStatus(true);
if (this.collection.length > 0) { if (this.collection.length > 0) {
this.collection.each(function(model) { this.loaderStatus(true);
var obj = model.toJSON(), if (selectedBusinessMetadata.attributeDefs === undefined) {
modelEl = this.$('#' + obj.modalID); selectedBusinessMetadata.attributeDefs = [];
modelEl.find(".attributeInput").css("borderColor", "transparent"); }
if (that.options.isNewAttr == true && _.find(attributeDefs, { name: obj.name })) { selectedBusinessMetadata.attributeDefs = selectedBusinessMetadata.attributeDefs.concat(this.collection.toJSON());
that.highlightAttrinuteName(modelEl, obj); // this.collection.each(function(model) {
isvalidName = false; // var obj = model.toJSON(),
return true; // modelEl = this.$('#' + obj.modalID);
} // modelEl.find(".attributeInput").css("borderColor", "transparent");
var elementValues = []; // // if (that.options.isNewAttr == true && _.find(attributeDefs, { name: obj.name })) {
that.namespaceAttributes(modelEl, obj, elementValues); // // that.highlightAttrinuteName(modelEl, obj);
if (that.isPostCallEnum) { // // isvalidName = false;
that.createEnumObject(postEnumDef, obj, elementValues); // // return true;
} else if (that.isPutCall) { // // }
that.createEnumObject(enumDefs, obj, elementValues); // obj = that.businessMetadataAttributes(modelEl, obj);
} // // if (that.isPostCallEnum) {
// // that.createEnumObject(postEnumDef, obj, elementValues);
// // } else if (that.isPutCall) {
// // that.createEnumObject(enumDefs, obj, elementValues);
// // }
if (that.options.isNewAttr == true) { // // if (that.options.isNewAttr == true) {
selectedNamespace.attributeDefs.push(obj); // // selectedBusinessMetadata.attributeDefs.push(obj);
} else { // // } else {
var attrDef = selectedNamespace.attributeDefs; // // var attrDef = selectedBusinessMetadata.attributeDefs;
_.each(attrDef, function(attrObj) { // // _.each(attrDef, function(attrObj) {
if (attrObj.name === that.$el.find(".attributeInput")[0].value) { // // if (attrObj.name === that.$el.find(".attributeInput")[0].value) {
attrObj.name = obj.name; // // attrObj.name = obj.name;
attrObj.typeName = obj.typeName; // // attrObj.typeName = obj.typeName;
attrObj.multiValued = obj.multiValueSelect || false; // // attrObj.multiValued = obj.multiValueSelect || false;
attrObj.options.applicableEntityTypes = obj.options.applicableEntityTypes; // // attrObj.options.applicableEntityTypes = obj.options.applicableEntityTypes;
attrObj.enumValues = obj.enumValues; // // attrObj.enumValues = obj.enumValues;
attrObj.options.maxStrLength = obj.options.maxStrLength; // // attrObj.options.maxStrLength = obj.options.maxStrLength;
} // // }
}); // // });
} // // }
}); // });
if (isvalidName) { if (isvalidName) {
var notifyObj = {
modal: true,
confirm: {
confirm: true,
buttons: [{
text: "Ok",
addClass: "btn-atlas btn-md",
click: function(notice) {
notice.remove();
}
},
null
]
}
};
var putNameSpace = function() {
that.checkLoader++;
$.extend(apiObj, { contentType: 'application/json', dataType: 'json', data: JSON.stringify(that.json) })
that.options.nameSpaceCollection.constructor.nonCrudOperation.call(that, UrlLinks.nameSpaceUpdateUrl(), "PUT", apiObj);
}
this.json = { this.json = {
"enumDefs": enumDefs, "enumDefs": [],
"structDefs": [], "structDefs": [],
"classificationDefs": [], "classificationDefs": [],
"entityDefs": [], "entityDefs": [],
"namespaceDefs": that.options.isNewAttr ? [selectedNamespace] : [selectedNamespace] "businessMetadataDefs": [selectedBusinessMetadata]
}; };
var apiObj = { var apiObj = {
sort: false, sort: false,
data: this.json,
success: function(model, response) { success: function(model, response) {
if (model.namespaceDefs.length === 0 && model.enumDefs.length) { var selectedBusinessMetadata = that.options.businessMetadataDefCollection.fullCollection.findWhere({ guid: that.options.guid });
putNameSpace();
} else {
var selectedNameSpace = that.options.nameSpaceCollection.fullCollection.findWhere({ guid: that.options.guid });
Utils.notifySuccess({ Utils.notifySuccess({
content: "One or more Namespace attribute" + Messages.getAbbreviationMsg(false, 'editSuccessMessage') content: "One or more Business Metadada attribute" + Messages.getAbbreviationMsg(false, 'editSuccessMessage')
}); });
if (model.namespaceDefs && model.namespaceDefs.length) { if (model.businessMetadataDefs && model.businessMetadataDefs.length) {
that.options.selectedNamespace.set(model.namespaceDefs[0]); that.options.selectedBusinessMetadata.set(model.businessMetadataDefs[0]);
} }
that.options.onEditCallback(); that.options.onEditCallback();
} that.options.onUpdateBusinessMetadata();
that.checkLoader--;
if (that.checkLoader == 0) {
that.options.onUpdateNamespace();
}
}, },
silent: true, silent: true,
reset: true, reset: true,
...@@ -551,26 +467,18 @@ define(['require', ...@@ -551,26 +467,18 @@ define(['require',
that.loaderStatus(false); that.loaderStatus(false);
} }
} }
if (that.isPostCallEnum) { apiObj.type = "PUT";
var postData = { that.businessMetadataModel.saveBusinessMetadata(apiObj);
"enumDefs": postEnumDef
};
this.checkLoader++;
$.extend(apiObj, { contentType: 'application/json', dataType: 'json', data: JSON.stringify(postData) })
this.options.nameSpaceCollection.constructor.nonCrudOperation.call(this, UrlLinks.typedefsUrl().defs, "POST", apiObj);
} else {
putNameSpace();
}
}
} }
} else { } else {
Utils.notifySuccess({ Utils.notifySuccess({
content: "No attribute updated" content: "No attribute updated"
}); });
this.loaderStatus(false); this.loaderStatus(false);
that.options.onUpdateNamespace(); that.options.onUpdateBusinessMetadata();
} }
} }
}); });
return CreateNameSpaceLayoutView; return CreateBusinessMetadataLayoutView;
}); });
\ No newline at end of file
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,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.
*/ */
define(["require", "backbone", "hbs!tmpl/name_space/EnumCreateUpdateItemView_tmpl", "utils/Utils", "utils/UrlLinks", "utils/Messages"], function( define(["require", "backbone", "hbs!tmpl/business_metadata/EnumCreateUpdateItemView_tmpl", "utils/Utils", "utils/UrlLinks", "utils/Messages"], function(
require, require,
Backbone, Backbone,
EnumCreateUpdateItemViewTmpl, EnumCreateUpdateItemViewTmpl,
...@@ -82,7 +82,7 @@ define(["require", "backbone", "hbs!tmpl/name_space/EnumCreateUpdateItemView_tmp ...@@ -82,7 +82,7 @@ define(["require", "backbone", "hbs!tmpl/name_space/EnumCreateUpdateItemView_tmp
*/ */
initialize: function(options) { initialize: function(options) {
this.enumDefCollection = options.enumDefCollection; this.enumDefCollection = options.enumDefCollection;
this.nameSpaceCollection = options.nameSpaceCollection; this.businessMetadataDefCollection = options.businessMetadataDefCollection;
}, },
onRender: function() { onRender: function() {
var that = this, var that = this,
...@@ -234,7 +234,7 @@ define(["require", "backbone", "hbs!tmpl/name_space/EnumCreateUpdateItemView_tmp ...@@ -234,7 +234,7 @@ define(["require", "backbone", "hbs!tmpl/name_space/EnumCreateUpdateItemView_tmp
}); });
} }
that.enumDefCollection.fetch({ reset: true }); that.enumDefCollection.fetch({ reset: true });
if (that.options.onUpdateEnum) { //callback from namespaceattributeItemView if (that.options.onUpdateEnum) { //callback from BusinessMetadataAttributeItemView
that.options.onUpdateEnum(); that.options.onUpdateEnum();
} }
that.ui.enumCancleBtn.attr("disabled", "true"); that.ui.enumCancleBtn.attr("disabled", "true");
...@@ -253,9 +253,9 @@ define(["require", "backbone", "hbs!tmpl/name_space/EnumCreateUpdateItemView_tmp ...@@ -253,9 +253,9 @@ define(["require", "backbone", "hbs!tmpl/name_space/EnumCreateUpdateItemView_tmp
}; };
$.extend(apiObj, { contentType: "application/json", dataType: "json", data: JSON.stringify(this.json) }); $.extend(apiObj, { contentType: "application/json", dataType: "json", data: JSON.stringify(this.json) });
if (isPostCallEnum) { if (isPostCallEnum) {
this.nameSpaceCollection.constructor.nonCrudOperation.call(this, UrlLinks.typedefsUrl().defs, "POST", apiObj); this.businessMetadataDefCollection.constructor.nonCrudOperation.call(this, UrlLinks.typedefsUrl().defs, "POST", apiObj);
} else if (isPutCall) { } else if (isPutCall) {
this.nameSpaceCollection.constructor.nonCrudOperation.call(this, UrlLinks.typedefsUrl().defs, "PUT", apiObj); this.businessMetadataDefCollection.constructor.nonCrudOperation.call(this, UrlLinks.typedefsUrl().defs, "PUT", apiObj);
} else { } else {
Utils.notifySuccess({ Utils.notifySuccess({
content: "No updated values" content: "No updated values"
......
...@@ -47,7 +47,7 @@ define(['require', ...@@ -47,7 +47,7 @@ define(['require',
RRelationshipLayoutView: "#r_relationshipLayoutView", RRelationshipLayoutView: "#r_relationshipLayoutView",
REntityUserDefineView: "#r_entityUserDefineView", REntityUserDefineView: "#r_entityUserDefineView",
REntityLabelDefineView: "#r_entityLabelDefineView", REntityLabelDefineView: "#r_entityLabelDefineView",
REntityNameSpaceView: "#r_entityNameSpaceView" REntityBusinessMetadataView: "#r_entityBusinessMetadataView"
}, },
/** ui selector cache */ /** ui selector cache */
ui: { ui: {
...@@ -121,7 +121,7 @@ define(['require', ...@@ -121,7 +121,7 @@ define(['require',
* @constructs * @constructs
*/ */
initialize: function(options) { initialize: function(options) {
_.extend(this, _.pick(options, 'value', 'collection', 'id', 'entityDefCollection', 'typeHeaders', 'enumDefCollection', 'classificationDefCollection', 'glossaryCollection', 'nameSpaceCollection', 'searchVent')); _.extend(this, _.pick(options, 'value', 'collection', 'id', 'entityDefCollection', 'typeHeaders', 'enumDefCollection', 'classificationDefCollection', 'glossaryCollection', 'businessMetadataDefCollection', 'searchVent'));
$('body').addClass("detail-page"); $('body').addClass("detail-page");
}, },
bindEvents: function() { bindEvents: function() {
...@@ -245,7 +245,7 @@ define(['require', ...@@ -245,7 +245,7 @@ define(['require',
enumDefCollection: this.enumDefCollection, enumDefCollection: this.enumDefCollection,
classificationDefCollection: this.classificationDefCollection, classificationDefCollection: this.classificationDefCollection,
glossaryCollection: this.glossaryCollection, glossaryCollection: this.glossaryCollection,
nameSpaceCollection: this.activeEntityDef.get('namespaceAttributeDefs'), businessMetadataCollection: this.activeEntityDef.get('businessAttributeDefs'),
searchVent: this.searchVent, searchVent: this.searchVent,
attributeDefs: (function() { attributeDefs: (function() {
return that.getEntityDef(collectionJSON); return that.getEntityDef(collectionJSON);
...@@ -255,8 +255,8 @@ define(['require', ...@@ -255,8 +255,8 @@ define(['require',
this.renderEntityDetailTableLayoutView(obj); this.renderEntityDetailTableLayoutView(obj);
this.renderEntityUserDefineView(obj); this.renderEntityUserDefineView(obj);
this.renderEntityLabelDefineView(obj); this.renderEntityLabelDefineView(obj);
if (obj.nameSpaceCollection) { if (obj.businessMetadataCollection) {
this.renderEntityNameSpaceView(obj); this.renderEntityBusinessMetadataView(obj);
} }
this.renderRelationshipLayoutView(obj); this.renderRelationshipLayoutView(obj);
this.renderAuditTableLayoutView(obj); this.renderAuditTableLayoutView(obj);
...@@ -517,10 +517,10 @@ define(['require', ...@@ -517,10 +517,10 @@ define(['require',
that.REntityLabelDefineView.show(new EntityLabelDefineView(obj)); that.REntityLabelDefineView.show(new EntityLabelDefineView(obj));
}); });
}, },
renderEntityNameSpaceView: function(obj) { renderEntityBusinessMetadataView: function(obj) {
var that = this; var that = this;
require(['views/entity/EntityNameSpaceView'], function(EntityNameSpaceView) { require(['views/entity/EntityBusinessMetaDataView'], function(EntityBusinessMetaDataView) {
that.REntityNameSpaceView.show(new EntityNameSpaceView(obj)); that.REntityBusinessMetadataView.show(new EntityBusinessMetaDataView(obj));
}); });
}, },
renderTagTableLayoutView: function(obj) { renderTagTableLayoutView: function(obj) {
......
...@@ -17,29 +17,29 @@ ...@@ -17,29 +17,29 @@
*/ */
define(['require', define(['require',
'backbone', 'backbone',
'hbs!tmpl/entity/EntityNameSpaceItemView_tmpl', 'hbs!tmpl/entity/EntityBusinessMetaDataItemView_tmpl',
'moment', 'moment',
'daterangepicker' 'daterangepicker'
], function(require, Backbone, EntityNameSpaceItemViewTmpl, moment) { ], function(require, Backbone, EntityBusinessMetaDataItemViewTmpl, moment) {
'use strict'; 'use strict';
return Backbone.Marionette.ItemView.extend({ return Backbone.Marionette.ItemView.extend({
_viewName: 'EntityNameSpaceItemView', _viewName: 'EntityBusinessMetaDataItemView',
template: EntityNameSpaceItemViewTmpl, template: EntityBusinessMetaDataItemViewTmpl,
templateHelpers: function() { templateHelpers: function() {
return { return {
editMode: this.editMode, editMode: this.editMode,
entity: this.entity, entity: this.entity,
getValue: this.getValue.bind(this), getValue: this.getValue.bind(this),
getNamespaceDroupdown: this.getNamespaceDroupdown.bind(this), getBusinessMetadataDroupdown: this.getBusinessMetadataDroupdown.bind(this),
nameSpaceCollection: this.nameSpaceCollection, businessMetadataCollection: this.businessMetadataCollection,
model: this.model.toJSON() model: this.model.toJSON()
} }
}, },
tagName: 'li', tagName: 'li',
className: "namespace-tree-child", className: "business-metadata-tree-child",
/** Layout sub regions */ /** Layout sub regions */
regions: {}, regions: {},
...@@ -61,7 +61,7 @@ define(['require', ...@@ -61,7 +61,7 @@ define(['require',
}, },
/** /**
* intialize a new EntityNameSpaceItemView Layout * intialize a new EntityBusinessMetaDataItemView Layout
* @constructs * @constructs
*/ */
initialize: function(options) { initialize: function(options) {
...@@ -73,7 +73,7 @@ define(['require', ...@@ -73,7 +73,7 @@ define(['require',
this.ui.keyEl.select2({ placeholder: "Select Attribute" }); this.ui.keyEl.select2({ placeholder: "Select Attribute" });
if (this.editMode && (!this.model.has("isNew"))) { if (this.editMode && (!this.model.has("isNew"))) {
this.getEditNamespaceEl(); this.getEditBusinessMetadataEl();
} }
this.initializeElement(); this.initializeElement();
this.bindEvent(); this.bindEvent();
...@@ -100,7 +100,7 @@ define(['require', ...@@ -100,7 +100,7 @@ define(['require',
}); });
this.$el.off("change", ".custom-col-1[data-id='value']>[data-key]").on("change", ".custom-col-1[data-id='value']>[data-key]", function(e) { this.$el.off("change", ".custom-col-1[data-id='value']>[data-key]").on("change", ".custom-col-1[data-id='value']>[data-key]", function(e) {
var key = $(this).data("key"), var key = $(this).data("key"),
namespace = $(this).data("namespace"), businessMetadata = $(this).data("businessMetadata"),
typeName = $(this).data("typename"), typeName = $(this).data("typename"),
multi = $(this).data("multi"), multi = $(this).data("multi"),
updateObj = that.model.toJSON(); updateObj = that.model.toJSON();
...@@ -111,8 +111,8 @@ define(['require', ...@@ -111,8 +111,8 @@ define(['require',
if (multi && typeName.indexOf("date") == -1) { if (multi && typeName.indexOf("date") == -1) {
updateObj[key].value = $(this).select2("val"); updateObj[key].value = $(this).select2("val");
} }
if (!that.model.has("__internal_UI_nameSpaceName")) { if (!that.model.has("__internal_UI_businessMetadataName")) {
updateObj["__internal_UI_nameSpaceName"] = namespace; updateObj["__internal_UI_businessMetadataName"] = businessMetadata;
} }
if (typeName.indexOf("date") > -1) { if (typeName.indexOf("date") > -1) {
if (multi && updateObj[key].value) { if (multi && updateObj[key].value) {
...@@ -151,7 +151,7 @@ define(['require', ...@@ -151,7 +151,7 @@ define(['require',
typeName = options.val.typeName || "", typeName = options.val.typeName || "",
val = options.val.value, val = options.val.value,
isMultiValued = typeName && typeName.indexOf("array<") === 0, isMultiValued = typeName && typeName.indexOf("array<") === 0,
namespace = options.namespace, businessMetadata = options.businessMetadata,
allowOnlyNum = false; allowOnlyNum = false;
var elType = isMultiValued ? "select" : "input"; var elType = isMultiValued ? "select" : "input";
if (!isMultiValued && !_.isEmpty(val)) { if (!isMultiValued && !_.isEmpty(val)) {
...@@ -174,11 +174,11 @@ define(['require', ...@@ -174,11 +174,11 @@ define(['require',
} }
} }
if (typeName.indexOf("string") > -1) { if (typeName.indexOf("string") > -1) {
returnEL = '<' + elType + ' type="text" data-key="' + key + '" data-namespace="' + namespace + '" 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" ' + (!_.isUndefinedNull(val) ? 'value="' + val + '"' : "") + '></' + elType + '>';
} else if (typeName.indexOf("boolean") > -1) { } else if (typeName.indexOf("boolean") > -1) {
returnEL = '<select data-key="' + key + '" data-namespace="' + namespace + '" 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) {
returnEL = '<' + (isMultiValued ? "textarea" : "input") + ' type="text" data-key="' + key + '" data-namespace="' + namespace + '" data-typename="' + typeName + '"data-multi="' + isMultiValued + '" data-type="date" class="form-control" ' + (isMultiValued === false && !_.isUndefinedNull(val) ? 'value="' + val + '"' : "") + '>' + (isMultiValued === true && !_.isUndefinedNull(val) ? val : "") + (isMultiValued ? "</textarea>" : ""); returnEL = '<' + (isMultiValued ? "textarea" : "input") + ' type="text" data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '"data-multi="' + isMultiValued + '" data-type="date" class="form-control" ' + (isMultiValued === false && !_.isUndefinedNull(val) ? 'value="' + val + '"' : "") + '>' + (isMultiValued === true && !_.isUndefinedNull(val) ? val : "") + (isMultiValued ? "</textarea>" : "");
setTimeout(function() { setTimeout(function() {
var dateObj = { "singleDatePicker": true, autoUpdateInput: isMultiValued ? false : true }, var dateObj = { "singleDatePicker": true, autoUpdateInput: isMultiValued ? false : true },
dateEl = that.$el.find('[data-type="date"][data-key="' + key + '"]').daterangepicker(dateObj); dateEl = that.$el.find('[data-type="date"][data-key="' + key + '"]').daterangepicker(dateObj);
...@@ -195,7 +195,7 @@ define(['require', ...@@ -195,7 +195,7 @@ define(['require',
}, 0); }, 0);
} else if (typeName.indexOf("byte") > -1 || typeName.indexOf("short") > -1 || typeName.indexOf("int") > -1 || typeName.indexOf("float") > -1 || typeName.indexOf("double") > -1 || typeName.indexOf("long") > -1) { } else if (typeName.indexOf("byte") > -1 || typeName.indexOf("short") > -1 || typeName.indexOf("int") > -1 || typeName.indexOf("float") > -1 || typeName.indexOf("double") > -1 || typeName.indexOf("long") > -1) {
allowOnlyNum = true; allowOnlyNum = true;
returnEL = '<' + elType + ' data-key="' + key + '" data-namespace="' + namespace + '" 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) {
var modTypeName = typeName; var modTypeName = typeName;
if (isMultiValued) { if (isMultiValued) {
...@@ -210,7 +210,7 @@ define(['require', ...@@ -210,7 +210,7 @@ define(['require',
_.forEach(foundEnumType.get("elementDefs"), function(obj) { _.forEach(foundEnumType.get("elementDefs"), function(obj) {
enumOptions += '<option value="' + obj.value + '">' + obj.value + '</option>' enumOptions += '<option value="' + obj.value + '">' + obj.value + '</option>'
}); });
returnEL = '<select data-key="' + key + '" data-namespace="' + namespace + '" data-typename="' + typeName + '" data-multi="' + isMultiValued + '" >' + enumOptions + '</select>'; returnEL = '<select data-key="' + key + '" data-businessMetadata="' + businessMetadata + '" data-typename="' + typeName + '" data-multi="' + isMultiValued + '" >' + enumOptions + '</select>';
} }
setTimeout(function() { setTimeout(function() {
if (!isMultiValued) { if (!isMultiValued) {
...@@ -245,7 +245,7 @@ define(['require', ...@@ -245,7 +245,7 @@ define(['require',
hasModalData = this.model.get(key[1]); hasModalData = this.model.get(key[1]);
if (!hasModalData) { if (!hasModalData) {
var tempObj = { var tempObj = {
"__internal_UI_nameSpaceName": key[0] "__internal_UI_businessMetadataName": key[0]
}; };
if (this.model.has("isNew")) { if (this.model.has("isNew")) {
tempObj["isNew"] = true; tempObj["isNew"] = true;
...@@ -253,13 +253,13 @@ define(['require', ...@@ -253,13 +253,13 @@ define(['require',
tempObj[key[1]] = null; tempObj[key[1]] = null;
this.model.clear({ silent: true }).set(tempObj) this.model.clear({ silent: true }).set(tempObj)
} }
valEl.html(this.getAttrElement({ namespace: key[0], key: key[1], val: hasModalData ? hasModalData : { typeName: key[2] } })); valEl.html(this.getAttrElement({ businessMetadata: key[0], key: key[1], val: hasModalData ? hasModalData : { typeName: key[2] } }));
if (manual === undefined) { if (manual === undefined) {
this.model.collection.trigger("selected:attr", e.currentTarget.value, this.model); this.model.collection.trigger("selected:attr", e.currentTarget.value, this.model);
} }
} }
}, },
getValue: function(value, key, namespaceName) { getValue: function(value, key, businessMetadataName) {
var typeName = value.typeName, var typeName = value.typeName,
value = value.value; value = value.value;
if (typeName === "date") { if (typeName === "date") {
...@@ -268,24 +268,24 @@ define(['require', ...@@ -268,24 +268,24 @@ define(['require',
return value; return value;
} }
}, },
getNamespaceDroupdown: function(nameSpaceCollection) { getBusinessMetadataDroupdown: function(businessMetadataCollection) {
var optgroup = ""; var optgroup = "";
var that = this; var that = this;
var model = that.model.omit(["isNew", "__internal_UI_nameSpaceName"]), var model = that.model.omit(["isNew", "__internal_UI_businessMetadataName"]),
keys = _.keys(model), keys = _.keys(model),
isSelected = false, isSelected = false,
selectdVal = null; selectdVal = null;
if (keys.length === 1) { if (keys.length === 1) {
isSelected = true; isSelected = true;
} }
_.each(nameSpaceCollection, function(obj, key) { _.each(businessMetadataCollection, function(obj, key) {
var options = ""; var options = "";
if (obj.length) { if (obj.length) {
_.each(obj, function(attrObj) { _.each(obj, function(attrObj) {
var entityNamespace = that.model.collection.filter({ __internal_UI_nameSpaceName: key }), var entityBusinessMetadata = that.model.collection.filter({ __internal_UI_businessMetadataName: key }),
hasAttr = false; hasAttr = false;
if (entityNamespace) { if (entityBusinessMetadata) {
var found = entityNamespace.find(function(eObj) { var found = entityBusinessMetadata.find(function(eObj) {
return eObj.attributes.hasOwnProperty(attrObj.name); return eObj.attributes.hasOwnProperty(attrObj.name);
}); });
if (found) { if (found) {
...@@ -313,12 +313,12 @@ define(['require', ...@@ -313,12 +313,12 @@ define(['require',
}, 0); }, 0);
return '<select data-id="key">' + optgroup + '</select>'; return '<select data-id="key">' + optgroup + '</select>';
}, },
getEditNamespaceEl: function() { getEditBusinessMetadataEl: function() {
var that = this, var that = this,
trs = ""; trs = "";
_.each(this.model.attributes, function(val, key) { _.each(this.model.attributes, function(val, key) {
if (key !== "__internal_UI_nameSpaceName" && key !== "isNew") { if (key !== "__internal_UI_businessMetadataName" && key !== "isNew") {
var td = '<td class="custom-col-1" data-key=' + key + '>' + key + ' (' + _.escape(val.typeName) + ')</td><td class="custom-col-0">:</td><td class="custom-col-1" data-id="value">' + that.getAttrElement({ namespace: that.model.get("__internal_UI_nameSpaceName"), key: key, val: val }) + '</td>'; var td = '<td class="custom-col-1" data-key=' + key + '>' + key + ' (' + _.escape(val.typeName) + ')</td><td class="custom-col-0">:</td><td class="custom-col-1" data-id="value">' + that.getAttrElement({ businessMetadata: that.model.get("__internal_UI_businessMetadataName"), key: key, val: val }) + '</td>';
td += '<td class="custom-col-2 btn-group">' + td += '<td class="custom-col-2 btn-group">' +
'<button class="btn btn-default btn-sm" data-key="' + key + '" data-id="deleteItem">' + '<button class="btn btn-default btn-sm" data-key="' + key + '" data-id="deleteItem">' +
...@@ -327,7 +327,7 @@ define(['require', ...@@ -327,7 +327,7 @@ define(['require',
trs += "<tr class='custom-tr'>" + td + "</tr>"; trs += "<tr class='custom-tr'>" + td + "</tr>";
} }
}) })
this.$("[data-id='namespaceTreeChild']").html("<table class='custom-table'>" + trs + "</table>"); this.$("[data-id='businessMetadataTreeChild']").html("<table class='custom-table'>" + trs + "</table>");
}, },
onDeleteItem: function(e) { onDeleteItem: function(e) {
var key = $(e.currentTarget).data("key"); var key = $(e.currentTarget).data("key");
......
...@@ -19,57 +19,56 @@ ...@@ -19,57 +19,56 @@
define([ define([
"require", "require",
"backbone", "backbone",
"hbs!tmpl/entity/EntityNameSpaceView_tmpl", "hbs!tmpl/entity/EntityBusinessMetaDataView_tmpl",
"views/entity/EntityNameSpaceItemView", "views/entity/EntityBusinessMetaDataItemView",
"models/VEntity", "models/VEntity",
"utils/Utils", "utils/Utils",
"utils/Enums",
"utils/Messages", "utils/Messages",
"utils/CommonViewFunction", "utils/CommonViewFunction",
'moment' 'moment'
], function(require, Backbone, EntityNameSpaceViewTmpl, EntityNameSpaceItemView, VEntity, Utils, Enums, Messages, CommonViewFunction, moment) { ], function(require, Backbone, EntityBusinessMetaDataView_tmpl, EntityBusinessMetaDataItemView, VEntity, Utils, Messages, CommonViewFunction, moment) {
"use strict"; "use strict";
return Backbone.Marionette.CompositeView.extend({ return Backbone.Marionette.CompositeView.extend({
_viewName: "EntityNameSpaceView", _viewName: "EntityBusinessMetaDataView",
template: EntityNameSpaceViewTmpl, template: EntityBusinessMetaDataView_tmpl,
childView: EntityNameSpaceItemView, childView: EntityBusinessMetaDataItemView,
childViewContainer: "[data-id='itemView']", childViewContainer: "[data-id='itemView']",
childViewOptions: function() { childViewOptions: function() {
return { return {
editMode: this.editMode, editMode: this.editMode,
entity: this.entity, entity: this.entity,
nameSpaceCollection: this.nameSpaceCollection, businessMetadataCollection: this.businessMetadataCollection,
enumDefCollection: this.enumDefCollection enumDefCollection: this.enumDefCollection
}; };
}, },
/** ui selector cache */ /** ui selector cache */
ui: { ui: {
addItem: "[data-id='addItem']", addItem: "[data-id='addItem']",
addNameSpace: "[data-id='addNameSpace']", addBusinessMetadata: "[data-id='addBusinessMetadata']",
saveNameSpace: "[data-id='saveNameSpace']", saveBusinessMetadata: "[data-id='saveBusinessMetadata']",
namespaceTree: "[data-id='namespaceTree']", businessMetadataTree: "[data-id='businessMetadataTree']",
cancel: "[data-id='cancel']" cancel: "[data-id='cancel']"
}, },
events: function() { events: function() {
var events = {}; var events = {};
events["click " + this.ui.addItem] = 'createNameElement'; events["click " + this.ui.addItem] = 'createNameElement';
events["click " + this.ui.addNameSpace] = "onAddNameSpace"; events["click " + this.ui.addBusinessMetadata] = "onAddBusinessMetadata";
events["click " + this.ui.saveNameSpace] = "onSaveNameSpace"; events["click " + this.ui.saveBusinessMetadata] = "onSaveBusinessMetadata";
events["click " + this.ui.cancel] = "onCancel"; events["click " + this.ui.cancel] = "onCancel";
return events; return events;
}, },
initialize: function(options) { initialize: function(options) {
var that = this; var that = this;
_.extend(this, _.pick(options, "entity", "nameSpaceCollection", "enumDefCollection", "guid", "fetchCollection")); _.extend(this, _.pick(options, "entity", "businessMetadataCollection", "enumDefCollection", "guid", "fetchCollection"));
this.editMode = false; this.editMode = false;
this.$("editBox").hide(); this.$("editBox").hide();
this.actualCollection = new Backbone.Collection( this.actualCollection = new Backbone.Collection(
_.map(this.entity.namespaceAttributes, function(val, key) { _.map(this.entity.businessAttributes, function(val, key) {
var foundNameSpace = that.nameSpaceCollection[key]; var foundBusinessMetadata = that.businessMetadataCollection[key];
if (foundNameSpace) { if (foundBusinessMetadata) {
_.each(val, function(aVal, aKey) { _.each(val, function(aVal, aKey) {
var foundAttr = _.find(foundNameSpace, function(o) { var foundAttr = _.find(foundBusinessMetadata, function(o) {
return o.name === aKey return o.name === aKey
}); });
if (foundAttr) { if (foundAttr) {
...@@ -77,7 +76,7 @@ define([ ...@@ -77,7 +76,7 @@ define([
} }
}) })
} }
return _.extend({}, val, { __internal_UI_nameSpaceName: key }); return _.extend({}, val, { __internal_UI_businessMetadataName: key });
})); }));
this.collection = new Backbone.Collection(); this.collection = new Backbone.Collection();
this.entityModel = new VEntity(); this.entityModel = new VEntity();
...@@ -86,12 +85,12 @@ define([ ...@@ -86,12 +85,12 @@ define([
var silent = options && options.silent || false; var silent = options && options.silent || false;
this.collection.reset(this.actualCollection.toJSON(), { silent: silent }); this.collection.reset(this.actualCollection.toJSON(), { silent: silent });
}, },
onAddNameSpace: function() { onAddBusinessMetadata: function() {
this.ui.addNameSpace.hide(); this.ui.addBusinessMetadata.hide();
this.ui.saveNameSpace.show(); this.ui.saveBusinessMetadata.show();
this.ui.cancel.show(); this.ui.cancel.show();
this.editMode = true; this.editMode = true;
this.ui.namespaceTree.hide(); this.ui.businessMetadataTree.hide();
this.$(".editBox").show(); this.$(".editBox").show();
this.updateToActualData({ silent: true }); this.updateToActualData({ silent: true });
if (this.collection.length === 0) { if (this.collection.length === 0) {
...@@ -103,10 +102,10 @@ define([ ...@@ -103,10 +102,10 @@ define([
}, },
onCancel: function() { onCancel: function() {
this.ui.cancel.hide(); this.ui.cancel.hide();
this.ui.saveNameSpace.hide(); this.ui.saveBusinessMetadata.hide();
this.ui.addNameSpace.show(); this.ui.addBusinessMetadata.show();
this.editMode = false; this.editMode = false;
this.ui.namespaceTree.show(); this.ui.businessMetadataTree.show();
this.$(".editBox").hide(); this.$(".editBox").hide();
this.updateToActualData(); this.updateToActualData();
this.panelOpenClose(); this.panelOpenClose();
...@@ -116,9 +115,9 @@ define([ ...@@ -116,9 +115,9 @@ define([
if (collection && collection.length === 0) { if (collection && collection.length === 0) {
this.$el.find(".panel-heading").addClass("collapsed"); this.$el.find(".panel-heading").addClass("collapsed");
this.$el.find(".panel-collapse.collapse").removeClass("in"); this.$el.find(".panel-collapse.collapse").removeClass("in");
this.ui.addNameSpace.text("Add"); this.ui.addBusinessMetadata.text("Add");
} else { } else {
this.ui.addNameSpace.text("Edit"); this.ui.addBusinessMetadata.text("Edit");
this.$el.find(".panel-heading").removeClass("collapsed"); this.$el.find(".panel-heading").removeClass("collapsed");
this.$el.find(".panel-collapse.collapse").addClass("in"); this.$el.find(".panel-collapse.collapse").addClass("in");
} }
...@@ -150,7 +149,7 @@ define([ ...@@ -150,7 +149,7 @@ define([
}); });
return validation; return validation;
}, },
onSaveNameSpace: function() { onSaveBusinessMetadata: function() {
var that = this; var that = this;
if (!this.validate()) { if (!this.validate()) {
return; return;
...@@ -160,14 +159,14 @@ define([ ...@@ -160,14 +159,14 @@ define([
this.onCancel(); this.onCancel();
return; return;
} }
this.entityModel.saveNamespaceEntity(this.guid, { this.entityModel.saveBusinessMetadataEntity(this.guid, {
data: JSON.stringify(nData), data: JSON.stringify(nData),
type: "POST", type: "POST",
success: function(data) { success: function(data) {
Utils.notifySuccess({ Utils.notifySuccess({
content: "One or more namespace attributes" + Messages.getAbbreviationMsg(false, 'editSuccessMessage') content: "One or more Business Metadada attributes" + Messages.getAbbreviationMsg(false, 'editSuccessMessage')
}); });
that.entity.namespaceAttributes = data; that.entity.businessAttributes = data;
this.editMode = false; this.editMode = false;
that.fetchCollection(); that.fetchCollection();
that.onCancel(); that.onCancel();
...@@ -181,10 +180,10 @@ define([ ...@@ -181,10 +180,10 @@ define([
var finalObj = {}; var finalObj = {};
this.collection.forEach(function(model) { this.collection.forEach(function(model) {
if (!model.has("addAttrButton")) { if (!model.has("addAttrButton")) {
var nameSpaceName = model.get("__internal_UI_nameSpaceName"), var businessMetadataName = model.get("__internal_UI_businessMetadataName"),
modelObj = model.toJSON(); modelObj = model.toJSON();
_.each(modelObj, function(o, k) { _.each(modelObj, function(o, k) {
if (k === "isNew" && k === "__internal_UI_nameSpaceName") { if (k === "isNew" || k === "__internal_UI_businessMetadataName") {
delete modelObj[k]; delete modelObj[k];
return; return;
} }
...@@ -192,20 +191,20 @@ define([ ...@@ -192,20 +191,20 @@ define([
modelObj[k] = o.value; modelObj[k] = o.value;
} }
}) })
if (nameSpaceName !== undefined) { if (businessMetadataName !== undefined) {
if (finalObj[nameSpaceName]) { if (finalObj[businessMetadataName]) {
finalObj[nameSpaceName] = _.extend(finalObj[nameSpaceName], modelObj); finalObj[businessMetadataName] = _.extend(finalObj[businessMetadataName], modelObj);
} else { } else {
finalObj[nameSpaceName] = modelObj; finalObj[businessMetadataName] = modelObj;
} }
} }
} }
}); });
if (_.isEmpty(finalObj)) { if (_.isEmpty(finalObj)) {
this.actualCollection.forEach(function(model) { this.actualCollection.forEach(function(model) {
var nameSpaceName = model.get("__internal_UI_nameSpaceName"); var businessMetadataName = model.get("__internal_UI_businessMetadataName");
if (nameSpaceName) { if (businessMetadataName) {
finalObj[nameSpaceName] = {}; finalObj[businessMetadataName] = {};
} }
}) })
} }
...@@ -215,12 +214,12 @@ define([ ...@@ -215,12 +214,12 @@ define([
var modelObj = { isNew: true }; var modelObj = { isNew: true };
this.collection.unshift(modelObj); this.collection.unshift(modelObj);
}, },
renderNamespace: function() { renderBusinessMetadata: function() {
var li = "" var li = ""
this.actualCollection.forEach(function(obj) { this.actualCollection.forEach(function(obj) {
var attrLi = ""; var attrLi = "";
_.each(obj.attributes, function(val, key) { _.each(obj.attributes, function(val, key) {
if (key !== "__internal_UI_nameSpaceName") { if (key !== "__internal_UI_businessMetadataName") {
var newVal = val; var newVal = val;
if (_.isObject(val) && !_.isUndefinedNull(val.value)) { if (_.isObject(val) && !_.isUndefinedNull(val.value)) {
newVal = val.value; newVal = val.value;
...@@ -237,16 +236,16 @@ define([ ...@@ -237,16 +236,16 @@ define([
attrLi += "<tr><td>" + _.escape(key) + " (" + _.escape(val.typeName) + ")</td><td>" + _.escape(newVal) + "</td></tr>"; attrLi += "<tr><td>" + _.escape(key) + " (" + _.escape(val.typeName) + ")</td><td>" + _.escape(newVal) + "</td></tr>";
} }
}); });
li += "<ul class='namespace-tree-parent'><li class='table'>" + _.escape(obj.get("__internal_UI_nameSpaceName")) + "</li>" + li += "<ul class='business-metadata-tree-parent'><li class='table'>" + _.escape(obj.get("__internal_UI_businessMetadataName")) + "</li>" +
"<li class='namespace-tree-child entity-detail-table'>" + "<li class='business-metadata-tree-child entity-detail-table'>" +
"<table class='table'>" + attrLi + "</table>" + "<table class='table'>" + attrLi + "</table>" +
"</li></ul>"; "</li></ul>";
}); });
this.ui.namespaceTree.html(li); this.ui.businessMetadataTree.html(li);
}, },
onRender: function() { onRender: function() {
this.panelOpenClose(); this.panelOpenClose();
this.renderNamespace(); this.renderBusinessMetadata();
} }
}); });
}); });
\ No newline at end of file
/**
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
define([
"require",
"backbone",
"hbs!tmpl/name_space/NameSpaceContainerLayoutView_tmpl",
'collection/VEntityList',
"utils/Utils",
"utils/Messages",
"utils/Globals",
"utils/UrlLinks",
"models/VTag"
], function(require, Backbone, NameSpaceContainerLayoutViewTmpl, VEntityList, Utils, Messages, Globals, UrlLinks, VTag) {
"use strict";
var NameSpaceContainerLayoutView = Backbone.Marionette.LayoutView.extend(
/** @lends NameSpaceContainerLayoutView */
{
_viewName: "NameSpaceContainerLayoutView",
template: NameSpaceContainerLayoutViewTmpl,
/** Layout sub regions */
regions: {
RNameSpaceDetailContainer: "#r_nameSpaceDetailContainer",
RNameSpaceAttrContainer: "#r_nameSpaceAttrContainer"
},
/** ui selector cache */
ui: {},
/** ui events hash */
events: function() {},
/**
* intialize a new TagLayoutView Layout
* @constructs
*/
initialize: function(options) {
_.extend(this.options, options);
this.selectedNameSpace = new VEntityList();
this.selectedNameSpace.url = UrlLinks.nameSpaceGuidApiUrl(this.options.namespaceID);
this.nameSpaceAttr = new VEntityList();
},
bindEvents: function() {},
onRender: function() {
this.fetchNameSpaceGuid();
this.options.nameSpaceCollection.fullCollection.sort({ silent: true });
this.options.nameSpaceCollection.comparator = function(model) {
return -model.get('timestamp');
}
this.renderNameSpaceDetailLayoutView(this.options);
this.renderNameSpaceAttrLayoutView(this.options);
},
fetchNameSpaceGuid: function() {
var that = this;
this.selectedNameSpace.fetch({
complete: function(model, status) {
that.nameSpaceAttr.fullCollection.add(model.responseJSON.attributeDefs);
}
});
},
renderNameSpaceDetailLayoutView: function(options) {
var that = this;
require(["views/name_space/NameSpaceDetailLayoutView"], function(NameSpaceDetailLayoutView) {
if (that.isDestroyed) {
return;
}
that.RNameSpaceDetailContainer.show(
new NameSpaceDetailLayoutView({
nameSpaceVent: that.options.nameSpaceVent,
nameSpaceCollection: that.options.nameSpaceCollection,
nameSpaceAttr: that.nameSpaceAttr,
guid: that.options.namespaceID,
enumDefCollection: that.enumDefCollection,
typeHeaders: that.typeHeaders
})
);
});
},
renderNameSpaceAttrLayoutView: function(options) {
var that = this;
require(['views/name_space/NameSpaceAttrTableLayoutView'], function(NameSpaceAttrTableLayoutView) {
if (that.isDestroyed) {
return;
}
that.RNameSpaceAttrContainer.show(
new NameSpaceAttrTableLayoutView({
nameSpaceVent: that.options.nameSpaceVent,
nameSpaceCollection: that.options.nameSpaceCollection,
nameSpaceAttr: that.nameSpaceAttr,
guid: that.options.namespaceID,
typeHeaders: that.typeHeaders,
enumDefCollection: that.enumDefCollection,
selectedNameSpace: that.selectedNameSpace,
entityDefCollection: that.options.entityDefCollection
}));
});
}
}
);
return NameSpaceContainerLayoutView;
});
\ No newline at end of file
...@@ -54,18 +54,7 @@ define(['require', ...@@ -54,18 +54,7 @@ define(['require',
* @constructs * @constructs
*/ */
initialize: function(options) { initialize: function(options) {
_.extend(this, _.pick(options, _.extend(this, _.pick(options, 'attrObj', 'value', 'typeHeaders', 'entityDefCollection', 'enumDefCollection', 'classificationDefCollection', 'tag', 'type', 'searchTableFilters', 'systemAttrArr'));
'attrObj',
'value',
'typeHeaders',
'entityDefCollection',
'enumDefCollection',
'classificationDefCollection',
'nameSpaceCollection',
'tag',
'type',
'searchTableFilters',
'systemAttrArr'));
this.attrObj = _.sortBy(this.attrObj, 'name'); this.attrObj = _.sortBy(this.attrObj, 'name');
//this.systemAttrArr = _.sortBy(this.systemAttrArr, 'name'); //this.systemAttrArr = _.sortBy(this.systemAttrArr, 'name');
this.filterType = this.tag ? 'tagFilters' : 'entityFilters'; this.filterType = this.tag ? 'tagFilters' : 'entityFilters';
...@@ -368,21 +357,21 @@ define(['require', ...@@ -368,21 +357,21 @@ define(['require',
}); });
if (this.type) { if (this.type) {
var entityDef = this.entityDefCollection.fullCollection.find({ name: that.options.applicableType }), var entityDef = this.entityDefCollection.fullCollection.find({ name: that.options.applicableType }),
namespaceAttributeDefs = null; businessMetadataAttributeDefs = null;
if (entityDef) { if (entityDef) {
namespaceAttributeDefs = entityDef.get("namespaceAttributeDefs"); BusinessMetadataAttributeDefs = entityDef.get("businessAttributeDefs");
} }
if (namespaceAttributeDefs) { if (BusinessMetadataAttributeDefs) {
_.each(namespaceAttributeDefs, function(attributes, key) { _.each(BusinessMetadataAttributeDefs, function(attributes, key) {
var sortedAttributes = _.sortBy(attributes, function(obj) { var sortedAttributes = _.sortBy(attributes, function(obj) {
return obj.name; return obj.name;
}); });
_.each(sortedAttributes, function(attrDetails) { _.each(sortedAttributes, function(attrDetails) {
var returnObj = that.getObjDef(attrDetails, rules_widgets, isGroupView, 'Select Namespace Attribute', true); var returnObj = that.getObjDef(attrDetails, rules_widgets, isGroupView, 'Select Business Metadata Attribute', true);
if (returnObj) { if (returnObj) {
returnObj.id = key + "." + returnObj.id; returnObj.id = key + "." + returnObj.id;
returnObj.label = key + ": " + returnObj.label; returnObj.label = key + ": " + returnObj.label;
returnObj.data = { 'entityType': "namespace" }; returnObj.data = { 'entityType': "businessMetadata" };
filters.push(returnObj); filters.push(returnObj);
} }
}); });
......
...@@ -243,7 +243,7 @@ define(["require", "backbone", "utils/Globals", "hbs!tmpl/search/SearchDefaultLa ...@@ -243,7 +243,7 @@ define(["require", "backbone", "utils/Globals", "hbs!tmpl/search/SearchDefaultLa
enumDefCollection: that.options.enumDefCollection, enumDefCollection: that.options.enumDefCollection,
typeHeaders: that.options.typeHeaders, typeHeaders: that.options.typeHeaders,
classificationDefCollection: that.options.classificationDefCollection, classificationDefCollection: that.options.classificationDefCollection,
nameSpaceCollection: that.options.nameSpaceCollection, businessMetadataDefCollection: that.options.businessMetadataDefCollection,
searchTableFilters: that.checkEntityFilter(that.options) searchTableFilters: that.checkEntityFilter(that.options)
}; };
if (that.options.value) { if (that.options.value) {
...@@ -365,8 +365,8 @@ define(["require", "backbone", "utils/Globals", "hbs!tmpl/search/SearchDefaultLa ...@@ -365,8 +365,8 @@ define(["require", "backbone", "utils/Globals", "hbs!tmpl/search/SearchDefaultLa
if (_.has(obj, "condition")) { if (_.has(obj, "condition")) {
return that.getIdFromRuleObj(obj); return that.getIdFromRuleObj(obj);
} else { } else {
if ((obj && obj.data && obj.data.entityType === "namespace") || obj.id.indexOf(".") > -1) { if ((obj && obj.data && obj.data.entityType === "businessMetadata") || obj.id.indexOf(".") > -1) {
return col.add("namespace"); return col.add("businessMetadata");
} else { } else {
return col.add(obj.id); return col.add(obj.id);
} }
...@@ -382,7 +382,7 @@ define(["require", "backbone", "utils/Globals", "hbs!tmpl/search/SearchDefaultLa ...@@ -382,7 +382,7 @@ define(["require", "backbone", "utils/Globals", "hbs!tmpl/search/SearchDefaultLa
if (!this.options.searchTableColumns[this.options.value.type]) { if (!this.options.searchTableColumns[this.options.value.type]) {
this.options.searchTableColumns[this.options.value.type] = ["selected", "name", "description", "typeName", "owner", "tag", "term"]; this.options.searchTableColumns[this.options.value.type] = ["selected", "name", "description", "typeName", "owner", "tag", "term"];
} }
this.options.searchTableColumns[this.options.value.type] = _.sortBy(_.union(_.without(this.options.searchTableColumns[this.options.value.type], "namespace"), this.getIdFromRuleObj(rule))); this.options.searchTableColumns[this.options.value.type] = _.sortBy(_.union(_.without(this.options.searchTableColumns[this.options.value.type], "businessMetadata"), this.getIdFromRuleObj(rule)));
} }
}, },
renderQueryBuilder: function(obj, rQueryBuilder) { renderQueryBuilder: function(obj, rQueryBuilder) {
......
...@@ -37,7 +37,7 @@ define([ ...@@ -37,7 +37,7 @@ define([
RClassificationTreeRender: '[data-id="r_classificationTreeRender"]', RClassificationTreeRender: '[data-id="r_classificationTreeRender"]',
REntityTreeRender: '[data-id="r_entityTreeRender"]', REntityTreeRender: '[data-id="r_entityTreeRender"]',
RCustomFilterTreeRender: '[data-id="r_customFilterTreeRender"]', RCustomFilterTreeRender: '[data-id="r_customFilterTreeRender"]',
RNameSpaceTreeRender: '[data-id="r_nameSpaceTreeRender"]' RBusinessMetadataTreeRender: '[data-id="r_businessMetadataTreeRender"]'
}, },
ui: { ui: {
//search //search
...@@ -82,7 +82,7 @@ define([ ...@@ -82,7 +82,7 @@ define([
this.classificationSearchTree = this.$('[data-id="classificationSearchTree"]'); this.classificationSearchTree = this.$('[data-id="classificationSearchTree"]');
this.termSearchTree = this.$('[data-id="termSearchTree"]'); this.termSearchTree = this.$('[data-id="termSearchTree"]');
this.customFilterSearchTree = this.$('[data-id="customFilterSearchTree"]'); this.customFilterSearchTree = this.$('[data-id="customFilterSearchTree"]');
this.nameSpaceSearchTree = this.$('[data-id="nameSpaceSearchTree"]'); this.businessMetadataSearchTree = this.$('[data-id="businessMetadataSearchTree"]');
this.entitySearchTree.jstree(true).show_all(); this.entitySearchTree.jstree(true).show_all();
this.entitySearchTree.jstree("search", searchString); this.entitySearchTree.jstree("search", searchString);
this.classificationSearchTree.jstree(true).show_all(); this.classificationSearchTree.jstree(true).show_all();
...@@ -91,8 +91,8 @@ define([ ...@@ -91,8 +91,8 @@ define([
this.termSearchTree.jstree("search", searchString); this.termSearchTree.jstree("search", searchString);
this.customFilterSearchTree.jstree(true).show_all(); this.customFilterSearchTree.jstree(true).show_all();
this.customFilterSearchTree.jstree("search", searchString); this.customFilterSearchTree.jstree("search", searchString);
this.nameSpaceSearchTree.jstree(true).show_all(); this.businessMetadataSearchTree.jstree(true).show_all();
this.nameSpaceSearchTree.jstree("search", searchString); this.businessMetadataSearchTree.jstree("search", searchString);
}; };
...@@ -128,7 +128,7 @@ define([ ...@@ -128,7 +128,7 @@ define([
this.renderClassificationTree(opt); this.renderClassificationTree(opt);
this.renderGlossaryTree(opt); this.renderGlossaryTree(opt);
this.renderCustomFilterTree(); this.renderCustomFilterTree();
this.renderNameSpaceTree(); this.renderBusinessMetadataTree();
this.showHideGlobalFilter(); this.showHideGlobalFilter();
this.showDefaultPage(); this.showDefaultPage();
}, },
...@@ -201,8 +201,8 @@ define([ ...@@ -201,8 +201,8 @@ define([
if (options) { if (options) {
_.extend(this.options, options); _.extend(this.options, options);
this.showHideGlobalFilter(); this.showHideGlobalFilter();
if (this.RNameSpaceTreeRender.currentView) { if (this.RBusinessMetadataTreeRender.currentView) {
this.RNameSpaceTreeRender.currentView.manualRender(this.options); this.RBusinessMetadataTreeRender.currentView.manualRender(this.options);
} }
if (this.RCustomFilterTreeRender.currentView) { if (this.RCustomFilterTreeRender.currentView) {
this.RCustomFilterTreeRender.currentView.manualRender(this.options); this.RCustomFilterTreeRender.currentView.manualRender(this.options);
...@@ -242,10 +242,10 @@ define([ ...@@ -242,10 +242,10 @@ define([
that.RCustomFilterTreeRender.show(new CustomFilterTreeLayoutView(_.extend({ query: that.query }, that.options))); that.RCustomFilterTreeRender.show(new CustomFilterTreeLayoutView(_.extend({ query: that.query }, that.options)));
}); });
}, },
renderNameSpaceTree: function() { renderBusinessMetadataTree: function() {
var that = this; var that = this;
require(["views/search/tree/NameSpaceTreeLayoutView"], function(NameSpaceTreeLayoutView) { require(["views/search/tree/BusinessMetadataTreeLayoutView"], function(BusinessMetadataTreeLayoutView) {
that.RNameSpaceTreeRender.show(new NameSpaceTreeLayoutView(_.extend({ query: that.query }, that.options))); that.RBusinessMetadataTreeRender.show(new BusinessMetadataTreeLayoutView(_.extend({ query: that.query }, that.options)));
}); });
} }
}); });
......
...@@ -365,7 +365,7 @@ define(['require', ...@@ -365,7 +365,7 @@ define(['require',
this.searchTableColumns[this.value.type] = listOfColumns.length ? listOfColumns : null; this.searchTableColumns[this.value.type] = listOfColumns.length ? listOfColumns : null;
} }
} else if (this.value && this.value.type && this.searchTableColumns && this.value.attributes) { } else if (this.value && this.value.type && this.searchTableColumns && this.value.attributes) {
this.searchTableColumns[this.value.type] = this.value.entityFilters ? this.value.attributes.split(",") : this.value.attributes.replace("namespace,", "").split(","); this.searchTableColumns[this.value.type] = this.value.entityFilters ? this.value.attributes.split(",") : this.value.attributes.replace("businessMetadata,", "").split(",");
} }
}, },
fetchCollection: function(value, options) { fetchCollection: function(value, options) {
...@@ -648,8 +648,7 @@ define(['require', ...@@ -648,8 +648,7 @@ define(['require',
var that = this, var that = this,
nameCheck = 0, nameCheck = 0,
columnToShow = null, columnToShow = null,
col = {}, col = {};
namespaceRenderable = false;
this.value = Utils.getUrlState.getQueryParams() || this.value; this.value = Utils.getUrlState.getQueryParams() || this.value;
if (this.value && this.value.searchType === "basic" && this.searchTableColumns && (this.searchTableColumns[this.value.type] !== undefined)) { if (this.value && this.value.searchType === "basic" && this.searchTableColumns && (this.searchTableColumns[this.value.type] !== undefined)) {
columnToShow = this.searchTableColumns[this.value.type] == null ? [] : this.searchTableColumns[this.value.type]; columnToShow = this.searchTableColumns[this.value.type] == null ? [] : this.searchTableColumns[this.value.type];
...@@ -794,25 +793,25 @@ define(['require', ...@@ -794,25 +793,25 @@ define(['require',
} }
}) })
}; };
col['namespace'] = { col['businessMetaData'] = {
label: "Namespaces", label: "Business MetaData",
cell: "Html", cell: "Html",
editable: false, editable: false,
resizeable: true, resizeable: true,
orderable: true, orderable: true,
alwaysVisible: true, //Backgrid.ColumnManager.js -> render() to hide the name in dropdownlist alwaysVisible: true, //Backgrid.ColumnManager.js -> render() to hide the name in dropdownlist
renderable: _.contains(columnToShow, 'namespace'), renderable: _.contains(columnToShow, 'businessMetaData'),
formatter: _.extend({}, Backgrid.CellFormatter.prototype, { formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
fromRaw: function(rawValue, model) { fromRaw: function(rawValue, model) {
var obj = model.toJSON(), var obj = model.toJSON(),
namespaceStr = ''; businessMetadataStr = '';
if (obj && obj.attributes) { if (obj && obj.attributes) {
_.each(obj.attributes, function(namespaceValue, attributeName) { _.each(obj.attributes, function(businessMetadataValue, attributeName) {
if (attributeName.indexOf('.') != -1) { if (attributeName.indexOf('.') != -1) {
var isDate = false, var isDate = false,
namespace = that.options.nameSpaceCollection.fullCollection.find({ "name": attributeName.split('.')[0] }); businessMetadata = that.options.businessMetadataDefCollection.fullCollection.find({ "name": attributeName.split('.')[0] });
if (namespace) { if (businessMetadata) {
var getAttributes = namespace.get('attributeDefs'); var getAttributes = businessMetadata.get('attributeDefs');
getAttributes.every(function(attrTypeCheck) { getAttributes.every(function(attrTypeCheck) {
if (attributeName.split('.')[1] === attrTypeCheck.name && attrTypeCheck.typeName.indexOf("date") > -1) { if (attributeName.split('.')[1] === attrTypeCheck.name && attrTypeCheck.typeName.indexOf("date") > -1) {
isDate = true; isDate = true;
...@@ -821,12 +820,12 @@ define(['require', ...@@ -821,12 +820,12 @@ define(['require',
}); });
} }
if (isDate) { if (isDate) {
namespaceValue = moment(namespaceValue).format("MM/DD/YYYY") businessMetadataValue = moment(businessMetadataValue).format("MM/DD/YYYY")
} }
namespaceStr += '<label class="btn btn-action btn-xs btn-blue no-pointer">' + attributeName + ': ' + namespaceValue + '</label>'; businessMetadataStr += '<label class="btn btn-action btn-xs btn-blue no-pointer">' + attributeName + ': ' + businessMetadataValue + '</label>';
} }
}) })
return namespaceStr; return businessMetadataStr;
} }
} }
}) })
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
*/ */
define([ define([
"require", "require",
"hbs!tmpl/search/tree/NameSpaceTreeLayoutView_tmpl", "hbs!tmpl/search/tree/BusinessMetadataTreeLayoutView_tmpl",
"utils/Utils", "utils/Utils",
"utils/Messages", "utils/Messages",
"utils/Globals", "utils/Globals",
...@@ -27,11 +27,11 @@ define([ ...@@ -27,11 +27,11 @@ define([
"collection/VGlossaryList", "collection/VGlossaryList",
"utils/Enums", "utils/Enums",
"jstree" "jstree"
], function(require, NameSpaceTreeLayoutViewTmpl, Utils, Messages, Globals, UrlLinks, CommonViewFunction, VSearchList, VGlossaryList, Enums) { ], function(require, BusinessMetadataTreeLayoutViewTmpl, Utils, Messages, Globals, UrlLinks, CommonViewFunction, VSearchList, VGlossaryList, Enums) {
"use strict"; "use strict";
var NameSpaceTreeLayoutView = Marionette.LayoutView.extend({ var BusinessMetadataTreeLayoutView = Marionette.LayoutView.extend({
template: NameSpaceTreeLayoutViewTmpl, template: BusinessMetadataTreeLayoutViewTmpl,
regions: {}, regions: {},
ui: { ui: {
...@@ -39,10 +39,10 @@ define([ ...@@ -39,10 +39,10 @@ define([
refreshTree: '[data-id="refreshTree"]', refreshTree: '[data-id="refreshTree"]',
// tree el // tree el
nameSpaceSearchTree: '[data-id="nameSpaceSearchTree"]', businessMetadataSearchTree: '[data-id="businessMetadataSearchTree"]',
// Create // Create
createNameSpace: '[data-id="createNameSpace"]' createBusinessMetadata: '[data-id="createBusinessMetadata"]'
}, },
templateHelpers: function() { templateHelpers: function() {
return { return {
...@@ -54,14 +54,13 @@ define([ ...@@ -54,14 +54,13 @@ define([
that = this; that = this;
// refresh individual tree // refresh individual tree
events["click " + this.ui.refreshTree] = function(e) { events["click " + this.ui.refreshTree] = function(e) {
var type = $(e.currentTarget).data("type");
e.stopPropagation(); e.stopPropagation();
that.refresh({ type: type }); that.refresh();
}; };
events["click " + this.ui.createNameSpace] = function(e) { events["click " + this.ui.createBusinessMetadata] = function(e) {
e.stopPropagation(); e.stopPropagation();
that.triggerUrl("#!/administrator?tabActive=namespace"); that.triggerUrl("#!/administrator?tabActive=bm");
}; };
return events; return events;
...@@ -73,52 +72,48 @@ define([ ...@@ -73,52 +72,48 @@ define([
_.pick( _.pick(
options, options,
"typeHeaders", "typeHeaders",
"namespaceID", "guid",
"searchVent", "searchVent",
"entityDefCollection", "entityDefCollection",
"enumDefCollection", "enumDefCollection",
"nameSpaceCollection", "businessMetadataDefCollection",
"searchTableColumns", "searchTableColumns",
"searchTableFilters", "searchTableFilters",
"metricCollection", "metricCollection"
"nameSpaceCollection"
) )
); );
this.bindEvents(); this.bindEvents();
}, },
onRender: function() { onRender: function() {
this.renderNameSpaceTree(); this.renderBusinessMetadataTree();
//this.createNameSpaceAction(); //this.createBusinessMetadataAction();
}, },
bindEvents: function() { bindEvents: function() {
var that = this; var that = this;
this.listenTo( this.listenTo(
this.nameSpaceCollection.fullCollection, this.businessMetadataDefCollection.fullCollection,
"reset add remove", "reset add remove",
function() { function() {
if (this.ui.nameSpaceSearchTree.jstree(true)) { if (this.ui.businessMetadataSearchTree.jstree(true)) {
that.ui.nameSpaceSearchTree.jstree(true).refresh(); that.ui.businessMetadataSearchTree.jstree(true).refresh();
} else { } else {
this.renderNameSpaceTree(); this.renderBusinessMetadataTree();
} }
}, },
this this
); );
// this.options.nameSpaceVent.on("Save:NamespaceAttribute", function(data) { $("body").on("click", ".businessMetadataPopoverOptions li", function(e) {
// that.ui.nameSpaceSearchTree.jstree(true).refresh(); that.$(".businessMetadataPopover").popover("hide");
// }); that[$(this).find("a").data("fn") + "BusinessMetadata"](e);
$("body").on("click", ".namespacePopoverOptions li", function(e) {
that.$(".nameSpacePopover").popover("hide");
that[$(this).find("a").data("fn") + "NameSpace"](e);
}); });
}, },
createNameSpaceAction: function() { createBusinessMetadataAction: function() {
var that = this; var that = this;
Utils.generatePopover({ Utils.generatePopover({
el: this.$el, el: this.$el,
contentClass: "namespacePopoverOptions", contentClass: "businessMetadataPopoverOptions",
popoverOptions: { popoverOptions: {
selector: ".nameSpacePopover", selector: ".businessMetadataPopover",
content: function() { content: function() {
var type = $(this).data("detail"), var type = $(this).data("detail"),
liString = liString =
...@@ -128,25 +123,25 @@ define([ ...@@ -128,25 +123,25 @@ define([
} }
}); });
}, },
renderNameSpaceTree: function() { renderBusinessMetadataTree: function() {
this.generateSearchTree({ this.generateSearchTree({
$el: this.ui.nameSpaceSearchTree $el: this.ui.businessMetadataSearchTree
}); });
}, },
manualRender: function(options) { manualRender: function(options) {
var that = this; var that = this;
_.extend(this, options); _.extend(this, options);
if (Utils.getUrlState.isAdministratorTab() && this.namespaceID) { if (Utils.getUrlState.isAdministratorTab() && this.guid) {
this.ui.nameSpaceSearchTree.jstree(true).select_node(this.namespaceID); this.ui.businessMetadataSearchTree.jstree(true).select_node(this.guid);
} else { } else {
this.ui.nameSpaceSearchTree.jstree(true).deselect_all(); this.ui.businessMetadataSearchTree.jstree(true).deselect_all();
this.namespaceID = null; this.guid = null;
} }
}, },
onNodeSelect: function(nodeData) { onNodeSelect: function(nodeData) {
var that = this, var that = this,
options = nodeData.node.original, options = nodeData.node.original,
url = "#!/administrator/namespace", url = "#!/administrator/businessMetadata",
trigger = true, trigger = true,
queryParams = Utils.getUrlState.getQueryParams(); queryParams = Utils.getUrlState.getQueryParams();
...@@ -154,7 +149,7 @@ define([ ...@@ -154,7 +149,7 @@ define([
url += "/" + options.id; url += "/" + options.id;
} }
if (queryParams && queryParams.from === "namespace" && Utils.getUrlState.getQueryUrl().queyParams[0] === url) { if (queryParams && queryParams.from === "bm" && Utils.getUrlState.getQueryUrl().queyParams[0] === url) {
trigger = false; trigger = false;
} }
if (trigger) { if (trigger) {
...@@ -162,11 +157,11 @@ define([ ...@@ -162,11 +157,11 @@ define([
} }
}, },
onViewEditNameSpace: function() { onViewEditBusinessMetadata: function() {
var selectedNode = this.ui.nameSpaceSearchTree.jstree("get_selected", true); var selectedNode = this.ui.businessMetadataSearchTree.jstree("get_selected", true);
if (selectedNode && selectedNode[0]) { if (selectedNode && selectedNode[0]) {
selectedNode = selectedNode[0]; selectedNode = selectedNode[0];
var url = "#!/administrator?tabActive=namespace"; var url = "#!/administrator?tabActive=bm";
if (selectedNode.parent && selectedNode.original && selectedNode.original.name) { if (selectedNode.parent && selectedNode.original && selectedNode.original.name) {
url += "&ns=" + selectedNode.parent + "&nsa=" + selectedNode.original.name; url += "&ns=" + selectedNode.parent + "&nsa=" + selectedNode.original.name;
this.triggerUrl(url); this.triggerUrl(url);
...@@ -183,22 +178,22 @@ define([ ...@@ -183,22 +178,22 @@ define([
}, },
refresh: function(options) { refresh: function(options) {
var that = this; var that = this;
this.nameSpaceCollection.fetch({ this.businessMetadataDefCollection.fetch({
silent: true, silent: true,
complete: function() { complete: function() {
that.nameSpaceCollection.fullCollection.comparator = function(model) { that.businessMetadataDefCollection.fullCollection.comparator = function(model) {
return model.get("name").toLowerCase(); return model.get("name").toLowerCase();
}; };
that.nameSpaceCollection.fullCollection.sort({ silent: true }); that.businessMetadataDefCollection.fullCollection.sort({ silent: true });
that.ui.nameSpaceSearchTree.jstree(true).refresh(); that.ui.businessMetadataSearchTree.jstree(true).refresh();
} }
}); });
}, },
getNameSpaceTree: function(options) { getBusinessMetadataTree: function(options) {
var that = this, var that = this,
nameSpaceList = [], businessMetadataList = [],
allCustomFilter = [], allCustomFilter = [],
namsSpaceTreeData = that.nameSpaceCollection.fullCollection.models, namsSpaceTreeData = that.businessMetadataDefCollection.fullCollection.models,
openClassificationNodesState = function(treeDate) { openClassificationNodesState = function(treeDate) {
if (treeDate.length == 1) { if (treeDate.length == 1) {
_.each(treeDate, function(model) { _.each(treeDate, function(model) {
...@@ -211,31 +206,31 @@ define([ ...@@ -211,31 +206,31 @@ define([
nodeStructure = { nodeStructure = {
text: attrNode ? _.escape(nodeOptions.name) : _.escape(nodeOptions.get("name")), text: attrNode ? _.escape(nodeOptions.name) : _.escape(nodeOptions.get("name")),
name: attrNode ? _.escape(nodeOptions.name) : _.escape(nodeOptions.get("name")), name: attrNode ? _.escape(nodeOptions.name) : _.escape(nodeOptions.get("name")),
type: "nameSpace", type: "businessMetadata",
id: attrNode ? _.escape(nodeOptions.name) : nodeOptions.get("guid"), id: attrNode ? _.escape(nodeOptions.name) : nodeOptions.get("guid"),
icon: attrNode ? "fa fa-file-o" : "fa fa-folder-o", icon: attrNode ? "fa fa-file-o" : "fa fa-folder-o",
children: [], children: [],
state: { selected: nodeOptions.get("guid") === that.namespaceID }, state: { selected: nodeOptions.get("guid") === that.guid },
gType: "NameSpace", gType: "BusinessMetadata",
model: nodeOptions model: nodeOptions
}; };
return nodeStructure; return nodeStructure;
}; };
_.each(namsSpaceTreeData, function(filterNode) { _.each(namsSpaceTreeData, function(filterNode) {
nameSpaceList.push(generateNode(filterNode)); businessMetadataList.push(generateNode(filterNode));
}); });
var treeView = [{ var treeView = [{
icon: "fa fa-folder-o", icon: "fa fa-folder-o",
gType: "nameSpace", gType: "businessMetadata",
type: "nameSpaceFolder", type: "businessMetadataFolder",
children: nameSpaceList, children: businessMetadataList,
text: "Namespace", text: "BusinessMetadata",
name: "Namespace", name: "BusinessMetadata",
state: { opened: true } state: { opened: true }
}]; }];
var customFilterList = treeView; var customFilterList = treeView;
return nameSpaceList; return businessMetadataList;
}, },
generateSearchTree: function(options) { generateSearchTree: function(options) {
var $el = options && options.$el, var $el = options && options.$el,
...@@ -246,7 +241,7 @@ define([ ...@@ -246,7 +241,7 @@ define([
plugins: ["search", "core", "sort", "conditionalselect", "changed", "wholerow", "node_customize"], plugins: ["search", "core", "sort", "conditionalselect", "changed", "wholerow", "node_customize"],
conditionalselect: function(node) { conditionalselect: function(node) {
var type = node.original.type; var type = node.original.type;
if (type == "nameSpaceFolder") { if (type == "businessMetadataFolder") {
if (node.children.length) { if (node.children.length) {
return false; return false;
} else { } else {
...@@ -268,7 +263,7 @@ define([ ...@@ -268,7 +263,7 @@ define([
if (node.parent === "#") { if (node.parent === "#") {
$(el).append('<div class="tools"><i class="fa"></i></div>'); $(el).append('<div class="tools"><i class="fa"></i></div>');
} else { } else {
$(el).append('<div class="tools"><i class="fa fa-ellipsis-h nameSpacePopover" rel="popover"></i></div>'); $(el).append('<div class="tools"><i class="fa fa-ellipsis-h businessMetadataPopover" rel="popover"></i></div>');
} }
} }
}, },
...@@ -276,7 +271,7 @@ define([ ...@@ -276,7 +271,7 @@ define([
multiple: false, multiple: false,
data: function(node, cb) { data: function(node, cb) {
if (node.id === "#") { if (node.id === "#") {
cb(that.getNameSpaceTree()); cb(that.getBusinessMetadataTree());
} }
} }
} }
...@@ -322,5 +317,5 @@ define([ ...@@ -322,5 +317,5 @@ define([
}); });
} }
}); });
return NameSpaceTreeLayoutView; return BusinessMetadataTreeLayoutView;
}); });
\ No newline at end of file
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