Web/aranyjanos/ballada.js
2021-11-02 07:56:51 +01:00

120 lines
3.2 KiB
JavaScript

var cimek = [
"A walesi bárdok",
"Ágnes asszony",
"Az örök zsidó",
"Híd-avatás",
"Szondi két apródja",
"Tengerihántás",
"Tetemre hívás",
"V. László",
"Vörös Rébék"
];
var tema = [
"történelmi",
"népi",
"népi",
"lélektani",
"történelmi",
"népi",
"lélektani",
"történelmi",
"népi"
]
var szerkezet = [
"lineáris",
"körkörös",
"lineáris",
"lineáris",
"többszólamú",
"többszólamú",
"lineáris",
"többszólamú",
"lineáris"
]
var balladak;
var vers = [], szavak = [];
var first = true;
var index;
function init() {
balladak = document.getElementById("ballada");
for (var i = 0; i < cimek.length; i++) {
var option = document.createElement("option");
option.text = cimek[i];
balladak.add(option);
}
}
function loadBallada() {
var selected = balladak.options[balladak.selectedIndex].text;
if (first) {
if (selected != "Ballada kiválasztása...") {
balladak.remove(0);
document.getElementById("vers").style.paddingBottom = "24px";
first = false;
}
}
if (!first) {
index = balladak.selectedIndex;
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
vers = this.responseText.split("\r\n");
document.getElementById("vers").innerHTML = vers.join("<br>");
count();
}
};
xhttp.open("GET", "balladák/" + selected + ".txt", true);
xhttp.send();
}
}
function count() {
szavak = [];
var versszak = 0, verssor = 0, soros = vers.indexOf(""), szavakcnt = 0, karakterek = 0, korszak = "";
var ev = parseInt(vers[vers.length-1].substring(1,5));
if (ev <= 1851) {
korszak = "Nagyszalonta";
}
else if (ev <= 1860) {
korszak = "Dalias idők (Nagykőrös)";
}
else if (ev <= 1882) {
korszak = "Őszikék (Pest)";
}
for (var i = 0; i < vers.length; i++) {
if (vers[i] == "") {
versszak++;
}
}
verssor = versszak * soros;
var sorok = 0;
for (var vsz = 0; vsz < versszak; vsz++) {
szavak[vsz] = new Array(soros);
for (var sor = 0; sor < szavak[vsz].length-1; sor++) {
szavak[vsz][sor] = [];
szavak[vsz][sor] = vers[sorok].trim().split(' ');
szavakcnt += szavak[vsz][sor].length;
sorok++;
for (var szo = 0; szo < szavak[vsz][sor].length; szo++) {
karakterek += szavak[vsz][sor][szo].length;
}
}
sorok++;
}
console.log("versszak: " + versszak);
console.log("versor: " + verssor);
console.log("szavak: " + szavakcnt);
console.log("karakterek: " + karakterek);
console.log("év: " + ev);
console.log("korszak: " + korszak);
document.getElementById("k").innerHTML = korszak;
document.getElementById("t").innerHTML = tema[index];
document.getElementById("s").innerHTML = szerkezet[index];
document.getElementById("vsz").innerHTML = versszak;
document.getElementById("vs").innerHTML = verssor;
document.getElementById("kar").innerHTML = karakterek;
document.getElementById("vsa").innerHTML = Math.round(karakterek / verssor * 100) / 100;
document.getElementById("sza").innerHTML = Math.round(karakterek / versszak * 100) / 100;
}