<?php include_once(__DIR__."/core.php"); // Lettura parametri iniziali modulo $results = $dbo->fetchArray("SELECT name, module_dir FROM zz_modules WHERE id=" . prepare($id_module)); $result = $results[0]; $modulo_custom=get_var("Cartella Custom"); $module_dir = $result['module_dir']; if (file_exists($docroot . "/include/".$modulo_custom."/top.php")) { include ($docroot . "/include/".$modulo_custom."/top.php"); } else { include ($docroot . "/include/top.php"); } if ($module_dir != '') { // Caricamento helper modulo (verifico se ci sono helper personalizzati) if (file_exists($docroot . "/modules/" . $module_dir . "/".$modulo_custom."/modutil.php")) { include ($docroot . "/modules/" . $module_dir . "/".$modulo_custom."/modutil.php"); } else if (file_exists($docroot . "/modules/" . $module_dir . "/modutil.php")) { include ($docroot . "/modules/" . $module_dir . "/modutil.php"); } // Inclusione file init del modulo if (file_exists($docroot . "/modules/" . $module_dir . "/".$modulo_custom."/init.php")) { include ($docroot . "/modules/" . $module_dir . "/".$modulo_custom."/init.php"); } else if (file_exists($docroot . "/modules/" . $module_dir . "/init.php")) { include ($docroot . "/modules/" . $module_dir . "/init.php"); } if (file_exists($docroot . "/modules/" . $module_dir . "/".$modulo_custom."/actions.php")) { include ($docroot . "/modules/" . $module_dir . "/".$modulo_custom."/actions.php"); } else if (file_exists($docroot . "/modules/" . $module_dir . "/actions.php")){ include ($docroot . "/modules/" . $module_dir . "/actions.php"); } // cerco moduli actions aggiuntivi $query_moduli_add = "SELECT * FROM zz_modules_add WHERE module_dir_from='$module_dir'"; $rs_modadd = $dbo->fetchArray($query_moduli_add); for( $i=0; $i<sizeof($rs_modadd); $i++ ){ if (file_exists($docroot . "/modules/" . $rs_modadd[$i]['module_dir_to'].$rs_modadd[$i]['script'])){ include ($docroot . "/modules/" . $rs_modadd[$i]['module_dir_to'].$rs_modadd[$i]['script']); } } if (sizeof($records) == 0) { echo ' <p>Record non trovato.</p>'; } else { /* * Lettura eventuali plugins modulo da inserire come tab */ echo ' <div class="nav-tabs-custom"> <ul class="nav nav-tabs pull-right" role="tablist"> <li class="pull-left active header">'; // Verifico se ho impostato un nome modulo personalizzato $name = ($modules_info[$result["name"]]['name2'] != '') ? $modules_info[$result["name"]]['name2'] : $modules_info[$result["name"]]['name']; echo ' <a data-toggle="tab" href="#tab_1"><i class="' . $modules_info[$result["name"]]['icon'] . '"></i> ' . $name . '</a> <a class="back-btn" href="controller.php?id_module=' . $id_module . '"><i class="fa fa-chevron-left"></i> ' . _("Torna all'elenco") . '</a> </li>'; $resultplugins = $dbo->fetchArray("SELECT *, (SELECT module_dir FROM zz_modules WHERE id=idmodule_from) AS module_dir FROM zz_modules_plugins WHERE idmodule_to=" . prepare($id_module) . " AND position='tab'"); for($n_plugins = 0; $n_plugins < sizeof($resultplugins); $n_plugins ++) { echo ' <li> <a data-toggle="tab" href="#tab_' . ($n_plugins + 2) . '">' . $resultplugins[$n_plugins]['name'] . '</a> </li>'; } $resultplugins_add = $dbo->fetchArray("SELECT *, (SELECT module_dir FROM zz_modules WHERE id=idmodule_from) AS module_dir FROM zz_plugins WHERE idmodule_to=" . prepare($id_module) . " AND position='tab'"); for($n_plugins = 0; $n_plugins < sizeof($resultplugins_add); $n_plugins ++) { echo ' <li> <a data-toggle="tab" href="#tab_' . ($n_plugins + 2002) . '">' . $resultplugins_add[$n_plugins]['name'] . '</a> </li>'; $dbo->query("UPDATE `zz_plugins` SET n_tab='".($n_plugins + 2002)."' where id='".$resultplugins_add[$n_plugins]['id']."'"); } echo ' </ul> <div class="tab-content"> <div id="tab_1" class="tab-pane active">'; // Lettura template modulo (verifico se ci sono template personalizzati, altrimenti uso quello base) if (file_exists($docroot . "/modules/" . $module_dir . "/".$modulo_custom."/edit.php")) { include ($docroot . "/modules/" . $module_dir . "/".$modulo_custom."/edit.php"); } else if (file_exists($docroot . "/modules/" . $module_dir . "/".$modulo_custom."/edit.html")) { include ($docroot . "/modules/" . $module_dir . "/".$modulo_custom."/edit.html"); } else if (file_exists($docroot . "/modules/" . $module_dir . "/edit.php")) { include ($docroot . "/modules/" . $module_dir . "/edit.php"); } echo ' </div>'; for($n_plugins = 0; $n_plugins < sizeof($resultplugins); $n_plugins ++) { echo ' <div id="tab_' . ($n_plugins + 2) . '" class="tab-pane">'; // Inclusione di eventuale plugin personalizzato if (file_exists($docroot . "/modules/" . $resultplugins[$n_plugins]['module_dir'] . "/plugins/".$modulo_custom."/" . $resultplugins[$n_plugins]['script'])) { include ($docroot . "/modules/" . $resultplugins[$n_plugins]['module_dir'] . "/plugins/".$modulo_custom."/" . $resultplugins[$n_plugins]['script']); } else if (file_exists($docroot . "/modules/" . $resultplugins[$n_plugins]['module_dir'] . "/plugins/" . $resultplugins[$n_plugins]['script'])) { include ($docroot . "/modules/" . $resultplugins[$n_plugins]['module_dir'] . "/plugins/" . $resultplugins[$n_plugins]['script']); } echo ' </div>'; } // plugins addonli for($n_plugins = 0; $n_plugins < sizeof($resultplugins_add); $n_plugins ++) { echo ' <div id="tab_' . ($n_plugins + 2002) . '" class="tab-pane">'; // Inclusione di eventuale plugin personalizzato if (file_exists($docroot . "/modules_add/" . $resultplugins_add[$n_plugins]['path'] . "/".$modulo_custom."/" . $resultplugins_add[$n_plugins]['script'])) { include ($docroot . "/modules_add/" . $resultplugins_add[$n_plugins]['path'] . "/".$modulo_custom."/" . $resultplugins_add[$n_plugins]['script']); } else if (file_exists($docroot . "/modules_add/" . $resultplugins_add[$n_plugins]['path'] . "/" . $resultplugins_add[$n_plugins]['script'])) { include ($docroot . "/modules_add/" . $resultplugins_add[$n_plugins]['path'] . "/" . $resultplugins_add[$n_plugins]['script']); } echo ' </div>'; } echo ' </div> </div>'; } // Scelta del redirect dopo un submit if (filter('backto') == 'record-edit') { header("Location: " . $rootdir . "/editor.php?id_module=" . $id_module . "&id_record=" . $id_record); exit(); } else if (sizeof($_POST) > 0) { header("Location: " . $rootdir . "/controller.php?id_module=" . $id_module); exit(); } echo ' <hr> <a href="controller.php?id_module=' . $id_module . '"><i class="fa fa-chevron-left"></i> ' . _("Indietro") . '</a>'; /** * Widget laterali */ echo ' </div> <div class="col-xs-12 col-md-12">'; $Widget->addModuleWidgets($id_module, 'editor_right'); echo ' </div>'; } ?> <script> <?php // Se l'utente ha i permessi in sola lettura per il modulo, converto tutti i campi di testo in span $result = $dbo->fetchArray("SELECT permessi FROM zz_permessi INNER JOIN zz_gruppi ON zz_permessi.idgruppo=zz_gruppi.id WHERE nome=\"" . $_SESSION['gruppo'] . "\" AND idmodule=\"" . $id_module . "\""); if ($result['permessi'] == 'r') { ?> $(document).ready( function(){ $('input, textarea, select', 'section.content').attr('readonly', 'true'); $('select, input[type="checkbox"]').prop('disabled', true); $('a.btn, button, input[type=button], input[type=submit]', 'section.content').hide(); $('a.btn-info, button.btn-info, input[type=button].btn-info', 'section.content').show(); }); <?php } ?> var content_was_modified = false; //controllo se digito qualche valore o cambio qualche select $("input, textarea, select").bind("change paste keyup", function(event) { if( event.keyCode >= 32 ){ content_was_modified = true; } }); //tolgo il controllo se sto salvando $(".btn-success, button[type=submit]").bind("click", function() { content_was_modified = false; }); // questo controllo blocca il modulo vendita al banco, dopo la lettura con barcode, appare il messaggio di conferma window.onbeforeunload = function(){ if(content_was_modified) { return 'Uscire senza salvare?'; } }; <?php if(get_var("Attiva sessioni avanzate")) {?> function getActiveUsers(){ $.getJSON('<?php echo $rootdir; ?>/call.php', { id_module: <?php echo $id_module; ?>, id_record: <?php echo $id_record; ?> }, function(data) { if (data.length != 0) { $(".info-active").removeClass("hide"); $(".info-active .list").html(""); $.each( data, function( key, val ) { $(".info-active .list").append("<li>"+val.username+"</li>"); }); } else $(".info-active").addClass("hide"); }); } getActiveUsers(); setInterval(getActiveUsers, <?php echo (get_var("Timeout sessioni attive")*1000); ?>); <?php }?> </script> <?php if (file_exists($docroot . "/include/".$modulo_custom."/bottom.php")) { include ($docroot . "/include/".$modulo_custom."/bottom.php"); } else { include ($docroot . "/include/bottom.php"); } ?>