. */ $skip_permissions = true; include_once __DIR__.'/core.php'; use Carbon\Carbon; $op = filter('op'); $microsoft = null; if ($dbo->isConnected() && $dbo->tableExists('zz_oauth2')) { $microsoft = $dbo->selectOne('zz_oauth2', '*', ['nome' => 'Microsoft', 'enabled' => 1, 'is_login' => 1]); } // LOGIN switch ($op) { case 'login': $username = post('username'); $password = $_POST['password']; if ($dbo->isConnected() && $dbo->isInstalled() && auth()->attempt($username, $password)) { $_SESSION['keep_alive'] = true; if (intval(setting('Inizio periodo calendario'))) { $_SESSION['period_start'] = Carbon::createFromFormat('d/m/Y', setting('Inizio periodo calendario'))->format('Y-m-d'); } else { $_SESSION['period_start'] = date('Y').'-01-01'; } if (intval(setting('Fine periodo calendario'))) { $_SESSION['period_end'] = Carbon::createFromFormat('d/m/Y', setting('Fine periodo calendario'))->format('Y-m-d'); } else { $_SESSION['period_end'] = date('Y').'-12-31'; } // Rimozione log vecchi // $dbo->query('DELETE FROM `zz_operations` WHERE DATE_ADD(`created_at`, INTERVAL 30*24*60*60 SECOND) <= NOW()'); } else { $status = auth()->getCurrentStatus(); flash()->error(Auth::getStatus()[$status]['message']); redirect(base_path().'/index.php'); exit; } break; case 'logout': Auth::logout(); redirect(base_path().'/index.php'); exit; } if (Auth::check() && isset($dbo) && $dbo->isConnected() && $dbo->isInstalled()) { $module = Auth::firstModule(); if (!empty($module)) { redirect(base_path().'/controller.php?id_module='.$module); } else { redirect(base_path().'/index.php?op=logout'); } exit; } // Modalità manutenzione if (!empty($config['maintenance_ip'])) { include_once base_dir().'/include/init/maintenance.php'; } // Procedura di installazione include_once base_dir().'/include/init/configuration.php'; // Procedura di aggiornamento include_once base_dir().'/include/init/update.php'; // Procedura di inizializzazione include_once base_dir().'/include/init/init.php'; $pageTitle = tr('Login'); include_once App::filepath('include|custom|', 'top.php'); // Controllo se è una beta e in caso mostro un warning if (Update::isBeta()) { echo '
 
'.tr('Attenzione!').' '.tr('Stai utilizzando una versione non stabile di OSM.').'
'; } // Controllo se è una beta e in caso mostro un warning if (Auth::isBrute()) { echo '

'.tr('Attenzione').'

'.tr('Sono stati effettuati troppi tentativi di accesso consecutivi!').'

'.tr('Tempo rimanente (in secondi)').': '.(Auth::getBruteTimeout() + 1).'

'; } if (!empty(flash()->getMessage('error'))) { echo ' '; } echo '
'; $custom_css = $dbo->isInstalled() ? html_entity_decode(setting('CSS Personalizzato')) : ''; if (!empty($custom_css)) { echo ' '; } include_once App::filepath('include|custom|', 'bottom.php');