1
|
var module = angular.module('modalSynonym', []);
|
2
|
|
3
|
module.directive('modalSynonym', function(){
|
4
|
return {
|
5
|
restrict: 'E',
|
6
|
templateUrl: '../resources/html/vocabularies/modalSynonym.html',
|
7
|
controller: function($scope){
|
8
|
$scope.showSynonymModal = function(term, synonym) {
|
9
|
$scope.selectedTermIndex = $scope.entries.indexOf(term);
|
10
|
$scope.selectedSynonymIndex = $scope.entries[$scope.selectedTermIndex].synonyms.indexOf(synonym);
|
11
|
if (synonym != null) {
|
12
|
// edit existing synonym
|
13
|
$scope.modalSynonym.refTerm = $scope.entries[$scope.selectedTermIndex].englishName;
|
14
|
$scope.modalSynonym.term = $scope.entries[$scope.selectedTermIndex].synonyms[$scope.selectedSynonymIndex].term;
|
15
|
$scope.modalSynonym.encoding = $scope.entries[$scope.selectedTermIndex].synonyms[$scope.selectedSynonymIndex].encoding;
|
16
|
} else {
|
17
|
// new synonym
|
18
|
$scope.modalSynonym.refTerm = $scope.entries[$scope.selectedTermIndex].englishName;
|
19
|
$scope.modalSynonym.term = '';
|
20
|
$scope.modalSynonym.encoding = '';
|
21
|
}
|
22
|
$('#synonymModal').modal();
|
23
|
};
|
24
|
|
25
|
$scope.editSynonym = function() {
|
26
|
if ($scope.selectedSynonymIndex == -1) {
|
27
|
$scope.entries[$scope.selectedTermIndex].synonyms.push({
|
28
|
"term" : $scope.modalSynonym.term,
|
29
|
"encoding" : $scope.modalSynonym.encoding
|
30
|
});
|
31
|
} else {
|
32
|
$scope.entries[$scope.selectedTermIndex].synonyms[$scope.selectedSynonymIndex].term = $scope.modalSynonym.term;
|
33
|
$scope.entries[$scope.selectedTermIndex].synonyms[$scope.selectedSynonymIndex].encoding = $scope.modalSynonym.encoding;
|
34
|
}
|
35
|
// dismiss modal
|
36
|
$('.modal').modal('hide');
|
37
|
if ($scope.autocommit) {
|
38
|
$scope.commit();
|
39
|
} else {
|
40
|
showPermanotice("Uncommitted changes!");
|
41
|
}
|
42
|
}
|
43
|
},
|
44
|
controllerAs: 'modalSynonym'
|
45
|
}
|
46
|
});
|