semantics_coupling.js
2.26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
function schemaGotAssignedSemantics(element_id)
{
var semanticsAssigned = true;
var id_map = parseId(element_id);
var schema_id = id_map['frame_id'];
if(schema_id < 0) {
semanticsAssigned = false;
}
else {
jQuery.ajax({
type: 'get',
url: ajax_schema_got_assigned_semantics,
data: {lemma_id: window.lemma_id,
schema_id: schema_id},
success: function(result) {
semanticsAssigned = result['got_assigned_semantics'];
},
async: false
});
}
return semanticsAssigned;
}
function semanticsAssignedAlert() {
error_alert('Działaj rozważnie, element jest wykorzystywany w ramach semantycznych.');
}
function exampleGotAssignedSemantics(example_tab_id)
{
var semanticsAssigned = true;
var example_id = example_tab_id.replace('nkjp_', '');
if (example_id < 0) {
semanticsAssigned = false;
}
else {
jQuery.ajax({
type: 'get',
url: ajax_example_got_assigned_semantics,
data: {lemma_id: window.lemma_id,
example_id: example_id},
success: function(result) {
semanticsAssigned = result['got_assigned_semantics'];
},
async: false
});
}
return semanticsAssigned;
}
function semanticsAssignedExampleAlert() {
error_alert('Działaj rozważnie, przykład jest wykorzystywany w ramach semantycznych.');
}
function semanticsChanged() {
if(window.frames_operations.length > 0) {
return true;
}
return false;
}
function checkIfSemChangedAndAlert() {
if(semanticsChanged()) {
alert('Przed dokonaniem zmiany zapisz semantykę.');
return true;
}
return false;
}
function clearSemanticConnections(schemaElement) {
if(schemaElement['type'] == 'frame') {
clearSchemaConnections(schemaElement);
}
else if(schemaElement['type'] == 'position') {
clearPositionConnections(schemaElement);
}
else if(schemaElement['type'] == 'argument') {
clearPhraseTypeConnections(schemaElement);
}
}
function clearSchemaConnections(schema) {
for(var i=0; i<schema.positions.length; i++) {
clearPositionConnections(schema.positions[i]);
}
}
function clearPositionConnections(position) {
for(var i=0; i<position.arguments.length; i++) {
clearPhraseTypeConnections(position.arguments[i]);
}
}
function clearPhraseTypeConnections(phraseType) {
phraseType.complements = [];
}