<?php $upload_max_filesize = ini_get("upload_max_filesize"); $post_max_size = ini_get("post_max_size"); $upload_max_filesize = str_replace( "k", "000", $upload_max_filesize ); $upload_max_filesize = str_replace( "M", "000000", $upload_max_filesize ); $post_max_size = str_replace( "k", "000", $post_max_size ); $post_max_size = str_replace( "M", "000000", $post_max_size ); //Dimensione minima: 12MB $alerts = ''; if( $upload_max_filesize < 16000000 ){ $alerts .= "Devi modificare il tuo <b>php.ini</b> impostando <b>upload_max_filesize</b> almeno a 16MB altrimenti non riuscirai a caricare l’aggiornamento.<br>"; } if( $post_max_size < 16000000 ){ $alerts .= "Devi modificare il tuo <b>php.ini</b> impostando <b>post_max_size</b> almeno a 16MB altrimenti non riuscirai a caricare l’aggiornamento.<br>"; } if( strlen($alerts) > 0 ){ echo "<div class='alert alert-warning'>".$alerts."</div>\n"; } //UPLOAD MODULO if( get_var("Attiva aggiornamenti") ){ echo "<br><br>\n"; echo "<form action=\"".$rootdir."/controller.php?id_module=".$id_module."\" method=\"post\" enctype=\"multipart/form-data\" class='form-inline' id='new-module'>\n"; echo " <input type='hidden' name='op' value='upload'>\n"; echo " <label>Carica un </label>\n"; echo " <select class=\"form-control\" name=\"type\">\n"; echo " <option value=\"update\">Aggiornamento Versione</option>\n"; echo " <option value=\"new\">Nuovo/Aggiorna Modulo</option>\n"; echo " </select>\n"; echo " <br><br>\n\n"; echo " <label><input type=\"file\" name=\"blob\"></label><button type='button' class='btn btn-app' onclick=\"if( confirm('Avviare la procedura?') ){ $('#new-module').submit(); }\"><i class='fa fa-upload'></i> Carica...</button>\n"; echo "</form><br>\n\n"; } /* Elenco moduli installati */ $query = "SELECT * FROM zz_modules WHERE level=0 ORDER BY `order` ASC"; $rs = $dbo->fetchArray($query); echo "<div class='row'>\n"; echo " <div class='col-md-12 col-lg-6'>\n"; echo " <h3>Moduli installati</h3>\n"; echo " <table class='table table-hover table-bordered table-condensed'>\n"; echo " <tr><th>Nome</th>\n"; echo " <th width='50'>Versione</th>\n"; echo " <th width='30'>Stato</th>\n"; echo " <th width='30'>Compatibilità</th>\n"; echo " <th width='20'></th></tr>\n"; $osm_version = getVersion(); for( $m=0; $m<sizeof($rs); $m++ ){ //Prima di cambiare modulo verifico se ci sono sottomoduli if( $m > 0 && $rs[$m]['id'] != $rs[$m-1]['id'] ){ $query2 = "SELECT * FROM zz_modules WHERE level=1 AND parent='".$rs[$m-1]['id']."' ORDER BY `order` ASC"; $rs2 = $dbo->fetchArray($query2); for( $m2=0; $m2<sizeof($rs2); $m2++ ){ $compatibility = explode( ',', $rs2[$m2]['compatibility'] ); /* Controllo per ogni versione se la regexp combacia per dire che è compatibile o meno */ for( $i=0; $i<sizeof($compatibility); $i++ ){ if( preg_match( "/".$compatibility[$i]."/", $osm_version ) ){ $compatible = " <i class='fa fa-check-circle text-success' data-toggle='tooltip' title='Compatibile'></i>"; $class = "success"; } else{ $compatible = " <i class='fa fa-warning text-danger' data-toggle='tooltip' title='NON compabitile! Questo modulo è compatibile solo con queste versioni: ".$rs2[$m2]['compatibility']."'></i>"; $class = "danger"; } } //STATO if( $rs2[$m2]['enabled'] ){ //Tooltip solo se non è il modulo "Aggiornamenti" if( $rs2[$m2]['name']!='Aggiornamenti' ){ $stato = " <i class='fa fa-cog fa-spin text-success' data-toggle='tooltip' title=\"Abilitato. Clicca per disabilitarlo...\"></i>"; } else{ $stato = " <i class='fa fa-cog fa-spin text-success' data-toggle='tooltip' title=\"Abilitato\"></i>"; } } else{ $stato = " <i class='fa fa-cog text-warning' data-toggle='tooltip' title=\"Non abilitato\"></i>"; if( $class != 'danger' ){ $class = 'warning'; } } //NOME echo " <tr class='".$class."'><td><small> - ".$rs2[$m2]['name']."</small></td>\n"; echo " <td align='right'>".$rs2[$m2]['version']."</td>\n"; //Possibilità di disabilitare o abilitare i moduli tranne quello degli aggiornamenti if( $rs2[$m2]['name'] != 'Aggiornamenti' ){ if( $rs2[$m2]['enabled'] ){ $stato = " <a href='javascript:;' onclick=\"if( confirm('Disabilitare questo modulo?') ){ $.post( '".$rootdir."/editor.php?id_module=".$id_module."', { op: 'disable', id: '".$rs2[$m2]['id']."' }, function(response){ location.href='".$rootdir."/controller.php?id_module=".$id_module."'; }); }\">".$stato."</a>\n"; } else{ $stato = " <a href='javascript:;' onclick=\"if( confirm('Abilitare questo modulo?') ){ $.post( '".$rootdir."/editor.php?id_module=".$id_module."', { op: 'enable', id: '".$rs2[$m2]['id']."' }, function(response){ location.href='".$rootdir."/controller.php?id_module=".$id_module."'; }); }\"\">".$stato."</a>\n"; } } echo " <td align='center'>".$stato."</td>\n"; //COMPATIBILITA' echo " <td align='center'>".$compatible."</td>\n"; //Possibilità di disinstallare solo se non di default echo " <td>\n"; if( !$rs2[$m2]['default'] ){ echo " <a href=\"javascript:;\" data-toggle='tooltip' title=\"Disinstalla...\" onclick=\"if( confirm('Vuoi disinstallare questo modulo? Tutti i dati salvati andranno persi!') ){ if( confirm('Sei veramente sicuro??') ){ $.post( '".$rootdir."/editor.php?id_module=".$id_module."', { op: 'uninstall', id: '".$rs2[$m2]['id']."' }, function(response){ location.href='".$rootdir."/controller.php?id_module=".$id_module."'; }); } }\"><i class='fa fa-trash-o'></i></a>"; } echo " </td></tr>\n"; } } $compatibility = explode( ',', $rs[$m]['compatibility'] ); /* Controllo per ogni versione se la regexp combacia per dire che è compatibile o meno */ for( $i=0; $i<sizeof($compatibility); $i++ ){ if( preg_match( "/".$compatibility[$i]."/", $osm_version ) ){ $compatible = " <i class='fa fa-check-circle text-success' data-toggle='tooltip' title='Compatibile'></i>"; $class = "success"; } else{ $compatible = " <i class='fa fa-warning text-danger' data-toggle='tooltip' title='NON compabitile! Questo modulo è compatibile solo con queste versioni: ".$rs[$m]['compatibility']."'></i>"; $class = "danger"; } } //STATO if( $rs[$m]['enabled'] ){ //Tooltip solo se non è il modulo "Aggiornamenti" if( $rs[$m]['name']!='Aggiornamenti' ){ $stato = " <i class='fa fa-cog fa-spin text-success' data-toggle='tooltip' title=\"Abilitato. Clicca per disabilitarlo...\"></i>"; } else{ $stato = " <i class='fa fa-cog fa-spin text-success' data-toggle='tooltip' title=\"Abilitato\"></i>"; } } else{ $stato = " <i class='fa fa-cog text-warning' data-toggle='tooltip' title=\"Non abilitato\"></i>"; if( $class != 'danger' ){ $class = 'warning'; } } //NOME echo " <tr class='".$class."'><td>".$rs[$m]['name']."</td>\n"; echo " <td align='right'>".$rs[$m]['version']."</td>\n"; //Possibilità di disabilitare o abilitare i moduli tranne quello degli aggiornamenti if( $rs[$m]['name'] != 'Aggiornamenti' ){ if( $rs[$m]['enabled'] ){ $stato = " <a href='javascript:;' onclick=\"if( confirm('Disabilitare questo modulo?') ){ $.post( '".$rootdir."/editor.php?id_module=".$id_module."', { op: 'disable', id: '".$rs[$m]['id']."' }, function(response){ location.href='".$rootdir."/controller.php?id_module=".$id_module."'; }); }\">".$stato."</a>\n"; } else{ $stato = " <a href='javascript:;' onclick=\"if( confirm('Abilitare questo modulo?') ){ $.post( '".$rootdir."/editor.php?id_module=".$id_module."', { op: 'enable', id: '".$rs[$m]['id']."' }, function(response){ location.href='".$rootdir."/controller.php?id_module=".$id_module."'; }); }\"\">".$stato."</a>\n"; } } echo " <td align='center'>".$stato."</td>\n"; //COMPATIBILITA' echo " <td align='center'>".$compatible."</td>\n"; //Possibilità di disinstallare solo se non di default echo " <td>\n"; if( !$rs[$m]['default'] ){ echo " <a href=\"javascript:;\" data-toggle='tooltip' title=\"Disinstalla...\" onclick=\"if( confirm('Vuoi disinstallare questo modulo? Tutti i dati salvati andranno persi!') ){ if( confirm('Sei veramente sicuro??') ){ $.post( '".$rootdir."/editor.php?id_module=".$id_module."', { op: 'uninstall', id: '".$rs[$m]['id']."' }, function(response){ location.href='".$rootdir."/controller.php?id_module=".$id_module."'; }); } }\"><i class='fa fa-trash-o'></i></a>"; } echo " </td></tr>\n"; } echo " </table>\n"; echo " </div>\n"; ?>