lettera.js 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. // Oggetto che raccoglie le info necessarie per la pagina
  2. pageInfo = {};
  3. // Inizializzazione della pagina
  4. initPage();
  5. // Def. funzione di inizializzazione
  6. async function initPage(){
  7. pageInfo = await getPageInfo();
  8. updatePage();
  9. }
  10. // Esegue le queries, restituisce un oggetto con tutte le info per completare la pagina
  11. async function getPageInfo(){
  12. var out = {};
  13. try{
  14. out.query1 = await doJsonQuery(query1, true);
  15. out.titolo = await doJsonQuery(queryTitolo, true);
  16. out.segnatura = await doJsonQuery(querySegnatura, true);
  17. out.areaLinguistica = await doJsonQuery(queryAreaLinguistica, true);
  18. out.descrizione = await doJsonQuery(queryDescrizione, true);
  19. out.testo = await doJsonQuery(queryTestoLemmatizzato, true);
  20. out.edizione = await doJsonQuery(queryEdizione, true);
  21. out.toponimi = await doJsonQuery(queryToponimi);
  22. out.antroponimi = await doJsonQuery(queryAntroponimi);
  23. // out.tipo = await doJsonQuery(queryTipo);
  24. // out.siglaOVI = await doJsonQuery(querySiglaOVI);
  25. // out.raccolta = await doJsonQuery(queryRaccolta);
  26. } catch(err){
  27. console.log(err);
  28. }
  29. console.log('out', out)
  30. return out;
  31. }
  32. // Aggiorna la pagina usando l'oggetto-info passato come parametro
  33. function updatePage(){
  34. if(pageInfo.titolo) document.getElementById("title").innerHTML = pageInfo.titolo.titolo.value;
  35. if(pageInfo.query1) document.getElementById("mittente_id").innerHTML = pageInfo.query1.mittente.value;
  36. if(pageInfo.query1) document.getElementById("destinatario_id").innerHTML = pageInfo.query1.destinatario.value;
  37. if(pageInfo.query1) document.getElementById("luogo_partenza_id").innerHTML = pageInfo.query1.luogo_partenza.value;
  38. if(pageInfo.query1) document.getElementById("luogo_arrivo_id").innerHTML = pageInfo.query1.luogo_arrivo.value;
  39. if(pageInfo.query1) document.getElementById("data_partenza_id").innerHTML = pageInfo.query1.data_partenza.value;
  40. if(pageInfo.query1) document.getElementById("data_arrivo_id").innerHTML = pageInfo.query1.data_arrivo.value;
  41. if(pageInfo.descrizione) document.getElementById("descrizione_id").innerHTML = pageInfo.descrizione.descrizione.value;
  42. if(pageInfo.areaLinguistica) document.getElementById("lingua_id").innerHTML = pageInfo.areaLinguistica.lingua.value;
  43. if(pageInfo.areaLinguistica) document.getElementById("area_linguistica_id").innerHTML = pageInfo.areaLinguistica.area_linguistica.value;
  44. if(pageInfo.segnatura) document.getElementById("segnatura_id").innerHTML = pageInfo.segnatura.segnatura_OVI.value;
  45. if(pageInfo.edizione) document.getElementById("edizione_id").innerHTML = pageInfo.edizione.edizione.value;
  46. if(pageInfo.testo) document.getElementById("trascrizione_id").innerHTML = pageInfo.testo.testo_lemmatizzato.value;
  47. //
  48. if(pageInfo.antroponimi && queryOutput.antroponimi.length){
  49. const listaAntroponimi = queryOutput.antroponimi.map(elem => elem.antroponimo.value);
  50. document.getElementById("antroponimi").innerHTML = formatListAsLi(listaAntroponimi);
  51. }
  52. if(pageInfo.toponimi && queryOutput.toponimi.length){
  53. const listaToponimi = queryOutput.toponimi.map(elem => elem.toponimo.value);
  54. document.getElementById("toponimi").innerHTML = formatListAsLi(listaToponimi);
  55. }
  56. }
  57. // Mini-utility per formattare liste
  58. function formatListAsLi(thisList){
  59. toRet = "";
  60. thisList.forEach(value => toRet += "<li>" + value + "</li>");
  61. return toRet;
  62. }