Correzione JS per input con stesso ID
This commit is contained in:
parent
bc2dea3f74
commit
f96a2789bc
18
add.php
18
add.php
|
@ -53,15 +53,10 @@ echo '
|
|||
|
||||
<script>
|
||||
$(document).ready(function(){
|
||||
cleanup_inputs();
|
||||
let form = $("#custom_fields_top-add").parent().find("form").first();
|
||||
|
||||
var form = $("#custom_fields_top-add").parent().find("form").first();
|
||||
|
||||
// Campi a inizio form
|
||||
form.prepend($("#custom_fields_top-add").html());
|
||||
|
||||
// Campi a fine form
|
||||
var last = form.find(".panel").last();
|
||||
// Ultima sezione/campo del form
|
||||
let last = form.find(".panel").last();
|
||||
|
||||
if (!last.length) {
|
||||
last = form.find(".box").last();
|
||||
|
@ -71,8 +66,11 @@ $(document).ready(function(){
|
|||
last = form.find(".row").eq(-2);
|
||||
}
|
||||
|
||||
last.after($("#custom_fields_bottom-add").html());
|
||||
restart_inputs();
|
||||
// Campi a inizio form
|
||||
aggiungiContenuto(form, "#custom_fields_top-add", {}, true);
|
||||
|
||||
// Campi a fine form
|
||||
aggiungiContenuto(last, "#custom_fields_bottom-add", {});
|
||||
});
|
||||
</script>';
|
||||
|
||||
|
|
|
@ -488,16 +488,6 @@ function restart_inputs() {
|
|||
$('.openstamanager-input').each(function () {
|
||||
input(this);
|
||||
});
|
||||
/*
|
||||
start_datepickers();
|
||||
start_inputmask();
|
||||
|
||||
initNumbers();
|
||||
start_superselect();
|
||||
|
||||
// Autosize per le textarea
|
||||
initTextareaInput($('.autosize'));
|
||||
*/
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -707,12 +697,13 @@ function hideTableColumn(table, column) {
|
|||
|
||||
/**
|
||||
* Funzione per aggiungere in un *endpoint* il contenuto di uno specifico *template*, effettuando delle sostituzioni di base e inizializzando i campi aggiunti.
|
||||
* @param endpoint_selector
|
||||
* @param template_selector
|
||||
* @param replaces
|
||||
* @param {string|jQuery|HTMLElement} endpoint_selector
|
||||
* @param {string|jQuery|HTMLElement} template_selector
|
||||
* @param {object} replaces
|
||||
* @param {boolean} prepend
|
||||
* @returns {*|jQuery|HTMLElement}
|
||||
*/
|
||||
function aggiungiContenuto(endpoint_selector, template_selector, replaces = {}) {
|
||||
function aggiungiContenuto(endpoint_selector, template_selector, replaces = {}, prepend = false) {
|
||||
let template = $(template_selector);
|
||||
let endpoint = $(endpoint_selector);
|
||||
|
||||
|
@ -729,7 +720,11 @@ function aggiungiContenuto(endpoint_selector, template_selector, replaces = {})
|
|||
|
||||
// Aggiunta del contenuto
|
||||
let element = $(content);
|
||||
endpoint.append(element);
|
||||
if (prepend) {
|
||||
endpoint.prepend(element);
|
||||
} else {
|
||||
endpoint.append(element);
|
||||
}
|
||||
|
||||
// Rigenerazione degli input interni
|
||||
element.find('.openstamanager-input').each(function () {
|
||||
|
|
18
editor.php
18
editor.php
|
@ -263,15 +263,10 @@ if (empty($record) || !$has_access) {
|
|||
|
||||
<script>
|
||||
$(document).ready(function(){
|
||||
cleanup_inputs();
|
||||
let form = $("#module-edit").parent().find("form").first();
|
||||
|
||||
var form = $("#module-edit").find("form").first();
|
||||
|
||||
// Campi a inizio form
|
||||
form.prepend($("#custom_fields_top-edit").html());
|
||||
|
||||
// Campi a fine form
|
||||
var last = form.find(".panel").last();
|
||||
// Ultima sezione/campo del form
|
||||
let last = form.find(".panel").last();
|
||||
|
||||
if (!last.length) {
|
||||
last = form.find(".box").last();
|
||||
|
@ -281,8 +276,11 @@ if (empty($record) || !$has_access) {
|
|||
last = form.find(".row").eq(-2);
|
||||
}
|
||||
|
||||
last.after($("#custom_fields_bottom-edit").html());
|
||||
restart_inputs();
|
||||
// Campi a inizio form
|
||||
aggiungiContenuto(form, "#custom_fields_top-edit", {}, true);
|
||||
|
||||
// Campi a fine form
|
||||
aggiungiContenuto(last, "#custom_fields_bottom-edit", {});
|
||||
});
|
||||
</script>';
|
||||
|
||||
|
|
|
@ -35,20 +35,18 @@ echo '
|
|||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
{[ "type": "select", "label": "'.tr('Tipo di anagrafica').'", "name": "idtipoanagrafica[]", "multiple": "1", "required": 1, "values": "query=SELECT idtipoanagrafica AS id, descrizione FROM an_tipianagrafiche WHERE idtipoanagrafica NOT IN (SELECT DISTINCT(x.idtipoanagrafica) FROM an_tipianagrafiche_anagrafiche x INNER JOIN an_tipianagrafiche t ON x.idtipoanagrafica = t.idtipoanagrafica INNER JOIN an_anagrafiche ON an_anagrafiche.idanagrafica = x.idanagrafica WHERE t.descrizione = \'Azienda\' AND deleted_at IS NULL) ORDER BY descrizione", "value": "'.(isset($idtipoanagrafica) ? $idtipoanagrafica : null).'", "readonly": '.(!empty(get('readonly_tipo')) ? 1 : 0).' ]}
|
||||
{[ "type": "select", "label": "'.tr('Tipo di anagrafica').'", "name": "idtipoanagrafica[]", "id": "idtipoanagrafica_add", "multiple": "1", "required": 1, "values": "query=SELECT idtipoanagrafica AS id, descrizione FROM an_tipianagrafiche WHERE idtipoanagrafica NOT IN (SELECT DISTINCT(x.idtipoanagrafica) FROM an_tipianagrafiche_anagrafiche x INNER JOIN an_tipianagrafiche t ON x.idtipoanagrafica = t.idtipoanagrafica INNER JOIN an_anagrafiche ON an_anagrafiche.idanagrafica = x.idanagrafica WHERE t.descrizione = \'Azienda\' AND deleted_at IS NULL) ORDER BY descrizione", "value": "'.(isset($idtipoanagrafica) ? $idtipoanagrafica : null).'", "readonly": '.(!empty(get('readonly_tipo')) ? 1 : 0).' ]}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-6">
|
||||
{[ "type": "text", "label": "'.tr('Cognome').'", "name": "cognome", "id": "cognome_add", "required": 0 ]}
|
||||
{[ "type": "text", "label": "'.tr('Cognome').'", "name": "cognome", "id": "cognome_add" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
{[ "type": "text", "label": "'.tr('Nome').'", "name": "nome", "id": "nome_add", "required": 0 ]}
|
||||
{[ "type": "text", "label": "'.tr('Nome').'", "name": "nome", "id": "nome_add" ]}
|
||||
</div>
|
||||
|
||||
</div>';
|
||||
|
||||
echo '
|
||||
|
@ -72,10 +70,8 @@ echo '
|
|||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "'.tr('Tipologia').'", "name": "tipo", "values": "list=\"\": \"'.tr('Non specificato').'\", \"Azienda\": \"'.tr('Azienda').'\", \"Privato\": \"'.tr('Privato').'\", \"Ente pubblico\": \"'.tr('Ente pubblico').'\"" ]}
|
||||
{[ "type": "select", "label": "'.tr('Tipologia').'", "name": "tipo", "id": "tipo_add", "values": "list=\"\": \"'.tr('Non specificato').'\", \"Azienda\": \"'.tr('Azienda').'\", \"Privato\": \"'.tr('Privato').'\", \"Ente pubblico\": \"'.tr('Ente pubblico').'\"" ]}
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
@ -99,7 +95,7 @@ echo '
|
|||
<div class="row">
|
||||
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "'.tr('Nazione').'", "name": "id_nazione", "values": "query=SELECT id AS id, CONCAT_WS(\' - \', iso2, nome) AS descrizione FROM an_nazioni ORDER BY CASE WHEN iso2=\'IT\' THEN -1 ELSE iso2 END" ]}
|
||||
{[ "type": "select", "label": "'.tr('Nazione').'", "name": "id_nazione", "id": "id_nazione_add", "values": "query=SELECT id AS id, CONCAT_WS(\' - \', iso2, nome) AS descrizione FROM an_nazioni ORDER BY CASE WHEN iso2=\'IT\' THEN -1 ELSE iso2 END" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
|
@ -125,7 +121,7 @@ echo '
|
|||
|
||||
echo '
|
||||
<div class="col-md-4">
|
||||
{[ "type": "text", "label": "'.tr('Codice destinatario').'", "name": "codice_destinatario", "required": 0, "class": "text-center text-uppercase alphanumeric-mask", "maxlength": "7", "extra": "", "help": "'.tr($help_codice_destinatario).'", "readonly": "1" ]}
|
||||
{[ "type": "text", "label": "'.tr('Codice destinatario').'", "name": "codice_destinatario", "class": "text-center text-uppercase alphanumeric-mask", "maxlength": "7", "extra": "", "help": "'.tr($help_codice_destinatario).'", "readonly": "1" ]}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -141,39 +137,37 @@ echo '
|
|||
?>
|
||||
|
||||
<script>
|
||||
var nome = $('#nome_add', '#modals > div');
|
||||
var cognome = $('#cognome_add', '#modals > div');
|
||||
var ragione_sociale = $('#ragione_sociale_add', '#modals > div');
|
||||
var nome = input("nome");
|
||||
var cognome = input("cognome");
|
||||
var ragione_sociale = input("ragione_sociale");
|
||||
var id_nazione = input("id_nazione");
|
||||
|
||||
// Abilito solo ragione sociale oppure solo nome-cognome in base a cosa compilo
|
||||
nome.keyup(function () {
|
||||
if ($(this).val()) {
|
||||
ragione_sociale.prop('disabled', true).prop('required', false);
|
||||
} else if (!cognome.val()) {
|
||||
ragione_sociale.prop('disabled', false).prop('required', true);
|
||||
nome.on("keyup", function () {
|
||||
if (nome.get()) {
|
||||
ragione_sociale.disable();
|
||||
} else if (!cognome.get()) {
|
||||
ragione_sociale.enable();
|
||||
}
|
||||
});
|
||||
|
||||
cognome.keyup(function () {
|
||||
if ($(this).val()) {
|
||||
ragione_sociale.prop('disabled', true).prop('required', false);
|
||||
} else if (!nome.val()) {
|
||||
ragione_sociale.prop('disabled', false).prop('required', true);
|
||||
cognome.on("keyup", function () {
|
||||
if (cognome.get()) {
|
||||
ragione_sociale.disable();
|
||||
} else if (!nome.get()) {
|
||||
ragione_sociale.enable();
|
||||
}
|
||||
});
|
||||
|
||||
ragione_sociale.keyup(function () {
|
||||
if ($(this).val()) {
|
||||
nome.prop('disabled', true).prop('required', false);
|
||||
cognome.prop('disabled', true).prop('required', false);
|
||||
} else {
|
||||
nome.prop('disabled', false).prop('required', true);
|
||||
cognome.prop('disabled', false).prop('required', true);
|
||||
}
|
||||
ragione_sociale.on("keyup", function () {
|
||||
let disable = ragione_sociale.get() !== "";
|
||||
|
||||
nome.setDisabled(disable);
|
||||
cognome.setDisabled(disable);
|
||||
});
|
||||
|
||||
input("id_nazione").change(function() {
|
||||
if (input("id_nazione").getElement().selectData().descrizione === 'IT - Italia'){
|
||||
id_nazione.change(function() {
|
||||
if (id_nazione.getData().descrizione === 'IT - Italia'){
|
||||
input("codice_destinatario").enable();
|
||||
}else{
|
||||
input("codice_destinatario").disable();
|
||||
|
|
|
@ -32,6 +32,7 @@ class SelectHandler implements HandlerInterface
|
|||
{
|
||||
$values['class'][] = 'openstamanager-input';
|
||||
$values['class'][] = 'select-input';
|
||||
$values['data-select2-id'][] = $values['id'].'_'.rand(0, 999);
|
||||
|
||||
$source = isset($values['ajax-source']) ? $values['ajax-source'] : (isset($values['select-source']) ? $values['select-source'] : null);
|
||||
|
||||
|
|
Loading…
Reference in New Issue