in source/console/app/package/package.js [605:677]
$scope.createPackage = function(newpackage, isValid) {
if (isValid) {
$blockUI.start();
$scope.dismissAwsUiAlert();
var _newpckg = {
package: newpackage
};
//check metadata requirements
var _metadata = [];
for (var i = 0; i < $scope.metadataGovernance.length; i++) {
if ($scope.metadataGovernance[i].governance === 'Required') {
if ($scope.metadataGovernance[i].value) {
if ($scope.metadataGovernance[i].value
.trim() !== '') {
_metadata.push({
tag: $scope.metadataGovernance[i].tag,
value: $scope.metadataGovernance[i].value
});
} else {
showErrorAlert([$scope.metadataGovernance[i].tag, 'is a required field.'].join(' '));
return;
}
} else {
showErrorAlert([$scope.metadataGovernance[i].tag, 'is a required field.'].join(' '));
return;
}
} else if ($scope.metadataGovernance[i].governance === 'Optional') {
if ($scope.metadataGovernance[i].value) {
if ($scope.metadataGovernance[i].value.trim() !== '') {
_metadata.push({
tag: $scope.metadataGovernance[i].tag,
value: $scope.metadataGovernance[i].value
});
}
}
}
}
if (_metadata.length > 0) {
_newpckg.metadata = _metadata;
}
var groupSet = [];
let processGroups = Object.keys($scope.groups['groups']).map(function(group) {
if ($scope.groups['all'] || $scope.groups['groups'][group].visible) {
groupSet.push(group);
}
});
Promise.all(processGroups).then(function(results) {
_newpckg.package.groups = groupSet;
dataPackageFactory.createDataPackage('new', _newpckg, function(err,
data) {
if (err) {
console.log('createDataPackage error', err);
if (err.data) {
showErrorAlert(err.data);
} else {
showErrorAlert('An unexpected error occured when attempting to save the new package.');
}
return;
}
$state.go('package', {
package_id: data.package_id
});
});
});
}
};