diff --git a/js/browseMgr_5.0.js b/js/browseMgr_5.0.js index c14c698..ae5e401 100644 --- a/js/browseMgr_5.0.js +++ b/js/browseMgr_5.0.js @@ -1,9 +1,9 @@ /** * */ -import { getVersiConCitazioni, queryRiferimenti, getListaRis, cleanListaRis, getFormaCntxt, getListaIdCommenti} from './dataMgr_5.0.js'; +import { getVersiConCitazioni, queryRiferimenti, getListaRis, cleanListaRis, getFormaCntxt, getListaIdCommenti } from './dataMgr_5.0.js'; import { getJsonQuery, emptyStructCard } from './script_5.0.js'; -import {resetGraphStr} from './syntgraph_5.0.js' +import { resetGraphStr } from './syntgraph_5.0.js' export var resetResult; @@ -35,12 +35,12 @@ $(document).ready(function() { } const dialogaltri = 'diaAltri' var listaClausoleRisultatoContesti = [] - - var listaRisultatiCommenti=[] + + var listaRisultatiCommenti = [] const sparqlGenerator = sparqljs.Generator; const myEngine = new Comunica.QueryEngine(); - + //const sparqlEndpoint = "https://hdnlab1.isti.cnr.it/fuseki/commedia/query"; const sparqlEndpoint = "https://lida.dantenetwork.it/fuseki/commedia/query"; @@ -57,12 +57,12 @@ $(document).ready(function() { var loadedCanti = new Set(); const openSTag = "{" const closeSTag = "}" - + cantoDisplayed = "#InfernoCanto_1"; - + var prevCantoDisplayed = "#InfernoCanto_1"; var contextLength = 3; - + var idCitazione = "citazioneFrase"; initCitazioni(); @@ -213,7 +213,7 @@ $(document).ready(function() { var setVersicontestoExp = new Set() for (var forma of versiContestoExp) { if (!setVersicontestoExp.has(forma.verso)) { - divVersoExp = createDivVersoLI(forma.cantica+1, forma.verso, forma.canto) + divVersoExp = createDivVersoLI(forma.cantica + 1, forma.verso, forma.canto) $(reit).append(divVersoExp) setVersicontestoExp.add(forma.verso) } @@ -272,12 +272,12 @@ $(document).ready(function() { }) - + /* * Costruzione e visualizzazione del risultato in frasi. */ - + var prevstart = -1 var prevoffset = -1 jQuery.manageResultList = function manageResultList(start, offset = showOffset) { @@ -297,7 +297,7 @@ $(document).ready(function() { //listarisultati.sort(function(a, b){return a - b}); showFrasi(start, offset) - + if (vistaPeriodi) { loadFrasi(); } @@ -318,7 +318,7 @@ $(document).ready(function() { continue; } numeroRisultati = numeroRisultati + 1; - + ultimaPosizione = getContextLastPosition(risultato, contextLength); //console.log(ultimaPosizione) } @@ -330,7 +330,7 @@ $(document).ready(function() { if (listaClausoleRisultato.length) { numeroContesti = listaClausoleRisultatoContesti.length return (listaClausoleRisultatoContesti.length) - + } numeroContesti = numeroRisultati return (numeroRisultati) @@ -358,11 +358,11 @@ $(document).ready(function() { res.sort(function(a, b) { return a - b }); return (res) } - if (listaClausoleRisultatoContesti.length && !listarisultati.length ) { - var lim=endcont - if (listaClausoleRisultatoContesti.length<=endcont) - lim=listaClausoleRisultatoContesti.length-1 - for (let i=startcont; i<=lim; i++){ + if (listaClausoleRisultatoContesti.length && !listarisultati.length) { + var lim = endcont + if (listaClausoleRisultatoContesti.length <= endcont) + lim = listaClausoleRisultatoContesti.length - 1 + for (let i = startcont; i <= lim; i++) { res.push(listaClausoleRisultatoContesti[i]) } //res.sort(function(a, b) { puno = a[0].split('-')[3]; pdue = b[0].split('-')[3]; return parseInt(puno) - parseInt(pdue) }); @@ -392,21 +392,21 @@ $(document).ready(function() { continue; } var versiContesto = '' - var ctxpivot=0 + var ctxpivot = 0 if (!Array.isArray(risultato)) { risultato = parseInt(risultato) //getFormaCntxt(risultato, contextLength) versiContesto = getFormaContext(risultato, contextLength); - ctxpivot=risultato + ctxpivot = risultato } - else{ + else { versiContesto = getFraseContext(risultato, contextLength); - if(versiContesto.length){ - var tmind=Math.floor(versiContesto.length/2); - ctxpivot=versiContesto[tmind]['posizione'] + if (versiContesto.length) { + var tmind = Math.floor(versiContesto.length / 2); + ctxpivot = versiContesto[tmind]['posizione'] } } - + var setVersicontesto = new Set() divVerso = '' @@ -523,7 +523,7 @@ $(document).ready(function() { //rimuove il grafo sintattico se c'รจ' resetGraphStr() emptyStructCard() - + $(cantoDisplayed).css("display", "none"); @@ -546,8 +546,8 @@ $(document).ready(function() { //$("#" + $(this).attr('name').replace(" ", "_")).css("display", "block"); $("#" + $(this).attr('name').replace(" ", "_")).attr('style', 'display: d-flex;') - var telive=getListaRis() - for (var tel of telive){ + var telive = getListaRis() + for (var tel of telive) { $(tel).addClass("mark ") } @@ -654,8 +654,8 @@ $(document).ready(function() { return (cantica + '_' + mcanto.split('_')[1]) }*/ - - + + function loadPeriodo(idperiodo) { @@ -857,52 +857,52 @@ $(document).ready(function() { async function initCitazioni() { //"#InfernoCanto_1" - var idcantica='1' + var idcantica = '1' var mcanto = cantoDisplayed.replace("#", '') var cantica = '' if (mcanto.startsWith('Inf')) cantica = 'Inferno' - if (mcanto.startsWith('Pur')){ + if (mcanto.startsWith('Pur')) { cantica = 'Purgatorio' - idcantica='2' + idcantica = '2' } - - if (mcanto.startsWith('Par')) { + + if (mcanto.startsWith('Par')) { cantica = 'Paradiso' - idcantica='3' + idcantica = '3' } var canto = mcanto.split('_')[1] var idCommento = "Commento_" + idcantica + "_" + canto + "_"; - var idverso=cantica+'_Canto_'+canto+'_' - var idminimap=cantica+'Canto_'+canto + var idverso = cantica + '_Canto_' + canto + '_' + var idminimap = cantica + 'Canto_' + canto /*console.log(myid)*/ if (canto.length == 1) canto = '0' + canto //commentsJson = getVersiConCitazioniJson(cantica, canto) - + /* */ - var mresult =await getVersiConCitazioni(cantica, canto) - - commentsSQL= Object.groupBy(mresult, ({ VersoCitazione }) => VersoCitazione); - - var tmpkeys=[] - - for (const ke in commentsSQL){ + var mresult = await getVersiConCitazioni(cantica, canto) + + commentsSQL = Object.groupBy(mresult, ({ VersoCitazione }) => VersoCitazione); + + var tmpkeys = [] + + for (const ke in commentsSQL) { //console.log(ke.split('-')[0]) - var t=ke.split('-')[0] + var t = ke.split('-')[0] if (tmpkeys.indexOf(t) == -1) tmpkeys.push(t) - else + else continue - var pio=$( "#"+idCommento+t) - if(pio.length) + var pio = $("#" + idCommento + t) + if (pio.length) break; - var elverso=$( "#"+idverso+t)//$("li[value='"+t+"']") + var elverso = $("#" + idverso + t)//$("li[value='"+t+"']") //console.log(elverso) - createCommentSpan(idCommento+t, elverso, commentsSQL[ke].length) + createCommentSpan(idCommento + t, elverso, commentsSQL[ke].length) } - + drawMinimap("#" + idminimap, false) //console.log (commentsSQL) } @@ -920,7 +920,7 @@ $(document).ready(function() { return text; } } - + var noteAdded; jQuery(document).delegate(' .showcomments', 'click', function() { var cid = $(this).attr('id'); if (!hasCommentsJson(cid)) { @@ -941,7 +941,7 @@ $(document).ready(function() { $("#noteCard0")[0].remove(); } var id = cid.substr(9); - id=parcid.at(-1) + id = parcid.at(-1) var collapseNote; var gruppoVersi; var versText = ""; @@ -951,29 +951,39 @@ $(document).ready(function() { var currentGroup; allGrouplKeys.sort().some(function(k) { - if (k == id || k.startsWith(id+'-')){ //~k.indexOf(id + '-')) { + if (k == id || k.startsWith(id + '-')) { //~k.indexOf(id + '-')) { //console.log('gruppo commenti '+k) console.log(commentsSQL[k].length) //gruppoVersi = k.split("_").slice(-1)[0] - gruppoVersi=k + gruppoVersi = k if (gruppoVersi.includes("-")) { versText = ", Versi " + gruppoVersi; } else { versText = ", Verso " + gruppoVersi; } - - currentGroup = createNoteGroup(cantica, getRoman(parcid[2]), versText, k, commentsSQL[k].length) - commentsSQL[k].forEach(function(value, i) { - currentGroup.append(createNoteEntry(value, k, i)) - }); - commentArea.append(currentGroup); + var queryComment = false; + if (parcid[0] == "CommentoQuery") { + queryComment = true; + } + currentGroup = createNoteGroup(cantica, getRoman(parcid[2]), versText, k, commentsSQL[k].length, queryComment) + noteAdded = false; + commentsSQL[k].forEach(function(value, i) { + currentGroup.append(createNoteEntry(value, k, i, queryComment)) + }); + if (queryComment){ //Nik changes + if (noteAdded){ + commentArea.append(currentGroup); + } + }else{ + commentArea.append(currentGroup); + } } $('#tab-list #vis0-tab').tab('show') }) }) - function createNoteGroup(cantica, canto, versi, id, len) { + function createNoteGroup(cantica, canto, versi, id, len, queryComment) { var noteGroupCard = $('