-
Notifications
You must be signed in to change notification settings - Fork 16
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #644 from MetadataRegistry/MET-612-data-model-poli…
…cies Met 612 data model policies
- Loading branch information
Showing
73 changed files
with
1,542 additions
and
135 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
7 changes: 7 additions & 0 deletions
7
ModelCatalogueCorePlugin/fixtures/dataModelPolicies/VR_rules.groovy
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
import org.modelcatalogue.core.DataModelPolicy | ||
|
||
fixture{ | ||
for (int i = 1 ; i <= 12 ; i++) { | ||
"DMP$i"(DataModelPolicy, name:"Policy $i", policyText: 'check dataType property "name" is unique') | ||
} | ||
} |
12 changes: 12 additions & 0 deletions
12
...ls-app/assets/javascripts/mc/core/ui/detail-sections/templates/dataModelPolicies.tpl.html
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
<div class="col-md-3"> | ||
<strong class="small">Data Model Policies</strong> | ||
</div> | ||
<div class="col-md-9"> | ||
<div ng-if="!editableForm.$visible"> | ||
<span ng-repeat="policy in element.policies" class="small"><a ng-href="{{policy.href()}}" target="_blank" title="{{policy.policyText}}"><catalogue-element-icon type="policy.elementType"></catalogue-element-icon> {{policy.name}}</a><br ng-if="!$last"/></span> | ||
</div> | ||
<div ng-if="editableForm.$visible"> | ||
<elements-as-tags elements="copy.policies"></elements-as-tags> | ||
<input type="text" global="true" id="dataModelPolicy" placeholder="Data Model Policy" ng-model="copy.dataModelPolicy" catalogue-element-picker="dataModelPolicy" label="el.name" typeahead-on-select="copy.policies.push(copy.dataModelPolicy);copy.dataModelPolicy = null"> | ||
</div> | ||
</div> |
51 changes: 51 additions & 0 deletions
51
...ugin/grails-app/assets/javascripts/mc/core/ui/detail-sections/templates/dataType.tpl.html
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
<div class="col-md-3"> | ||
<strong class="small">Data Type</strong> | ||
</div> | ||
<div class="full-width-editable col-md-9"> | ||
<div ng-if="editableForm.$visible"> | ||
<input type="text" id="dataType" placeholder="Data Type" ng-model="copy.dataType" | ||
catalogue-element-picker="dataType" label="el.name"> | ||
</div> | ||
<span class="editable-empty" ng-if="!editableForm.$visible && !element.dataType">empty</span> | ||
<a ng-if="!editableForm.$visible && element.dataType" class="small with-pointer" | ||
ng-href="{{element.dataType.href()}}"> | ||
<span ng-class="element.dataType.getIcon()"> </span> | ||
<span class="unit-name">{{element.dataType.name}} </span> | ||
<small> | ||
<a ng-if="!editableForm.$visible" ng-href="{{element.dataType.dataModel.href()}}" class="label" | ||
ng-class="{'label-warning': element.dataType.getDataModelStatus() == 'DRAFT', 'label-info': element.dataType.getDataModelStatus() == 'PENDING', 'label-primary': element.dataType.getDataModelStatus() == 'FINALIZED', 'label-danger': element.dataType.getDataModelStatus() == 'DEPRECATED'}">{{element.dataType.getDataModelWithVersion()}}</a> | ||
</small> | ||
</a> | ||
|
||
</div> | ||
<div class="small col-md-9 col-md-offset-3" ng-if="!editableForm.$visible && element.dataType.measurementUnit"> | ||
uses <a class="small with-pointer" ng-href="{{element.dataType.measurementUnit.href()}}"> | ||
<span ng-class="element.dataType.measurementUnit.getIcon()"> </span> | ||
<span class="unit-name">{{element.dataType.measurementUnit.name}} </span> | ||
<small> | ||
<a ng-href="{{element.dataType.measurementUnit.dataModel.href()}}" class="label" | ||
ng-class="{'label-warning': element.dataType.measurementUnit.getDataModelStatus() == 'DRAFT', 'label-info': element.dataType.measurementUnit.getDataModelStatus() == 'PENDING', 'label-primary': element.dataType.measurementUnit.getDataModelStatus() == 'FINALIZED', 'label-danger': element.dataType.measurementUnit.getDataModelStatus() == 'DEPRECATED'}">{{element.dataType.measurementUnit.getDataModelWithVersion()}}</a> | ||
</small> | ||
</a> | ||
</div> | ||
<div class="small col-md-9 col-md-offset-3" ng-if="!editableForm.$visible && element.dataType.dataClass"> | ||
refers to <a class="small with-pointer" ng-href="{{element.dataType.dataClass.href()}}"> | ||
<span ng-class="element.dataType.dataClass.getIcon()"> </span> | ||
<span class="unit-name">{{element.dataType.dataClass.name}} </span> | ||
<small> | ||
<a ng-href="{{element.dataType.dataClass.dataModel.href()}}" class="label" | ||
ng-class="{'label-warning': element.dataType.dataClass.getDataModelStatus() == 'DRAFT', 'label-info': element.dataType.dataClass.getDataModelStatus() == 'PENDING', 'label-primary': element.dataType.dataClass.getDataModelStatus() == 'FINALIZED', 'label-danger': element.dataType.dataClass.getDataModelStatus() == 'DEPRECATED'}">{{element.dataType.dataClass.getDataModelWithVersion()}}</a> | ||
</small> | ||
</a> | ||
</div> | ||
<div class="small col-md-9 col-md-offset-3" ng-if="!editableForm.$visible && element.dataType.enumerations"> | ||
<div class="row"> | ||
<div class="col-md-12"><strong class="small">Enumerations</strong></div> | ||
<div class="col-md-3" ng-repeat-start="value in element.dataType.enumerations.values"> | ||
<strong class="small">{{value.key}}</strong> | ||
</div> | ||
<div class="col-md-9 preserve-new-lines" ng-repeat-end> | ||
<small>{{value.value}}</small> | ||
</div> | ||
</div> | ||
</div> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
63 changes: 63 additions & 0 deletions
63
...assets/javascripts/modelcatalogue/core/ui/bs/modals/modalPromptDataModelPolicyEdit.coffee
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
angular.module('mc.core.ui.bs.modalPromptDatModelPolicyEdit', ['mc.util.messages']).config (messagesProvider)-> | ||
factory = ($modal, $q, messages) -> | ||
"ngInject" | ||
(title, body, args) -> | ||
if not args?.element? and not args?.create? | ||
messages.error('Cannot create edit dialog.', 'The element to be edited is missing.') | ||
return $q.reject('Missing element argument!') | ||
|
||
dialog = $modal.open { | ||
windowClass: 'basic-edit-modal-prompt' | ||
template: ''' | ||
<div class="modal-header"> | ||
<h4>''' + title + '''</h4> | ||
</div> | ||
<div class="modal-body"> | ||
<messages-panel messages="messages"></messages-panel> | ||
<form role="form" ng-submit="saveElement()"> | ||
<div class="form-group"> | ||
<label for="name" class="">Name</label> | ||
<input type="text" class="form-control" id="name" placeholder="Name" ng-model="copy.name"> | ||
</div> | ||
<div class="form-group"> | ||
<label for="policyText">Policy Text</label> | ||
<textarea rows="10" ng-model="copy.policyText" placeholder="Policy Text" class="form-control" id="policyText"></textarea> | ||
</div> | ||
<fake-submit-button/> | ||
</form> | ||
</div> | ||
<div class="modal-footer"> | ||
<contextual-actions role="modal"></contextual-actions> | ||
</div> | ||
''' | ||
|
||
controller: ($scope, messages, $controller, $modalInstance) -> | ||
$scope.copy = angular.copy(args.element ? {}) | ||
$scope.create = args.create | ||
$scope.original = args.element ? {} | ||
$scope.messages = messages.createNewMessages() | ||
|
||
angular.extend(this, $controller('saveAndCreateAnotherCtrlMixin', {$scope: $scope, $modalInstance: $modalInstance})) | ||
|
||
$scope.hasChanged = -> | ||
for prop in ['name', 'policyText'] | ||
return true if !angular.equals($scope.copy[prop], $scope.original[prop]) | ||
return false | ||
|
||
$scope.beforeSave = -> | ||
|
||
$scope.validate = -> | ||
if not $scope.copy.name | ||
$scope.messages.error 'Empty Name', 'Please fill the name' | ||
return false | ||
|
||
if not $scope.copy.policyText | ||
$scope.messages.error 'Empty Policy Text', 'Please fill the Policy Text' | ||
return false | ||
return true | ||
|
||
} | ||
|
||
dialog.result | ||
|
||
messagesProvider.setPromptFactory 'edit-dataModelPolicy', factory |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.