search-wp.js
2.18 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
loadTermData = function (currentBodyViewId)
{
console.log('search-wp, loadTermData')
var termNoJsonPath = '~/../content/data/json/da/body-views/' + currentBodyViewId + '/da_dat_tm_sg_' + currentBodyViewId + '.json';
readTextFile(termNoJsonPath, function (text) {
var TermNumberData = JSON.parse(text);
console.log(TermNumberData);
loadTermTextData(TermNumberData);
});
}
function readTextFile(file, callback) {
var rawFile = new XMLHttpRequest();
rawFile.overrideMimeType("application/json");
rawFile.open("GET", file, true);
rawFile.onreadystatechange = function () {
if (rawFile.readyState === 4 && rawFile.status == "200") {
callback(rawFile.responseText);
}
}
rawFile.send(null);
}
loadTermTextData = function (TermNumberData) {
//1.
var termTextJsonPath = '~/../content/data/json/da/vocab/english/cm_dat_vocabterm_1.json';
readTextFile(termTextJsonPath, function (text) {
var VocabTermData = JSON.parse(text);
console.log(TermNumberData);
loadTermTextData(TermNumberData);
var vocabTermTxt = [];
TermNumberData.TermData.Term.forEach(function (value1, key1) {
VocabTermData.VocabTerms.Term.forEach(function (value2, key2) {
if (value1._ActualTermNumber === value2._ActualTermNumber) {
vocabTermTxt.push(
{
"_ActualTermNumber": value2._ActualTermNumber,
"_TermText": value2._TermText,
"_cdId": value2._cdId
}
);
}
})
})
self.postMessage({
'vocabTermTxt': vocabTermTxt,
'TermNumberData': TermNumberData,
'VocabTermData': VocabTermData
});
})
}
self.onmessage = function (e) {
console.log('search-wp onmessage')
loadTermData(e.data.currentBodyViewId);
}