Плагин CakePHP для электронной почты - с использованием собственного сервера - PullRequest
0 голосов
/ 07 апреля 2011

Я пытаюсь сделать своего рода почтовый клиент. Я нашел следующий класс источника данных CakePHP: https://github.com/kvz/cakephp-emails-plugin

Кажется, это очень хорошо, однако у меня есть один вопрос относительно деталей сервера. В файле readme плагина написано, что вы должны добавить IMAP-сервер в качестве записи в файл конфигурации database.php.

Моя проблема в том, что, поскольку мой веб-сайт позволяет пользователям выбирать свой собственный сервер IMAP, я не могу жестко закодировать конкретный сервер в файле конфигурации.

Как мне изменить код (или, возможно, вы можете изменить настройки базы данных с контроллера), чтобы соответствовать моим целям?

Ответы [ 2 ]

2 голосов
/ 08 апреля 2011

не совсем то же самое, что и при первом написании, но вы можете добавлять конфиги базы данных на лету, см. https://github.com/infinitas/infinitas/blob/beta/app_model.php#L371

, вы также можете захотеть взглянуть на оригинальный код, поскольку он делает именно то, что выхочу сделать, https://github.com/infinitas/infinitas/tree/beta/core/emails

вот фактический код получения электронных писем определенной учетной записи пользователя https://github.com/infinitas/infinitas/blob/beta/core/emails/controllers/mail_systems_controller.php#L25

он также имеет весь код для пользователей, чтобы добавить данные своей учетной записи и т. д.

1 голос
/ 08 апреля 2011

Поскольку это источник данных, я полагаю, вы можете просто настроить сервер imap на лету.

$this->emailTicket['server'] = $servername;
...