/** * */ /* necessari per il bundle: import "./jquery-global.js"; require("../node_modules/jquery-ui-dist/jquery-ui.js"); require("../node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"); */ $(document).ready(function() { $("#copiaTesto").prop("disabled", true); $("#copiaTesto").on("click", function(){ $("#risultatitesto").copy2clipboard(); }); $("#copiaQuery").prop("disabled", true); $( "#sortable0" ).sortable({ items: "> li", handle: ".handle" }); // Evento: click sul bottone di copia della query $("#copiaQuery").on("click", function(){ $('#sparqlquery').copy2clipboard(); }); // Evento: click sull'area di navigazione delle tab delle clausole $('#tab-list').on('click', function() { refreshClaList(); refreshSortables(); }); $("form #lemma_forma").on('change', function() { refreshClaList(); }); $("form #queryText").on('change', function() { refreshClaList(); }); // Evento: click sull'icona check dentro il tab della clausola $('#cla-TabContent').on('click', '.return2Query', function() { var tabFirst = $('#tab-list a:first'); refreshClaList(); tabFirst.tab('show'); }); // Evento: click sull'icona rimuovi clausola dentro il tab della clausola $('#cla-TabContent').on('click', '.removeClaInTab', function() { var tabPanelId = "#" + $(this).parent('div').parent().attr('id'); var claListItemID = "H-" + $(this).parent('div').parent().attr('id'); var tabLiId = tabPanelId + "-tab"; claListLen--; $(tabLiId).parent().remove(); $(tabPanelId).remove(); if ($("#" + claListItemID)[0]){ $("#" + claListItemID)[0].remove(); }; var tabFirst = $('#tab-list a:first'); refreshTabList(); refreshClaList(); refreshSortables(); tabFirst.tab('show'); }); // Evento: click sull'icona rimuovi clausola dentro la lista delle clausole $('#cla-TabContent').on('click', '.removeClaInList', function() { var claListItemID = $(this).closest('li').attr('id'); var tabPanelId = "#" + claListItemID.substring(2); var tabLiId = tabPanelId + "-tab"; claListLen--; $(tabLiId).parent().remove(); $(tabPanelId).remove(); $("#" + claListItemID)[0].remove(); var tabFirst = $('#tab-list a:first'); refreshTabList(); refreshClaList(); refreshSortables(); tabFirst.tab('show'); }); // Evento: click sull'icona rimuovi condizione dentro la lista delle clausole $('#sortable0').on('click', '.removeCond', function() { $(this).closest('ul').parent().remove(); condListLen--; refreshSortables(); refreshConnectWith(); if (claListLen == 0 && condListLen == 0) { $('#sortable0').html(emptyClaList); } }); // Evento: click sull'icona modifica dentro la lista delle clausole $('#cla-TabContent').on('click', '.editCla', function() { var claListItemID = $(this).closest('li').attr('id'); var tabLiId = "#" + claListItemID.substring(2) + "-tab"; var tabTarget = $('#tab-list ' + tabLiId); tabTarget.tab('show'); }); // Evento: click sulla lista di clausole nel dropbox "Aggiungi clausola di tipo:" o "aggiungi condizione logica:" $('.btn-group a').on('click', function() { var addClaN = $(this).attr('id'); switch (addClaN) { case "Grammaticale": tabID++; var clone = document.getElementById("tipogrammaticaleN").cloneNode(true); clone.setAttribute("id","cla" + tabID); clone.setAttribute("aria-labelledby","cla" + tabID + "-tab"); clone.removeAttribute("style"); $('#cla-TabContent').append(clone); // se non cambio l'id della select react non rileva l'evento onchange: $('#cla' + tabID + " #grammtypes").attr("id","grammtypes" + tabID); claListLen++; $('#tab-list').append($('')); $('#cla' + tabID + '-tab').tab('show'); break; case "Sintattico": tabID++; var clone = document.getElementById("tiposintatticoN").cloneNode(true); clone.setAttribute("id","cla" + tabID); clone.setAttribute("aria-labelledby","cla" + tabID + "-tab"); clone.removeAttribute("style"); $('#cla-TabContent').append(clone); claListLen++; $('#tab-list').append($('')); $('#cla' + tabID + '-tab').tab('show'); break; case "Metafore": tabID++; $('#cla-TabContent').append($('
' + iconCheckAndClose + '
Clausola Metafore - non ancora implementata
')); claListLen++; $('#tab-list').append($('')); $('#cla' + tabID + '-tab').tab('show'); break; case "Dialoghi": tabID++; $('#cla-TabContent').append($('
' + iconCheckAndClose + '
Clausola Dialoghi - non ancora implementata
')); claListLen++; $('#tab-list').append($('')); $('#cla' + tabID + '-tab').tab('show'); break; case "Struttura": tabID++; $('#cla-TabContent').append($('
' + iconCheckAndClose + '
Clausola Struttura testo - non ancora implementata
')); claListLen++; $('#tab-list').append($('')); $('#cla' + tabID + '-tab').tab('show'); break; case "andCond": condListLen++; var LItext = condLIpart1 + condListLen + condLIpart2and + condListLen + condLIpart3and + condListLen + condLIpart4; if ($("#H-cla0")[0]) { $("#H-cla0")[0].remove(); }; $("#sortable0").append(LItext); $("#sortable" + condListLen).sortable(); $("#sortable" + condListLen).sortable( "option", "appendTo", document.body ); $("#sortable" + condListLen).sortable({ items: "> li", handle: ".handle", opacity: 0.6, cursor: 'move', update: function() {refreshSortables();} }); refreshConnectWith(); break; case "orCond": condListLen++; var LItext = condLIpart1 + condListLen + condLIpart2or + condListLen + condLIpart3or + condListLen + condLIpart4; if ($("#H-cla0")[0]) { $("#H-cla0")[0].remove(); }; $("#sortable0").append(LItext); $("#sortable" + condListLen).sortable(); $("#sortable" + condListLen).sortable( "option", "appendTo", document.body ); $("#sortable" + condListLen).sortable({ items: "> li", handle: ".handle", opacity: 0.6, cursor: 'move', update: function() {refreshSortables();} }); refreshConnectWith(); break; default: }; }); // Evento: clausola spostata nella lista principale $('#sortable0').sortable({ opacity: 0.6, cursor: 'move', update: function() { refreshSortables(); } }); // Evento: click sul checkbox di attivazione delle clausole $('#cla-TabContent').on('click', '.claAct', function() { var claListItemID = $(this).closest('li').attr('id'); var tabPanelId = "#" + claListItemID.substring(2); if ($(this).prop('checked')) { $(tabPanelId).attr("data-claActive", 1); $(this).closest('li').find('.clatext').fadeTo( "slow", 1 ); } else { $(tabPanelId).attr("data-claActive", 0); $(this).closest('li').find('.clatext').fadeTo( "slow", 0.6 ); } refreshSortables(); }); // Evento: click sull'icona di refresh dei radio button $('#cla-TabContent').on('click', '.radioRefresh', function() { fSet = $(this).siblings('fieldset'); if (fSet.find(":checked").length) { radioChecked = fSet.find(":checked")[0]; radioChecked.checked = false; }; }); // Evento: click sull'icona di save local $('#cla-TabContent').on('click', 'ion-icon[name="save-outline"]', function() { var fileA = document.createElement("a"); fileA.href = window.URL.createObjectURL(new Blob([JSON.stringify(queryJson)], {type: "text/plain;charset=utf-8"})); fileA.download = "LiDaQuery.txt"; fileA.click(); fileA.remove(); }); // Evento: click sull'icona di load local $('#cla-TabContent').on('click', 'ion-icon[name="folder-open-outline"]', function() { $('#apriFile').click(); }); $("#apriFile").on('change', function() { var file = $(this).prop('files')[0]; //console.log(file); var reader = new FileReader(); reader.onload = function(data){ queryJson = JSON.parse(data.target.result) console.log(queryJson); $("#sparqlquery").val(data.target.result); }; if (file) {reader.readAsText(file);} }); // Evento: SCELTA CATEGORIA GRAMMATICALE $('#cla-TabContent').on('change', 'select.catgram', function(e) { e.preventDefault(); var tabPaneId = ($(this).closest('.tab-pane').attr("id")); var dettagliBox = $(this).parent().parent().siblings(".dettaglifiltri"); dettagliBox.html(""); var containerid = 'dettaglio_' + $(this).parent().parent().parent().attr("id") if (Object.keys(categorie).includes($(this).val())) { var filtro = categorie[$(this).val()] var keys = Object.keys(categorieJson[filtro]) for (var key in keys) { var vals = categorieJson[filtro][keys[key]] switch (vals.length) { case 2: var element = $('
'); element.attr('class', ' d-flex flex-nowrap pr-2 mb-1 col-8 form-group form-control justify-content-between'); var rbfieldset = $('
'); var flexdiv1 = $('
'); var flexdiv2 = $('
'); var input1 = $(''); var input2 = $(''); var label1 = $('
'; var condLIplaceholderText1 = 'Trascina qui almeno 1 clausola o condizione'; var condLIplaceholderText2 = 'Trascina qui almeno 2 clausole o condizioni'; var condLIplaceholderText1d = 'Trascina qui almeno 1 clausola o condizione, oppure attiva le clausole inattive'; var condLIplaceholderText2d = 'Trascina qui almeno 2 clausole o condizioni, oppure attiva le clausole inattive'; var condLIplaceholderPart1 = '
  • '; var condLIpart1 = '