First Commit
This commit is contained in:
Executable
+97
@@ -0,0 +1,97 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* SysCMS - Content Management System
|
||||
*
|
||||
* Copyright (c) 2025 Marco Costa
|
||||
* All rights reserved.
|
||||
*
|
||||
* Author: Marco Costa
|
||||
* Email: contato@syspanel.com.br
|
||||
* Project: SysCMS
|
||||
*
|
||||
* This software is licensed, not sold.
|
||||
* Permission is granted to use this software
|
||||
* subject to the terms of the SysCMS Commercial License.
|
||||
*
|
||||
* Redistribution, sublicensing, resale, or
|
||||
* disclosure of this software, in whole or in part,
|
||||
* is strictly prohibited without prior written permission.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND.
|
||||
*/
|
||||
|
||||
use DI\ContainerBuilder;
|
||||
use Psr\Container\ContainerInterface;
|
||||
|
||||
// The environment helper is loaded via composer autoload (app/helpers.php)
|
||||
|
||||
return [
|
||||
// Database configuration
|
||||
'database' => function (ContainerInterface $c) {
|
||||
return get_db_config();
|
||||
},
|
||||
|
||||
// Application configuration
|
||||
'app' => function (ContainerInterface $c) {
|
||||
return get_app_config();
|
||||
},
|
||||
|
||||
// Session configuration
|
||||
'session' => function (ContainerInterface $c) {
|
||||
return [
|
||||
'driver' => env('SESSION_DRIVER', 'file'),
|
||||
'lifetime' => env_int('SESSION_LIFETIME', 120),
|
||||
];
|
||||
},
|
||||
|
||||
// Mail configuration
|
||||
'mail' => function (ContainerInterface $c) {
|
||||
return get_mail_config();
|
||||
},
|
||||
|
||||
// JWT configuration
|
||||
'jwt' => function (ContainerInterface $c) {
|
||||
return [
|
||||
'secret' => env('JWT_SECRET', 'your_jwt_secret_key'),
|
||||
'ttl' => env_int('JWT_TTL', 60),
|
||||
];
|
||||
},
|
||||
|
||||
// Cache configuration
|
||||
'cache' => function (ContainerInterface $c) {
|
||||
return [
|
||||
'driver' => env('CACHE_DRIVER', 'file'),
|
||||
'prefix' => '',
|
||||
'path' => __DIR__ . '/../cache',
|
||||
];
|
||||
},
|
||||
|
||||
// Redis configuration
|
||||
'redis' => function (ContainerInterface $c) {
|
||||
return [
|
||||
'host' => env('REDIS_HOST', '127.0.0.1'),
|
||||
'password' => env('REDIS_PASSWORD'),
|
||||
'port' => env_int('REDIS_PORT', 6379),
|
||||
'database' => env_int('REDIS_DB', 0),
|
||||
];
|
||||
},
|
||||
|
||||
// File upload configuration
|
||||
'upload' => function (ContainerInterface $c) {
|
||||
return [
|
||||
'directory' => env('UPLOADS_DIR', dirname(__DIR__) . '/storage/uploads'),
|
||||
'max_size' => env('PHP_UPLOAD_MAX_FILESIZE', '256M'),
|
||||
'max_files' => env_int('PHP_MAX_FILE_UPLOADS', 50),
|
||||
];
|
||||
},
|
||||
|
||||
// Logging configuration
|
||||
'logging' => function (ContainerInterface $c) {
|
||||
return [
|
||||
'channel' => env('LOG_CHANNEL', 'stack'),
|
||||
'level' => env('LOG_LEVEL', 'debug'),
|
||||
'path' => __DIR__ . '/../logs',
|
||||
];
|
||||
},
|
||||
];
|
||||
Reference in New Issue
Block a user