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;
|
||||
}
|
||||
numeroRisultati = numeroRisultati + 1;
|
||||
var versiContesto = getFormaContext(risultato, contextLength);
|
||||
/*var versiContesto = getFormaContext(risultato, contextLength);
|
||||
var ultimaForma = versiContesto.slice(-1)
|
||||
ultimaPosizione = ultimaForma[0].posizione
|
||||
ultimaPosizione = ultimaForma[0].posizione*/
|
||||
ultimaPosizione=getContextLastPosition(risultato, contextLength);
|
||||
}
|
||||
console.log('N. contesti: ' + numeroRisultati)
|
||||
numeroContesti = numeroRisultati
|
||||
|
@ -326,8 +327,11 @@ $(document).ready(function() {
|
|||
|
||||
function getResInPage(startcont, endcont) {
|
||||
var res = [];
|
||||
var tempr=new Set()
|
||||
var ultimaPosizione = -1;
|
||||
var contaContesti = 0
|
||||
console.log(listaClausoleRisultato)
|
||||
if (listarisultati.length) {
|
||||
for (risultato of listarisultati) {
|
||||
if (risultato <= parseInt(ultimaPosizione)) {
|
||||
continue;
|
||||
|
@ -338,14 +342,36 @@ $(document).ready(function() {
|
|||
}
|
||||
if (contaContesti > endcont)
|
||||
break;
|
||||
var versiContesto = getFormaContext(risultato, contextLength);
|
||||
/*var versiContesto = getFormaContext(risultato, contextLength);
|
||||
var ultimaForma = versiContesto.slice(-1)
|
||||
ultimaPosizione = ultimaForma[0].posizione
|
||||
ultimaPosizione = ultimaForma[0].posizione*/
|
||||
ultimaPosizione=getContextLastPosition(risultato, contextLength);
|
||||
}
|
||||
//ordino la lista dei risultati
|
||||
res.sort(function(a, b) { return a - b });
|
||||
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) {
|
||||
var canto, numeroCantica;
|
||||
|
@ -356,18 +382,26 @@ $(document).ready(function() {
|
|||
var numeroRisultato = 0;
|
||||
var ultimaPosizione = 0;
|
||||
var numeroVersi;
|
||||
const intsup = Math.min(start + offset, listarisultati.length)
|
||||
//const intsup = Math.min(start + offset, listarisultati.length)
|
||||
var resincontext = getResInPage(start, start + offset)
|
||||
//for (let i=start; i<intsup; i++){
|
||||
for (let i = 0; i < resincontext.length; i++) {
|
||||
//risultato = listarisultati[i];
|
||||
risultato = resincontext[i];
|
||||
numeroRisultato++;
|
||||
risultato = parseInt(risultato)
|
||||
if (risultato <= parseInt(ultimaPosizione)) {
|
||||
|
||||
|
||||
if (!risultato.toString().includes('-') && risultato <= parseInt(ultimaPosizione)) {
|
||||
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()
|
||||
divVerso = ''
|
||||
numeroCantica = 0
|
||||
|
@ -842,42 +876,10 @@ $(document).ready(function() {
|
|||
|
||||
// commentsArray = getVersiConCitazioni(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) {
|
||||
var text = value;
|
||||
|
@ -2030,6 +2032,10 @@ $(document).ready(function() {
|
|||
for (const india in dialoghi) {
|
||||
var diaclass = dialoghi[india]['Cnt'].replace('_so', '')
|
||||
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])) {
|
||||
resSent.add(fraseItems[0]);
|
||||
resultsInCantica.push(fraseItems[4]);
|
||||
|
@ -2058,7 +2064,12 @@ $(document).ready(function() {
|
|||
|
||||
//ordino la lista dei risultati
|
||||
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
|
||||
|
||||
var totResultN = showBadgeInCantica(resultsInCantica)
|
||||
|
@ -2078,7 +2089,7 @@ $(document).ready(function() {
|
|||
|
||||
console.log('badge end...')
|
||||
//calcolo numero dei contesti
|
||||
countResultContexts()
|
||||
/countResultContexts()
|
||||
$("#loader").fadeOut(300);
|
||||
// mostra lista risultati
|
||||
$.manageResultList(0,showOffset);
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
/**
|
||||
*
|
||||
*/
|
||||
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 {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 {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 {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";
|
||||
|
||||
const iframe = document.getElementsByClassName("minimap__content");
|
||||
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 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) {
|
||||
var context = []
|
||||
var cantica = 0;
|
||||
|
@ -112,12 +224,12 @@ function getFormaContext(formaid, numversi = 3) {
|
|||
var minpos = 0;
|
||||
var limitv = Math.max((numversi), 3)
|
||||
var maxpos = 0;
|
||||
var offset = 0;
|
||||
var offset = parseInt(formaid);
|
||||
|
||||
|
||||
if (parseInt(formaid) < 33373) {
|
||||
/*if (parseInt(formaid) < 33373) {
|
||||
offset = parseInt(formaid)
|
||||
}
|
||||
}*/
|
||||
|
||||
if (parseInt(formaid) > 33373 && parseInt(formaid) < 66588) {
|
||||
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 numverso = item[3]
|
||||
var spannum = (11 * limitv)
|
||||
|
|
Loading…
Reference in New Issue