mirror of
https://github.com/devcode-it/openstamanager.git
synced 2025-02-27 08:47:39 +01:00
Aggiunto salvataggo AJAX delle modifiche (#636)
This commit is contained in:
parent
2356cca7b9
commit
3ccb4ecf28
@ -12,9 +12,9 @@ function openModal(title, href) {
|
|||||||
// Generazione dinamica modal
|
// Generazione dinamica modal
|
||||||
do {
|
do {
|
||||||
id = '#bs-popup-' + Math.floor(Math.random() * 100);
|
id = '#bs-popup-' + Math.floor(Math.random() * 100);
|
||||||
} while ($(id).length != 0);
|
} while ($(id).length !== 0);
|
||||||
|
|
||||||
if ($(id).length == 0) {
|
if ($(id).length === 0) {
|
||||||
$('#modals').append('<div class="modal fade" id="' + id.replace("#", "") + '" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" data-backdrop="static" data-keyboard="true"></div>');
|
$('#modals').append('<div class="modal fade" id="' + id.replace("#", "") + '" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" data-backdrop="static" data-keyboard="true"></div>');
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -40,14 +40,14 @@ function openModal(title, href) {
|
|||||||
</div>';
|
</div>';
|
||||||
|
|
||||||
// Lettura contenuto div
|
// Lettura contenuto div
|
||||||
if (href.substr(0, 1) == '#') {
|
if (href.substr(0, 1) === '#') {
|
||||||
var data = $(href).html();
|
var data = $(href).html();
|
||||||
|
|
||||||
$(id).html(content.replace("|data|", data));
|
$(id).html(content.replace("|data|", data));
|
||||||
$(id).modal('show');
|
$(id).modal('show');
|
||||||
} else {
|
} else {
|
||||||
$.get(href, function (data, response) {
|
$.get(href, function (data, response) {
|
||||||
if (response == 'success') {
|
if (response === 'success') {
|
||||||
$(id).html(content.replace("|data|", data));
|
$(id).html(content.replace("|data|", data));
|
||||||
$(id).modal('show');
|
$(id).modal('show');
|
||||||
}
|
}
|
||||||
@ -65,7 +65,7 @@ function openLink(event, link) {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Funzione per far scrollare la pagina fino a un offset
|
* Funzione per far scrollare la pagina fino a un offset
|
||||||
* @param integer offset
|
* @param offset
|
||||||
*/
|
*/
|
||||||
function scrollToOffset(offset) {
|
function scrollToOffset(offset) {
|
||||||
$('html,body').animate({
|
$('html,body').animate({
|
||||||
@ -80,11 +80,9 @@ function getUrlVars() {
|
|||||||
var search = window.location.search.substring(1);
|
var search = window.location.search.substring(1);
|
||||||
if (!search) return {};
|
if (!search) return {};
|
||||||
|
|
||||||
var results = JSON.parse('{"' + search.replace(/&/g, '","').replace(/=/g, '":"') + '"}', function (key, value) {
|
return JSON.parse('{"' + search.replace(/&/g, '","').replace(/=/g, '":"') + '"}', function (key, value) {
|
||||||
return key === "" ? value : decodeURIComponent(value)
|
return key === "" ? value : decodeURIComponent(value)
|
||||||
});
|
});
|
||||||
|
|
||||||
return results;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Data e ora (orologio)
|
// Data e ora (orologio)
|
||||||
@ -108,19 +106,18 @@ function session_set_array(session_array, value, inversed) {
|
|||||||
* Funzione per impostare un valore ad una sessione
|
* Funzione per impostare un valore ad una sessione
|
||||||
*/
|
*/
|
||||||
function session_set(session_array, value, clear, reload) {
|
function session_set(session_array, value, clear, reload) {
|
||||||
if (clear == undefined) {
|
if (clear === undefined) {
|
||||||
clear = 1;
|
clear = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (reload == undefined) {
|
if (reload === undefined) {
|
||||||
reload = 0;
|
reload = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
return $.get(globals.rootdir + "/ajax.php?op=session_set&session=" + session_array + "&value=" + value + "&clear=" + clear, function (data, status) {
|
return $.get(globals.rootdir + "/ajax.php?op=session_set&session=" + session_array + "&value=" + value + "&clear=" + clear, function (data, status) {
|
||||||
|
if (reload === 1) {
|
||||||
if (reload == 1)
|
|
||||||
location.reload();
|
location.reload();
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -377,49 +374,52 @@ function buttonRestore(button, loadingResult) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function submitAjax(form, data, callback, errorCallback) {
|
function submitAjax(form, data, callback, errorCallback) {
|
||||||
var valid = $(form).parsley().validate();
|
let valid = $(form).parsley().validate();
|
||||||
|
if (!valid) {
|
||||||
|
return valid;
|
||||||
|
}
|
||||||
|
|
||||||
if (!data) data = {};
|
if (!data) data = {};
|
||||||
|
|
||||||
if (valid) {
|
$("#main_loading").show();
|
||||||
$("#main_loading").show();
|
content_was_modified = false;
|
||||||
|
|
||||||
content_was_modified = false;
|
// Fix per gli id di default
|
||||||
|
data.id_module = data.id_module ? data.id_module : globals.id_module;
|
||||||
|
data.id_record = data.id_record ? data.id_record : globals.id_record;
|
||||||
|
data.id_plugin = data.id_plugin ? data.id_plugin : globals.id_plugin;
|
||||||
|
data.ajax = 1;
|
||||||
|
|
||||||
// Fix per gli id di default
|
prepareForm(form);
|
||||||
data.id_module = data.id_module ? data.id_module : globals.id_module;
|
|
||||||
data.id_record = data.id_record ? data.id_record : globals.id_record;
|
|
||||||
data.id_plugin = data.id_plugin ? data.id_plugin : globals.id_plugin;
|
|
||||||
data.ajax = 1;
|
|
||||||
|
|
||||||
prepareForm(form);
|
// Invio dei dati
|
||||||
|
$(form).ajaxSubmit({
|
||||||
|
url: globals.rootdir + "/actions.php",
|
||||||
|
data: data,
|
||||||
|
type: "post",
|
||||||
|
success: function (data) {
|
||||||
|
let response = data.trim();
|
||||||
|
|
||||||
// Invio dei dati
|
// Tentativo di conversione da JSON
|
||||||
$(form).ajaxSubmit({
|
try {
|
||||||
url: globals.rootdir + "/actions.php",
|
response = JSON.parse(response);
|
||||||
data: data,
|
} catch (e) {
|
||||||
type: "post",
|
|
||||||
success: function (data) {
|
|
||||||
data = data.trim();
|
|
||||||
|
|
||||||
if (data) {
|
|
||||||
response = JSON.parse(data);
|
|
||||||
if (callback) callback(response);
|
|
||||||
}
|
|
||||||
|
|
||||||
$("#main_loading").fadeOut();
|
|
||||||
|
|
||||||
renderMessages();
|
|
||||||
},
|
|
||||||
error: function (data) {
|
|
||||||
$("#main_loading").fadeOut();
|
|
||||||
|
|
||||||
toastr["error"](data);
|
|
||||||
|
|
||||||
if (errorCallback) errorCallback(data);
|
|
||||||
}
|
}
|
||||||
});
|
|
||||||
}
|
callback(response);
|
||||||
|
|
||||||
|
$("#main_loading").fadeOut();
|
||||||
|
|
||||||
|
renderMessages();
|
||||||
|
},
|
||||||
|
error: function (data) {
|
||||||
|
$("#main_loading").fadeOut();
|
||||||
|
|
||||||
|
toastr["error"](data);
|
||||||
|
|
||||||
|
if (errorCallback) errorCallback(data);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
return valid;
|
return valid;
|
||||||
}
|
}
|
||||||
@ -522,3 +522,36 @@ function alertPush() {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function salvaForm(button, form) {
|
||||||
|
return new Promise(function (resolve, reject) {
|
||||||
|
// Caricamento visibile nel pulsante
|
||||||
|
let restore = buttonLoading(button);
|
||||||
|
|
||||||
|
// Messaggio in caso di eventuali errori
|
||||||
|
let valid = $(form).parsley().validate();
|
||||||
|
if (!valid) {
|
||||||
|
swal({
|
||||||
|
type: "error",
|
||||||
|
title: globals.translations.ajax.missing.title,
|
||||||
|
text: globals.translations.ajax.missing.text,
|
||||||
|
});
|
||||||
|
|
||||||
|
resolve(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
submitAjax(form, {}, function (response) {
|
||||||
|
buttonRestore(button, restore);
|
||||||
|
resolve(true);
|
||||||
|
}, function (data) {
|
||||||
|
swal({
|
||||||
|
type: "error",
|
||||||
|
title: globals.translations.ajax.error.title,
|
||||||
|
text: globals.translations.ajax.error.text,
|
||||||
|
});
|
||||||
|
|
||||||
|
buttonRestore(button, restore);
|
||||||
|
resolve(false);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
@ -101,6 +101,16 @@ if (Auth::check()) {
|
|||||||
'.$key.': "'.addslashes($value).'",';
|
'.$key.': "'.addslashes($value).'",';
|
||||||
}
|
}
|
||||||
echo '
|
echo '
|
||||||
|
ajax: {
|
||||||
|
"missing": {
|
||||||
|
"title": "'.tr('Errore').'",
|
||||||
|
"text": "'.tr('Alcuni campi obbligatori non sono stati compilati correttamente').'",
|
||||||
|
},
|
||||||
|
"error": {
|
||||||
|
"title": "'.tr('Errore').'",
|
||||||
|
"text": "'.tr('Errore durante il salvataggio del record').'",
|
||||||
|
}
|
||||||
|
},
|
||||||
password: {
|
password: {
|
||||||
"wordMinLength": "'.tr('La password è troppo corta').'",
|
"wordMinLength": "'.tr('La password è troppo corta').'",
|
||||||
"wordMaxLength": "'.tr('La password è troppo lunga').'",
|
"wordMaxLength": "'.tr('La password è troppo lunga').'",
|
||||||
|
@ -287,7 +287,8 @@ if (!empty($rs)) {
|
|||||||
echo '
|
echo '
|
||||||
</table>';
|
</table>';
|
||||||
}
|
}
|
||||||
?>
|
echo '
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -295,52 +296,51 @@ if (!empty($rs)) {
|
|||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
|
|
||||||
<!-- RIGHE -->
|
<!-- RIGHE -->
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<h3 class="panel-title"><?php echo tr('Righe'); ?></h3>
|
<h3 class="panel-title">'.tr('Righe').'</h3>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="panel-body">
|
<div class="panel-body">';
|
||||||
<?php
|
|
||||||
if (!$block_edit) {
|
if (!$block_edit) {
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_articolo" data-toggle="tooltip" data-title="'.tr('Aggiungi articolo').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi articolo').'" onclick="gestioneArticolo(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Articolo').'
|
<i class="fa fa-plus"></i> '.tr('Articolo').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary"data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_barcode" data-toggle="tooltip" data-title="'.tr('Aggiungi articoli tramite barcode').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi articoli tramite barcode').'" onclick="gestioneBarcode(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Barcode').'
|
<i class="fa fa-plus"></i> '.tr('Barcode').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_riga" data-toggle="tooltip" data-title="'.tr('Aggiungi riga').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi riga').'" onclick="gestioneRiga(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Riga').'
|
<i class="fa fa-plus"></i> '.tr('Riga').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_descrizione" data-toggle="tooltip" data-title="'.tr('Aggiungi descrizione').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi descrizione').'" onclick="gestioneDescrizione(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Descrizione').'
|
<i class="fa fa-plus"></i> '.tr('Descrizione').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_sconto" data-toggle="tooltip" data-title="'.tr('Aggiungi sconto/maggiorazione').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi sconto/maggiorazione').'" onclick="gestioneSconto(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Sconto/maggiorazione').'
|
<i class="fa fa-plus"></i> '.tr('Sconto/maggiorazione').'
|
||||||
</a>';
|
</button>';
|
||||||
}
|
}
|
||||||
?>
|
|
||||||
|
echo '
|
||||||
<div class="clearfix"></div>
|
<div class="clearfix"></div>
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">';
|
||||||
<?php
|
|
||||||
|
|
||||||
include $docroot.'/modules/contratti/row-list.php';
|
include $structure->filepath('row-list.php');
|
||||||
|
|
||||||
?>
|
echo '
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -351,46 +351,76 @@ include $docroot.'/modules/contratti/row-list.php';
|
|||||||
{( "name": "log_email", "id_module": "$id_module$", "id_record": "$id_record$" )}
|
{( "name": "log_email", "id_module": "$id_module$", "id_record": "$id_record$" )}
|
||||||
|
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
$(document).ready(function() {
|
function gestioneArticolo(button) {
|
||||||
$('#data_accettazione').on("dp.change", function() {
|
gestioneRiga(button, "is_articolo");
|
||||||
if($(this).val()){
|
}
|
||||||
$('#data_rifiuto').attr('disabled', true);
|
|
||||||
}else{
|
|
||||||
$('#data_rifiuto').attr('disabled', false);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$('#data_rifiuto').on("dp.change", function() {
|
function gestioneBarcode(button) {
|
||||||
if($(this).val()){
|
gestioneRiga(button, "is_barcode");
|
||||||
$('#data_accettazione').attr('disabled', true);
|
}
|
||||||
}else{
|
|
||||||
$('#data_accettazione').attr('disabled', false);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$("#data_accettazione").trigger("dp.change");
|
function gestioneSconto(button) {
|
||||||
$("#data_rifiuto").trigger("dp.change");
|
gestioneRiga(button, "is_sconto");
|
||||||
|
}
|
||||||
|
|
||||||
|
function gestioneDescrizione(button) {
|
||||||
|
gestioneRiga(button, "is_descrizione");
|
||||||
|
}
|
||||||
|
|
||||||
|
async function gestioneRiga(button, options) {
|
||||||
|
// Salvataggio via AJAX
|
||||||
|
let valid = await salvaForm(button, $("#edit-form"));
|
||||||
|
|
||||||
|
// Apertura modal
|
||||||
|
if (valid) {
|
||||||
|
// Lettura titolo e chiusura tooltip
|
||||||
|
let title = $(button).tooltipster("content");
|
||||||
|
$(button).tooltipster("close")
|
||||||
|
|
||||||
|
// Apertura modal
|
||||||
|
options = options ? options : "is_riga";
|
||||||
|
openModal(title, "'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&" + options);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$(document).ready(function() {
|
||||||
|
$("#data_accettazione").on("dp.change", function() {
|
||||||
|
if($(this).val()){
|
||||||
|
$("#data_rifiuto").attr("disabled", true);
|
||||||
|
}else{
|
||||||
|
$("#data_rifiuto").attr("disabled", false);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
$('#idanagrafica_c').change(function() {
|
$("#data_rifiuto").on("dp.change", function() {
|
||||||
updateSelectOption("idanagrafica", $(this).val());
|
if($(this).val()){
|
||||||
session_set('superselect,idanagrafica', $(this).val(), 0);
|
$("#data_accettazione").attr("disabled", true);
|
||||||
|
}else{
|
||||||
|
$("#data_accettazione").attr("disabled", false);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
$("#idsede").selectReset();
|
$("#data_accettazione").trigger("dp.change");
|
||||||
});
|
$("#data_rifiuto").trigger("dp.change");
|
||||||
|
});
|
||||||
|
|
||||||
$('#codice_cig, #codice_cup').bind("keyup change", function(e) {
|
$("#idanagrafica_c").change(function() {
|
||||||
|
updateSelectOption("idanagrafica", $(this).val());
|
||||||
|
session_set("superselect,idanagrafica", $(this).val(), 0);
|
||||||
|
|
||||||
if ($('#codice_cig').val() == '' && $('#codice_cup').val() == '' ){
|
$("#idsede").selectReset();
|
||||||
$('#id_documento_fe').prop('required', false);
|
});
|
||||||
}else{
|
|
||||||
$('#id_documento_fe').prop('required', true);
|
|
||||||
}
|
|
||||||
|
|
||||||
});
|
$("#codice_cig, #codice_cup").bind("keyup change", function(e) {
|
||||||
</script>
|
|
||||||
|
if ($("#codice_cig").val() == "" && $("#codice_cup").val() == "" ){
|
||||||
|
$("#id_documento_fe").prop("required", false);
|
||||||
|
}else{
|
||||||
|
$("#id_documento_fe").prop("required", true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>';
|
||||||
|
|
||||||
<?php
|
|
||||||
// Collegamenti diretti
|
// Collegamenti diretti
|
||||||
// Fatture o interventi collegati a questo contratto
|
// Fatture o interventi collegati a questo contratto
|
||||||
$elementi = $dbo->fetchArray('SELECT 0 AS `codice`, `co_documenti`.`id` AS `id`, `co_documenti`.`numero` AS `numero`, `co_documenti`.`numero_esterno` AS `numero_esterno`, `co_documenti`.`data`, `co_tipidocumento`.`descrizione` AS `tipo_documento`, `co_tipidocumento`.`dir` AS `dir` FROM `co_documenti` JOIN `co_tipidocumento` ON `co_tipidocumento`.`id` = `co_documenti`.`idtipodocumento` WHERE `co_documenti`.`id` IN (SELECT `iddocumento` FROM `co_righe_documenti` WHERE `idcontratto` = '.prepare($id_record).')'.'
|
$elementi = $dbo->fetchArray('SELECT 0 AS `codice`, `co_documenti`.`id` AS `id`, `co_documenti`.`numero` AS `numero`, `co_documenti`.`numero_esterno` AS `numero_esterno`, `co_documenti`.`data`, `co_tipidocumento`.`descrizione` AS `tipo_documento`, `co_tipidocumento`.`dir` AS `dir` FROM `co_documenti` JOIN `co_tipidocumento` ON `co_tipidocumento`.`id` = `co_documenti`.`idtipodocumento` WHERE `co_documenti`.`id` IN (SELECT `iddocumento` FROM `co_righe_documenti` WHERE `idcontratto` = '.prepare($id_record).')'.'
|
||||||
|
@ -192,12 +192,18 @@ echo '
|
|||||||
|
|
||||||
echo '
|
echo '
|
||||||
<script>
|
<script>
|
||||||
function modificaRiga(button) {
|
async function modificaRiga(button) {
|
||||||
var riga = $(button).closest("tr");
|
var riga = $(button).closest("tr");
|
||||||
var id = riga.data("id");
|
var id = riga.data("id");
|
||||||
var type = riga.data("type");
|
var type = riga.data("type");
|
||||||
|
|
||||||
openModal("'.tr('Modifica riga').'", "'.$module->fileurl('row-edit.php').'?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&riga_id=" + id + "&riga_type=" + type)
|
// Salvataggio via AJAX
|
||||||
|
let valid = await salvaForm(button, $("#edit-form"));
|
||||||
|
|
||||||
|
// Apertura modal
|
||||||
|
if (valid) {
|
||||||
|
openModal("'.tr('Modifica riga').'", "'.$module->fileurl('row-edit.php').'?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&riga_id=" + id + "&riga_type=" + type);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function rimuoviRiga(button) {
|
function rimuoviRiga(button) {
|
||||||
|
@ -33,8 +33,6 @@ $_SESSION['superselect']['permetti_movimento_a_zero'] = ($dir == 'uscita' ? true
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
|
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
if ($dir == 'entrata') {
|
if ($dir == 'entrata') {
|
||||||
$rs2 = $dbo->fetchArray('SELECT piva, codice_fiscale, citta, indirizzo, cap, provincia FROM an_anagrafiche WHERE idanagrafica='.prepare($record['idanagrafica']));
|
$rs2 = $dbo->fetchArray('SELECT piva, codice_fiscale, citta, indirizzo, cap, provincia FROM an_anagrafiche WHERE idanagrafica='.prepare($record['idanagrafica']));
|
||||||
@ -322,29 +320,29 @@ if (!$block_edit) {
|
|||||||
</a>';
|
</a>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_articolo" data-toggle="tooltip" data-title="'.tr('Aggiungi articolo').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi articolo').'" onclick="gestioneArticolo(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Articolo').'
|
<i class="fa fa-plus"></i> '.tr('Articolo').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary"data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_barcode" data-toggle="tooltip" data-title="'.tr('Aggiungi articoli tramite barcode').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi articoli tramite barcode').'" onclick="gestioneBarcode(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Barcode').'
|
<i class="fa fa-plus"></i> '.tr('Barcode').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_riga" data-toggle="tooltip" data-title="'.tr('Aggiungi riga').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi riga').'" onclick="gestioneRiga(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Riga').'
|
<i class="fa fa-plus"></i> '.tr('Riga').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_descrizione" data-toggle="tooltip" data-title="'.tr('Aggiungi descrizione').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi descrizione').'" onclick="gestioneDescrizione(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Descrizione').'
|
<i class="fa fa-plus"></i> '.tr('Descrizione').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_sconto" data-toggle="tooltip" data-title="'.tr('Aggiungi sconto/maggiorazione').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi sconto/maggiorazione').'" onclick="gestioneSconto(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Sconto/maggiorazione').'
|
<i class="fa fa-plus"></i> '.tr('Sconto/maggiorazione').'
|
||||||
</a>';
|
</button>';
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
</div>
|
</div>
|
||||||
@ -355,8 +353,9 @@ if (!$block_edit) {
|
|||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
include $docroot.'/modules/ddt/row-list.php';
|
include $structure->filepath('row-list.php');
|
||||||
?>
|
|
||||||
|
echo '
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -367,15 +366,46 @@ include $docroot.'/modules/ddt/row-list.php';
|
|||||||
{( "name": "log_email", "id_module": "$id_module$", "id_record": "$id_record$" )}
|
{( "name": "log_email", "id_module": "$id_module$", "id_record": "$id_record$" )}
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
$('#idanagrafica').change(function() {
|
function gestioneArticolo(button) {
|
||||||
updateSelectOption("idanagrafica", $(this).val());
|
gestioneRiga(button, "is_articolo");
|
||||||
session_set('superselect,idanagrafica', $(this).val(), 0);
|
}
|
||||||
|
|
||||||
$("#idsede_<?php echo $dir == 'uscita' ? 'partenza' : 'destinazione'; ?>").selectReset();
|
function gestioneBarcode(button) {
|
||||||
});
|
gestioneRiga(button, "is_barcode");
|
||||||
</script>
|
}
|
||||||
|
|
||||||
|
function gestioneSconto(button) {
|
||||||
|
gestioneRiga(button, "is_sconto");
|
||||||
|
}
|
||||||
|
|
||||||
|
function gestioneDescrizione(button) {
|
||||||
|
gestioneRiga(button, "is_descrizione");
|
||||||
|
}
|
||||||
|
|
||||||
|
async function gestioneRiga(button, options) {
|
||||||
|
// Salvataggio via AJAX
|
||||||
|
let valid = await salvaForm(button, $("#edit-form"));
|
||||||
|
|
||||||
|
// Apertura modal
|
||||||
|
if (valid) {
|
||||||
|
// Lettura titolo e chiusura tooltip
|
||||||
|
let title = $(button).tooltipster("content");
|
||||||
|
$(button).tooltipster("close")
|
||||||
|
|
||||||
|
// Apertura modal
|
||||||
|
options = options ? options : "is_riga";
|
||||||
|
openModal(title, "'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&" + options);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$("#idanagrafica").change(function() {
|
||||||
|
updateSelectOption("idanagrafica", $(this).val());
|
||||||
|
session_set("superselect,idanagrafica", $(this).val(), 0);
|
||||||
|
|
||||||
|
$("#idsede_'.($dir == 'uscita' ? 'partenza' : 'destinazione').'").selectReset();
|
||||||
|
});
|
||||||
|
</script>';
|
||||||
|
|
||||||
<?php
|
|
||||||
// Collegamenti diretti
|
// Collegamenti diretti
|
||||||
// Fatture collegate a questo ddt
|
// Fatture collegate a questo ddt
|
||||||
$elementi = $dbo->fetchArray('SELECT `co_documenti`.*, `co_tipidocumento`.`descrizione` AS tipo_documento, `co_tipidocumento`.`dir` FROM `co_documenti` JOIN `co_tipidocumento` ON `co_tipidocumento`.`id` = `co_documenti`.`idtipodocumento` WHERE `co_documenti`.`id` IN (SELECT `iddocumento` FROM `co_righe_documenti` WHERE `idddt` = '.prepare($id_record).') ORDER BY `data`');
|
$elementi = $dbo->fetchArray('SELECT `co_documenti`.*, `co_tipidocumento`.`descrizione` AS tipo_documento, `co_tipidocumento`.`dir` FROM `co_documenti` JOIN `co_tipidocumento` ON `co_tipidocumento`.`id` = `co_documenti`.`idtipodocumento` WHERE `co_documenti`.`id` IN (SELECT `iddocumento` FROM `co_righe_documenti` WHERE `idddt` = '.prepare($id_record).') ORDER BY `data`');
|
||||||
|
@ -254,12 +254,18 @@ echo '
|
|||||||
|
|
||||||
echo '
|
echo '
|
||||||
<script>
|
<script>
|
||||||
function modificaRiga(button) {
|
async function modificaRiga(button) {
|
||||||
var riga = $(button).closest("tr");
|
var riga = $(button).closest("tr");
|
||||||
var id = riga.data("id");
|
var id = riga.data("id");
|
||||||
var type = riga.data("type");
|
var type = riga.data("type");
|
||||||
|
|
||||||
openModal("'.tr('Modifica riga').'", "'.$module->fileurl('row-edit.php').'?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&riga_id=" + id + "&riga_type=" + type)
|
// Salvataggio via AJAX
|
||||||
|
let valid = await salvaForm(button, $("#edit-form"));
|
||||||
|
|
||||||
|
// Apertura modal
|
||||||
|
if (valid) {
|
||||||
|
openModal("'.tr('Modifica riga').'", "'.$module->fileurl('row-edit.php').'?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&riga_id=" + id + "&riga_type=" + type);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function rimuoviRiga(button) {
|
function rimuoviRiga(button) {
|
||||||
|
@ -266,7 +266,6 @@ elseif ($record['stato'] == 'Bozza') {
|
|||||||
{[ "type": "select", "label": "<?php echo tr('Banca'); ?>", "name": "idbanca", "values": "query=SELECT id, CONCAT (nome, ' - ' , iban) AS descrizione FROM co_banche WHERE deleted_at IS NULL ORDER BY nome ASC", "value": "$idbanca$", "icon-after": "add|<?php echo Modules::get('Banche')['id']; ?>||", "extra": " <?php echo (intval($block_edit)) ? 'disabled' : ''; ?> " ]}
|
{[ "type": "select", "label": "<?php echo tr('Banca'); ?>", "name": "idbanca", "values": "query=SELECT id, CONCAT (nome, ' - ' , iban) AS descrizione FROM co_banche WHERE deleted_at IS NULL ORDER BY nome ASC", "value": "$idbanca$", "icon-after": "add|<?php echo Modules::get('Banche')['id']; ?>||", "extra": " <?php echo (intval($block_edit)) ? 'disabled' : ''; ?> " ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
if ($record['stato'] != 'Bozza' && $record['stato'] != 'Annullata') {
|
if ($record['stato'] != 'Bozza' && $record['stato'] != 'Annullata') {
|
||||||
$ricalcola = true;
|
$ricalcola = true;
|
||||||
@ -557,22 +556,21 @@ if ($tipodoc == 'Fattura accompagnatoria di vendita') {
|
|||||||
</div>
|
</div>
|
||||||
</div>';
|
</div>';
|
||||||
}
|
}
|
||||||
?>
|
|
||||||
|
echo '
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- RIGHE -->
|
<!-- RIGHE -->
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<h3 class="panel-title">Righe</h3>
|
<h3 class="panel-title">'.tr('Righe').'</h3>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
<div class="pull-left">
|
<div class="pull-left">';
|
||||||
<?php
|
|
||||||
if (!$block_edit) {
|
if (!$block_edit) {
|
||||||
if (empty($record['ref_documento'])) {
|
if (empty($record['ref_documento'])) {
|
||||||
if ($dir == 'entrata') {
|
if ($dir == 'entrata') {
|
||||||
@ -651,28 +649,29 @@ if (!$block_edit) {
|
|||||||
|
|
||||||
$articoli = $dbo->fetchNum($art_query);
|
$articoli = $dbo->fetchNum($art_query);
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary'.(!empty($articoli) ? '' : ' disabled').'" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_articolo" data-toggle="tooltip" data-title="'.tr('Aggiungi articolo').'">
|
<button class="btn btn-sm btn-primary tip'.(!empty($articoli) ? '' : ' disabled').'" title="'.tr('Aggiungi articolo').'" onclick="gestioneArticolo(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Articolo').'
|
<i class="fa fa-plus"></i> '.tr('Articolo').'
|
||||||
</a>';
|
</button>';
|
||||||
echo '
|
|
||||||
<a class="btn btn-sm btn-primary"data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_barcode" data-toggle="tooltip" data-title="'.tr('Aggiungi articoli tramite barcode').'">
|
|
||||||
<i class="fa fa-plus"></i> '.tr('Barcode').'
|
|
||||||
</a>';
|
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_riga" data-toggle="tooltip" data-title="'.tr('Aggiungi riga').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi articoli tramite barcode').'" onclick="gestioneBarcode(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Riga').'
|
<i class="fa fa-plus"></i> '.tr('Barcode').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_descrizione" data-toggle="tooltip" data-title="'.tr('Aggiungi descrizione').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi riga').'" onclick="gestioneRiga(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Descrizione').'
|
<i class="fa fa-plus"></i> '.tr('Riga').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_sconto" data-toggle="tooltip" data-title="'.tr('Aggiungi sconto/maggiorazione').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi descrizione').'" onclick="gestioneDescrizione(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Sconto/maggiorazione').'
|
<i class="fa fa-plus"></i> '.tr('Descrizione').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
|
echo '
|
||||||
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi sconto/maggiorazione').'" onclick="gestioneSconto(this)">
|
||||||
|
<i class="fa fa-plus"></i> '.tr('Sconto/maggiorazione').'
|
||||||
|
</button>';
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
</div>
|
</div>
|
||||||
@ -820,42 +819,39 @@ if (in_array($record[$field_name], $user->sedi)) {
|
|||||||
<?php
|
<?php
|
||||||
}
|
}
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<script>
|
<script>
|
||||||
|
function gestioneArticolo(button) {
|
||||||
|
gestioneRiga(button, "is_articolo");
|
||||||
|
}
|
||||||
|
|
||||||
$(".btn-sm[data-toggle=\"tooltip\"]").each(function() {
|
function gestioneBarcode(button) {
|
||||||
$(this).on("click", function() {
|
gestioneRiga(button, "is_barcode");
|
||||||
var form = $("#edit-form");
|
}
|
||||||
var btn = $(this);
|
|
||||||
|
|
||||||
var restore = buttonLoading(btn);
|
function gestioneSconto(button) {
|
||||||
|
gestioneRiga(button, "is_sconto");
|
||||||
|
}
|
||||||
|
|
||||||
var valid = submitAjax(form, {}, function() {
|
function gestioneDescrizione(button) {
|
||||||
buttonRestore(btn, restore);
|
gestioneRiga(button, "is_descrizione");
|
||||||
}, function() {
|
}
|
||||||
buttonRestore(btn, restore);
|
|
||||||
});
|
|
||||||
|
|
||||||
// Procedo al salvataggio solo se tutti i campi obbligatori sono compilati, altrimenti mostro avviso
|
async function gestioneRiga(button, options) {
|
||||||
//form.find("input:disabled, select:disabled").removeAttr("disabled");
|
// Salvataggio via AJAX
|
||||||
|
let valid = await salvaForm(button, $("#edit-form"));
|
||||||
|
|
||||||
if(!valid) {
|
// Apertura modal
|
||||||
swal({
|
if (valid) {
|
||||||
type: "error",
|
// Lettura titolo e chiusura tooltip
|
||||||
title: "'.tr('Errore').'",
|
let title = $(button).tooltipster("content");
|
||||||
text: "'.tr('Alcuni campi obbligatori non sono stati compilati correttamente').'.",
|
$(button).tooltipster("close")
|
||||||
});
|
|
||||||
|
|
||||||
$(document).one("show.bs.modal","#modals > div", function (e) {
|
// Apertura modal
|
||||||
return e.preventDefault();
|
options = options ? options : "is_riga";
|
||||||
});
|
openModal(title, "'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&" + options);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
$(document).one("show.bs.modal","#modals > div", function () {
|
|
||||||
buttonRestore(btn, restore);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
$(document).ready(function () {
|
$(document).ready(function () {
|
||||||
$("#data_registrazione").on("dp.change", function (e) {
|
$("#data_registrazione").on("dp.change", function (e) {
|
||||||
|
@ -353,13 +353,18 @@ echo '
|
|||||||
|
|
||||||
echo '
|
echo '
|
||||||
<script>
|
<script>
|
||||||
|
async function modificaRiga(button) {
|
||||||
function modificaRiga(button) {
|
|
||||||
var riga = $(button).closest("tr");
|
var riga = $(button).closest("tr");
|
||||||
var id = riga.data("id");
|
var id = riga.data("id");
|
||||||
var type = riga.data("type");
|
var type = riga.data("type");
|
||||||
|
|
||||||
openModal("'.tr('Modifica riga').'", "'.$module->fileurl('row-edit.php').'?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&riga_id=" + id + "&riga_type=" + type)
|
// Salvataggio via AJAX
|
||||||
|
let valid = await salvaForm(button, $("#edit-form"));
|
||||||
|
|
||||||
|
// Apertura modal
|
||||||
|
if (valid) {
|
||||||
|
openModal("'.tr('Modifica riga').'", "'.$module->fileurl('row-edit.php').'?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&riga_id=" + id + "&riga_type=" + type);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function rimuoviRiga(button) {
|
function rimuoviRiga(button) {
|
||||||
|
@ -677,7 +677,6 @@ class Fattura extends Document
|
|||||||
*/
|
*/
|
||||||
public function getBanca()
|
public function getBanca()
|
||||||
{
|
{
|
||||||
$result = [];
|
|
||||||
$riba = database()->fetchOne('SELECT riba FROM co_pagamenti WHERE id ='.prepare($this->idpagamento));
|
$riba = database()->fetchOne('SELECT riba FROM co_pagamenti WHERE id ='.prepare($this->idpagamento));
|
||||||
|
|
||||||
if ($riba['riba'] == 1) {
|
if ($riba['riba'] == 1) {
|
||||||
|
@ -180,30 +180,32 @@ echo '
|
|||||||
|
|
||||||
if (!$block_edit) {
|
if (!$block_edit) {
|
||||||
echo '
|
echo '
|
||||||
<div class="pull-left">
|
<div class="pull-left">';
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_articolo" data-toggle="tooltip" data-title="'.tr('Aggiungi articolo').'">
|
|
||||||
|
echo '
|
||||||
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi articolo').'" onclick="gestioneArticolo(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Articolo').'
|
<i class="fa fa-plus"></i> '.tr('Articolo').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary"data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_barcode" data-toggle="tooltip" data-title="'.tr('Aggiungi articoli tramite barcode').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi articoli tramite barcode').'" onclick="gestioneBarcode(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Barcode').'
|
<i class="fa fa-plus"></i> '.tr('Barcode').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_riga" data-toggle="tooltip" data-title="'.tr('Aggiungi riga').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi riga').'" onclick="gestioneRiga(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Riga').'
|
<i class="fa fa-plus"></i> '.tr('Riga').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_descrizione" data-toggle="tooltip" data-title="'.tr('Aggiungi descrizione').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi descrizione').'" onclick="gestioneDescrizione(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Descrizione').'
|
<i class="fa fa-plus"></i> '.tr('Descrizione').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_sconto" data-toggle="tooltip" data-title="'.tr('Aggiungi sconto/maggiorazione').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi sconto/maggiorazione').'" onclick="gestioneSconto(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Sconto/maggiorazione').'
|
<i class="fa fa-plus"></i> '.tr('Sconto/maggiorazione').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
</div>';
|
</div>';
|
||||||
@ -236,7 +238,58 @@ echo '
|
|||||||
|
|
||||||
{( "name": "filelist_and_upload", "id_module": "$id_module$", "id_record": "$id_record$" )}
|
{( "name": "filelist_and_upload", "id_module": "$id_module$", "id_record": "$id_record$" )}
|
||||||
|
|
||||||
{( "name": "log_email", "id_module": "$id_module$", "id_record": "$id_record$" )}';
|
{( "name": "log_email", "id_module": "$id_module$", "id_record": "$id_record$" )}
|
||||||
|
|
||||||
|
<script>
|
||||||
|
function gestioneArticolo(button) {
|
||||||
|
gestioneRiga(button, "is_articolo");
|
||||||
|
}
|
||||||
|
|
||||||
|
function gestioneBarcode(button) {
|
||||||
|
gestioneRiga(button, "is_barcode");
|
||||||
|
}
|
||||||
|
|
||||||
|
function gestioneSconto(button) {
|
||||||
|
gestioneRiga(button, "is_sconto");
|
||||||
|
}
|
||||||
|
|
||||||
|
function gestioneDescrizione(button) {
|
||||||
|
gestioneRiga(button, "is_descrizione");
|
||||||
|
}
|
||||||
|
|
||||||
|
async function gestioneRiga(button, options) {
|
||||||
|
// Salvataggio via AJAX
|
||||||
|
let valid = await salvaForm(button, $("#edit-form"));
|
||||||
|
|
||||||
|
// Apertura modal
|
||||||
|
if (valid) {
|
||||||
|
// Lettura titolo e chiusura tooltip
|
||||||
|
let title = $(button).tooltipster("content");
|
||||||
|
$(button).tooltipster("close")
|
||||||
|
|
||||||
|
// Apertura modal
|
||||||
|
options = options ? options : "is_riga";
|
||||||
|
openModal(title, "'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&" + options);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$("#idanagrafica").change(function() {
|
||||||
|
updateSelectOption("idanagrafica", $(this).val());
|
||||||
|
session_set("superselect,idanagrafica", $(this).val(), 0);
|
||||||
|
|
||||||
|
$("#idsede").selectReset();
|
||||||
|
});
|
||||||
|
|
||||||
|
$(document).ready(function() {
|
||||||
|
$("#codice_cig, #codice_cup").bind("keyup change", function(e) {
|
||||||
|
if ($("#codice_cig").val() == "" && $("#codice_cup").val() == "" ){
|
||||||
|
$("#id_documento_fe").prop("required", false);
|
||||||
|
} else{
|
||||||
|
$("#id_documento_fe").prop("required", true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>';
|
||||||
|
|
||||||
// Collegamenti diretti
|
// Collegamenti diretti
|
||||||
// Fatture o ddt collegati a questo ordine
|
// Fatture o ddt collegati a questo ordine
|
||||||
@ -296,25 +349,3 @@ if (!empty($elementi)) {
|
|||||||
<i class="fa fa-trash"></i> <?php echo tr('Elimina'); ?>
|
<i class="fa fa-trash"></i> <?php echo tr('Elimina'); ?>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
<script>
|
|
||||||
$('#idanagrafica').change(function() {
|
|
||||||
updateSelectOption("idanagrafica", $(this).val());
|
|
||||||
session_set('superselect,idanagrafica', $(this).val(), 0);
|
|
||||||
|
|
||||||
$("#idsede").selectReset();
|
|
||||||
});
|
|
||||||
|
|
||||||
$(document).ready(function() {
|
|
||||||
|
|
||||||
$('#codice_cig, #codice_cup').bind("keyup change", function(e) {
|
|
||||||
|
|
||||||
if ($('#codice_cig').val() == '' && $('#codice_cup').val() == '' ){
|
|
||||||
$('#id_documento_fe').prop('required', false);
|
|
||||||
}else{
|
|
||||||
$('#id_documento_fe').prop('required', true);
|
|
||||||
}
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
@ -235,13 +235,18 @@ echo '
|
|||||||
|
|
||||||
echo '
|
echo '
|
||||||
<script>
|
<script>
|
||||||
|
async function modificaRiga(button) {
|
||||||
function modificaRiga(button) {
|
|
||||||
var riga = $(button).closest("tr");
|
var riga = $(button).closest("tr");
|
||||||
var id = riga.data("id");
|
var id = riga.data("id");
|
||||||
var type = riga.data("type");
|
var type = riga.data("type");
|
||||||
|
|
||||||
openModal("'.tr('Modifica riga').'", "'.$module->fileurl('row-edit.php').'?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&riga_id=" + id + "&riga_type=" + type)
|
// Salvataggio via AJAX
|
||||||
|
let valid = await salvaForm(button, $("#edit-form"));
|
||||||
|
|
||||||
|
// Apertura modal
|
||||||
|
if (valid) {
|
||||||
|
openModal("'.tr('Modifica riga').'", "'.$module->fileurl('row-edit.php').'?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&riga_id=" + id + "&riga_type=" + type);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function rimuoviRiga(button) {
|
function rimuoviRiga(button) {
|
||||||
|
@ -190,114 +190,138 @@ echo '
|
|||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
|
<?php
|
||||||
|
|
||||||
|
echo '
|
||||||
<!-- RIGHE -->
|
<!-- RIGHE -->
|
||||||
<div class="panel panel-primary">
|
<div class="panel panel-primary">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<h3 class="panel-title">Righe</h3>
|
<h3 class="panel-title">'.tr('Righe').'</h3>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="panel-body">
|
<div class="panel-body">';
|
||||||
<?php
|
|
||||||
|
|
||||||
if (!$block_edit) {
|
if (!$block_edit) {
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_articolo" data-toggle="tooltip" data-title="'.tr('Aggiungi articolo').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi articolo').'" onclick="gestioneArticolo(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Articolo').'
|
<i class="fa fa-plus"></i> '.tr('Articolo').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary"data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_barcode" data-toggle="tooltip" data-title="'.tr('Aggiungi articoli tramite barcode').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi articoli tramite barcode').'" onclick="gestioneBarcode(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Barcode').'
|
<i class="fa fa-plus"></i> '.tr('Barcode').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_riga" data-toggle="tooltip" data-title="'.tr('Aggiungi riga').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi riga').'" onclick="gestioneRiga(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Riga').'
|
<i class="fa fa-plus"></i> '.tr('Riga').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_descrizione" data-toggle="tooltip" data-title="'.tr('Aggiungi descrizione').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi descrizione').'" onclick="gestioneDescrizione(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Descrizione').'
|
<i class="fa fa-plus"></i> '.tr('Descrizione').'
|
||||||
</a>';
|
</button>';
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<a class="btn btn-sm btn-primary" data-href="'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&is_sconto" data-toggle="tooltip" data-title="'.tr('Aggiungi sconto/maggiorazione').'">
|
<button class="btn btn-sm btn-primary tip" title="'.tr('Aggiungi sconto/maggiorazione').'" onclick="gestioneSconto(this)">
|
||||||
<i class="fa fa-plus"></i> '.tr('Sconto/maggiorazione').'
|
<i class="fa fa-plus"></i> '.tr('Sconto/maggiorazione').'
|
||||||
</a>';
|
</button>';
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
echo '
|
||||||
|
|
||||||
<!--div class="pull-right">
|
|
||||||
{( "name": "button", "type": "print", "id_module": "<?php echo $id_module; ?>", "id_record": "<?php echo $id_record; ?>" )}
|
|
||||||
</div-->
|
|
||||||
|
|
||||||
<div class="clearfix"></div>
|
<div class="clearfix"></div>
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">';
|
||||||
<?php
|
|
||||||
|
|
||||||
include $docroot.'/modules/preventivi/row-list.php';
|
include $structure->filepath('row-list.php');
|
||||||
|
|
||||||
?>
|
echo '
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script type="text/javascript">
|
|
||||||
$(document).ready(function() {
|
|
||||||
$('#idanagrafica').change(function() {
|
|
||||||
updateSelectOption("idanagrafica", $(this).val());
|
|
||||||
session_set('superselect,idanagrafica', $(this).val(), 0);
|
|
||||||
|
|
||||||
$("#idsede").selectReset();
|
|
||||||
});
|
|
||||||
|
|
||||||
$('#data_accettazione').on("dp.change", function() {
|
|
||||||
if($(this).val()){
|
|
||||||
$('#data_rifiuto').attr('disabled', true);
|
|
||||||
}else{
|
|
||||||
$('#data_rifiuto').attr('disabled', false);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$('#data_rifiuto').on("dp.change", function() {
|
|
||||||
if($(this).val()){
|
|
||||||
$('#data_accettazione').attr('disabled', true);
|
|
||||||
}else{
|
|
||||||
$('#data_accettazione').attr('disabled', false);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$("#data_accettazione").trigger("dp.change");
|
|
||||||
$("#data_rifiuto").trigger("dp.change");
|
|
||||||
|
|
||||||
$('#codice_cig, #codice_cup').bind("keyup change", function(e) {
|
|
||||||
|
|
||||||
if ($('#codice_cig').val() == '' && $('#codice_cup').val() == '' ){
|
|
||||||
$('#id_documento_fe').prop('required', false);
|
|
||||||
}else{
|
|
||||||
$('#id_documento_fe').prop('required', true);
|
|
||||||
}
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
{( "name": "filelist_and_upload", "id_module": "$id_module$", "id_record": "$id_record$" )}
|
{( "name": "filelist_and_upload", "id_module": "$id_module$", "id_record": "$id_record$" )}
|
||||||
|
|
||||||
{( "name": "log_email", "id_module": "$id_module$", "id_record": "$id_record$" )}
|
{( "name": "log_email", "id_module": "$id_module$", "id_record": "$id_record$" )}
|
||||||
|
|
||||||
<?php
|
<script type="text/javascript">
|
||||||
|
function gestioneArticolo(button) {
|
||||||
|
gestioneRiga(button, "is_articolo");
|
||||||
|
}
|
||||||
|
|
||||||
|
function gestioneBarcode(button) {
|
||||||
|
gestioneRiga(button, "is_barcode");
|
||||||
|
}
|
||||||
|
|
||||||
|
function gestioneSconto(button) {
|
||||||
|
gestioneRiga(button, "is_sconto");
|
||||||
|
}
|
||||||
|
|
||||||
|
function gestioneDescrizione(button) {
|
||||||
|
gestioneRiga(button, "is_descrizione");
|
||||||
|
}
|
||||||
|
|
||||||
|
async function gestioneRiga(button, options) {
|
||||||
|
// Salvataggio via AJAX
|
||||||
|
let valid = await salvaForm(button, $("#edit-form"));
|
||||||
|
|
||||||
|
// Apertura modal
|
||||||
|
if (valid) {
|
||||||
|
// Lettura titolo e chiusura tooltip
|
||||||
|
let title = $(button).tooltipster("content");
|
||||||
|
$(button).tooltipster("close")
|
||||||
|
|
||||||
|
// Apertura modal
|
||||||
|
options = options ? options : "is_riga";
|
||||||
|
openModal(title, "'.$structure->fileurl('row-add.php').'?id_module='.$id_module.'&id_record='.$id_record.'&" + options);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$(document).ready(function() {
|
||||||
|
$("#idanagrafica").change(function() {
|
||||||
|
updateSelectOption("idanagrafica", $(this).val());
|
||||||
|
session_set("superselect,idanagrafica", $(this).val(), 0);
|
||||||
|
|
||||||
|
$("#idsede").selectReset();
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#data_accettazione").on("dp.change", function() {
|
||||||
|
if($(this).val()){
|
||||||
|
$("#data_rifiuto").attr("disabled", true);
|
||||||
|
}else{
|
||||||
|
$("#data_rifiuto").attr("disabled", false);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#data_rifiuto").on("dp.change", function() {
|
||||||
|
if($(this).val()){
|
||||||
|
$("#data_accettazione").attr("disabled", true);
|
||||||
|
}else{
|
||||||
|
$("#data_accettazione").attr("disabled", false);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#data_accettazione").trigger("dp.change");
|
||||||
|
$("#data_rifiuto").trigger("dp.change");
|
||||||
|
|
||||||
|
$("#codice_cig, #codice_cup").bind("keyup change", function(e) {
|
||||||
|
|
||||||
|
if ($("#codice_cig").val() == "" && $("#codice_cup").val() == "" ){
|
||||||
|
$("#id_documento_fe").prop("required", false);
|
||||||
|
}else{
|
||||||
|
$("#id_documento_fe").prop("required", true);
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
</script>';
|
||||||
|
|
||||||
//fatture, ordini collegate a questo preventivo
|
//fatture, ordini collegate a questo preventivo
|
||||||
$elementi = $dbo->fetchArray('SELECT `co_documenti`.`id`, `co_documenti`.`data`, `co_documenti`.`numero`, `co_documenti`.`numero_esterno`, `co_tipidocumento`.`descrizione` AS tipo_documento, `co_tipidocumento`.`dir` FROM `co_documenti` JOIN `co_tipidocumento` ON `co_tipidocumento`.`id` = `co_documenti`.`idtipodocumento` WHERE `co_documenti`.`id` IN (SELECT `iddocumento` FROM `co_righe_documenti` WHERE `idpreventivo` = '.prepare($id_record).')
|
$elementi = $dbo->fetchArray('SELECT `co_documenti`.`id`, `co_documenti`.`data`, `co_documenti`.`numero`, `co_documenti`.`numero_esterno`, `co_tipidocumento`.`descrizione` AS tipo_documento, `co_tipidocumento`.`dir` FROM `co_documenti` JOIN `co_tipidocumento` ON `co_tipidocumento`.`id` = `co_documenti`.`idtipodocumento` WHERE `co_documenti`.`id` IN (SELECT `iddocumento` FROM `co_righe_documenti` WHERE `idpreventivo` = '.prepare($id_record).')
|
||||||
|
|
||||||
|
@ -218,13 +218,18 @@ echo '
|
|||||||
|
|
||||||
echo '
|
echo '
|
||||||
<script>
|
<script>
|
||||||
|
async function modificaRiga(button) {
|
||||||
function modificaRiga(button) {
|
|
||||||
var riga = $(button).closest("tr");
|
var riga = $(button).closest("tr");
|
||||||
var id = riga.data("id");
|
var id = riga.data("id");
|
||||||
var type = riga.data("type");
|
var type = riga.data("type");
|
||||||
|
|
||||||
openModal("'.tr('Modifica riga').'", "'.$module->fileurl('row-edit.php').'?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&riga_id=" + id + "&riga_type=" + type)
|
// Salvataggio via AJAX
|
||||||
|
let valid = await salvaForm(button, $("#edit-form"));
|
||||||
|
|
||||||
|
// Apertura modal
|
||||||
|
if (valid) {
|
||||||
|
openModal("'.tr('Modifica riga').'", "'.$module->fileurl('row-edit.php').'?id_module=" + globals.id_module + "&id_record=" + globals.id_record + "&riga_id=" + id + "&riga_type=" + type);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function rimuoviRiga(button) {
|
function rimuoviRiga(button) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user