');
@@ -1537,17 +1563,34 @@ $(document).ready(function() {
*/
var unitaRicerca = 'forma'
- function manageQuery() {
+
+ async function manageQuery() {
cleanSearchResult()
+ isSearchRiferimenti = false;
//var esprlogica = []
var jsonQuery = getJsonQuery()
+ // $("#paginaLista option").remove();
+ // $('#paginaLista').append(`
`);
+
+ showingComments = false;
+ if (filterBottonAdded) {
+ $(".filterRiferimentiOn").css('display', 'none');
+ $(".filterRiferimentiOff").css('display', 'none');
+ const emptyNoteList = '
Nessun commento visualizzato
';
+ $('#displaynote').empty()
+ $('#displaynote').append($(emptyNoteList))
+ }
+
+
if (jsonQuery['QueryAvanzata'] == 0)
unitaRicerca = 'forma'
else
unitaRicerca = jsonQuery['unitaRicerca']
if (unitaRicerca == 'riferimenti') {
- listaRisultatiCommenti = queryRiferimenti(jsonQuery.Riferimento100, cantoDisplayed)
+ isSearchRiferimenti = true;
+ listaRisultatiCommenti = await queryRiferimenti(jsonQuery.Riferimento100, cantoDisplayed)
+ showRisultatiCommenti(listaRisultatiCommenti)
return
}
console.log("got json query, unita ricerca: " + unitaRicerca)
@@ -1616,6 +1659,134 @@ $(document).ready(function() {
executeQuerySearch(myquery)
}
+ function showRisultatiCommenti(listaRisultatiCommenti) {
+
+ if (cantoDisplayed != '#vistaFrasi') {
+ prevCantoDisplayed = cantoDisplayed;
+ $(cantoDisplayed).css("display", "none");
+ //visualizzo
+ $("#vistaFrasi").attr('style', 'display: d-flex;');
+ cantoDisplayed = "#vistaFrasi";
+ }
+ var listIcon = '
';
+ if (listaRisultatiCommenti.length > 0) {
+ $("#headingZero").closest('.card').attr('style', 'display: d-flex;')
+ var spanbadgelista = $('
');
+ spanbadgelista.attr('class', 'badge badge-warning badge-pill mx-2 ');
+ spanbadgelista.append(listaRisultatiCommenti.length + listIcon)
+ spanbadgelista.appendTo($('#cantica0-badge'))
+ //countResultContexts()
+ numeroContesti = listaRisultatiCommenti.length;
+ $("#loader").fadeOut(300);
+ $("#cantica0").trigger("click");
+ }else{
+ return;
+ }
+ if (!filterBottonAdded) {
+ var cardRiferimenti = $("#tabRiferimenti")
+ var filterButton = $('
');
+ filterButton.attr('id', 'filterRiferimentiOn')
+ filterButton.attr('class', 'btn btn-sm btn-outline-primary filterRiferimentiOn showcomments border-0 rounded text-primary px-1 pt-1 pb-0 ml-1');
+ //var filterIcon = '
';
+ var filterIcon = '

'
+ var filterIcon1 = '

'
+ //var filterIcon1 = '
';
+ var filterButton1 = $('
');
+ filterButton1.attr('id', 'filterRiferimentiOff')
+ filterButton1.attr('class', 'btn btn-sm btn-outline-primary filterRiferimentiOff showcomments border-0 rounded text-primary px-1 pt-1 pb-0 ml-1');
+ filterButton1.append(filterIcon1)
+ filterButton1.css('display', 'none');
+ filterButton.css('display', 'none');
+
+ filterButton.append(filterIcon)
+ filterButton.appendTo(cardRiferimenti)
+ filterButton1.appendTo(cardRiferimenti)
+ filterBottonAdded = true;
+ }
+
+ const emptyNoteList = '
Nessun commento visualizzato
';
+ $('#displaynote').empty()
+ $('#displaynote').append($(emptyNoteList))
+ }
+
+ manageRisultatoCommmenti = function(start, offset = showOffset) {
+ var commentoRisultato = [];
+ var cantica;
+ var canto;
+ var verso;
+ var idFrase = 0;
+ var cid;
+ var numCantica;
+ var ultimoVersoPrecedente;
+ elencoRiferimenti = $("#vistaFrasi");
+ elencoRiferimenti.empty();
+
+ if (cantoDisplayed != '#vistaFrasi') {
+ prevCantoDisplayed = cantoDisplayed;
+ $(cantoDisplayed).css("display", "none");
+ //visualizzo
+ $("#vistaFrasi").attr('style', 'display: d-flex;');
+ cantoDisplayed = "#vistaFrasi";
+ }
+
+ for (var j = start; j < start+offset; j++) {
+ commentoRisultato = listaRisultatiCommenti[j].split("_")
+ var listaVersi = $('
')
+ idFrase++;
+ listaVersi.attr('id', "Frase" + idFrase);
+ var versiFrase = $('
')
+ versiFrase.attr('id', "versiFrase" + idFrase);
+ cantica = commentoRisultato[0];
+ canto = commentoRisultato[2];
+
+ cid = cantica + "Canto_" + canto
+ switch (cantica) {
+ case "Inferno":
+ numCantica = 1;
+ break;
+ case "Purgatorio":
+ numCantica = 2;
+ break;
+ case "Paradiso":
+ numCantica = 3
+ break;
+ }
+ if (!(loadedCanti.has(cid))) {
+ showCanto(formeprima, numCantica, canto)
+ loadedCanti.add(cid)
+ }
+
+ verso = Number(commentoRisultato[3]);
+ if (verso <= ultimoVersoPrecedente) {
+ $("#" + cantica + '_Canto_' + canto + '_' + verso).addClass("mark ")
+ continue;
+ }
+ $("#" + cantica + '_Canto_' + canto + '_' + verso).addClass("mark ")
+
+ for (var num = 0; num
')
+ var citazione = $('
')
+
+ citazione.append("[" + cantica + ", Canto " + getRoman(canto) + "]")
+ citazione.attr('name', cantica + "Canto " + canto);
+ citazione.attr('id', idCitazione + '_' + numCantica + '_' + (verso-versiPerGruppo));
+ citazione.appendTo(citazioneDiv);
+ citazioneDiv.appendTo(elencoRiferimenti)
+
+ }
+ showingComments = true;
+
+ return verso;
+ }
function executeLocalSearch(testo, forme, limit, cantica, cont, resultsInCantica, resultsInCanto) {
for (var ip = 0; ip <= limit; ip++) {
@@ -1668,6 +1839,8 @@ $(document).ready(function() {
var elverso, formaItem, currSentenceId;
var ultimaFormaCanto;
let numeroPeriodo = 1;
+ showingComments = false;
+
formecantica.map(function(item) {
formaItem = item.split("_");
var sentenceid = idcantica + "_" + formaItem[1] + "_s_" + formaItem[5]
diff --git a/js/dataMgr_5.0.js b/js/dataMgr_5.0.js
index e48cf0d..03925ea 100644
--- a/js/dataMgr_5.0.js
+++ b/js/dataMgr_5.0.js
@@ -142,7 +142,7 @@ export async function getVersiConCitazioni(canticapar = '', cantopar = '') {
var result4 = table.toArray().map((row) => row.toJSON());
- console.log(result4)
+
await tconn.close();
return result4
@@ -234,48 +234,25 @@ export async function queryRiferimenti(filtro, cid) {
var resxcantica = Object.groupBy(result4, ({ Cantica }) => Cantica);
var resKeys = Object.keys(resxcantica);
- for (let key = 0; key < resKeys.length; key++) {
-
- switch(resKeys[key]){
- case "Inferno": resxcantica.Inferno.sort(function(a, b) {
- var valA = a.Verso.split('-')[0]
- var valB = b.Verso.split('-')[0]
- return a.Canto.localeCompare(b.Canto) || Number(valA) - Number(valB);
- });
- break;
- case "Purgatorio": resxcantica.Purgatorio.sort(function(a, b) {
- var valA = a.Verso.split('-')[0]
- var valB = b.Verso.split('-')[0]
- return a.Canto.localeCompare(b.Canto) || Number(valA) - Number(valB);
- });
- break;
- case "Paradiso": resxcantica.Paradiso.sort(function(a, b) {
- var valA = a.Verso.split('-')[0]
- var valB = b.Verso.split('-')[0]
- return a.Canto.localeCompare(b.Canto) || Number(valA) - Number(valB);
- });
- break;
- }
- }
-
listaidversi = []
- var arrayIdx = 0;
+ //var tuttiVersiInferno = []
+ var tuttiVersiPurgatorio= []
+ var tuttiVersiParadiso = []
+
if (resKeys.includes("Inferno")){
- listaidversi[arrayIdx] = resxcantica.Inferno;
- arrayIdx++;
+ sortRiferimenti(resxcantica.Inferno,listaidversi)
}
if (resKeys.includes("Purgatorio")){
- listaidversi[arrayIdx] = resxcantica.Purgatorio;
- arrayIdx++;
+ sortRiferimenti(resxcantica.Purgatorio,tuttiVersiPurgatorio)
+ listaidversi = listaidversi.concat(tuttiVersiPurgatorio)
}
if (resKeys.includes("Paradiso")){
- listaidversi[arrayIdx] = resxcantica.Paradiso;
- arrayIdx++;
+ sortRiferimenti(resxcantica.Paradiso,tuttiVersiParadiso)
+ listaidversi = listaidversi.concat(tuttiVersiParadiso)
}
- var numcid = cid.split('_')[1]
for (var cantica in resxcantica) {
var $nctags = $(' .navig-canto')
@@ -304,28 +281,10 @@ export async function queryRiferimenti(filtro, cid) {
}
spanbadge.appendTo($nctags.filter('[name="' + cantica + 'Canto ' + canto + '"]'))
for (const tmpvi of tmpv) {
- var myveid = '#' + cantica + '_Canto_' + canto + '_' + tmpvi.Verso.split('-')[0]
-
- console.log(myveid)
- listaidversi.push(myveid)
listaidcommenti.push(tmpvi.IdRiferimento)
- if (cid.includes(cantica) && numcid == canto){
- var multiButton = $('
');
- multiButton.attr('id','CommentoQuery_'+ i + '_' + canto + '_' + tmpvi.Verso.split('-')[0])
- multiButton.attr('class', 'btn btn-sm btn-outline-primary showcomments bg-light border-0 rounded text-primary px-1 pt-1 pb-0 ml-1');
- var commentIcon = '
';
- multiButton.append (commentIcon)
- var idButton = null;
- idButton = $('#'+ 'CommentoQuery_'+ i + '_' + canto + '_' + tmpvi.Verso.split('-')[0]);
- if (idButton [0] == null){
- $(myveid).append(multiButton);
- }
- $(myveid).addClass("mark ") // Nik Riferimenti
-
- }
}
-
}
+
drawMinimap(cid, true)
}
@@ -333,7 +292,33 @@ export async function queryRiferimenti(filtro, cid) {
return listaidversi
}
-
+function sortRiferimenti(canticaArray,arrayValues){
+ var versi = []
+ var cantica;
+ var canto;
+ for (var j = 0; j < canticaArray.length; j++) {
+ versi = canticaArray[j].Verso.split("-")
+ cantica = canticaArray[j].Cantica
+ canto = canticaArray[j].Canto
+ if (canto.startsWith('0')) {
+ canto = canto.replace('0', '')
+ }
+ arrayValues.push(cantica + '_Canto_' + canto + '_' + versi[0])
+ }
+ arrayValues.sort(function(a, b) {
+ var versoA = a.split('_')
+ var versoB = b.split('_')
+ var cantoA = Number(versoA[2]);
+ var cantoB = Number(versoB[2])
+ versoA = versoA[3];
+ versoB = versoB[3];
+ if (cantoA == cantoB){
+ return (versoA - versoB)
+ }else{
+ return (cantoA - cantoB)
+ }
+ });
+}
function opzioniRiferimenti() {
$.each(rif_commentatori, function(i, p) {
if (!!p && p.length > 2) {
diff --git a/js/script_5.0.js b/js/script_5.0.js
index 668f3d5..5419fc1 100644
--- a/js/script_5.0.js
+++ b/js/script_5.0.js
@@ -3,7 +3,7 @@
*/
-import {numeroContesti, resetResult, showOffset} from './browseMgr_5.0.js'
+import {numeroContesti, resetResult, isSearchRiferimenti, manageRisultatoCommmenti, showOffset} from './browseMgr_5.0.js'
import { resetGraphStr } from './syntgraph_5.0.js';
import { getAutoriFontiCitazioniS, getCommentatoriS, getAreeTematicheS, getFontiS} from './dataMgr_5.0.js';
@@ -716,8 +716,7 @@ $(document).ready(function() {
var nRisultatiPerPag = 30;//showOffset;
// Fine variabili
-
-
+
getJsonQuery = function(){
return queryJson;
};
@@ -1636,6 +1635,7 @@ $(document).ready(function() {
};
function managePage() {
+
if (currPage == 0){
numeroPagine = Math.ceil(numeroContesti/nRisultatiPerPag);
$("#paginaLista option").remove();
@@ -1668,7 +1668,13 @@ $(document).ready(function() {
}
};
};
- $.manageResultList((currPage-1)*nRisultatiPerPag, nRisultatiPerPag);
+ if (isSearchRiferimenti) {
+ manageRisultatoCommmenti((currPage - 1) * nRisultatiPerPag, nRisultatiPerPag)
+
+ } else {
+ $.manageResultList((currPage - 1) * nRisultatiPerPag, nRisultatiPerPag);
+
+ }
if (latestPhraseId != "") {
document.getElementById(latestPhraseId).scrollIntoView({
behavior: "smooth",