Scrittura dei filtri, in progress

This commit is contained in:
cesare 2022-05-19 12:52:40 +02:00
parent 70cefa3d7d
commit bfc6f1bde0
2 changed files with 54 additions and 66 deletions

View File

@ -101,7 +101,7 @@
<!-- form -->
<form id='myform' onsubmit="return false">
<form id='filterform' onsubmit="return false">
<div class="flex flex-column" id='query'>
<div class="flex flex-wrap" id='condizioni'>
@ -965,11 +965,11 @@
<div class="flex items-center mb2">
<input class="mr2 f6" type="radio" id="singolare" value="singolare"
name="tra"> <label for=" singolare" class="lh-copy">Singolare</label>
name="num"> <label for=" singolare" class="lh-copy">Singolare</label>
</div>
<div class="flex items-center mb2">
<input class="mr2 f6" type="radio" id="plurale" value="plurale"
name="tra"> <label for="plurale" class="lh-copy">Plurale</label>
name="num"> <label for="plurale" class="lh-copy">Plurale</label>
</div>
</fieldset>
</div>
@ -982,13 +982,13 @@
<div class="flex items-center mb2">
<input class="mr2 f6" type="radio" id="lemmafemminile"
value="lemmafemminile" name="tra"> <label
value="lemmafemminile" name="gel"> <label
for="lemmafemminile" class="lh-copy">Lemma di genere
femminile</label>
</div>
<div class="flex items-center mb2">
<input class="mr2 f6" type="radio" id="lemmamaschile"
value="lemmamaschile" name="tra"> <label
value="lemmamaschile" name="gel"> <label
for="lemmamaschile" class="lh-copy">Lemma di genere
maschile</label>
</div>
@ -1000,13 +1000,13 @@
<div class="flex items-center mb2">
<input class="mr2 f6" type="radio" id="formafemminile"
value="formafemminile" name="tra"> <label
value="formafemminile" name="gef"> <label
for="formafemminile" class="lh-copy">Forma di genere
femminile</label>
</div>
<div class="flex items-center mb2">
<input class="mr2 f6" type="radio" id="formamaschile"
value="formamaschile" name="tra"> <label
value="formamaschile" name="gef"> <label
for="formamaschile" class="lh-copy">Forma di genere
maschile</label>
</div>
@ -1035,9 +1035,9 @@
name="declinazionesostantivo" onchange=""
title="Declinazione sotantivo">
<option value="">Tutte le declinazioni</option>
<option value="ag">Prima</option>
<option value="sm">Seconda</option>
<option value="sf">Terza</option>
<option value="dsg">Prima</option>
<option value="dss">Seconda</option>
<option value="dst">Terza</option>
</select>
</div>
@ -1051,6 +1051,7 @@
<!-- CATEGORIA VERBO -->
<div style="display: none;" id='categoriaverbo'>
<div class=" w-15 pa1 mr2">
<div class="fl w-100 w-40-ns ">
<fieldset id="diatesi" class="bn">
@ -1094,11 +1095,11 @@
<div class="flex items-center mb2">
<input class="mr2 f6" type="radio" id="femminile" value="femminile"
name="tra"> <label for="femminile" class="lh-copy">Femminile</label>
name="gen"> <label for="femminile" class="lh-copy">Femminile</label>
</div>
<div class="flex items-center mb2">
<input class="mr2 f6" type="radio" id="maschile" value="maschile"
name="tra"> <label for="maschile" class="lh-copy">Maschile</label>
name="gen"> <label for="maschile" class="lh-copy">Maschile</label>
</div>
</fieldset>
</div>
@ -1107,11 +1108,11 @@
<div class="flex items-center mb2">
<input class="mr2 f6" type="radio" id="singolare" value="singolare"
name="tra"> <label for="" singolare"" class="lh-copy">Singolare</label>
name="num"> <label for="" singolare"" class="lh-copy">Singolare</label>
</div>
<div class="flex items-center mb2">
<input class="mr2 f6" type="radio" id="plurale" value="plurale"
name="tra"> <label for="plurale" class="lh-copy">Plurale</label>
name="num"> <label for="plurale" class="lh-copy">Plurale</label>
</div>
</fieldset>
</div>
@ -1120,12 +1121,12 @@
<fieldset id="riflpers" class="bn">
<div class="flex items-center mb2">
<input class="mr2" type="checkbox" id="impersonale"
value="impersonale"> <label for="impersonale"
value="impersonale" name="personale"> <label for="impersonale"
class="lh-copy">Impersonale</label>
</div>
<div class="flex items-center mb2">
<input class="mr2" type="checkbox" id="riflessivo"
value="riflessivo"> <label for="riflessivo"
value="riflessivo" name="riflessivo"> <label for="riflessivo"
class="lh-copy">Riflessivo</label>
</div>
</fieldset>
@ -1181,7 +1182,7 @@
<div class=" w-15 pa2">
<select id="persona"
class="w-100 db h2 f6 bg-near-white ba b--sliver gray"
name="categoria" onchange="" title="Macro categoria">
name="persona" onchange="" title="Macro categoria">
<option value="">Qualsiasi persona</option>
<option value="s1">1ª singolare</option>
@ -1207,9 +1208,9 @@
class="w-100 db h2 f6 bg-near-white ba b--sliver gray"
name="declinazione" onchange="" title="Declinazione">
<option value="">Tutte le declinazioni</option>
<option value="ag">Prima</option>
<option value="sm">Seconda</option>
<option value="sf">Terza</option>
<option value="prd">Prima</option>
<option value="sed">Seconda</option>
<option value="ted">Terza</option>
</select>
</div>

View File

@ -15,13 +15,13 @@ $(document).ready(function() {
"Classe": ["1ª", "2ª"],
"Genere": ["Femminile", "Maschile"],
"Numero": ["Singolare", "Plurale"],
"Con oggetto indiretto": ["Con ogg.Indiretto"],
"Tipo": ["Qualificativo", "Indefinito", "Interrogativo", "Esclamativo", "Numerale", "Dimostrativo", "Relativo", "Possessivo", "In locuzione"],
"Grado": ["Comparativo di maggioranza", "Comparativo di minoranza", "Comparativo di uguaglianza", "Superlativo relativo", "Superlativo assoluto"],
"Tipo di Complemento": ["Introdotto da A", "Introdotto da CON", "Introdotto da CONTRO", "Introdotto da DA", "Introdotto da DI", "Introdotto da IN",
"Con oggetto indiretto": ["Con oggetto indiretto"],
"Tipo aggettivo": ["Tipo aggettivo","Qualificativo", "Indefinito", "Interrogativo", "Esclamativo", "Numerale", "Dimostrativo", "Relativo", "Possessivo", "In locuzione"],
"Grado": ["Grado", "Comparativo di maggioranza", "Comparativo di minoranza", "Comparativo di uguaglianza", "Superlativo relativo", "Superlativo assoluto"],
"Tipo di Complemento": ["Tipo di Complemento", "Introdotto da A", "Introdotto da CON", "Introdotto da CONTRO", "Introdotto da DA", "Introdotto da DI", "Introdotto da IN",
"Introdotto da PER", "Introdotto da SU", "Introdotto da TRA", "Introdotto da VERSO", "Introdotto da SOPRA",
"Introdotto da SOTTO", "Introdotto da DINANZI", "Introdotto da prep.", "Oggetto ind.", "Ogg. indi. + compl. con DI", "Ogg. ind. pronom."],
"Tipo di frase": ["Con infinito retto da A", "Con infinito retto da DA", "Con infinito retto da DI", "Con infinito retto da PER",
"Tipo di frase": ["Tipo di frase", "Con infinito retto da A", "Con infinito retto da DA", "Con infinito retto da DI", "Con infinito retto da PER",
"Con infinito retto da SE", "Con subordinata all'indic.", "Con subordinata al cong.", "In locuzione imp.+infinito",
"In locuzione imp.+che+indic.", "In locuzione imp.+che+cong.", "In locuzione imp.+se+indic.", "In locuzione imp.+se+cong.",
"In locuzione imp.+come+indic.", "In locuzione imp.+quando+indic.", "In locuzione imp.+perché+cong.", "In locuzione imp.+a+infinito"]
@ -33,12 +33,12 @@ $(document).ready(function() {
"Classe/Persona": ["1ª", "2ª", "3ª"],
"Genere": ["Femminile", "Maschile"],
"Numero": ["Singolare", "Plurale"],
"Tipo": ["Personale", "Riflessivo", "Interrogativo", "Esclamativo", "Dimostrativo", "Relativo", "Possessivo"],
"Tipo": ["Tipo", "Personale", "Riflessivo", "Interrogativo", "Esclamativo", "Dimostrativo", "Relativo", "Possessivo"],
"Forma (Personali/Riflessivi)": ["Libero", "Libero in Composizione", "Proclitico", "Enclitico"],
"Funzione (Personali)": ["Libero - soggetto", "Libero - soggetto impersonale", "Libero - complemento", "Libero - rafforzativo",
"Forma (Personali/Riflessivi)": ["Forma (Personali/Riflessivi)", "Libero", "Libero in Composizione", "Proclitico", "Enclitico"],
"Funzione (Personali)": ["Funzione (Personali)", "Libero - soggetto", "Libero - soggetto impersonale", "Libero - complemento", "Libero - rafforzativo",
"Clitico - accusativo", "Clitico - dativo", "Clitico - partitivo"],
"Tipo (Riflessivi)": ["Proprio", "Lessicalizzato", "Impersonale", "Passivo", "Reciproco"]
"Tipo (Riflessivi)": ["Tipo (Riflessivi)","Proprio", "Lessicalizzato", "Impersonale", "Passivo", "Reciproco"]
}
}
var articoloJson = {
@ -54,7 +54,7 @@ $(document).ready(function() {
var avverbioJson = {
"filtriavverbio": {
"Tipo": ["Al comparativo di maggioranza", "Al comparativo di minoranza",
"Tipo": ["Tipo", "Al comparativo di maggioranza", "Al comparativo di minoranza",
"Al superlativo assoluto", "Al superlativo relativo",
"In Locuzione", "In Locuzione separato", "Proclitico", "Enclitico"]
@ -65,16 +65,16 @@ $(document).ready(function() {
var preposizioneJson = {
"filtripreposizione": {
"Tipo I": ["Propria", "Impropria"],
"Tipo II": ["Semplice", "Articolata", "In locuzione", "In locuzione separata"],
"Sintassi": ["Soggettiva", "Oggettiva", "Dichiarativa", "Completiva obliqua", "Finale",
"Tipo preposizione": ["Tipo preposizione", "Semplice", "Articolata", "In locuzione", "In locuzione separata"],
"Sintassi": ["Sintassi", "Soggettiva", "Oggettiva", "Dichiarativa", "Completiva obliqua", "Finale",
"Causale", "Concessiva", "Consecutiva", "Temporale", "Modale", "Eccettuativa", "Esclusiva",
"Limitativa", "Comparativa", "Avversativa"],
"Complemento (I)": ["Di stato in luogo", "Di moto a luogo", "Di moto da luogo", "Di moto per luogo",
"Complemento (I)": ["Complemento (I)", "Di stato in luogo", "Di moto a luogo", "Di moto da luogo", "Di moto per luogo",
"Di luogo", "Predicativo del soggetto", "Predicativo dell'oggetto", "Di distanza",
"Di tempo determinato", "Di tempo continuato", "Di tempo", "Di termine", "Di vantaggio",
"Di svantaggio", "Di specificazione", "Di modo", "Di mezzo", "Di compagnia",
"Di unione", "Di allontanamento/separazione", "Di materia"],
"Complemento (II)": ["di limitazione", "di qualità", "di causa", "di agente", "di causa efficiente", "di fine o scopo",
"Complemento (II)": ["Complemento (II)", "di limitazione", "di qualità", "di causa", "di agente", "di causa efficiente", "di fine o scopo",
"di paragone", "di argomento", "distributivo", "di sostituzione", "di estensione", "di rapporto",
"di esclusione", "di peso", "di quantità", "di colpa", "di denominazione", "partitivo",
"di abbondanza-privazione", "di origine-provenienza", "concessivo", "di effetto", "di pena",
@ -89,10 +89,10 @@ $(document).ready(function() {
var congiunzioneJson = {
"filtricongiunzione": {
"Tipo": ["Semplice", "Composta", "Locuzione", "Locuzione separata"],
"Tipo": ["Tipo", "Semplice", "Composta", "Locuzione", "Locuzione separata"],
"Coo./sub": ["coordinativa", "subordinativa"],
"Coord. tipo": ["copulativa", "disgiuntiva", "avversativa", "esplicativa", "conclusiva", "correlativa"],
"Subord. tipo": ["soggettiva", "oggettiva", "dichiarativa", "completiva obliqua", "interrogativa",
"Coord. tipo": ["Coord. tipo", "copulativa", "disgiuntiva", "avversativa", "esplicativa", "conclusiva", "correlativa"],
"Subord. tipo": ["Subord. tipo", "soggettiva", "oggettiva", "dichiarativa", "completiva obliqua", "interrogativa",
"finali", "causali", "concessiva", "consecutiva", "temporale", "modale",
"eccettuativa", "comparativa", "condizionale", "esclusiva", "limitativa"]
}
@ -101,12 +101,12 @@ $(document).ready(function() {
var onomasticacitazioneJson = {
"filtrionomastica": {
"Tipo": ["Nome proprio", "Nome proprio separato", "Titolo"]
"Tipo": ["Tipo", "Nome proprio", "Nome proprio separato", "Titolo"]
},
"filtricitazione": {
"Tipo": ["Latina", "Provenzale", "Francese", "Spagnola", "Ebraica", "Greca"]
"Tipo": ["Tipo", "Latina", "Provenzale", "Francese", "Spagnola", "Ebraica", "Greca"]
}
}
@ -212,8 +212,6 @@ $(document).ready(function() {
jQuery(document).delegate('select.catgram', 'change', function(e) {
e.preventDefault();
//alert(($(this).closest('div')).closest('div').attr('id'))
var pare = $(this).parents()[2];
var sbs = ($(this).closest('div')).siblings()
@ -221,11 +219,10 @@ $(document).ready(function() {
sbs.find(".add-details").attr('style', 'display.block')
sbs.find(".set-filter").attr('style', 'display.block')
//alert(pare.id)
containerid = 'dettaglio_' + pare.id;//$(this).closest('div').attr('id')
sbs.find(".add-details").attr('target', containerid)
sbs.find(".set-filter").attr('target', containerid)
//if ($('#types').find(":selected").val()=='verbovolgare'){
condizioniFiltro["Categoria Grammaticale"] = $(this).val();
if ($(this).val() == 'verbovolgare') {
@ -237,7 +234,6 @@ $(document).ready(function() {
}
if ($(this).val() == 'sostantivovolgare') {
//alert($('#types').find(":selected").val());
var content = jQuery('#categoriasostantivo >div'),
size = jQuery('#dettaglifiltri').length + 1,
element = null,
@ -249,10 +245,10 @@ $(document).ready(function() {
if (Object.keys(categorie).includes($(this).val())) {
var filtro = categorie[$(this).val()]
//var keys = Object.keys(aggettivoJson.filtri);
var keys = Object.keys(categorieJson[filtro])
for (key in keys) {
//alert(aggettivoJson.filtri[keys[key]])
var vals = categorieJson[filtro][keys[key]]
if (vals.length == 2) {
var element = $('<div />');
@ -277,8 +273,8 @@ $(document).ready(function() {
input2.attr('id', vals[1]);
input1.attr('value', vals[0]);
input2.attr('value', vals[1]);
input1.attr('name', 'tra');
input2.attr('name', 'tra');
input1.attr('name', keys[key]);
input2.attr('name', keys[key]);
label1.attr('class', 'lh-copy');
label2.attr('class', 'lh-copy');
label1.attr('for', vals[0]);
@ -313,7 +309,7 @@ $(document).ready(function() {
input1.attr('type', 'checkbox');
input1.attr('id', vals[0]);
input1.attr('value', vals[0]);
input1.attr('name', 'tra');
input1.attr('name', keys[key]);
label1.attr('class', 'lh-copy');
label1.attr('for', vals[0]);
label1.append(vals[0]);
@ -332,9 +328,10 @@ $(document).ready(function() {
if (vals.length > 2) {
var element = $('<div />');
element.attr('class', ' w-15 pa1 mr2');
var select = $('<select id="coniug" class="w-100 db h2 f6 bg-near-white ba b--sliver gray"/>')
var select = $('<select class="w-100 db h2 f6 bg-near-white ba b--sliver gray"/>')
select.attr('id', keys[key])
select.attr('title', keys[key])
select.attr('name', keys[key])
for (val in vals) {
//alert(vals[val])
var seloption = $('<option />');
@ -366,20 +363,8 @@ $(document).ready(function() {
var test = jQuery('#' + containerid)
/*if (test.val() !== undefined){
//alert (test)
var flexdivreplace = $('<div />');
flexdivreplace.attr('class', 'flex flex-wrap')
flexdivreplace.attr('id', containerid)
element.appendTo(flexdivreplace)
test.replaceWith(flexdivreplace)
}
else{*/
test.remove()
//<legend class="pa0 f5 f4-ns mb3 black-80">Sostantivo</legend>
//var legend=$('<legend class="pa0 f5 f4-ns mb3 black-80">'+$(this).val()+'</legend>');
//var fset=$('<fieldset class="cf bn ma0 pa0">')
element.appendTo('#dettaglifiltri');
@ -392,8 +377,8 @@ $(document).ready(function() {
detelement.attr('id', 'dettaglifiltri')
detelement.appendTo("#query")
//}
element.find('.sn').html(size);
//element.find('.sn').html(size);
}
@ -450,6 +435,8 @@ $(document).ready(function() {
element.attr('id', 'filtro-' + filterconditions);
element.find('.delete-written-filter').attr('target', 'filtro-' + filterconditions);
var datastring = $("#filterform").serialize();
alert(datastring);
var keys = Object.keys(condizioniFiltro)
for (key in keys) {