Files
emails/api/setup/setups/01_emails.php

28 lines
1.1 KiB
PHP
Raw Normal View History

2022-11-09 15:20:04 -03:00
<?php
use Psr\Container\ContainerInterface;
return [
Ddeboer\Imap\ServerInterface::class => function(ContainerInterface $container) {
$emails = $container->get('emails');
if (isset($emails->port)) {
2023-06-08 20:49:27 -04:00
return new Ddeboer\Imap\Server($emails->host, $emails->port);
2022-11-09 15:20:04 -03:00
}
2023-06-08 20:49:27 -04:00
return new Ddeboer\Imap\Server($emails->host);
2022-11-09 15:20:04 -03:00
},
2023-06-08 20:49:27 -04:00
Ddeboer\Imap\ConnectionInterface::class => function(ContainerInterface $container) {
2022-11-09 15:20:04 -03:00
$emails = $container->get('emails');
2023-06-08 20:49:27 -04:00
$server = $container->get(Ddeboer\Imap\ServerInterface::class);
2022-11-09 15:20:04 -03:00
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);
2023-10-31 13:41:15 -03:00
return new PDO($dsn, $database->user->name, $database->user->password);
2022-11-09 15:20:04 -03:00
},
];