Files
emails/api/setup/setups/01_emails.php
2023-10-31 13:41:15 -03:00

28 lines
1.1 KiB
PHP

<?php
use Psr\Container\ContainerInterface;
return [
Ddeboer\Imap\ServerInterface::class => function(ContainerInterface $container) {
$emails = $container->get('emails');
if (isset($emails->port)) {
return new Ddeboer\Imap\Server($emails->host, $emails->port);
}
return new Ddeboer\Imap\Server($emails->host);
},
Ddeboer\Imap\ConnectionInterface::class => function(ContainerInterface $container) {
$emails = $container->get('emails');
$server = $container->get(Ddeboer\Imap\ServerInterface::class);
return $server->authenticate($emails->username, $emails->password);
},
PDO::class => function(ContainerInterface $container) {
$database = $container->get('database');
$dsn = ["mysql:host={$database->host}"];
if (isset($database->port)) {
$dsn []= "port={$database->port}";
}
$dsn []= "dbname={$database->name}";
$dsn = implode(';', $dsn);
return new PDO($dsn, $database->user->name, $database->user->password);
},
];