gestione lista dei risultati

This commit is contained in:
cesare 2023-03-16 17:10:26 +01:00
parent 6d15949f95
commit 1a08ecd6a9
1 changed files with 35 additions and 7 deletions

View File

@ -445,6 +445,7 @@ $(" ."+formaClass).hover(function(idx, element) {
$(cantoDisplayed).css("display", "none"); $(cantoDisplayed).css("display", "none");
//visualizzo //visualizzo
$("#vistaFrasi").attr('style', 'display: d-flex;'); $("#vistaFrasi").attr('style', 'display: d-flex;');
cantoDisplayed="#vistaFrasi";
} }
//listarisultati.sort(function(a, b){return a - b}); //listarisultati.sort(function(a, b){return a - b});
showFrasi (start, offset) showFrasi (start, offset)
@ -473,6 +474,29 @@ $(" ."+formaClass).hover(function(idx, element) {
return (numeroRisultati) return (numeroRisultati)
} }
function getResInPage(startcont, endcont){
var res = [];
var ultimaPosizione = -1;
var contaContesti=0
for (risultato of listarisultati){
if (risultato <= parseInt(ultimaPosizione)){
continue;
}
contaContesti=contaContesti+1;
if (contaContesti >= startcont && contaContesti < endcont){
res.push(risultato)
}
if (contaContesti > endcont)
break;
var versiContesto= getFormaContext(risultato, contextLength);
var ultimaForma=versiContesto.slice(-1)
ultimaPosizione=ultimaForma[0].posizione
}
//ordino la lista dei risultati
res.sort(function(a, b){return a - b});
return (res)
}
function showFrasi (start, offset = showOffset) { function showFrasi (start, offset = showOffset) {
var canto, numeroCantica; var canto, numeroCantica;
var divVerso; var divVerso;
@ -483,8 +507,11 @@ $(" ."+formaClass).hover(function(idx, element) {
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)
for (let i=start; i<intsup; i++){ var resincontext=getResInPage(start, start+offset)
risultato = listarisultati[i]; //for (let i=start; i<intsup; i++){
for (let i=0; i<resincontext.length; i++){
//risultato = listarisultati[i];
risultato = resincontext[i];
numeroRisultato++; numeroRisultato++;
risultato = parseInt(risultato) risultato = parseInt(risultato)
if (risultato <= parseInt(ultimaPosizione)){ if (risultato <= parseInt(ultimaPosizione)){
@ -527,10 +554,10 @@ $(" ."+formaClass).hover(function(idx, element) {
var comandi = $('<div />') var comandi = $('<div />')
comandi.attr('id',"comandiFrase"+numeroRisultato) comandi.attr('id',"comandiFrase"+numeroRisultato)
comandi.attr('class', 'comandi col flex-nowrap d-sm-inline justify-content-between pl-1 pb-2 ml-2 mb-2 border-bottom'); comandi.attr('class', 'comandi col flex-nowrap d-inline justify-content-between pl-1 pb-2 ml-2 mb-2 border-bottom');
var comandiGrp = $('<div />') var comandiGrp = $('<div />')
comandiGrp.attr('class', 'btn-group flex-nowrap d-sm-inline pr-3 mt-1 mr-3 align-text-bottom'); comandiGrp.attr('class', 'btn-group flex-nowrap d-inline pr-3 mt-1 mr-3 align-text-bottom');
comandiGrp.attr('role',"group") comandiGrp.attr('role',"group")
var spanBadgeExpand = $('<button />'); var spanBadgeExpand = $('<button />');
@ -554,7 +581,7 @@ $(" ."+formaClass).hover(function(idx, element) {
var citazioneDiv = $('<div />') var citazioneDiv = $('<div />')
citazioneDiv.attr('class', ' text-right flex-nowrap d-sm-inline ml-3 px-3 py-0'); citazioneDiv.attr('class', ' text-right flex-nowrap d-inline ml-3 px-3 py-0');
var citazione = $('<span />') var citazione = $('<span />')
citazione.append("["+getCantica(numeroCantica)+", Canto "+getRoman(canto)+"]") citazione.append("["+getCantica(numeroCantica)+", Canto "+getRoman(canto)+"]")
citazione.attr('class', ' pl-3 citazioneFrase align-text-top'); citazione.attr('class', ' pl-3 citazioneFrase align-text-top');
@ -647,7 +674,8 @@ $(" ."+formaClass).hover(function(idx, element) {
addFormaListenersInCanto(); addFormaListenersInCanto();
//se
//se si sta arrivando al canto da un link della lista risultati
const callerid=$(this).attr('id'); const callerid=$(this).attr('id');
if (callerid!=null && callerid.startsWith(idCitazione)){ if (callerid!=null && callerid.startsWith(idCitazione)){
const mypos=callerid.split('_')[2] const mypos=callerid.split('_')[2]
@ -1209,7 +1237,7 @@ function resetFrasi(){
var divcanto = $('<div />') var divcanto = $('<div />')
var titolocanto = $('<h4 class="titolo-canto pb-2" />') var titolocanto = $('<h4 class="titolo-canto pb-2" />')
titolocanto.append(cantica + ", " + cantoRomano) titolocanto.append(cantica + ", " + cantoRomano)
divcanto.attr('class', 'canto') divcanto.attr('class', 'canto pt-3')
divcanto.css("display", "none") divcanto.css("display", "none")
divcanto.attr('id', (cantica + canto).replace(" ", "_")) divcanto.attr('id', (cantica + canto).replace(" ", "_"))