-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathAccusativeSingular.html
More file actions
106 lines (90 loc) · 7.5 KB
/
AccusativeSingular.html
File metadata and controls
106 lines (90 loc) · 7.5 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
96
97
98
99
100
101
102
103
104
105
106
<!DOCTYPE html>
<html>
<head>
<title>
LT Exercise -- Accusative Singular
</title>
<link rel="stylesheet" href="css/style.css">
<link rel="stylesheet" href="css/tooltip.css">
<link rel="stylesheet" href="css/ToC.css">
<link rel="stylesheet" href="css/pageStructure.css">
<script type="text/javascript" src="js/Common.js"> </script>
<script type="text/javascript">
ButtonNext_OnPageLoad();
SetupArrayFunctions();
var samplesAsJson = '[{"Ending":"a", "Nominative":"ambasada", "Accusative":"ambasadą", "En":"embassy"},{"Ending":"a", "Nominative":"bažnyčia", "Accusative":"bažnyčią", "En":"church"},{"Ending":"a", "Nominative":"biblioteka", "Accusative":"biblioteką", "En":"library"},{"Ending":"a", "Nominative":"ekskursija", "Accusative":"eksjursiją", "En":"excursion"},{"Ending":"a", "Nominative":"katedra", "Accusative":"katedrą", "En":"cathedral"},{"Ending":"a", "Nominative":"mokykla", "Accusative":"mokyklą", "En":"school"},{"Ending":"a", "Nominative":"paskaita", "Accusative":"paskaitą", "En":"lecture"},{"Ending":"a", "Nominative":"kirpykla", "Accusative":"kirpyklą", "En":"hairdresser\'s"},{"Ending":"a", "Nominative":"Nida", "Accusative":"Nidą", "En":"City in LT"},{"Ending":"as", "Nominative":"parkas", "Accusative":"parką", "En":"park"},{"Ending":"as", "Nominative":"universitetas", "Accusative":"universitetą", "En":"university"},{"Ending":"as", "Nominative":"restoranas", "Accusative":"restoraną", "En":"restraunt"},{"Ending":"as", "Nominative":"baras", "Accusative":"barą", "En":"bar"},{"Ending":"as", "Nominative":"bankas", "Accusative":"banką", "En":"bank"},{"Ending":"as", "Nominative":"knygynas", "Accusative":"knygyną", "En":"book shop"},{"Ending":"as", "Nominative":"klubas", "Accusative":"klubą", "En":"club"},{"Ending":"as", "Nominative":"baseinas", "Accusative":"baseiną", "En":"pool"},{"Ending":"as", "Nominative":"teatras", "Accusative":"teatrą", "En":"theater"},{"Ending":"as", "Nominative":"paštas", "Accusative":"paštą", "En":"post office"},{"Ending":"as", "Nominative":"biuras", "Accusative":"biurą", "En":"office"},{"Ending":"as", "Nominative":"Kaunas", "Accusative":"Kauną", "En":"City in LT"},{"Ending":"as", "Nominative":"karas", "Accusative":"karą", "En":"war"},{"Ending":"ė", "Nominative":"kavinė", "Accusative":"kavinę", "En":"cafe"},{"Ending":"ė", "Nominative":"kepyklėlė", "Accusative":"kepyklėlę", "En":"bakery"},{"Ending":"ė", "Nominative":"ligoninė", "Accusative":"ligoninę", "En":"clinic"},{"Ending":"ė", "Nominative":"parduotuvė", "Accusative":"parduotuvę", "En":"shop"},{"Ending":"ė", "Nominative":"rotušė", "Accusative":"rotušę", "En":"town hall"},{"Ending":"ė", "Nominative":"stotelė", "Accusative":"stotelę", "En":"bus stop"},{"Ending":"ė", "Nominative":"upė", "Accusative":"upę", "En":"river"},{"Ending":"ė", "Nominative":"Tauragė", "Accusative":"Tauragę", "En":"City in LT"},{"Ending":"ė", "Nominative":"Ukmergė", "Accusative":"Ukmergę", "En":"City in LT"},{"Ending":"ė", "Nominative":"Plungė", "Accusative":"Plungę", "En":"City in LT"},{"Ending":"is", "Nominative":"viešbutis", "Accusative":"viešbutį", "En":"hotel"},{"Ending":"is", "Nominative":"bendrabutis", "Accusative":"bendrabutį", "En":"dormitory"},{"Ending":"is", "Nominative":"stotis", "Accusative":"stotį", "En":"bus stop"},{"Ending":"is", "Nominative":"pilis", "Accusative":"pilį", "En":"castle"},{"Ending":"is", "Nominative":"Lentvaris", "Accusative":"Lentvarį", "En":"City in LT"},{"Ending":"is", "Nominative":"Radviliškis", "Accusative":"Radviliškį", "En":"City in LT"},{"Ending":"is", "Nominative":"Rokiškis", "Accusative":"Rokiškį", "En":"City in LT"},{"Ending":"is", "Nominative":"Joniškis", "Accusative":"Joniškį", "En":"City in LT"},{"Ending":"is", "Nominative":"Gelgaudiškis", "Accusative":"Gelgaudiškį", "En":"City in LT"},{"Ending":"us", "Nominative":"muziejus", "Accusative":"muziejų", "En":"museum"},{"Ending":"us", "Nominative":"turgus", "Accusative":"turgų", "En":"market"},{"Ending":"us", "Nominative":"Vilnius", "Accusative":"Vilnių", "En":"City in LT"},{"Ending":"us", "Nominative":"Alytus", "Accusative":"Alytų", "En":"City in LT"},{"Ending":"us", "Nominative":"Subačius", "Accusative":"Subačių", "En":"City in LT"},{"Ending":"ys", "Nominative":"kambarys", "Accusative":"kambarį", "En":"room"},{"Ending":"ys", "Nominative":"Panevėžys", "Accusative":"Panevėžį", "En":"City in LT"},{"Ending":"ys", "Nominative":"Pasvalys", "Accusative":"Pasvalį", "En":"City in LT"},{"Ending":"ys", "Nominative":"Švenčionys", "Accusative":"Švenčionį", "En":"City in LT"},{"Ending":"ys", "Nominative":"Kaisadorys", "Accusative":"Kaisadorį", "En":"City in LT"},{"Ending":"ys", "Nominative":"Pandėlys", "Accusative":"Pandėlį", "En":"City in LT"}]';
var sampleVerbs = [
{"Lt":"Einame", "En": "We go (on foot)"},
{"Lt":"Važiuojame", "En" : "We go (on transport)"},
{"Lt":"Vykstame", "En" : "We move"},
{"Lt":"Einu", "En": "I go (on foot)"},
{"Lt":"Važiuoju", "En" : "I go (on transport)"},
{"Lt":"Vykstu", "En" : "I move"}
];
// Get array of objects {ending, [{ending, nominative, accusative, en}]}
var result = JSON
.parse(samplesAsJson)
.GroupBy((elem) => (elem.Ending), "Ending");
var currentSample = result.random().values.random();
var sampleVerb = sampleVerbs.random();
function onNextActionButtonClick(){
// Check if it's answer request or next sample request
var isAnswerRequest = false;
var button = document.getElementById('NextActionButton');
if(button.innerText == 'Check answer') {isAnswerRequest = true;}
else {isAnswerRequest = false;}
// Call the respective function based on the request type
if(isAnswerRequest){
onAnswerRequest();
}
else { onNextSampleRequest(); }
}
function onAnswerRequest(){
// Show answer
var answerDiv = document.getElementById('Answer');
answerDiv.innerHTML = currentSample.Accusative;
// Amend button text
var button = document.getElementById('NextActionButton');
button.innerText = 'Next';
}
function onNextSampleRequest(){
// Clean up answer
var answerDiv = document.getElementById('Answer');
answerDiv.innerHTML = '';
// Amend button text
var button = document.getElementById('NextActionButton');
button.innerText = 'Check answer';
// Setup new sample
var randomSample = result.notRepeatingRandom(currentSample.Ending,(group) => (group.Ending)).values.random();
currentSample = randomSample;
// Setup question div
var divToAmend = document.getElementById('Question');
sampleVerb = sampleVerbs.random();
divToAmend.innerHTML = '<div class="tooltip">' + sampleVerb.Lt +' <span class="tooltiptext">' + sampleVerb.En + ' </span> </div>' + " į " + currentSample.Nominative;
}
</script>
</head>
<body>
<div id='pageStructure' class="pageStructure">
<div id='ToC' class='ToC'></div>
<script type="text/javascript" src="js/ToC.js"> </script>
<script> uploadToC(); </script>
<div id='table' class='content'>
<div id='Question'> Einame į Parkas </div>
<div id='Answer'> Parką </div>
<div id='Button'>
<button id='NextActionButton'
onclick="onNextActionButtonClick()">
Next
</button>
</div>
<div class="issueNotificationDiv">
<button id='notifyButton'
onclick="notify(sampleVerb.Lt + ' į ' + currentSample.Nominative, document.getElementById('Answer').innerHTML)">
Tell about an error
</button>
</div>
</div>
</div>
</body>
</html>