50 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			PHP
		
	
		
		
			
		
	
	
			50 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			PHP
		
	
|  | #!/usr/bin/env php
 | ||
|  | <?php | ||
|  | 
 | ||
|  | require_once __DIR__ . '/../app/core/Maintenance.php'; | ||
|  | 
 | ||
|  | use App\Core\Maintenance; | ||
|  | 
 | ||
|  | function usage() | ||
|  | { | ||
|  |     echo "\nJilo Web - Maintenance Mode\n"; | ||
|  |     echo "Usage:\n"; | ||
|  |     echo "  php scripts/maintenance.php on  [message]  # Enable maintenance mode with optional message\n"; | ||
|  |     echo "  php scripts/maintenance.php off           # Disable maintenance mode\n"; | ||
|  |     echo "  php scripts/maintenance.php status        # Show maintenance status\n\n"; | ||
|  | } | ||
|  | 
 | ||
|  | $cmd = $argv[1] ?? 'status'; | ||
|  | 
 | ||
|  | try { | ||
|  |     switch ($cmd) { | ||
|  |         case 'on': | ||
|  |             $message = $argv[2] ?? ''; | ||
|  |             if (Maintenance::enable($message)) { | ||
|  |                 echo "Maintenance mode ENABLED" . ($message ? ": $message" : '') . "\n"; | ||
|  |                 exit(0); | ||
|  |             } | ||
|  |             fwrite(STDERR, "Failed to enable maintenance mode\n"); | ||
|  |             exit(1); | ||
|  |         case 'off': | ||
|  |             if (Maintenance::disable()) { | ||
|  |                 echo "Maintenance mode DISABLED\n"; | ||
|  |                 exit(0); | ||
|  |             } | ||
|  |             fwrite(STDERR, "Failed to disable maintenance mode\n"); | ||
|  |             exit(1); | ||
|  |         case 'status': | ||
|  |         default: | ||
|  |             if (Maintenance::isEnabled()) { | ||
|  |                 $msg = Maintenance::getMessage(); | ||
|  |                 echo "Maintenance: ON" . ($msg ? " - $msg" : '') . "\n"; | ||
|  |             } else { | ||
|  |                 echo "Maintenance: OFF\n"; | ||
|  |             } | ||
|  |             exit(0); | ||
|  |     } | ||
|  | } catch (Throwable $e) { | ||
|  |     fwrite(STDERR, "Error: " . $e->getMessage() . "\n"); | ||
|  |     exit(1); | ||
|  | } |