correzione bug lista risultati con clausola sintattica, in progress
This commit is contained in:
parent
3ff138362d
commit
42f84e3b29
|
|
@ -315,9 +315,10 @@ $(document).ready(function() {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
numeroRisultati = numeroRisultati + 1;
|
numeroRisultati = numeroRisultati + 1;
|
||||||
var versiContesto = getFormaContext(risultato, contextLength);
|
/*var versiContesto = getFormaContext(risultato, contextLength);
|
||||||
var ultimaForma = versiContesto.slice(-1)
|
var ultimaForma = versiContesto.slice(-1)
|
||||||
ultimaPosizione = ultimaForma[0].posizione
|
ultimaPosizione = ultimaForma[0].posizione*/
|
||||||
|
ultimaPosizione=getContextLastPosition(risultato, contextLength);
|
||||||
}
|
}
|
||||||
console.log('N. contesti: ' + numeroRisultati)
|
console.log('N. contesti: ' + numeroRisultati)
|
||||||
numeroContesti = numeroRisultati
|
numeroContesti = numeroRisultati
|
||||||
|
|
@ -326,8 +327,11 @@ $(document).ready(function() {
|
||||||
|
|
||||||
function getResInPage(startcont, endcont) {
|
function getResInPage(startcont, endcont) {
|
||||||
var res = [];
|
var res = [];
|
||||||
|
var tempr=new Set()
|
||||||
var ultimaPosizione = -1;
|
var ultimaPosizione = -1;
|
||||||
var contaContesti = 0
|
var contaContesti = 0
|
||||||
|
console.log(listaClausoleRisultato)
|
||||||
|
if (listarisultati.length) {
|
||||||
for (risultato of listarisultati) {
|
for (risultato of listarisultati) {
|
||||||
if (risultato <= parseInt(ultimaPosizione)) {
|
if (risultato <= parseInt(ultimaPosizione)) {
|
||||||
continue;
|
continue;
|
||||||
|
|
@ -338,14 +342,36 @@ $(document).ready(function() {
|
||||||
}
|
}
|
||||||
if (contaContesti > endcont)
|
if (contaContesti > endcont)
|
||||||
break;
|
break;
|
||||||
var versiContesto = getFormaContext(risultato, contextLength);
|
/*var versiContesto = getFormaContext(risultato, contextLength);
|
||||||
var ultimaForma = versiContesto.slice(-1)
|
var ultimaForma = versiContesto.slice(-1)
|
||||||
ultimaPosizione = ultimaForma[0].posizione
|
ultimaPosizione = ultimaForma[0].posizione*/
|
||||||
|
ultimaPosizione=getContextLastPosition(risultato, contextLength);
|
||||||
}
|
}
|
||||||
//ordino la lista dei risultati
|
//ordino la lista dei risultati
|
||||||
res.sort(function(a, b) { return a - b });
|
res.sort(function(a, b) { return a - b });
|
||||||
return (res)
|
return (res)
|
||||||
}
|
}
|
||||||
|
if (listaClausoleRisultato.length) {
|
||||||
|
for (singleres of listaClausoleRisultato) {
|
||||||
|
tempr.add (singleres.split('-')[0])
|
||||||
|
}
|
||||||
|
var myRis=[]
|
||||||
|
|
||||||
|
tempr.forEach( y => myRis.push(listaClausoleRisultato.filter(x => (x.split('-')[0]==y) && x.split('-').length>1)))
|
||||||
|
|
||||||
|
for (risultato of myRis) {
|
||||||
|
contaContesti = contaContesti + 1;
|
||||||
|
if (contaContesti >= startcont && contaContesti < endcont) {
|
||||||
|
res.push(risultato)
|
||||||
|
}
|
||||||
|
if (contaContesti > endcont)
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
res.sort(function(a, b) { puno=a[0].split('-')[3]; pdue=b[0].split('-')[3]; return parseInt(puno) - parseInt(pdue) });
|
||||||
|
return (res)
|
||||||
|
}
|
||||||
|
return (res)
|
||||||
|
}
|
||||||
|
|
||||||
function showFrasi(start, offset = showOffset) {
|
function showFrasi(start, offset = showOffset) {
|
||||||
var canto, numeroCantica;
|
var canto, numeroCantica;
|
||||||
|
|
@ -356,18 +382,26 @@ $(document).ready(function() {
|
||||||
var numeroRisultato = 0;
|
var numeroRisultato = 0;
|
||||||
var ultimaPosizione = 0;
|
var ultimaPosizione = 0;
|
||||||
var numeroVersi;
|
var numeroVersi;
|
||||||
const intsup = Math.min(start + offset, listarisultati.length)
|
//const intsup = Math.min(start + offset, listarisultati.length)
|
||||||
var resincontext = getResInPage(start, start + offset)
|
var resincontext = getResInPage(start, start + offset)
|
||||||
//for (let i=start; i<intsup; i++){
|
//for (let i=start; i<intsup; i++){
|
||||||
for (let i = 0; i < resincontext.length; i++) {
|
for (let i = 0; i < resincontext.length; i++) {
|
||||||
//risultato = listarisultati[i];
|
//risultato = listarisultati[i];
|
||||||
risultato = resincontext[i];
|
risultato = resincontext[i];
|
||||||
numeroRisultato++;
|
numeroRisultato++;
|
||||||
risultato = parseInt(risultato)
|
|
||||||
if (risultato <= parseInt(ultimaPosizione)) {
|
|
||||||
|
if (!risultato.toString().includes('-') && risultato <= parseInt(ultimaPosizione)) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
var versiContesto = getFormaContext(risultato, contextLength);
|
var versiContesto=''
|
||||||
|
if (!Array.isArray(risultato)){
|
||||||
|
risultato = parseInt(risultato)
|
||||||
|
versiContesto = getFormaContext(risultato, contextLength);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
versiContesto = getFraseContext(risultato, contextLength);
|
||||||
|
|
||||||
var setVersicontesto = new Set()
|
var setVersicontesto = new Set()
|
||||||
divVerso = ''
|
divVerso = ''
|
||||||
numeroCantica = 0
|
numeroCantica = 0
|
||||||
|
|
@ -842,42 +876,10 @@ $(document).ready(function() {
|
||||||
|
|
||||||
// commentsArray = getVersiConCitazioni(cantica, canto)
|
// commentsArray = getVersiConCitazioni(cantica, canto)
|
||||||
commentsJson = getVersiConCitazioniJson(cantica, canto)
|
commentsJson = getVersiConCitazioniJson(cantica, canto)
|
||||||
// commentsArray.forEach(removeHtmlTags2)
|
|
||||||
/*
|
|
||||||
var numVerso1;
|
|
||||||
var numVerso2;
|
|
||||||
var versoCitazione;
|
|
||||||
|
|
||||||
commentsArray.sort((p1, p2) => {
|
|
||||||
numVerso1 = p1.verso;
|
|
||||||
numVerso2 = p2.verso;
|
|
||||||
versoCitazione = (p1.VersoCitazione).replaceAll("-", "");
|
|
||||||
numVerso1 = numVerso1 + versoCitazione;
|
|
||||||
versoCitazione = (p2.VersoCitazione).replaceAll("-", "");
|
|
||||||
numVerso2 = numVerso2 + versoCitazione;
|
|
||||||
numVerso2 = parseInt(numVerso2.replaceAll("_", ""));
|
|
||||||
numVerso1 = parseInt(numVerso1.replaceAll("_", ""));
|
|
||||||
if (numVerso1 < numVerso2) return -1;
|
|
||||||
if (numVerso1 > numVerso2) return 1;
|
|
||||||
return 0;
|
|
||||||
});*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Luca: removeHtmlTags2 e' la versione compatta di removeHtmlTags*/
|
|
||||||
/*function removeHtmlTags2(value) {
|
|
||||||
var text = ""
|
|
||||||
for (const key in value) {
|
|
||||||
text = `${value[key]}`
|
|
||||||
if (text != null) {
|
|
||||||
text = text.replace(/<(.|\n)*?>/g, '');
|
|
||||||
text = text.replace("«", "");
|
|
||||||
text = text.replace("»", "");
|
|
||||||
text = text.replace(/[\r\n]+/gm, ' ');
|
|
||||||
value[`${key}`] = text;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
function removeHtmlTags(value) {
|
function removeHtmlTags(value) {
|
||||||
var text = value;
|
var text = value;
|
||||||
|
|
@ -2030,6 +2032,10 @@ $(document).ready(function() {
|
||||||
for (const india in dialoghi) {
|
for (const india in dialoghi) {
|
||||||
var diaclass = dialoghi[india]['Cnt'].replace('_so', '')
|
var diaclass = dialoghi[india]['Cnt'].replace('_so', '')
|
||||||
if (testf==diaclass){
|
if (testf==diaclass){
|
||||||
|
listaPeriodiRisultato.push(fraseItems[0].toString())
|
||||||
|
loadPeriodo(fraseItems[0].toString())
|
||||||
|
loadClausola(fraseItems[0].toString(), fraseItems[3].toString(), fraseItems[1], fraseItems[2])
|
||||||
|
//resSent.add(fraseItems[0] + '-' + fraseItems[3] + '-' + fraseItems[1] + '-' + fraseItems[2]);
|
||||||
if (!resSent.has(fraseItems[0])) {
|
if (!resSent.has(fraseItems[0])) {
|
||||||
resSent.add(fraseItems[0]);
|
resSent.add(fraseItems[0]);
|
||||||
resultsInCantica.push(fraseItems[4]);
|
resultsInCantica.push(fraseItems[4]);
|
||||||
|
|
@ -2058,7 +2064,12 @@ $(document).ready(function() {
|
||||||
|
|
||||||
//ordino la lista dei risultati
|
//ordino la lista dei risultati
|
||||||
listarisultati.sort(function(a, b) { return a - b });
|
listarisultati.sort(function(a, b) { return a - b });
|
||||||
|
// ordino la lista delle clausole del risultato
|
||||||
|
listaClausoleRisultato.sort(function(a, b) {
|
||||||
|
var valA=a.split('-')[2]
|
||||||
|
var valB=b.split('-')[2]
|
||||||
|
return valA - valB
|
||||||
|
});
|
||||||
//aggiunge badge con totale risultati accanto alle cantiche
|
//aggiunge badge con totale risultati accanto alle cantiche
|
||||||
|
|
||||||
var totResultN = showBadgeInCantica(resultsInCantica)
|
var totResultN = showBadgeInCantica(resultsInCantica)
|
||||||
|
|
@ -2078,7 +2089,7 @@ $(document).ready(function() {
|
||||||
|
|
||||||
console.log('badge end...')
|
console.log('badge end...')
|
||||||
//calcolo numero dei contesti
|
//calcolo numero dei contesti
|
||||||
countResultContexts()
|
/countResultContexts()
|
||||||
$("#loader").fadeOut(300);
|
$("#loader").fadeOut(300);
|
||||||
// mostra lista risultati
|
// mostra lista risultati
|
||||||
$.manageResultList(0,showOffset);
|
$.manageResultList(0,showOffset);
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
import {Runtime, Library, Inspector} from "https://hdnlab1.isti.cnr.it/d3search/node_modules/commarcdiag/runtime.js";
|
/*import {Runtime, Library, Inspector} from "https://hdnlab1.isti.cnr.it/d3search/node_modules/commarcdiag/runtime.js";
|
||||||
import commarc from "https://hdnlab1.isti.cnr.it/d3search/node_modules/commarcdiag/index.js";
|
import commarc from "https://hdnlab1.isti.cnr.it/d3search/node_modules/commarcdiag/index.js";*/
|
||||||
/*import {Runtime, Library, Inspector} from "https://lida.dantenetwork.it/node_modules/commarcdiag/runtime.js";
|
import {Runtime, Library, Inspector} from "https://lida.dantenetwork.it/node_modules/commarcdiag/runtime.js";
|
||||||
import commarc from "https://lida.dantenetwork.it/node_modules/commarcdiag/index.js";*/
|
import commarc from "https://lida.dantenetwork.it/node_modules/commarcdiag/index.js";
|
||||||
|
|
||||||
const iframe = document.getElementsByClassName("minimap__content");
|
const iframe = document.getElementsByClassName("minimap__content");
|
||||||
const runtime1 = new Runtime(new Library(name => {
|
const runtime1 = new Runtime(new Library(name => {
|
||||||
|
|
|
||||||
127
js/utilsMgr.js
127
js/utilsMgr.js
|
|
@ -101,10 +101,122 @@ var orlprefix = 'https://dantenetwork.it/ontology/orl/current/'
|
||||||
|
|
||||||
var syntitprefix = 'https://dantenetwork.it/ontology/syntit/current/'
|
var syntitprefix = 'https://dantenetwork.it/ontology/syntit/current/'
|
||||||
|
|
||||||
//var stringInSparql= false;
|
|
||||||
|
function getFraseContext(fraseids, numversi = 3) {
|
||||||
|
var context = []
|
||||||
|
var listaforme = formeprima;
|
||||||
|
var fraseid = fraseids[0]
|
||||||
|
|
||||||
|
var mainid = fraseid.split('-')[0]
|
||||||
|
var cantica = mainid.split('_')[0]
|
||||||
|
var offset = parseInt(fraseid.split('-')[2]);
|
||||||
|
if (cantica == '2') {
|
||||||
|
offset = parseInt(fraseid.split('-')[2]) - 33374
|
||||||
|
listaforme = formeseconda;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (cantica == '3') {
|
||||||
|
offset = parseInt(fraseid.split('-')[2]) - 66588
|
||||||
|
listaforme = formeterza;
|
||||||
|
}
|
||||||
|
maxpos = listaforme.length - 1
|
||||||
|
var pos = 0
|
||||||
|
var startindex = Math.max(0, (offset - 10))
|
||||||
|
|
||||||
|
for (i = startindex; i < listaforme.length; i++) {
|
||||||
|
var tmpos = listaforme[i].split('_')[2]
|
||||||
|
if (tmpos == parseInt(fraseid.split('-')[2])) {
|
||||||
|
pos = i;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
var pos2 = pos
|
||||||
|
|
||||||
|
if (fraseids.length > 1)
|
||||||
|
lastfraseid = fraseids[fraseids.length - 1]
|
||||||
|
else
|
||||||
|
lastfraseid = fraseids[0]
|
||||||
|
|
||||||
|
for (j = pos; i < listaforme.length; j++) {
|
||||||
|
var tmpos2 = listaforme[j].split('_')[2]
|
||||||
|
if (tmpos2 == parseInt(lastfraseid.split('-')[3])) {
|
||||||
|
pos2 = j;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
var minpos = 0;
|
||||||
|
var limitv = Math.max((numversi), 3)
|
||||||
|
var item = listaforme[pos].split('_');
|
||||||
|
var numverso = item[3]
|
||||||
|
var spannum = (4 * limitv)
|
||||||
|
|
||||||
|
var contextinf = Math.max(minpos, parseInt(pos) - spannum)
|
||||||
|
var contextsup = Math.min(maxpos, parseInt(pos2) + spannum)
|
||||||
|
|
||||||
|
/*var contextinf = parseInt(fraseid.split('-')[2])
|
||||||
|
var contextsup = parseInt(fraseid.split('-')[3])*/
|
||||||
|
for (j = contextinf; j < contextsup + 1; j++) {
|
||||||
|
var tmpform = listaforme[j].split('_');
|
||||||
|
if ((tmpform[3] > parseInt(numverso) - limitv) && (tmpform[3] < parseInt(numverso) + limitv)) {
|
||||||
|
var contextitem = {}
|
||||||
|
contextitem['testo'] = tmpform[0];
|
||||||
|
contextitem['verso'] = tmpform[3];
|
||||||
|
contextitem['canto'] = tmpform[1];
|
||||||
|
contextitem['cantica'] = cantica - 1;
|
||||||
|
contextitem['posizione'] = tmpform[2];
|
||||||
|
contextitem['catg'] = tmpform[4];
|
||||||
|
contextitem['periodo'] = cantica + '_' + tmpform[1] + '_s_' + tmpform[5];
|
||||||
|
contextitem['funzperiodo'] = tmpform[6];
|
||||||
|
context.push(contextitem);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
return context;
|
||||||
|
}
|
||||||
|
|
||||||
|
function getContextLastPosition(formaid, numversi = 3){
|
||||||
|
|
||||||
|
var listaforme = formeprima;
|
||||||
|
|
||||||
|
var limitv = Math.max((numversi), 3)
|
||||||
|
var maxpos = 0;
|
||||||
|
var offset = parseInt(formaid);
|
||||||
|
|
||||||
|
if (parseInt(formaid) > 33373 && parseInt(formaid) < 66588) {
|
||||||
|
listaforme = formeseconda;
|
||||||
|
cantica = 1;
|
||||||
|
offset = parseInt(formaid) - 33374
|
||||||
|
|
||||||
|
}
|
||||||
|
if (parseInt(formaid) > 66587 && parseInt(formaid) < 99314) {
|
||||||
|
listaforme = formeterza;
|
||||||
|
cantica = 2;
|
||||||
|
offset = parseInt(formaid) - 66588
|
||||||
|
|
||||||
|
}
|
||||||
|
maxpos = listaforme.length - 1
|
||||||
|
var pos = 0
|
||||||
|
var startindex = Math.max(0, (offset - 25))
|
||||||
|
|
||||||
|
//console.log('Forma id: '+formaid+' startindex '+ startindex+' offset '+offset+' ('+cantica+')')
|
||||||
|
for (i = startindex; i < listaforme.length; i++) {
|
||||||
|
var tmpos = listaforme[i].split('_')[2]
|
||||||
|
if (tmpos == formaid) {
|
||||||
|
pos = i;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var spannum = (11 * limitv)
|
||||||
|
|
||||||
|
var contextsup = Math.min(maxpos, parseInt(pos) + spannum)
|
||||||
|
var tmpform = listaforme[contextsup].split('_');
|
||||||
|
return(tmpform[2])
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
function getFormaContext(formaid, numversi = 3) {
|
function getFormaContext(formaid, numversi = 3) {
|
||||||
var context = []
|
var context = []
|
||||||
var cantica = 0;
|
var cantica = 0;
|
||||||
|
|
@ -112,12 +224,12 @@ function getFormaContext(formaid, numversi = 3) {
|
||||||
var minpos = 0;
|
var minpos = 0;
|
||||||
var limitv = Math.max((numversi), 3)
|
var limitv = Math.max((numversi), 3)
|
||||||
var maxpos = 0;
|
var maxpos = 0;
|
||||||
var offset = 0;
|
var offset = parseInt(formaid);
|
||||||
|
|
||||||
|
|
||||||
if (parseInt(formaid) < 33373) {
|
/*if (parseInt(formaid) < 33373) {
|
||||||
offset = parseInt(formaid)
|
offset = parseInt(formaid)
|
||||||
}
|
}*/
|
||||||
|
|
||||||
if (parseInt(formaid) > 33373 && parseInt(formaid) < 66588) {
|
if (parseInt(formaid) > 33373 && parseInt(formaid) < 66588) {
|
||||||
listaforme = formeseconda;
|
listaforme = formeseconda;
|
||||||
|
|
@ -151,14 +263,7 @@ function getFormaContext(formaid, numversi = 3) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*for (const [index, element] of listaforme.entries()) {
|
|
||||||
if(element.split('_')[2]==formaid){
|
|
||||||
pos=index;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
var item = listaforme[pos].split('_');
|
var item = listaforme[pos].split('_');
|
||||||
var numverso = item[3]
|
var numverso = item[3]
|
||||||
var spannum = (11 * limitv)
|
var spannum = (11 * limitv)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue