dnet-applications/apps/dnet-is-application/src/main/resources/static/js/vocabularyEditor.js

68 lines
1.5 KiB
JavaScript

var app = angular.module('vocabularyApp', []);
app.controller('vocabularyController', function($scope, $http, $location) {
$scope.terms = [];
$scope.vocId = vocId();
$scope.editTermCode = '';
$scope.tmpTerm = {};
$scope.mode = '';
$scope.currTerm = [];
$scope.reload = function() {
$http.get('./api/vocs/'+ encodeURIComponent($scope.vocId) + '/terms?' + $.now()).then(function successCallback(res) {
$scope.terms = res.data;
}, function errorCallback(res) {
alert('ERROR: ' + res.data.message);
});
};
$scope.setCurrTerm = function(term) {
$scope.currTerm = angular.copy(term);
}
$scope.prepareNewTerm = function() {
$scope.mode = 'new';
$scope.editTermCode = '';
$scope.tmpTerm = {
'code' : '',
'name' : '',
'encoding' : 'OPENAIRE',
'synonyms' : []
};
}
$scope.prepareEditTerm = function(term) {
$scope.mode = 'edit';
$scope.editTermCode = term.code;
$scope.tmpTerm = angular.copy(term);
}
$scope.saveTerm = function(term) {
$http.defaults.headers.post["Content-Type"] = "application/json;charset=UTF-8";
alert("TO SAVE HERE - " + term.code);
//TODO
if ($scope.editTermCode != '' && $scope.editTermCode != $scope.tmpTerm.code) {
$scope.callDeleteTerm($scope.editTermCode);
}
};
$scope.deleteTerm = function(code) {
if (confirm("Are you sure ?")) {
$scope.callDeleteTerm(code);
}
};
$scope.callDeleteTerm = function(code) {
alert("TO DELETE HERE - " + code);
// TODO
};
$scope.reload();
});