aggiunta filtri (in progress)
This commit is contained in:
parent
1c21f92d4b
commit
829c80eaa1
|
@ -804,7 +804,7 @@
|
||||||
|
|
||||||
<div class="flex items-center mb2">
|
<div class="flex items-center mb2">
|
||||||
<input class="mr2 f6" type="radio" id="singolare" value="singolare"
|
<input class="mr2 f6" type="radio" id="singolare" value="singolare"
|
||||||
name="tra"> <label for="" singolare"" class="lh-copy">Singolare</label>
|
name="tra"> <label for=" singolare" class="lh-copy">Singolare</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center mb2">
|
<div class="flex items-center mb2">
|
||||||
<input class="mr2 f6" type="radio" id="plurale" value="plurale"
|
<input class="mr2 f6" type="radio" id="plurale" value="plurale"
|
||||||
|
|
409
js/guimanager.js
409
js/guimanager.js
|
@ -1,123 +1,296 @@
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
$(document).ready(function() {
|
||||||
|
grammarconditions = 0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var aggettivoJson = {
|
||||||
|
"filtriaggettivo": {
|
||||||
|
"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",
|
||||||
|
"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",
|
||||||
|
"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"]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var pronomeJson = {
|
||||||
|
"filtripronome": {
|
||||||
|
"Classe/Persona": ["1ª", "2ª", "3ª"],
|
||||||
|
"Genere": ["Femminile", "Maschile"],
|
||||||
|
"Numero": ["Singolare", "Plurale"],
|
||||||
|
"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",
|
||||||
|
"Clitico - accusativo", "Clitico - dativo", "Clitico - partitivo"],
|
||||||
|
"Tipo (Riflessivi)": ["Proprio", "Lessicalizzato", "Impersonale", "Passivo", "Reciproco"]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
var articoloJson = {
|
||||||
|
|
||||||
|
"filtriarticolo": {
|
||||||
|
|
||||||
|
"Genere": ["Femminile", "Maschile"],
|
||||||
|
"Numero": ["Singolare", "Plurale"],
|
||||||
|
"Tipo": ["Determinativo", "Indeterminativo"]
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var avverbioJson = {
|
||||||
|
"filtriavverbio": {
|
||||||
|
"Tipo": ["Al comparativo di maggioranza", "Al comparativo di minoranza",
|
||||||
|
"Al superlativo assoluto", "Al superlativo relativo",
|
||||||
|
"In Locuzione", "In Locuzione separato", "Proclitico", "Enclitico"]
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
var preposizioneJson={
|
||||||
|
"filtripreposizione": {
|
||||||
|
"Tipo I":["Propria", "Impropria"],
|
||||||
|
"Tipo II":["Semplice", "Articolata", "In locuzione", "In locuzione separata"],
|
||||||
|
"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",
|
||||||
|
"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",
|
||||||
|
"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",
|
||||||
|
"simmetrico","indiretto esperiente","indiretto dativo","indiretto oggetto","indiretto possessore",
|
||||||
|
"indiretto benefattivo"]
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
$(document).ready(function(){
|
|
||||||
grammarconditions=0
|
var congiunzioneJson={
|
||||||
var aggettivoJson=null
|
"filtricongiunzione":{
|
||||||
$.getJSON("aggettivo.json", function(aggettivo){
|
|
||||||
|
"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",
|
||||||
|
"finali", "causali", "concessiva", "consecutiva", "temporale", "modale",
|
||||||
|
"eccettuativa", "comparativa", "condizionale", "esclusiva", "limitativa"]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var categorie = {
|
||||||
|
"pronomevolgare": "filtripronome",
|
||||||
|
"aggettivovolgare": "filtriaggettivo",
|
||||||
|
"articolovolgare": "filtriarticolo",
|
||||||
|
"avverbiovolgare": "filtriavverbio",
|
||||||
|
"preposizionevolgare":"filtripreposizione",
|
||||||
|
"congiunzionevolgare":"filtricongiunzione"
|
||||||
|
}
|
||||||
|
|
||||||
|
/*$.getJSON("aggettivo.json", function(aggettivo){
|
||||||
//var keys = Object.values(aggettivo.filtri["Con oggetto indiretto"]);
|
//var keys = Object.values(aggettivo.filtri["Con oggetto indiretto"]);
|
||||||
//alert(keys);
|
//alert(keys);
|
||||||
aggettivoJson=aggettivo
|
aggettivoJson=aggettivo
|
||||||
}).fail(function(){
|
}).fail(function(){
|
||||||
console.log("An error has occurred.");
|
console.log("An error has occurred.");
|
||||||
});
|
});*/
|
||||||
|
|
||||||
|
var categorieJson = $.extend({}, pronomeJson, aggettivoJson, articoloJson, avverbioJson, preposizioneJson, congiunzioneJson);
|
||||||
|
|
||||||
$('.tabs__menu-item').on('click', function() {
|
$('.tabs__menu-item').on('click', function() {
|
||||||
$(this).addClass('bg-white').addClass('red');
|
$(this).addClass('bg-white').addClass('red');
|
||||||
$(this).siblings().removeClass('bg-white').removeClass('red');
|
$(this).siblings().removeClass('bg-white').removeClass('red');
|
||||||
});
|
});
|
||||||
|
|
||||||
jQuery(document).delegate('a.add-record', 'click', function(e) {
|
jQuery(document).delegate('a.add-record', 'click', function(e) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
var content = jQuery('#categoriagrammaticale div'),
|
var content = jQuery('#categoriagrammaticale div'),
|
||||||
size = jQuery('#condizioni >div').length + 1,
|
size = jQuery('#condizioni >div').length + 1,
|
||||||
element = null,
|
element = null,
|
||||||
element = content.clone();
|
element = content.clone();
|
||||||
//alert(size);
|
//alert(size);
|
||||||
element.attr('id', 'cg-'+size);
|
element.attr('id', 'cg-' + size);
|
||||||
//element.attr('class', "stripe-dark")
|
//element.attr('class', "stripe-dark")
|
||||||
//element.find('.delete-record').attr('data-id', size);
|
//element.find('.delete-record').attr('data-id', size);
|
||||||
element.appendTo('#condizioni');
|
element.appendTo('#condizioni');
|
||||||
element.find('.sn').html(size);
|
element.find('.sn').html(size);
|
||||||
grammarconditions=grammarconditions+1
|
grammarconditions = grammarconditions + 1
|
||||||
|
|
||||||
if (size==1)
|
if (size == 1)
|
||||||
jQuery('#grammarbutton').attr('style', "display:block;")
|
jQuery('#grammarbutton').attr('style', "display:block;")
|
||||||
});
|
});
|
||||||
|
|
||||||
jQuery(document).delegate('a.add-record-sint', 'click', function(e) {
|
jQuery(document).delegate('a.add-record-sint', 'click', function(e) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
var content = jQuery('#tiposintattico div'),
|
var content = jQuery('#tiposintattico div'),
|
||||||
size = jQuery('#condizioni >div').length + 1,
|
size = jQuery('#condizioni >div').length + 1,
|
||||||
element = null,
|
element = null,
|
||||||
element = content.clone();
|
element = content.clone();
|
||||||
element.attr('id', 'ts-'+size);
|
element.attr('id', 'ts-' + size);
|
||||||
//element.attr('class', "stripe-dark")
|
//element.attr('class', "stripe-dark")
|
||||||
//element.find('.delete-record').attr('data-id', size);
|
//element.find('.delete-record').attr('data-id', size);
|
||||||
element.appendTo('#condizioni');
|
element.appendTo('#condizioni');
|
||||||
element.find('.sn').html(size);
|
element.find('.sn').html(size);
|
||||||
if (size==1)
|
if (size == 1)
|
||||||
jQuery('#grammarbutton').attr('style', "display:block;")
|
jQuery('#grammarbutton').attr('style', "display:block;")
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
jQuery(document).delegate('select.catgram', 'change', function(e) {
|
jQuery(document).delegate('select.catgram', 'change', function(e) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
//alert ($('#types').find(":selected").val())
|
//alert ($('#types').find(":selected").val())
|
||||||
alert ($(this).closest('div').attr('id'))
|
alert($(this).closest('div').attr('id'))
|
||||||
|
|
||||||
containerid='dettaglio_'+$(this).closest('div').attr('id')
|
containerid = 'dettaglio_' + $(this).closest('div').attr('id')
|
||||||
//if ($('#types').find(":selected").val()=='verbovolgare'){
|
//if ($('#types').find(":selected").val()=='verbovolgare'){
|
||||||
if ($(this).val()=='verbovolgare'){
|
if ($(this).val() == 'verbovolgare') {
|
||||||
//alert($('#types').find(":selected").val());
|
//alert($('#types').find(":selected").val());
|
||||||
var content = jQuery('#categoriaverbo >div'),
|
var content = jQuery('#categoriaverbo >div'),
|
||||||
size = jQuery('#dettaglifiltri').length + 1,
|
size = jQuery('#dettaglifiltri').length + 1,
|
||||||
element = null,
|
element = null,
|
||||||
element = content.clone();
|
element = content.clone();
|
||||||
|
|
||||||
}
|
}
|
||||||
if ($(this).val()=='sostantivovolgare'){
|
if ($(this).val() == 'sostantivovolgare') {
|
||||||
//alert($('#types').find(":selected").val());
|
//alert($('#types').find(":selected").val());
|
||||||
var content = jQuery('#categoriasostantivo >div'),
|
var content = jQuery('#categoriasostantivo >div'),
|
||||||
size = jQuery('#dettaglifiltri').length + 1,
|
size = jQuery('#dettaglifiltri').length + 1,
|
||||||
element = null,
|
element = null,
|
||||||
element = content.clone();
|
element = content.clone();
|
||||||
}
|
}
|
||||||
if ($(this).val()=='aggettivovolgare'){
|
|
||||||
var keys = Object.keys(aggettivoJson.filtri);
|
//alert($(this).val())
|
||||||
alert(keys)
|
|
||||||
}
|
if (Object.keys(categorie).includes($(this).val())) {
|
||||||
element.attr('style',"display: block;")
|
//alert(categorie[$(this).val()])
|
||||||
//element.appendTo('#dettaglifiltri');
|
var filtro = categorie[$(this).val()]
|
||||||
|
//var keys = Object.keys(aggettivoJson.filtri);
|
||||||
var test=jQuery('#'+containerid)
|
var keys = Object.keys(categorieJson[filtro])
|
||||||
test.remove()
|
for (key in keys) {
|
||||||
|
//alert(aggettivoJson.filtri[keys[key]])
|
||||||
|
var vals = categorieJson[filtro][keys[key]]
|
||||||
element.appendTo('#dettaglifiltri');
|
if (vals.length == 2) {
|
||||||
var container = jQuery('#dettaglifiltri');
|
var element = $('<div />');
|
||||||
container.attr('id', containerid);
|
element.attr('class', ' w-15 pa1 mr2');
|
||||||
var divdf = jQuery('#divdettaglifiltri >div'),
|
var rbfieldset = $('<fieldset />'),
|
||||||
detelement = null,
|
flexdiv1 = $('<div />'),
|
||||||
detelement = divdf.clone();
|
flexdiv2 = $('<div />'),
|
||||||
detelement.attr('id','dettaglifiltri')
|
input1 = $('<input />'),
|
||||||
detelement.appendTo("#query")
|
input2 = $('<input />'),
|
||||||
element.find('.sn').html(size);
|
label1 = $('<label />'),
|
||||||
|
label2 = $('<label />');
|
||||||
});
|
|
||||||
|
rbfieldset.attr('id', keys[key]);
|
||||||
|
rbfieldset.attr('class', 'bn');
|
||||||
jQuery(document).delegate('input.delete-record', 'click', function(e) {
|
flexdiv1.attr('class', 'flex items-center mb2');
|
||||||
e.preventDefault();
|
flexdiv2.attr('class', 'flex items-center mb2');
|
||||||
var didConfirm = confirm("Sei sicuro di voler eliminare la condizione?");
|
input1.attr('class', 'mr2 f6');
|
||||||
if (didConfirm == true) {
|
input2.attr('class', 'mr2 f6');
|
||||||
var id = jQuery(this).attr('data-id');
|
input1.attr('type', 'radio');
|
||||||
var targetDiv = jQuery(this).attr('targetDiv');
|
input2.attr('type', 'radio');
|
||||||
jQuery('#rec-' + id).remove();
|
input1.attr('id', vals[0]);
|
||||||
|
input2.attr('id', vals[1]);
|
||||||
if (jQuery('#condizioni >tbody >tr').length==0)
|
input1.attr('value', vals[0]);
|
||||||
jQuery('#grammarbutton').attr('style', "display:none;")
|
input2.attr('value', vals[1]);
|
||||||
//regnerate index number on table
|
input1.attr('name', 'tra');
|
||||||
$('#condizioni_body tr').each(function(index){
|
input2.attr('name', 'tra');
|
||||||
$(this).find('span.sn').html(index+1);
|
label1.attr('class', 'lh-copy');
|
||||||
|
label2.attr('class', 'lh-copy');
|
||||||
});
|
label1.attr('for', vals[0]);
|
||||||
return true;
|
label2.attr('for', vals[1]);
|
||||||
} else {
|
label1.append(vals[0]);
|
||||||
return false;
|
label2.append(vals[1]);
|
||||||
}
|
|
||||||
});
|
input1.appendTo(flexdiv1);
|
||||||
});
|
input2.appendTo(flexdiv2);
|
||||||
|
label1.appendTo(flexdiv1);
|
||||||
|
label2.appendTo(flexdiv2);
|
||||||
|
flexdiv1.appendTo(rbfieldset);
|
||||||
|
flexdiv2.appendTo(rbfieldset);
|
||||||
|
rbfieldset.appendTo(element);
|
||||||
|
element.attr('style', 'display:block')
|
||||||
|
element.appendTo('#dettaglifiltri');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (key in keys) {
|
||||||
|
var vals = categorieJson[filtro][keys[key]]
|
||||||
|
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"/>')
|
||||||
|
select.attr('id', keys[key])
|
||||||
|
select.attr('title', keys[key])
|
||||||
|
for (val in vals) {
|
||||||
|
//alert(vals[val])
|
||||||
|
var seloption = $('<option />');
|
||||||
|
seloption.attr('value', vals[val]);
|
||||||
|
seloption.append(vals[val])
|
||||||
|
seloption.appendTo(select)
|
||||||
|
}
|
||||||
|
select.appendTo(element)
|
||||||
|
element.attr('style', 'display:block')
|
||||||
|
element.appendTo('#dettaglifiltri');
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
element.attr('style', "display: block;")
|
||||||
|
//element.appendTo('#dettaglifiltri');
|
||||||
|
|
||||||
|
var test = jQuery('#' + containerid)
|
||||||
|
test.remove()
|
||||||
|
|
||||||
|
|
||||||
|
element.appendTo('#dettaglifiltri');
|
||||||
|
var container = jQuery('#dettaglifiltri');
|
||||||
|
container.attr('id', containerid);
|
||||||
|
var divdf = jQuery('#divdettaglifiltri >div'),
|
||||||
|
detelement = null,
|
||||||
|
detelement = divdf.clone();
|
||||||
|
detelement.attr('id', 'dettaglifiltri')
|
||||||
|
detelement.appendTo("#query")
|
||||||
|
element.find('.sn').html(size);
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
jQuery(document).delegate('input.delete-record', 'click', function(e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var didConfirm = confirm("Sei sicuro di voler eliminare la condizione?");
|
||||||
|
if (didConfirm == true) {
|
||||||
|
var id = jQuery(this).attr('data-id');
|
||||||
|
var targetDiv = jQuery(this).attr('targetDiv');
|
||||||
|
jQuery('#rec-' + id).remove();
|
||||||
|
|
||||||
|
if (jQuery('#condizioni >tbody >tr').length == 0)
|
||||||
|
jQuery('#grammarbutton').attr('style', "display:none;")
|
||||||
|
//regnerate index number on table
|
||||||
|
$('#condizioni_body tr').each(function(index) {
|
||||||
|
$(this).find('span.sn').html(index + 1);
|
||||||
|
|
||||||
|
});
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
Loading…
Reference in New Issue