Risolto ptoblemi con espandi frasi

This commit is contained in:
nicola 2023-02-22 11:20:16 +01:00
parent a256eaaacf
commit a70dc8cb53
1 changed files with 127 additions and 127 deletions

View File

@ -23,7 +23,6 @@ $(document).ready(function() {
var shownSentenceList = new Set() var shownSentenceList = new Set()
//var currentMinimap = '' //var currentMinimap = ''
var listarisultati = []; var listarisultati = [];
var listaPeriodiRisultato = []; var listaPeriodiRisultato = [];
var resultSentences = new Set() var resultSentences = new Set()
@ -36,9 +35,7 @@ $(document).ready(function() {
var cantoDisplayed = "#InfernoCanto_1"; var cantoDisplayed = "#InfernoCanto_1";
var queryExecuted = false; var queryExecuted = false;
var contextLength = 4; var contextLength = 3;
var currentContextLength = 4;
resetResult=function(){ resetResult=function(){
//console.log('clean result') //console.log('clean result')
@ -112,18 +109,8 @@ function loadFrasi() {
$(this).css('color', colorssp(mapsynttypestopalette[stp])); $(this).css('color', colorssp(mapsynttypestopalette[stp]));
}) })
let minim=$(" .minimap__content") drawMinimap(cantoDisplayed)
minim.contents().find(" .sentencetag").each(function(){
$(this).attr('style', 'display: d-flex;');
})
minim.contents().find(' .'+formaClass).each(function() {
stp=$(this).attr('class').split(" ")[1]
$(this).css('color', colorssp(mapsynttypestopalette[stp]));
})
//drawMinimap(cantoDisplayed)
} }
function resetFrasi(){ function resetFrasi(){
$(cantoDisplayed).find(' .sentencetag').each(function() { $(cantoDisplayed).find(' .sentencetag').each(function() {
@ -133,19 +120,11 @@ function resetFrasi(){
//console.log(colorssp(mapsynttypestopalette[stp])) //console.log(colorssp(mapsynttypestopalette[stp]))
$(this).css('color', ''); $(this).css('color', '');
}) })
let minim=$(" .minimap__content") drawMinimap(cantoDisplayed)
minim.contents().find(" .sentencetag").each(function(){
$(this).css('display', 'none');
})
minim.contents().find(' .'+formaClass).each(function() {
$(this).css('color', '');
})
//drawMinimap(cantoDisplayed)
} }
//$(" .Ma, .Co, .Su, .Pa").each(function(idx, element) { //$(" .Ma, .Co, .Su, .Pa").each(function(idx, element) {
$(" ."+formaClass).each(function(idx, element) { $(" ."+formaClass).each(function(idx, element) {
// We cycle through the elements using each() so that we can choose the element specifically that we wish to clean up afterward // We cycle through the elements using each() so that we can choose the element specifically that we wish to clean up afterward
var ele = $(element); var ele = $(element);
@ -226,13 +205,13 @@ $(" ."+formaClass).hover(function(idx, element) {
var fraseToExpand = "#"+"Frase"+parcid[4] var fraseToExpand = "#"+"Frase"+parcid[4]
var cantoDiv = []; var cantoDiv = [];
var fraseDiv = []; var fraseDiv = [];
var primoVerso; var numeroVerso;
var ultimoVerso;
var idVerso; var idVerso;
var verso; var divAggiuntiPrima = null;
var fraseCorrente = $(fraseToExpand) var divAggiuntiDopo = null;
var fraseElements = []; var fraseElements = [];
var divComandi = $("#comandiFrase"+parcid[4]).clone(); var ultimoVersoDivDopo;
var primoVersoDivPrima;
if ( !(loadedCanti.has(cantoToShow))){ if ( !(loadedCanti.has(cantoToShow))){
caricaCanto(cantoToShow,parcid) caricaCanto(cantoToShow,parcid)
@ -251,51 +230,40 @@ $(" ."+formaClass).hover(function(idx, element) {
}); });
idVerso = fraseDiv[0].split('_'); idVerso = fraseDiv[0].split('_');
primoVerso = idVerso[2]; cantica = idVerso[0];
canto = idVerso[1];
numeroVerso = parseInt(idVerso[2]);
primoVersoDivPrima = parseInt(idVerso[2])
idVerso = fraseDiv[fraseDiv.length-1].split('_'); idVerso = fraseDiv[fraseDiv.length-1].split('_');
ultimoVerso = parseInt(idVerso[2]); ultimoVersoDivDopo = parseInt(idVerso[2]);
$("#comandiFrase"+parcid[4]).remove(); divAggiuntiPrima = $("#"+"FrasiAggiuntePrima"+parcid[4]);
divAggiuntiDopo = $("#"+"FrasiAggiunteDopo"+parcid[4]);
if (fraseDiv.length < currentContextLength){ if (divAggiuntiPrima.length == 0){
if(primoVerso == 1){ // caso inizio canto divAggiuntiPrima = $("<div />")
var divAggiunti = $("<div />") divAggiuntiPrima.attr('id',"FrasiAggiuntePrima"+parcid[4])
divAggiunti.attr('id',"FraseAggiunti"+parcid[4]) }else{
for (i=0;i<4;i++){ primoVersoDivPrima = divAggiuntiPrima.attr("primoVerso")
var verso = $("#"+cantoDiv[3+i]).clone();
divAggiunti.append(verso);
} }
fraseCorrente.append(divAggiunti);
fraseCorrente.append(divComandi); if (divAggiuntiDopo.length == 0){
divAggiuntiDopo = $("<div />")
divAggiuntiDopo.attr('id',"FrasiAggiunteDopo"+parcid[4])
}else{
ultimoVersoDivDopo = divAggiuntiDopo.attr("ultimoVerso")
}
if (fraseDiv.length < contextLength){
if(numeroVerso == 1){ // caso inizio canto
aggiungiDopo(fraseDiv, ultimoVersoDivDopo,divAggiuntiDopo,cantoDiv)
}else{ // caso fine canto }else{ // caso fine canto
for (i=primoVerso-5;i<primoVerso-1;i--){ aggiungiPrima(fraseDiv, primoVersoDivPrima,divAggiuntiPrima,cantoDiv);
var verso = $("#"+cantoDiv[i]).clone();
divAggiunti.append(verso);
}
} }
}else{ }else{
for (element of fraseDiv){ aggiungiPrima(fraseDiv, primoVersoDivPrima,divAggiuntiPrima,cantoDiv);
$("#"+element).remove(); aggiungiDopo(fraseDiv, ultimoVersoDivDopo,divAggiuntiDopo,cantoDiv)
}
var divAggiunti = $("<div />")
divAggiunti.attr('id',"FraseAggiunti"+parcid[4])
for (i=primoVerso-5;i<primoVerso-1;i++){
var verso = $("#"+cantoDiv[i]).clone();
divAggiunti.append(verso);
}
fraseCorrente.append(divAggiunti);
for (element of fraseElements){
fraseCorrente.append(element);
}
var divAggiunti = $("<div />")
divAggiunti.attr('id',"FraseAggiunti"+parcid[4])
for (i=ultimoVerso;i<ultimoVerso+4;i++){
var verso = $("#"+cantoDiv[i]).clone();
divAggiunti.append(verso);
}
fraseCorrente.append(divAggiunti);
fraseCorrente.append(divComandi);
} }
//aggiungo listeners //aggiungo listeners
@ -303,13 +271,40 @@ $(" ."+formaClass).hover(function(idx, element) {
}); });
function aggiungiDopo(fraseDiv, ultimoVersoDivDopo,divAggiuntiDopo,cantoDiv){
idVerso = "#"+fraseDiv[fraseDiv.length-1];
numeroVerso = parseInt(ultimoVersoDivDopo);
for (i=numeroVerso;i<numeroVerso+contextLength;i++){
var verso = $("#"+cantoDiv[i]).clone();
ultimoVersoDivDopo++;
verso.attr('id', cantica+"_"+canto+"_"+ultimoVersoDivDopo);
divAggiuntiDopo.append(verso);
}
divAggiuntiDopo.insertAfter($(idVerso));
divAggiuntiDopo.attr("ultimoVerso",ultimoVersoDivDopo)
}
function aggiungiPrima(fraseDiv, primoVersoDivPrima,divAggiuntiPrima,cantoDiv){
idVerso = "#"+fraseDiv[0];
numeroVerso = parseInt(primoVersoDivPrima);
for (i=numeroVerso-1;i>numeroVerso-contextLength-1;i--){
var verso = $("#"+cantoDiv[i-1]).clone();
primoVersoDivPrima--;
verso.attr('id', cantica+"_"+canto+"_"+primoVersoDivPrima);
divAggiuntiPrima.prepend(verso);
}
divAggiuntiPrima.insertBefore($(idVerso));
divAggiuntiPrima.attr("primoVerso",primoVersoDivPrima)
}
jQuery(document).delegate(' .riduciFrase', 'click', function() { jQuery(document).delegate(' .riduciFrase', 'click', function() {
var cid = $(this).attr('id'); var cid = $(this).attr('id');
var parcid=cid.split('_'); var parcid=cid.split('_');
var fraseToReduce = "#"+"FraseAggiunti"+parcid[4] var divAggiuntiPrima = "#"+"FrasiAggiuntePrima"+parcid[4]
$(fraseToReduce).remove(); var divAggiuntiDopo = "#"+"FrasiAggiunteDopo"+parcid[4]
$(fraseToReduce).remove();
$(divAggiuntiPrima).remove();
$(divAggiuntiDopo).remove();
}); });
function caricaCanto(canto, parcid){ function caricaCanto(canto, parcid){
@ -325,7 +320,6 @@ $(" ."+formaClass).hover(function(idx, element) {
jQuery(document).delegate(' .vaiALCanto', 'click', function() { jQuery(document).delegate(' .vaiALCanto', 'click', function() {
var cid = $(this).attr('id'); var cid = $(this).attr('id');
var parcid=cid.split('_'); var parcid=cid.split('_');
var fraseToReduce = "#"+"FraseAggiunti"+parcid[4]
cantoDisplayed = parcid[0]+"_"+parcid[2] cantoDisplayed = parcid[0]+"_"+parcid[2]
@ -333,7 +327,6 @@ $(" ."+formaClass).hover(function(idx, element) {
caricaCanto(cantoDisplayed,parcid) caricaCanto(cantoDisplayed,parcid)
} }
cantoDisplayed = "#"+cantoDisplayed cantoDisplayed = "#"+cantoDisplayed
$(fraseToReduce).remove();
$(cantoDisplayed).attr('style', 'display: d-flex;'); $(cantoDisplayed).attr('style', 'display: d-flex;');
$("#vistaFrasi").css("display", "none"); $("#vistaFrasi").css("display", "none");
}); });
@ -345,8 +338,6 @@ $(" ."+formaClass).hover(function(idx, element) {
var canto, numeroCantica; var canto, numeroCantica;
var divVerso; var divVerso;
currentContextLength = contextLength;
$(cantoDisplayed).css("display", "none"); $(cantoDisplayed).css("display", "none");
if (!queryExecuted){ if (!queryExecuted){
@ -372,7 +363,7 @@ $(" ."+formaClass).hover(function(idx, element) {
numeroCantica=0 numeroCantica=0
canto=0 canto=0
var elencoVersi = $('<div class="itemelenco" />') var elencoVersi = $('<div class="itemelenco" />')
var titoloCanto = $('<h5 class="titolo-canto" />') var titoloCanto = $('<h5 class="titolo-canto"/>')
elencoVersi.attr('id', "Frase"+numeroRisultato); elencoVersi.attr('id', "Frase"+numeroRisultato);
@ -397,13 +388,13 @@ $(" ."+formaClass).hover(function(idx, element) {
comandi.attr('id',"comandiFrase"+numeroRisultato) comandi.attr('id',"comandiFrase"+numeroRisultato)
var spanBadgeContext = $('<span />'); var spanBadgeContext = $('<span />');
var contextIcon = '<ion-icon name="return-up-back-outline"></ion-icon>'; var contextIcon = '<ion-icon name="return-up-back-outline"></ion-icon>';
spanBadgeContext.attr('class', 'badge badge-primary badge-pill mx-2 vaiALCanto'); spanBadgeContext.attr('class', 'badge badge-primary badge-pill my-0 mx-2 vaiALCanto');
var spanBadgeExpand = $('<span />'); var spanBadgeExpand = $('<span />');
var expandIcon = '<ion-icon name="arrow-down-outline"></ion-icon>'; var expandIcon = '<ion-icon name="arrow-down-outline"></ion-icon>';
spanBadgeExpand.attr('class', 'badge badge-primary badge-pill mx-2 espandiFrase'); spanBadgeExpand.attr('class', 'badge badge-primary badge-pill my-0 mx-2 espandiFrase');
var spanBadgeReduce = $('<span />'); var spanBadgeReduce = $('<span />');
var reduceIcon = '<ion-icon name="arrow-up-outline"></ion-icon>'; var reduceIcon = '<ion-icon name="arrow-up-outline"></ion-icon>';
spanBadgeReduce.attr('class', 'badge badge-primary badge-pill mx-2 riduciFrase'); spanBadgeReduce.attr('class', 'badge badge-primary badge-pill my-0 mx-2 riduciFrase');
spanBadgeContext.attr('id', getCantica(numeroCantica)+"Canto_e_"+canto+"_"+risultato+"_"+numeroRisultato); spanBadgeContext.attr('id', getCantica(numeroCantica)+"Canto_e_"+canto+"_"+risultato+"_"+numeroRisultato);
spanBadgeContext.append(contextIcon) spanBadgeContext.append(contextIcon)
@ -417,6 +408,7 @@ $(" ."+formaClass).hover(function(idx, element) {
spanBadgeContext.appendTo(comandi); spanBadgeContext.appendTo(comandi);
spanBadgeExpand.appendTo(comandi); spanBadgeExpand.appendTo(comandi);
spanBadgeReduce.appendTo(comandi); spanBadgeReduce.appendTo(comandi);
comandi.appendTo(elencoVersi); comandi.appendTo(elencoVersi);
elencoVersi.appendTo(elencoRisutati); elencoVersi.appendTo(elencoRisutati);
elencoRisutati.append(mhr) elencoRisutati.append(mhr)
@ -435,21 +427,18 @@ $(" ."+formaClass).hover(function(idx, element) {
//visualizzo //visualizzo
$("#vistaFrasi").attr('style', 'display: d-flex;'); $("#vistaFrasi").attr('style', 'display: d-flex;');
manageMM("#vistaFrasi")
//drawMinimap("#vistaFrasi") drawMinimap("#vistaFrasi")
}); });
jQuery(document).delegate('.navig-canto', 'click', function(e) { jQuery(document).delegate('.navig-canto', 'click', function(e) {
resetFrasi() resetFrasi()
//nasconde vista risultati
$("#vistaFrasi").css("display", "none"); $("#vistaFrasi").css("display", "none");
//rimuove il grafo sintattico se c'è' //rimuove il grafo sintattico se c'è'
var periodograph=document.getElementById("periodograph"); var periodograph=document.getElementById("periodograph");
if (periodograph!=null){ if (periodograph!=null){
let showngr=document.getElementById("periodograph").getAttribute('name').split("_") let showngr=document.getElementById("periodograph").getAttribute('name').split("_")
var tmpsent=showngr[0]+"_"+showngr[1]+"_s_"+showngr[2]; var tmpsent=showngr[0]+"_"+showngr[1]+"_s_"+showngr[2];
@ -466,8 +455,6 @@ $(" ."+formaClass).hover(function(idx, element) {
$('.canto').each(function() { $('.canto').each(function() {
$(this).css("display", "none"); $(this).css("display", "none");
}); });
const cid=$(this).attr('name').replace(" ", "_"); const cid=$(this).attr('name').replace(" ", "_");
cantoDisplayed = "#"+cid; cantoDisplayed = "#"+cid;
@ -486,16 +473,30 @@ $(" ."+formaClass).hover(function(idx, element) {
} }
//$("#" + $(this).attr('name').replace(" ", "_")).css("display", "block"); //$("#" + $(this).attr('name').replace(" ", "_")).css("display", "block");
$("#" + $(this).attr('name').replace(" ", "_")).attr('style', 'display: d-flex;') $("#" + $(this).attr('name').replace(" ", "_")).attr('style', 'display: d-flex;')
drawMinimap("#" + $(this).attr('name').replace(" ", "_"))
$(" ."+formaClass).each(function(idx, element) {
var ele = $(element);
ele.tooltip({
content: (function() {return formatTTContent(ele.attr('title'), ele.attr('class').split(' ')[1]);}),
classes:{"ui-tooltip":'Nik_dropdown-content'},
close: function (event, ui) {$(".ui-helper-hidden-accessible").remove();},
create: function(ev, ui) {$(this).data("ui-tooltip").liveRegion.remove();},
hide: false,
show: false
//drawMinimap("#" + $(this).attr('name').replace(" ", "_")) });
manageMM("#" + $(this).attr('name').replace(" ", "_")) ele.hover(function(idx, element) {
if (selectedVista=='frasi'){
loadFrasi(); sentenceId=$(this).attr('class').split(' ')[0].split('_')
} var tmplisid=sentenceId[0]+'_'+sentenceId[1]+'_'+sentenceId[3]
addFormaListeners(); lsentid=$(this).attr('class').split(' ')[0]
lisid=tmplisid
}); });
});
});
//Query //Query
@ -637,33 +638,21 @@ $(" ."+formaClass).hover(function(idx, element) {
}); });
} }
let minim=$(" .minimap__content")
for (forma of listarisultati) { for (forma of listarisultati) {
idforma = '#' + forma idforma = '#' + forma
$(idforma).removeClass("font-weight-bold mark ") $(idforma).removeClass("font-weight-bold mark ")
minim.contents().find(idforma).removeClass("font-weight-bold mark ")
} }
$(".badge").remove(); $(".badge").remove();
//$("#headingZero").css("display", "none"); $("#headingZero").css("display", "none");
$("#vistaFrasi").empty()
$("#vistaFrasi").css("display", "none");
listarisultati = [] listarisultati = []
listaPeriodiRisultato=[] listaPeriodiRisultato=[]
resultSentences=new Set() resultSentences=new Set()
$(cantoDisplayed).attr('style', 'display: d-flex;'); $(cantoDisplayed).attr('style', 'display: d-flex;');
//drawMinimap(cantoDisplayed) drawMinimap(cantoDisplayed)
}
function manageMM(name){
currentMinimap = name;
let testhtml = $(currentMinimap)[0].outerHTML;
let minim=$(" .minimap__content")
let bm=minim.contents().find(' .blog-main')
bm.empty()
bm.append(testhtml)
getDimensionsDiv();
} }
var unitaRicerca='forma' var unitaRicerca='forma'
@ -720,6 +709,24 @@ $(" ."+formaClass).hover(function(idx, element) {
} }
/*
var periodograph=document.getElementById("periodograph");
if (periodograph!=null){
console.log('val '+document.getElementById("periodograph").getAttribute('name'))
let showngr=document.getElementById("periodograph").getAttribute('name').split("_")
var tmpsent=showngr[0]+"_"+showngr[1]+"_s_"+showngr[2]
periodograph.parentNode.removeChild(periodograph);
//var sentence = document.getElementsByClassName(lsentid);
var sentence = document.getElementsByClassName(tmpsent);
for (let i = 0; i < sentence.length; i++) {
sentence[i].classList.remove('font-italic');
if (selectedVista!='frasi')
sentence[i].style.removeProperty('color');
sentence[i].classList.remove('font-weight-normal');
}
*/
function resetSentenceStructure(sentence) { function resetSentenceStructure(sentence) {
/* /*
@ -828,9 +835,9 @@ $(" ."+formaClass).hover(function(idx, element) {
spannum.attr('class', 'numverso text-muted') spannum.attr('class', 'numverso text-muted')
elementoverso.append(spannum) elementoverso.append(spannum)
//elementoverso.append(num + ". ") //elementoverso.append(num + ". ")
//elementoverso.attr("style", "line-height: 0.5em") elementoverso.attr("style", "line-height: 0.5em")
elementoverso.attr('class', 'f6 mb-2 text-dark text-nowrap font-weight-lighter '+cantica+' '+canto) elementoverso.attr('class', 'f6 text-dark text-nowrap font-weight-lighter '+cantica+' '+canto)
elementoverso.attr('id', cantica + "_" + canto + "_" + num) elementoverso.attr('id', cantica + "_" + canto + "_" + num)
@ -945,7 +952,6 @@ $(" ."+formaClass).hover(function(idx, element) {
}); });
seachbBindingsStream.on('end', () => { seachbBindingsStream.on('end', () => {
var resSent=new Set() var resSent=new Set()
let minim=$(" .minimap__content")
console.log('start rendering...') console.log('start rendering...')
listarisultati = Array.from(result) listarisultati = Array.from(result)
var listaclausole=Array.from(resultClauses) var listaclausole=Array.from(resultClauses)
@ -1001,15 +1007,11 @@ $(" ."+formaClass).hover(function(idx, element) {
if (listarisultati.length){ if (listarisultati.length){
//evidenzia risultati //evidenzia risultati
for (ris of listarisultati) { for (ris of listarisultati) {
idris = '#' + ris idris = '#' + ris
$(idris).addClass("font-weight-bold mark ") $(idris).addClass("font-weight-bold mark ")
minim.contents().find(idris).addClass("font-weight-bold mark ")
} }
} }
@ -1030,7 +1032,7 @@ $(" ."+formaClass).hover(function(idx, element) {
//$('#cantica' + i).after(spanbadgecantica) //$('#cantica' + i).after(spanbadgecantica)
} }
} }
//aggiunge badge con totale risultati nel bottone lista risultati //aggiunge badge con totale risultati nel bottone lista canti
if (totResultN>0){ if (totResultN>0){
$("#headingZero").attr('style', 'display: d-flex;') $("#headingZero").attr('style', 'display: d-flex;')
var spanbadgelista = $('<span />'); var spanbadgelista = $('<span />');
@ -1061,15 +1063,13 @@ $(" ."+formaClass).hover(function(idx, element) {
} }
} }
} }
console.log('badge end') console.log('badge end...')
/*
//aggiorna minimap //aggiorna minimap
if (currentMinimap != '') { if (currentMinimap != '') {
showMinimap() showMinimap()
} }
*/
}); });
queryExecuted = true; queryExecuted = true;
$(cantoDisplayed).attr('style', 'display: d-flex;'); $(cantoDisplayed).attr('style', 'display: d-flex;');