-
-
Notifications
You must be signed in to change notification settings - Fork 5.2k
[swiftmailer] Document whitelist option to email redirect #4924
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 4 commits
7da8094
22b625d
fe0b9d5
2c72cfb
e86739b
42a5bfd
f07d355
6c4a9aa
e09f3e3
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -11,7 +11,7 @@ can easily achieve this through configuration settings without having to | |
make any changes to your application's code at all. There are two main | ||
choices when it comes to handling email during development: (a) disabling the | ||
sending of email altogether or (b) sending all email to a specific | ||
address. | ||
address (with optional exceptions). | ||
|
||
Disabling Sending | ||
----------------- | ||
|
@@ -119,6 +119,58 @@ the replaced address, so you can still see who it would have been sent to. | |
These are ``X-Swift-Cc`` and ``X-Swift-Bcc`` for the ``CC`` and ``BCC`` | ||
addresses respectively. | ||
|
||
Sending to a Specified Address, but with exceptions | ||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
|
||
Suppose you normally in your dev environment want to have all email redirected | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. remove normally here |
||
to a specific address, (like in the above scenario to ``dev@example,com``). | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. minor typo: |
||
But then you may want email sent to some specific email addresses to go through | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. this should be joined with the previous line, only add line breaks when you're crossing the 72th character. |
||
after all, and not be redirected (even if it is in the dev environment). | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. even in the dev environment |
||
This can be done by adding the ``delivery_whitelist`` option: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. could you please reformat this to only add line breaks after the first word that crosses the 72th character? I.e: Suppose you normally in your dev environment want to have all email redirected
to a specific address, (like in the above scenario to ``dev@example,com``).
But then you may want email sent to some specific email addresses to go through
after all, and not be redirected (even if it is in the dev environment). This
can be done by adding the ``delivery_whitelist`` option: There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. done |
||
|
||
.. configuration-block:: | ||
|
||
.. code-block:: yaml | ||
|
||
# app/config/config_dev.yml | ||
swiftmailer: | ||
delivery_address: dev@example.com | ||
delivery_whitelist: | ||
# all email addresses matching this regex will *not* be | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I don't know which is the common practice in the Symfony docs (maybe @wouterj and @xabbuh can help us with this) but it's strange to add explanation comments in the PHP format but not include them in the XML and PHP formats. We have two solutions:
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We usually add the comments to all formats. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I have now repeated the comments for all formats. |
||
# redirected to dev@example.com | ||
- "/@mydomain.com$/" | ||
|
||
# all emails sent to admin@specialdomain.com won't | ||
# be redirected to dev@example.com too | ||
- "/^admin@specialdomain.com$/" | ||
|
||
.. code-block:: xml | ||
|
||
<!-- app/config/config_dev.xml --> | ||
|
||
<!-- | ||
xmlns:swiftmailer="http://symfony.com/schema/dic/swiftmailer" | ||
http://symfony.com/schema/dic/swiftmailer http://symfony.com/schema/dic/swiftmailer/swiftmailer-1.0.xsd | ||
--> | ||
|
||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. you should show a full XML config example here (I believe I've put an example in one of my comments in this PR) |
||
<swiftmailer:config delivery-address="dev@example.com" /> | ||
<swiftmailer:delivery-whitelist>/@mydomain.com$/</swiftmailer:delivery-whitelist> | ||
<swiftmailer:delivery-whitelist>/^admin@specialdomain.com$/</swiftmailer:delivery-whitelist> | ||
.. code-block:: php | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. There is a missing blank line above this line |
||
|
||
// app/config/config_dev.php | ||
$container->loadFromExtension('swiftmailer', array( | ||
'delivery_address' => "dev@example.com", | ||
'delivery_whitelist' => array( | ||
'/@mydomain.com$/', | ||
'/^admin@specialdomain.com$/' | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. do we use comma here? i don't know how it is in the documentation There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Why do you want a comma there? It is the end of the php array. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. all array items end with a comma in Symfony CS when using a multiline array. That's to make diffs nicer when adding a new item There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think that is nitpicking. The code is just an example, and may be used in code not following Symfony CS. But I just changed it, none the less. |
||
), | ||
)); | ||
|
||
In the above example all mail will be redirected to ``dev@example.com``, | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I would reword this paragraph a bit, mostly because
|
||
except that mail to the single address ``admin@specialdomain.com`` and all | ||
mail to the domain ``mydomain.com`` will be delivered as normal. | ||
|
||
Viewing from the Web Debug Toolbar | ||
---------------------------------- | ||
|
||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In the Symfony documentation, the titles follow some special notation. That's why this should be reworded as follows (unless @xabbuh suggest other rewording):