sistemata dimensione finestra "Grammaticale" dopo editing filtro
This commit is contained in:
parent
603646a242
commit
7e6f66c72a
|
@ -272,14 +272,10 @@
|
|||
style="width: 22px; height: 20px;"></a>
|
||||
<a class="link dim gray f6 f2-ns dib mr0 update-filter" href="#"
|
||||
title="Update" style="display:none"><img
|
||||
src="./images/smalldone.png" style="width: 22px; height: 20px;"></a>
|
||||
|
||||
src="./images/smalldone.png" style="width: 22px; height: 20px;"></a>
|
||||
<a class="link dim gray f6 f2-ns dib mr0 set-filter" href="#"
|
||||
title="Set" style="display:none"><img
|
||||
src="./images/smalldone.png" style="width: 22px; height: 20px;"></a>
|
||||
|
||||
|
||||
|
||||
src="./images/smalldone.png" style="width: 22px; height: 20px;"></a>
|
||||
</nav>
|
||||
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@ $(document).ready(function() {
|
|||
sintconditions = 0
|
||||
filterconditions = 0
|
||||
|
||||
|
||||
let filterToEdit = "";
|
||||
|
||||
var aggettivoJson = {
|
||||
"filtriaggettivo": {
|
||||
|
@ -453,10 +453,10 @@ $(document).ready(function() {
|
|||
element.find('.edit-written-filter').attr('target', 'filtro-' + filterconditions);
|
||||
|
||||
//trasformo il filtro espresso nella clausola in un oggetto JSON
|
||||
|
||||
|
||||
var condizioni = $("#filterform").serialize().split('&');
|
||||
//alert (condizioni)
|
||||
|
||||
|
||||
filtro = {}
|
||||
|
||||
for (cond in condizioni) {
|
||||
|
@ -475,7 +475,7 @@ $(document).ready(function() {
|
|||
dtclass = $('<dt class="dib b mainflabel" />'),
|
||||
ddclass = $('<dd class="dib ml0 gray mainfvalue"/>');
|
||||
//dtclass.append([keys[key]]);
|
||||
tuttiFiltri = tuttiFiltri+filtro[[keys[key]]]+", ";
|
||||
tuttiFiltri = tuttiFiltri + filtro[[keys[key]]] + ", ";
|
||||
/*ddclass.append(filtro[[keys[key]]]);
|
||||
dlclass.append(dtclass);
|
||||
dlclass.append(ddclass);
|
||||
|
@ -483,13 +483,13 @@ $(document).ready(function() {
|
|||
}
|
||||
//element.find('.listacondizioni').append(dlclass);
|
||||
let virgola = tuttiFiltri.lastIndexOf(',');
|
||||
tuttiFiltri = tuttiFiltri.substring(0,virgola);
|
||||
let txtAreaFiltri = '<textarea readonly style="resize:none" class="bg-washed-blue bn" rows="2" cols="20" name="usrtxt" wrap="hard">'+
|
||||
tuttiFiltri+"</textarea>"
|
||||
tuttiFiltri = tuttiFiltri.substring(0, virgola);
|
||||
let txtAreaFiltri = '<textarea readonly style="resize:none" class="bg-washed-blue bn" rows="2" cols="20" name="usrtxt" wrap="hard">' +
|
||||
tuttiFiltri + "</textarea>"
|
||||
ddclass.append(txtAreaFiltri);
|
||||
dlclass.append(dtclass);
|
||||
dlclass.append(ddclass);
|
||||
element.find('.listacondizioni').append(dlclass);
|
||||
dlclass.append(dtclass);
|
||||
dlclass.append(ddclass);
|
||||
element.find('.listacondizioni').append(dlclass);
|
||||
element.attr('style', 'display.block');
|
||||
element.appendTo('#filtri');
|
||||
|
||||
|
@ -515,8 +515,8 @@ $(document).ready(function() {
|
|||
|
||||
return true;
|
||||
})
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
|
||||
Modifica del filtro scritto
|
||||
|
@ -525,219 +525,292 @@ $(document).ready(function() {
|
|||
|
||||
|
||||
jQuery(document).delegate('a.update-filter', 'click', function(e) {
|
||||
|
||||
alert ('Update not yet implemented, in progress...')
|
||||
|
||||
|
||||
|
||||
//alert('Update not yet implemented, in progress...' + filterToEdit)
|
||||
|
||||
AggiornaFiltro(filterToEdit);
|
||||
return true
|
||||
|
||||
|
||||
}
|
||||
)
|
||||
function AggiornaFiltro(filtroId) {
|
||||
//e.preventDefault();
|
||||
|
||||
var content = jQuery('#filtro'),
|
||||
size = jQuery('#filtri >div').length + 1,
|
||||
element = null,
|
||||
element = content.clone();
|
||||
|
||||
|
||||
element.attr('id', filtroId);
|
||||
element.find('.delete-written-filter').attr('target', filtroId);
|
||||
element.find('.edit-written-filter').attr('target', filtroId);
|
||||
|
||||
//trasformo il filtro espresso nella clausola in un oggetto JSON
|
||||
|
||||
var condizioni = $("#filterform").serialize().split('&');
|
||||
//alert (condizioni)
|
||||
|
||||
filtro = {}
|
||||
|
||||
for (cond in condizioni) {
|
||||
|
||||
liscond = condizioni[cond].split('=')
|
||||
if (liscond[1].trim() != '' & liscond[1].trim() != liscond[0].trim())
|
||||
filtro[liscond[0]] = liscond[1].replaceAll('%20', ' ')
|
||||
}
|
||||
)
|
||||
|
||||
/**
|
||||
|
||||
Il Filtro "scritto" viene eliminato
|
||||
|
||||
*/
|
||||
|
||||
jQuery(document).delegate('a.delete-written-filter', 'click', function(e) {
|
||||
|
||||
e.preventDefault();
|
||||
var didConfirm = confirm("Sei sicuro di voler cancellare il filtro?");
|
||||
if (didConfirm == true) {
|
||||
|
||||
var targetDiv = jQuery(this).attr('target');
|
||||
|
||||
rmel = jQuery('#' + targetDiv)
|
||||
rmeldetail = jQuery('#' + targetDiv)
|
||||
jQuery(rmel).remove();
|
||||
jQuery(rmeldetail).remove();
|
||||
// se c'è un solo filtro, mi assicuro che non sia visibile il dropbox and/or
|
||||
size = jQuery('#filtri >div').length
|
||||
|
||||
//nasconde la condizione logica dal primo della lista dei filtri
|
||||
if (size > 0) {
|
||||
var filtriscr = jQuery('#filtri >div');
|
||||
filtriscr.first().find('.andorconditions').attr('style', 'display:none');
|
||||
} else { // eliminato l'ultimo filtro
|
||||
jQuery('#filtri').attr('style', "display:none;")
|
||||
}
|
||||
|
||||
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
//mostro il filtro nella GUI
|
||||
let tuttiFiltri = "";
|
||||
var keys = Object.keys(filtro)//condizioniFiltro)
|
||||
for (key in keys) {
|
||||
var dlclass = $('<dl class="f6 lh-title mv2" />'),
|
||||
dtclass = $('<dt class="dib b mainflabel" />'),
|
||||
ddclass = $('<dd class="dib ml0 gray mainfvalue"/>');
|
||||
tuttiFiltri = tuttiFiltri + filtro[[keys[key]]] + ", ";
|
||||
}
|
||||
});
|
||||
let virgola = tuttiFiltri.lastIndexOf(',');
|
||||
tuttiFiltri = tuttiFiltri.substring(0, virgola);
|
||||
let txtAreaFiltri = '<textarea readonly style="resize:none" class="bg-washed-blue bn" rows="2" cols="20" name="usrtxt" wrap="hard">' +
|
||||
tuttiFiltri + "</textarea>"
|
||||
ddclass.append(txtAreaFiltri);
|
||||
dlclass.append(dtclass);
|
||||
dlclass.append(ddclass);
|
||||
element.find('.listacondizioni').append(dlclass);
|
||||
element.attr('style', 'display.block');
|
||||
element.appendTo('#filtri');
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
|
||||
Il Filtro "scritto" viene editato
|
||||
|
||||
*/
|
||||
|
||||
jQuery(document).delegate('a.edit-written-filter', 'click', function(e) {
|
||||
|
||||
e.preventDefault();
|
||||
if (clausolaVisibile)
|
||||
return true;
|
||||
var didConfirm = confirm("Sei sicuro di voler editare il filtro?");
|
||||
if (didConfirm == true) {
|
||||
var thisfilter = jQuery(this).attr('target');
|
||||
tempfiltro = condizioniFiltro[thisfilter]
|
||||
tempfiltro['target']=thisfilter
|
||||
|
||||
if (tempfiltro['tipoClausola'].trim() == 'grammaticale') {
|
||||
|
||||
clausolaVisibile = true;
|
||||
tipoClausola = 'grammaticale'
|
||||
showCategoriaGrammaticale(tempfiltro, thisfilter)
|
||||
|
||||
|
||||
}
|
||||
if (tempfiltro['tipoClausola'].trim() == 'sintattica') {
|
||||
|
||||
clausolaVisibile = true;
|
||||
tipoClausola = 'sintattica'
|
||||
showClausolaSintattica(tempfiltro, thisFilter)
|
||||
|
||||
|
||||
}
|
||||
if (size > 1) {
|
||||
element.find('.andorconditions').attr('style', 'display.block');
|
||||
}
|
||||
|
||||
//$('a.remove-filter').trigger('click');
|
||||
var targetDiv = jQuery(this).attr('targetfilter');
|
||||
|
||||
rmel = jQuery('#' + targetDiv)
|
||||
rmeldetail = jQuery('#' + 'dettaglio_' + targetDiv)
|
||||
jQuery(rmel).remove();
|
||||
jQuery(rmeldetail).remove();
|
||||
clausolaVisibile = false;
|
||||
|
||||
//aggiungo il filtro a quelli esistenti nel json
|
||||
|
||||
filtro['tipoClausola'] = tipoClausola
|
||||
condizioniFiltro[filtroId] = filtro
|
||||
|
||||
|
||||
return true;
|
||||
/*} else {
|
||||
return false;
|
||||
}*/
|
||||
});
|
||||
|
||||
/**
|
||||
*
|
||||
* Visualizza Categoria Grammaticale
|
||||
*/
|
||||
|
||||
function showCategoriaGrammaticale(valoriFiltro = {}, filtroTarget='') {
|
||||
|
||||
|
||||
var content = jQuery('#categoriagrammaticale >div'),
|
||||
size = jQuery('#condizioni >div').length + 1,
|
||||
element = null,
|
||||
element = content.clone();
|
||||
//alert("Value: " + $("#types").val());
|
||||
|
||||
|
||||
element.attr('id', 'cg-' + size);
|
||||
element.find('.remove-filter').attr('target', 'cg-' + size);
|
||||
element.find('.set-filter').attr('targetfilter', 'cg-' + size);
|
||||
element.appendTo('#condizioni');
|
||||
|
||||
if (!jQuery.isEmptyObject(valoriFiltro)) { // sto facendo la modfica di un filtro
|
||||
|
||||
$("#types").val(valoriFiltro['categoria']).trigger("change");
|
||||
var keys = Object.keys(valoriFiltro)//condizioniFiltro)
|
||||
for (key in keys) {
|
||||
myname = keys[key]
|
||||
myname=myname.replaceAll('%20', ' ')
|
||||
myval = valoriFiltro[keys[key]]
|
||||
|
||||
var edelement = $("[name='" + myname + "'");
|
||||
var edeltype = edelement.attr('type')
|
||||
//alert(edeltype)
|
||||
if (edeltype !== undefined & (edeltype == 'radio' | edeltype == 'checkbox')) {
|
||||
$('[value="' + myval + '"]').prop('checked', true);
|
||||
}
|
||||
else {
|
||||
$("[name='" + myname + "'").val(myval)
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
element.find('.update-filter').attr('targetfilter', filtroTarget);
|
||||
element.find(".set-filter").attr('style', 'display:none')
|
||||
element.find(".update-filter").attr('style', 'display:block')
|
||||
|
||||
}
|
||||
else { //sto creando una clausola grammaticale nuova, definisco il valore di default
|
||||
|
||||
$("#types").val("verbovolgare").trigger("change");
|
||||
}
|
||||
valoriFiltro = {}
|
||||
element.find('.sn').html(size);
|
||||
grammarconditions = grammarconditions + 1
|
||||
|
||||
if (size == 1)
|
||||
jQuery('#grammarbutton').attr('style', "display:block;")
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
Visualizza Clausola Sintattica
|
||||
/**
|
||||
|
||||
*/
|
||||
Il Filtro "scritto" viene eliminato
|
||||
|
||||
*/
|
||||
|
||||
function showClausolaSintattica(valoriFiltro = {}, filtroTarget='') {
|
||||
|
||||
jQuery(document).delegate('a.delete-written-filter', 'click', function(e) {
|
||||
|
||||
var content = jQuery('#tiposintattico >div'),
|
||||
size = jQuery('#condizioni >div').length + 1,
|
||||
element = null,
|
||||
element = content.clone();
|
||||
element.attr('id', 'ts-' + size);
|
||||
|
||||
element.find('.remove-filter').attr('target', 'ts-' + size);
|
||||
element.find('.set-filter').attr('targetfilter', 'ts-' + size);
|
||||
element.appendTo('#condizioni');
|
||||
if (!jQuery.isEmptyObject(valoriFiltro)) { // sto facendo l'edit di un filtro
|
||||
|
||||
$("#types").val(valoriFiltro['categoria']).trigger("change");
|
||||
var keys = Object.keys(valoriFiltro)//condizioniFiltro)
|
||||
for (key in keys) {
|
||||
myname = keys[key]
|
||||
myval = valoriFiltro[keys[key]]
|
||||
var edelement = $("[name='" + myname + "'");
|
||||
var edeltype = edelement.attr('type')
|
||||
//alert(edeltype)
|
||||
if (edeltype !== undefined & (edeltype == 'radio' | edeltype == 'checkbox')) {
|
||||
$('[value="' + myval + '"]').prop('checked', true);
|
||||
}
|
||||
else {
|
||||
$("[name='" + myname + "'").val(myval)
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
element.find('.sn').html(size);
|
||||
sintconditions = sintconditions + 1
|
||||
if (size == 1)
|
||||
jQuery('#grammarbutton').attr('style', "display:block;")
|
||||
}
|
||||
|
||||
|
||||
jQuery(document).delegate('a.add-details', 'click', function(e) {
|
||||
e.preventDefault();
|
||||
e.preventDefault();
|
||||
var didConfirm = confirm("Sei sicuro di voler cancellare il filtro?");
|
||||
if (didConfirm == true) {
|
||||
|
||||
var targetDiv = jQuery(this).attr('target');
|
||||
|
||||
rmel = jQuery('#' + targetDiv)
|
||||
var curstyle = rmel.attr('view')
|
||||
rmeldetail = jQuery('#' + targetDiv)
|
||||
jQuery(rmel).remove();
|
||||
jQuery(rmeldetail).remove();
|
||||
// se c'è un solo filtro, mi assicuro che non sia visibile il dropbox and/or
|
||||
size = jQuery('#filtri >div').length
|
||||
|
||||
if (curstyle !== undefined && curstyle === 'y') {
|
||||
//nasconde la condizione logica dal primo della lista dei filtri
|
||||
if (size > 0) {
|
||||
var filtriscr = jQuery('#filtri >div');
|
||||
filtriscr.first().find('.andorconditions').attr('style', 'display:none');
|
||||
} else { // eliminato l'ultimo filtro
|
||||
jQuery('#filtri').attr('style', "display:none;")
|
||||
}
|
||||
|
||||
rmel.children().attr('style', 'display:none');
|
||||
rmel.attr('view', 'n')
|
||||
}
|
||||
else {
|
||||
rmel.attr('view', 'y')
|
||||
rmel.children().attr('style', 'display:block');
|
||||
}
|
||||
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
||||
/**
|
||||
|
||||
Il Filtro "scritto" viene editato
|
||||
|
||||
*/
|
||||
|
||||
jQuery(document).delegate('a.edit-written-filter', 'click', function(e) {
|
||||
|
||||
e.preventDefault();
|
||||
if (clausolaVisibile)
|
||||
return true;
|
||||
var didConfirm = confirm("Sei sicuro di voler editare il filtro?");
|
||||
if (didConfirm == true) {
|
||||
var thisfilter = jQuery(this).attr('target');
|
||||
tempfiltro = condizioniFiltro[thisfilter]
|
||||
tempfiltro['target'] = thisfilter
|
||||
|
||||
filterToEdit = thisfilter;
|
||||
|
||||
if (tempfiltro['tipoClausola'].trim() == 'grammaticale') {
|
||||
|
||||
clausolaVisibile = true;
|
||||
tipoClausola = 'grammaticale'
|
||||
showCategoriaGrammaticale(tempfiltro, thisfilter)
|
||||
|
||||
|
||||
}
|
||||
if (tempfiltro['tipoClausola'].trim() == 'sintattica') {
|
||||
|
||||
clausolaVisibile = true;
|
||||
tipoClausola = 'sintattica'
|
||||
showClausolaSintattica(tempfiltro, thisFilter)
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
/*} else {
|
||||
return false;
|
||||
}*/
|
||||
});
|
||||
|
||||
/**
|
||||
*
|
||||
* Visualizza Categoria Grammaticale
|
||||
*/
|
||||
|
||||
function showCategoriaGrammaticale(valoriFiltro = {}, filtroTarget = '') {
|
||||
|
||||
|
||||
var content = jQuery('#categoriagrammaticale >div'),
|
||||
size = jQuery('#condizioni >div').length + 1,
|
||||
element = null,
|
||||
element = content.clone();
|
||||
//alert("Value: " + $("#types").val());
|
||||
|
||||
|
||||
element.attr('id', 'cg-' + size);
|
||||
element.find('.remove-filter').attr('target', 'cg-' + size);
|
||||
element.find('.set-filter').attr('targetfilter', 'cg-' + size);
|
||||
element.appendTo('#condizioni');
|
||||
|
||||
if (!jQuery.isEmptyObject(valoriFiltro)) { // sto facendo la modfica di un filtro
|
||||
|
||||
$("#types").val(valoriFiltro['categoria']).trigger("change");
|
||||
var keys = Object.keys(valoriFiltro)//condizioniFiltro)
|
||||
for (key in keys) {
|
||||
myname = keys[key]
|
||||
myname = myname.replaceAll('%20', ' ')
|
||||
myval = valoriFiltro[keys[key]]
|
||||
|
||||
var edelement = $("[name='" + myname + "'");
|
||||
var edeltype = edelement.attr('type')
|
||||
//alert(edeltype)
|
||||
if (edeltype !== undefined & (edeltype == 'radio' | edeltype == 'checkbox')) {
|
||||
$('[value="' + myval + '"]').prop('checked', true);
|
||||
}
|
||||
else {
|
||||
$("[name='" + myname + "'").val(myval)
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
element.find('.update-filter').attr('targetfilter', filtroTarget);
|
||||
element.find(".set-filter").attr('style', 'display:none')
|
||||
element.find(".update-filter").attr('style', 'display:compact')
|
||||
|
||||
}
|
||||
else { //sto creando una clausola grammaticale nuova, definisco il valore di default
|
||||
|
||||
$("#types").val("verbovolgare").trigger("change");
|
||||
}
|
||||
valoriFiltro = {}
|
||||
element.find('.sn').html(size);
|
||||
grammarconditions = grammarconditions + 1
|
||||
|
||||
if (size == 1)
|
||||
jQuery('#grammarbutton').attr('style', "display:block;")
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
Visualizza Clausola Sintattica
|
||||
|
||||
*/
|
||||
|
||||
function showClausolaSintattica(valoriFiltro = {}, filtroTarget = '') {
|
||||
|
||||
|
||||
var content = jQuery('#tiposintattico >div'),
|
||||
size = jQuery('#condizioni >div').length + 1,
|
||||
element = null,
|
||||
element = content.clone();
|
||||
element.attr('id', 'ts-' + size);
|
||||
|
||||
element.find('.remove-filter').attr('target', 'ts-' + size);
|
||||
element.find('.set-filter').attr('targetfilter', 'ts-' + size);
|
||||
element.appendTo('#condizioni');
|
||||
if (!jQuery.isEmptyObject(valoriFiltro)) { // sto facendo l'edit di un filtro
|
||||
|
||||
$("#types").val(valoriFiltro['categoria']).trigger("change");
|
||||
var keys = Object.keys(valoriFiltro)//condizioniFiltro)
|
||||
for (key in keys) {
|
||||
myname = keys[key]
|
||||
myval = valoriFiltro[keys[key]]
|
||||
var edelement = $("[name='" + myname + "'");
|
||||
var edeltype = edelement.attr('type')
|
||||
//alert(edeltype)
|
||||
if (edeltype !== undefined & (edeltype == 'radio' | edeltype == 'checkbox')) {
|
||||
$('[value="' + myval + '"]').prop('checked', true);
|
||||
}
|
||||
else {
|
||||
$("[name='" + myname + "'").val(myval)
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
element.find('.sn').html(size);
|
||||
sintconditions = sintconditions + 1
|
||||
if (size == 1)
|
||||
jQuery('#grammarbutton').attr('style', "display:block;")
|
||||
}
|
||||
|
||||
|
||||
jQuery(document).delegate('a.add-details', 'click', function(e) {
|
||||
e.preventDefault();
|
||||
|
||||
var targetDiv = jQuery(this).attr('target');
|
||||
|
||||
rmel = jQuery('#' + targetDiv)
|
||||
var curstyle = rmel.attr('view')
|
||||
|
||||
if (curstyle !== undefined && curstyle === 'y') {
|
||||
|
||||
rmel.children().attr('style', 'display:none');
|
||||
rmel.attr('view', 'n')
|
||||
}
|
||||
else {
|
||||
rmel.attr('view', 'y')
|
||||
rmel.children().attr('style', 'display:block');
|
||||
}
|
||||
|
||||
return true;
|
||||
|
||||
|
||||
});
|
||||
|
||||
});
|
Loading…
Reference in New Issue