diff --git a/README.md b/README.md index 90f2627..0167749 100644 --- a/README.md +++ b/README.md @@ -1,27 +1,27 @@ -Magento SMTP Pro Extension +Magento 1 SMTP Pro Extension by Ashley Schroder (aschroder.com) -- Free and Opensource email extension for Magento -- Easily send Magento transactional emails via Google Apps, Gmail, Amazon SES or your own SMTP server. -- Test your conifguration from the Magento admin +- Free and Opensource email extension for Magento 1.x +- Easily send Magento transactional emails via Google Apps, Gmail, Amazon SES or your own SMTP server +- Test your configuration from the Magento admin - View a log of all emails - Improve deliverability with an external SMTP server Contributors - nl_NL translations thanks to [Melvyn Sopacua](http://www.supportdesk.nu/) - es_ES translations thanks to [Jhoon Saravia](http://twitter.com/jsaravia) -- pt_BR translations thanks to [Gabriel Zamprogna] (https://github.com/gabrielz) +- pt_BR translations thanks to [Gabriel Zamprogna](https://github.com/gabrielz) - fr_FR translations thanks to [@aymencis Aymen Hajri](https://github.com/aymencis) - de_DE translations thanks to [@quafzi Thomas Birke](https://github.com/quafzi) - +- ru_RU translations thanks to [Victor Ivanov](https://github.com/victorivanovspb) FAQ Q: It's not working -A: Check for extension conflicts, and check that your host allows outbound SMTP traffic +A: Check for extension conflicts, and check that your host allows outbound SMTP traffic. Q: Does it work with the Mailchimp extension -A: yes, see: http://www.aschroder.com/2011/09/using-smtp-pro-and-ebizmarts-mailchimp-extension-in-magento/ +A: Yes, see: http://www.aschroder.com/2011/09/using-smtp-pro-and-ebizmarts-mailchimp-extension-in-magento/. Q: How do I install it manually A: See: http://www.aschroder.com/2010/05/installing-a-magento-extension-manually-via-ftp-or-ssh/ or use modman. @@ -38,4 +38,4 @@ A: It's actually good advice to learn more here: http://support.google.com/mail 2) If that does work, then Google may have blocked your server IP due to too many wrong passwords. You need to log in to gmail.com _from_ that IP - in order to answer the captcha and allow the IP through again. There's a few ways to do that - SOCKS proxy, X forward a browser, use Lynx. Q: I am getting a Subject set twice error -A: This happens sometimes, typically if it is happening it would also be happening in core Magento. There is a Pull Request [here] (https://github.com/aschroder/Magento-SMTP-Pro-Email-Extension/pull/57) that includes a work around thanks to [Rafael Kassner] (https://github.com/kassner). +A: This happens sometimes, typically if it is happening it would also be happening in core Magento. There is a Pull Request [here](https://github.com/aschroder/Magento-SMTP-Pro-Email-Extension/pull/57) that includes a work around thanks to [Rafael Kassner](https://github.com/kassner). diff --git a/app/code/local/Aschroder/SMTPPro/Helper/Data.php b/app/code/local/Aschroder/SMTPPro/Helper/Data.php old mode 100644 new mode 100755 index 78d23df..dc3f6c5 --- a/app/code/local/Aschroder/SMTPPro/Helper/Data.php +++ b/app/code/local/Aschroder/SMTPPro/Helper/Data.php @@ -101,6 +101,11 @@ public function getAmazonSESPrivateKey($storeId = null) return Mage::getStoreConfig('smtppro/general/ses_private_key', $storeId); } + public function getAmazonSESRegion($storeId = null) + { + return Mage::getStoreConfig('smtppro/general/ses_region', $storeId); + } + public function getGoogleAppsEmail($storeId = null) { return Mage::getStoreConfig('smtppro/general/googleapps_email', $storeId); diff --git a/app/code/local/Aschroder/SMTPPro/Model/Email.php b/app/code/local/Aschroder/SMTPPro/Model/Email.php index 575f755..f98a6a2 100644 --- a/app/code/local/Aschroder/SMTPPro/Model/Email.php +++ b/app/code/local/Aschroder/SMTPPro/Model/Email.php @@ -25,7 +25,9 @@ public function send() { return $this; } - $mail = new Zend_Mail(); + $charset = Mage::getStoreConfigFlag('smtppro/charset/utf8') ? 'UTF-8' : null; + //set charset for the email + $mail = new Zend_Mail($charset); if (strtolower($this->getType()) == 'html') { $mail->setBodyHtml($this->getBody()); diff --git a/app/code/local/Aschroder/SMTPPro/Model/Email/Queue.php b/app/code/local/Aschroder/SMTPPro/Model/Email/Queue.php index 8a2fe7b..290e819 100644 --- a/app/code/local/Aschroder/SMTPPro/Model/Email/Queue.php +++ b/app/code/local/Aschroder/SMTPPro/Model/Email/Queue.php @@ -126,7 +126,7 @@ public function send() Mage::logException($e); Mage::setIsDeveloperMode($oldDevMode); - return false; + continue; } // after each valid message has been sent - pause if required diff --git a/app/code/local/Aschroder/SMTPPro/Model/System/Config/Source/Smtp/Awsregions.php b/app/code/local/Aschroder/SMTPPro/Model/System/Config/Source/Smtp/Awsregions.php new file mode 100755 index 0000000..186cb17 --- /dev/null +++ b/app/code/local/Aschroder/SMTPPro/Model/System/Config/Source/Smtp/Awsregions.php @@ -0,0 +1,16 @@ + Mage::helper('adminhtml')->__('US East (N. Virginia)'), + 'us-west-2' => Mage::helper('adminhtml')->__('US West (Oregon)'), + 'eu-west-1' => Mage::helper('adminhtml')->__('EU (Ireland)') + ); + } +} \ No newline at end of file diff --git a/app/code/local/Aschroder/SMTPPro/Model/Transports/Ses.php b/app/code/local/Aschroder/SMTPPro/Model/Transports/Ses.php old mode 100644 new mode 100755 index 751f59b..aa04aa6 --- a/app/code/local/Aschroder/SMTPPro/Model/Transports/Ses.php +++ b/app/code/local/Aschroder/SMTPPro/Model/Transports/Ses.php @@ -16,7 +16,7 @@ class Aschroder_SMTPPro_Model_Transports_Ses { public function getTransport($storeId) { - $_helper = Mage::helper('smtppro'); + $_helper = Mage::helper('smtppro'); /* @var $_helper Aschroder_SMTPPro_Helper_Data */ $_helper->log("Getting Amazon SES Transport"); $path = Mage::getModuleDir('', 'Aschroder_SMTPPro'); @@ -26,7 +26,8 @@ public function getTransport($storeId) { array( 'accessKey' => $_helper->getAmazonSESAccessKey($storeId), 'privateKey' => $_helper->getAmazonSESPrivateKey($storeId) - ) + ), + 'https://email.'.$_helper->getAmazonSESRegion($storeId).'.amazonaws.com' ); return $emailTransport; diff --git a/app/code/local/Aschroder/SMTPPro/etc/config.xml b/app/code/local/Aschroder/SMTPPro/etc/config.xml old mode 100644 new mode 100755 index 0b69fd9..6b6e9a0 --- a/app/code/local/Aschroder/SMTPPro/etc/config.xml +++ b/app/code/local/Aschroder/SMTPPro/etc/config.xml @@ -198,6 +198,7 @@ + us-east-1 diff --git a/app/code/local/Aschroder/SMTPPro/etc/system.xml b/app/code/local/Aschroder/SMTPPro/etc/system.xml old mode 100644 new mode 100755 index d81e468..7d85ba9 --- a/app/code/local/Aschroder/SMTPPro/etc/system.xml +++ b/app/code/local/Aschroder/SMTPPro/etc/system.xml @@ -126,6 +126,16 @@ 0 + + + select + smtppro/system_config_source_smtp_awsregions + 24 + 1 + 1 + 0 + + @@ -308,6 +318,26 @@ + + + text + 90 + 1 + 1 + 1 + + + + Enable UTF-8 charset for the emails + select + adminhtml/system_config_source_yesno + 40 + 1 + 0 + 0 + + + diff --git a/app/locale/ru_RU/Aschroder_SMTPPro.csv b/app/locale/ru_RU/Aschroder_SMTPPro.csv new file mode 100644 index 0000000..c23eb21 --- /dev/null +++ b/app/locale/ru_RU/Aschroder_SMTPPro.csv @@ -0,0 +1,77 @@ +"SMTPPro - Email Log","SMTPPro - почтовые логи" +"SMTP Pro Email Settings","Настройка почты в SMTP Pro" +"Email Log","Почтовые логи" +"Aschroder Extensions","Расширения Aschroder" +"SMTP Pro","SMTP Pro" +"General Settings","Общие настройки" +"
SMTP Pro Email Extension
Configure your SMTP connection below. If you have any questions or would like any help please visit magesmtppro.com.","
Настройка почты в SMTP Pro
Настройте ваше SMTP-соединение ниже. Если у вас есть вопросы или вам нужна помощь - пожалуйста, зайдите на сайт magesmtppro.com." +"Email Connection","Подключение по электронной почте" +"Google Apps Email Address","Адрес электронной почты Google Apps" +"Google Apps Password","Пароль Google Apps" +"Input your Google Apps or Gmail username and password here. For configuration recommendations please see the guide at magesmtppro.com","Введите имя пользователя и пароль вашей учётной записи Google Apps или Gmail. За рекомендациями по настройке, пожалуйста, смотрите руководство на сайте magesmtppro.com" +"SendGrid Username","Имя пользователя SendGrid" +"SendGrid Password","Пароль SendGrid" +"Input your SendGrid username and password here. For more information visit SendGrid","Введите имя пользователя и пароль вашей учётной записи SendGrid. За дополнительной информацией обращайтесь на сайт SendGrid" +"Amazon SES Access Key","Ключ доступа в Amazon SES" +"Amazon SES Secret Key","Секретный ключ в Amazon SES" +"Amazon SES support in SMTP Pro is limited and best suited to development and testing purposes. For a full integration with region selection, error/bounce logging and send statistics please see the premium extension: MageSend","Поддержка Amazon SES в расширении SMTP Pro ограничена и лучше всего подходит для целей разработки и тестирования. Для полной интеграции с выбором региона, ведением логов ошибок/отказов и отправкой статистики, пожалуйста, см. премиум расширение: MageSend" +"Authentication","Аутентификация" +"Username","Имя пользователя" +"Password","Пароль" +"Host","Хост" +"Port","Порт" +"SSL Security","Безопасность SSL" +"Custom SMTP servers can be configured in this section. For more information about these configuration options and troubleshooting advice please see magesmtppro.com","Пользовательские SMTP-серверы могут быть сконфигурированны в этой секции. Дополнительную информацию по конфигурационным опциям и рекомендациям по устранению неполадок смотрите сайте magesmtppro.com" +"Logging and Debugging","Логи и отладка" +"Please only use these settings if you are a software developer or server admin.","Пожалуйста, используйте эти настройки только в случае, если вы разработчик ПО или системный администратор." +"Log Emails","Лог-сообщения почты" +"This will log all outbound emails. View from System->Tools->SMTPPro - Email Log.","Это будет регистрировать все исходящие письма. См. в «Система» > «Инструменты» > «SMTPPro - почтовые логи»." +"Clean Email Logs","Очистить почтовые логи" +"If this is set to yes, old entries will be deleted from email log. Cron is required and log cleaning must be enabled in system/log/enabled for this to work.","Если это значение равно «Да», то старые записи будут удалены из лога электронной почты. Требуется Cron и очистка лога должна быть включена в system/log/enabled для того, чтобы это сработало." +"Email Log Days Kept","Длительность хранения записи в логе" +"Enable Debug Logging","Включить ведение отладочного лога" +"If yes, a log file will be written with debug information to file var/log/aschroder_smtppro.log.","Если да, файл с логом будет записан с отладочной информацией в файл var/log/aschroder_smtppro.log." +"Save settings before running this test.","Сохранить настройки до запуска этого теста." +"Compatible Email Services","Совместимые службы электронной почты" +"Running SMTP Pro Self Test","Выполнение самотестирования SMTP Pro" +"SMTP Pro Self Test Results","Результаты самотестирования SMTP Pro" +"Extension disabled, cannot run test.","Расширение отключено, тест не запускается." +"Checking config re-writes have not clashed.","Проверка отсутствия конфликтов при перезаписывании конфигурации." +"Detected overwrite conflict: %s","Обнаружен конфликт перезаписи: %s" +"Raw connection test for SMTP options.","Тестировать Raw-соединение для SMTP-опций." +"Complete","Завершить" +"Failed to connect to SMTP server. Reason: ","Не удалось подключиться к SMTP-серверу. Причина: " +"This extension requires an outbound SMTP connection on port: ","Этому расширению требуется исходящее SMTP-соединение на порт: " +"Connection to Host SMTP server successful","Соединение с SMTP-сервером успешно установлено" +"Skipping raw connection test for non-SMTP options.","Пропустить проверку Raw-соединения для не SMTP-опций." +"Test Email From SMTP Pro Magento Extension","Тестировать электронную почту из расширения SMTP Pro" +"Actual email sending test...","Тестовая отправка почты..." +" from: "," из: " +"Test email was sent successfully","Тестовое сообщение успешно отправлено" +"Failed to find transport for test.","Не удалось найти транспорт для теста." +"Unable to send test email.","Не удалось отправить тестовое сообщение." +"Exception message was: %s","Сообщение об ошибке было: %s" +"Please check the user guide for frequent error messages and their solutions.","Пожалуйста, проверьте руководство пользователя на наличие частых сообщений об ошибках и их решений." +"Test email was not sent successfully: %s","Тестовое письмо отправлено не было: %s" +"See exception log for more details.","Подробнее см. лог исключений." +"Checking that a template exists for the default locale and that email communications are enabled...","Проверка наличия шаблона для локализации по умолчанию и того, что сообщения электронной почты включены..." +"Default templates exist.","Шаблоны по умолчанию существуют." +"Email communications are enabled.","Сообщения электронной почты включены." +"Default templates exist and email communications are enabled.","Шаблоны по умолчанию существуют, и сообщения электронной почты включены." +"Could not find default template, or template not valid, or email communications disabled in Advanced > System settings.","Не удалось найти шаблон по умолчанию, шаблон недействителен или связь по электронной почте отключена в меню «Расширенные» > «Настройки системы»." +"Please check that you have templates in place for your emails. These are in app/locale, or custom defined in System > Transaction Emails. Also check Advanced > System settings to ensure email communications are enabled.","Пожалуйста, убедитесь, что у вас есть шаблоны для ваших писем. Они находятся в app/locale, или определены в «Система» > «Транзакционные письма». Также проверьте «Дополнительно» > «Системные настройки», чтобы обеспечить связь по электронной почте." +"Could not find default template, or template not valid, or email communications disabled in Advanced > System settings","Не удалось найти шаблон по умолчанию, шаблон недействителен или связь по электронной почте отключена в «Расширенные» > «Настройки системы»" +"Could not test default template validity.","Не удалось проверить правильность шаблона по умолчанию." +"Please check that you have templates in place for your emails. These are in app/locale, or custom defined in System > Transaction Emails.","Убедитесь, что у вас есть шаблоны для ваших писем. Они находятся в app/locale, или определены в «Система» > «Транзакционные письма»." +"Could not test default template validity: %s","Не удалось проверить правильность шаблона по умолчанию: %s" +"Checking that tables are created...","Проверка создания таблиц..." +"Could not find required database tables.","Не удалось найти требуемые таблицы БД." +"Please try to manually re-run the table creation script. For assistance please contact us.","Попробуйте вручную перезапустить сценарий создания таблицы. Для получения помощи, пожалуйста, свяжитесь с нами." +"Required database tables exist.","Необходимые таблицы БД существуют." +"Testing complete, if you are still experiencing difficulties please visit the support page or contact me via support@aschroder.com for support.","Тестирование завершено, если вы все еще испытываете трудности, то посетите страницу поддержки или свяжитесь со мной support@aschroder.com для поддержки." +"Testing failed, please review the reported problems and if you need further help visit the support page or contact me via support@aschroder.com for support.","Тестирование не удалось, просмотрите описанные проблемы и если вам нужна дополнительная помощь посетите страницу поддержки или свяжитесь со мной support@aschroder.com для поддержки." +"Disabled","Отключено" +"MailUp Username","Имя пользователя MailUp" +"MailUp Password","Пароль MailUp" +"Input your MailUp username and password here. For more information visit MailUp","Введите ваше имя пользователя и пароль в MailUp. Для дополнительной информации смотрите на сайте MailUp" +"Google Apps or Gmail","Google Apps или Gmail" diff --git a/composer.json b/composer.json index d80764e..50e38d3 100644 --- a/composer.json +++ b/composer.json @@ -7,7 +7,8 @@ "magento-hackathon/magento-composer-installer": "*" }, "authors":[ - {"name": "aschroder" + { + "name": "aschroder" } ], "extra": { @@ -15,7 +16,14 @@ ["app/etc/modules/Aschroder_SMTPPro.xml", "app/etc/modules/Aschroder_SMTPPro.xml"], ["app/code/local/Aschroder/SMTPPro", "app/code/local/Aschroder/SMTPPro"], ["app/design/adminhtml/base/default/template/smtppro", "app/design/adminhtml/default/default/template/smtppro"], - ["app/locale/en_US/Aschroder_SMTPPro.csv", "app/locale/en_US/Aschroder_SMTPPro.csv"] + ["app/locale/de_DE/Aschroder_SMTPPro.csv", "app/locale/de_DE/Aschroder_SMTPPro.csv"], + ["app/locale/en_US/Aschroder_SMTPPro.csv", "app/locale/en_US/Aschroder_SMTPPro.csv"], + ["app/locale/fr_FR/Aschroder_SMTPPro.csv", "app/locale/fr_FR/Aschroder_SMTPPro.csv"], + ["app/locale/es_ES/Aschroder_SMTPPro.csv", "app/locale/es_ES/Aschroder_SMTPPro.csv"], + ["app/locale/nl_NL/Aschroder_SMTPPro.csv", "app/locale/nl_NL/Aschroder_SMTPPro.csv"], + ["app/locale/pt_BR/Aschroder_SMTPPro.csv", "app/locale/pt_BR/Aschroder_SMTPPro.csv"], + ["app/locale/tr_TR/Aschroder_SMTPPro.csv", "app/locale/tr_TR/Aschroder_SMTPPro.csv"], + ["app/locale/ru_RU/Aschroder_SMTPPro.csv", "app/locale/ru_RU/Aschroder_SMTPPro.csv"] ] } } diff --git a/modman b/modman index 150feda..fcb0d40 100644 --- a/modman +++ b/modman @@ -3,13 +3,14 @@ # author: Ashley #SMTP Pro -app/etc/modules/Aschroder_SMTPPro.xml app/etc/modules/Aschroder_SMTPPro.xml -app/code/local/Aschroder/SMTPPro/ app/code/local/Aschroder/SMTPPro/ -app/design/adminhtml/base/default/template/smtppro/ app/design/adminhtml/default/default/template/smtppro/ -app/locale/de_DE/Aschroder_SMTPPro.csv app/locale/de_DE/Aschroder_SMTPPro.csv -app/locale/en_US/Aschroder_SMTPPro.csv app/locale/en_US/Aschroder_SMTPPro.csv -app/locale/fr_FR/Aschroder_SMTPPro.csv app/locale/fr_FR/Aschroder_SMTPPro.csv -app/locale/es_ES/Aschroder_SMTPPro.csv app/locale/es_ES/Aschroder_SMTPPro.csv -app/locale/nl_NL/Aschroder_SMTPPro.csv app/locale/nl_NL/Aschroder_SMTPPro.csv -app/locale/pt_BR/Aschroder_SMTPPro.csv app/locale/pt_BR/Aschroder_SMTPPro.csv -app/locale/tr_TR/Aschroder_SMTPPro.csv app/locale/tr_TR/Aschroder_SMTPPro.csv +app/etc/modules/Aschroder_SMTPPro.xml app/etc/modules/Aschroder_SMTPPro.xml +app/code/local/Aschroder/SMTPPro/ app/code/local/Aschroder/SMTPPro/ +app/design/adminhtml/base/default/template/smtppro/ app/design/adminhtml/default/default/template/smtppro/ +app/locale/de_DE/Aschroder_SMTPPro.csv app/locale/de_DE/Aschroder_SMTPPro.csv +app/locale/en_US/Aschroder_SMTPPro.csv app/locale/en_US/Aschroder_SMTPPro.csv +app/locale/fr_FR/Aschroder_SMTPPro.csv app/locale/fr_FR/Aschroder_SMTPPro.csv +app/locale/es_ES/Aschroder_SMTPPro.csv app/locale/es_ES/Aschroder_SMTPPro.csv +app/locale/nl_NL/Aschroder_SMTPPro.csv app/locale/nl_NL/Aschroder_SMTPPro.csv +app/locale/pt_BR/Aschroder_SMTPPro.csv app/locale/pt_BR/Aschroder_SMTPPro.csv +app/locale/tr_TR/Aschroder_SMTPPro.csv app/locale/tr_TR/Aschroder_SMTPPro.csv +app/locale/ru_RU/Aschroder_SMTPPro.csv app/locale/ru_RU/Aschroder_SMTPPro.csv