final stage
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Schedule;
|
||||
use App\Services\BackupService;
|
||||
use App\Models\AppSetting;
|
||||
|
||||
Schedule::call(function () {
|
||||
try {
|
||||
@@ -10,3 +12,19 @@ Schedule::call(function () {
|
||||
\Illuminate\Support\Facades\Log::error('Scheduled email sync failed', ['error' => $e->getMessage()]);
|
||||
}
|
||||
})->name('email:sync')->everyFifteenMinutes()->withoutOverlapping();
|
||||
|
||||
// Backup automatico
|
||||
Schedule::call(function () {
|
||||
if (!AppSetting::getSetting('backup_auto_enabled', false)) {
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
(new BackupService())->run();
|
||||
} catch (\Exception $e) {
|
||||
\Illuminate\Support\Facades\Log::error('Scheduled backup failed', ['error' => $e->getMessage()]);
|
||||
}
|
||||
})->name('backup:auto')
|
||||
->dailyAt((string) (AppSetting::getSetting('backup_auto_hour', 3) . ':00'))
|
||||
->withoutOverlapping()
|
||||
->onOneServer();
|
||||
|
||||
@@ -34,6 +34,7 @@ Route::get('/', function () {
|
||||
return redirect()->route('login');
|
||||
});
|
||||
|
||||
|
||||
// Auth
|
||||
Route::middleware('guest')->group(function () {
|
||||
Route::get('/login', [AuthController::class, 'showLoginForm'])->name('login');
|
||||
@@ -54,6 +55,11 @@ Route::middleware('auth')->group(function () {
|
||||
// Dashboard
|
||||
Route::get('/dashboard', [HomeController::class, 'index'])->name('dashboard')->middleware('auth');
|
||||
|
||||
// Help
|
||||
Route::get('/help', function () {
|
||||
return view('help.index', ['appName' => \App\Models\AppSetting::getAppName() ?? 'Glastree']);
|
||||
})->middleware('auth')->name('help');
|
||||
|
||||
// Resource routes
|
||||
// Individui specific routes (MUST be before resource route)
|
||||
Route::get('individui/email-list', [IndividuoController::class, 'emailList'])->middleware('auth');
|
||||
@@ -229,4 +235,13 @@ Route::prefix('admin')->middleware(['auth', AdminOnly::class])->group(function (
|
||||
Route::delete('/ruoli/{id}', [RuoloController::class, 'destroy'])->name('admin.ruoli.destroy');
|
||||
|
||||
Route::get('/activity-logs', [ActivityLogController::class, 'index'])->name('admin.activity-logs.index');
|
||||
|
||||
// Backup
|
||||
Route::get('/backup', [\App\Http\Controllers\Admin\BackupController::class, 'index'])->name('admin.backup.index');
|
||||
Route::post('/backup/run', [\App\Http\Controllers\Admin\BackupController::class, 'run'])->name('admin.backup.run');
|
||||
Route::get('/backup/download/{filename}', [\App\Http\Controllers\Admin\BackupController::class, 'download'])->name('admin.backup.download');
|
||||
Route::delete('/backup/{filename}', [\App\Http\Controllers\Admin\BackupController::class, 'destroy'])->name('admin.backup.destroy');
|
||||
Route::post('/backup/config', [\App\Http\Controllers\Admin\BackupController::class, 'updateConfig'])->name('admin.backup.config');
|
||||
Route::post('/backup/toggle-auto', [\App\Http\Controllers\Admin\BackupController::class, 'toggleAuto'])->name('admin.backup.toggle-auto');
|
||||
Route::post('/backup/save-auto', [\App\Http\Controllers\Admin\BackupController::class, 'saveAutoConfig'])->name('admin.backup.save-auto');
|
||||
});
|
||||
Reference in New Issue
Block a user