This commit is contained in:
YourFriendlyNeighborhoodDealer 2019-02-25 09:29:12 +01:00
commit 79d56e8177

View file

@ -140,15 +140,30 @@ function Main() {
console.log(params);
var dbs = [];
for (var i = 0; i < params.length; i++)
dbs.push(ReadData(utils.ReadFile(params[i])).result);
for (var i = 0; i < params.length; i++) {
console.log(params[i] + ": ");
try {
dbs.push(ParseJSONData(utils.ReadFile(params[i])));
console.log("JSON data added");
} catch (e) {
console.log(e);
console.log("Trying with old format...");
dbs.push(ReadData(utils.ReadFile(params[i])).result);
}
console.log("---------------------------------");
}
console.log("Parsed data count: " + dbs.length);
console.log("---------------------------------");
console.log("Merging databases...");
var db = MergeDatabases(dbs);
console.log("Removing duplicates...");
var r = RemoveDuplicates(db);
for (var i = 0; i < r.length; i++) {
console.log(r.Subjects[i].Name + ": " + r.Subjects[i].length + " darab kérdés.");
console.log(i + ": " + r.Subjects[i].Name + ": " + r.Subjects[i].length + " db");
}
utils.WriteFile(JSON.stringify(r), "newData");
@ -159,6 +174,27 @@ function GetParams() {
return process.argv.splice(2);
}
function ParseJSONData(data) {
var d = JSON.parse(data);
var r = new QuestionDB();
var rt = [];
for (var i = 0; i < d.Subjects.length; i++) {
let s = new Subject(d.Subjects[i].Name);
var j = 0;
for (j = 0; j < d.Subjects[i].Questions.length; j++) {
var currQ = d.Subjects[i].Questions[j];
s.AddQuestion(new Question(currQ.Q, currQ.A, currQ.I));
}
rt.push({
name: d.Subjects[i].Name,
count: j
});
r.AddSubject(s);
}
return r;
}
function MergeDatabases(dbs) {
var db = new QuestionDB();
for (var i = 0; i < dbs.length; i++)