41 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			PHP
		
	
		
		
			
		
	
	
			41 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			PHP
		
	
|  | <?php | ||
|  | 
 | ||
|  | /** | ||
|  |  * Generate an error or notice message based on the environment. | ||
|  |  * | ||
|  |  * In a production environment, hides detailed error messages and returns | ||
|  |  * a generic message. In other environments, returns the provided message. | ||
|  |  * | ||
|  |  * @param string $message            A user-friendly message to display. | ||
|  |  * @param string $error              The detailed error message for debugging (optional). | ||
|  |  * @param string|null $environment   The environment type ('production', 'development', etc.). If null, defaults to the configured environment. | ||
|  |  * | ||
|  |  * @return string                    The appropriate message based on the environment. | ||
|  |  */ | ||
|  | function getError($message, $error = '', $environment = null) { | ||
|  |     global $config; | ||
|  |     $environment = $config['environment'] ?? 'production'; | ||
|  | 
 | ||
|  |     if ($environment === 'production') { | ||
|  |         return 'There was an unexpected error. Please try again.'; | ||
|  |     } else { | ||
|  |         return $error ?: $message; | ||
|  |     } | ||
|  | } | ||
|  | 
 | ||
|  | /** | ||
|  |  * Render a message if it exists, and optionally unset it after display. | ||
|  |  * | ||
|  |  * @param string $message   The message to display. | ||
|  |  * @param string $type      The type of message (e.g., 'error', 'notice'). | ||
|  |  * @param bool   $unset     Whether to unset the message after display. | ||
|  |  */ | ||
|  | function renderMessage(&$message, $type, $unset = false) { | ||
|  |     if (isset($message)) { | ||
|  |         echo "\t\t<div class=\"{$type}\">" . $message . "</div>\n"; | ||
|  |         if ($unset) { | ||
|  |             $message = null; | ||
|  |         } | ||
|  |     } | ||
|  | } |