From 1a587c51c28ff7ab7a590e74f39c08d65aa0a33f Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sun, 1 Mar 2015 16:15:22 +0100 Subject: [PATCH 001/235] Added February changelog --- changelog.rst | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/changelog.rst b/changelog.rst index d718537af87..e5116fa08ab 100644 --- a/changelog.rst +++ b/changelog.rst @@ -12,13 +12,13 @@ documentation. Do you also want to participate in the Symfony Documentation? Take a look at the ":doc:`/contributing/documentation/overview`" article. - February, 2015 -------------- New Documentation ~~~~~~~~~~~~~~~~~ +- `16dcf53 `_ #4980 [#4974] Added Twig loader priority Documentation (wizhippo) - `a25da10 `_ #4966 [#4231] Clarify that only the main command triggers events (riperez) - `c6bea37 `_ #4957 Added a mention to the @Security annotation (javiereguiluz) - `9cce63c `_ #4924 [swiftmailer] Document whitelist option to email redirect (TerjeBr) @@ -44,10 +44,13 @@ Minor Documentation Changes - `ff44111 `_ Merge branch '2.3' into 2.5 - `2a29225 `_ #4985 Fixed a typo (javiereguiluz) - `f75bc2b `_ #4972 Fix typos (ifdattic) +- `89e626f `_ #4952 symfony 2.7 requires at least php 5.3.9 (scaytrase) - `9fab10b `_ #4854 Removed no longer needed information about PHP 5.3 (WouterJ) - `1726054 `_ #4500 Link to standard edition (harikt) - `91ff6f8 `_ #4329 ensure consistency with the note (greg0ire) +- `f4ab4b6 `_ #5002 Revert very bad merge (WouterJ) - `e5dbd49 `_ #4977 Unnecessary comma (edsonmedina) +- `ed80100 `_ #4977 Unnecessary comma (edsonmedina) - `5d44987 `_ #4991 Fixed typo and tweaked syntax. (cdvrooman) - `b1aadbf `_ #4993 Bumped symfony version number to 2.6 in flat php composer.json example (TSchuermans) - `3845c9c `_ #4979 require_once path fixed (mvanmeerbeck) From 653ac94c95a82de79984bbf62152451431310b7f Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Mon, 2 Mar 2015 08:59:59 +0100 Subject: [PATCH 002/235] fix changelog syntax Terminate the `tip` directive with a blank line. --- changelog.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/changelog.rst b/changelog.rst index e5116fa08ab..a23cd8ad4c0 100644 --- a/changelog.rst +++ b/changelog.rst @@ -12,6 +12,7 @@ documentation. Do you also want to participate in the Symfony Documentation? Take a look at the ":doc:`/contributing/documentation/overview`" article. + February, 2015 -------------- From e84182d009949532a8bec606a51f79d15e813d3d Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sun, 5 Apr 2015 17:28:59 +0200 Subject: [PATCH 003/235] Added March changelog --- changelog.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/changelog.rst b/changelog.rst index ec6efa1d502..c5460dec526 100644 --- a/changelog.rst +++ b/changelog.rst @@ -106,6 +106,7 @@ Minor Documentation Changes - `3be0081 `_ #4976 Improved sentence (edsonmedina) - `a444220 `_ #4885 Fix typos (ifdattic) - `482502d `_ #4793 [Contributing] Several tweaks (xelaris) +- `a2395ef `_ #5054 [Changelog] fix changelog syntax (xabbuh) - `6b66f03 `_ #5003 Updated the generic Deployment article (javiereguiluz) - `39a1487 `_ #4999 Fixed semantic error (beni0888) From 0c089ec73a3aa77321c961cf6e982497328e3faf Mon Sep 17 00:00:00 2001 From: jackdelin Date: Thu, 28 May 2015 17:13:09 +0300 Subject: [PATCH 004/235] Update create_form_type_extension.rst --- cookbook/form/create_form_type_extension.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/form/create_form_type_extension.rst b/cookbook/form/create_form_type_extension.rst index 651d53ce849..ab1703c7596 100644 --- a/cookbook/form/create_form_type_extension.rst +++ b/cookbook/form/create_form_type_extension.rst @@ -195,7 +195,7 @@ it in the view:: use Symfony\Component\Form\FormView; use Symfony\Component\Form\FormInterface; use Symfony\Component\PropertyAccess\PropertyAccess; - use Symfony\Component\OptionsResolver\OptionsResolverInterface; + use Symfony\Component\OptionsResolver\OptionsResolver; class ImageTypeExtension extends AbstractTypeExtension { From d01d7ab2abc442b5a2a62ede3f59f80ed30659e9 Mon Sep 17 00:00:00 2001 From: Tomas Date: Wed, 10 Jun 2015 09:55:12 +0300 Subject: [PATCH 005/235] Remove deprecated parameters --- reference/twig_reference.rst | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/reference/twig_reference.rst b/reference/twig_reference.rst index 65b866e54a3..b45f0f72d02 100644 --- a/reference/twig_reference.rst +++ b/reference/twig_reference.rst @@ -98,16 +98,12 @@ asset .. code-block:: jinja - {{ asset(path, packageName, absolute = false, version = null) }} + {{ asset(path, packageName = null) }} ``path`` **type**: ``string`` ``packageName`` **type**: ``string`` | ``null`` **default**: ``null`` -``absolute`` - **type**: ``boolean`` **default**: ``false`` -``version`` - **type**: ``string`` **default** ``null`` Returns a public path to ``path``, which takes into account the base path set for the package and the URL path. More information in From 22a87b5fa09f2dc1aea13e77710271e2fe0715a1 Mon Sep 17 00:00:00 2001 From: Peter Rehm Date: Mon, 20 Oct 2014 22:40:29 +0200 Subject: [PATCH 006/235] Added depreciation note for the cascade_validation constraint and updated position of depreciation notes --- reference/forms/types/form.rst | 2 +- .../forms/types/options/cascade_validation.rst.inc | 13 +++++++++---- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/reference/forms/types/form.rst b/reference/forms/types/form.rst index 2ccb0debf17..eda6104fc6d 100644 --- a/reference/forms/types/form.rst +++ b/reference/forms/types/form.rst @@ -11,7 +11,7 @@ on all types for which ``form`` is the parent type. | Options | - `action`_ | | | - `allow_extra_fields`_ | | | - `by_reference`_ | -| | - `cascade_validation`_ | +| | - `cascade_validation`_ (deprecated as of 2.8) | | | - `compound`_ | | | - `constraints`_ | | | - `data`_ | diff --git a/reference/forms/types/options/cascade_validation.rst.inc b/reference/forms/types/options/cascade_validation.rst.inc index de75044ba73..2136111fc80 100644 --- a/reference/forms/types/options/cascade_validation.rst.inc +++ b/reference/forms/types/options/cascade_validation.rst.inc @@ -1,6 +1,12 @@ cascade_validation ~~~~~~~~~~~~~~~~~~ +.. caution:: + + The ``cascade_validation`` option has been deprecated in Symfony 2.8 and will be removed + in 3.0. Instead, use the ``Valid`` constraint in your model to cascade validation. Be aware + of the fact that the ``validation_group`` option will not be considered for child forms. + **type**: ``boolean`` **default**: ``false`` Set this option to ``true`` to force validation on embedded form types. @@ -10,11 +16,10 @@ the data from ``CategoryType`` to also be validated. .. tip:: - Instead of using this option, it is recommended that you use the ``Valid`` + Instead of using this option, it is recommended that you use the :doc:`Valid ` constraint in your model to force validation on a child object stored on a property. This cascades only the validation but not the use of - the ``validation_groups`` option on child forms. You can read more - about this in the section about - :ref:`Embedding a Single Object `. + the :ref:`validation_groups ` option on child forms. You can read more + about this in the section about :ref:`Embedding a Single Object `. .. include:: /reference/forms/types/options/_error_bubbling_hint.rst.inc From 485c8a0f9eefaa14c48a6799845816fad32f2d1e Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Tue, 16 Jun 2015 21:12:46 +0200 Subject: [PATCH 007/235] document new Doctrine APC cache service --- reference/configuration/framework.rst | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/reference/configuration/framework.rst b/reference/configuration/framework.rst index 71e8aac1a18..7885c10b7e2 100644 --- a/reference/configuration/framework.rst +++ b/reference/configuration/framework.rst @@ -1372,6 +1372,13 @@ cache The service that is used to persist class metadata in a cache. The service has to implement the :class:`Symfony\\Component\\Validator\\Mapping\\Cache\\CacheInterface`. +.. versionadded:: 2.8 + The ``validator.mapping.cache.doctrine.apc`` service was introduced in + Symfony 2.8. + +Set this option to ``validator.mapping.cache.doctrine.apc`` to use the APC +cache provide from the Doctrine project. + enable_annotations .................. From c9e86341a6c35ad343bd540fba96248c70084f47 Mon Sep 17 00:00:00 2001 From: Yannick Date: Fri, 26 Jun 2015 17:36:24 -0400 Subject: [PATCH 008/235] [#3782] Deprecating the read_only option (committed by weaverryan, original credit to the author on this commit) --- reference/forms/twig_reference.rst | 2 -- reference/forms/types/birthday.rst | 2 +- reference/forms/types/checkbox.rst | 2 +- reference/forms/types/choice.rst | 2 +- reference/forms/types/country.rst | 2 +- reference/forms/types/currency.rst | 2 +- reference/forms/types/date.rst | 2 +- reference/forms/types/datetime.rst | 2 +- reference/forms/types/email.rst | 2 +- reference/forms/types/entity.rst | 2 +- reference/forms/types/file.rst | 2 +- reference/forms/types/form.rst | 2 +- reference/forms/types/integer.rst | 2 +- reference/forms/types/language.rst | 2 +- reference/forms/types/locale.rst | 2 +- reference/forms/types/money.rst | 2 +- reference/forms/types/number.rst | 2 +- reference/forms/types/options/read_only.rst.inc | 5 +++++ reference/forms/types/password.rst | 2 +- reference/forms/types/percent.rst | 2 +- reference/forms/types/radio.rst | 2 +- reference/forms/types/search.rst | 2 +- reference/forms/types/text.rst | 2 +- reference/forms/types/textarea.rst | 2 +- reference/forms/types/time.rst | 2 +- reference/forms/types/timezone.rst | 2 +- reference/forms/types/url.rst | 2 +- 27 files changed, 30 insertions(+), 27 deletions(-) diff --git a/reference/forms/twig_reference.rst b/reference/forms/twig_reference.rst index 68e694f1390..5ee8243c908 100644 --- a/reference/forms/twig_reference.rst +++ b/reference/forms/twig_reference.rst @@ -340,8 +340,6 @@ object: +------------------------+-------------------------------------------------------------------------------------+ | ``value`` | The value that will be used when rendering (commonly the ``value`` HTML attribute). | +------------------------+-------------------------------------------------------------------------------------+ -| ``read_only`` | If ``true``, ``readonly="readonly"`` is added to the field. | -+------------------------+-------------------------------------------------------------------------------------+ | ``disabled`` | If ``true``, ``disabled="disabled"`` is added to the field. | +------------------------+-------------------------------------------------------------------------------------+ | ``required`` | If ``true``, a ``required`` attribute is added to the field to activate HTML5 | diff --git a/reference/forms/types/birthday.rst b/reference/forms/types/birthday.rst index 380d99a3747..740c885efba 100644 --- a/reference/forms/types/birthday.rst +++ b/reference/forms/types/birthday.rst @@ -41,7 +41,7 @@ option defaults to 120 years ago to the current year. | | - `invalid_message`_ | | | - `invalid_message_parameters`_ | | | - `mapped`_ | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | +----------------------+-------------------------------------------------------------------------------+ | Parent type | :doc:`date ` | +----------------------+-------------------------------------------------------------------------------+ diff --git a/reference/forms/types/checkbox.rst b/reference/forms/types/checkbox.rst index abef5a25330..3e04856ac4a 100644 --- a/reference/forms/types/checkbox.rst +++ b/reference/forms/types/checkbox.rst @@ -23,7 +23,7 @@ if the box is unchecked, the value will be set to false. | | - `label`_ | | | - `label_attr`_ | | | - `mapped`_ | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------+ | Parent type | :doc:`form ` | diff --git a/reference/forms/types/choice.rst b/reference/forms/types/choice.rst index bb2bd05fddc..c917f6d1189 100644 --- a/reference/forms/types/choice.rst +++ b/reference/forms/types/choice.rst @@ -32,7 +32,7 @@ option. | | - `label`_ | | | - `label_attr`_ | | | - `mapped`_ | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------------+ | Parent type | :doc:`form ` | diff --git a/reference/forms/types/country.rst b/reference/forms/types/country.rst index fd9840d59d7..c33e67d3d35 100644 --- a/reference/forms/types/country.rst +++ b/reference/forms/types/country.rst @@ -42,7 +42,7 @@ you should just use the ``choice`` type directly. | | - `label`_ | | | - `label_attr`_ | | | - `mapped`_ | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+-----------------------------------------------------------------------+ | Parent type | :doc:`choice ` | diff --git a/reference/forms/types/currency.rst b/reference/forms/types/currency.rst index 43cc0deb7bc..1d8bbd2d126 100644 --- a/reference/forms/types/currency.rst +++ b/reference/forms/types/currency.rst @@ -35,7 +35,7 @@ you should just use the ``choice`` type directly. | | - `label`_ | | | - `label_attr`_ | | | - `mapped`_ | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------+ | Parent type | :doc:`choice ` | diff --git a/reference/forms/types/date.rst b/reference/forms/types/date.rst index 0d97757d5d9..b673477950c 100644 --- a/reference/forms/types/date.rst +++ b/reference/forms/types/date.rst @@ -40,7 +40,7 @@ day and year) or three select boxes (see the `widget`_ option). | | - `invalid_message`_ | | | - `invalid_message_parameters`_ | | | - `mapped`_ | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | +----------------------+-----------------------------------------------------------------------------+ | Parent type | :doc:`form ` | +----------------------+-----------------------------------------------------------------------------+ diff --git a/reference/forms/types/datetime.rst b/reference/forms/types/datetime.rst index c4a04e0082d..b50c7ec12a7 100644 --- a/reference/forms/types/datetime.rst +++ b/reference/forms/types/datetime.rst @@ -40,7 +40,7 @@ the data can be a ``DateTime`` object, a string, a timestamp or an array. | | - `invalid_message`_ | | | - `invalid_message_parameters`_ | | | - `mapped`_ | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | +----------------------+-----------------------------------------------------------------------------+ | Parent type | :doc:`form ` | +----------------------+-----------------------------------------------------------------------------+ diff --git a/reference/forms/types/email.rst b/reference/forms/types/email.rst index 0d6f548a033..58b68da5cc8 100644 --- a/reference/forms/types/email.rst +++ b/reference/forms/types/email.rst @@ -19,7 +19,7 @@ The ``email`` field is a text field that is rendered using the HTML5 | | - `label_attr`_ | | | - `mapped`_ | | | - `max_length`_ (deprecated as of 2.5) | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | | | - `trim`_ | +-------------+---------------------------------------------------------------------+ diff --git a/reference/forms/types/entity.rst b/reference/forms/types/entity.rst index 43ab2af8915..b2a9dc6ebf8 100644 --- a/reference/forms/types/entity.rst +++ b/reference/forms/types/entity.rst @@ -39,7 +39,7 @@ objects from the database. | | - `label`_ | | | - `label_attr`_ | | | - `mapped`_ | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------+ | Parent type | :doc:`choice ` | diff --git a/reference/forms/types/file.rst b/reference/forms/types/file.rst index 4bfbadf064a..1205af33096 100644 --- a/reference/forms/types/file.rst +++ b/reference/forms/types/file.rst @@ -18,7 +18,7 @@ The ``file`` type represents a file input in your form. | | - `label`_ | | | - `label_attr`_ | | | - `mapped`_ | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+---------------------------------------------------------------------+ | Parent type | :doc:`form ` | diff --git a/reference/forms/types/form.rst b/reference/forms/types/form.rst index eda6104fc6d..b5409100f4b 100644 --- a/reference/forms/types/form.rst +++ b/reference/forms/types/form.rst @@ -30,7 +30,7 @@ on all types for which ``form`` is the parent type. | | - `pattern`_ (deprecated as of 2.5) | | | - `post_max_size_message`_ | | | - `property_path`_ | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | | | - `trim`_ | +-----------+--------------------------------------------------------------------+ diff --git a/reference/forms/types/integer.rst b/reference/forms/types/integer.rst index 4e9e0df2b62..6425c1daf7f 100644 --- a/reference/forms/types/integer.rst +++ b/reference/forms/types/integer.rst @@ -30,7 +30,7 @@ integers. By default, all non-integer values (e.g. 6.78) will round down | | - `label`_ | | | - `label_attr`_ | | | - `mapped`_ | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+-----------------------------------------------------------------------+ | Parent type | :doc:`form ` | diff --git a/reference/forms/types/language.rst b/reference/forms/types/language.rst index c9e4ddd08a3..e4efe7bf58c 100644 --- a/reference/forms/types/language.rst +++ b/reference/forms/types/language.rst @@ -43,7 +43,7 @@ you should just use the ``choice`` type directly. | | - `label`_ | | | - `label_attr`_ | | | - `mapped`_ | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------+ | Parent type | :doc:`choice ` | diff --git a/reference/forms/types/locale.rst b/reference/forms/types/locale.rst index 5e887150262..e822ffd3c18 100644 --- a/reference/forms/types/locale.rst +++ b/reference/forms/types/locale.rst @@ -45,7 +45,7 @@ you should just use the ``choice`` type directly. | | - `label`_ | | | - `label_attr`_ | | | - `mapped`_ | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------+ | Parent type | :doc:`choice ` | diff --git a/reference/forms/types/money.rst b/reference/forms/types/money.rst index a3b707b8931..1a2a856fcc5 100644 --- a/reference/forms/types/money.rst +++ b/reference/forms/types/money.rst @@ -29,7 +29,7 @@ how the input and output of the data is handled. | | - `label`_ | | | - `label_attr`_ | | | - `mapped`_ | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+---------------------------------------------------------------------+ | Parent type | :doc:`form ` | diff --git a/reference/forms/types/number.rst b/reference/forms/types/number.rst index 5bc6d3f052a..5881283a376 100644 --- a/reference/forms/types/number.rst +++ b/reference/forms/types/number.rst @@ -25,7 +25,7 @@ that you want to use for your number. | | - `label`_ | | | - `label_attr`_ | | | - `mapped`_ | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+----------------------------------------------------------------------+ | Parent type | :doc:`form ` | diff --git a/reference/forms/types/options/read_only.rst.inc b/reference/forms/types/options/read_only.rst.inc index 7988f0378c8..d19de30612b 100644 --- a/reference/forms/types/options/read_only.rst.inc +++ b/reference/forms/types/options/read_only.rst.inc @@ -1,6 +1,11 @@ read_only ~~~~~~~~~ +.. caution:: + + The ``read_only`` option has been deprecated and will be removed in 3.0. + Instead, use the ``attr`` option by setting it to an array with a ``readonly`` key. + **type**: ``boolean`` **default**: ``false`` If this option is true, the field will be rendered with the ``readonly`` diff --git a/reference/forms/types/password.rst b/reference/forms/types/password.rst index 3ce6256b382..57fac574bd9 100644 --- a/reference/forms/types/password.rst +++ b/reference/forms/types/password.rst @@ -19,7 +19,7 @@ The ``password`` field renders an input password text box. | | - `label_attr`_ | | | - `mapped`_ | | | - `max_length`_ (deprecated as of 2.5) | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | | | - `trim`_ | +-------------+------------------------------------------------------------------------+ diff --git a/reference/forms/types/percent.rst b/reference/forms/types/percent.rst index 10cca29531d..1bbce340b04 100644 --- a/reference/forms/types/percent.rst +++ b/reference/forms/types/percent.rst @@ -28,7 +28,7 @@ This field adds a percentage sign "``%``" after the input box. | | - `label`_ | | | - `label_attr`_ | | | - `mapped`_ | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+-----------------------------------------------------------------------+ | Parent type | :doc:`form ` | diff --git a/reference/forms/types/radio.rst b/reference/forms/types/radio.rst index 771f5b13490..b1adec4c6ea 100644 --- a/reference/forms/types/radio.rst +++ b/reference/forms/types/radio.rst @@ -30,7 +30,7 @@ If you want to have a boolean field, use :doc:`checkbox ` | diff --git a/reference/forms/types/search.rst b/reference/forms/types/search.rst index b491b689f90..69f4f449734 100644 --- a/reference/forms/types/search.rst +++ b/reference/forms/types/search.rst @@ -20,7 +20,7 @@ Read about the input search field at `DiveIntoHTML5.info`_ | | - `label_attr`_ | | | - `mapped`_ | | | - `max_length`_ (deprecated as of 2.5) | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | | | - `trim`_ | +-------------+----------------------------------------------------------------------+ diff --git a/reference/forms/types/text.rst b/reference/forms/types/text.rst index 2aa14cb7a55..d45204ed9b5 100644 --- a/reference/forms/types/text.rst +++ b/reference/forms/types/text.rst @@ -18,7 +18,7 @@ The text field represents the most basic input text field. | | - `label_attr`_ | | | - `mapped`_ | | | - `max_length`_ (deprecated as of 2.5) | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | | | - `trim`_ | +-------------+--------------------------------------------------------------------+ diff --git a/reference/forms/types/textarea.rst b/reference/forms/types/textarea.rst index 473c69c9d5c..18ce38f4a4b 100644 --- a/reference/forms/types/textarea.rst +++ b/reference/forms/types/textarea.rst @@ -19,7 +19,7 @@ Renders a ``textarea`` HTML element. | | - `label_attr`_ | | | - `mapped`_ | | | - `max_length`_ (deprecated as of 2.5) | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | | | - `trim`_ | +-------------+------------------------------------------------------------------------+ diff --git a/reference/forms/types/time.rst b/reference/forms/types/time.rst index 97c291e061b..4b976a02b0d 100644 --- a/reference/forms/types/time.rst +++ b/reference/forms/types/time.rst @@ -37,7 +37,7 @@ stored as a ``DateTime`` object, a string, a timestamp or an array. | | - `invalid_message`_ | | | - `invalid_message_parameters`_ | | | - `mapped`_ | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | +----------------------+-----------------------------------------------------------------------------+ | Parent type | form | +----------------------+-----------------------------------------------------------------------------+ diff --git a/reference/forms/types/timezone.rst b/reference/forms/types/timezone.rst index 73537fc1619..9fe22b11b18 100644 --- a/reference/forms/types/timezone.rst +++ b/reference/forms/types/timezone.rst @@ -38,7 +38,7 @@ you should just use the ``choice`` type directly. | | - `label`_ | | | - `label_attr`_ | | | - `mapped`_ | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------+ | Parent type | :doc:`choice ` | diff --git a/reference/forms/types/url.rst b/reference/forms/types/url.rst index d4903174d3f..ff4656dd6ed 100644 --- a/reference/forms/types/url.rst +++ b/reference/forms/types/url.rst @@ -22,7 +22,7 @@ have a protocol. | | - `label_attr`_ | | | - `mapped`_ | | | - `max_length`_ (deprecated as of 2.5) | -| | - `read_only`_ | +| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | | | - `trim`_ | +-------------+-------------------------------------------------------------------+ From dd0e33f683e04227483b44be2f4416f635db584c Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Fri, 26 Jun 2015 17:49:44 -0400 Subject: [PATCH 009/235] minor #3782 [Form] Deprecate read_only option (snoob) From 9718c14b4c6bb9e9a1a6e670f84a87286ce0696d Mon Sep 17 00:00:00 2001 From: "Alexander M. Turek" Date: Thu, 4 Jun 2015 01:30:28 +0200 Subject: [PATCH 010/235] [Serializer] Array Denormalization --- components/serializer.rst | 49 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/components/serializer.rst b/components/serializer.rst index eca1925cb0a..a6887fb3132 100644 --- a/components/serializer.rst +++ b/components/serializer.rst @@ -573,6 +573,55 @@ having unique identifiers:: echo $serializer->serialize($org, 'json'); // {"name":"Les-Tilleuls.coop","members":[{"name":"K\u00e9vin", organization: "Les-Tilleuls.coop"}]} +Handling Arrays +--------------- + +The Serializer component is capable of handling arrays of objects as well. +Serializing arrays works just like serializing a single object:: + + use Acme\Person; + + $person1 = new Person(); + $person1->setName('foo'); + $person1->setAge(99); + $person1->setSportsman(false); + + $person2 = new Person(); + $person2->setName('bar'); + $person2->setAge(33); + $person2->setSportsman(true); + + $persons = array($person1, $person2); + $data = $serializer->serialize($persons, 'json'); + + // $data contains [{"name":"foo","age":99,"sportsman":false},{"name":"bar","age":33,"sportsman":true}] + +.. versionadded:: 2.8 + The :class:`Symfony\\Component\\Serializer\\Normalizer\\ArrayDenormalizer` + class was introduced in 2.8. Prior to Symfony 2.8, only the serialization of + arrays is supported. + +If you want to deserialize such a structure, you need to add the +:class:`Symfony\\Component\\Serializer\\Normalizer\\ArrayDenormalizer` +to the set of normalizers. By appending ``[]`` to the type parameter of the +:method:`Symfony\\Component\\Serializer\\Serializer::deserialize` method, +you indicate that you're expecting an array instead of a single object. + +.. code-block:: php + + use Symfony\Component\Serializer\Encoder\JsonEncoder; + use Symfony\Component\Serializer\Normalizer\ArrayDenormalizer; + use Symfony\Component\Serializer\Normalizer\GetSetMethodNormalizer; + use Symfony\Component\Serializer\Serializer; + + $serializer = new Serializer( + array(new GetSetMethodNormalizer(), new ArrayDenormalizer()), + array(new JsonEncoder()) + ); + + $data = ...; // The serialized data from the previous example + $persons = $serializer->deserialize($data, 'Acme\Person[]', 'json'); + .. seealso:: A popular alternative to the Symfony Serializer Component is the third-party From d4d1f122f674bb1094b227fafe14b8a0a7de9005 Mon Sep 17 00:00:00 2001 From: Hari KT Date: Sun, 28 Jun 2015 13:30:49 +0530 Subject: [PATCH 011/235] Starting with range documentation --- reference/forms/types/range.rst | 56 +++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 reference/forms/types/range.rst diff --git a/reference/forms/types/range.rst b/reference/forms/types/range.rst new file mode 100644 index 00000000000..8be30c3f639 --- /dev/null +++ b/reference/forms/types/range.rst @@ -0,0 +1,56 @@ +.. index:: + single: Forms; Fields; range + +range Field Type +================ + +The ``range`` field is a slider that is rendered using the HTML5 +```` tag. + ++-------------+---------------------------------------------------------------------+ +| Rendered as | ``input`` ``range`` field (slider in html5 supported browser) | ++-------------+---------------------------------------------------------------------+ +| Inherited | - `data`_ | +| options | - `disabled`_ | +| | - `empty_data`_ | +| | - `error_bubbling`_ | +| | - `error_mapping`_ | +| | - `label`_ | +| | - `label_attr`_ | +| | - `mapped`_ | +| | - `max`_ | +| | - `min`_ | +| | - `required`_ | ++-------------+---------------------------------------------------------------------+ +| Parent type | :doc:`text ` | ++-------------+---------------------------------------------------------------------+ +| Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\RangeType` | ++-------------+---------------------------------------------------------------------+ + +Basic Usage +----------- + + +Inherited Options +----------------- + +These options inherit from the :doc:`form ` +type: + +.. include:: /reference/forms/types/options/attr.rst.inc + +.. include:: /reference/forms/types/options/disabled.rst.inc + +.. include:: /reference/forms/types/options/error_bubbling.rst.inc + +.. include:: /reference/forms/types/options/error_mapping.rst.inc + +.. include:: /reference/forms/types/options/label.rst.inc + +.. include:: /reference/forms/types/options/label_attr.rst.inc + +.. include:: /reference/forms/types/options/mapped.rst.inc + +.. include:: /reference/forms/types/options/read_only.rst.inc + +.. include:: /reference/forms/types/options/required.rst.inc From a2c3f210e8c59d034a51c444d6eb3c5a34fb531a Mon Sep 17 00:00:00 2001 From: Hari KT Date: Sun, 28 Jun 2015 22:07:10 +0530 Subject: [PATCH 012/235] Make the necessary changes mentioned by @xabbuh and add example for form --- reference/forms/types/range.rst | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/reference/forms/types/range.rst b/reference/forms/types/range.rst index 8be30c3f639..f2857c99eee 100644 --- a/reference/forms/types/range.rst +++ b/reference/forms/types/range.rst @@ -8,7 +8,7 @@ The ``range`` field is a slider that is rendered using the HTML5 ```` tag. +-------------+---------------------------------------------------------------------+ -| Rendered as | ``input`` ``range`` field (slider in html5 supported browser) | +| Rendered as | ``input`` ``range`` field (slider in HTML5 supported browser) | +-------------+---------------------------------------------------------------------+ | Inherited | - `data`_ | | options | - `disabled`_ | @@ -18,8 +18,7 @@ The ``range`` field is a slider that is rendered using the HTML5 | | - `label`_ | | | - `label_attr`_ | | | - `mapped`_ | -| | - `max`_ | -| | - `min`_ | +| | - `attr`_ | | | - `required`_ | +-------------+---------------------------------------------------------------------+ | Parent type | :doc:`text ` | @@ -30,6 +29,12 @@ The ``range`` field is a slider that is rendered using the HTML5 Basic Usage ----------- + $builder->add('name', 'range', array( + 'attr' => array( + 'min' => 5, + 'max' => 50 + ) + )); Inherited Options ----------------- From bef92eccccd639affee3fdde8d850a2484f3216e Mon Sep 17 00:00:00 2001 From: WouterJ Date: Wed, 1 Jul 2015 09:39:56 +0200 Subject: [PATCH 013/235] Added June changelog --- changelog.rst | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/changelog.rst b/changelog.rst index 9444def5556..0a842a17e8a 100644 --- a/changelog.rst +++ b/changelog.rst @@ -20,6 +20,7 @@ New Documentation ~~~~~~~~~~~~~~~~~ * `#5423 `_ [Security] add & update doc entries on AbstractVoter implementation (Inoryy, javiereguiluz) +* `#5409 `_ [Reference] document new Doctrine APC cache service (xabbuh) * `#5401 `_ Added some more docs about the remember me feature (WouterJ) * `#5384 `_ Added information about the new date handling in the comparison constraints and Range (webmozart, javiereguiluz) * `#5382 `_ Added support for standard Forwarded header (tony-co, javiereguiluz) @@ -27,6 +28,7 @@ New Documentation * `#5332 `_ [Serializer] ObjectNormalizer, object_to_populate doc. Minor enhancements. (dunglas) * `#5335 `_ [Serializer] Updated the cookbook. (dunglas) * `#5313 `_ Documented the overridden form options (javiereguiluz) +* `#5360 `_ [Serializer] Array Denormalization (derrabus) * `#5307 `_ Update data_transformers.rst (zebba) * `#5186 `_ Added a new article about using/installing unstable Symfony versions (javiereguiluz) * `#5166 `_ Proposed a new article about using pure PHP libraries with Assetic (javiereguiluz) @@ -42,6 +44,7 @@ New Documentation * `#5355 `_ Added a mention to the Symfony Demo application (javiereguiluz) * `#5331 `_ [PSR-7] Bridge documentation (dunglas) * `#5373 `_ Added mentions to some popular (and useful) Symfony bundles (javiereguiluz) +* `#4354 `_ [WCM] Added depreciation note for the cascade_validation constraint (peterrehm) Fixed Documentation ~~~~~~~~~~~~~~~~~~~ @@ -88,6 +91,7 @@ Minor Documentation Changes * `#5381 `_ remove Yoda condition (greg0ire) * `#5452 `_ [#5388] change echo and print in examples (snoek09) * `#5451 `_ [#5388] change echo and print in examples (snoek09) +* `#3782 `_ [Form] Deprecate read_only option (snoob) * `#5432 `_ removed squashing stuff. fixes #5368 (OskarStark) * `#5383 `_ Reword a paragraph about service configurations (richardudovich) * `#5389 `_ Updates to security.rst (HexTitan) From 3c6ff76053f79646d581482018a64d4c838104c9 Mon Sep 17 00:00:00 2001 From: Hari KT Date: Fri, 3 Jul 2015 17:02:29 +0530 Subject: [PATCH 014/235] Fix issues reported by @snoek09 . Thank you. --- reference/forms/types.rst | 1 + reference/forms/types/map.rst.inc | 1 + reference/forms/types/range.rst | 23 +++++++++++++++++------ 3 files changed, 19 insertions(+), 6 deletions(-) diff --git a/reference/forms/types.rst b/reference/forms/types.rst index 413c5bc2bc4..5df657d1910 100644 --- a/reference/forms/types.rst +++ b/reference/forms/types.rst @@ -18,6 +18,7 @@ Form Types Reference types/percent types/search types/url + types/range types/choice types/entity diff --git a/reference/forms/types/map.rst.inc b/reference/forms/types/map.rst.inc index b4362b3f318..2fbc4ae1f4d 100644 --- a/reference/forms/types/map.rst.inc +++ b/reference/forms/types/map.rst.inc @@ -11,6 +11,7 @@ Text Fields * :doc:`percent ` * :doc:`search ` * :doc:`url ` +* :doc:`url ` Choice Fields ~~~~~~~~~~~~~ diff --git a/reference/forms/types/range.rst b/reference/forms/types/range.rst index f2857c99eee..750b07d760a 100644 --- a/reference/forms/types/range.rst +++ b/reference/forms/types/range.rst @@ -10,16 +10,17 @@ The ``range`` field is a slider that is rendered using the HTML5 +-------------+---------------------------------------------------------------------+ | Rendered as | ``input`` ``range`` field (slider in HTML5 supported browser) | +-------------+---------------------------------------------------------------------+ -| Inherited | - `data`_ | -| options | - `disabled`_ | +| Inherited | - `attr`_ | +| options | - `data`_ | +| | - `disabled`_ | | | - `empty_data`_ | | | - `error_bubbling`_ | | | - `error_mapping`_ | | | - `label`_ | | | - `label_attr`_ | | | - `mapped`_ | -| | - `attr`_ | | | - `required`_ | +| | - `trim`_ | +-------------+---------------------------------------------------------------------+ | Parent type | :doc:`text ` | +-------------+---------------------------------------------------------------------+ @@ -29,6 +30,8 @@ The ``range`` field is a slider that is rendered using the HTML5 Basic Usage ----------- +.. code-block:: php + $builder->add('name', 'range', array( 'attr' => array( 'min' => 5, @@ -44,18 +47,26 @@ type: .. include:: /reference/forms/types/options/attr.rst.inc +.. include:: /reference/forms/types/options/data.rst.inc + .. include:: /reference/forms/types/options/disabled.rst.inc +.. include:: /reference/forms/types/options/empty_data.rst.inc + :end-before: DEFAULT_PLACEHOLDER + +The default value is ``''`` (the empty string). + +.. include:: /reference/forms/types/options/empty_data.rst.inc + :start-after: DEFAULT_PLACEHOLDER + .. include:: /reference/forms/types/options/error_bubbling.rst.inc .. include:: /reference/forms/types/options/error_mapping.rst.inc .. include:: /reference/forms/types/options/label.rst.inc -.. include:: /reference/forms/types/options/label_attr.rst.inc - .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc +.. include:: /reference/forms/types/options/label_attr.rst.inc .. include:: /reference/forms/types/options/required.rst.inc From abf3e8eed4d268e0552c4e21f5fe508a58ebe355 Mon Sep 17 00:00:00 2001 From: Hari KT Date: Fri, 3 Jul 2015 17:10:38 +0530 Subject: [PATCH 015/235] Fix the rendering issue --- reference/forms/types/map.rst.inc | 2 +- reference/forms/types/range.rst | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/reference/forms/types/map.rst.inc b/reference/forms/types/map.rst.inc index 2fbc4ae1f4d..de0e07db282 100644 --- a/reference/forms/types/map.rst.inc +++ b/reference/forms/types/map.rst.inc @@ -11,7 +11,7 @@ Text Fields * :doc:`percent ` * :doc:`search ` * :doc:`url ` -* :doc:`url ` +* :doc:`range ` Choice Fields ~~~~~~~~~~~~~ diff --git a/reference/forms/types/range.rst b/reference/forms/types/range.rst index 750b07d760a..7fe92d88b39 100644 --- a/reference/forms/types/range.rst +++ b/reference/forms/types/range.rst @@ -70,3 +70,5 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/label_attr.rst.inc .. include:: /reference/forms/types/options/required.rst.inc + +.. include:: /reference/forms/types/options/trim.rst.inc From 28630799385ea0a16cbd3ea18e0cc9fb595b131a Mon Sep 17 00:00:00 2001 From: Hari KT Date: Sat, 4 Jul 2015 12:03:51 +0530 Subject: [PATCH 016/235] Fix moving the mapped down as per @xabbuh --- reference/forms/types/range.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/reference/forms/types/range.rst b/reference/forms/types/range.rst index 7fe92d88b39..31795c809d1 100644 --- a/reference/forms/types/range.rst +++ b/reference/forms/types/range.rst @@ -65,10 +65,10 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/label.rst.inc -.. include:: /reference/forms/types/options/mapped.rst.inc - .. include:: /reference/forms/types/options/label_attr.rst.inc +.. include:: /reference/forms/types/options/mapped.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc .. include:: /reference/forms/types/options/trim.rst.inc From 99a996c1696bfd57b2f9b24c536dd623fc951c6e Mon Sep 17 00:00:00 2001 From: Javier Eguiluz Date: Tue, 7 Jul 2015 12:54:36 +0200 Subject: [PATCH 017/235] Added caution notes about the deprecation of container scopes --- cookbook/console/console_command.rst | 5 +++++ cookbook/service_container/scopes.rst | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/cookbook/console/console_command.rst b/cookbook/console/console_command.rst index 2bc6e430ee8..9a6d40f76b7 100644 --- a/cookbook/console/console_command.rst +++ b/cookbook/console/console_command.rst @@ -82,6 +82,11 @@ for details. Getting Services from the Service Container ------------------------------------------- +.. caution:: + + The "container scopes" concept explained in this section has been deprecated + in Symfony 2.8 and it will be removed in Symfony 3.0. + By using :class:`Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand` as the base class for the command (instead of the more basic :class:`Symfony\\Component\\Console\\Command\\Command`), you have access to the diff --git a/cookbook/service_container/scopes.rst b/cookbook/service_container/scopes.rst index bac6281a3e0..13d35e4cc1e 100644 --- a/cookbook/service_container/scopes.rst +++ b/cookbook/service_container/scopes.rst @@ -4,6 +4,11 @@ How to Work with Scopes ======================= +.. caution:: + + The "container scopes" concept explained in this article has been deprecated + in Symfony 2.8 and it will be removed in Symfony 3.0. + This article is all about scopes, a somewhat advanced topic related to the :doc:`/book/service_container`. If you've ever gotten an error mentioning "scopes" when creating services, then this article is for you. From b88a17e3255744631f9a5267366b067a4b5c59be Mon Sep 17 00:00:00 2001 From: Vincent AUBERT Date: Tue, 14 Jul 2015 21:27:55 +0200 Subject: [PATCH 018/235] [Cookbook][WebServer] #5504 add a tip for the --force option on server:start --- cookbook/web_server/built_in.rst | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/cookbook/web_server/built_in.rst b/cookbook/web_server/built_in.rst index 33289907614..ab8e3635452 100644 --- a/cookbook/web_server/built_in.rst +++ b/cookbook/web_server/built_in.rst @@ -39,6 +39,15 @@ can change the socket passing an IP address and a port as a command-line argumen $ php app/console server:run 192.168.0.1:8080 +.. note:: + + You can use the ``--force`` option to force the web server start + if the process wasn't correctly stopped (without using the ``server:stop`` command). + + .. code-block:: bash + + $ php app/console server:start --force + .. note:: You can use the ``server:status`` command to check if a web server is From 17395493589902d1e722ef4978d47ecfa65e6496 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Thu, 23 Jul 2015 12:34:17 +0200 Subject: [PATCH 019/235] [#5521] Added versionadded directive --- cookbook/web_server/built_in.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/cookbook/web_server/built_in.rst b/cookbook/web_server/built_in.rst index ab8e3635452..e182601e4a2 100644 --- a/cookbook/web_server/built_in.rst +++ b/cookbook/web_server/built_in.rst @@ -48,6 +48,9 @@ can change the socket passing an IP address and a port as a command-line argumen $ php app/console server:start --force + .. versionadded:: 2.8 + The ``--force`` option was introduced in Symfony 2.8. + .. note:: You can use the ``server:status`` command to check if a web server is From e6c8b6c2ca010ec9cdea46fd7eaf9e9fe7f7fd26 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Deruss=C3=A9?= Date: Mon, 27 Jul 2015 09:40:03 +0200 Subject: [PATCH 020/235] Change default value of cookie_httponly --- reference/configuration/framework.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reference/configuration/framework.rst b/reference/configuration/framework.rst index 8732bddb03f..2252f5b665c 100644 --- a/reference/configuration/framework.rst +++ b/reference/configuration/framework.rst @@ -774,7 +774,7 @@ This determines whether cookies should only be sent over secure connections. cookie_httponly ............... -**type**: ``boolean`` **default**: ``false`` +**type**: ``boolean`` **default**: ``true`` This determines whether cookies should only be accessible through the HTTP protocol. This means that the cookie won't be accessible by scripting From 638374088ad24619bfa78d96ed65582728445083 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sun, 9 Aug 2015 20:40:44 +0200 Subject: [PATCH 021/235] Added July changelog --- changelog.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/changelog.rst b/changelog.rst index df6c2b00100..ab46ce793c2 100644 --- a/changelog.rst +++ b/changelog.rst @@ -21,11 +21,13 @@ New Documentation * `#5533 `_ Replace Capifony with Capistrano/symfony (mojzis) * `#5543 `_ Add deprecation notice to "choice_list" option of ChoiceType (XitasoChris) +* `#5521 `_ [Cookbook][WebServer] #5504 add a tip for the --force option (vincentaubert) * `#5516 `_ Added a note about session data size in PdoSessionHandler (javiereguiluz) * `#5499 `_ The "property" option of DoctrineType was deprecated. (XWB) * `#5491 `_ added composer info (OskarStark) * `#5478 `_ Add cookbook article for using MongoDB to store session data (stevenmusumeche) * `#5472 `_ Added a tip about hashing the result of nextBytes() (javiereguiluz) +* `#5458 `_ HTML5 range documentation (harikt) * `#5453 `_ Cleanup security voters cookbook recipes (WouterJ) * `#5444 `_ Documented the "auto_alias" feature (javiereguiluz) * `#5201 `_ [Book][Routing] Add example about how to match multiple methods (xelaris) @@ -54,6 +56,7 @@ Minor Documentation Changes * `#5580 `_ Additional User check in voter class (weaverryan) * `#5573 `_ fix YAML syntax highlighting (xabbuh) * `#5564 `_ Improve and simplify the contributing instructions about tests (javiereguiluz) +* `#5498 `_ [WIP] Added caution notes about the deprecation of container scopes (javiereguiluz) * `#5550 `_ [docbot] Reviewed some component chapters (WouterJ) * `#5556 `_ Fix typo Esi in part create framework (nicolasdewez) * `#5568 `_ [Create Framework] Fix extract calls (replaces #5522) (kenjis) From 135d4b88820f99a399b2929da99dd64b7e585f7a Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sun, 9 Aug 2015 20:42:01 +0200 Subject: [PATCH 022/235] Added July changelog --- changelog.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/changelog.rst b/changelog.rst index f888e4fcf7f..fa1de5273db 100644 --- a/changelog.rst +++ b/changelog.rst @@ -19,6 +19,7 @@ July, 2015 New Documentation ~~~~~~~~~~~~~~~~~ +* `#5374 `_ Remove deprecated parameters (norkunas) * `#5533 `_ Replace Capifony with Capistrano/symfony (mojzis) * `#5543 `_ Add deprecation notice to "choice_list" option of ChoiceType (XitasoChris) * `#5521 `_ [Cookbook][WebServer] #5504 add a tip for the --force option (vincentaubert) From feb2ab11613f79203310660193cd5315c8d307e7 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Wed, 29 Jul 2015 16:55:28 +0200 Subject: [PATCH 023/235] Remove mentions of Symfony1 --- .../event_dispatcher/before_after_filters.rst | 8 +- cookbook/index.rst | 1 - cookbook/map.rst.inc | 4 - cookbook/symfony1.rst | 369 ------------------ 4 files changed, 4 insertions(+), 378 deletions(-) delete mode 100644 cookbook/symfony1.rst diff --git a/cookbook/event_dispatcher/before_after_filters.rst b/cookbook/event_dispatcher/before_after_filters.rst index d1c5acddbf8..8a1e71e17c3 100644 --- a/cookbook/event_dispatcher/before_after_filters.rst +++ b/cookbook/event_dispatcher/before_after_filters.rst @@ -8,10 +8,10 @@ It is quite common in web application development to need some logic to be executed just before or just after your controller actions acting as filters or hooks. -In symfony1, this was achieved with the preExecute and postExecute methods. -Most major frameworks have similar methods but there is no such thing in Symfony. -The good news is that there is a much better way to interfere with the -Request -> Response process using the :doc:`EventDispatcher component `. +Some web frameworks define methods like ``preExecute()`` and ``postExecute()``, +but there is no such thing in Symfony. The good news is that there is a much +better way to interfere with the Request -> Response process using the +:doc:`EventDispatcher component `. Token Validation Example ------------------------ diff --git a/cookbook/index.rst b/cookbook/index.rst index bdf414d6177..ba0f13c6fc1 100644 --- a/cookbook/index.rst +++ b/cookbook/index.rst @@ -29,7 +29,6 @@ The Cookbook service_container/index session/index psr7 - symfony1 templating/index testing/index upgrade/index diff --git a/cookbook/map.rst.inc b/cookbook/map.rst.inc index b7563d7f6b8..0540ef3be5b 100644 --- a/cookbook/map.rst.inc +++ b/cookbook/map.rst.inc @@ -209,10 +209,6 @@ * :doc:`/cookbook/psr7` -* **symfony1** - - * :doc:`/cookbook/symfony1` - * :doc:`/cookbook/templating/index` * :doc:`/cookbook/templating/global_variables` diff --git a/cookbook/symfony1.rst b/cookbook/symfony1.rst deleted file mode 100644 index b800914a661..00000000000 --- a/cookbook/symfony1.rst +++ /dev/null @@ -1,369 +0,0 @@ -.. index:: - single: symfony1 - -How Symfony2 Differs from Symfony1 -================================== - -The Symfony2 Framework embodies a significant evolution when compared with -the first version of the framework. Fortunately, with the MVC architecture -at its core, the skills used to master a symfony1 project continue to be -very relevant when developing in Symfony2. Sure, ``app.yml`` is gone, but -routing, controllers and templates all remain. - -This chapter walks through the differences between symfony1 and Symfony2. -As you'll see, many tasks are tackled in a slightly different way. You'll -come to appreciate these minor differences as they promote stable, predictable, -testable and decoupled code in your Symfony2 applications. - -So, sit back and relax as you travel from "then" to "now". - -Directory Structure -------------------- - -When looking at a Symfony2 project - for example, the `Symfony Standard Edition`_ - -you'll notice a very different directory structure than in symfony1. The -differences, however, are somewhat superficial. - -The ``app/`` Directory -~~~~~~~~~~~~~~~~~~~~~~ - -In symfony1, your project has one or more applications, and each lives inside -the ``apps/`` directory (e.g. ``apps/frontend``). By default in Symfony2, -you have just one application represented by the ``app/`` directory. Like -in symfony1, the ``app/`` directory contains configuration specific to that -application. It also contains application-specific cache, log and template -directories as well as a ``Kernel`` class (``AppKernel``), which is the base -object that represents the application. - -Unlike symfony1, almost no PHP code lives in the ``app/`` directory. This -directory is not meant to house modules or library files as it did in symfony1. -Instead, it's simply the home of configuration and other resources (templates, -translation files). - -The ``src/`` Directory -~~~~~~~~~~~~~~~~~~~~~~ - -Put simply, your actual code goes here. In Symfony2, all actual application-code -lives inside a bundle (roughly equivalent to a symfony1 plugin) and, by default, -each bundle lives inside the ``src`` directory. In that way, the ``src`` -directory is a bit like the ``plugins`` directory in symfony1, but much more -flexible. Additionally, while *your* bundles will live in the ``src/`` directory, -third-party bundles will live somewhere in the ``vendor/`` directory. - -To get a better picture of the ``src/`` directory, first think of the structure -of a symfony1 application. First, part of your code likely lives inside one or -more applications. Most commonly these include modules, but could also include -any other PHP classes you put in your application. You may have also created -a ``schema.yml`` file in the ``config`` directory of your project and built -several model files. Finally, to help with some common functionality, you're -using several third-party plugins that live in the ``plugins/`` directory. -In other words, the code that drives your application lives in many different -places. - -In Symfony2, life is much simpler because *all* Symfony2 code must live in -a bundle. In the pretend symfony1 project, all the code *could* be moved -into one or more plugins (which is a very good practice, in fact). Assuming -that all modules, PHP classes, schema, routing configuration, etc. were moved -into a plugin, the symfony1 ``plugins/`` directory would be very similar -to the Symfony2 ``src/`` directory. - -Put simply again, the ``src/`` directory is where your code, assets, -templates and most anything else specific to your project will live. - -The ``vendor/`` Directory -~~~~~~~~~~~~~~~~~~~~~~~~~ - -The ``vendor/`` directory is basically equivalent to the ``lib/vendor/`` -directory in symfony1, which was the conventional directory for all vendor -libraries and bundles. By default, you'll find the Symfony2 library files in -this directory, along with several other dependent libraries such as Doctrine2, -Twig and Swift Mailer. 3rd party Symfony2 bundles live somewhere in the -``vendor/``. - -The ``web/`` Directory -~~~~~~~~~~~~~~~~~~~~~~ - -Not much has changed in the ``web/`` directory. The most noticeable difference -is the absence of the ``css/``, ``js/`` and ``images/`` directories. This -is intentional. Like with your PHP code, all assets should also live inside -a bundle. With the help of a console command, the ``Resources/public/`` -directory of each bundle is copied or symbolically-linked to the ``web/bundles/`` -directory. This allows you to keep assets organized inside your bundle, but -still make them available to the public. To make sure that all bundles are -available, run the following command: - -.. code-block:: bash - - $ php app/console assets:install web - -.. note:: - - This command is the Symfony2 equivalent to the symfony1 ``plugin:publish-assets`` - command. - -Autoloading ------------ - -One of the advantages of modern frameworks is never needing to worry about -requiring files. By making use of an autoloader, you can refer to any class -in your project and trust that it's available. Autoloading has changed in -Symfony2 to be more universal, faster, and independent of needing to clear -your cache. - -In symfony1, autoloading was done by searching the entire project for the -presence of PHP class files and caching this information in a giant array. -That array told symfony1 exactly which file contained each class. In the -production environment, this caused you to need to clear the cache when classes -were added or moved. - -In Symfony2, a tool named `Composer`_ handles this process. -The idea behind the autoloader is simple: the name of your class (including -the namespace) must match up with the path to the file containing that class. -Take the FrameworkExtraBundle from the Symfony2 Standard Edition as an -example:: - - namespace Sensio\Bundle\FrameworkExtraBundle; - - use Symfony\Component\HttpKernel\Bundle\Bundle; - // ... - - class SensioFrameworkExtraBundle extends Bundle - { - // ... - } - -The file itself lives at -``vendor/sensio/framework-extra-bundle/Sensio/Bundle/FrameworkExtraBundle/SensioFrameworkExtraBundle.php``. -As you can see, the second part of the path follows the namespace of the -class. The first part is equal to the package name of the SensioFrameworkExtraBundle. - -The namespace, ``Sensio\Bundle\FrameworkExtraBundle``, and package name, -``sensio/framework-extra-bundle``, spells out the directory that the file -should live in -(``vendor/sensio/framework-extra-bundle/Sensio/Bundle/FrameworkExtraBundle/``). -Composer can then look for the file at this specific place and load it very -fast. - -If the file did *not* live at this exact location, you'd receive a -``Class "Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle" does not exist.`` -error. In Symfony2, a "class does not exist" error means that the namespace of -the class and physical location do not match. Basically, Symfony2 is looking -in one exact location for that class, but that location doesn't exist (or -contains a different class). In order for a class to be autoloaded, you -**never need to clear your cache** in Symfony2. - -As mentioned before, for the autoloader to work, it needs to know that the -``Sensio`` namespace lives in the ``vendor/sensio/framework-extra-bundle`` -directory and that, for example, the ``Doctrine`` namespace lives in the -``vendor/doctrine/orm/lib/`` directory. This mapping is entirely controlled by -Composer. Each third-party library you load through Composer has its -settings defined and Composer takes care of everything for you. - -For this to work, all third-party libraries used by your project must be -defined in the ``composer.json`` file. - -If you look at the ``HelloController`` from the Symfony Standard Edition you -can see that it lives in the ``Acme\DemoBundle\Controller`` namespace. Yet, the -AcmeDemoBundle is not defined in your ``composer.json`` file. Nonetheless are -the files autoloaded. This is because you can tell Composer to autoload files -from specific directories without defining a dependency: - -.. code-block:: json - - "autoload": { - "psr-0": { "": "src/" } - } - -This means that if a class is not found in the ``vendor`` directory, Composer -will search in the ``src`` directory before throwing a "class does not exist" -exception. Read more about configuring the Composer autoloader in -`the Composer documentation`_. - -Using the Console ------------------ - -In symfony1, the console is in the root directory of your project and is -called ``symfony``: - -.. code-block:: bash - - $ php symfony - -In Symfony2, the console is now in the app sub-directory and is called -``console``: - -.. code-block:: bash - - $ php app/console - -Applications ------------- - -In a symfony1 project, it is common to have several applications: one for the -front-end and one for the back-end for instance. - -In a Symfony2 project, you only need to create one application (a blog -application, an intranet application, ...). Most of the time, if you want to -create a second application, you might instead create another project and -share some bundles between them. - -And if you need to separate the front-end and the back-end features of some -bundles, you can create sub-namespaces for controllers, sub-directories for -templates, different semantic configurations, separate routing configurations, -and so on. - -Of course, there's nothing wrong with having multiple applications in your -project, that's entirely up to you. A second application would mean a new -directory, e.g. ``my_app/``, with the same basic setup as the ``app/`` directory. - -.. tip:: - - Read the definition of a :term:`Project`, an :term:`Application`, and a - :term:`Bundle` in the glossary. - -Bundles and Plugins -------------------- - -In a symfony1 project, a plugin could contain configuration, modules, PHP -libraries, assets and anything else related to your project. In Symfony2, -the idea of a plugin is replaced by the "bundle". A bundle is even more powerful -than a plugin because the core Symfony2 Framework is brought in via a series -of bundles. In Symfony2, bundles are first-class citizens that are so flexible -that even core code itself is a bundle. - -In symfony1, a plugin must be enabled inside the ``ProjectConfiguration`` -class:: - - // config/ProjectConfiguration.class.php - public function setup() - { - // some plugins here - $this->enableAllPluginsExcept(array(...)); - } - -In Symfony2, the bundles are activated inside the application kernel:: - - // app/AppKernel.php - public function registerBundles() - { - $bundles = array( - new Symfony\Bundle\FrameworkBundle\FrameworkBundle(), - new Symfony\Bundle\TwigBundle\TwigBundle(), - ..., - new Acme\DemoBundle\AcmeDemoBundle(), - ); - - return $bundles; - } - -Routing (``routing.yml``) and Configuration (``config.yml``) -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -In symfony1, the ``routing.yml`` and ``app.yml`` configuration files were -automatically loaded inside any plugin. In Symfony2, routing and application -configuration inside a bundle must be included manually. For example, to -include a routing resource from a bundle called AcmeDemoBundle, you can -do the following: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/routing.yml - _hello: - resource: "@AcmeDemoBundle/Resources/config/routing.yml" - - .. code-block:: xml - - - - - - - - - - .. code-block:: php - - // app/config/routing.php - use Symfony\Component\Routing\RouteCollection; - - $collection = new RouteCollection(); - $collection->addCollection($loader->import("@AcmeHelloBundle/Resources/config/routing.php")); - - return $collection; - -This will load the routes found in the ``Resources/config/routing.yml`` file -of the AcmeDemoBundle. The special ``@AcmeDemoBundle`` is a shortcut syntax -that, internally, resolves to the full path to that bundle. - -You can use this same strategy to bring in configuration from a bundle: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/config.yml - imports: - - { resource: "@AcmeDemoBundle/Resources/config/config.yml" } - - .. code-block:: xml - - - - - - - .. code-block:: php - - // app/config/config.php - $this->import('@AcmeDemoBundle/Resources/config/config.php') - -In Symfony2, configuration is a bit like ``app.yml`` in symfony1, except much -more systematic. With ``app.yml``, you could simply create any keys you wanted. -By default, these entries were meaningless and depended entirely on how you -used them in your application: - -.. code-block:: yaml - - # some app.yml file from symfony1 - all: - email: - from_address: foo.bar@example.com - -In Symfony2, you can also create arbitrary entries under the ``parameters`` -key of your configuration: - -.. configuration-block:: - - .. code-block:: yaml - - parameters: - email.from_address: foo.bar@example.com - - .. code-block:: xml - - - foo.bar@example.com - - - .. code-block:: php - - $container->setParameter('email.from_address', 'foo.bar@example.com'); - -You can now access this from a controller, for example:: - - public function helloAction($name) - { - $fromAddress = $this->container->getParameter('email.from_address'); - } - -In reality, the Symfony2 configuration is much more powerful and is used -primarily to configure objects that you can use. For more information, see -the chapter titled ":doc:`/book/service_container`". - -.. _`Composer`: https://getcomposer.org -.. _`Symfony Standard Edition`: https://github.com/symfony/symfony-standard -.. _`the Composer documentation`: https://getcomposer.org/doc/04-schema.md#autoload From 1941e85f333cf117664d25c3dd8d8f9789443403 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Fri, 28 Aug 2015 04:42:32 -0400 Subject: [PATCH 024/235] [#5480] Adding missing map entry (added 2 so it's easier to find) --- contributing/map.rst.inc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/contributing/map.rst.inc b/contributing/map.rst.inc index 84344670d90..22c759821e4 100644 --- a/contributing/map.rst.inc +++ b/contributing/map.rst.inc @@ -2,6 +2,7 @@ * :doc:`Bugs ` * :doc:`Patches ` + * :doc:`Reviewing Issues and Patches ` * :doc:`The Core Team ` * :doc:`Security ` * :doc:`Tests ` @@ -22,4 +23,5 @@ * **Community** * :doc:`Release Process ` + * :doc:`Community Reviews ` * :doc:`Other Resources ` From bb2f9918a54f2867ba7b736bb1bc1e07b563b453 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Tue, 1 Sep 2015 20:48:39 +0200 Subject: [PATCH 025/235] Added August changelog --- changelog.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/changelog.rst b/changelog.rst index c2ada55f759..4bd7f28e62b 100644 --- a/changelog.rst +++ b/changelog.rst @@ -38,6 +38,7 @@ Minor Documentation Changes * `#5553 `_ Fix all broken links/permanent redirects/removed anchors (WouterJ) * `#5650 `_ [RFR] fixing typo and removing duplicated lines in Config component doc (salahm) * `#5635 `_ Fix minor problems in book/page_creation.rst (fabschurt) +* `#5579 `_ [3.0] Remove mentions of Symfony1 (WouterJ) * `#5647 `_ don't ignore the _exts directory anymore (xabbuh) * `#5587 `_ [2.6] Don't use deprecated features (WouterJ) * `#5637 `_ Add QueryBuilder vs DQL section (bocharsky-bw) From 14bea4337976964cb3873d932895f03d78c933c4 Mon Sep 17 00:00:00 2001 From: Tobias Schultze Date: Sun, 27 Sep 2015 03:09:28 +0200 Subject: [PATCH 026/235] Remove documentation of deprecated console shell --- cookbook/console/usage.rst | 31 ------------------------------- 1 file changed, 31 deletions(-) diff --git a/cookbook/console/usage.rst b/cookbook/console/usage.rst index 6275f760aa0..0e2c1e5befd 100644 --- a/cookbook/console/usage.rst +++ b/cookbook/console/usage.rst @@ -32,34 +32,3 @@ but avoid the performance hit of collecting debug data: .. code-block:: bash $ php app/console list --no-debug - -There is an interactive shell which allows you to enter commands without having to -specify ``php app/console`` each time, which is useful if you need to run several -commands. To enter the shell run: - -.. code-block:: bash - - $ php app/console --shell - $ php app/console -s - -You can now just run commands with the command name: - -.. code-block:: bash - - Symfony > list - -When using the shell you can choose to run each command in a separate process: - -.. code-block:: bash - - $ php app/console --shell --process-isolation - $ php app/console -s --process-isolation - -When you do this, the output will not be colorized and interactivity is not -supported so you will need to pass all command parameters explicitly. - -.. note:: - - Unless you are using isolated processes, clearing the cache in the shell - will not have an effect on subsequent commands you run. This is because - the original cached files are still being used. From 7e3ab6fa0d86329dd9a8a52e6e30626dc1d1f8f8 Mon Sep 17 00:00:00 2001 From: Abdellatif Ait boudad Date: Thu, 1 Oct 2015 17:59:14 +0000 Subject: [PATCH 027/235] [Translation] Ability to format a message catalogue without dumping it. --- components/translation/custom_formats.rst | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/components/translation/custom_formats.rst b/components/translation/custom_formats.rst index 14c6e65c8b0..1ef3f365553 100644 --- a/components/translation/custom_formats.rst +++ b/components/translation/custom_formats.rst @@ -85,7 +85,7 @@ will save a few lines:: class MyFormatDumper extends FileDumper { - protected function format(MessageCatalogue $messages, $domain = 'messages') + public function formatCatalogue(MessageCatalogue $messages, $domain, array $options = array()) { $output = ''; @@ -102,7 +102,16 @@ will save a few lines:: } } -The :method:`Symfony\\Component\\Translation\\Dumper\\FileDumper::format` +.. sidebar:: Format a message catalogue + + .. versionadded:: 2.8 + The ability to format a message catalogue without dumping it was introduced in Symfony 2.8. + + In some cases, you want to send the dump contents as a response instead of writing them in files. + To do this, you can use the ``formatCatalogue`` method. In this case, you must pass the domain argument, + which determines the list of messages that should be dumped. + +The :method:`Symfony\\Component\\Translation\\Dumper\\FileDumper::formatCatalogue` method creates the output string, that will be used by the :method:`Symfony\\Component\\Translation\\Dumper\\FileDumper::dump` method of the FileDumper class to create the file. The dumper can be used like any other @@ -116,4 +125,3 @@ YAML file are dumped into a text file with the custom format:: $dumper = new MyFormatDumper(); $dumper->dump($catalogue, array('path' => __DIR__.'/dumps')); - From 4d63c3a123a7134d4fba537653db332c1e8fe264 Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Sat, 3 Oct 2015 11:01:22 +0200 Subject: [PATCH 028/235] [#5468] remove outdated warning --- cookbook/templating/namespaced_paths.rst | 7 ------- 1 file changed, 7 deletions(-) diff --git a/cookbook/templating/namespaced_paths.rst b/cookbook/templating/namespaced_paths.rst index 7fee3f7ae55..cfba9173fcf 100644 --- a/cookbook/templating/namespaced_paths.rst +++ b/cookbook/templating/namespaced_paths.rst @@ -71,13 +71,6 @@ directory: ); )); -.. caution:: - - Prior to 2.8, templates in custom namespaces are not pre-compiled by - Symfony's cache warmup process. They are compiled on demand. This may - cause problems if two simultaneous requests are trying to use the - template for the first time. - The registered namespace is called ``foo_bar``, which refers to the ``vendor/acme/foo-bar/templates`` directory. Assuming there's a file called ``sidebar.twig`` in that directory, you can use it easily: From 23c77987205242c88f2336dc562b963a15a1383e Mon Sep 17 00:00:00 2001 From: Jean-Christophe Cuvelier Date: Fri, 18 Sep 2015 13:19:08 +0200 Subject: [PATCH 029/235] Added a reference to the Foundation form theme --- cookbook/form/form_customization.rst | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/cookbook/form/form_customization.rst b/cookbook/form/form_customization.rst index f56639d750c..f56e479944b 100644 --- a/cookbook/form/form_customization.rst +++ b/cookbook/form/form_customization.rst @@ -113,6 +113,9 @@ fragment needed to render every part of a form: * `bootstrap_3_horizontal_layout.html.twig`_, it's similar to the previous theme, but the CSS classes applied are the ones used to display the forms horizontally (i.e. the label and the widget in the same row). +* `foundation_5_layout.html.twig`_, wraps each form field inside a ``
`` element + with the appropriate CSS classes to apply the default `Foundation CSS framework`_ + styles. .. caution:: @@ -1087,3 +1090,5 @@ more details about this concept in Twig, see :ref:`twig-reference-form-variables .. _`bootstrap_3_layout.html.twig`: https://github.com/symfony/symfony/blob/master/src/Symfony/Bridge/Twig/Resources/views/Form/bootstrap_3_layout.html.twig .. _`bootstrap_3_horizontal_layout.html.twig`: https://github.com/symfony/symfony/blob/master/src/Symfony/Bridge/Twig/Resources/views/Form/bootstrap_3_horizontal_layout.html.twig .. _`Bootstrap 3 CSS framework`: http://getbootstrap.com/ +.. _`foundation_5_layout.html.twig`: https://github.com/symfony/symfony/blob/master/src/Symfony/Bridge/Twig/Resources/views/Form/foundation_5_layout.html.twig +.. _`Foundation CSS framework`: http://foundation.zurb.com/ From 0776efedd1f006b8f496c129fae256afb88ee4cb Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Sat, 3 Oct 2015 11:46:37 +0200 Subject: [PATCH 030/235] [#5702] add Foundation theme to example config --- reference/configuration/twig.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/reference/configuration/twig.rst b/reference/configuration/twig.rst index 0cc02ba58a5..71ee92d105e 100644 --- a/reference/configuration/twig.rst +++ b/reference/configuration/twig.rst @@ -20,6 +20,9 @@ TwigBundle Configuration ("twig") - bootstrap_3_layout.html.twig - bootstrap_3_horizontal_layout.html.twig + # Foundation + - foundation_5_layout.html.twig + # Example: - MyBundle::form.html.twig From 18c7f046fd1a5230275d7b32a1962026cb805bd9 Mon Sep 17 00:00:00 2001 From: Marcin Chylek Date: Tue, 6 Oct 2015 16:59:18 +0200 Subject: [PATCH 031/235] Remember me, Renamed key to secret --- cookbook/security/remember_me.rst | 8 ++++---- reference/configuration/security.rst | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/cookbook/security/remember_me.rst b/cookbook/security/remember_me.rst index a3acf6f5472..5f0f785930a 100644 --- a/cookbook/security/remember_me.rst +++ b/cookbook/security/remember_me.rst @@ -22,7 +22,7 @@ the session lasts using a cookie with the ``remember_me`` firewall option: default: # ... remember_me: - key: "%secret%" + secret: "%secret%" lifetime: 604800 # 1 week in seconds path: / # by default, the feature is enabled by checking a @@ -48,7 +48,7 @@ the session lasts using a cookie with the ``remember_me`` firewall option: + + + + + + + + + + + + + .. code-block:: php + + // src/AppBundle/Entity/Transaction.php + namespace AppBundle\Entity; + + use Symfony\Component\Validator\Mapping\ClassMetadata; + use Symfony\Component\Validator\Constraints as Assert; + + class Transaction + { + protected $businessIdentifierCode; + + public static function loadValidatorMetadata(ClassMetadata $metadata) + { + $metadata->addPropertyConstraint('businessIdentifierCode', new Assert\Bic(array( + 'message' => 'This is not a valid Business Identifier Code (BIC).', + ))); + } + } + +Available Options +----------------- + +message +~~~~~~~ + +**type**: ``string`` **default**: ``This is not a valid Business Identifier Code (BIC).`` + +The default message supplied when the value does not pass the BIC check. + +.. include:: /reference/constraints/_payload-option.rst.inc + +.. _`Business Identifier Code (BIC)`: https://en.wikipedia.org/wiki/Business_Identifier_Code diff --git a/reference/constraints/map.rst.inc b/reference/constraints/map.rst.inc index 686ad22bca5..71eac36479d 100644 --- a/reference/constraints/map.rst.inc +++ b/reference/constraints/map.rst.inc @@ -66,6 +66,7 @@ File Constraints Financial and other Number Constraints ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +* :doc:`Bic ` * :doc:`CardScheme ` * :doc:`Currency ` * :doc:`Luhn ` From 45381acfe8736bd5a616b20779102a59a721b75f Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Mon, 12 Oct 2015 21:00:34 +0200 Subject: [PATCH 036/235] [#5623] don't configure default constraint message --- reference/constraints/Bic.rst | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/reference/constraints/Bic.rst b/reference/constraints/Bic.rst index 2c16b4aade6..0d4fc9aeba7 100644 --- a/reference/constraints/Bic.rst +++ b/reference/constraints/Bic.rst @@ -48,8 +48,7 @@ will contain a Business Identifier Code (BIC). AppBundle\Entity\Transaction: properties: businessIdentifierCode: - - Bic: - message: This is not a valid Business Identifier Code (BIC). + - Bic: ~ .. code-block:: xml @@ -61,11 +60,7 @@ will contain a Business Identifier Code (BIC). - - - + @@ -84,9 +79,7 @@ will contain a Business Identifier Code (BIC). public static function loadValidatorMetadata(ClassMetadata $metadata) { - $metadata->addPropertyConstraint('businessIdentifierCode', new Assert\Bic(array( - 'message' => 'This is not a valid Business Identifier Code (BIC).', - ))); + $metadata->addPropertyConstraint('businessIdentifierCode', new Assert\Bic()); } } From 1b00278ba56622998f0c97aba3e0e5bfb665b756 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sun, 1 Mar 2015 23:40:15 +0100 Subject: [PATCH 037/235] Rename CollectionType entry options --- cookbook/form/form_collections.rst | 4 +-- reference/forms/types/collection.rst | 52 ++++++++++++++++------------ 2 files changed, 32 insertions(+), 24 deletions(-) diff --git a/cookbook/form/form_collections.rst b/cookbook/form/form_collections.rst index 8c3e65fc0fe..37b20e24d81 100644 --- a/cookbook/form/form_collections.rst +++ b/cookbook/form/form_collections.rst @@ -126,7 +126,7 @@ Notice that you embed a collection of ``TagType`` forms using the { $builder->add('description'); - $builder->add('tags', 'collection', array('type' => new TagType())); + $builder->add('tags', 'collection', array('entry_type' => new TagType())); } public function configureOptions(OptionsResolver $resolver) @@ -285,7 +285,7 @@ add the ``allow_add`` option to your collection field:: $builder->add('description'); $builder->add('tags', 'collection', array( - 'type' => new TagType(), + 'entry_type' => new TagType(), 'allow_add' => true, )); } diff --git a/reference/forms/types/collection.rst b/reference/forms/types/collection.rst index 85a151f063d..27087d1c88d 100644 --- a/reference/forms/types/collection.rst +++ b/reference/forms/types/collection.rst @@ -17,10 +17,10 @@ photos). | Options | - `allow_add`_ | | | - `allow_delete`_ | | | - `delete_empty`_ | -| | - `options`_ | +| | - `entry_options`_ | +| | - `entry_type`_ | | | - `prototype`_ | | | - `prototype_name`_ | -| | - `type`_ | +-------------+-----------------------------------------------------------------------------+ | Inherited | - `by_reference`_ | | options | - `cascade_validation`_ | @@ -53,10 +53,10 @@ to an array of email addresses. In the form, you want to expose each email address as its own input text box:: $builder->add('emails', 'collection', array( - // each item in the array will be an "email" field - 'type' => 'email', + // each entry in the array will be an "email" field + 'entry_type' => 'email', // these options are passed to each "email" type - 'options' => array( + 'entry_options' => array( 'required' => false, 'attr' => array('class' => 'email-box') ), @@ -273,20 +273,24 @@ form you have to set this option to true. However, existing collection entries will only be deleted if you have the allow_delete_ option enabled. Otherwise the empty values will be kept. -options -~~~~~~~ +entry_options +~~~~~~~~~~~~~ + +.. versionadded:: 2.7 + The ``entry_options`` option was introduced in Symfony 2.7 in favor of + ``options``, which is available prior to 2.7. **type**: ``array`` **default**: ``array()`` -This is the array that's passed to the form type specified in the `type`_ +This is the array that's passed to the form type specified in the `entry_type`_ option. For example, if you used the :doc:`choice ` -type as your `type`_ option (e.g. for a collection of drop-down menus), +type as your `entry_type`_ option (e.g. for a collection of drop-down menus), then you'd need to at least pass the ``choices`` option to the underlying type:: $builder->add('favorite_cities', 'collection', array( - 'type' => 'choice', - 'options' => array( + 'entry_type' => 'choice', + 'entry_options' => array( 'choices' => array( 'nashville' => 'Nashville', 'paris' => 'Paris', @@ -296,6 +300,21 @@ type:: ), )); +entry_type +~~~~~~~~~~ + +.. versionadded:: 2.7 + The ``entry_type`` option was introduced in Symfony 2.7 in favor of + ``type``, which is available prior to 2.7. + +**type**: ``string`` or :class:`Symfony\\Component\\Form\\FormTypeInterface` **required** + +This is the field type for each item in this collection (e.g. ``text``, +``choice``, etc). For example, if you have an array of email addresses, +you'd use the :doc:`email ` type. If you want +to embed a collection of some other form, create a new instance of your +form type and pass it as this option. + prototype ~~~~~~~~~ @@ -344,17 +363,6 @@ If you have several collections in your form, or worse, nested collections you may want to change the placeholder so that unrelated placeholders are not replaced with the same value. -type -~~~~ - -**type**: ``string`` or :class:`Symfony\\Component\\Form\\FormTypeInterface` **required** - -This is the field type for each item in this collection (e.g. ``text``, -``choice``, etc). For example, if you have an array of email addresses, -you'd use the :doc:`email ` type. If you want -to embed a collection of some other form, create a new instance of your -form type and pass it as this option. - Inherited Options ----------------- From 21931eded616583bdc8b211fd1670e294c71c18d Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Wed, 14 Oct 2015 21:18:38 -0400 Subject: [PATCH 038/235] Fixing build error --- reference/forms/types/collection.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reference/forms/types/collection.rst b/reference/forms/types/collection.rst index 27087d1c88d..4e880817d06 100644 --- a/reference/forms/types/collection.rst +++ b/reference/forms/types/collection.rst @@ -12,7 +12,7 @@ relationships (e.g. a product from where you can manage many related product photos). +-------------+-----------------------------------------------------------------------------+ -| Rendered as | depends on the `type`_ option | +| Rendered as | depends on the `entry_type`_ option | +-------------+-----------------------------------------------------------------------------+ | Options | - `allow_add`_ | | | - `allow_delete`_ | From 2255de7f21efe227f29c2df0f9f3ee815cd5c7ea Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Wed, 14 Oct 2015 22:29:20 -0400 Subject: [PATCH 039/235] Removing getName() as it's not needed in 2.8 --- cookbook/doctrine/registration_form.rst | 5 ----- 1 file changed, 5 deletions(-) diff --git a/cookbook/doctrine/registration_form.rst b/cookbook/doctrine/registration_form.rst index f82d1509292..ac6840d8a4c 100644 --- a/cookbook/doctrine/registration_form.rst +++ b/cookbook/doctrine/registration_form.rst @@ -179,11 +179,6 @@ Next, create the form for the ``User`` entity:: 'data_class' => 'AppBundle\Entity\User' )); } - - public function getName() - { - return 'user'; - } } There are just three fields: ``email``, ``username`` and ``plainPassword`` From 3c37397678c538509029e37d50e0c57ac9077653 Mon Sep 17 00:00:00 2001 From: Javier Eguiluz Date: Mon, 19 Oct 2015 15:35:17 +0200 Subject: [PATCH 040/235] Minor rewordings for the "deprecated" service option --- components/dependency_injection/advanced.rst | 24 +++++++++----------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/components/dependency_injection/advanced.rst b/components/dependency_injection/advanced.rst index 58fde9ba615..3098bee9c24 100644 --- a/components/dependency_injection/advanced.rst +++ b/components/dependency_injection/advanced.rst @@ -226,8 +226,7 @@ Deprecating Services The ``deprecated`` setting was introduced in Symfony 2.8. Once you have decided to deprecate the use of a service (because it is outdated -or you decided not to use and maintain it anymore), you can deprecate its -definition: +or you decided not to maintain it anymore), you can deprecate its definition: .. configuration-block:: @@ -261,26 +260,25 @@ definition: ) ; -Now, every time a service is created using this deprecated definition, a -deprecation warning will be triggered, advising you to stop or to change your -uses of that service. +Now, every time this service is used, a deprecation warning is triggered, +advising you to stop or to change your uses of that service. -The message is actually a message template, which will replace occurrences -of the ``%service_id%`` by the service's id. You **must** have at least one +The message is actually a message template, which replaces occurrences of the +``%service_id%`` placeholder by the service's id. You **must** have at least one occurrence of the ``%service_id%`` placeholder in your template. .. note:: - The deprecation message is optional. If not set, Symfony will show a default - message ``The "%service_id%" service is deprecated. You should stop using it, + The deprecation message is optional. If not set, Symfony will show this default + message: ``The "%service_id%" service is deprecated. You should stop using it, as it will soon be removed.``. .. tip:: - It is strongly recommended that you fill the message template, to avoid a - message that could be too generic such as the default one. A good message - informs when this service was deprecated, and until when it will be - maintained (look at the examples above). + It is strongly recommended that you define a custom message because the + default one is too generic. A good message informs when this service was + deprecated, until when it will be maintained and the alternative services + to use (if any). For service decorators (see above), if the definition does not modify the deprecated status, it will inherit the status from the definition that is From dc5a831ae2f2235bf73cb2528d58ac63592c981f Mon Sep 17 00:00:00 2001 From: Christian Raue Date: Tue, 20 Oct 2015 14:52:06 +0200 Subject: [PATCH 041/235] fixed version for `entry_options` and `entry_type` --- reference/forms/types/collection.rst | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/reference/forms/types/collection.rst b/reference/forms/types/collection.rst index 4e880817d06..27b6cbc1d7e 100644 --- a/reference/forms/types/collection.rst +++ b/reference/forms/types/collection.rst @@ -276,9 +276,9 @@ the empty values will be kept. entry_options ~~~~~~~~~~~~~ -.. versionadded:: 2.7 - The ``entry_options`` option was introduced in Symfony 2.7 in favor of - ``options``, which is available prior to 2.7. +.. versionadded:: 2.8 + The ``entry_options`` option was introduced in Symfony 2.8 in favor of + ``options``, which is available prior to 2.8. **type**: ``array`` **default**: ``array()`` @@ -303,9 +303,9 @@ type:: entry_type ~~~~~~~~~~ -.. versionadded:: 2.7 - The ``entry_type`` option was introduced in Symfony 2.7 in favor of - ``type``, which is available prior to 2.7. +.. versionadded:: 2.8 + The ``entry_type`` option was introduced in Symfony 2.8 in favor of + ``type``, which is available prior to 2.8. **type**: ``string`` or :class:`Symfony\\Component\\Form\\FormTypeInterface` **required** From 9392f806db727b9afa10e5b554adb97fa935ad26 Mon Sep 17 00:00:00 2001 From: Hidde Wieringa Date: Sat, 24 Oct 2015 15:53:44 +0200 Subject: [PATCH 042/235] Updated CssSelector code example to use the new Converter --- components/css_selector.rst | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/components/css_selector.rst b/components/css_selector.rst index 3935f3c85ee..8d5f0d658b5 100644 --- a/components/css_selector.rst +++ b/components/css_selector.rst @@ -47,11 +47,14 @@ The CssSelector Component ~~~~~~~~~~~~~~~~~~~~~~~~~ The component's only goal is to convert CSS selectors to their XPath -equivalents:: +equivalents, using :method:`Converter::toXPath() ` - use Symfony\Component\CssSelector\CssSelector; +.. code-block:: php - var_dump(CssSelector::toXPath('div.item > h4 > a')); + use Symfony\Component\CssSelector\Converter; + + $converter = new Converter(); + var_dump($converter->toXPath('div.item > h4 > a')); This gives the following output: From df4fc7ec58c4c233a9f27988131457ac29e5b8ac Mon Sep 17 00:00:00 2001 From: Hidde Wieringa Date: Sun, 25 Oct 2015 10:40:02 +0100 Subject: [PATCH 043/235] Updated for CssSelectorConverter class name --- components/css_selector.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/components/css_selector.rst b/components/css_selector.rst index 8d5f0d658b5..d77fb89469f 100644 --- a/components/css_selector.rst +++ b/components/css_selector.rst @@ -47,13 +47,13 @@ The CssSelector Component ~~~~~~~~~~~~~~~~~~~~~~~~~ The component's only goal is to convert CSS selectors to their XPath -equivalents, using :method:`Converter::toXPath() ` +equivalents, using :method:`Symfony\\Component\\CssSelector\\CssSelectorConverter::toXPath` .. code-block:: php - use Symfony\Component\CssSelector\Converter; + use Symfony\Component\CssSelector\CssSelectorConverter; - $converter = new Converter(); + $converter = new CssSelectorConverter(); var_dump($converter->toXPath('div.item > h4 > a')); This gives the following output: From dfb9b16d3a0d6ac0a5b14ad1f5f345f27cc3fb24 Mon Sep 17 00:00:00 2001 From: Hidde Wieringa Date: Sun, 25 Oct 2015 17:48:05 +0100 Subject: [PATCH 044/235] Used :: for code block --- components/css_selector.rst | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/components/css_selector.rst b/components/css_selector.rst index d77fb89469f..588582fb371 100644 --- a/components/css_selector.rst +++ b/components/css_selector.rst @@ -47,9 +47,7 @@ The CssSelector Component ~~~~~~~~~~~~~~~~~~~~~~~~~ The component's only goal is to convert CSS selectors to their XPath -equivalents, using :method:`Symfony\\Component\\CssSelector\\CssSelectorConverter::toXPath` - -.. code-block:: php +equivalents, using :method:`Symfony\\Component\\CssSelector\\CssSelectorConverter::toXPath`:: use Symfony\Component\CssSelector\CssSelectorConverter; From 532b0a4fa312bcb0d15c7f3e446102c2cc2d5845 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Thu, 5 Nov 2015 14:54:23 -0500 Subject: [PATCH 045/235] [#5835] Added versionadded --- components/css_selector.rst | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/components/css_selector.rst b/components/css_selector.rst index 588582fb371..b01de07013f 100644 --- a/components/css_selector.rst +++ b/components/css_selector.rst @@ -46,6 +46,10 @@ document. The CssSelector Component ~~~~~~~~~~~~~~~~~~~~~~~~~ +.. versionadded:: 2.8 + The ``CssSelectorConverter`` class was introduced in Symfony 2.8. Previously, + the ``CssSelector`` class was used and ``toXPath`` was a static method. + The component's only goal is to convert CSS selectors to their XPath equivalents, using :method:`Symfony\\Component\\CssSelector\\CssSelectorConverter::toXPath`:: From 59ac6e5ec6ab1172c4c2ffd532b9a6f92c360ed2 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 7 Nov 2015 00:51:11 +0100 Subject: [PATCH 046/235] Make screenshots with the new profiler/web dev toolbar --- images/book/doctrine_web_debug_toolbar.png | Bin 82133 -> 44166 bytes images/book/security_anonymous_wdt.png | Bin 26288 -> 9302 bytes images/book/symfony_loggedin_wdt.png | Bin 21855 -> 11478 bytes .../exceptions-in-dev-environment.png | Bin 131511 -> 97765 bytes images/quick_tour/profiler.png | Bin 888832 -> 75322 bytes images/quick_tour/web_debug_toolbar.png | Bin 89165 -> 51250 bytes images/quick_tour/welcome.png | Bin 66708 -> 49788 bytes 7 files changed, 0 insertions(+), 0 deletions(-) diff --git a/images/book/doctrine_web_debug_toolbar.png b/images/book/doctrine_web_debug_toolbar.png index b7c5a690d7267db0bdc12a27286bf49db8adf9d5..dd5c3fffbb1305f70b325eb9835c6b01b0645354 100644 GIT binary patch literal 44166 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 VRfA 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�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 BOHTj* diff --git a/images/book/symfony_loggedin_wdt.png b/images/book/symfony_loggedin_wdt.png index 7280d9978bbb40d85b9daec93516be303051f7ec..6605c35edf7b74fb49cf8f353f54263ec65bc983 100644 GIT binary patch literal 11478 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 Ao&W#< literal 21855 zcmdqI<98*%lK>jqoY=|4wr$(CZQHi(OgOQv8%>-{Y}?7p{C3~&p7Z{LcR$?I)!kLq zRo%C%x~guZf}A)!3^oi95D>higoqLl5U|~MI~@w-`@4gRyc-DUhmxhRu!5wpFrk8z zy_uzrDG-nbbgiZ*hw9ey)=`{JooC*WXI}V}^TkbSw$Ps8}{9=e+OB)0Y4Qs@6#%(d_I?DQdY82O0cW5D1S0Zl{Y-l+`) zkQ^isml#SU3J6d#XG-)CWQYK_OkjN+EmZ<8cs7}U%?~80Af_I%ieeJpBL5ryp1!o};lurvV<@HF!}zZmVkTmQ5$ijYP%`76!)sW4oCX_F z1MaKy3?xI#MelgHL}tNlnQ*+XvEIUaHJgNGC-PuJS^XLVeh_0ugyS0+M!-M{A#D!q z$y*vxB7qjl1g27DYi*w+mnph{-izXaB4S*N7vPJ6B;jD2&+Ux@4Oq;d;kXKh{U*{l z5r+DORLMfRyo6yqim^8)?vN3ggnmdkmqL32P0R^sR$|HarwY3{mN{evK3o|_l6T0b z1z04;L~G6Q7_fx4J<*U8tQCcIO9}|&1Bj_W zsEFWJ{uS^6pmz5+G5u%ZIF^DVcs>=r>n z{E6i+sV~cFs33OhJ$CJoV8mp;DT2_>tkN`274dt3F<#qT33!%pwD5q5&qh1y;KD5X9^zRDdeW5`4vOU_CT2ook4^LJ6PQZZ9m`h0&qqlT8UfV1!g zy35B-5eR*OoN^PTP#PmDR6$1NfPsu$5dr^68BtMLVFe_BvtY>uM8jbpw+OYo;BT5} z33PneZ*Tq9+ZX^1gxv!o@U^3#N$P{6%mkF%1nijdEb9y;>}>!H%rHnFj0pwoNC@hy z1ga%K@Bn1P+VpC$uxtDh=}&?6+Go}?>+fjDxE#3};8C_;nKErNMB^qGiA0u3dcl*Cd3 zBPlvZl#W<+%ypk_K8i=^H4$?R#{}XftfpZ0rx+Tf6cSmelGsUsjKc4q>M4j+VCcb8 zLZ!uVg@6Jng>=P-3N;n>Q%)-o)@UsuP!`ZESlTExk+Xv7**FV(7ly2$zu^FpqhjgV zmSggj<=|uJd)!wFh;YNv2m>@jKP}@82H=bzQ+zUPhcsm<%JH57SVLX?Q^tOVks81? zJZgy6!4E@W2JXhp^)D+<=d?DE?{4G`TaFyKm~z2TZ;+|k_$mgBv{ zwFmZYx;#9)fd3-P4=CSYJ%hZP`oQ`D@kf3MjtWr7l#7{59?4>grc0&EtIN8_+XdJ~ z*`?-%>LuyL|4rme;7k1E@Wt{){ZM|Dd{qUZ7R)jba3BjoR)R8zY6(FY_+c0r7$_Jc zm~Myznz;ish!tiHhlur;;oZc$z` zBkmjY8%R{{WRzrhWx@r&GNCfBGT^eAsr#v&us^F$*?W1@z0 zV@i|uX{M>hp$S0M#OWCJc-FMm^lOA`7W@qPuvtIGSQ@l^8=^`P|_^mO*X@fdw!@Nx24e|EdeJv!UY z-aFb}K0@4{+3)TDQUW3)q}ZmZ7cWpL5I2xikeHQX(5e@x*L9GKkRH?cDf3hQIBzzF zp|ie_L6bwiP4u}Ksyrf6B4i9J5t8_>2&8DK$gv1h)LT@2xMX-^NNKn(DmEH*$aN@q z_-<%@=!h(Y?3^r#%!*V`YF_$OB1|eT?L0{*Eh+6bfs1sJkd=0t#FiwNRF{O8TsVa> zDKe2V(UUwnc`*?_otI*rB0Om!1vZsB#hWTVX*r2vGC%oBy^rdcN`x}yCmb~sRo2fD z>ZPAOin~gU%2KLU3a>RZh3B<7#T%vX(xS>_LZvdMDyg!r)mBwj$*1hBoGm~tLM`T} zBCgU8AE&XW`mFn`K`a347>h>hHEaBNn+2Wa`K2O@MXPBGX^S^YOiRQwhhvTtlQW(_ z!>3uNm&>+GAC={$;)|VyPonyY{5ri_{$A1dX$7>V+JCVkuoB?tuw{Nk{dmRFW5{7Z zVI{^&{n5>e!H&Q}$DYTO$O_HeZgab;GMr-MHR-Y{Gh_2>)z`VXJ=L?!^A~t_X!fvX zw0fFR8c`Z++MQaKns?2mwsEa(t#eJdEtoBcO_j}ItCjs`=R+WEac%U4=6b7}lN(wm zxp&Hk+FSCYF+vi8A_9C|-`vPe$zEG>vvSNru5FvG+&WCFuY;PaoZF?7q5F+%rQ6G; z)v4Ep>mS(>T0re|?y7INcj{YXc)NJrXh?bEk=~3QJs*9edNKRo_07%=Z_Cc%N9A=2 zcZQ=74e=(AXe_|T$6 zheYq#x}uHZjv}HP^o7*QA^|NyE;282F{U$>S)P$JWxS}7uMtiquEWg+Dg~-L!=-GO zp^xEv{N`n+J$XI32-!X91R1_$j#Q&eM>Av-g@L?wqlJ^yZFV=gH~ppXZsypqq%d-5HM#J-Z(Xy^*H(!FbBRR<&Vfe| z0G#|^v=}r1D!q1r9tNkmQzPF<6-htJI+mV$;Y@GMWwKmp)dQac&4V*^MRe3uKq_KY zb9Ge}cvbvzfz_^+8QoRehWqfllyR-m#c;KbdQ)AXwc|3M-cu)^%iyEfx@>NCi))gr zXzPl-=@Q99t8$TdHW7m@e?`GCJW~sT|npP74l{2*1CnHm1YNl zuYVnD$%AgT{klb``CAj@I{v-eiW|>)^SR9x(}|U*#dZBl;@{%+cvpOO7i-t$CyU1o zucDWIwO?xXAIcZyvA!L?vLD*7SMWdJn-Q`Q-T0b3mp(RjJiijwXUDGNb|Mq|5>GIZ z>3e!&{M)&_4B)uaH~~y~UsBtuJ-i7mpzRB3wKKg7ss6e?oC(5Tfbz>{0aTW z@=@}tvedHe@)~kZ-r7F)_HFLZPjyBpmgGhAP5G9689(QluQ>T%Qg2=Nv>!pPgocYo zjMkGD=Buv~x75>_{jWbO-Yf5#tcQ(Ftz4h5{Vt|D&b=1s*Y%BY5^-?mNMS6UX#>K@ zs5pKE*rNj>bpsh(fd=&5&*WJvgVH4;SAa4iTryAXP#GX03;85ap$T{vT^5winKN!= z5Z8eGhQ$oU96_AVEqWsP$!PFHkI~PRn5nwS#$4946Tml2*>^DPn`Is&pTw`Vorl!q z5HZHfsOK0Z(zGAdoF>z36S^S{-c?kT6zo(l6=W5)CitKd+nuFSi*#Yj<<#+GQ{Aie z;jVQEs}0Kv=LV-Z=13+?mV3%BQ(Xg1^H9rFt9pl)mYdtR^CK?_;v*bX40H>^7vU3qLQV~;2>~&V1J{$Y z%6{1hj$M>uDLM-&9Z$dQ&1s-}D6k~c z%ngm_2?Aqc__Bilq{&>HO@^YgO=d zPulfvE0PeKIDA28)KyX5~&fyEeO7`-Xe0JL}W_q6S(L zN*n_FMHcxh?$CUazLgjA4NT%Du=`T`(&zx{JQXR`I0Z+wMFnH^Y^7dk=6(gm{`9HHryTvIrt$)q&Wq;T~ zf+$r~Vp)csup_vcPvM$z73H0zwy<~ZTO2jSQ)oCfJNe3)?d$Tg=6oH%{WRdFR<%&r zcZ~Dm>wUfqtwaGRRX3V&eDc<0R1K&~FKXx@bS0^2yS3b{O~LQVws0M3@4t4#bHDf>(J63`9mGUbZk-ojVonexQZ&RsFO6Djv=N_mbi(C;ts zU%?)8p_$=uldx2A7X9OH7W@`m=O0gg=$~A+MPP@6uil&E-2@$Fo@N95zX6i|9nYe! zpBJs!(db**{yut(dNb?i{%{+#6+re5C^1Aq5!^}vUE-DnOp44FkS?fV;L6d9L%(-; z9HXCkxO_V-U!_C9Ao#_&ix84Ynb~0z(PzTyi#h9aIOxpm{O~FDWcgtI+<_YnLK1rG z%Oh%!F&MEN&Dx4i)4B-J$!bYHln>KvQgTW*>fimqkwf32NXbMhWmdI3<;c`k)gNND z(mH;>YRB$ng=IBqmAA;Y@SmU^YaIj5&`-5b=xr$3>Y1MnHO%&HnhkaAg&0+tbs4Ie zb10Yy5`q5;MH3<$-CFPk#g}lQ>|g_)?5ZTorH6u9NFy=9p9`r z4WEU$15KfH;2HBRyW>ATJS-43B=tp zTqlvscd+VP|gjSLBKqW(8#mlY(M<=1*OkbFC zn9i!_rP!lbsfDiL+fjA|Q?b}4)#LX0x-ILonWoM7kd7T@zrcR732o2k{j}3P{5DX# zWXpJAj^FIkbuqw~;=BLM(a_mw-j#lJ0_dswTogPqzYy*r;h|R>+1G37I>|2qu=wz` z*FWD8)qZ_(dKXVabI<}wNdsL6m~#Ujfl?@e2rD6u;xT}7B7oXXLD1}h1=iv~hpHa0 z-uuD!w*gEbxZ#~6M+V>k;zJ1zCzSR`9`Q6qpPwWugi~eK707Mw$)cSFPes&oGYmk* zA*+GoLo9}TMlTJID`+;TZph_9(L=f;z5~_UdpEQ$U|jSa*j{KK2(R2=fTGX-;aUYC>(8Y#z=r&SyA9p0RN-RA5p9^&mr zA06%3qpVOypm!1PQ^ugzp+aLEpk823qO>OUNx4YjCpx7ZCgG=2rah!5C%h5rS0a^F z6g+F5gx%Vqlc;(v617O5cCzZQv^0CP_*wP_SD#XQwZC@maG2Wsv=p(wAAZi1Ot!?E z8q~&sPiw8U)86`Bx#hL_d#!HevqZRqWRcP!JGrSLI;%P*JApeMGMyqFGrx7rEfepQ zPmKG*xAiSFG3h-X;vT#KvNJpf+822Q?-C^uZx#Q6SBq;T*NNc~;z6}*>ar~aK>Er1 zXTRT<>upl0P1$*V6#)Y`iAN{jGLO|M1;)H`XXCVM_njMDCbS%Irgu$0PI*SNRl!uV z>RgyJdZlyQ-sy_xEx8Z0D>!TgF3|H`s%crOkSEL}W^9 z`xU*f=Q zV#k*HE(Zf0R2;Y*>l{^`z3-4b*F2xDEpKVBx6le;tYGM1H<9I#8!$|f@zAT0%B35`d&C(e~_|>h%=xDtZmAT>Wvw0FbY;)V|$cCt$V7oz6r6( z?@{B?;5BK-zP_`U+{R3B$qpf*4=Muk5kvAn`e%WsJ#g?INg$+p>;=auzssHK(dYJ{Amynca#-)Y)xhSt~Z)5*^7 z9_KFTvFHxv#rxc8KE5R1kvg&3&l+$h){Dl*!Ty#HdOWZ&P+WlAC9Z*NOp47J??R-% z(;i35Gg>JYTa-CVe(Z6Ne(xOvG=i5L>P=?AHxgaw zdVhH`gA;+{^}`gWHS?VznR&}H(SFrjw%Ktd%ld6VZ^JO%c#=)coFLt48Qk4Do;gpy zJNNhU3)B_QWjI;svp>QgXeroBSakBy5Lc0F@exsYk?P@`q8i2E-8J_+vLW)vOGO#J zhNscbZBTk;-GwlO%c%_BuCFnZG|R_f`9_8oucTQ!jnCu1$tv)uX4wI{EuTPWzb|Vohb}+W#(&L!xt=b+k1WM9X?=}CR1b23=s^`z>d5r0t!N~G0OiB>c>zX7 ztj0%1yeKzpVt^g^ck{oTEhd`3BBLfODi&xwBOl*q&isLd5SDQJF@h$)(+#Cmj^HLe`aufxBqq16BGVt zii^o*RGob(J#^h`{&-!o{PJ?&f!J!tKmN&bt-|4T>2)Y;g{(!s^j-j47eT|*;# zR~KGl;(v_(=ks6dH1)9jUru(;|1H+Hfb{=H=o#r4=>LcIH!9D+UM>Yo4^tZr5ldTB zJLhj6e9UZYJpY;h{~7sTj{gT!^M5fJSsDK?=KmS_Z%iKge**j;f&NQd|LOf!7at4{ z{r{+*4@UP)-~=jI7;&b!Mw@&UBZ@cLhFESxRt`yXf+Krw**0Kp9FL&r?Z zJuv$Z1O|L4rNRGiBq#vLnM@EUvGN~~L2c+8K-7l>1p+da3I;4v7W54m)P+0%hXDx_ zLP0U8qkti0!h8b(?I=r-KS1CD2?_gjB#{J6sJ?-JL<#=?L9{!#U{6WS@$p5FoleLH!Gt!5~1a7#bcvm9}#ESMMiPwgV@_j=0<92B*)nLyOjC zxqSX);Y3XwTwolL!{@ta=ceCwU*Ni3r|eR;&Qe`TS(({4JQxOl_M?pkQ+V4+cze4) zm_j};CN}n=?%A|kEy#0vwotfR&=B`q;Q|=I8}x0~CdqWx>Ol|4Y`+pOFk;4$5=4QX zqJOClPp+ko1r2Aw0fz}de(zWbXh8$bHxPjKy(c9R^&G+hM6J)$@JH7;ADh+1 zD0@Jrz!<7tQF7G5xScCb;6DR z&$P)q-}8`YI0NW3)^zYETjT@n;Lh0`<2#h{VGC=T%Zd4pRPDZ@m^abRgcw*OYacb^ zK(qh)JswPpaboDAvY)ep9C-?4h3-1KOpWQoO9v!LJ}(JXKW(tp7Z#GxEb%H%b?Cyy z87j0h4zUm|PU@j4uQ-u5*Plov9+8y(NTY?UtfdJ}k5W`p86>oy@Pn8%Frg*I!BiIg z=-lbmXVP-TfewgUj?Jd|(`gMqfE4wF^m|h*VOPi_1Dbx*(DN?*nQBT-L!*c9$ZCf$_Hq+8@lgt)WnPDSh`!s>8>2?P<-9<* zL@e)Y5j}QN`+>rWdsLqVt2e>Kdh6uaaUcyZ8OZYp-qKHY+4*!f9t@$FOA&7~MJWx* zdlDCag@t_ZiMGg>4$_Ot|_H*Z|PDq1|) zKRl#a7Ila%n`$41mkVzZK;$oy8XKR6+%jWgPgGP$4<(Shtf>4t>xg$Pg*=5s$i36J zm)(#ZmLw?x;H|b9t|zmO%D2H zqR?uYC>u=&bc~H1b(M9XM(}=Mb+wumCRtaEF$+U!p1YzOh#$i&|7g|;W}1;H5z6^3 z`|dELW~gWFisYJLV`W*h4klDOsc)R|6Y4Iq7Sjr%J1hXtu)qPijvGDjrYGLp(cvGAOROe43=)+uq$k128^`tG#;Q@TGs=7*ybf`n5a5U2 zM?5`Ko%X>miYBdyG9{HNoSkk|-v*}{+`cVnqd8Ad6q7Ne6pjOjZyWfR%kMU0e9s)( z`Nj3f$jF|dGMxtigbHQA*8KHWyR;e}?vU9E^-)zANL>oD?Z?vik zdsoQ_Ev_s|7W{N9QZkDJN;|f4B!QwWYS9i4@9V5Sxhv}!s;AZ68TVJ(Kytqr`cwBnMYUkAtqanZe#Qu~xG(^M^UB zW*-p=T5MgjLVHKwMvYSSo{AZ4d!aUmsgxgOdTy#MKzh%dOCh-$F3_P4kYi`XVrniJ z1NH(O^+XscCH))~DUIp;+I4G#7Bq~8B2@oU9B0E~b|#xrIG`l83@^!X>EPw-EOhSb zuh|~3=XWTM*qigWY47D@P==&ft<<=P1QYNDVlm^G1RR}1x~D4xMt4RJu;1)(eZ4=y z3tT_xyQRcLDRQxe$dqjoTP~QRtkjB$z=&i)9aRO<*Zf|7;{tXIsP zs!Xfj%aSyNJ8Y(0yvho(ts;4*-u3~7f)3M4fx_gZ7p0xdC6q|qbvKTFPP@p7+d@^f zqtT-Alo&iLKIEA9*SWsQ&A~80-7*Fl?At6rgG5}zP+qB0a3N_ige!!0Ug?J(cAr}1 z$%bL?%&SiZDczHm?bkKP?~Q)yTCl(!56pWz%zZm<)sEvHLL=(eBms2mM9^vnLFJGH z1X*n4-PJwJ0Y$6J@j=TO_*og$Hvz$-bRZzmtvt+5#~05Hz1{74jdt^rrN+Ksci1uF z83ZS!A%$t}Nr1uc=U60=ou!-lo5<0;i~&7BKkH(o#th1Z`JYo^20t)m2&I$t?I1c? z{>Ev_BAT84=Y?dmLNSLEIam_+rRma7yLArL_FOwVtjw`(*1~?f5boBAdG_)OfPO>q zb(hw-0iAz6_;&KMGymyH#vjy?WVei%9F75Sgq1P7=+RvucX=_XqwvsVmH{Ch#~531 z37Z3{8WQ7wbKV6GmkG%WTbSMMQ)gO(dyeZQJZ#3C%rRXkgP{j*kn`e;o3nXJx}8DF zJkU>&PvsA#2#5iWa2a7_$t`3KsA51y{Fdb=V32!WAx}htn;?rG(MFCXC4&3C=MFk^*v675)=YopX7Z(z@M9o)I>Z|I=);|$J$ z63gpjygD7n`$}6jod%=wEcm~565N-`R_ku5+f1$h8PO2fd0nc0Lj`@d!s-brBUS%& zz>$>PoeNV>%HF9|F3i-G6sjC;&DDk!s?$-Les9$u45goYO(?S2g)o)haXf%I%%9;K z=K(y#cDH!^oU7{n8u@uS`lP>w{yu{TzF<){3Hg1uJ_CiBbK}s|f!a&_(Gip@5va#3 zJ$dp~T5{;1q23fysy*@Q=Bth&CEo6eG%~h14_R5U6ji0u|D&MD0!#A^ z!6m1r??04aPn(kSN=C_&`IM_rkjrA7V1Z*)b@f{TGFW3JI`28EV=4c=ATM!V; zjgFflbeDo$K4^Tg7_rN*O`w#>TU9wi#Su*rLqY*5VM|*jO)@ll8G8 zbgwERMIVOmww!iGBp87L|6)Q-M+Oc1xXAQ;qonYD{Nm55*ErVur_W!!r)=m%SmlZb z$HW3ZWZ$8NPwF*lF7GV1sU=F%#Tm}Kl;O-Wd;Y& z{hc)@DdLso-)ZfZx0}-Swl%CZ-JboD>U2FVZk-`;IrxOPzFITb^w`A&|48vkpfxQ9tKQOXG7BaGfva1co7ASDVn$O_KTXLo+6_v964%wdA#Z9yu7v9TvnDE!)L8)ICac2wJ8!_4 z>i0F%J{tZcdBQs-Pe&;1^Te$r=1yZnNdnxXUt?ESE+O;l5||HVmHUdyN7tsacw#&S z0$leY&4$TU1=e_VGibZKl+r1EkY-JU8*!gr&J%RTpq5|<+i2$f!lu4?OIEF$k0CxD z&LGrnsYNRZ5!@=OgAcAMDkCE!rQU&zgeDlT6zezuvPwRZQI>=teNj^MrFz2GhLLag z)P_Nx+&LLa_;MbtTr*$N2i}pl>kZYE*aS&#C(+{ES1PvrC&69mLMerOzMhVnYS=-BCOIT;i*#wE0(JK3dF_P9mkI5b$dr}Z9vVJa z&cI;$mdUD$!tzEDdHJ=&K3bkp)7*~`We+WB!~hij*~b;P+yjmW)?$Q9@82e)=G~Cw zLwaxb#gYWn^83AAmgoFd?v6Scjru@RnPbDE0vi#St^0O*Sxs{?VqaAh7^M~`1w^}% zi--4S)s=um6!Td}4$c)THdafLXJ9Zu!8TeVEW9H|@o-A+cqQE8%{%RxqU^2}OUL^_ zLRXB9a@iXiu5R7+h5BF2_NMI>Y<{jniu_3_<}`EjTL2A_cx5D`MXZ>$=h}u7x-LQg zF$BfuFm23U{fJRefuV5eWsuyCBM#=DUj8o{CHLFa*oWdn(P94E^}&?RuRm&ZEL3hm zlx`q~IktYiy9E+?iJPFnZU}&T1h$Z0sMgP|{X^pG&$BZ}Pds3w;iP6iO?sEZ<@jV% zpt@J4U1z+tRHa;X{wWLAzO-wm-%|Fjq$rHcp%=G`|NJiwzK1ee94eo(&J}CRw;}Q% zUT$Y}Ly)V#d2ls~jpzPb?Vq(pV=j zk~%h_t0vJf!So#nx)AL-o6MGZH?{yH-mB|7(Fcf2b2Y)6Zf%8#wfV#y3jM5PcYRcdO z@#6!|bqQuGMA*#bM<*@q>%D#bWD4U{qWN>k1GbyB?_j8iQCuidwfQ5-OCUn)_wIh0 zX>Sw_qaMgYNfF6NK8Y4o7A_&AbZaI=pOL!4muY$( zMcKl#s`QesNrwK`uU*LD3j9*wZ>(~eRHu=fcVj)4bH05)e9&GzS%{tgbt$@?-1m2L ze$^t2Utd+TiNWCrl~AFv)&J~UG^{G$n-2K)?A;8X=bFB`I&@ks_}9RUJ)WnQ_m9pE{SM!#iR;zBlVFS zw>aquN?kPLU#ut053)q1)F|}xdz>l5+H z!V&%Ra(mL=-p`GEJ1`EGNGk1EwLZ||5ya5~`cWYYrdUFSlr=<#pgl0LGc7nvcMU?j zZ`oF{mHYQtPI0k(lc%ikjaiKjC~KgN>(f@ z$v-9V5UFwD)r=u{Q7F<(?j=$nymcKw0d@{@$Z_T)D#DMxBy+V*U7bsdPifTAqmzv?6K@DW4sdnW*BV!kFaIPCH zoys8P@QMu86h%P|IdNh*S}J}<9|5T98bSP|(&u<^%~737F`#Xc3+E~pt!#^k*aJz* zK?G)Ks<33$M4G&^ZGSPfmz0^RtQtD0Ss{N7%a{u<)xhP*gcwi*0zL?{YKG}{G{v$= zD@jB)mgL6lMjTj3b?~sTD&u123iNj~&{zq`y62_QDaX+z!ZXtpV-Whsi>laRIAAi` z?k3(-yH~aSgGoq9ss)q>vPqyMCXk=g!H5|3*iP|b+wyM#VSi5UWYf%Q?Z#1bal?%( z%u43u0?s*>>I#Xa?OC*IiJ~#doZwB9lNToOBwui(oG?dO)68cI#BDikIJibLGA)&p znXR&DM}lDDy*Dhy#kwmuuty1;7But>jyekr3a32Tb9n8;{+d|IXyhd4XBR7LM_FY% zDuwY){;BvEteDZP8^o;{w|)_yT`d(+{u{$`8JU!oby`a{nY!sC!$%SBrK*kK;2r@{8O2t7^ZMhDTj)x;rQxKeU`;deck>%-Cm?A?4a z_1NZu(O{+Mv}0*%>RGyV)|mr^8&Smq^hPfGagxLNyWQ_vXd89=zyR+ zM&Cj~PBh%;9N`YMG`meLX-EF{ZIXVKfLi6M+*u6EUeWw_o#koL0jhRR4wsVgI5TRw zUh8;F7%5~1=hW)K4)TtU^015V@4EWtj*do#N~=#3l81s_F0I%F=1CSZZE8up9rQ}c z`kB>%E|}dBMcn3N6{`IoMXUv_n!&O7c(c;PcIk1~m|9 z!O)DynUc!JTcHtrVGbNx3>C2!j^%`+{Uog_@*g<0uJ8!(`~)pEa-)C=|3)D8PLZ<47VJUaf2tVmR|~Ad%K2dGT;RC8vSb@*k96U>;%cldgY$t<%U- z3ELH=O>trVAikFc6E=oA1FNnd za8ufqR?=o+E9Aprx6eUq-pmOXSJYTCENNyOO2XF>6RlCKxJDgy!+AqWo0)6jO0D8q zDJvHo#Q|Fw_Xvk-{!|)e3Jy3KOB7+(M}#LRY^1v zOLi?hD(WUI^?N2e5g;TqS}O~e>S-F3(FHpPn#SllGc;OB)E-L$dK4*Hgy3jXgpQUn zX4RywqKYY-=G{>{lr=gX<8UaWpPF5JqF)(Z&2FJc-qp}ym(Qk~L@TF&kxAk7Z*@#v zMWYt=p}DCOG^ajIP-N9A?DpFjSG-)SMx|0zcV#t%oPh+$7o@{ZWwuV)q^I|wk}HRK z*0#HOlz`PpOcUwBhP7)v+-ldJRV;h5uPbW$dJ- z33weS&622_WAUU*BPuad|0O|FLsMH-)u>W4Js~4KM%fQDdCmb)Q7~vF#i-LPn99~R zm}j%b6x&{%1*z87)-Th{LBQ#X>4fq7yd5R;tOgksl1s4(bC)5K=LQMKt-1$3qAO5M z%qDrE_RdajK^fbT3eNcK{d(hP?~LtDC@F+*w@ae|{+UoAR2vzfQ_R@eRy2{59_zNN z!r>lvxJXA?NjD9wo0n;0=MXkJgz9Ik3hI9-n_OGeXX5YGyOFfa5qOE84)P z79Vb7oxpoFqM4nigH$BTRHMQn~DMKmhR zMDoki$bEFg>JbB7Gem)_R+WtksZedOT7e&gHqH!Zl+4PQSXk>^^^lm3 zcxc^*CO4y2&ekZ(P?WECAZST#sDxBg=7%n6sPj%!x=7aT1gcpwQGizV5G$s}vnVDm z$>x~l__i=E8Zs61c#aPitdJ-SKBi8+=4ISP3{xlSKnfXD{yy_&tHVg>3l&eUCO zTFrjfJhrf4o1Pi=Fqsf0y#)$X(mwJ|3bw8#UwW3=P$JiRe}LqG0YngtY}bY- zyHxB%R&HH6cx7|PhNxC)3y7TjOm%?$+`+!vO#)bWiWMd%cGmrPGP9?!;bD>oD>*Tn zvX!Be!w~a+|O$nmD6sMw{mL%a?JKdUGE85tNLjVbOX;|Z-LtEcQ zo0Z7AwGhsSNF`rj6}o+@%Ce*!Ix!#016CBei)2+qOHrFlf>&svK)L~Wywa#c;~*EZ zP@JKpfh0t0XbEHb@5g{#?(eMJ-v%c<4m${2N}i^7E6bTocKoPkU6Xcr{d>;#J3GRy zAVcSfXF}Z1zU%YN?OSX2I#hcyOo0B#J z+oZ0j6NxBjF#dRvE(Cr{WYbi!t+f-WB=sFqiwhipek^{!E_ZCKRH!E&GE&7XaRXwi zvTo(>$>YSFfUG6myT=^QJ;31C!$OnkOlM%1I!5SJAUl4ji>S!opAMxX9;)J0gsADE zVq$<~bPY+Ti%Zkrn1fBEGZ{Q+MwtPf^6OPPR-o0@D-eil>!5_Ito?NwLBS7ak0@I5=DkJ!LY>sWvzKZ1ApsAZqtJ;0|m|B!w_~sGcNEe z3F&EDV~JJLaw=6t2Qw*78L#`tT3$%NX?dZleM!m!yUq_P zOArZ3SUA%N*pcc#kC(g}ucUNhkly!OSiOd1 zjlWz}$T{F-6_`jFW8||ekyI!afk-gdhftC+|8m`Qx?mO5i5{qx)P+y{bu0zHje^8N zt22Nu@JeNNU{pb-p}xi3MiJe9f4NiF^CZ)WT*sK*#Q|PR_R_;sr00SUXD7CqCLXcqtjxr>sdAmZd-9Dl%VyB)7G5 zyMO}=V0a)*$~(;3j_8i2>GuB$wAF6C+}gU9on{a6Ef$N#=5!jeZIy51y>wgENicc8 z3puu@%?D=zg%yfS!ZHEo|xpv=P|h! zMm)Rhd85;W|9sHTQL%a-rmS91n>W*T*PaADQEztp+nwSV6bJMg8Ss17+zXG}ZAx9z z9Poa12LAQl_HL{Xg7TTM!Z^eKwPFAIAvSP@plE|?^j5{KF(1lyuY$B~!4NnK7?9`x z__MLWV>w?!2i87{85=D3tLOE!x~>C8+}t2ecoW9z!Wk0MZ+|8%=Hu-V5&`~@50U?V zZ1NX2;~6y1vS>2e>4sV4ar&>W+lh32KS?tC?uVuFe7`IJ-1^k|G&l%kVYa#m1EQZu z0oEKD)U2GSPUO?^+z!Wr9>37p^|wLp4Kx3=Vd}>7Qmv>lyK1CEfIMvZzP^~v|E&YZ zt_|4!7TOOCOK?v!yf*Ob{fJ+y7Go3>Z0<04nj4Yzifg6$?%7g%a>g9w3Wlir4ZcH* zna1b+p~`VkWpBL(&!%hwG%;kV%kvJ*ScY6Vpgkx;rc)}UG656rl6>g1I1N<%tNSZr z*sl?vyb@9@78je{Xv~%*dZwV$ThYddjK z0t-ZT^0upx3T&q`7~^?v$L#$U9znphux^vAf0dEvG@T=#TAj`3`>X{YkTBi#WbTb@ z-VQV#Na#O3YKzC?PczKk;j~YgfAM_OA>jKQ6*t2gfiiIz=uyg!mnHV(m+06gwNwExyjpP$RRCB zs1$O~n$-QZx0~);u5Da{;fSLbn`Ulr~VK4hzNLGXsDSak0ff;SSs{>xAOe&*MoVyCKe$M_YtEc zcu(2GjeC#l_QHV8}k71*9hiIB40} zFec}A^X&~lJV)`|b)2VJS9V_S7vzWIAd;T@e>m+(9!r<|`<*P$fIIRG49e5ZLQf;g zjNPenrQWB)@VNtS!cl%a>%8AY7=V6P;Z#;uf`|(#G7!!NL>kLR-Hj7LXc{7fdp%^1kAs(-6Xnkge8aU8|j$}3g=v3iI= zUPi!uPWKA`gF@_iX)vC|4N+Qgw+APCjmiVt+N9gL`i zrE}H&^q19oiRXS+7#bSdL+0Zy{|hZXlStC>ehC!{@~p-?UJc3=dg$1YGTBZFi)zTz z=%?W++1Lb=C7(r@-)x`;abh4rKaKpZ_|Tz>ii!beTv$q;W<)6gF64UZ7 z0qx%hZzyni4I}#%Y|EzaL)7p1zY)_w?R3^&GS6Vdh%$ZVRp*0?Yv$N z(s923_;vsFy4-us5x5X|5EMWUa#quc2=RIgmSVsNt~s<;4_E^{Br?VyKe+2rEIAgk zzy)CWHIM!7xo78q>~izpVI`N#`T5=q44ZsS?)4$$5OO2^kgmUW;U>8{8kfYbM*6op z)%o@LS)K10@eixom+Su%3KRA0V!@Q0?Ou}SHmAhu3#NbZpT;AN|M}(tazlB_IRE?6 z0qXxRiQ@))^2yUFaE{SvOiN1>=D--nBZ};J99gYaETdpU$6zpEi3Dm9APE8N7K0AF z6hZR46XaGGhtcDTS1vfLpSCJ#!m9KIyXW8JTJM;Xv^$+JU(heuJ#UmNhb&X94f=($ zz!%e0Ow19}xLfeW39+ir_#oz>hrRK}8{%Bv^xhKv^1+3T7|i_8SU7t1ly~Zg48QqM z_yu|?LiIOq-rLvHHg7#0b5xuTiy~X^ej5>#wi8y=_4v;l~VL?Lu6M zI2`d>dbA(5!)x4d!>9-6xt`m&yGD*8(`IDUYRBQ>WNy)19#XQ81 z8pNvlgod4USSl(PuB+bY;KFW>eF0;Wq0z-!RoL1RG8x?#l&FY5n`;*={QVP8{t3Qnmvt8~ z#UmR2<%`cN#qL~^kw#IRFn{(zAN}yr&G)~ViOwaKJh*ck$8Em#uDx7c9mm~YRGD*s z^dO0buwldcJDp@pjr1X(D>BH%i+Jc4%EFR|*m7+5A_+A`2Lc~Uj~EG~S7C527NZL# z5_<%le)z{uN&8Cu_Pd{VsV*NeDrvH6kQ(#$$XhsW-$$S3Bjuxm4?i;EmdV$0=jE6i z4~y;Mpx;;NR8BVaqmMrF(Be0OJME8u{G+TMATauYEt5vi?7!;%SJy;8^;Gnh?o%|A9;mGS?r*1ZG?OQd?|kI_Dsb32>eAuLjx8>;^JCg^uPic zo-TLZd1qy1CDuo7zWHWMbMV^5;lrLldupRGd$Y$xNlrw{v!C28W=RHyNQ#=1v3S}D zDs#TcW?J$p9(~u{sb4&Iyn8d5_assCRz4obojM;DPTb;ATg~|)QP+o&H@pv7-g;@> zjxf#W@v&UZy7I7j8IQ-QPW^OMI7vN!z+zgl&f{r{EZ$~N18}7{ORi`O=?aC|kqlK2 z#UconGvG?fJ}QInnESgq(1m3YlJkly+Vmr`b1G;M@qc`Grsmm6YgVP)=*j18>YK+|V*;rNI^UYsjSv&N~zMS(o-3+WhiDyaQ-dD;qC3>j- zKr9i3v?daQ@5Q<-%^J5AcX?*kmSEa$b&RlB(8 zd#6N@yG5$O&GBQoI0=Kw`|rOW94s-4xAtLVbaXTpN^ZI379`=<25>Z3INQ8=vpBmf zea>Iw%I4tCwUBKxA$Y%scB<)6&CYFat;t)nc_$aHne!CpSqa3CoU(0xYt3d0;3fV7 z7+=+=&sBYnZriY7=b@j5Xkt}o50q`#eBcy!ecZGt?66#YRUdxv)f-ZM!up)9-@Kvh zz)yWf@Tr0Ul<+n~EFg9D2C?srHm;!U4=zHf);WF#{e z?1N&&(Z7HH{QUg%^z?#)0xbFhS@5Am2s9Tw$Upw^kHw1@W0j6BSO#K=pv03%duG8O zl^BVb(_Q?t-yfmWNzoF9EK{UN(Yv278z3ddL`;i!uSCiSNmop875MPB;=G>p*=;kQ z{aa<`lrgu?TlV3>57RU6-HO@BuZl2@CIZ_c5o4xg7TwSN_g=Cq=h64@-iwPv3UbpJ z%)sbgp_-y&wK+3~9o+in_~C;yK4|pJ+uDZ(BmEP2E@B{tHCKq?`t7&h3i6+S{`u6Y zQ!&EFst`8suqeB0*RH3YdJ1!1K_-Yq-#)GLELpYR?>X9gh*p=nIQ9PV@EKQysjiz7 zi}A?Lb+4B1_@><2x^s%un!FVoKmBya0l260HE+CH@@e^&dI}xn24y>)b{`%|KUxcJ=SyY3} zb<~;{7W`$9vwp+cJGS%5KjYdjiYzr_-Q-$4R7j9z(j?(JxWCu9<(N>4O9Hzi-QfWPym4I4D+ zwOt=QE@$aXLi;J427uOuF z*G5If-{N6JKNKKbO6)2C0z+p&0%;KRsR zf0f7wD>|Z$-{auLQjR-y=!1>r*Ux!;Ga^F}FoR1q4l`!YJQ}t8k`1eE|G!rkN z`p@anc6?*FT#1nFmRrVRaYVASOW#SOGFWrPBEqg+U$wbVa_`K0XnBHiF`-F${Y=X1 zVh&Gh)}3kH3DVs6;+du;WE)W!Z-t5lLQ~4lq%FhWMbr%U+e$TO zir@M2$(kXXVxx*ylEhQrRzJB1e`T4T8Y2h0T!|;!74rqc*s){r<8j$6-b}oq=SvTS zLnEfFJacCGxgXDQefztAtPpYci)YTf$PXb~8&j-V^KjV?S3ERjozSeIDLZI?m{Nw0 z!RHtHf;cWq#T2tLx@b|XcZu9diVYDD* zBv-UT>+F=ye;_gA-h1#`nn*ME`WpqW=Dtihzk6`b>eYY8s6;Fvp|KvG{?wDW(`4sV z5We_)YN4-k;q~yM8eVvSm_niW!yo=2sS!Bfg9$(K>Z`9p9@88wj(~%qFV;u!8YsOL z@!}JHQ3k%RvLu@QM~@sV-rnj*T(YuEq~RBRiDQ@eD%U?BQ#Sm1z`rpx6@xE~e*J6f z+SEX50bf6p4;WGUk{>i^P@6Ko@&>~1|C?*^{$U`J-1pzWWe9$RX8FFJFayfo9w7iS zXAaq@^%G>L}E-ta_T)>u2n_*sUVV2qAvj?p@P`hrZtka z4X;j;TI_IG5`TpmgMqZ z-_A~jNiY&t!CLfHEO?23d)WbCFC@#K*Iw%@JKi6`zAyG`u+HjdedMvn9`mK4Gx&Hg zVBZ%rR;;u7SsxJ>jh{Z^se?rf{6-wT1xdJBNGrpY$o32>fiJvb3HGy!&&0Z9X>1td zLuxnNFbYa#?>gC1I=i0<`l%}k+y)mqZg1$TMu0-B6H%c=F~6J8Sj53w68HrtA9^xg z2En@_Y*f;zy$df@VN`;pS*#lh16Y(OeXj%!1IHn`LJm!ZY@==%h19XPjHNQ*3y&;t z5cSU6O*q}zHVN9DhZsQUsW{Mj@%3Yu&P71D(*?|FkL@jv`=`<4At1gYN`tI+By}JD zrDA9ILF`ho1W!2hN&0xi)zu@}pH4#n9Ya7HGy;mkl`ODPid}m=0;u3+Qb$@-cI^xV ze0dD%+pg5F_q;2`wCB}})kuN>?dY9x3o)G(0Wtvb`c*eL{|~MOF>ZW=y^jC@002ov JPDHLkV1iwZf8qcD diff --git a/images/cookbook/controller/error_pages/exceptions-in-dev-environment.png b/images/cookbook/controller/error_pages/exceptions-in-dev-environment.png index dffd1460b9b8c8c3d0dea64820fd750078426ee8..225dcdfa0dc7aed7a47f76745ff0649a002bb8ef 100644 GIT binary patch literal 97765 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

rbsJ&^a=GBlfdL95q@fv|qg?g+z~f+Cl4x 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 _#FY%=$-8;P@$I^c+L-U0*aE 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%0D=F~+v6#Nnb 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
So3u|UpF=~h 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
4xJ@*v_UDzlgYa9<^@H&=DYr(5P-;)ob=t0@~o z-*Zm8p=oz|cJ-tRsZtW3?)+L5TRprBaJ!^m{ZkNT=+pbUTi{yhNS0?O0%slJz8k^S z3>4!({eqK^MEi=$%qFOInts-ItC(jL!=6L)*lvm8mh5g$JCFxaOXITbPJIZyt$rL+ z5=-7@a$r>fEjyJrUo~4iDDP!Ga^-Xt*vNG5hR>7XxG8nScURihy+y~5?nHd+N-pZ9 zPgUebDw>Gc?Tq%05fV%;{iI^Vcj6?&?#|-<^l>(#zR+sE3<|lx&V;dG_?R(QC5s3B zqqVPkzBYWEEQcZ7XN`Nd+TU}`j(iy9?J3gy{f|FRygB|8T{ot3K8{u z78)pJm;mVd9HwM{RE{CA{^oxhjZa9yodw z*Qh>9A1CT|1za~d97eDjn@B0c9MJ2ZZja$jm$7RLl%M3N6-Exle0l-{89_=tgYogj8Rz;eTy8MMfwu--Q?A`OzGY_D2dg3Hwtvo(^;f<*3%Nb_0@Qnb4}Ra za;v|XVHn>_K9Erd?V_xtNIiXTd-XVq6d-iz@0^eeG?5BmJpzf=fhgy25GYuRWvzmJ zIc(Y;cY9-rY-oY8>i)dk$tSFSh0vdnWd3fUetj*Nbv$3M_KpER=qG`CSvC!h414Cd z=aj>xVv&7nEqF9U?rAU2PbtuXf?oQUQfuud(SS9mg;kdsPRhnyi6o2;Qd`gRngQ8R zZw*cZvAD=}2g(5uB28pWH&*`(ZiOln>SD zGfh_DB(eE;S>Kn&wH)(f)C}= zx|WAi^+tAeQ-=}8_cByLlByGk8Wa(f;;J=revf4OJ*s{thetxXQaAqiI8rkElR|v1 z5whniN8>mNM~)GC&0$1JfFfEv2M&!E_{+WQ&N2o8lo#|<}NzlH+L1sDHYtrW9SlB zd_g;2BBG#0`l)BNaTluDlW2$PIf|CwoTCTQA7V#LGNEmIc(_W^3XBu;#by&{sw+{gU*zx^)1l#3>Ch>8ZmY{QStyTN33zn~HP(-(0+ z!!ZFu_%95de|`?$3|a$!_D%lUL;2%#70eGD(R5P{pYSdJ?b!btn&b~e39NYNiSy>4 zJ@G$!^#=yKhKfBnm_XK{fply`QcA+OL3v(S$R(Ug$(Hi^Fa9c2(J8a zy3*q``K?wwU+_Kpp_jt9(?N&-ywYM0DqRG*>fY?v@E5?qIl;DE1Y1-wwgZFG{_C zQv}O#TT<8x;-5X(pL1y}ibqKWpkLRPFCv_Lr%7xnkPiK{zw5=J;|KQr#K`px#?uAP zryEIwu2Do5sU5WBx|5O#76TyuZ8Qz&y>yEPYgxG4Slm+wQ``_@Jk)R*r&gb(`q7&c z#e4SR?doubkZftil`~4yY4hTZU`Q{~b#!TK_Zc?7)`+Q0yB;!XUPWXE)?AN9 zdinnQ)jk`u{43Mx*L6Lbzpg78Xlq|y=a~m1W;i@V|4H*vK@{sU32q zw&$mF=Z>W{p>Fb}YAwuWGa4~SxzDCQZ4&f@mxLGMXTlF_6?+ckt7g)4Uvafv=@w}4 z%fM#cUrA$o({|uHf-cdi2J}^B7n+xSwDm8L-EjN<+dEU$-vjEb%?$64*0jG(O@{=y zyH}j%S|(srE5#7cIpU<%{<2>Ar*;&W%c#PNd8mKL4=})cWBTkw%A7xEXB_a$iYJDlzR7YarC%xz! z=p?r+H(X_2Wp zcdJvM=M@J?3FDqU9$9&ej$Zfc{M916Srwv9@tHu~?5)EG1`TOU?`SY?_WQ&rgqs$t zZ5V<*uHLLwXD*)~?Mm5AZ2Uxa^7HwPJp3#{uvN6vh{QN>a(TEgP~)lm{_9&Nis!?R zeOHWUW4e0(Y4T%(lA%Aq?9hMaqWRN9J>9)oaL?tA&`YZO=jMVb09HJc~;K1mt(D7CAS^I(>gw2QVTIm2~VZB z$Jy{A?Z?iHE;q6yYHszly}7C1;>LXHYsehq_g|nKzx9}n=og1-yURx$J}(){!T0Bq z0?_(h1+F#<%b2Y-%g_4$9>!_v1F%&Xu{Vn7Oi=$MwY{i) z-xP+FgRna#Pk-sXjZGbFC>Wb2Ps-cHLt@D3=vRIu8NkZ{=+RT11(rwN9G#_eDcMbVVi}PHT6- z@mI~ssero&3+uQ%Ru79l)3%r*kHYV)w?BI$fBhPPgg>4c zH*fW1NB@sH(g1ep7h{YN96a|%)FaC>QMyHh!*}C?*(b^OPlRiIu{OCV(-pn@p|Sq6 zV1=#U!8HNAlfE{i_(G@5TB|*Ey5_tL*NE4y^b_JhnFi9^r)a5sE~Ih=(SDI{>E7)o z7ZEdjjLyP`zjo{GO+F#l{rlks&s|YKkc{`>{oZFkHvk4^aph8!bNWg8ntwLDAwHD` zoKA7Cc>d>l491h4>eT`9+t+w~vX2J-Cj>Wc5leNwQ{~NilKi6#}9sPS9(_!OtIB`uKNk~gNCrmZhjucZPgvT^mDiS^Sl23=F`xiv)M4o{kaN0 zc@n8UE`u7Wl`lj5iv9L{hO^oT-pz8nlS8;nv9C(n;~N?$GRWj>0!V{%yenOdTq_>< zV}-e}3}#z%D{?J3N&COoYwA|flZsYf64FTi+x=tgil6$x9uc**#rpx9u0_E4}KJA!V*UD4BeZFE7`k#uiB=%|?l44>6`ND62;IJ8k+npQ%fUka5 zIPi`m>=<8PHN9^+9O_dyFA~zIb{b4$yCdF#GRE181kxZyLk8KXuLzboKYMN%8;^ zRHxofgs{JJdte%gtNqjEq1Ry%8TTH(iumq67U$mPpL7r6@WUx%&b8}1nLV8w6<6c8 zf)J3lt)FCz5Q*=5vA&#i+Tt>!`8c|Mf;QZ&0wliPbyMu7r_r{=58tQ)Y!Y0%Tp;XA zdf#LbjL8V#zRw?_Lul6W!|3{SCw*V7aiQG>7oc_BI<3P#y?ZIqEH7X%U7c;mWP@zf z9`3iz<*3M_BOi*NN9UhQgsZ{Wj~U&G$-n^9k)F7$hSd?jz zVb`MA%Gvv1pE|8Wwvl1TN?8cHf*+5$c)!>Bv~auR5^0}v!)Fv>Mok;sO8>~57AD-h zl)dt0T_H$kg&wsnSfB@mn^X7`!0~=znuSB`g}*-n;i&y+Y7Ml~o_O+^4vhFB-kL>A zeWnd~^xg3H^YPDOF7w>a8vBlt?2WJu92pP%Em4&)9B~F7mq{VrbbN8U()Ri5`{8*I zL>OgylEjh_ZUr(#x@fr7jl{IYMSJw)Y#C|s)xG#aa=(~Is<2o7%{)RacssR<(aAWA zx2q=)+N0gqM}ph4w3q`Wfy~qGRWN-2IJ#FKy2J-$>4Vbbd}tk9D44>&s*sQqeGK-$ z)?jzq``qwe1gQG=()rHhu$Vo6pRNBfWB>X1;8pZA;HMS@u_`_fVZJo3S&~!{<6YW;dQyLU}+XclWOdv5<{kw~-ee%wMg(Ef8Wa;H1ghdi$jM zI)|OY+?CSq!rCH%bUGr~m*mZQjDupQO@|Q6|Log;?B4>f2|5&97p-S;eG?vP4fJ&v zI9Km{_BpLnGbAU!?ZGp;luhg&Z2_CYJ!}MFIw3oX`kcGZ>WA-wrYf1CKOH&$$!+~} z-!}NoFWugd+5W%yEr0wiKOY5tE1dE7T){PVesR|R(0Bdoqj_R}__x7>CBmBg_wW2m ztpJ)HN}5vyF9kq3e`u!u+ehR5^Iijf&SuEo{nzjOi{1?3KR=ldj}PfU1n}Q#s6W3q zRKNC-aG_x*_-lXbpP!5NZ(J?H)t2H%^EM6GpwRmg)&u!Ts_aEtY|#GgSo25CwKaa@ z&u{NxHRD0;7ip&N-ydk@T5ink6JaTy{E))ed)R|$W<_N`73dHAc%ZGGjmP5q@B0Jq zNdy8uYEBv&PDL0r7u-8(?cdCL^nJ{*ACG2DRx>&)Y``z}dNHEJ-TK))#U@p4&2876 zCF|AKUXAN&VuSnpvFz91ugdeUzTx>Bmgor<9)?J!dJ`j_)vkB1yRf~PoYPZKzye8= zlq?X^ng5dmn8C;Y01Nlq0-^l%?(564?gC{zGD_q#hdkfGWqC)MQV;&OIEccVJb&k) zU;-JwZMR5)lHkqP4Sk>RmUZJ)!Yi6b-@4(sv=eJ*pjr(*4P=GlM0cdGasLrFagLsef? zRVoAp3nyPx5PeRz*6}2L@DO5`Tp!Enr;kIwG{XzURsz0XdS9uv7esGJzIy^QqA)3l zLy-!uI#{QXmOox9e$|8uF!EMv>62h@nI()WAw~G%jiRgkAKqxL>SBm?AEI>C+oL`x zrt1EKBU-?03OxoHpC21e{y=u2OHHA(4}Q0ep5UCzo-ZY6ms)VEaQy4^JK_MWHOY5T!QWKxlxExCyjJF+!ah0+UcM79FzAZZ{#IR?Xa6ot zAwGq#h9?klV`}AaT(gP3+IWknI1mxCy$iDD1BfsdErYzG0NMlbxD91C9~-Zl%SPOX zouma!4gL5^m3-xwlKWy5#^Vim>N~ZE3yXAb3{y(o0WwFcOn&Cxtip0?2R%u6NVxq! z`*pR+pRj-k3=gH4F}#Y5Iw2TC--3t^8t6H>T|KI_D5t0gm95kj*wKR+1|_kK-xRP*)Uj~6cQp4dpJsa9nXew`S2+T@Q#p2sQSi{xot9(U`^WbA zxX>DXcg^&s&23*YCxtpLfmoTf#OR9&J&-)LOg^*4xIY{pVAxa-|2ZQotLS1RA%2_Y zeq0O%9);xVRF-0Qh>YO9Fvx0k=!&^_4vK2>*k;m5nmCA}Kd%Ojw0 zUiHtf;$H=vN*gq8NrBw$<<(h!3OMK3M3UW{0M7UDFq>Qkt@2?zhh_%rXDK~ar~O{@ zICclxdM)<&I--0b3H77E-EbauVYiq;yZ}B9VaF9QBdb!y7L(o+V@()#sz59fHtHf) zJYz9I61i|(_wCgl%ZF#P)4NJ29iagu+2!Bo{zn^hSD810Cuq1_Mp8kq>EC;mc|55i z?mtm-ZhIE{j{X*3$9;G@Mpq>nn|`Iv?^HLV34)7$15>S!EHi(546Ngp!6ntqZaD3O z=Vx^HQ#*p{r?KR(`S8CUWEos&?8RHmXb^w;Q#Tr7$A8&l)-)h}KA(2HeN z=fCS_^iuB7-txi%S?^!^3;+E57whe(K6o72wZn`0_v`-89xbV7`rpUvzm|6GWB#d2 z)E5TaSMpyk>#z4dih9w8VD!(L<}dZdAKw!_G*_CVXskytBmY}{@#pt`X6?%V{DsHU z@kj4cet1aO|9zkS{qUhW++Q*v{#)JRp8nr5=R@7|)0_Ce{fi!lzrXf>UK^);{Rlny zM;?ic{XcI2oNW?k^FR7v7&WWTFAg~Ed`t$iw*Oiq{oW4~E~n|g-P`~9o~|Z8I*X&m z7S|fNZvW-D@yGXio(Hb}|9%~QuFpe4v8*|G7$A*J{^z}knH(+rsU7~~m;Ci(QOw0p zrbv4{5{pd`t{rTTo^n+G`!i+=Ta7ruH^K{Oq__O4*HR)BHr4U^vfv(wtxW;T$blC|nX3>YbeICphB%b+gkCgQEY5GzPSbh2j1Jg_o9`1l8Ad714B@&D5OKL!KY`RYcuT5 z<7ixvY(C{?I4HBG9TA%=8K-c1pVDYNP+}(7T%5}xEtc`K?T(iQYF{LFRDH37l>cC5 zx9RZY((7dD_T%)Tw>ALwIND|D4o2%&%z**}8svHmo^Pb6)9E5UX1I*ogmKKGXTJR4 zO2+VFj&ka1hD|^p(3bV$a?!Gf@J4@Hs2X4T_VRug0k*gTC`n^u2 zl>{Y^(jN1WVe&}dkNGyy&i%ldR=#CF+Yf^->JltA(lFn(dEKz006xO^^kxwKbX4P2 z_uApImG*bn(5!7Ey^V{XDu5Io&N^n~k%9mNnM|__`~zte?l$~-KfhP+T*2T}8S6=B zrSJ3^fIwpp!`P_sk>#$=KM0p5J_AHr*>EHhvAZeX#>9yGvg0r39gZ-}F-82<`}xw} zAx(G|+N-M++=jQlgqlYYDI+>xc^ixlM}9f|g}-TI&4Dd#D_NeGO59avmEY#WsyxIR zSpcsSME0P|!%$L(BBTh*lwp^Ut77*w$Y_l*POXpSob6sCH{X%i_O5GV2Va1N+kp%1 z-Ep}E>F)G49+-|00a0IHJuF{p-cfRP9xnta_SeIK84yckNe@iqME&OmA_cIZ2h3+6$S*t!K>@6wOg1mYg?JeSlQ7t zV(YX&yj=ML4Oqe3HwcSCoy3 z+;S6MtKlkL_e;7PP94C;7pl0fMh}G$NGtc@EuQw&XDv4JEH(SnEny>}A=0XM z6oizs3wJ*4j#Q{7w|!Tt{BT*%r}p-6>L&_?7RES^`vd z#P}CDYT!`nSMDbkx4Wz4=e!-y)+Z`B4s<$tBq}~~Izr3K0Ftt2pgqC&RyREtJ@dFU z2YD&|l2FN9I%bbCH6F~1tCO14>NWH%->L4VdBuZ9(S5bgx9h=X5Tp7%T*KS8VaBxU zzW4fJEaRncL;8(igA&2p1@e9@?PNVYhu$3#Rv#oZdBy*&?k~jIT1BK_wF z{&3UvTAjjKQK{2SKd1E1e{fyPTT^!pveO4)t*FnbFVf2w_&c8Q7?F)(4kH2>$=78M zQ%J-v`>Nz#hY4zs1c2X*eYU^znKM+w=p3A5r|UwE)XWh>m22b$HsUmCAF^4z>W9r| z>=!*(cm_TR*y-qf4x|qeshAP!PA~MIsnxZv#oJv!9In$$T;zb5?9`P+#4p~>tKvT> z_PYW-7Gb>jlK5va-4S>1f}4m=_@dsZwGNza(sqrdLb5P+Q~ljtvgANd>H921kgoY0 z#7R7%&(3W)utfGiR?h}z6e5Z0o=|Mc#++9D!W)#9pT|7;W2sBMW# zR^{eHIq%!3Y|X=fr9%FC7qWJd<)>^*L=}lD-R|4)MO_1%%-Sbm!q0oy9E22!vd5{x zROak0w@(3L*w2~nC`3PJsbe3&ew8)!V>3f$wnGR>ogZpWYSGd|-Uk$?EIq`v!G~8n z!1(e4>FiJvM&+8^*MK+9)OWUVRuuXsi?Fs>6uoo;L;N^6;D|nNGfc*d5H_YJU+44? zKf0@oeV!T1>NvTtre}zx%-^~ITV7Dt40o_DT)&$mW$KW=SRNlq;er5fx12>iYVH~( zcG~F=K5LX1Zz$9)$O+`>c{%sWJd$_#1{WP~!KQiXkb~@w6ITI8@ z;IsON&t>2E-dOA_LV<#su??#eBlhX8Xc;TyjW*<=j8S;#RNzXWuM+%k)<^8aD)# z)x&Q2PVq*LKl$SjEa_=l#&}{6>CL%4z2jy-9EMgJ0ra2>dS?$1WNofIM@6J=&if8Q zUqN&e))(^8=j4;P6jZ4+1>5J{CdDGAWb?4hr273lE=iV*{Ao93`eeS_2XXe|&sHee z@1+W?-RAL$hcR2$3_-@H@Ov5JWJW8qLX0^gIER4RcZ04xEoPSi%*a$mx&Ks$xiUn* zr*qJFnH^G*6hxW?`$hzqNH8+bA{q+EMu#YZz+{e3Q(yR3am&lVL#yY%D>>lIH!iep3HOLz9& zOlKr>6|2O)P3KF0Hp+?Td21^+BC-q4AJHHA>%oJfo**)Um<@v4>^5Cayp@~)Z`9+NkxgXTl<2SjMuhZ)bWcW=7>X0`VAPr z8ESW;V!|H;j{qCJg84IFafW(Sp(pIYLR^o%|!AOG{6) z>-TIOa(v5814$xwb-POUiTJiqh^N&H)0X$m={K&$c1(99x}lry3E$GxhG2Z{aJ(t< z?(^Eq;Py$wYAjZHIDXG8wLP54ZBH%_;$;yc$8I_D0=ufV;OMeW^4j}%v3b&9z?rXC zKHj&_(heJ^G@`FMWUo;Xb0JVe5D0u6-J<6EM3UXd!O61-3U?Vl0NY-~ZDLt0eYXG% zsaj?$yiC`BWIXi6-|;GIYh}L2jes01Ct_CbW>T_t=GPB(T^~nX7%)32UhkIRrct?{ zf|5a@)Q$ zYrC;4{iT0kYlFsXTeC>=);q7{S<33os176v7U5yJQS;XuOc6Hlo%u*SE`;Ax+{8Ef z%Ym`7kma~9pa8%zn9#*299E$uZY zUa>Xs7`=87*uzfKr!A#)zB43`1=h5%m5CX7iZaE%IW>}dONdNhY3Dk!&Ci(o4(yH9;y(d&NeWrRB zXMtDmRn`K9iLQ&1{~BnjvcKE4bA5%@#=n*O*Uz9`>+c6R*&o`e=Qp;OiPojvA} zyDHBf0PmhaT!Il$ca)N_vN6xYk(rbyRJo5>5tzq-1OuZFATT-!K1$JfJB89q(BP;G}R2&PQ&$*>UD_?(MF$o-sVAKI%M#>TJ1j%(@q1Y}vPD*Nqcc zAU}srVO3}I5$%vCV&xgAQ>L5^gR28LupOW6hd+}aA(q%$^TzO~0*B<4y#cLJQk|`8 zZsdRqS zjx!~)F4YFoxsfNxcDOHJxMSq2#^$bwH}UEoJqxlQ`>5`Bw}rzw*WYws$}viJ$jQjq zGMml;A)|Zm1UF*B-WP9L2h%Kb(Zxcp6+`)Q@<~MBL%$)(KG|97p%v^F^jS^YUKqPh zH9P6(kIHPs_wMp7n8&C0yw-UT96SX_uo{W~;k?%Fn(;<|n2fe`m0^rwZav@D_oP}n&s*SS zW?m0vmz7RUvBnqhJCq&wYWw^OH#Y0`wZmPX@$Ex*QDeSbq{}?h59?UKv~N!jDmE+q zfD!4IoxeG=n30S-9~056XamtO!3^OqkUfJ3tPlo z17YbX`gc=WefP3CZ}*J`pTBlzw!>9^`SH^iA{r@)npB+>u9q{3vmx9*ru#3LQ!iuD zywmfJ6d!|#uhV+aQ;GbZ3u_myT%kHj=-M)M%0#a@kreF!GY^wdzPsS}+1iC2$Wh&C zqz*Ep7HHSpJx7SxL{j$7eo8g>7>K;24{`>&dbet}k)4W%cc}zSFE+k;m{w&u-ul!6 znDM~Vfix2?o71D*soU|>7gn#W@HWYj9U+u1wFiN&up3^u!{!;M*~{Tf>i@9!CQFiH z>)PHn`%RaisqBn}%;=m>vVQ=M1MZFkP7gDB2dD4hIyBeC=|ZG0>g;~k&Lh)Msxm8! zsI1J42ybAmZ@usH6v3D8Urg_=&bq(Y7&fCoG#n8wo{bQx$KpnX{H3_0%p?!W0aT!; zgDFoPbnERx`sR>gtXU|X@gZes#Qx_&m2&?r-1xZx_H}G-NKy$tbXgP)1mUPTT7l<+ zEchGra8p0*y*I+$0yaK((P*{c@H+#W9ir^FSdI`0$_K+i<@noMoH%`xXjRY2kVUuv z&??CFPkWX>s8j$ZWe=Rsw0Kc0fC{yHJ;cx%O#sE}%Ls%$-gGBf_w>b@C+8K=Cr%q% z0$%g>~_}?Z28uk1&s`#{Eg;=Ee6x)DWYQPpOHq<&inF z?_L4e(*Ynex`j_>{?RY5n*$nh7QYQ%);#6wtA40e3}fUc1zOzLVgde>l3XsI00PUH zRSn}j3`3@5*)6GB%ZAY?U75>QTb)J$-oS&*VCGqIqCyscwh93G3i7(*d_hhmwg~fK zY6m3(W9Yl{cA$>mQoo|1OL9rsf!dbz0Gnu4envOXxOu#8OfxRo%Uv^gb8GX}LW6)Q zF<>Ub{(qO~`6%(u*FW3!LsiL4K-Pu-+5kXEst)io=3+|%%8YD9^!jcc7J}`+K zLhQyS7{Dx4#vslZEBk#J2_a+4GhIh9Ym85Z23X_1ATQW})N;|b{O!YlG$UDR7ukW; z#4U9&AjPHg2=SdR??E*GeI4oG);|Sx@dBQ7NN9E9LF(yfBC~%&PWA$OXY2LQPp;4I z#+VMvJh@OD5#2*LahL31zu(`OjkR-<1PO)jKe^tOnh7A1AKiPAJ5mxe4hvf}e0*9o zgUt*Jf{On<8Z4acr&pJCH|)#l+U=Nc>vTcs)jvXR1i|FP*6abLpKEk8H8|c6ALGRc zY=iY1vZ^=aOTrn1cHLG#x5f{$ez*sF{j5aP4*+iAIw!J5kM6E$LF=(fXh0?N#!D@& z9%BmU-d}ajcN~{9cz=I;myS`7w|j|WZb0>@PiTWsr%JM6TJuRS;dpIm;MIIfjJ*I= z8EBh$%0uQ4h{&z%AsuLTWOruXdqdvU*;$xjZrnaM@lWWBfJWmezY5>z;{|*&5cdEU zfl9IRiU8wNXIQrx()GeIYu%;2E&4=+qb@b_%j`+n45t(`vge@!dz^-j@>LI55D0SF zU$PFYF@c*=#1_=z%$LO0S_Y%311*T=wq&;D1Qd+i$zy0?tTlVqzApwdLy=J(86^Y$ z7%33ry8wJ-HLy>e*)xlyV^)os(7scm$aFyO7`{l9glmF>iiqB5a0?5$)>e#h={PaPd-uGa@ zDfyQd)bD(RS|G5-_@Th4LV}&ZFV0;dl?|8Jhi9qN^t(Bkzx?%ueTTWP+=94cs-~G`F@h4+* z47}~}zmxs^OLrVTK7n8e`-QrHEeAYb|NiU$_9Ovxq|@|3aR2KkiNC@THlsd@fB#qB z?~sy&ywt#Nbm4;3^B2#3;ojkOE;!cM!OQ6vzmd1$frs;UQSAgNg8caJK0tqd@_Kj; zf#^7E;7R)RkM#3$0?K`H!wU%7|LVE_c{%kk=e9x3`Fq*+zy9H$C+TNiDcTM1{`w8_ z^CT5;9lS5c5&Ysux(crnZsk$&(mTohrx?UPeu=we{dDo&+d!-Ea{9;r`H!yyxI6IZ zCIKQ2UaAaYM{oG})1P*z+xUGHMe*PN`=9>wKm6%WfBK)`U!~jrWA6TAnX>=5t=ZUi zbM_zq@z+oP^Y{Ia@cY0doQ)G&MQfRjsF+RPx$EKA|M=&RN8pb~;EzY(k4NB-N8pb~ z;EzY(k4NB-N8pb~;Q#$2@IU|W|Lsrz=l}8F{`7yrKWQ{a|7+PqMTYim@xR3pcyKQN zOX&)_xnWPa=zbRVn&o_Mup8qAApi5cPF#6#ee&10s_#&9;0yk@^JkdfEk}CwKMtO^ zvd_S*#({b>Z0f$-^VyZanS%D-6zUy4;?dnn+Or z)Gr*k?nU_!_DCph;`nE^IfkXzGY;KueD51LL}7&z1;U56LT_kXe1*S|j<6h0*hegT@$FE)}e zXE1KB-|LF}_1A8E`qRrC;I#YoNR@xv$@r~{VDTBW_I|Z-?(V;Js~m_y1jq5~_&F3H zS^oE!6@Tl6y!Q<(*v%(*7;1NfY zoB}o@Q6io}-(If*-STquDE^{kW6&Y{BqYJ1>3Y za8Ne{{SnPj1f`~K^Z51m3og0KZMa>o07Wt)nnq(GL?Ps)ZDj2Gki2IlTu6L*r;M{F z82P#m_<3upaQ-v^o1q_4iG-z`zGaEDr}9OoI<0-6knSOb_UoC|T2Qy4`0=QWXjyhp zlLO|}Hzd@V^f{1KW1$SB3pGQY@)o@6ycXlh@YU*99TmCLi#N`=pg~2rY~x%3+!ZzG zoB;HStl9D;nKcHtB7}0y;$Xmg<>z#7@yc^v6{WI_bBCT2KcI#&0)1C2e=+wOKA|98 zhUVVj3n)^&@I?!ZPR;4W$(mB3y`X?RmUkt|3nS~U$U zXhnhlYOXv;g;XQC!G6B!h!3`Y@wSY~)9djF`M}iq+Ne&3%h7^+h)^9jhsVvYzHkt| zoIRN(0R2f6>pKjB(M4C1dF2@;KH=Cxa!qecm&)d}#@$>$*8T-M_P6WXRY)+t z(5!q>?t3&{(gXlR2pCXga8g+v!h%*=T+r5M5m8=fD4ljbAakha9@1Jp%eYE}DnkG~Bgr~|yu;83^OL*;BHT1%;jYOKO3L&xdq?;wuR*bFJg`oSb6Vq8b3 z6Z+DFS zVFT0gHkC0*CfMuuIok8`l>p8iY1IhF^b;UKuOVZL2sgJPLEgsWuQ7s@-CN z1A2JU#mmYm_K-*yoL3uxTF{F@?qo*E5W5!A3VTvvhY&;fTzJo*%6J@UgK#|i|+oMwiv zd?iUmriuq-v%oUeUQUUF^YhGbOn5UZW3!`Uig9CpVgPuhzrg6fQwv9bttZfRBWCk8 zm3gA*1OQ!B%wrrSAh7DbrTWHLBM6KsXgTFfC_wB(K~Y50Lio1v*&xx{TN8^(F1`le zT*K!jv1a)9B{AcVzx(1T2|Ci12Wd=8%i@RUM%2(=_=n4)N08k8e|Zx;ukSA}&}#djOJ)gbz;Nfqb;_S!)mTwNqJn#}zjElAWunRS5bO5C*v0 zl=(DDe`E5%@hE-i`2|J6^JeCtc*s1gOJBk3=iW!E#A4I_xAzzIaoQ4j>F7*Eo0OTq z`4hbYc1@jvE`V?qMhA0@Kk+N-w?wW@9Q&Fe{PFm3s5ukS4*5MFRgy8gYnfH*r%1z> z;gDI14ZR(orqt0($0SUX9$_d>erck77*kBVC9lPAZ+%D z5k)x^Yp>PS1N1G~>TtbzYEAu-)iGh*i?i!FxqZ>2Dpzo-S?6OU>u>4Kn)`a&Co09=Wg@Y}OS7oV8PgnYU_4!o%C zguDX#qVW!5>9otgTofgq(dv`zC(cWzoH7<^Rd7IBVs3-GY8=_i>_MKnr5u)b22~3- zEqfI^+Zsw3@?Y>$$61SC_-Dm&0*|2JRGmuLC+xVsIP4%DHD}ge5lnQW399=Z&Egn{ zC6JqGbOO19`Z{&Q`+%G-Y1GK~c}pF7Nl}0Ng3RqzQ1JH|T$($zz z9T|58DbmqFAZZAF)Od82p#JEFfxZtH=Z;wsOu$fF4z$%3;CbWk)H?yKXd9mNHOxR9 z#7QC2K}NQI2u*Q^y(*H@us`OkKg69MY?GqwQ@Xb@T4I%^Un2MfMhxp zQJ6-7&IIr~i2!9cY-1#Yf@|U-CxrZXzF_T7TcL~K5H*r7TFo>)_fq`Ky}kjLIC6J5 zq|Oj(ZFlB|VMx1mmkm@XLS|Rw{iXzcRB#aX;$FmEHrgFo9$RR0%?_oN)k^G$k?l_; z?n;J`-4I;paGeXTrS8n_F;mh;DpRDC;LpShxcSD$VC;#IhC2AD7i(dxc zK$9tef$+=&|H83@q4|?lq~$n%p<0Kt#RQt~N4t{Ph-`0W<3O&sAo&H5?{`fu-W3np zQ9FT{Ygc!)fB6C{d8Om^?)8~&XRzVS?7>uI>2UlZBV--tIzj}=&jWa>OvP2vBmq$x zEU+v~o>=66Pqm>}C~74zi&I+T#PXe)$q%6+Z-n{anebc`yLvnAGV;BksW&`nK!~;A ziiq?VfD%13#|*gsw1nz|JPuZbRp>V7+KJ&w{A#4F(9HJ^ZzZt=w%V(4!; zA84DM@ zSz)@Lur7q}30dV2IPlsDuI77|HY*A&y!Ygz(`_kx?T7>Scx%d?t07sV!pgQM$~QMKk`qAp>fVYf z(Oy#vi*b1094Wn*42o-k&N!pCAg*|Sn`~WX#v3~mrmxOHWvD>mw5uAWw`?63_c9MG zI~qy&allkd%M~=vMXo)e{2H3nO575Tai@LxfI_#_Kdu@kh;vP&9s7{?cIAU)(4^0+ z@NUWdaCYE-fr_ot{g9`V_kDSU?Ik%UtCH?Jn3^RCt|(LQsq6Fp=Bab;olv|0ME9JL zZ_uFxmZ|x?5sjHlWFy%ng4I2Ra}=^GFVPx>`hsnVKxE!Uq~LWJA8+dFl@Rvztv>tLTp(8Jz0PVZQ+fdGfM zK*4p{y{-=Ylg1AlOnp9 zS_`lP`kadU^tb{aumnu%r)Az~Zbk|evc!Jjq+JG;GBiRjJJOHfed?p&4(pm)cvX~= z%DZP3W!*dbs3i}(5Tk;2R_e)ryANgwa6cQixF!rc>>>Y7@D^FcnCP3cN2OhoFlAk*-4oSh}#E1J{hbM8j zNcoYpAq!--7Cd@j&%Du)QRmPetr6uAS-AA#P%c5KQEMt!OqI9KXw4~M8O$Z+N!JfZ zJMxgPPaswv5;8k4f|z<4X9SqW)kpz3?NZ(`&d3ZVNHwQcV!l`{bJfPVSR zv%7XOURxFiEJz{Ze6yj31$&npyc;tvneX*jLCcED2O?nFdc40F4!k`(oSqLQT0_8&)qt zujfpGdFMt@4S`JHurqB3BdY1_PuGzl?3{{FH+sqE7A--2vIZy*F86oAGo@$3(jirX zq>a@*in=9>sqC8(qdrUE=G=icrw8-&4dz!MzCg1{Ed2;TiM>8y1^m4hN9L5H2t3FU z7(H8DwTkGbyU)7MG%V8}y#fITG&0Y+BLlcTM z?a9+V{e`V~v6(zQFhK8W)F&eEX!LxmbvN9Cf^9WUe>q@Db-at^^R>sm-yU41@37@T z;;P?S(Y(jLsdx}B*C71=iU(NJB2WTWqiG_8VK}V@^ zl(K~&QmqG*B6Ar!J`Y+`JPUwv96fk)AA8tOjaOD|RkW`1C{Ah@r&$n^ptw;;d(Wn<}~KSb$-S+oTl* zw&KN@Nt~8KOu>|#E3dasylqQLO)fJu3g7;`j1XI<-(%YnzBJ;Wpkk<$`yf8bF*4|) zKm=66^|)EzthQ*ya|feIB8m-@E|UtC*T}i5iG12?S;LH|G@OeCcEDcHd0*b98O@D- zyh~rrxKfC?04?>q>9Wv$JAZP}z>Q)=-KqXfakuUyZ8k3&7&e~r5+-^9R&H}=7AC<& z0#s?Dq8M$B+9U_f0utITF9vgpBTSckf1%SBByr4Uqd7J!EPD9ZL~xFromJ|h+39(c zS-7Ggm=yG;`?exM4*OXJUKgU1=Yf^X=e9fLX^=Nn>Y*+7Zv2bBAh6;R0r39qBHG}D z{ScbiulLWqymbJr;Ya?K$Pvyn)N`EfhnX2H%tY7Rb93m*y1K*dWDL1%(}&}&u~ll3 zT;Xl8!a-|MqHN>Q3(iEFl-?d;n(rv)tnOz=DOlu&s7J8R)=v$6QLhrkh8_NJGhP@I z%8y>FZj<_T0szsZ$4sD1b08Ncbs{#rCX8Fox*P*zi9lbn#~g6aBti}lK|GZ(eQhsd z??5&gf#U);)igC13<;;&7=0S@xL=Fr!H}xTvUZIu#eu?#yUd}9g^W8}QlCL6s}GzN zI(ltyaf1We^D1z&eRU!fj9`HQ3KZ`l8!wbsE)M9def}j33N-$TEi=s5Sr4cLBdoaP zpU1etUQ~8NLCMT4iTnVyP%!VmtR<^YS^b6N$lr2NHel)kqrVY5Zs*@7GXft(skNE;d!E%Yl zT8zSmVRkOG;}WMb-81U>&3;(dv85Fu^aEkrcWaSXYcF?S!ihV|6ER<8S_-`X4l|*i zzOADmekl653r1|cWz`@APr0#RvY@FeuzpGv0W{V#s*e|%KL#ZGQ0r>Pu+LFo!nrBk zaHiSz25xC1V07sQYiS#|Ahn=prNh@02?Fg)HSxzu)F=4kDR$36$Z|2G112w5$-64) z2%lFC3Z#xKK6_ZBL94!8uhdk6CTMOD9qsYxA{xd_UvC>xCMk01yaF%`YxVKb4`VlTR>3b;dMY@_$rX(Y4h$s7Z?0is0dO1C z;SIfsT0LN#r>=l3J>s0=PBQ zD43vDCV&IP{f?D)(5J5Bbq1h|cG^Lz5_6TzQOL4-+IJnU3zy{HgE(18kK6MBy<4t&3;j8vjXBA_%7x1Yw=(} zVIC6!^kfw$nd zI~RQGbe6CON%Sl6bA@hA*qh9D7=z+%Rl4u{$t11t{c|}dzo7i?YO6H>r znH^i5I`{%=jm4a@dpsvA&TSwS2))tzUca)Yt;?BG9JtWMCj+=P7#UFv-p$8}kM$~N z?wwxNR$56`!IJlAxi7kjlZjw7yx>lHhg^}pC5Q79Z5r^=dU)uk#{dAW(<+()MT}J9 zGfFR!FClG5nh5^o!y$NnElc6-z7i~Q zr3E_5SjjL|ds|lmq2xDw0adzn_b;)OqD_`gW!vf{Rzse!Eza0#68hj=1+NUpE03}k z9xHJHilf>b04uqvSX#SK^WziLZRMCbSq~7DQ=B0kI0gFJSLVDzz%FH3j!2Q$ zMA~h(l@ud>zbm6}RuOz;et-I-tpiI@7E=--?1jwVS-mr4L9?(vRPx(q{H!OPFA9De zjaqa>d?u8HZq)g0Y2&G&C0OU9k{59Rs14xjp<;vhDKmDUCUmaSu= zXr{>$EA@J3wgKS#S?@jgKDg^sy?&#q_&k|okby9uYzULlD8sbn(!#RKyugJ?g{{Z@ zVQp50^A>2uem@T+-lehqET8ZEh#f|bC3sz0aFfbkFaeiP(k9~_zmPF8%HuQ62+BUv z&t+4TM|AfK)#iq{VPDNL6Q&KUDmaox-HZ*>Y+1jRCU*tziERBq7+$x}i{>@rPO->M ze#!Hw-r~wf8_^T6rdk#QtLpP>^2aZ|H?&|9|3}$@{Br+joLOwu; zMBw{uLcKa*6(Q(|&xiM0RBfy6%Z4iqZ-IjE%(Ugf)2;P2p2@D z=o4+nLz+YaNQnNqz`gotz4vnl8wUOz$;Y}R|HUtul-zb_?D@+N^~p63UWB-U))jPatNu0grpf7v%I=e0UA=i zw)FT2VI(Ph0OM=~(#~-h=8h2189Q1j-1iSPg}K zum}*&E4Av9x9l!7^W{(60$M={Mx|e1E@RHcOrm>y+G0w5F|1$O?%&{$03dULKV4bP$h-e(OGdYs9xHbaFqKA#<(Q(++taoh;P2+=7c18O<07 z7CD-(AgKi7q&BLZAyD8BeTdN$;xqQ*l^qz}P|pa2RU{#4J;D9+9TzZ)HR?21798?@ z;6g!I=Smxv(Uu@HwZSPyv?4%x;v9*mC_Txl1XCrVQUHa5t053h;22F+iffDP$j*^m zoC2DOni?fOPuYlr#mUsCq5mMM4#Re95s%RJ zw(L|55Yma!D}7hUjewhXKRwN{oz~+&rzR3pdXSr~r)Y z6mU=v#gH0bkzs-sAqcoaA7Y*}y_^Aup%OUAT$X#co9V)gTq0YTVpcIu$n}!zvQ`%UOz~n7i00P53&2=?7VsouR+POHDtDaGVP?Xkjo# z+qicsWUqn=gPoc#Mv8L|PB_l(S^R@9^+)Uty7c#PCv$&tFVL?)9_R5UAEWPQ_y3N&v7Me zYiQFt%ME7aV-qC+X6acr`pNbg1bZFuSWOvMP`|SyZnJ-rOP|$rBsOP^o(mmadd6EW zzDpZuP$S~`DLCd6t@4d`2|WFv6#$>sTb%;yQM`}l6R8&@Q9{bLvEov^U|Tnppw$kZ ziS&Jqd>YS!09(oeHf!7JlvI6!u;p`<{3y{%dp@Nz_ltK2H#y;)I#f)rnCHG=2$AnF zb_mqqJ>WvAn>-M`EMYImJ|kZV{opP&yvM4AjzuNGD?YP=iu2$hN0bd%gb!TAVyi9} zoakh)P~dp&T{0n|F@YRIzH}af_~jzkOw71JM3;5&U@c|3fxa??U$qUbEpSG`5gmm- z>8CN|7+0H})oxu)r5n->JxH)jwY7(_mBj|h>aluK@<{%dcS_ANU5sg=vLm2GF z_D>|cmsCo^4ljMrTb!&-4ExR872AQnym_a3%LQ=jmZhxPZd4lJZVqs=J&8B_@a2ko zUFp|pN`6(`@l-Z!}_#g5?S8((1LrAxd29};5Tz$YhUSmibJkL z^nh{j^Li8fSy=AiKCNEw%}C3~ngerFG9Si{d)PCj+cBrLogZm(rM%16s{m-!E7-x{ z+sv!m&WXT7G5CR?VUFYOu#L`7YH-j67F-9D!R(0?@rn6Z@fZo^8p9op-XoJ{tfEJzk3GWOTD`b4 z8aB(VlQ-q$iSFlf7~?^|F!^zCU&tT@`*`dH+vnoFER@^@9G)w2H%Ugs9OgDRVHwv$tEu#E&OP+XWDp}5n7}}v% zn;ezy{_L96aIfTxyY3P;J?dvUUEpY<;chs+n^)`b>~^d&=;+8jSGCDPVjKM|}# znA=^+6PlFfkz*z zOt(xT~8DI?Shziu=v(k-A_?{aAf;q?iczzbI)CW7LRGcp}Ou%5H~vp(@h$ceza z!!J4LBCsS$J=KTQNq|0!tIK+;CZfD}@4J&-525aD4dOlH?eJIn(%ywD23pIOanTcd zfgC*vF>2nYT)Nd)+Oj!VwL>gu>I_dnmUWlc=Xa|5P54#^j_E>@Gv{(6_<5aKbie3u z7+9+u!QDTDc?08SmIJa7wSvfTZoSi-!Q}~V;%EID?wjChEsR$(?2WEfmMEF53a*1J zwJ;J&i+M!ArZ8AYR+>h{I?^DN%NEhdlmqa2ae7Uaxe=S4ZkKCRI-J6WoPgw-&P4J% zunNiIPRpknRYSUQei*4m3fyhcNkFRhW5zcymnYggdAyDZ0s)Hh0$OrKef2Ngk768d zH8`kwY(@6Es|=C$yM@c}-u+N`?Q!@F`^!YK!I4Y`RtjuJtX{v1koM?nVS(jjfh)DZ zZeU0XzHKW=Q|wPfU@))9EkQ4(bKEE2!zuc9;Zr?u?-lggE#PcXMC7Hu$x#MERS!?N za)ZmEugQ9U^I;h?V~`caoV3CLgEqu+-q>G{`S1u^k7Yr=HqH0mE*>1&e!RykoDjCQ zW-d(lP`SGi-7{3$)&cfxjd>SgsqTi#$eztjx=_U$M=Ar;hTb`0c?CRgw=ZOBxdp%o zyUxH59Q)&AhW#sSCDvweqX-0SFji1pO?AsG&4QE+4 zZQ769J7kq2RYjAv-O$n_t!Z8#UO5U14rTxth3Qv8EFkffpAhi93lB*1Z=<^dNnaaK zsBeVk>|a*t~D!fH-5x&e7?w_$C`@W_5Hr2ClkCK;lZZ@3GDeZE04%DhUbTO zzuh}}Oed=tVGS1o^mT)K2n+U6pPKnk0^OQ>dV-z(3?&*)sO6umxy59tARR0uhZGU3 z5qJeX-qAY)+_B#;L*k#g_%RV+iqB1r@BoWbr~HH0j{6$#9t|1XPwaKVL#G)1>@I3N zy$!S(6>QgPtd3wnKNyGvO!77lBan+PoP!WOi#?_1Ypz(@x3tVlPU8R{#R{CO?5 z`ToE;B=1|^p7rV%WgY2!)TXNP5;QkgnGGSn2CCQ^cI#hwSs^}f_HsD4OAqfYJYHp! z0P_)Mjhd1GTMt;s=7fKS4|v{a4cry7@5T2S1~-g1xUaU1C{B7o&f>lFtJgU>sA?@Z z9w-65g~0m)W^qNFk81<{#HoF{Y@K+Ledw^h^_LVFbRpwQIclh`373dKuUK1~PPl}D z(o_=mu-Q5enkmYuwjY!{X|72G>N#{R`YI0d>1At^qc6t%Ei0O$0rGRYgJ9#QB|FH? z;X9lLE}9%#V8VMU83u}WPNuOagZnY3_v#MNL$~(Yv+P70%R-`MKiO#aN+^JX_>Di| z=xrK8T79v$Bvwwzso)6yKI+7#cb#ToWcYQ^`axvd9$OC=9$PgbK&ULL9tGKY1uVA^ zB#YcR9D0XxRqgRx7I*-AETih)4Ni%S#`>rem#FEC+I@1fu0qEbiLOjf8cIpW6_ewc zJe1>LsE-QKKiSJzG3@{)p-&W5x4K`!}lB46uLNJe}x;2Y5H zxr71yP`}qts=mW5GK54;Iq}Oo-1BGn(5euXk9)XL;d8IV*bI};CFld~iFKySEc>B4 zntA&$YEpjg4n|siA8L@$6E${Zz&=pph(A*h5@^Otg;6FOZRV5^frs!M^x{&a5A3$+IRXeM5dl!D@fcxlvvn^1J|wt|Fku- zb)h)3?gzqqtB6=H8L%`dsmG1xLGL5_p20)ZwP^Jb13$y(_;yfpMHl(Ml`?6EWX zF%UM>-F&dWyf*2c;PYA2~nY`-&9&! z@-W;*!K$vkPa^BB=6^#VFL;aNOCn|TK?%X)eNlh zpw0UB2?HXSx0*xNWxhd^019JwI(Y&+aXuIBBfviD%JM^+AG_BNo%=DO0JbJvxCAtR zg=3XhEWZrz39FYXm!@w4!SmS!ARPH~C{2j<6V-vVR}K7RG{kqe;=`HJq_wLd(PqCN{8PZuE2M3L2VpdhD!SDD9k zutPvdg-%T{I^?`~c10dlVqN%B^++_J{=$fSVNe-x;1Pq7FT(*cBcCNeAvJZp39OF}S`rPgji1fa6 z+9d;YG-|;=w%5KsBRKGUOtbgXRqJk+%?!kv@)_rT<@f>b)@4r&%?%&{-CIMtqc;^z z;Rl5^aCYTSlM5E2s|Qj8r5BaG+5*)Tal*gjqNY3~&yG3u$XyTah!%23=}%7CSUi zVG@(i-UWr0#76eRsFvFRrr!!d>dV^>O0s$uKWEZ52zp!quYSCK(dBF`UD!3>o^@_| zsNV@(7>oLM{CheHgN0X2y`r2=k-)oyK)V78EwJ z%J^YV>RL-uUHjxjLcc@1kPO_}!302b433&T`zp2*dXlgpNsC)YJns;bfWn48>2pPn z|Kbe(bLYN+$^dGD#}-nimdcvP@MznufJr~?bh=qwon95Wuha$hg(k(%CyPRGR3&=w zd{IbVA&P9c0X0_lK$8&_UZp5@>*bd?J&8B?n$Un)2g-8aly=aG?m=cSd*&T1P(5>? zKNsjI_!WeAg$LY09!H(6{WDLTr@1T{H#6jj=;xYK6{c9Gq(@a~lMzgQ*QniqaKGrS zeHrSn-ZJUW9Gxj&@uY&9V9g^SmCA%tdcI9%uu*5JnDNlY#o&gO6<6GK(x*IqL&tR| zh1Jr}$(c+1nch$J1`yJCz!sC+r1yC(SQdZdunj9etxbVym#~NuQ2%g8+MD!b)p>c-BNFok;KUs5&CVV6+#|W)zqTVkjc3`VftNpS&)}xikd8t* zsE@$`;+KP*&iTIiNbq_o!wnQ>S2*^EcNfdaGQ=6&Z*fGP`usqY_XvW(EsF`3s|_DU7x?Ujrpw6-<|_r15jx!5Zx+Pv>`X328xY>A%#4ykU^~y`l3+ zFbo`Uew`I5c7W!>u{n%Qi}wq2iExP_-tl{V?%#e*x^lw9YLE35zl*hUM(iBHM6E0& z2}zs>fXJ;tbb+`z1l+k33}k8M5XNA9`7MdXA9m=jz!JK#eQ1nGkBy*!*zEhCH*_I> z#X6O{rtrBr|HLZ;V~OxfFLIOO5tA~nr>cN1$nfOXt>a&c2w5;vMJS1Tc8;apEIitd zS8*o|ANsj{Za`+?A;&Ki^m#?g0?^)cVBYjEmBhdHobNJidLVR8(0!jHKkwru(D2v~ z+BoAje_A|)KHwz)Uaf&VkZ-**i9VGPHJ8eD}rA4zrR=~XEKIo0LcjVSU^Rfu*VqpGTtzcS--CZ!!TzvHU@ z8yvzO;L-y3NCA4iHxcd@MpESsIT92mcC|9usRFQijyaV7yt^m{Jzzr8-p*N;o~1)jv~KYp!$=ES_0|77Z< z2%Crh?*8=K+m*QhRoo*(AlUW$Kyw(3VDtK31hJN}hH^f#aP z-#9flafbhZ3~US+{?z!Fj{4vKj6(ok@oRW*?!V@a3|0CY|0jd^8?yh3yK&zhZ#V-L zY!hl7zx>*x7yoc}h!ICy5fpL1_p|)vo-Y6@Shk+!f5kIaf*(J<11nQwI+9;vT$~?H z@C~-B?|2kY)1?z?}m?tb@P z{Qn=;9WVUBSN!|y#9!~NOF>}W^H?BQyvZK)0X@*MeqqB2PF#J=jdm)5xA9dWdJiEN zM%@iW!`bNsyg`;*|GXX>KG&c7)9?`%&Ue$#q_SE9+0py0j+h`8KNG16PXDyN0ahY} z3n|Vpa474=PKEr5s`62~2;yj08wbMMJ5K@PGk}Oyx0}17J%B7g zZvQsIeD7^xxVwP0=9+ViZ;U!$%f4?D+afdK`x}wsULDyi^>7bvGc>Y#vo{{aog}7A z3;Bkof{=>1Jg$U$?E>;{q9w{AWgjo29+YmX5R%Q3@eqHT-)84EOwFW2q9R!S1_?+A zx%hoSz>@6_nDqjSwdv!_y=;j^E)aLeOv-yVX#}_d@@zP4h35BYGq-l_v-82)PrJ-H z!~nR113j7zaupv@4Z{D|j6Dwl8lB(~j86PMbre>E!!8xVE4KhQQkMlhX9bZ?cfyS% zEd8j}XDc@@1B?#PvFy7UCYRS(Jx0qo7YFS_NAluy{^vt&$^3dF~o?QkW;+EL@f1=pf9jQs>t^A*p!ei3v$twDzXj+%k!e}uE9=#L1$ zF`j8=$VRovi$Vc|$Ws62H`F>8{l66&@&8U~vdOlsJVmwq-F`2nqbWv|pTUcRX&gxcx+)xGPSWfQdeG04(4DNVK*hdYeGOsH0!D*7NfKJfcY*kcd7} zQWDj-6t|TeV0F;m9iCDnR?4wD6|G+;fn%M{4=}f8o`^99$4{I2O;X1{`C;fL1Gz|VQlKD{m-3eC6TDT`#9i*v0{OCuO_K*VzF?6kqPNu)+ zPC0ye{>!Uv*o7ueYb%8F(L2D!z~Nf!j{th6&BRG2L5S7j0AY-N$z(zH#9WzJTq@Be zk|?NN-i_k8-}&Zz=!25XC%+OpsPj}%}BUi~A@%?7`PFXrR5p-Vt_5AXQ90jdl3U->%Lj&HT| z%s<3ljStQ7zW*aUs$ zID=Y!gXF(+Up;_R7$*rp4J{($#OG?Q>7FN@QlHduPU@NR5o*+U)Ud`V$*0bG236z( z!Ar^*;_@IV@bv`{CG_ z5vS^u#Nl}ZHgP5-RpEWo?zd5o0+GE@hZIQ+h7IQJA&cg6bi&iK8UQD~z(Rq&mbuR@ zKrkf>@%sAftd;lU5jevh`gOTuo)A)h+s0e62jsV~tk6UnDr{Cb^ln ztX^PmuxUZmjdjMzJHwuL{ZdiKA+pi#g&?ciukD#B50oUKg}lK#n64_|Bmles{Kdqm zyv3Ax0z3u!{x8t?io`u}pVK?RbJ0Q|ZZMpBgM3ilBQdQkS*?R)N8&E6pFMkhZH1vN zljb4nklFR^mLRH?$cq6qUmACFa=&zs1!h^i#WcVfD46#p$4q@F%`h@Cdo7M@7{DEqtLVDLK#_pg5<2AMFSO~ zdP~T%^C?}^f}0JqhtGM+wFH$k8JgaEJa7fnSD{eAztrB!7}qQ596`G=yatli78gi zk$PEu2ABxJ;r6?SIasf7;9YpUn;Sbb3#`B%s349e6}T%s=oJPTw{+whLpY5T;C9?A zp72{s_YHGst&iThj*FsqNjsnLF(EV=f;uocaEl@azt!#aBHl)Ns&(fS=e?C_HT}QZkU$CJaY85YUR_~cuXf()|1&kb606T-HgkE}8M%>&aWKEEMp*#S=Si+>9`FudclWKFxUnQ(5~BZ0JyWdDJH}C zZ-k#HchxB20_YG?s(?Vws@G@Gp!F98@lmqprL=RjJubizHr^=!=JwakgZxVlnANKD zj}PqES0iI?6${g`WL?V0TPZhSOC3Rqa1VGpER>-H4oAg;k(NMezV{p*9~einKy>DP zz->q==?t{N`T7!16}*`z%#A>IMXxtD!*#iUaxLK;;p9uBf3_qVHJ_FJ;348dEP9mP z@Rdi zFh~wf9-q(nK|t}t?>ULd0^Ot)p*O$_Tq5dp!?UdWy{PunxhWq^rjJ{-eBc+c(_9?~ zsnhCyqY@~pgAnFB{t>9C5I! z6TzDa6o&<-l;|BcHqh$@40ku3dxr#nJhN~~qAFpNfKwtmz3Xo{-QL$5AEyfytZH0u zDG3z96~lFn!9huSlEuE{phG{t?9vgOe?Q6d#jZ9=tWxp9Gv)V;klS}W(xbpl`tjD; zW6-qfS^yZ|wQ{o8g)Q(uNRejKZdCXJpmZs7c+$c&2SI^hSzd2Cn z1xq}QJz%FuX4U`5tHI|A20t3GBsjRCTPwAT`>uWV3#7eN40yGPxzRoX=NMfYso@g5 zD*b&vdvUxFJ953`&06zH9AU9x*1PB6TvDl?aJz#3G2h1plUgVn?xOtn^O5ju{evt- z3EVU5?C2@Q@3k90s%r$ge7t+1_JNez+G842?N0Sz2Qj?}MB=D)X$#B_t3=Ts5kI3f zE8`icS|&f9-Hlvul8jjV14-+_^~mIK|B6P-KS5ao4isVWf6}KXa{@l_FgcD!JA1fa zP}dm%#O_tw_Y9b~>6lunocKBw_I>ODj?EtTY>To67ACXxj?v>~1#|Cd9YPb+og2XA^i@_RxG%_NUt)<;Y40!)uk0NhRO z!5^th=J~X4HnWOgIn8RnUe0mB$eKEM$7Di!lCU=3qy4Ilmyi)j#! zjvILl&%5@euzm+mC~_a~mRZ~qo>u5b_hhddg+v1j)rY_h*6%_ifrSk6_#5@d3xEdy znDssc6aFlZR*%yPvf3Y96QHuQE#R*DKv@#w-W91^aN&d$e=1g4Ez3<^sqS+=5si}Gw|ryxc=G);)!TRPT2K|;1|g6 zUi`fPSe7t9z|&OK^-=wou))N-d^@LYi0@~kJ4hhAy~m_DFuIUWn8p%MzDr6zzHjfn zBZCHm;K-TK#_TFj3uyN~TG5Uo7iYgH5s-)N)pl;|^d8FSAK> zo&T&&t|@4jH2pg{O{~&)`td;tVO*-`6KJhm=;|~#OUODk9@>uXHR=FY zXF6xT@($PRhi*U8-&UzJOn(Pf+_Nxl@@UrYdNXB?S&WpQOg6M%M0q6|f00BBt%ttV%T!%?T2$_VM{Dnv^Du@T))G zNd0@)ok$8GIVSUu3rF3`2Z2or#{L^OF*R8Lnmd8L;l3I4>-$|K+(gdzw*$WDzx!0@h7b9kX}f1!!+$LMtE2Qi7H%21!Fcy^BO`-msZX+)q7*N1!8)nFP zfg1flRdcW)40g5{lRZtjz&`~R7xYyZhP24vqghb;cmK}#9Pxzk$-Q3y?-myR`BrhF zG%VhH6skrS>!*!iyxLS#ye{+cE*Vp+`H!*E(hhiRz5u{bT|ult#Ip(2W;O$%N(MAU z9xESp*I-*00MTA3*a_RU``YhO_j9O@r>Jc_bznc*=!>fY+C9>~Xl4H!j`Ibu`d0bxLnO``YKA8!c z7}H7QccdX#b^|bEps+;nj{nYthJ=(qnbH7!1)(3ZDC}ATq3d&N-t`C1zE8FBBCax6 zJAm?0fkH%_fx3Naa5xEVwCb!4SgaiKnp~-dpDRmW$@lg4CV*1RJ@^!4U5FmCq)^>s ze2@>+Tg*a3H8_Ks@b_edymEIgg%(6oZHjTWHYKg0iL1pV&sTo5#fQx%vi-)G6!4eF zp9?VKJKZds0N(k##b9qd|0!xDa%d9)4TJr@b{~ihi?^#A**5y`DyxVUcofwDvD4-* z@VDK)R$kH#leCZG-tR7`KNY0f?Z#rJIk#FX51ozu0hAtFk#)zx2TPnJ?7gP0@%Q2V zfzOK)GR;U9h^I&z&|ks23%+x`AE#SrYb_Tw z&8oE~Q4a^~c{x9aUO=9Xr)MNLbhcA(8$;e{`p3f$+B+S;^zTMrAwC4ix{dOIQ_Vi3p}Q(Cv^dx(KQSPP-lqs>EN zhCBo4Z9QPkX~2xHtNvZ1_P=#o4xk)$Amp;eHxB`cp8FCXEW?v&hfeuc#)9XY0{)+= zJHQ;i-yv9xNP5IQEJOIdOm-$-mNI0_RNf;V_vA9P-w*PAChm7PVtItHeM=dA{nxwfggGl$_mXT z%T`VZfEa&o)DZMvR*tJ5W4I{*5J3cgD)#gu5sWYXSsDZ=x?b$5uWQ6W^EI3HEtCqi zCAtjGAnrkZoXGka#r^k_WN`P(A22|$uCqp9Q-}3&$H)NKZKJ-E!*?5wm(m!k1i&;< z*{{QhG!OldXwW@96O@)QOd?+*fwi?6Az%uFY_s*m6*{T9oXEcU_v3`HeTkQ!u-8s% zX!=ZHs4vCLvz1?m^V+hq-|y^LFE0K~tcUkilJ&dg!3ED@U?motH{Lzg|CQaXgF*>% z7D8wGy!{VkW*leF`q!Z6@R;;@I7)F_H~~(bkP4wn8${}@x3GUqQ>>E74ra_P_>+P1 zgnrYFNPfUd9qm~HQA$!@l5A+iCBc0=XcT1UA}|Sc$0Eqg8%KThk_7^FR?|&Es1;Yx zXPIqop#YiCxnm9dgV#2gKXJ4NgTDlMsP6VI)k%DB>?AtDDzDnix1k3$8v53xl*rIs!gy_)az~sQ;qD-emobkO-AZF~2P z(=^szA2x=25lkqlEWf|Zx&+_GezhpU#ALL zOVzamU=-m%F(#x6j?z`XO+G>FJ^euWD+KOo(ci=RQep5r?WR*9Z9(R)0E1#-Gn0iLNsM!;(c3Ilw3s0E1K!w6sUBVC2q zgz5Li>GFX?T$8~g4mVPTQozh_dFN>HUZ3Yfh9n9P_Jt9HsmVaezsMBYn9aXG`s-5l zRXkSk%+}A=K8FFY;g+&bDHd}cTHJBG)3^v_$1t4gIYbop27t=2=aqMb%3pq<07cXcGRur=Ohd zyoD$f*nRTFJc`iB*+gQX#X_xmw<{TbB+wysnEX2s8>k}lgt$9q2&Rn@Tn*?!qOT_i zy#<~6jHKWK6V$wap=I_jT^RIaVNHQ4-|KeS=O31c1}KAK{yC=Cv`$vH{x@rZCB;LV zt%y+=ab}d?*S^rA1*89vx0K;5kXX1*_MZ6#KF*N!rlW?g>SDU@%k} z6(`{5Vz9*Ub*vU+2d`^BczBMvuDn6+qZU>0%fN6nA*&by112zcBLa-bw3)^-77q22 zFEP|JI6j?f{-$378Bz0C&*?|78pw}of#pGVKh=?_VM0}qOoEXv`zSzdz=0kJU3os? zZ_r3C$(*ym%uLl4PNiy!CKK(oES9N%;M)7&{SN<6UMD}lgQ5b*YkllDT(J}rxWQ|e zK*p10{ao;#M<4Z<9{$HYfXZ46xbQh{wMXu!`J#z5XKaY3>cabUvM8)rL)}M#b6D2= z%4~)Bu#d0R1J+#}j(ue;To(_BF%b^1Wx!h7yq+a#R=xW;KeJrqL%xJPA*JsQ+PVUE zTLI20qHAsZ9?kp41$Sx~{P8Xz+^cBgd2w06yDmkouKh+aI>2_!JVc$-P>HFITiUat zI8_{Skx%x%^lRgmx@__|_vnzXWZA$<_?<*x9iLB(!GT-VX1;2%a+zjK?fH^8n6u+r z*V)j=F0~^>E#QRtWMDRoED>okOAi3Jcky5X^F@K*V<+C;{Rhnbvy#Hr8x|Zg2IUcl zhaHg$Z2|i&i9i{V%0mPV<66FTw;1wzzC?lmKhV5SRt@=j*EZmeN%c`KL>Y&u25}3l z^g-~;Tk%nC2G!%4ya1!-#>x;mneQgRCQ_LZ6UN`Bs}aKe-FUe$a4w!vu`Cv`ZC z2e8k*Q+uuM0Ho$i2x4GF+yso8cUkeJ)7-$imAb=DNUY-C&-DX>99E}jf zf*UMWMEXv+-S3mC8K%(8Px*Q{@CPAROFp`0of!x;5$%{+I^AM)`{S7sidMZu{rqEe z4$xuHnen@+-ata7!ipm*L<_g}4ryW9y9n8(#D5&!9N3)z zB=5n44z4Lt0)_^4jvpWc*Y>TZ1x-e`LMKSIzeeKb0M7Fr@7GZS-wnb%i2>HHXN0CF z0bNjh%~?oc&{P{Dvfe-9wV?3PN^a25snL}gH`>2D?fp`hONcz2f`PX&4Sx8P$hJn)sq%LY}3z~>&d-M%ogmkb|0gpcQRcR8sx zTKhIi^wiE~06xSotksw9LD*kte(ppUGercUZP~|0*Co7gN1GcA*vWq8^RAP@v&_Nb zmArteT`+taW9Du`t$#tC+2ENeA|P{w>@7L1mJ!2Ot)A}SeC2g>%j=#V9M^0mjo%P<$<)7LT2-4w`12l zf1yY{o3cQu{#m!nFY0x01R5Fx85s{ixBQF)dbQn;L%j@rtFYT(Y0Ju@j*@ z-9Vin!UghiC=j|QfINi%z@48KzeI2OFtQyHIAJX0U{x$p>P|X&x4=;S!YLwC58Fh8 zC2+ws&{i3miDSU@%Rp!3f#d_~D&stFkl#S&pc<$=H3S2XLOfQmq?b@eHR1&I}J)^>7tuw-bK?hgh|TY_?qnfF^$DP=9-Td+rd?uStK zq1xv0d071W2q`ylUPdJY2qi_*`saoFou0jtpTU6mX&TdmTvp%^8ka<8DrojTRQdwE zX$pmn` z1PnaC1MEI)s3hcX%YG1ws@#g(O<07H0_Z`^ixTH~R4;*V@{2ANF$a|!-D-rVC@q#0LHHhFno!NWJr+q`KJtJ}u zBVrq!H?3C@`@J|yr4izL#>2sWI(gmO`7nmFoFSev+9JOs-Au>|Fb?nK><{tmV_2)v z4{$g=rS!AmfNs|a+6?*$QOneWy3}Rzb6yjGK6JYvEmm+vlBfZ5qN+#M#;>&2=II%^ zcR*X;wtGlV$?lkvj(=X7qFIGJ!ZUN3z@6-7@`I8Pw$WH01P&Mt%LctDCV3q{e}Qwu zxxCS^>SL{lyS&F@v>Z+~zsH`#8pk_Vd>1GM_vi zFtEoAI?Yu_M9p@dw;G&wRiAjkqB{4`^{0Ri2{axuqq|EVJVy`_69|Bp`1$DG1R)lI zEk4|1!f52c@_RtKSh1|yVTcJR-*8|DPfqvUfyFNjlB&nKMGpJ>dL=_F1d|iia$!K$$Jj_9Xx^*D+xd?h|s!KWRHQ*xv$q3fWJIY(3_|dxA;DGf_{71#qC2S)+hIO|2Fs! zUyedc1SBU7mU1eOU=F#uCN#zFf6mN5BNn`egPp)?B6-;8>6^6jjZ%xj%{QOf)?Hr) z`|8L=5~{#SpM{Jf}@cz*QZAYbz9!PfvND1=_8mQVGmaA93P;U($B zn|_=xy?yV~TnJ$_2(y~ObR0^ItEoaL(`yhO;gHa0L#o^F)MsQQ~^r_CJDy7 zX$9@20Yp7D3iIYwCoHJcT0ZkPVjEWoaf>qFrSF)JxJ-Q;+hk#n=Fa@l8_r@E&-BT^ z5kS-KsYOO^=p+I5kRI6VA19G2Pi}UsvTGPQL%xa z{y7L;HO@nOiuf6>*@SsbGOf}Qc=TXwJSV?17|+W%CU@T!sqUPdz588SOkYac?+|I1 z{agx0#>LESfnE+ab~THcT;wA;od;(h7v$zf&>VVWSPqn+YQxFw{uKuMt@e59M9e8}OUylK2#KilTTqO$0zqT70y% zyr!wCLTK>Gh6^x5Qyz+KICH@~BS*dP@%HWMB2-&{LjWXxJQzYSBbx6YF1@HY#QOCu zaPq(#{=`y^2gWX9*TBE86nqb2=(W4Tf;aI9_?_;bel+k~6Tqi(vG9HW+`6{rh#wt_ z8VJwkh}A%Z&IKNgRaPQCQMduz>fE%&={6365^_n!*=p7y1=3qa?g%*Uv%E+N@~V#h zr*n=2DafwIkD}?un#}4c_w;UXN;0Y8Zu@+uX~s3cp~1-e?7O{~<$hro(REAa>ZI~# z=4g!hHz$wiFn&c3)J96`u%MYh6EQ->Dnf<#0K2Of(XxMQWVfIx53`kUWvmVwQ*0+i zrsF5vZ+?b;kw^0d(a8;Rs0VHU%lzopaxXP79Buz;QZ7r2h5bQ|WEI<{lyz;&)9^r_ zUqLXW7z}|0dw2sla{DmSvbWK*NEu+bdh&w@A;w>q;W-GVaC-Q#Z+Ia~j7^Urgz?Z8 zprztJ@r?%ZZ0a5G@|Gs0PWR0Jh%P7>qQ?Hszh1KWAI)G72!dqY|^aIgO5 z|L;f`G;*~Cz`OrtBKzlk{>N8tB>&{a3-60lIPyRGtN!VK{^PS!`2X&0=h{CS?LU{} z75DdF{rf>Fl*&Kv%YXc;!;cP^!%X%K0EGX_H-OTvy#6JZ|BshT?Z0Mg7^F5|1rL|| z=Q{A8zQ)z{fA{qM*(jX9F6XdB{&Rnj3-mwdr2qI8Jp5$!`>&TPodjS!U{Ht4RVdWI z|L_?9r?1dZBsox1{g?Y%mM&b*@>u}qRUoMOZ}(M#kiY+ODfl*hQ~sGrSueO8QU0yf z`KM;*e}9$LoczbT`Hy$*|9vy$KbLD+ivWJDQvTn06YwB8tgYt%m&^RmWmQoIV?7`I zxt#ijOp^a{UqR<+v+sZJ-~Atd9#s)8Cj>u^Fv;X!=imQyU*T+G|FdTJ&tD;A>d#s# zgm5{F{7?7t-~NrO75l&4Qc8IK|8MW=sH`-%+#$oh54$9-*9Bmw z*k-ljQa<>=64ln zd_JG~%luUvl+~9V(aeG)SCDGkNyVGx$*T1GPiw#s{53N(LT#reX3p!+ihrJCKloGM z1T!b6V3-5bL;m`c$yRVr^1gh(xjlGV+CW(PL5kp`+aj|Klp0z9>Ho2RII0N%2YFPM z0mbyr?*ZGcmVLmB4mWco)zC?Sm97bmGwpd!vrl%M;&1p@Ka>2){)cr?$2=0&BAYmu zF8OLGQn>0G88G@_lYpOqKl=7XeU_#ei6BN<5_#`?xZR;KAv?ux0DRQxaf3jgx6QoA zFMd8I_<6>=hZ1%TakD<8jwZhES_1+M)Bm;BLE-o3cL4;>%)Ej7ByKY;cMie^}dWscR2)yv@p9y z#tgz6XxkddTE(nyy?kzuIfvqnCtMA~HeSN2Kk5bU-|C=JL4oT79S?c|vA~}hb!+^Q z6~Ri#*3hp`fAaW#<}+h3w?6H_?ndm-*PM2bUD$;#(Edc=^<1qvhWyq3L`i1vSK^ms z-LkXq5N|(Rur@)!HshC5LxaL#qXvRU)K&!T?@j@wDRw>A=e37P3xl zt7sRsBQg8_mBY28$Xi7iSkc{>9c1&6Gyu_b1oG-~_$v=eeh+N<1wDfxZThx=dLkt1%% zEA3!-)X0;MI7!*g>W5JRHk#rws;Aar>LH_oqJkFu{D648vCi;I&77k>95r+^c{k0_ z-op4-M@jFO_wT*)I0Qx$*#1Fo;C8gzm=CHqc?;yP(Fa)gbUXTmq7blwRg$I?FyVoo z*ow@>$37qt@G1a$HnMr2@Pu^JedN=_xG0|1eYI5=0&6PV-&(r_G1H{^b2p3SfT5#; z$+F+Npl+~7_60w!PC)9BQ$b$qbVqF%FbyNwzUS|8pS;w-%ZqzHeWbS-d^i;nNRy9( z8{g=O^m-+S0p2vvKK?$U&?6xbube!3`r+x?(8y%r*L{;XKv6Y5KGT z;QRVNXln|gVyO4`Bwd8`WGxv;y@QWHZXXSS0L2KBY6#_iF#u9{osR=uGIW0P5ZDNf zGWXVdx=j~P3Q}e>&>LL%9i$oiTeXH{{Qm5E0TM6xN0yI@V-U~Rq_>`AKOkgYJ?OKd z{y{TUv~7Gh(2eSXP~{Ok$Xky?s6!ckHV%2lDFK;JVp95!|Eak1bRQpu-bGhw6A0EY zY|4+Glfw4*@3X=WgIi;5e}I$>ru+Xm)IcWzW@|i6xr}o^;P}28e+1H{!S-V1@M5t1 zeq)0a=F?M^$|`=K3n~$=xIJ<)wPNmU(N8V8ejD@w4prNvqz*}H< z)Q&uM!T9tn9)kzr8r}YM83871O#WadD|5iHfK|&CwO7x91M;4T(~GDx`KMm5&4o1a znK^4nlm&h+H`&ngjT|2GiL){WM=1>;ZR8f_k_&AOQVT=LS9bInc@vn%9iU-;-`^D< z$*N&{T;xjzhU64_nsMxTY|96QNBH+s_5Qf88aSQxYLY zM$GYXWi5q60Rf*v7@@ze$Lu%;^r8;YTC;EAnVe4 zuYx71e_Cnylr!er95m#41fb2j?zH~x5bGnoN#Zl(b#}xxL+KcDq5b3YbnWS9K&xD= zKvgwDR^}Zs%JaZq5dtHqkF~!_6+|zqG<4ziyXh*379IAP%+GF!@1&J39OJGairfDe zi|-rBe^`RWZq9%DJI|LI0UMt)xq^KGgtyvZjSHX0Z{zL_YdpuBG-n_V)Y{9dAgwB0 zjt1D2in1BLBAk(UVgvB z=M=#0WPaYkf{8Z-V_VZhn56aM3!b%3crRNCgd)e;l^zm+%~Eo1Cc0;k<;15s?exaI z(vQ&7Om!AA%dfd11a2|NO7*y1X!Q)bGu3{NALM5~rTuBkIe}zS2ZPMz2gzJ@$*4vY z-5Y5!U@q#bQ8t}gHPy1iBqfv!qRbeVw|s2#QIK5z z{FQ4{K%~v{XSxuoi9rs{C7!j|ND5RFzQ1%QKq61r-?uOezk|yB-q%`xmkZ_C@hQ=I z2`w~5IBxP)Lso&MGw>}&k~bV{h4Tcy(t_!Uow0%)tW+nugl)RZidl7RqSy~4e&vv} z6hp%DuVqNu5x@mdPxYdE$?#R%NTJV2fKyjBOqhw*oM$~7_Nm|I?8w}^$D-BkxbB`P z?F-#?#G15P3^K6k@=*oqmhI814EAKuaE(DviYD>)ysxSw-~h>t5sdGf>kELS4rP(8 zL2yWHa4hVHVo@eWNZyAeP~nH$=^r-XH`0v36z$gdfU7AqIDWmsLF()Xu-*khSl~51 zA46fZz&^c+yGHu+>dGDV6kP5)y*~-|?c;4Cki`aC4M*C)$(!Q-K8sIz_NSlD-8ZMBIjXt!^l^pC!+YQ}&;Y>(Xs zMCo2Z#m~DL7duiqe`$KMzP!cP_?(lebwZF))R$zpuCKsyVODcb5>}o|0F+;P*^{( z@wm6*2cPeLHc;pj%D>~ly!B7S&&sPWmwy9L3X=8?QddCVY$A`$V6Brpzhi)0)b-3qVI+pYHhTEHR~c@d3>N9UHi`& zqKJQl*_ve=I#2aNLJ(4emq2_3$|~FohEkU4;I|cG(hQ9KS^%oUQtnW-~}WLwcyw}t&f>XBh#n4vk*`c`2! z^<$^&d8}ci^f_|-17|ninJa+D<-_iu&p&J4KVRn-u*w~W(bnrs|D17s?e}hT-U`@q zfM*S~zkwaM&xueE7y!-@1IQ2p6cd~TJR$u%-fGlCTy0Md6Iiw)1OkUvg zOU3ih?x0UM?+Wx(CUu{?9#VTF$l^Zuqte<>kr8pghq=&?LeApDIJ3^Gq0#-emUa8=&>DnX;zF^u!Ubyj10V4Y#Brw1gg;Ec^w;wNke}kX+$S>2 z@HVlzxLz|UGmVJ<+njL-o_~17_Uv9~$zq;0prPYEL^x5xeXJdY$E;GU@VbH#wyQXA z@osUQ_^Aa$q z={<6@a4zY(ZA8Ie$$d>f7KAg!J)Bwp)V;=Sl^VPJLi@Fl2<`?ow(a9DwJrQ6z7vW> zwBbpN=3zrqIt|CXlyR8{w_c0^66r&P=lc$F-eWFlEixwbDa^V4VEq)%fE8bC^ivV7 zimV&AHz^Rl8Z%_Ed}Ncg7ylB%+Dp*Lilm8aQ}j8$hX8*^cyW$I;Zo^Tf894(K`mBp zSl1IkF851#Am@+Zh3)(mDnEndGiSZh+%0b(;lZ#9B5S2S9z{zPHnuzn@5k&-8kd2* z$+KlV5IArax20Z6LVs>X?ctC3$I=5X;e>*IhD?Qy9qVXMnU5MDaP6>mi~WXN3Nl@q>6|`=;JA~I#1swOoaXx~KkBV`%#iH!aP>Pl z_asP&hV}F|X7V`Sb6tUel|oDrPg_V(S)rbI_Xb9DUM7CSJQMl+dGBvVkCS-%^oGv@ z-d8YgkdQ+PonS~LhbE7D{jS}-*33?vE{)A|g5-*pUtva(Us+9_sfBA0A#~lj3wm_u zCGH^g0-xiF36P1-yk!2RiMP*Bd`DWg1I~+yC12FsCp*j)1tkq8Tz+2NoEsF%ke(TT zGNk>H4i*gCJWJoV?rpcdY`?*98)AQmUhmgbWZC$s(L_MgD#1cE3W;5hK)PAQz)XV0 z<7Idqg)C_F_yO$dVS`{U%XcQ(b{lDpK|mDgI^X)?g0&RZKrZq=xJ2#~DKIC{FD^@x zz`Y9SwKL41;VZtWf9v`CPWxv*szXRMbV@@N$=%S>elQ7ns3Qwe;~#?knf{A#;}pBg zlY3V@{;6x-DTP=Kxoo8L<*+81-I!sY3(4y1pQe7o2E#leVNuKyoGaGb=KxYwqvrc` ztS5KDw4jH$)syZ3ASN_MSV4GdJHxYhJli|&nM*hi-2_7qYYqV%2eKj&&s5`eX&&TG6U@EIS8hpe8bV>aYa6=q4 z8RR70q8|?SU_SiSvQ%fxSlfx$)?sT6}@Ff3LfCDV39yA&LF}+*~S0N z?v~@ZgFvF;sKk$1Z%ED9&yNeRr^R*s*S0nr{wK!aAmMD5ePkNiU=M;Z#v+aXBU;t3`O@SxG<3j1JJ}Miga{is5 z14}w7EquA2Gv)bC{fwx45T)?1c{RtDa8ub7j-Xjivm5uSKHr0Ga|(fkyD!F1$9A>) z;7&vAiQm>bZl7Wuh~<1BSq;{mdk)n48~Hit$pis9WGtqvT4^gQSx)JIbtIp>s9UF} z{hm?UE5S|@hqH$?kRQKO%L7hexBH}G9^+ZiXqHkdor)&L3lMp(#t8@B(Cz{u{6d=e zEO6*{bWklMw5MPJI-!^%L!udkC}+{x$caiR`108V?0czfd7Fs@AON4XGG1q1ZV?EY z?#oLGh?nak%i#pE;$;uuy1kzf+2#{aGebx*ulXSqntQgi@5&v1?CZLp+TD8gBFq=W z=nR^qK>r{1-lSbsHO<=nK{SvWnxY^o0wSe7>O!TEO8E8Pm^)5p#+R9=eLANRaYgKi zz1LcEI^lhvXN>!nnC^L{B3gDz;{VzOsWSQJW$0fSaiGFIG2?GSf?S0~v8!7vqmKE^ zYZgLd*kJ7U57(CA#4CB~D_q_xkC`cI_WO5&yT|0@C=)W6H>JiUJn?4*euM+x4m#3e2as+%-2@eUC;#x5D>5y&_%rOLk>+N98hfIuTnSer$-}aIl1C?ezcE2+>V)*B2 zKSc4aF2?IvAZ;2SmRW^MnbN^wF+7CwDb{8a?!O51uAT0bVY+nsS&FA`cC-e_cMR3&IQ$%5#o<3UjtVrs!3I3J(yhk2HChN3Ct&LnEO-&gJ&&DsUu)wCDfaW53lmL~WJPUK4`(R34i{)Fzw_07c~=q7c6K~m zu#pT&_d9~5lebX2ZTxKn(iZ)f%m9r>WS-=2*5j=FKw+GEUuiuRWHH`=9}O+O?0yGO52}?pH^i}Le%{kRl97led@+}}rwlbv=V6*3 zk!^i4bNIfs8z@Zko9SPx{k7BDb}u<@`Abtu4K0hVK@&~1Gs4>vSWWS~q0f3^M-E>{ z%*mzu)xCMI8gMr(!Hg3?d4@y~>kjW{VMu1;{XjtbfDYBrTPm$Y!{CIGo(yuv}D`GIth040HRGo za6IJCncOCJKn_$e_ z4PNQV`BxSpK5ZTv6bv){*-1&BBs}6f&L#7|#st5zUSQ@Dc$YF!N#IS6zu`(<>o1U} z08@t`v)Nlih+~g|n&)};Osd_RVHRctq~~Ee0w-x^?Q8ef`Sm5sC?T6`s*Yz!BK2;$ zD4-XY#2n2xlGxzATl>miwnKFvP_$gfUHd4%3s2O>3*ir@G|*Op)1LZ3*BoT{lihZI zVNz!;&%5}!o~I?gEiHgk?l0|F@)hPm2`WJDK}m|H`#r-%MMFuf!%O@plZ07(P+|`H z?h<@zpLkdef8;q@{rDpB4yNpmd7nO7(F)0m#nfoEONX1kMZ_L}Ne-D+ncxzB!IA|x znCh!ulfD)6~bs-?_(+oukLBAD>us{U^udKjxW* zg3a}NFMSGR{&t`aD?jOpmj|OSBP7`pPAM__-`;wY0kQo*$Qock5)ib|ItA31nXgkwYG=DxjA=kCU>nzfb z@zB0i4ZJ~bPUz;f|4tOIM%Ot#h10&X6^sIX)KIM-b{m9~aI{8FmSc}ixWkrUhe1=a zVsVQ`O4#Sx7NM7TtHjPu`!qqm*oq~ko`rr#K4_j*$&h@y{l3Pqhv32zm0ZdNW=EkM@@@{s1H7Io~!l+(PXPHp9bLBx)K=r-@#GKX}| zTa{J;=b^5tw$1|@g;Q<>2{IUdmz7$TyQgE!J?X2sl{R~&fu(_h2j;8eeE*mD;0tzvsVADc!cW-_T} zV(;vvIL~N}(B5m6Eh5B-enaC>`h2vQea?^j=$u;B#w~TNCv9=Jcl5xl)xK4yzWKg5 z${EmRiO&A;-9FQ~wO8>fD@TcbbYdG}JOOO)dq8 zeN9U0S{$VBXaq7qA*vC~t>M1I?bxDe}_Y@4`h_UrX^#_*vs^2$CEn2`5WIugS@%0QFC3?0d}| zVv}%a@7>|Y_JM)l6ErEmkb(ewIe31D)qX4rOr`FB&$In~E^2(}FoTE?$G9SvbG={N z>1T7z=LIrhm;pnm?Do6r-fyc`s2~zu@5<}&sfy#{G#V$exN@m5@J0(X1GpBNAI~y`04UwAgJh)+#k=+tX!T04uG zb=EQFWhc>%-dpZIZd2|j*DsnsjtDx_{v=KZ>!I4dFvdgj3p<1qKs9Te$`>Z7E_6>s ztNj90dD>w48~*BE0|Dhux-UHpt->obTmCK5@xB~*JgroYuhx_#c^5o6X#-tKP$aGP ztY$W;=j*%|MNc|WcTkbQik12k1i9Xhmg9?fw^B6e!R1U z*m1Gi@eSaB?9e8PdpK5Ada-uR`DIw1WEEgMeGGbc-cQX@DSFI5ULPJDL##--bd)D; z)28>kyZ;%+vD0$%MCfm{7wrB9a@QMW>@6MnOZ;y)wn6sMwkZlFmTUDogJ}18m;6k8 z-^U}hu)}|5PX6@|?$9V}&Ey>nRo@MY|47v)$m_d1pt++*nfP%<-Wbn&%pB+k#ZLKM z`&@3z-O3gf?_9sX+TZ|%1G%6mZaE}}A#I^6*{>uD>8>R&7GtHy@8?}(?rST|ysT^^ zzC3?N3g!Is_)i?})`*=c_74ZaXaOGo78W= z>QQ@)(hFFilUS8@7mH-Ndm$2F*}4}>A+{p|GN&3AvvtO9c}rzBvR=AvA*DS{C!&qW z0s~H7$uN)B)N`eCa#W5Uwsc}!V(l2Ey+*#vtAf}QcB+tpzcJT*3$ZruE(ZI+06OJT zcTVhCo70hF=|^5gR54&nciqG&m~XqMcqM74{7MB;OfgA^7b>8)`>zj_jTs`I&o#oo ze7p9@HPDg-re$`_(y>wcW5p=ipB#Tr>6Iglv|#U_r{r_k9kkchKmRQ^`>)Rj3*6qn zX7e-((QeVLMdV?Xq3L#py)Nb;sS?fvr>9gI@(2SR`grCHf1NI$HS|d1GmEiRN;EhK{PpP(_wy)|nJOw;Y|Mfi zq_^uaz74r8BA=a&?&E>%SjPt4dntTl<9p2kjWmwVu%V1qYO7j8O>A&2Z+n#LCDVG1 z*?f1wUt3BD(qYr>^7dM%jX|>1dt8w3n8jPRQ4^RCyCiE@rS)yO6-NB?B1xw!H93x)RtkA}w^Q%IkpUu>Da(cnV(;Fw}Yv@XJs;}|ouEny>KU7d%{s!#Y;Y~V{ z{-AqRrzNS_b$i7&rZfH3amz0!eATV%Tn*6-wyT?a1f^+n|9lkmd7L4U~kXoFul_l=Z0tj)&dpaD+IxO2dkMoy+ zpU3!NIe$GnuW(#LA^BITN@M}}%Ju~+m|2hi-XHj{_au17e=grI91xo=xN58KpNIRd z{M%`R>4;+VgeHztCVf z{`X#|hqA%HX6mGiyMit9RsTRg8I1h1!W#eEuQOHh-~MIl_xTgM`{I1leoy>5_P>4| z`$iYn|K-;?{Xf4>^Z)-k|6hIGoP&e!@f}u*L(=xet@MTTFahfx?jjrs|GlFt?~#Z_ zht55Gy=mVx>2Y};W(qFue`SV|e=>YBn`Q3ls0OM-h)Co$&-0``VUljPPp3XGx(c4< zC>_-rXJYxVT^uDN)34VCFINWc7^bz$a2cOB;gf-dc^N*(`?cQ?LXpy&T}|@cCf2mY1*7eRV3#icKWZgI4ueX8l8DzD~DPFRrZA3KV(R z^B-Y7UZ|wefmdyw@roqZR}pVhv-^GPm^P-2w8w;Eo}$Yebuyx)E->_IZ#%jn9`7hm z$-vH?tT(p$XGzNL-{)t|57^c34elvE_)676qRY#VtS#Ka=6HU}=J5?K?VkSEevOH! zY}0G-7@xI)Bl_olmv>-(pU&X7d4;mc_m`~vd~KM_)46*5jt~TT^fe*0lM;F#BCmL! z`nfL%%A#|kp8O9`!Cm3D`-^|s>yOSvOvkFCZhocjaJ;z_Lkq>)9L4o=iXZFsp2fbA z6~QQf->7gcj(Mk`>3Gbz&2L6=9dg$Ygz&Uu(s6rwcN|F&92!|252mHyX%>jzIzKUk z8$z}a|KRVLzPkFO9b}SX_6`a{D9oQ|W##?Be1^Rd-^2&wyq-TvIckue6rm-rwZiVT z{VXJ`JM4!!&$8e9?-Vv%7CfsA*Rj{v_6Ha})4A=*`f}%wCi=Pf=uP9Ik8PC|Q3iZDG`}gzN z9o<8GDrx#V*jswrf4ZJkJX*>DmjB&bjfqpu2pKaT+r%Dcj3dg#D^7iA8%do13bV5% zkp{*rbtJ4V&EHOF0DrP$*|^QYOWAwH{eno|iSpmXQl7qs_P61{xODn5fLZ;d@BFQ~ z>r&#DgGm0LE8-mtn9|{XtgM&JxnGKVuifMoC^bNsNrVN1T6>i4J6iU>`S}js@wz?X zoD#kDeU-_}>aA+e9bMlO2jYA}k?SF5?kjxmTupJYCOX?X%3(jO_aX%D zKt=oAWx@n%kYsOsM#5o!u)Sz2+W>um^|=TKuO85mKLC0n2b# zy@g*cQNn;N&lwtnyUQ+ZQ={;Up*NtG8=NT~aM%Mu`t^p4t#@DXcX`GzkC%j6O05@u z7{C*O%Ku!obKspoz+$L;Cy(gsh8B|K>Wk~f|r9`HivMnzx0xXTc`5Rer|&oK2}L~<#0yMve)i* z7zEwSykERJqn}^)bc-xfeTI)Qw*SWTAmteOIWfyD@*%N zKWRxqpZZ(bedXqd(pGz1Ku`Qb_W_bXC`J5cZDQ~!FK{0gCUWb|tM1ny5!+UE5q{Z) z)UZ?Qah>3LgNqFHdpy-u_zQl;E|w<*WuhYwPib6z=&xN_D*-w!wu@Ggb%B^zcX3!I z?eKHIiH#p!jD4=V43m;-bzTM@@#;t$zow7FvnGV0w*Ia=F=(%6$N&Y$u$p_kOAv61 zRvM4hZxw-3t72_by zOH~GShvg**98YzM)= z1ughzrQy84uWSD}VgM}?*ND*yUW|^Vgjc%}7xXQ;Pc*b?3_MO0wsz7Q4}g=J(Q9;M zwIzttjR3uvZq$y}pGgB=Y{mjiZS1queBy#V!FD)D%}5HWgG)gr%4 zM>KYGESi7ndzkFjaK1(L&iZQ)Iuh^;1H8|A*yGmyOssC|#+}NDGvB{st z=AXFa9x_k>h4#ugU6JRo9*8dChkss->JXfsu;UbH| z&!fK1cWd|aew8W^jJ`|vMeBmzAD89{Vm9vS6`b9+&=q_F|8>z_T?G{To@lP~H#IzK z{L(b0KQ{*(0_^tX)2}aj4*oPo(=G4R-%);{@Hk0kKEgovw2JtN>7Q@Ww-mdPp$mtJ zeCzv73m@vo5QvuHZ?~BahqVR&>z!9tcfr)SVvBWqK>|PupIc=&+^4mM@x{zjkmtqc zl$59adG@O99IUPk%wKn<#~lJlwF6W3o+rR2@6B`uY~`W2vU)C$hL5aWze+BHG(CI3 zJ8e;Vb9{fb-p)Tf0-gnXrD;MQ1+`a+yokKnkBACge=>$TInWi_90&T zDLAo5Je;dbChb0^Nsljwm>4I|q?!5E2&nm~ekO=5EH61RUytt_-XoG}vKo77WlDij z8p*uR7^a;UIN5KWRQ*)xbLvq3QtF@W3zspqtxQlE6@eGp{OWNw>7v;8G0P?1V{l+5 zGQ`=wUip=*7g$)RqLbN1&^FE=GgIF>@IS`ZBqZmaCJ*U&Vac{tqPD<&9`~C!;wP|j z_Qj`%%UOv!2|S&0PxQ5(9Boo3^(@1CZq^Om5rW6Js1U;J!T=^FB9^mCE;&FaoM)6C z#L2C>Cko)n__^!%*dw8Jtjjq;ep#?^HvyIY;znIR-1<+I|IQEWM$vDmoO0EUkj@rz z21$eJqU2WI-0Ea7Z7Q!%B~Z#osb>#UYV`XNs`cUh3-sjeeAh8LV|D~lpjG?w$DUui z>m34!`vq>8oo=886!m~=%An_4dfObo#v2~GtbW-`2Wf%4$_P>f+@{#VZBroq?HeOS zpZktO+~I&d)1_Z9*UdZ6WG$;?uT(v9EwSeNnamzI%1Vo5b*sK@fEWhN??dWXzr1ru z%-$_6&d4RCi5FX@`o#5BT@GQVxj zH^<`i9W49xAoQ^)1~V=zpjl3=Wk^!2-<@kSh^0ab3Dz9%@qNZ0MLQ@j^lXjudE@#; z%IoVG^Z80HdlM;<+Mt;P79mr+@_t z{eiu66c&5#ijDfb26*MCQCbWl>!>oEUCG{GztT|(hMT`f=VyO_O`Fld3iIH0g3Rku zUM~9vPN7G!bXV6DA|tJr!yo7T6kGT7*|(fUsfGB7_edu?#~L&RsM-2z&v|ApfZ@;P z+d-;mH zUqf?ZKE(78h<>zdEUG`b?D6SN==}DeYuNV_=&9Uq!zbu3yXT3WUwiUS*T%Dtvnn9& zG>44NorDoh1!lrE;r9Ho&TkJ>tdzLcRU!w4_tfibKil3jhCNs=k7re0s0XIfhXY6^ zQE)KNnqfnsf|r!3IAjcPJq?E>dZdnRwUY*3^zro>@$P>ru2Iv-#O}{~`C{Wotgpcx zaF*BpuhVknRn$+yXOAl`v4cg;O(SQyWqEyDNl-E7R2QNJJxI@3Wvq zn8}O2GB;wA_YE&ZbK%#WTvQF5{IAbS843u z;%gqSWE)A7gk&1NKH!+7Q>=QWh=(4YWtH^N8R`MX0aPpI%UOROU@ZSk7q<|%`1#W*1l8#T4Y4%ywv91}hClB)?Pjrv{+53; z9qafjBlnHZ-k=~irSwH0o4_UBy4-Z*$5-T7hoXTEh;+MN&( z#@YM15Zn?Ue%3AyE#?TbVW1ulr1AiidcWuN^*ggvu3FJB`O=np=m((7Epq(bmLk{F z>rgqXu96MRtFNJ%HQM(lpDN>iYImz3Sm;ZUac1t-i*xVE(K{@5beNGFKSZBQ?A-EO zAG(LEdMTNR_q=BK6ByqjCM-`}7yNoQ`QN*h>eP^$XP7eKoE*h&NyN(nW9&CSS?DU0 zzgHW#b3=wSNb0DH_vgOJbKfXaIM428#xsUJqN9%Pzyv^?S_w=}|i7>qw)xN%O z%;^U)mp8f+=G&R$vL%%_R&_q?j(^{=pD{_+b_e9zEa;`^A>mfMm*1%tfru6m=8qY z6c^B0D@Mjh1I?nlW&fc-fB^`-IN`99ys?>*(bH^L*Y+7tC6xAE+u)_j9P=4paZ zf$bTS0n^Rfse$gf>A;vQSARQ1j=bOb&peh%%iN>gG2AhHGg%s!O!CvTFL8W(qK0A2 z$$D)mw9hC>^S`@*&`MVN_)Zgie%F^Oev1#|R9Hz1LK#14c4oa8QYdO6(`XaKB7QVF zj9%2U&r{|V_=1?3W0p1~#e44c7`V}-&WJ6T{qZ2&dllxc?=T-33-jmdf&kH?{FBLA zl+UNaJb>>`TXbkIrLOFuzHGBkd@HCchEl7$6Lt@K&5Gx4`Koe0EZuV?My(Vb!;e_s z_jaA^0q}tH_ycO9zT__w+`~Ul)Wwi+7^Tzgb%>8{lu7Pa`Xo<|4~M9wjMMq;nVa~H z+B0!_Pgl`Z)E(d@XbLEee$@a_+M3=vQD|mz`i!m!CF77==hn0BeAU#eaN8;8>w90I z-LGmG=N&4$6@faamm3O%$FW=uOnmJ{*cUF#mo*a-rVE7|_00V6=)F+N7Z1?NofGX! z#R4v_Nv$fDT_$CI#ED74$Ng+vO8I9u5W!V&flPUSc`#Sw9l)9ChsOCx=Ha!Q1$;iX zOU1$>ZfUR!xMdx3fxbn#8mlws$o?VKL0qX+a`HP5Z0-5VA;NZe7OPPRsvwpLa#T~Z zKhxdwmNgO74SWIr;@uDVoBe=YyW*aY_b&DtU0bK8yXVfM?I#NCLM1*QpBJ2! zi|FRGtWm#=xyH+Mlcs+kEw$hEDsHYTjQyJmZAQIRsZlw^%hNmh^Es@I@$-Rqk7x;N zEnQs?W6`JgE_{0uERcV7qG1QlugWFXuqG83q6|t<*tOH~$I;6gRA#V}h z@3x_TXZ6l@WOU9Gku-_~EjI*Y^%hI&UoqhOtZvd@@JF4aFN(ka?2j7j!D;&L zt-E~M%JvEjaT0s4mo*Gqeuxj$SeAD*Y;(*pM=@Seg$&E6<-klj-#a1jbeav8^rm9Y4d_;2<( zosdP{EpKF0raT@td5ocZDr<7!6YaPdLvC1!fCJIsxqkD@LE3hjd0rBNAIK|b$Te`4 zIHcZygS?nDWysMWz#X0jbjiQRnz--VOMX2{Ck<#vTq(S709plx0Xy+895Dk~F zjB(pwfX*Zj>C!kr)7X*0IWnw-Z&D<9IV->?o&yc#x=%-LanDKT5m_u<{M>&jNaB^CYWw|Bp9_#sfYWh@dQA_K_HvT_=g67QzM&vg+k@gp zD)^o1&)d0k`&X46d``PZKF`F8oH%Z@t4)Y}wvK*LedA>SMo_YdY<^U)2iqJ2PBQh_Ey`pXE?p z8q+Ex_15}2n!|rA+P)C};n236gghabI&FCJBt&>r?At-9&~caQ{yWq8-}7D*#yo@d_o@NTOi1uWG%8oAE`H%H<)6Q^2EC1EQ{QJFC2YF?o2u2Qv zJ7MVbFA$W6FCG@SM+Ir>|6+~)N3K9U#{XnMocI^bcA()tC7egg&1>%DE$tW54v3FV zb)c#uCcOgOmc2Bx*2a9c6C#0@Nt{GwbBw|F>@Fti#E~8xQeRSmk5a6!5q2 z_b8I$&YxKS#-aRI_Njq#9GNW5-Q&(V6+eHEog`Z*1aY17XPi!Y-mGPG;`q292{Xernds+DVcH>I> zvB8S4AjoreY?iY^{6we^{-#3aM)AUk;KkN97Q6}YRx|%~Nt}rV}q478K?BkvANk2UOed{1TU@zwN-y}(l5(`w($EohgpMXXW?42M-)vrUp_j;zVB27wqZJ#_btotWZ1@hS6=gNp~%M_Vd z%ooacX~Kb3jSvinK-(NVxJ1_<(E*|j_~HuOug&virjBAoPb$pnZ7JfnHK2BTItcJB zUF&SpunlJlNj~qskS;V>Z}UfA_M7~;rD?7@Ywpry-DZu|=GNUiJzmGw^;r!Iej}X8 zpO={u_T&Q2suDlW1IAPwwrHS1UiN*r&QW2002=&8hg)^HtCUyJ{C1(W@_nnpcqsH7 zmwttNcG@cp?8&M*jO{D)N6y{hkDk{uyRj0q_X^8br-l5M0uK{8&%@c zOfWa*2g_;#EJC1o?Fh zW1<#%OclR71Qy;(ZG7+sJT4+;L(jXz?t#U8D%EA1yz$!`-Yk4h0_k zM2f~LJ|$J4dz0lJU+%3P=>35ha#@}8=r1QN9K@r-uojdyw04iJxA2pNTTU*;uU;M{ zPd~SvrmC*L6T(q@zDT*fv6W7F{+RnU3OG#v)&xGAwZ@~#C%>?xJ#SCKEv}hi!?GfN zGd(0}6(Lpa=37F}pPvB1S>oH)qg1Ae3^p-B*;n5c|9t??Kmt+P$nDsUvfqBfR+?a} zGS|ivts}!a-LcNprNbtc1<-YiIfWS#O1#nYydc{qiq`ggNY@@oX_|vRJiMLjf;`d* z*Rb;MYLoHwo50CSFFOf3-7KS7=h!gBJG$0m4#myO**&%H`OR46=neZ7no7l;ulC2Q zcE5Yhw(R-ZA#VZ>NpPI?0M0QeiqzXTBhcmSBfROQrr*UumYicpj=Mx=e#zlPPmeso z*gYA7Nx#AHG2M?zrpLbJeqQA5C(n*_baM${fZeUGeLk$sd?>={?7SSAHI=ZD;z5LO zS-C(*e2@<~5st^d&#`rsI`tU(zXZ&SU5tK+m81Cps}$xd#to@wzoh7nG3ID-jiweH zdhEt$-=BUTbHS@7zBAaXt!Ulc5#~%gq{&z~W&EYa{}@r|$D}IztJkQ0 z*o_=L?L!=r(wbq^{tn}bKYqyX?q}8)gRnqvMGlH5XAuK9v|ERapk^X$lUv8<1@9*V`<~(usjg~I1bY1__%;&;dUKvfI?hc&G|8l$KD!OkhV$Sn<}vA(*hXA zo)7?XF4U;0%;nt9_?}|L{rNM(4<}tXeTwgb1OTt4H>1inTN>zKN!-x50>{LwMmmmE z`Y@}+wAStt zUfXq82UYtkMJuQ^GP|s`-=r@5aYRa{VCp*H=DurVt_R#hi0*iqLL34}&gojnXf=Px zAqOzhrxlNhk=x=H%67As1m@{Vx~My=?WM?>ww^Y7f-DYq*;1KwEJSzBHuoy&P{>c^Gjk$H@FrUaq)L5ccRE{~)B<^g<{7@zurU{}}OC=xM zam4ABU2`WtZy%yy!QdY>{h{F}C4UgsVssQCcmyt#SOoVe`tRc?NfkSJDz&R-^h(M7 z^PvI&@ihXN5Yprn;Eem@qgqReTbYqF@dwZqs$-iQmiK54v_~UdC^- zNLNpO-Bkz6Zs#vExT4GF#fkmUH4I~jo3EpCoJaLan*|9dioYSSF>@#BSw)L6JqrHJ z69}4Jz{@qx$dM?KNy#p}3e{w2Y=l|2gUCx2?!Ctz!;212TS`UF<=?W7A={@PR8F{U zhsol!{E&0RN^-b=x|51h2k5XBb_xx10;9tCwfb%s7W97huOegK-!Tw`Y`;VIO8M=% z6V@~Egb96vzfZe?(9O!s0TJpF(r|?}QFhOMPo))fumfWioZVOO#({by&^S#n>p|En z>aH#5v(|9E2-f-nQst$OlHJE0&TP&P^x^XA@Om&ti7A1C>ar2-`AKcAsTEZr&N5%; z#f%kumgjqZJyiPP$3~CH3sVFelR9$8z~l^cO7)R$w#T-w%(`Y~Ms#l@8E(g5pOwR? z4qq4-<6K<=(K_tRG|^v{*_Q9nXYT3kof>y4*B;`uJoBf^o%TB%pDwTFUYn%luUo%{ zCBomPgT+ksG?o`To%j^dZS^5bS>d}~!XADfa9ypSB;xDb6KELxsEI_BgjYlm z@8FdB(b(%r7YRB-s%y;FJgWyQ}$}&I8k&X~*4i zGUn`jOq;XcP4Lxu_RTItK{;WI{F)L(SpY|_vK>jmX4mQa{kQ-JoTUg)Wvf0hTNHf~ zi)!%ledWCVT(MI?58rSyTi6CJgO{CWFCT)6#>o;{ixFZIlIN_)_`fF#$ zT<)>{FDd|=lOMhWhiR+D#eo?|xu2QX4I&+Hw(lHHNiN}t#z+rqMz<%51;K~++Xn&t zo7Yl+RTMoA0&9Yp;{5e4k94HrmUTA>P~f^$BMSSjrXn~GiUis{)wj{8Tgv6pv3iGrbN5E}YGbuQB2~NSD zqpicEwSOuyc1#Ff*R2B^GE`uwu#1ZhZ3DP#9C^%B^q0M&DrAbtaVpKtg#N0nr1k8( zsnCP=h<9j$c3syS`;!FVzbx(HEc8*c^wd13JPn_hbwe3zofl+r(oY;?>ITA1Qr%M8@ZCk?mpk z$xr8}`6REuZG+12#85`{pk6eBlvGSlCi>~n7Y_3^%VvF1;%Url&AoZMDq(fr^ zwRQUozFQ-W_HK^j&%2rsI$gp`LZtT|jAC)#)h_{lUa18b8p>I1-C4$grF%gTT1Unj zIbQJapRhcA>D_bpmM58|h6N)}MWKDN)~)x)+p+$&jOs4n6@CIb*EAo@z&_B#tFqEK z_n3pvya<}E1ON2qXxb4Ydh=egW+FOc=>>@M-Mqa7<=F_e79oqOhb_ZG zZhQN7!`;WVO8#us;^IKvX=?ns4h99}tX(y6ZvU}tGc7x$v3cyT_<{mvatlVh77cV0! z^p{{##`dJY4AFYhj~Q14Z93Y6&z#eD)5KWceP1Wgv!FCc$1lN##h$JU&3wEw>AhNc z3a07g^_l?4kVJ_nRnF;_z;nt#VVaIO#~6$h0OF`{(J!mo(IIg7YEoorg6tU$xRe`? zl?4tYNT1m<=0X|5NX)<7k6gBD2)M(|z-Khet=c_Z=?!s%MO-bxdZN{nsXvK)+|SWJ zoN2$P{-0SXBGV!LY;gTZ{~!SAK62ZCVMWVoP*(fjG&Dx%ca$4ZToQ z;fK&~lbX@D_3B)80e7{4POIg(yX{`uB#P`U835N!)4g?}V)2f2&_+L9l^6XERuVH|;Dal~)Nc2Oe!Si8#gQWi8|-TlZJv<&lmN_{+mgNVj>6`&A(ZC_ldfk z&R{f96Cg;qjlM1hm`(Twgw` ziwD<#Un{SJ{ZGEO*f8Z#_?)JNgCd`%pZe?5YL}zK{nPycfmwG?VLG5+ z|B}B}DIzAP%hT~5p&PGqxa_Ce5Pp>hoKT=QW;L@yWi3sI{`P9G%ZCT(@n-BES;8Zt zs-8Fnsxc9+36TR4UsRR%iK3o2>{w>+wv)*O5`sb=Uu5gjCDaSw3~U_zyj@Nxb5G>~ zyd~tBcvChlDxHG%I$!J-`}|S3Jg;PMcc^Oha1J_pXL&9|J;3{!D8%sN@^|VGaKQL;Xdo|w{M{HM3`Z2!8PZvaN z-sfb5nq7*rvum{XGg==`=63_noj@50X*7eG(=}iw_4n+T*vQR{b>gXzcFeP^>fP-& z=2qsvth$b$Q3eKw@D(sGRs15EPtRW-H#;qnr11`-?eoKvjB!rxF`dl`gMH}dm}SkI z)*b_(?B zIi6X$c8jF#mY+Eboo&oN(z!7tmiT}pWxd=;maGjsPp4+#xxoe7XKADpe^WphYKHpb~RFux7 z?r|BZ_wLc~exY(gbe^;VldlXmp2Jx=Lr26e`)}O+Dv(-s4%lsM^7xioY5-hYh}X({ z?zjuY1HmUi`qa|#L$)dA*z5hJSoHFuX76j`_j;_03)7&9FcCd9EU%!wIFB;pJcm;5 z_2ta=@L!?6F7D5i+nVtc&Sd|_giMh?swAl7=~$~W{;p?-Z7^VU2@ocS2|>Gz@>Y;_bABY<;9iU>aOV}@XwpJ zp15I4$kZnbdi0X>ObF+(Ppn@@P@|S@X}` zoyD3%4<6%#B5kKts8YSQQT8$bI5ys&4=ArR!Z0lmBrXV=pt z-oXJV__qhW-Ss^Ruy(uC3xG{BpCJA52zT@+mg?30{&v8WaYW*CvS6S~+zp&-kq=c^ z8m!`u?Arfm?Hj(E{aZb}>Di%N4+L1Yzk{K=Jz;hUG2Fgy6^F#Drabo_LB8!dtL$JN zmp$}rlt+6+_tdJg34Z5Qd-~j3pp_nOF|G|l1_fb%de_|Fb$g4mSnxjS>GN|E zbjnyPKriT%Z32y)3P*?SOvqn4j!B6h9!IFkiu1 z{#kd)w^~~#viT*r!St#u8Ws3X_ueMw%HRm zB{%B5;Z4gY-Ezcb@4$`eTc_SP$n!Awb22w<69sCgkJs< zVy{v428!d!Q6YJC-v)Yo`v{T9tuiz!E-$Uq~S%$M!8WS)RW&FQo= z7{reKTQDpX{jt*ca}SUZB80ao=MQA4$p9p9aT1=C1E@0(dSH6^slNrykqu+H-)EcX z=Y=R#|Flz=`MeW^In9X_TnrzLY>L@`zsYO&1cgfyyP3I_LLrDkg&NhDC~Xy$KheKc z$_rxv=V*x}MjOw$X3E#}br~f)(B~xBA10j4R&y7hPvFV&lLgO*BYd9)bMgjqK5~bF z<|UWW`kI^^-WpEv;p^A9th<|vzQzCQG^M*ftnBgF$&y^QY*jFUee=}anEYJ zNjS+RjldzUCO^wg-zgXh>=w4-^x@qvoAmAWMtfulFQu8KeRxM6*+HOS;Ry>$TtfJA zcoUcRb=jc;9upQbsC_~jJy}9__#>UksNPtPcC~TGDdly}rBhT8<9{v6TT5T5oBP4p3^!Ck;#5<$MRjqR^t<^{G#n0l7x&JnI{I9 zE|J9k55kn2mWxv85SVc{HX0n(6(i#Pwx`16?KH~A&)0)&NL*{U z!|0^PH-PTIa6AMWOE(h&TB8_9Az#gx@}f)eEuA;B=_sSu1yup4>I;$Leg7eT!_*6~<9DjRKUpxmf&=$v zO-!J%a1u*Q2VU|iCrAeByd3y_`noruy181bDJJMQ?m*PLQuP5$(kgkV@*S4}8Z53R zChV_>70W(;I2(%@#)SCy$vuWgGYj;|8&Y`8UjOM5s2XB?bQSHJSHwOE(p?>~pNs1R zSZjj?$3T^bfG4McB6$K};P2t*2+ZG~`;HXyIeJCF35iQ^KHPHg$=H6jFtbdLLcN;$ z;kF65#HAcyz&Y1?Il{K!k^QE9-^`$hC8A__uZ4+}I~q)SOx^pKW`q;8 zpmu|$igSTvEkrz;GY65n%LY(N{W)HML=Q7#)1txFhiW-_cSxOp|2^vM>7BZXOtP`E^KvRZ|s$##E5wa&Y!iv);`%PG35sSP%R1tr@b>@k74%RM21#=l>>)3qA1#2wf zF3#VhA{+bxoYvDYYXI`A!lRbYnp09|(o2k+aef_$146_vrJeZuAI&5BeYI5xPdM;DU-YAyhX!ohx^IiC{H^9|F=u{fkFL5p z2vy?7NWSW@ToJV#E%L*A84Y~Wt>oNd0xe6rwVT7R%n*>q4q}XyKO~AmM|O*4!|~I8 zDkgtwK%2CX4N$*52hu4~Sg-fU+-^6#&=ui&3dsc~U$2wp*Oc47ZU?<`LWwW}N>?HG zyW!2oXUGP$4>BkxVehnoHM_peNDpmPGBWRHJPzF??2AKxiPyqR9*rJLSEPuap4xAqbU2|81-+Q34j}1?LiK7>6DM4E;YH6?hsFsDQQPH;`t3XP6E4mxN9%L z<`)qGoDv}vA+=|KEpFD&<1mkE68N?icjEd*6!!tpMU4i!#H&Ve5y!Fc3P;Bs_cy?i z9+^N*qCUy!p-G*Q3w>SxKEWouZ{E?x9_^s+{NQ^kh!eRtInm)IL9X=EdFv^RAFVx3 z@V-A4PJcSN&;S{TQKO?#X0h_x+BR9=mrq}h&B@j~q#{)VxfvXZ0pEk!xmWpBS13Jy&R=_E zPhOYmiHBf!?wzj=%VC|riN@!`PSfm6@Dq6KODSq63EH&ksi{{k0*iipEcBL_l+7k^ zQ~8{A=feA>exuKB^MsA5_R2$Z0ssTwy{HpN`w#7{ovZrDFz?rkC_S@i05De$fMnwH z#&z3Sx@0W9?j)zPY`2XJo$zt@Ke05 zds&GM;ix^sCj%qm(@=MU>Br&;n+1Q^?~X?iwvHc0)P(i9ig&Aj@9p6AF89mQUI5^b zhK)=<@b8L7g3xx};==F}z~8;&d#be&>}pzg-M{v{)^2a`tl5#}li9vKh5nIQ{NVxe zC*P*+l?Z@$=#?KQSq8D#M@EWL6q9e%!4I?BdK8nzcli~L)A%znMW8uuk zMWZ7mP;c(ij#LoejhzZ6GeD75#$7u9Vtt->S{338x8wOc))0ZLX_q2}^K$tfukE0C z+W8VJ7Xi6H5k5QIByDCfv=kt)WU7ky(WQ^AD)>+58U8xfpIM5$b~;L;oRt<^bthKC zA)O;XSD-LBd>Z&p4))TI4~A6-ndWQ8XQ4ex!OzFEo~}7gVF@{gJsl zaxWDNm$gOWqM?RU(IY8Bkx_&3nX_8c{^nB#%RLQs^%9rUi^L__i1A$g2$Tg=i|9NW znH@ftuW+2oZF-ke75lF=q@(ip;pFQ_3T-AXjP0T561QOB z*Esf`sr5mgiS5Tu+vP}NJfy=9ZlF1;0cm()KTXv_Kb4ok+?>Vo^;`7$EUe|6O|2yz*>0bTRFC_>Lq9)D z>8(SrZ{!J6^Kd2u{QEu8D!jaW^)0yW$0x3B9IDLPzrx>k|G@Sa?M5&7y*G)L$?WOj zyo2;WwKj3HzxTJ96CmQ?rI&{6Fe~J2qRDLmjV8w*{p~3V+YJZYuKP7ta!@BTF z5=y-$^7AuXges5s5SCreB$`#vms5UuBS1%M_|z}Xkgw5p2atdeNpG7TW!`o;Kd19$ zf2mS3FE4a6(`Vj2+#HGfnFTO_(Ur!`QUPqacSC8}8$%gRjTAN9`pt%#AeP=>xPH6t zxbe(fv&(#v#J{@^Eg!QZ<}KA(-vMzn)g%g|g5U#lbW%pY6CTRw`ik z-+z+Wz6ElWX{VdbeQi5)XKr6ECrIcwx(4I|izsS>2Dg@RU(CqiVwOMc&Angfs%_G5 z4@}|x8A)=e`7&XurEYcS=^SMtqE%aELs7tf09$>#Ccg1janvKO7uBb3Js zAtm>vgM3;6GFFs*d+92%DC8Qe&ugaf_|c#z%Ysz|eYX9I8h$-j5#gHCO~hyNbjOvb zfrD1NlRwcxLax!Bvn@B7nVrv~a?XxQcKrLyVxs;KL7n&GOx;v`n8lsn#?D3lqB^U} z3}!OzLk7_6q~sm6Wufn?w5;}^>D)n2}@ z*LIvKBe>fVZb|30{etvjY2Qaw;`zz7aYM??ga5%giwCi1g%NYzdu5v1b?Vo5aaBx= z@IQO);SsmBw%*80uerAC==pfIZU!S}|NeZ||N7bf`_K2x+~Ou4@w#zvbz#4h42H(q z1P6rgXd~AKMf^Y={XLn@e!Ku2p&l}El1X~cjF?NS(6ks?V5Jr^H}CfLceptl*;3)& zQ2s2(N>a=W9%s)BZx25RrPA_NL%pKqeO{(;hZWT`Rn?C)-ERI;x8GfM{Bbq1Zj?^F z0r)x_qv0|yJUc`C{g{_`vwj^rI}LgC|NQ-8(N)U$dq&YskxV*x{-7YZNWXzLkGnFy zA_e@6_qQeYUE`(i)r12AmJdBY$kWjd*7rxN-%W-6#z^koetB2lzZWA-*a7g+k-fnQ zy1o+WaM>SoFB4&*#M0ctq2|>ekF=2P_4EP2&|~Ot+%-*SY`5iLQjEq@Jg(t|N{j*)T2i?FLKO-xqJM1Gh?6^+_E)?RZabo*9GKDR>=3V;~qn{?u#jl&v_4z{D z2KLF>bw4s+Fi6Gn(kumoVyBb+zdPTdkkNiP+Jg%4i zaxSY|ntuq7Bf57af~%pXm6QYlEd0?V za}eKE<(wmkqmB_dW*l{Eni*D;a^{&}4>^8UfCxGK)m zYc#Iz6GRkm^_Rm3E=g!e6oyjEYkC)v-f15nP&f1oip@d_*|&^=mg}x%XJUF^fXgAt z8~Q`bwf;cm9+`1}Lf)RZTYNIKu6;c}(Xt%xhUn^Fmrhpn9&b&l!?kA`{#z~{yJ_Cw zL>G08r}O9eKz`rxuA7Z^>eDa53ZKra5lR)p>+kwrWssj4GjY1Y=E}t7CWF1M51WH@ zfp}@FSY%NYEDa`p9{38~^J=SOLu<3QlKuKCsGUz#4^CP4$AVv-w{r7 ziw^|0Y-t;Wm8rI0fFd{RVL=Gtvr#HJVs&7j_*e**>+N3Ze6V(N1V=?&B+^)na2ceb zJK}}5CWlu+*aVR*x0B$xPsCRk#C_Y6%EQ_IAToL#d@8%Y3PxMab64R1#bTcPuC@6! zV_Z6HukXN(4vt^vZqq|H->H;k+=)fwef-vACAvl2Z>0(6zGIuH->}DlN(aA+@R;M{ zEx-!O@?NCOi+~C<76D^SB{?;#`FyJf>GOCK0{k`9?}Wt^e~lD232WFfAAe2bj}X0O zK+G$e-Q5Db&BO3BqE#fa@lGQa(2b_IHO_nP32`=88Xx>?f-K7(F0pL3V>j%6YV`b# zYJ&ByMv-=AVB9pLL$W{K9!`ySqCduD$GtL#ex7Ql#3gdg5KdWd%!Fvl5N9u?d=Rcw z@98u-3E~wcQ96v)iB>=?ZTpLt9ymJG@h@r+^x8T$6XK8e24&|>*5`w^T8;`C!TFPv zMwAjpT%V)XzzuNQ9ZL~CJ?fm6{$3|YXnv&)#+NI~^i3QJ;rL0gALwu9cYk)K^KGBy z)$d-=r`Wz-S5Zy~N{h)GsKk2r{+-C+cV!RD<1l^tG2Po@{+n7&9^-y_e^QGy7neGb zxAr!Tq~blr^kt%YntS8Hd5^o#dVF4c;_r_CSY`MOsU1Q%>lWniF}L+EGiSG-X?jWB zcD*U?2Q?>5;9AT-6CpL(*R{P++HWkC-xq--YsNJPxmF0&^3Jf2&R290okL086v)$& ze1YUn^6&RoXv%@m0T%j#StPyEX!`DVAW~agEi45G)su2j(P#eYNW+Ju4F~rw!byK8 zuq<+HA5@Y(LOq_@7d#d}_WPJvPW*6{vD{4VH+-9 z35%5k3i5PiACyEh#xAF`3H*uUk-a~J#S^`i5K4JYKIADBzfG3by+C{;TnMvC<)_`b zc)l#xyIB6`dcNQ@_Z_>bQEx`@)C5O6y%?~q&*0+cJA*Q}qw0|CgfoYlF#A0NVf4Jp z^>0H^d)r?U{K*OFe$_q5zTvq;AdH_tV>hn*lS=GdsU7jV_0WI=k$P9hgG$h{l(sD1 zNR>p}Qc*pLYjuc*Jz|pP+w*?8V}tF`wdDyNbmD-s3asLuaQ^iOo&tWC(M=Oa}$&X z>+FCf&Ouk(9`8~Ms;UV}`C~30J6RFvW6#K6#m_x>-BjHdD;yvX1<1%|fl8Gd{GHZ2 zo@tWvgDz3{2fcGiYLXTyN*v2)2Z|~^F6XSz-uQL`xkH?BXu{rNWX|C6kqWmDe=O*O z@A2oq&JJkjGGzgJR9&L}(c~9!S&ifL%N%04Lov$L-e`raJ>!L7aIgEvk=G3%${elM zDgUPDq~;;WDhjkz>g~w%j#QrSI6}|A2X!D$0Kz%9oii%^k!zxkY|C3OoEl1DaaKYy zmC%Wue-SY+-LV$ZX8;q4cL=^Pl_BQG1HA}djTBkTNQ@Wk)M{kNs4C=dmpBLXcNnFc z#_&dq8&3tu=joB7%|IAuEzTYBsd#TeU#4r9@*hOoWg=PEzt9p^TIyTAde`m;(N1*+ zxUd^~3B|! z{x-h@(@KDp`wnN}8vHnBPQIx#-rf88i+aL}L99Vx{&tc}GD;B;zcR&p87`Omit|GA zKwbLI(esMIkt2V1AATK1?(ZVVh;NVk0PrY4t|NO$9;Wh9fqy<7G#nhq(@CQ+yl-cj zl#XkwjC6%zgx7~AL7|ubkzFo%F`}xQWW;U9I1SJfj2s&~H_$^$`iD@{vVTL_7{3{S)l1w9f_dS8c3#G%nVn8YY}?%5CAl58+ci^&P5Stjc%O0! zdWS)SiE;529GIUYN@m5uI3k4mj58j=!Cp)cQ_B4AFnYi~Yd05WUM{;8U+%adgx0{E z>+rD`1oF7)Op1ed?s}znzI^g4`ICC9*2=xT+{^h6HF{NVmqW6CF0{0uUe9mJRz(W5 zSd|vNQbx0F;`YGkCnwX@eVtAY5O37tcf#RyA!lXW;aqjvOnR3&rPX9v&-q*pG29SPl@TkpYsygPS!-9MN7>QPruh8CCR?@QiHBm0Rwkbahb zYa|rer9l-cck(Zby_?%*>?GXMIz5A4JIc}|?*J()puoT9<%t9SpWnh=>i6D^9iJOTGUFzGY?6jLJPPRBW)|2$yT=vq zC?2*B$*=71oGa`I{i1!2fB`6`^;48zYnd<^%nrTpXv#hgxqjaTc;?g4Ti5zMqL(F( zo*Il(eKa5Z=q&w4M^3R1rpxO2g0G{rcua>JP~n6b6diOC&8B?k<`ni3 z*yPQ=Y30%#I5(RHR;@5pxT9$X*bEQ~zHo1$(C{Gi2#t4~}xweeavnjD#en^v%V{kv+q?T3&bwyc_08Psmo55QM>CBI|W7<|!W(U>9AaY z@Cp@lx9h(AImR=#sS0&&h+sV~u}mYANqJg+Ck7K-w~S14sjnCB@%kVsTt@YVF3{e) z{9f(vjw5JlT7Z!5p4y?l`1{Wt1M%wT@H!o>)N~KShdNoO*W0{Q#)%j8=&-s)_l&~o zP;<9+Fu3VQ*nqofp$l6~9A(tGBI@fad2)8h$pnIdFOKh_@ zsf`}exQP(0?IP^WfI z>*wg5gn>BipVM;i-pV2Mx>bsb&yF6pv~0YvjksybKj0Q+0UhbGk$mvRjUvm(ko~+z z+ONEf8ut(?=B<6kT9AOM`8QX6`<98jD5J8j6;*iFc^Bj@KE|kFHc8!zJ3MQn7$zmd}wMrwIWIqbXA-Z(a85ypJMW*>yYp z?ehkk_@{I+KlG`MFLAxEC}=Y5n>p{~EX}`$$<0s4(qo8?;k{5=U+qUEc}Yj#{1boO z+H@~|b302;_1QIc1F&z;M3ChU_y;06Y)p*rbmc8IFA$+``Ww;geQB?BKmYo$LFPcz z+kOecWLxda_n_fk;drQQZybC3up}nf{{mh+@5pP0?DDDU$93h_Ef$E>=heXx>PCx~ zO3EMBK})FqIN#0Gmvk|7WDzTr^t2@ni;(sR+FSGd99)hwi8`038)VkM>n;AM>;aowVhYry9Mw=3Q|U%*0@u}|@- zUtp}VBbY;_|JKc5x#`nBPtA7=1Q0t$i#;MzFlDZb;85>-57Si@+~H%Blr9oGenOyB zBs=0*wjHbRLmuZrf8-8xU^_f~P57g=@-z6CaDPn^>2`57dw3hI8Ojw-ot|gQc>c&_4rx}e348BMHY;$ zyk-mN@$t$~%i^VpPS(Y%irm^uV!Wz!A#M6;L6;xQe7qJed&c1IQLHgcx3|kG%XGN&4k039Ld99jLj~Z{o~ER9K6A{01u@>x(q$k~(iQ1A z-f$GTtHtf?r}Wq3P?Se(GN3ACW~XA9wwyNbf;vj}F!irF=`l7vg~~fmLl4k#<4sN9 zHZrj+dM@KWGq+EeUMTi)i6(S4!b?K-y!2?aFgaZ)^LI7RH;mZxS>9DIywZB1CHSDc zIWquG+s~g4VDMe{mk!PI2+=Q~Z(op;)!EgaT_E3tCdPAL=EK>MUilp(|e2PU3@STqoTem)*gLf77av9JlZKA)g226M;y9!aN@4>#^7`Y%-xISwXc%A z_qdNt!-&{NrWM@ul6Oq_@bC4p{lZ{dS@oF_y}nJj87=)Ag+Xd2lw$9>5hcgVoYn8I zj|BUf>iO||{!lOB3Oq_P)U!o2?6dfmyHx*PKJH~GxO<@N90|5t5;;3}`FaWk5l!<* zdzk2oK>s{$I19(ojnXjeu*!?N3H+0e?d&l1CC_8}J*KY{hwm$M&QccJ| zz2{7S7RNz{(`)<46$Tc*$QNg3aP{NHs9!o8Pk_>Wj~?8Lmop}aWpH5fZNo$g^YD$& zGc#>e#u}6;J+zJzaJ6qgwi6mh`d4z#J_Hg)7kt_5%kY%+k>}5IL>-Z%CW#A?q4dOc zS9`IISq)e&AT3_$zNDLalb@vWaWU77LDuAKAy@jBqeGXbJsFv(U`rX3{?PB-PjtBs zPAP22bYQ4;xx|9+Aa`o~8cK>Qd>rL@ge=X)bAt+&TZYU&Dm1YK04Gc}{E6AuV5tOZ z8T7X%|G+aJe~H}l-!XVTy&Z|%@c95@U%UMEF(bEZ-|WkCy!}+#LC4y~6a3N}v4WJ) z-n&w3@CP1q-0~n?&5xD4z+^OXK5uH^Z$$=K-RWTs=o-Qev%?)1 z0F&Ee)Qa=trqJ+j2Nb(U7Q9!F?9pR1)3rji^?rqZwv*Cy(wAMHzmpizUR|BPpQ_bQ z`J<@%%ZU}x4~9X}uwQpV56ia~g!dBADiF*mznhYHzRjO%+b%Cwdntyz8&-`Eq{pSr zQV8w8_ZgtfN4L9wOM$?lmT;5z#gh;|oG(z%$!!eg%=zZ zwZ1)3TgQ1!)ntfBP$BSU_(PQ-J@wD?k3=T6sv6H2=90H`F-bGmmY5ft@a!Ba$p6tJp=6*1bD zeaz2_&dcFO3^!b(<622BLt24ITz%J7dWL=U5Nf6FLGQU)RDw}{U zjR(sf*pwe}45MUF zt0{J(W+Dx(0k0Bw3CsL5BkNb)_A^6{M#8t1RyfT1;xoj_oI_CY$|lcsZ6?LFi%wYe zU9Q2{gU+xUXNVv3A9|%vOYbL0N`9W(>=uj}r+o)}E>=~D2N98>1!xew%m6Hj@U*4K z%T4L-UVnhB(_4v5%u}C#V#pS+mw1D@{**)a1BF>c`{`rJw7qZO~2%ZB!yZ^4H`=ECCbTdpWGCh5X*f`W1gC?rGI&)oWuU?c;vn|$b zal9o*Zk;3SfRLqZkI-Bf17ZaT=2w|1l288%ch4AHH3otQgD~0+S8VQJu)U3V{axtW zu{JJ#Dg0RJc;Wu)2;<4s>}Z{08vsB5%P<-uiaxV{i%{aFGv!Mt$7nB*hcj`fX z3>o|0np`iW0+VIFCJQ^wUL4Eh(4{3R05uUMLbiJ-bfBO_{Y?7F`vpo|?g`nKgHnMv zJUlGHW&9B&xsK{nBy;&H00Ba2E&F!6sy1Y$4$Ax;emRSOJ5?hC3u4F-b$1bg$Ekij zr-DB`Q!UD>OeOBGyC>^Cv_f#-HpsUeRD^&kIXj_;?&EqZCVAmg*E@O55Z5t?!(caN zt(skc_NkS>r_`MPAnGRZyE=+KLQR=C`5bk-ecZ5oc8C)5wFQ>;QFWlwNwx0GyL7rM z_@|!zfaO!qP)M`&AGlr0XLokaml#8TxzUhIJUD30M750A?EN~YkOyNmDNUL`eA1!l zkNB0ncM@6Y8j`=XB}*q}lpp~-Bq;ZRx4|;_Xq#C?gMNzNRZsK-xMxWs9-jW&hluuf zS?1|-Y_djpz0rCCFiApe2A}H=?h@|z)_-X902{7QLa&=7XnW( zQHWV(|sWR45GphHcDhU1cEzDThwOgTUMU2tOd|V?&PupQk(sI6YA5IWcqNF2?iL;d|Lw#_1 zzK>4BsTF2jh+N|nHqBVe^ZmrG;uD)q5IQ71nau!wmv>1?A~0=M$eDk&L=yqyOnUfA zu6&xqa(tAy{(FvOuVg5T_wa7y8!P!HIa%-L0Epucsb#d=rHB-r2t*eZyA-D)>zCm|KYAUh3Xg zm{`~O>GNGkpfGYR&xrLJ@UmSJeF>5Dk9x^%E_J#raV_Oo>Oj)?N98cacUq$iaDV^mP(fYs`gy=a=+Rg;%3eUkhM< z%%9!^=@_0po1yzu+`O$}2DzN%w&i>1sDYT7UkmKh`XeME*i$z@++Pf3$j;$1 z!ivxAx!L2uUKLfSeU~U2wfK?TP^ikNTU4Q`UkIXL17SMP6OtZH zLA2yKaPxst-g=0Ot(Ogftv+1@#c!~+be0{r_VYj8#!xvq&%nn$g?D}3IYl9jo4MA_ zKZzICvmQxaQp|OS=$w%8=ju1oBNJZ_>*-lJ;1upsiuJl#t^syBoW29FR#g?#>{Fz;Y?oTC`7-vh2^;<)7^Mn;@uxkhCo36q0WA0yIV*adMi@tRLcnr+LsNg;} zu|Sl}KAoH3Uyl&}%PlKg&6F5C%h|T6PpL2GeRp?x-$)1)IZg9HJq*WX?SWQ0v>bTv z=9kn)IC{0sL*U}(^UdY|s!N6VFx&tDkNb*m)HSN~jXC)fl3W(}0Hs@Tq^?R1*+04C>*iiHbA zANv3x-zt!MAjiC&iIvNF)A{gyI{8cU>#taZfdzp_{qxTIZPuG`YfOuwQ{|A@9t5ihSuErel;46X2eEe=}ZW%(6`VoF zm;qPCMOb=#y7s7gS8Ne#&qbhEh{|n1+tYjcGT9GuogQp9lVkpRcsZocHEh>24h=Xd zR9(CGxJmmo)#dg|Jqk0Y^gAgRQo~Oxjj1y7#m|;La)-%Z$XGrB-Ne;~y`FR!26Gzc z42FRtqnGrEP+EE zmczvNydJ8+=BYA--Lw@lXL)nqqEWtUd_Cg6JvFp49ij^ak@qHt2|414_usixwvX7G zGYVz&bd>Ihzk6QzLU85+a$j{MTy7vdkh@U8vF?2GLzWl-U#fq3!nwQ_JAAy;%`_5 zb;tbr#UDY%(!h6`hmfvgRo2Y$r$+Iu+(%!2%1EhQq*ro>(_6$;rTONW6r81#{IC1p zz79;Z#R^Qu)|1MAb5on&$Z6oPxHJhpcOH8==oA3z2!O>J+CDK)XOBalkpW0X24iu? zetho}^|gO0uK=vdy*1cv#8Xe_gKCj@aKTB|-0c0uiX0~34C}W3O4hmxiqGSvBibsH z@|9tI;qM&JRaEg{CQ^$mLiw@hpVS`IKL*6RJ@=pFJ63mwdPvQu^o>Pf4R3DSl*XTC ze^q`jx%>(7Z3lY#$rip_{`P5Ua_Yn<^Ycy$o&dSK4@^nM_vz8e(%_Jxn?%#W$()scw&Q=_TmMoAc?h)cy#_!n_@x`ppV(ZNzZ|LFupI`H@qc_Qqzwb?` ziq##r2i~na+1eSmGEiy>J!4JNT7ItouRh@fSycPeyPTxO2F9^Buy_tsK?**5CdFtR1G7JMrS^xD8eP27D+VTI<@j=!E-`f!% z^GaY84A}?3Hun{w;ESWDc=pbcrB)@x>j%A&Uc9UN?f>i}{`>pK&(l~Apeg|da2O@x z3uSfbmI1aZiB@)vLOlEik%gr=EL~rMyhm3W60i*fzx#ZhYwsJ! z{x`hv^{bK}HmYUkI%$$1dAyE?M|`;Y{Rr+iW=z)|u9~O=T>t&KsO51X|Mh-2{$KA0 zr0S)iESh~1E!Hi@LW;xPa9FqBnv+-;)w}A;+AMX;h|;tMa69+zdeVwCxvsn6MoXQH zd#G~Pb{*!kXypMV=-lq@kIz#mKaMzG+B)hSG^^~>;tLpO-HBCt|An=-Cy!2yMtp{u zs*&R5^mtxk`LLhs-Mfp)8=l)Nt-8x|cOy+-vN` zK4yEr{1`VY#r%dryaJEll5eoROTBZhb%*Z09yf(Bms_xLw1rv};n3rQW! zalLp{n7mHMSS__88R)RR=t+ek@h`zVTL~o9h*~&q_2dl}6R0(82S5Z{R^fiiZH8t8 zOos8`wR~JM6gKVmfK@z-={TKi%D{{9G#$E%W3YolEB|||tZ9t<_4I*{X}1h7!T%<~ zlzH_j7W!;RM#_Q)M`&ezaD&uapNyW2HJFdOe^iAi_^VuU$ zRg;hO7E;3itP1ft2|CzLY}uY~>LEk9MTLR|r9X(G)G9LC{`gJu=bWEX`Gklrz+D$l zR$THF{yt0~5;!xZcrbjh^(*DJ0j(cOS3h%R1c;2Vz^pW7QFU0?Xt$~=4#dIP^x zcbzj&P$I~tsw6SB*yWn1?PGm?^ieVC9K%a~#mU{NzX)s0=fcF@`&A?dZWzui@W{uRl{CMX0eKpZB8GamzIXiX z&l9Kl=eY=hrCRuutqtj4S+Ltly7b{C)#40dfKbQG?XgmpfVY)Yd;!-QP)X&uL)niA zgpC6XIq(h}7jZ%oV}3~OyrHN4eJ4_*(?vB{$t%o!Hvy~Lr|6$Asrrq|OOjj=^E@rt zP`}S!kJ-<5yiZGfJ0gv%W4{-5^z+HZP4ts{<;6vPce$FoR0r55)t>h4Zuc$egF(^j z+mX4;U^m$X7=fycTi`}Z4}u!vC+{EBX(IvbOC0jp>-d>QztPXAr!vtJa?qXssjBrj z&UzZ<0dc$7eN7)fOkuQFJLZVP>3Olsfn&_G_Oi>bKV~Wan{}qKKYPlVSkEKTSh#+^ zRZj7UnHDRD2XlWE94cMXRKBYBX8HO+A{{C<1Hrs5h*R>u-HC>v&;L1BxoD2!JmfCM zxQYLqhfbpLocvm5|Ii6ij?WnC#l0uxVo3zaWw!?ueBT>`)SG``qQ)_gRynukU+^ZW z%`J$#SLUR!-OB0HJ911zXO4L)h|A@PPEr!|6`kJp@a;{Gl3@LEMzzU%a)ad)3W)#S z&tttCS|ia=HSx{zgj^U8iVz9!pY>*8?0B*50g>@t{eC}H5GEP*YP6sLnigC`yG!*M z9RJ{7Kz3?ozaeAM< zI_Ry?eAi}OY`0U}Bz-0fpW$qrx5H?;HENl84Ixg7#wZ9skc@o7CNq-VvE(r61EnW@ z5%yzVacRrKRX zK2zp+SQw4?9+1&MufYFFDu6HT)gN&HJK4#*1-w)<-Zv15>h1@sYPvIzvZY<#XL8IZ z(aAXM#9aC!Wbl6_bi0)0g|yPRD2iBb<}A{w9vF7RIN*`>4+jAJ6M*D#=2dF_a9+T_ z_~*Uc%7z#2->}Dy9C%Ola6R}hOF2z;dZ*{RT9f)3L57jm04G=;xs9eVnu?HfL*bo^ zbdGK`ibry?WQjOxujaa-l+D**s=r_LK{?)#-Y<^kk-tMMl;HhFb-@}nbLx4|8 ztv2Ib+FaWRMZ~*E&r@zMG$_uxcyVt|%V4HYMSJZ~F?5|PgNb**sPzkdvAp>zSajQB zq8Ehm*{qtiT%6tYT;CPW$e%dRAK9B_oxqg@-?xoV)-Eo?u0F(FM_w;*bF?Vse?Vt7 z>_MLa5_Q^FLYd!&1{Ma`4VB_)9#H1#6Dtt*Ry0d)sN8<&7SBlHCidj9i?6ZV{s0WT z*ej9Lt1&X`68aOaHs z;Gl^W7vXLKEG;Q7-~l*XuvO0x)k5lX*ssm|G-E#qOqrF>cgs6zI4L|8AbQyXh+QxL zJ|&Rx3%Jc;4rh7QiJzA?0o(64_Mn**L^8e`<{0T+*TP>;tIo9sCC_f-Vxf6<4G^=2 zewIU~Ylim#S;q>%EYK>x>hQWi=wfzFU5lf1zfDmf_5P*FCD6nyA@_d`M1}_{i2eMH z7D7`zM1a$VNxcVO^>iea=E$@{=e3|+yn^fdXnUW~%wD%bAEtkCDw_)`6mvi!LU;PM zL^78|{+)d#MU z80Pvdc8a1{my;eoUXg2_T@k(Kv8%q#BP&eQ^3pdqqBX)eX^?`#n6`5L3+Zmo5DGm= z`m^k^eUYzJk#415_-%&HvY^|Z`d@y_vM7#R0GG9XaykPJk zK#)4(6d5_7eP=COXfEp8Hg)PXL@d@SR58P>{402I!jzSA@Cq$5x62g->sV`&^tt=c zQ4;s|v0Ko5vKDf8c`8R5+{SS<3v`4e5-+{{LT$(WX+5S|m-B&=|IDqw(~w>tRI=N* zY2!IiN8{e{Wk1&=>S;gad03sot`5;Y;I11B_gbmB9&oA#g$53#x(`Vw5sz^d@*vz$EpZlzr}_6E#)= z6xq<_l#gWDlUmaC67j5AC(-wWffDrq;*jJkt+Gw|&FJ#h5q2kg*EOsw%H;qp7UTE09Qy;{o>7-PQ_LA}O za1^)LXo)^gKk;vzcCQ0~Hk68lvb}^rmZqhKt-TF>mD`rBRlxJ7Z1~_%7yGv#8$@XM zdd23Q@gLuYGk*cTs|`-?C)PeB#*s6LmJf!YoB7JkgIO3oeTWiPW+t4RDeSJu#fHrX3I0EN)uSP(;{Qx$aJgcf$F)7 zg#f>tB8;Ba0r^ZdhRYi~Ks|%EW4dn$G|im96}|Ss+T&tIm}|-;wJtn1GLdwiQyWMv zFf^P$lzqZ^>b9F%O^Up8$8IT52H!fIClJ*F+3rk*%5Einad+?ecp_F0U**3)1Ja5L zF&wDD5!Y=q_NHfrl#*nWDGN4LkR8klP==eX4fR>AhXIjW0fPe9!&>thI_R zW2qPKh^5A=_k;W4-r>NN&DsaHm& zF-XVH<4cAQTdz4i1b^aj9QPlCw;R@1eCOSfS@4813g2TU3TAeHlKH!<xMOYlz;rU5q^0vj142!tT~+4f?}~g;b!0 zM|BHA-AQ4e#EAiBi$~6!XJh6*MsxcC<@V;hrjA1Ld_^fSIH!?SU1Tp0i$SAqTva;u z(P{;R!>~~*kYcrR%CtebBOhn!{*G6hnT%KUx%X)_jju2uAk%%2v^c-Ce7qbg@WJ~c zs_B2gtyiS#!dyo)dOY2%Eg+sFN$*FGoOam%ZL0VsMQEyk61J1@8yw{OPV572S2(0QtF4= zJ|VbYwd;YsrfBj+e-_MG`;gAp9q#o7(MK`34K$fmkNbuC^{4Ir{DcXgY8GuDxeZ!6 zXk-JV&T?==IIN$Z_(Eyty`Ppgp&QDw*wvq43YM`FOPR0ouzK(MRLnj4fV++Y#5jj9 z*w(RgzcS_noe)UGI`3uChD=C!bZM2GM>uZ+OPc*HQSZBw?B5XU)$b=1ufwrTPjCTR zf$!zKuq50U6~CCiGEEIP;V!s8I3P!O=8T$*`d0V(^YwA>&pv*^GO5M-8)dB>ZE?MQ zDAK@mg->ZY*q}yN^RWGkz4v!MWz~P}N*e0*n9?l0pCH9JXs&2O&jFj%Q-3O=bX9R(Odm9%uAdEDN|q*q+(WAw4ebdU#{rC3Q3-LB4jz*_kc+-D!rh-3jis zt|8DOxjdS_jGChmWr@b0SUcJ;BJM>K^mcC$$=|p>XEiaa#If$eYcnB1&C8FW1^(T% z&6 z9Sx2JC6Y6pL&n!Yp;(yI?rQOQ|_b`s3iTa^auSh8T zS}!8!FaBlI5J481)jnlLOm&GFl(5h1gioy=`+na#sDCugfz|Nd?w@`4Uwfdm+_TZY zcsclPO3gCkU>VF+MZ{ONPHap&XZ&N8yydX!1KL&6{01`+xj4Hr^;7Nk-@6&b_^&gs zk89Px=j7mLdXlng)&IW#NSuF`EuP}Mg8$?y@bk<(`d>fS|IFe4&3`1kKf44(h2in+ z>zcAjWkvLOtx2Tj;k=aVm9)Vy{=cy!VK1}(?%wC}89n%V24l?Q^Ub)c(5>G&f;J9T zsHa#@Zk$t@YqzIa)<**R2nY!pqu{vtJw=qmG6xFX1!Z8U<79L%6g9Z{DoVZ%^QmTr z-XH6)x4)?o{rA29f3OZcrNrmvFHh3q6msgo<|Wp$co2g74v%)d?i}!2xpnv8PHz`w zr8H~5z~`DGoXJo!GIqRc3yF}H@J zPw>Pb;kKNH<$XR)UsR%(Va;|L3s*9d>cXWeFSq?qSuujz){>da1SNm^8B&FvM2w9W z&)(Q2MD>gq0wj)%zc%8AO-Hs{>J#AF;?$pK@C!_51j=;Z@O$D6L74vn%Vc^tzq|SW z|GWA7YX@B$qF|Z43xvZ}o86cJOwqF>k~))Ml5Rjl0oQXoK|M zWg5?RSk87bD(z?@2x>1;xc{c$J>f|AVE9OhQA8Ww`gJ2Rcw&tZ`76MHazYj}r@dn1 z0g80f_s`e8-rLwXT}TE<#4izm(=vL71Be9#S0VbWpJU{{z27C%yHWXq-;|of%l?kS z7NK;SU~jv9PImXx{ylg3KY6o%J+wGdAC)cT5PCDcVIlD5+w>t|G#te-d%I>qKLfbl zbq`Y;P74u!G3>lD&g0kfo>=zm?(;34^uu_xATY!R$`LHeeH+2a%-S(pPWV`OE4Dd8V&V%*>+oc};*yF9N{Y?lqhE!c340H@pJZda0_dnS2tjV=Jz`wLLq>Oj z4@!N-;B*I(HZTdYp=+-PS{hW%rLu@}9Iv>*V~Dd&cm`)_OGguaczqD4ef0^QeDoT4 z7cpMmg(r2xqlfVk9XELt#fK6(?*M(MD5~zC5?`2HB{q+bj3b5yXnnT0v8S9ZCZVcz zL~3E92HM|04=^zP}k8FI;}{f-b83@M8uvEq(|N9<{a zm!0ga@5i|w%SGQq@U;It=Kb=#b2FPRW~(jf)I&5vZ4HBTCTf2;rT{ZqM=i^)Pl(Wj zc@`fUYJ3|ZzD`K^Ibsdh(88Zer11Vvw();GzcK%lc}a@(nA?%q97>-#^sA!_5$MS( zCfa65TY&Sm$hx8$9|!mD_837W*293@i5;~6-NIz$Vvu!}VX zAxIb6$a-~NfSk)Wb-;E^qs5X+OSsbsprTTdQU`V6wA)N`F9nXHyIJi{=Vw@9o2!89 z1b>tBN8tVSFLa&^d-LHhf2=jIsit_%bwU-n+{*Hrl#b-8A3eEISGbtIhF zyBL{s950hclj-9iyfy`Y-hfWtHbZ2kFLnB4r+ao)ai4Cem9sU;WQ^WDH0P^ZrNEB; zxPXgaHHuv1gZOX{!D#yZT2lKf{+wW?H4IQ6ZcCeIyhugKdH8}%^t2yL+&^BPSoivQ z(R){!Z#Vx47})NWN6VLD!7Wgd-~3qGcirgsd6*M-zu* z$Gq9{Lw=pJ{4+>G|FT4?{U&?MD`9v%AX{}KXOD#Sc$*Ss`JUTj7v;VZH#}gii(x1W zy0FSK{V?JV;3)gAk$TSjZn*eonFx`OmJD#r$Umm`|H!cX7jJuzjK4e%CArJ^_QMCj zg(uLc4v4uEPtgLo%xKkzD;6LEJEz~oGRD!{dB|NIn1+=T&`Cd!@K!Mm&x9!ynzonO zK339BoKh>Pc*03DnI8lLGVyeh&)ZCmk$)baz%N1dd3C3tuXo?Y#zZh|e${G%N7>2Z zemAV91wJS=bOFEbMi!&!8Di$TWGq0TnLV<1y2L-nRVP-{Y%j&qm$w0Y=wH(uD?iYu zy)dCV<^)QJqnBX9GS8e7SAPx889WK@c4>a(3p~6X^Ja{JqBrjg%H(jU(rHzx)5fbE z!j#bdCGji!6ic$;>7xSa9J^`!l_+-o&my?uvW_7> zhe=-wh@tsxqsI^sr~CG-)ia}=rXUuLWD+@*;j4w->k3jHmn@Kiuzf$qwH3<7~gu*C@#iXzaKwurBlGv7JFe=}GiYJ|&XhrYgy8HS(^j7`KQ z1_s~$=Dw+ODc$C=YD3StA*nn4@1N1X{q3LEKwa?JAm4wV(TzhK-K#ECb-K3t4iWSd zT-AsBScYC0c@k5=7-LXeg+TwIe`?uC>$n}>XEd9uNE6>~+;b~u2*HdL+GTY<{EmCc z8Dgle<4XJD%4;XmdM+WwitObXyN_+YG(@T#J|Crd3vx^D91%}pd3$KcU%En09KJcv z=bffWKllL;GQEo|W?aklv2OBt+b1XD+Ai9bkX><2`tJ~*4-bC5b2u>^pB4@-u<@$d zQvHMn)LHcD2?;7IB7E`6U{!ffj0Wed+fplD{b}~y9qv{^1f3!A@8>?L3zr!)9V3_SB<*`zBu_PNN`0D1yHM8piT5C*q*lRp11EeTgoo(`kNChu1VUw*2V3uQGqO z$4=oas85Z_ULMslT^x~T1raRKWR-4ObEo=KF9|9QIO0=k0ak< z?26m~J{Mp$+KfM0@J}Tr#}#3~8u*Qof~aF~4~^ z{5Bl?@eR_1&4sghXR@dv$sCX1e^~S6_fz8z@$dWWf4KwxdCvV5_ya77d%NS|`e4z{ z-xYA?riM^fu~?jgNEO6_El!U0Gw~BUxy$A@U*cFqK4=~8k0aDq!a4GKyRPgHcM)O= z{MT~cYA9-0eg8aYy6~np+b6Ekt}u8}S+V@=iu!rZYvH(lRTKu0O+I(8RKNtRm3DA} z%>4McqXQ*UXBI>4=llG}Qkwswq3%;}I^8^@ zzsEeAvfJzy{)2i356aq7MN|}(5nl!>fd;pKp0me}EJ1>w?L2rqUwF{t(gzEZmJ}Rf z0E0lkGe5Z&zw;V?QbG8xwfKNyC%r5({+N7`StJ!)k*tXSz?!jDp{Cm**9%WZeD+q1 zddIr|3L3>Ph=8D?)vNt1IeWY!855kRRiC-U(JAb0@fq-e6MM44DfzQiDi!SX|1akR zR{`ulm09>@>aj=4#MA-%etK_1t!}mEaPW0x{98O60NuUtx=Ac|Mm0Q1v3bk@!zdS=eyb>SA7R4*#$%2ljdU&3M5Vt{W(D(-Q?Q zO89-V@gMgQ<~)!Myq4y{=sE#nt zYq2ya?NY?;eH{=zJkv}s>A%Yt|INMX6?BTn_C9Q*Gct=@)?j)upN_lEx0gls=7%s$TKhPPUA*3P z3C+ZQz>XbrHE=o(!GGqQ|8xHI(*Ah5a(H&(?ac_)A&5lUn3a5oYU z8XjKEYuPUI&NkkFVVXI*>H`r+MpSi~voiexMvb)0kzY;s+nluP4}IV@7~2%#Y5$M9 z!~)jDpR2F?wm1zHdn^rO^cP>BWit860Lc8g|1oCv-gcs5`r7mchKSRyCyq8rs^Iqd zm!yLdd_C4E9OLZ4BE1vYOwuc2_ipD04kZ_%%#JcMtFM_nD^GhLnIEeQm5$xTk+jQz zAK%$=BG3DMS|7Xd8g;JW~9c{pvW#GMwIEZ~`6& zr<*ap<68(~!U3T%R*K^K9`7(=-mfUnOCLVRw{u)-WkfzXh>U5+-Wtq(7Jwtga?rJo zOF1AJNbLhT>XAF9Rg+Y|Oe*h|bm%SiGQ97P4ba!56cgMT>?&+t4|MfD+Nhq|^|T$| z+q=5&!IG+QHGdlcphACOLF{}mk6K^GTRJJh4w@%RfDo63y<>)TVVIkN{^B;udT=wH{G0kR*W6pPF~^?%!YsD#xS2{Q!T(thNYTSg0ES``YjF zIyEK#kchO*n^Jt7&fdU2jCC&(@Mi3U5?&3c1&Q9NfH?&|Itu6^_pWf8;} z!DYl5(47KxaxIAErm3~&e9B)MLp(n6%kfu7E%gxxv!j|e)bN(I{DgH^N+gxh_0BXX z!Q~ug#qWX-UO#b>kf%Nr1*bpkSh4Jn)K@6PhKm5Wy>-q-`)QF&fBBs}2h*4x1}D9{ zpS6}73geAjw7n}@PR;j06Kg-d!Q5Lik5aym;=UXXH?YBHIbr6V@Qxos*G7lEY(ouD`v`llMcE$o1>Q3-6gA`f6eFqUrqKw~uNi zh7ns=?n>!_8+7*mlU4Z7jCcbD0&{BBv@XVu{lx-YB@5QwQNAMmg;}-}rMbPF8Qgom z$&cf;H;GMLM9rBU+An~BPS=0}WAUx-;`T@7hxlhym-<>D(OzzAk_|s_?0>f^x>d_< zT`rY`c>mjyp4R6bf8CD%rf6(qiE&n|!|_Je(db_{WK;d>e%Tl0P=nHr(BZ{%nv-}C z*#HJhSa*NB9Wo+qw*O=h+k$@329E<5ZhvQu1Dc#+9m36?*?9PsPW0mgZ`h56N(#3_ z!0CGg&TN;T)R_@gXT3Uf-jKxuhw3}W6%~LE;GU{1s?4;aF)*pyI@veZeXxRQcV!dX z;>$VTDp-?nS=v3NnBg;QfNqqQihIGio?1$GE1 z|GD1&JHzmw&&Dc6I0)lm(VY+b8;%1I;Z`l~G$Onv6}yQ~2`@I*{xFQ$r4?}I&FI>W zfqo;zfxqizZGX~d-rdSjd@5@X6R-xjl1r zqE9IP@%T=*-pbDPB)Y_GmPxnU*_HR@MX7la#KNrSJ4|QmfyAt%{b2?KEEZ=iKS`W- z#9fN$&t*?%I|2o>5gGx8832>Kx1;a~Rqp%(f_yaJKKPr}3k&FzGJ8UQSO_sE-e`?~ zw2ntO`g!)fYCfs=ZI2&Wa(F+3$UDsyq8t6EMtb9Zd5c4%Y|v$&J~pf#YdNnRv;p7c z$v7(Jk&oJZ6wHS(c#0f(nHp79sVD4m0Di@$%|HyHHduh zSS<6Y{l5S0FMU0p|Mr)DEM16L?-VrU4l}--I15}AhMOHt{uwHR&sr%)Q>vWTHO;E> zJ}uUqz+SUQ*y;gdSTcfjp1yG;v`5CaWuvsSB^&RYaQiznZfpe0vNvhZK~ z)Bm}zID>)q_t~q_Z^Vl*@Q=^Sq|=OAgUDF7IP@TNR7K&VEC?vBe8|f0W!8H2b5|Uj zmMF)KgKv(}LGE6~6^l;!<=1Cp?Yf}rXr=F79?$Y)1(NjdDVd@!jX9C)L-`h*a!XXAdmJ_ zTJR=-6l}X!ua@f<|8w=voJIS>-Zh;|t6iA-cGdOd>@ClMKHPTOzqlv<9`M%x?SK2M zO30~*fBWPwCS&-&-B@F<{8PL?rvF`$;hcP+AMoFq*Z3vUCu;y&(F55*OH=06traFHPyN->gUjBzC=+pmXvkvWa ztX*$h+EQn3@BXfDkk{c;eZ6evc2Z5Y;2&2rs9WhgfrWRyWpG-ZZ#6;tz4<*5DUPB) zGjuBMCm5e`mjxhcx$xi6^T|^?;h~F1-1X7lR<*$W=J8ke$U&%&IrV(KKG!I24OYm! zR{+JW!oS1|yzooj$X2 z>Y>bH&(djMxzsI?n3ayDIr2WV0zfjH zRu?(hig~+*z`P#<2l?>V+3|Fn_TL?SyPx_<<&+uav64%L-z&V0hxvL*{m<@(X6|iE zm*5=fF_Qd;w7Q=QzYC)3mXw}`&u48a890O*8khdjoOY0PG>xFPe{LVR#R~9Ma@6bJZ@Gecde?9 zXbIdD`l1;mNLGG>#%V1v#I45V2kva(h6b}9SK832_i*h-kUztj4$;F+JKfM^x)m1* z!WaB)e?fX-i4}AE$EnQ-4C>MZlDY}*X*;LQeD5`;~jZ;F8>swIAcva#!P#8)WEXoCB>0ssK8>I=h zc+ksR`xVaj{T->zL14VxPo*fFgEm7;Hb!eyJDeL9>cnMiH&Y!ba%tlSl z=DND9u344(vU`&*&tcS-Dd>45h9hq;`V9(z_0kJXlQjHWzXXxPLM~@b&la1o1_`>K zjzH4%j?_Pmv8s>)uf9!OM`B!`@lcWVb{?K4I`)G2W2XCuMypl%Nq482S^%NGnHlup z4<3m5ZID-lj3GlLpEKfMj_n8|r-j?O9i<&Rc{$A-mgI9F;)}GQ;>ArpkGhbzO1RzgVnZlEBcDI` zh<@_<4pBS=;na$>#d@m<4)Zxb2Kp)c9qTXCF}Ad|7wM~#2PcRQfd=&6jyKvBt6{4L zpUgbd2)Mr*?t42P5&Yzi7a0({pKgcb?cJiM^!8)WqPlgsPyv~=D9ixn zt0W&JdG}>}eQzvXztnEOoU`9J3VN06JF|NM5b=4oF9<-BgO%1X%J`NcP7n20!&+5S zyX5Jc{SCR`^YxkRsn$iT+1V9?mmLg8T)_^-8<2SAuRXPg@k!+C2d-Mu{TRWHt! z;YBR+%>4*8rSiBO@twXM>pQF~EMoOet4L}zR1Nr~xcsAPKn2Bsh&i51hMyR;!7h}k zV=F$>_*|SG)1yEkyGF|BW@>k2d^ZCsk&C@U4eaGFn7FECoSrweN<{!OEmZLyLwLqp zW1Pl$)s0POB2}Rd#b<3Ta)vAHv~PdxexqOJ)EZow6~@B1bf+^Agw&?J6PcYU_N?)_ zx@~R^VZofqBbDr2=PzbP*pr9r{mvfDbKnYTmrj(A zQpD`6=TxRi&x@Rmlpb9LB4C40DW9eauLL@cd*FdaYJlr?_r(<9o#vtZi>Q{-#_R%H z9=v74GtVO()Im9TyVKp~@~XQzT>1rU$%}8>!P(s~%7BwOVfLWbyTjKB6SUkpzVl_C ziPM5$+W0=ryjt4Cn@;;k82lfU5pUCF$FHlF$G;~>d5r{4`ZVV~Rb4;QQf@c zUTLe`v7~6A$4u5XbE5Xv#jKT})sL?KgkGEX6^1P>xz28x&_Uym9VndP3g1!H5qIz0OU zPyD;dzq4aZh_XOGMD~T8Y7IEzeX5wc#o&ixh5c>|*00y_&xpT%uiZPilt)xAMdSQ= zy(SWCX(fG9$eY#+r(a$8G674>(Be?OU)ey+HQ_)@7=11qNTe-v#r@qm=}gR9s~FFG zky#4_-PPbe@naTh?CmhZ6lu%OIW2AY7Tj#6V>6}}R?u_;Z`kD=1$gVOF%S!(qDV@oVJGy21OWZTo8NKwQh1pL)cfmv|NZX zLf*?(Q}(`5QOiGNo_Nq+>ySMyXu$Mv8I?;jQ%{w~(FvsO zmvM1t=R1?ANQwLRmL&N!n0LzhA|K6UUx&V|rr+;29)F=%bs|#d`FsL>^>VInIc=PM zPTyfaW~u5K@7M}ZNq1o$$&P0t{^C%3F68;CIG--Or3>JyrQ{2&&z{g!N3o1cd4_^ zq^Xey8#OP*EhxfxH#FudJe+t>2g4V%$_q$dUIXw3q_byt!iLO}s?fCeHX+57aHJez zG$D~eJiEhFtdQh1h(~GRi?N^DiZ)M9Qg^fZW&e;DCWSr?UE2NBdeSc?M1#;ceV*4K zP7d@o{r%I@dFNcuL!G$SbEWh=dthD@`*JMLE>ZF9e{cmtq1&GI*H0%$oO=%4t-;_y z?nLoa(>cHRB>*H;A z{ICWvkrH2d;#jgW%-DDe$BG+aaoNG!CmJ-@KKv~Sf7axI-joS*v7+=pnSAfe4h)4k?9XO+hsfAt8f%!h?bY0)eS^f-Y#BbXUUN6r{q`Wh2b&e~u-2*c9Ts?K z>UU@OVcF5MDfqhw1k*UvvQMrBOA?eh_go-}lEZS5?cLj}C^?jF9rsHcl^=gQj+@2J z{;YXkhIvtx##d8ui&I=o8Jl`+$-|4L9+SACWS&2xA*4>U?fc zeOtmG#O;#b={f+4YDvY*lFoZMe_JAe zY-uzn-M`iNwnjsfli??bmQJuhqP~SK3mjoA{yJQ)o|iCo{~r_ceTK-qLH1tb38s z+I*PSNsrz}xv8o40pVM8<_@&j_GD-!>TZ$~8b_Yk?>)@K7YEMd8)K<5U)1UKnMUQ; zB$sQ!s;f1?&vgg~@3;7&cSYRz)#a^5iun%3^hWb=6o`V9{pn+Y9gl&_^&(Nt;%)ZVIz)k^1jyK%1xfj9BRxr?5{rx zdLfn)<%8iZK=Ze_xHg~mbib%LsHE1_9!|#LH4{JX*J`NrP^MI|InJfmIN{{*?jRqU1R^D+t0w&D<7pxdbPoc2M|D%;c5-LO-DIyPpxqza4lx zlx%@fh7HjME1|6c8Jg{6bFaDY*6nhWQ{a9nVU2#m&KDfRm1y{jeYpxy6607xr;X5n zk};iNaegrC%bVcAhKT|MyZtLtHuM+$lSBPpr(&00ZkqVPIeApmDv|q>KBDmYyv_MQ z@5V&pT9k(BUW*4utA4jR3T|LIJOM1@soz$nznAb~GGRM>3b>2+W18>g znGu3(#$QGsS~i-tPv5hVNW3n4M)X8(W<+2!dXR9WVm86T-z}XEogsox*IGFS3wYE? zA=Q0v3cR~jNhN--tv8DO`a7*KpBYSX#??i8_>jcm>4(itKnO|@N4V-PamyiUNYq+1 z+HqIIm0~aZKAMmA;<~4i$!;rrk2C#!AN9xQn%2MXoAxDY^mh~{C=xM=X&d&8hc0?L zGdQ5|;7{j)%VZa~i!ynccxmG4FJ^bp_3G@Kc9Y$NT`*>EcPs`t1Jiu{E6R@~dKPkj zp1P;<9!}DJ+Jt!haDizCe{R2Jelc=MZd5QI+~~^8-pfVuvaJP!5cc0SB5cbD>qQQt z(bbW_uHJhEN;Y~bj-E5Dc~Nz;rKjh*XyXQb-{vNO1>JgHj2iPoHC*h{%jTGjF0r zi#TU*mrH?f&M|uDIbmKn;c!`h*1*r<$PbWmQ4oWRn_-2*^?1FRZ_5M#m*3bA{d+<- zXQ*GDp|5rp?LT?uAlRnc3|PMVE)?J0$8efBngn7k?ccTH(-LQ;B-vaB&u9+XBpmEg7PE#s%|rpbDKu1kr*Ny z9gbLM)inZ8zgDVERA^tMIso)qz15#aIPEvvHLu{Z9_qkYRaN_C&{Vx-E#Jb3@Gb^n zwrqJdd^|cCU1DPIkb_m;39qR4il4(WG)CVu@)9tGVj@Ts4{nFHKF?n&K!{UL5g}FK zE%_R{aPPid1X0n#;AQe{gb@UD&nW)A80G{17P18J=q$(|jK!|3QKTw@DTDz4<%@Z09HNGM=(DrI)@6zoUSot+z)( z>s3Kt`ki@WrQw~Q>Z%7nQe+S(6F<~EoO<6t(;ep;EigkjHcG43F+hTj6Z7({}=!c%_2 zKGJ70`+WDa_z>>a4$b61zB`Y;TNDXH26iFvOoYk9pxcIhshe?e?I_Lt;~3ps_0@{B z-Iru5y4Ivss8K0Inkdv!O!n)8#iw)tM^)ednZ3GTjJ-`W>80KA{EStPZGQzrvnR&qryZ177P5P zf!&++)n~sG!{1HG_BZP^gg7q}awnY+w-eQMz7p!|T7!+GP~wMdPx*V!)pFnQ+@buv zY?l|A%ePhxq87)iN9IVa$ANC{X~~|J$2N55Ew{Mux4#CIgfhlw^q*V#q}e8w-L}m* zntc#ik1sCi>j=-_7d;oH&?!Plj1S7-cihx})CvA%5bquhb&aEZz@eLonGHPd_{Jy6{?MW9+dCH5zCkDdvQDWp#VsV_uKh$ckqYYVx!D5X zq_L`d;e}LTuvU_flY{?{6Fh^AF5NR-Mk-CD{|yjRND#tVcc9GdItA;6=80xk$c8ofu<^m%w9)6u0V_fZ{o7jrC^ekk)e zsC9!j+V3(GcElmU?c<9m_#6U@zj1eDPQRy(nZ?%7t=5Ds@oK(q_3I3f1AF#{j)BMF z#3VE9;ep~Se?=#tI+0tIs*CsH0MI$|VyqqP)yS9M75$}t{a)@q@ii)?KU0~9#cHsZ znx;sqFc>jz1Wv8pG%prt`6hcOZOc6QjNRM^J!g2?v*O8nyjl==v`wTAg`{caIj^Aq z64Q)9eXF4dfz@_xM0V&?QPcj3l<=52Lwj<^cQm%HsdqoVpTgdp9{$Gyxdo>YBiAKk zQV$g_vhXVZ=JRUwFQPq{htYO9X*y=+N`cijie5^p7$dJ6S`w^71_USz7F|FVZDlNW zU4N^m1~V$`rgaCq-JvS7F}sAB!ne_(p?Riy-97b6H*}y)btt*Zk=M?W#IQh3UT3 z_bu6v+v0OW*7|-D02#H66c$$4qDn?zXaHod(hxpf_7!{k$$x;+)>hbUZizuc=6Jh# zCl9>EOg!v_YBnIYJW3#A&Y{L>`bki{kHjzsBc|VHJ!P&n;|Koe+^4Su2jeVS^1AMI zl@7jZlDxWkzQ*xDk@@n#6S(;9_ZQ#nD|_W%t$?%t^AJfujf?`SfvddtudGe?|ap9yv#1OOp9wwZlQ7Xi(R zPPpY;_3Y*0L3y!plE`02-h}RMkkhuwnabSP;~s;(1HCp>^emjd{@z&*zk(UiHZ#5Y zgYqEENPkwrFYBBb?uVxM#N23dS9XVEfb0n-TheWIL3e!;p3Xa` z^+V?D>I4Pg(vH+A1?5N~4ciuMgX8h$U&XtK@t1fn zvZ+@lB_YJe_lxuTa%IiHXyo^WN5s~IHpw3C7d1?HF5JIlnt~?mu74WuRssnf2l;NF_s*JE-^vLO zD*1sIpb{$@ElR${c(cRp^miEP&VCP7!e2~^iB}mrA-~I{s-CFeGAJ}z`N`b_C$-FH zwpfdnwMX)iJQ~NFO-O*x!V}W&FyWjyB7aZX9FP8b2cZ%oBGMrlukRR${ z8}O@fzgKFvMC0Lhfu(sSp2S*lzMu8ua_G$0d%dP_vUVzn^<0i5>1}Kq31T9UVL)H# zzZN*D&C_QTvOnxz@3AMx`W|>^^=eN2*}U(GpHIG5OUP}x)fZ67L99zo=biB5Um452#96Nz=ftovRl^YZwefuX2^=^|V6iMp*_U!K^wx8X5Dxx=0 z)6_eU_JLETSOmdg`#a+Rf7xhENT<{OiLom+T*mlDVqDQYZr8iI^Gqh28KKn9mal>8 zd!Wj($aL^N!)pETuJu?d{nQ$&iIlEjpeHCP;Im6G6HaUHhTL*u+z~#lx3H&=&X?t% z?>hB=4Yn&`-nYxZy_)_Oe$dzEd%DG?@JX76ACAQY(Ym;EI;v=hOZi6B(HKHJ{@%nL z$Qy3}pW?J_oQ~WK__yA?XCpB6cm~*k-7C{HlV6^Dbfe7qz(|dSf2-L3&-Dr2D-;t2WmB zv(`do?Hj6r3~Lhoy65*<`$-F;*ULG8vTDQebU-%zBp6T1X{%F>w5qYP?@j4oI#C zmi#$vyvuTq7lr)R2%H<{CCrVFg%ji0d%kyFaKS+`d)%soOy$qMhoc9ihKagRR}b%Q z{L{aJ9fMRwx0;DbCeuT4= z9Yz@r0wlhjzE^9Moqwrojk=}n^?|hPytEioV0i?*sr=~`V}_5zhK85rypL3=-6w`~ zFGY9(B7N-0=Ga#2MrvuPt5%2?OKUgX{0XvjEF~~keJAsE9irbd(`cIX?r5n2Nz}#P zCz`o$mQ->q4azf2vIQ^~z--h`%Az~;SzKWc3SYk9pnKVmiS}c6HT-|}wYlHgD|*2L z&K&HV(2I2YCWLpo+<$v<7hW;KT&ZiAH7sdQsOuZ}AU}l5LCD6j;{O`(iK3}(QN8hSA7a;@xUKNTj z@wKxGJ1yg8B0VVTxc&<%6s>s^C4Rr?E_mi^ywHBE6#HXX9m3~Fc+znIa)p79kJq7= z3Vy`Pz9HsG(p__C55<%tTY%?hNB4k4`>;9O$JrJN)Rris&E3!#7;osA(#9D9>xlch zviueSXE91aE2!--=6m}JKuU8o?-EI*`{(1poiIX>aXP;wPd9lyF3y5;SwCNj>8X~M z)2$p_LF>sVZ{&X16_>|cSqJ_Q6}W6@ZaS8#Dm`~7*)&;Oksa}PZsuKn*wxZQbXg@$ zyAZd#x$I&}8x?3{w^mpdT096h5bM9U*Mrx`2g)NHs9H{gT#YsgwR*(ELYE>#rVi;+4^2Dg=hLSC4jCBr7dZ?uUx8D4caPW= z$qb67qpH?ebo>PCaB1(T;iGcUaFz`6$0(tQi9XbG_#9GTjqQ0)DCkx zf3e5GE>n*(awm?D8ouhfi+tlF+xZcYZ;AcxcCRDuRa|h~7o)x$J{Qn2cODG6VIHAn zSpWrEE)Y}?dAojP$_*(@;`k;9Kd-Z5k*s9q@U;zabQAX}U+?c*vFFftA_ebi-zD12 zDm94FU`(<7U=+BQF{Q~h0j?YZ<~;t|Y9cnS_K_{CNj$$(9DjfM9<$CFwJ|?%naXBk z%xM^+eID|DKV9}c|CW-F%W6eAZ9eH2h7Q2SX=^RuaKzQ8#$9%-iZS!r%jizJ%y!$C zRKb(hB^ycgUim#lyw;=0%9=VNe@Z&qkIoJ9?7G5jMV;#K7s5SB4_6Q6h`Rjw6174W zCaeA9`Ld?J$~dp`=S|=kS05h13nL`Rb5?gj9MErx^KP3z72bTZ026Z9M=ueZn4!Co zOZxl{$LGbn;&kym`MX~~Do&t$?HPd}-u4T5_4Bd~b7nD?!PL%1&@PG{4Fq5_k4BO| zN|h68+fu+Tz3%ftxGxtKH?VVupxZz9BJy9)v*)1F%W=qn{}@pG_HRYK-R_yg!JM9u zXPIki9Z?3v{X(>#5X3HZ{4(%oobbY>W27Gc{reUn-y-8Lc8fr_Wc`U>{{E|qK=5?zaUyRq6j4<~T2$lz`}baszp}?` zlg>Jc*+*TAope7bXs6(Xo%N@l{nrcqKYu4){D*W){rE(&N+0|NU8cvBN)yA1t{7T!8DMX`IF*1iAReVU}gN0MY&H&G{dHC#nw>%9!{Z z+p6BMryT+__R;&{Fa{mK33XGUz?FX1ja zf+L2ROP3w>&5Fu^s{i?w{QK7gzSsYLF_ndo9^RUPR0>EI@YWUM@6>(_@d0e(7x|H2 z&CQ`goZe6ER@S8FMFq0v4xmY0zrW-8`dkxI!p)E6XL>P*GmVqHAm}>5G38n)rJCS( z&atNre_M5MaW2H^uG&p%ZLk_?r$YbT@`=x7C-N*vQrRYZ_Tyod?*3cx>qlb6e*tOa z5Tq1X0c$CeI4k5W{Hn3~RqpR+IUC0t9ACDWd7j!G;OAf}dIPHd$NlOw-U0RSWD^DD zc&{ZJDvz=99A>8|EC0a9hwr~Xr~3c=oSvHzFp%BHH(N?`(Nj{ErcHP-Y=lqT zXzk8&f5WTf6~dj<3DFGd8I%!fA+XEyCufsFBVKh2(h**|tUf7DB(PbXd1|DD}eAfD%{HusK3_MhJ$2!tSz^VM@k^OpB0 zR5|#=bI^;q8h`aOnol)R6o;B{e~IKDB|b0xf35}Ce|remTw@8Bmr^?7@`8`@@v+_; zfsJp=SqI@l7@$K6(*An`N_&65xOXK$O1BAogs~RpIr#S}Lo|!R$2)tvp7!m&PoT=@ z@FL{?2mf@{JhLpU$*J6j5NF&|WMJ@@5Ou$IKp_gGH114Q;uPA=1~VOlA8Nch9V6+l z2ZtO6rKb+~ZMQyYWh%;rGtfP>uJ~b*a*1ezDo;G&9;p)HaYcL?p z46+5b-OvbyU82(Kk$7L&nr}otWPsn(=sVA}FN~qH_))!#A&qs$xI#Jk+#u^+k_|Fc zq8fbeN!)=kRJPjcvKwjeL)Md6O+6fAtHJ}nq$j=Ky3RN!s8gYA-zo8O#m`Eaxppz% z#sdy(Uo^`4ixd=pUIa3|eMAFO%)DFVWlH~@>F&gT^5v(R3m)BcK3rR)Nz{*m(Y9D$ zA5Vj8{&&7!9b#4)o$FWLvv#hUm)rJ6lpegF@LkdOOG8WK!p{0ZnzKN9UwK(dF$fmR z_-Czl(PlT{%4u1G%qk&4Sec8j{P-RWLx|1~o?>(R#Pf$5YshbJ^!1(LeqpuySz-8w zp*h<~uA!!Tw>P&_9xflShPv)r=gWt=gGlQ}MCi#!!oE)lfC7lRGj~7|s(QEf7Ddda z=0a2x$}isEv-c5>ZbY%ke1HV_Mne`h|INrQQP&#=DH_;BzHl#PdJn6QQ?es`=XAK> z$<+@B8KYP2q{XMj(A>k^Is1BR4hUH8Px13sCEY_M3Owj=jG5$nE_$;@YmdT?4!3h6 zP&Uck!oVyOc1sy-$jd|k&oB~hp%arUgTVe}Zv!@y{PwG3av#fiNtYVVsLS{JpZvdX zr_%?u1E5CSG8?gv+-QW_38woIn$#*-LnS2@Y&bfml=NCz?zgusrH(F~xM81wXN-R` zx4#m%u9JqFAe1P$2|hI!N|TA4EPgKAjVTp_@*9O-j!RZV8;_YX*xjPooHTUE{60;> z6~o2tj3Lv=+0MQ@whX2idcT0PPI8>Rk8b+{3$>OJh}ttmLMT`B+7N(xO!~f#fKvYX z${?(14CS$1k($~(n%{VQ=R_huWM3E_$d$Ek6_$+G6cfT$`}ivF z(y{A%%ZQNbs&m1-RRTiF@Bj#P;vTY((m?R~hTf0vVHCiV>D~=sKn|dZ)Pn7d;RM-N ztg+dXe=u%j+oGiUK>E0zA-1`n2aEc>x*vk@krEA-$%~&116PFNfH?ZTIok|SNIbg? zndhkYzW3H67zYCZ$_Dy%EyAIPs{|_Eh2UMf2o@G*G-U@>L11X_e)(N=ZC^a{-RkF^ zF-ZlC{?QH@K!TFjPzDoowk*rOU6}0Iq0~Np2Gxke-kivqG=vSYI#{0= z0-tFX6iFDenC?ZMK;Y0jEKNvU!Nkk?V(#YE+I34TF7}ImC%Xv*o@2(%Sg5;vRT1QN z8V{cn15BU|TeOkJc$g6?i zjE6r1ZThqC`qH`ld!|!c<@j#Z0|uVuZH2*A+(j8pasu*rW^B?jx!)vnJC&1VgM<)%>RjYHo+FiM^HIZ{u-1wnUo>25Dug=|IpLXOHW3y~h`5rH~ z?tGS$R`a&i7%!Y1jSt@LE)T&>O8uj->}Q723743}x6vxQMql(g-Zh`~)ZV{Qdz2A>5zRA7#l4zX%!sGh28sXo#tohLh;E1L+>@SuTmkuIAkED? zfmP!7E!M&W5_|2vhga$TZuGn4-gS(IS5~nNN$&9TP40w=b&fuAH|~^#ok0$MRgRAQ zeyfk%;!*7Tf%D(@P%Gb{{?1F`XS=o{R$cyC(g^k0Z)e2C9g>S9Dkmke#=m;&7V=$c z+N41XU>1S*;}6w~p@Q4<>eRqokF&+=^&U?))QA{`uG=JU9-Cp4(I9$Wp4>vX1^A29I*99hZ@yq^?AF=v279= z!Vsp7Z9PbEf!FN${ex-hjM@!uC?yRdR&f+VP_N40ZSR=9ddKJgm>ub~Uf@OyrHr36J9_h~QjR7{Y_*xY4PV3Qx zDmDZk`T zS^C=N4o@$?5%m$#*o^AIcyl1?!kZ^2;jm%Sf_~H*>fP4{{_WN8)qVHrhP(CDtc?%4 zyNA!*q)!oycWc7RlaLz}8838SAU9|T5Q5Qi2EYR=3_6~Fq{t;FQi7Xw%Me4is?=7;vt+JkoPa}*o$$b)hN~M3NJ3yIgk$bgmygGpT+)( z`#v|$Kz{zsBgz||g|O(C3?$zafi$l;>bhoiLheDXAXIf>fM!nG49OA&(8SZOXkOHZ zwyrcRz*0a*fvKTNICKQTSbaUeheqNH9lSrSw>pF0R9}jDkG^leL*I~(b4H-!4yWe* ze!lc~e~3w%tEprSn`{c&dvR^d8ZIB2962fZj_1kyQ9c2BnuF!OlV^C)jHPZW?3=(G zt{Z1$os#Llv3xpQhDAfJznKR)Qxe-X78BhR&16=Qy-x}xlIde`2jU|(KZ?NJ4zNVe>%aEPV7G2AnFwN?+UGYwIRYC2`q? zgEJ7ZmNuRv_;}}_7~bA$Ot)3fbpBjsHbJFgjRF7lBgMap--)&uF$1s@F!O=3^v|XF z^};Fh^fxL~TT{X;6%yhyJVI@k+yTqaeZ;3u$$Y{S{8`2|2Q>QsnST_HE4OU};@zP3 z8uEie{Z-wu6*I~lE3p`a*M)tFWbEY|XClFHd{mhHB0%y|(!1{NJJD`KZ&Q^^CKBDe z|40|&ih+@OK}&A#gv)1D2gOpx`u)M!hxuY5PM)h3IWcxj575)Kg!F zj5I?WUjYW?i$8lGjvvKF1pIF(Cduhc-tMi@MHVIH`!i1Qfo+fRh^8<%~0CEvl( zFOHv?&w103pS|wee!36?k~~GzyrH#}V7s!iXVIGdM)o4-{t8dO$;W9qP#$uLPwU&` z>wFK?tX_0at$rxT)eAed<$(&*!)cb!J#w1{bKPK2y%_k;sCFlg#&I4Q^H@2qc8Zf( zE#{{M*9s<894l0oIH0W=uk?2hRuqiZ4}a-@vu~n4souMpKb_#JH0>0p6<`VjZD5!i z@MH4k@1q^721V$k{kG5hcce)1n!!BMSf5mbUnDG5J9-B9$79#UNlfZoM}t7SFKmP` zz!=Bo%6@rC*1rO1HECpAly_$ucSe!@`c?ljWMm%oI=SaPv3=_&Y-lbXv+v1yuj`Pb zKZm>ggc#3{nuFjlG(rwLJLN6}bejL_cLN6U&mI;J&v)F~8O&>;uBbHix-V&^i*HX7 zpF^~csMZ2AB9nj9(Z*~nTfDj|jwu%ZWE8@HmZJ!M9e`FKt9+7hn0hNnVwV{E-`>}@ z(Qi2Oy?@l>z_^x={zwk47X>fM(`h0?;4n+<%@k0RFa%nDJUle9xjZM9L16A1*~WUc zelN#O4TUbk+mC;ehH%?@xDhA2)vUrd>iy}J;J8EqI695jMCvmfez)&OLRDS+6KJqZNq{F*+;2`Q6e)m2iH1X-qPrLQr>~h~I);fbpFztnS{WcW! z{226Q^DhSVKA0n=O{36Q19Ot6cQ%P`g6u^Mc5g|!kX~I;jGNAuF^ZQL-E`glgI#Xj z=_ENC{`+opZ(dQ~=2ujQEaeZW(G1Ju4vnZ{0E`}wy;6|xMeH72gi-NDew@!|4T|&g zMhoY4ex={F%=6*LdOySa?wRed4(@@%3YSA0gfe9KX@cQgQCGSWLkW6o3(@ZOT`K5C zs!sS5p(MTD+@u`_(hZ*h7EQZO6)bBpxU*l<~<38shmNGbnst8c?-37@bOLk4_}xRxr2SEuuXj znZDa4zJ4U)_iuc%Hu;)>rsXvBSlUu-=b&>+gZ!Iu9&aLMP41(=^<{tZuxzRDeR!wk zw0uZ>_lcAP?HTd)?lLKH5K)t~cr~K^tP4kab+@s~8`u@5bT!j@WVQvZR=MfJ(BB z?30iq@WWwLlCaA_BEWRNV#Jya0>Ef*sT#iQR`0Xrmv_U|TITYdEN{w>RC-Q7^49Q& z#iOg3JkUCZT351l@7!Co-=grmV*ws@nST2&QQqlmL98!s?OF#uJf1id%^#w6 zBb)>lD~-PUm;a?LHhmP8PkRme?;zH{F1e@&QOF}rkIL!nM!goHtC&V_;20%%>2lqs87G=NOA9d(>{HkiI8(^G)?}Qov!=*Y1saC#FiY>hLMrc1MrDDDGG0 z7TWbC37AurJ#o|?n?6ARX^=zIgzdw81Ts?)&2TSY@st(3bQmI~gRFhoSTF8RUgY_$ zSb07gbP>mkeMx$#t`-QJp*-0=oCW=-u7EKq=G7P zNy*t=b6djQ&pEz>wxA1n*rl3U{C-bsC8a?L>rtipM?*slwj ziY+yr9)u#2Y2}OMNU^5Uim35}*5|U+zQ_Y_;=lHgpp5>rOLJ#E8UFZV;sbLI=3*?P zU#C>W1WT!?yLatE8Y&*jt@DXuyzcHO#`H5CkxL^^D~1$2Cb-|0q37UOG$=?m zjN_d*b3Cr~Nu*w1Mzp6j$4pC-j^7qa(h5T8j0t^mckN*uLU+at?Njs1AI}8xdSv6? z_@WX#Gvy9fOkyaGK~TAL9eh9Tz&N{xeMUR|@mbA&zqoVu+{3$s%?O&_44^P9{mRVh zr_Y5rh?6OQ5$V{5H-;6Q&D1*v5lsJZxE%QHGrp#sfl2m9$aw>fKMv3Ntjj~?zI(M$ ze+#2@7~T7&*jRkeV~CuP4G}RSdKmB5*);9_A$c>vj=b!6DxKiK7OCEZSMDsgk0KZs z^+V*uj;`LPVlrJ&+^j> zMhMBkjy*5V?HeFiDY~?V*;*O9%grQ==>Cb_(GA=8RmD*q!nAH=El)j57Z9!QW3YX8 z5NMy-*n|x3x?{`PJZ@TGI;8*nS4Rx&bQfTn!9{M{*PqhSHIdN>-oHB&y0;CSP{^m3 zpJ&{jd+rvYiVOKzHmUc0z1UE*HtD>eR=WiLrn91n5sKevJ(6HdF~L2z^VIyWK+qFJe0ex>>a!u?N*Cz#=G;>3}cAKz4)uV&lY4G-GKhf9y$=cH1-XFR29bNqB zi`MSjLACC_u{dxD5 z-;@B~>iB_`fsVbwYI|uJk`}h2E3N=&KU6M?7aro|{%4B(7Pnc!m!!igdQl4BN_cd? z-_z5YE3tFQ^Co|;{=Z&_^53uHsa%d&lhjDsTJ?5;`uc^u05ltoY!cgc1WuY^*+&?f zTjnHZFL~5F4rANYX-UULq*FDT6k*fw&`v(BysbR;%MGk|yB0o*sk*1N27vD9_cy(b z*njsAZ3$bJ|9rM8*%Ghj`FzNJ3xyGx2?+!v=_RKrUwAa%9C@&WQox7xygjZqUBRE$ zXILkvZeSb@FWTket%6DXurS&Yn4spYf+_nCSBZ1m|LeKi_0Rtu3HjeS2V@_#@BUvi zJ#Pr0c{nBix;OmYCq5g# zpW+SSkbea;{)t)qpL~QQog^f74K&RfI!4CA`eXH}sGErO-|HbQuQatDe!>5lefduw z#=#3i2t}Gsr~h%*h5Gp@71sZgnfcGZ_ZJJnzhK*!Gh!h;GA}4}bDt4E=)Ynir_?wZ zs3QGeulJuf;yuN9AzUK9OgXCmk;H1hmG<^=@J z5Y@Fx{P+8?zgulxE`Yh~wU2+s@z(|a|9{@TfATxnIO|T7_|&ok!0B>2$s$^^XYSKV z2?}@$MdB9|i8$}$Ft^Dis-(wC4>qf9D`PfQ;bNBO&qx93uIU*{f?v;BEW<}|0h*V% zis`8qj(bms5Bja(592pIK3{FoYL6rIUMpq0avB%U1E6PYTv$^P+OKYZ&QnctkK#xu z^PBo?KiFjSfEa**{IV+e($bYE!JRS1sUi5pgsiD`7Q@y2f%7syNI=cRLI#V0lcoQj znETAD)=a`S?G_h3*W|pT8&zlc$o~8NHrIvh10g~ltl9vjGejwpj~-HD@;G+vrLU86 zy|gaMQnGtpN&!BZ3zk@9To#|+X~m;6TkHY0T5Ofp*->iaH6Tjdyl(Aq+r)c|l=D$H z@YR*lIz@h3u$*;DZ@}A<{Ci6@OK0|EZ@FC;kS93C&xI@j??10WuDG7pG@q}yN-#xa zISAi`rfteYwX(>hlIT^5)*EP^C${(7fgnB<^tseug8gAZm{`v1Kk+1m!|4!|crar5 zom-G0TJS2&2Qwzv^Fk(RL(WxmI%n1PL#?2#B$XysHT|KZ%T{Kzf<;Pwo#z!nG*o(Y zQM}*`E+4aNx^4`U`SKkqaJP5~p4}d2>8aPna7s;@M)v7_(xPCbGmI#JArse!`@Q9f z>dumLuOYCoqL$$Ue(D~N(_O2;4nosSH0u$RjrvN*7W5K?`ZpnY@hYf~YkJ7kw%)R6K1g#>5#`1vEE2#{K^ zpY3+}^oJAZod#q;ODT=BHrX)P`FKSZ!{u5Alo|doe$vDe<3SZC92uLZYM-y+ zWa$rqA|7D<#YmFNa(BHmqMl>+{-(Q1GJG0i12*_G=B#u}*Cm$#-Os6RSLWwb^zVs! zi76^KZ;KovK#5Y&c{iDp#J}Xheq^p?c3upV<~YOm?4vo{l<`*77M6&tvXHu#gvqnF zfDuLs$30fd?fFXU1Pzg7n2b3Q_mAY(TBf_5kX#e`aY_)R#oK>OTh zz61dA6%e?%VC9I^wb%X1{X2W3CVS;{+zrT?dmr(-FcB_Y&*VxoQ*q4yE0bd^=l{;+ zOav&ga#Z2_e84W`Y8DGx7;Uuweugb5Z7aVp*bpU`%3s?R!J=+c@VxR=XmnWjgJQ6) zY**TT!qMu!?q3DUhj`Z_tCiXgXy<)Roa2e}A*qQF7IPKf7u)?jv4^Ai9<#TXAxOlR|i9v`V^9n*+o#r{d zCra!z`@*6~Sp>U5zT{`v3)OQLI&5=!SOXvw#h=~4R?3ydS@Lsg8l%Y0=Pz;?Tpbu?XUHAUN@)p zO@DEhVs-Jg<ezC5@CYE6- zpWHhB#^<))v~dW=Ac z-b~mCU62HR_NK=LLUpPQl)`ERlgb4mU<68AV_ti9Q;`cU(Ac2eEk(Wma} zuoiIQ9Rkw&)4PCmjlAa}P@y`X#H}F?5AanLmCJ{0aQeui4Ek}s>_6_UYkCbtK`>Qr zB-*$od%F9KEn#@XL4u7dSGQ062yH+K5t)uwnt|MPtldQdW-`o`ko=m&fad0z`ZN_5pQFT8IFv6xB6n0Q$9_2f*6C)&!#Mz&J4%3zV|boKi=fPnY1xh zllzF!W|gmdlVoWD^5y-scubg_@uPo#+dhhXZvM1MxgRFY^XS{YSz;#o3(pujoBlzV z=kPw`>pfIH2N|#vNWVigXOCB7(TGRPZ%2F{Jxt%a*L}q!B#|(!)IC!nj(>K3;0nCa zOo%i}goa$#vnsZ7l6C>9;U!yVGTVOCA|w;-k6 z;*^UBUMa)mu)WY@IzPhI3SleE`7%k!jTyf$B#>4D29$q2pTEV@f)_gH)8g}qN*{AQ zCyXzriQ?$X{o58~tXvayN02mG+|0F*h(FjRkxV=3q*GYu5ZsFaLsLGaAtt=FwW{@- z)`3Ni?uXa`gv47X-$0&Uwfa4kusiz4v1W$b-eE~@0XW4kZ9JzbY0Ja~2~6jPQ+rN` zVm_jFrCY`LS>_$xA83FV%kgM5CC%vX+)UL=i@J$N$}B#0pL`mAh%_Yb%{`7^epcb~WALeCn=<;pT*A zZ_o0U^b9Zupp9z9&qInlF3WujYQKt!MO<29@#cHDF)^c+Nh-<>mXn?c06z zyd#gYKjh1D^`?%Q!`mT+;rh0lNP7>Cz%zIiwv_DoMCtA);k+hq*RODJ_gBbZ3>bgN ztMo;BP77<)Q{&(Y>@S|%V@%Xj!iLd>k}8bLg1FUdN^P(_)MRJ3SILL=IIRpAY0&Ya z6xuO1Q?}0Q=@wy=w&(BNN+>Whx8E1cGE*8g5;)+t^DzB8`9!5%?-PcFv1{QuR6#cd zaf(NyZ3ZZX>e1j2$|->*(S2I}&A&bFn2V50<^GOvf}~ojZp%=c>yrm2{XyUEZl98x zz}he89Mn1D`KXrByNTJBORCsEjXOUW&Jwx`yn&xEKZ&{fd+}_m#72A~jNz>0LqziW zBq96L%dd7`@SIle&+?ED+QTT`=ZSlwQd*Gq$VCW87qX4^iUzb{gQh($Pe6U$e*4n} zs4kAHCKkD%-Ob4^#CiU0Zes^+_M={=AU~!2nSsoESt{6T=3^!o+MN3Ivs+<|%FGnoY+l04v_k<>z-6}vRd!`u#v z=TGs51&d$>VxK=kkUxDlyjld_dS(ei0Go?lJ$5A`!etuuPd3$t-U5{pZ zBV%oE5g=)PbM|2@pK=6>ijuvI5)O+$ z@5HU#4QhwDe`Rjo+ZN?EI2Bve9xmbZ{3&pVhfT5ZQnPQT-#baZphGp2wAnai`QirK zX?jKGrcP7T(w^w;S-<_1-;R%;4sxch*hgSBjr34>r#q}^XC%C{rNPCC?QPQ5%9D!iR; z#&UwQ{l79-1=4G02yqSwK<{7A<~s7st#3|1HIp6-JkFzK|CI@A{~WpY*-uITbZZ#a zy2;gzq3|$4-#*e!c8UdT)Y~*#6ehB7)meSMOC7G^T9kx@qa~s&vO|9vc{SIhMBaK` zy8dF~v;WZ!VHNyd6CFHQ3ApY07jh0ZQbx{Ti?J+rb2#+w^~K!`-Z*`}k(xi!OMksI zkfbYDWn$HBG=J3CkPOeJq_J_Y$+>+{4ZonExqHaiZq7@5uo)KFB#92gtDm+&uTMn< zcoD)7)W?xMBo8?wYfbxyL`Fu%19+xzc+ADtJ|yoG01{p9RgBc()PdQF#5<f z>rG+@VKXoMazY%_P@n6QVA__*iCSD>|(73$xxX`08W2lLf}p4R8>nf+16 zi%czeayV+FE~@H#&q2=6YQ?iQFqKdvu40_&#;#z*CXRPNuJyzV!CZ&OXDM%}y}DPV z{2R8^U>|JAGro)K^sPGjaJ_ez1W8B|8M5dv*QVIr4+p*3zcQ{ZOmnwOU;gO&w&yU7 zoSMlhJgl_{$?q!IlGKag>-%v5V!KS*_l{G0c?I$u&pPaXirc!(+w zZp;IL@I3nGFfEsjLi*n?ihZ0dj`#JJ;wdfhKLqBJ0hY)TcSpoZBphW(s&mrDIT3Wm zKItT4>+4xPe-YwaJBXW8KVvWiKXrA2U#5UjoTTJE1eB~ytXLc5~kG{4!2A(I;BVm-@+ zl0XrAQzQBzv42D&H^Dp)1keE^M0aWw*l&>2N?XPJzIC9cK1h{Km#x|bkj;pupq%!c zR~6Mw#+eC?Uf`i4YO5Zfu|Anx6_4K!tp)obp-nHpogij=+}ehlVctZ#;HR3qt z>)pB#51Qkz@0Fo8@VAoVRvf$v)5TpOXhf3BpOrL&$$Pe+2Y1ezXRcuI__#WJjk*k^u1FFSNuEBeJ3qzk7!&3M+`y~w z#T)txw3&MbE1sK>tmjKEY!1^k+6Pi`He0w0zu>VE z=vlpiPueuxO}ZG^k>E+&gDoR1wWf76SEiqPq;Z`2)FoHwXKMZ~*w6)v5QQ7jObK zx{&AkWZHlzQ1;^;t0ib7ziQd@?c%^KZ`!nBarl*&VlHNkbLNnvD0JQAEpw%9yY=3- z{!o(rxTK2m1y-ZEk0qMAb|EdDx0`+HT|QrP2cmuP8gFp8JUERz@}!##dU-FyWw(5V zgHaw|tMhvBE;O&3d>y|}6D^(7=*n~QxH;se+y(C=b64u)=0G+L>qgc|dB5M*Gum#s zsv@fa8xli0C|B~OgospL5W8ESl~MfU>J*y@?YKWo@^Z$w+Ir?+uDio^F}zRUj0FAZ znj-X~&FEA{3}y409T?99RA=vj zd1eWv4vF&&@!foGsn^ItDzJ|GJ+~QEuN)!<*r@I2%soDfZ{w@5jqx;_&Prs{3f6~m zK^6kii{>DH!l(6e4g&(y%8zHC4J(w{qQf?IznpNYp=GkH0Sng;)CK~cE{?*I=E@B%(%E3_ z2W-M#nVI94%_p-q8OtCG?BYa)2NFma(@)G8h&@!e9dzl{4+FkQzi;kiJ!UX*%z&}K z^8$~W>e8__Bj4tJv}9yBgm1D%Sa(0^{#!b=776YlkZM^jV&#J6O}064xFs_2&@7b# zg_{)Nv;>vVyioH)d0a>|enbM~1R2Hb?wZu;Onrv&^G5RlgG^v&Se^(TUaB;l%B)*u z+Rk(XUOhK`w$Eq3H9O>(mtj2^%9nh;;zVjq^--Vx!><0a-b0~d-g_U6=OO^=1s`;} zFAp73rb)J=O#XFZGf}vyM&a}8{angcWN4?@{0>{XkCNQ@QhT0wPg?;6_Lj1o{Pv1d zFw-Q)X2qfosbOoZYt3I|HH3)Gq#82Fkc3MTF_JSUNQEaRcDFXWA_osKf&V^3YQx8viVE=62+!}#%+Sl7UuqM$)_I&~Swu!TU|c>73-2|fZcURX z-#0bmC`>ZD^fZ2b+rU1B0QYpYd>|BbCA~K}X4BLqLi$oJzn1-*m|7yMWy(Aj_0LS? zZd_8(W^Uf0;@-Jx6BCXZKm5td_SroG{n|g6{CVrYj_J)mNDbJrNZ|L>#e)=&(|C88+B5x4bQwvSpPILx4udjHR&UV~+jG11uMAhqWAY{q zWDJ_nTPoOLS%4Pu&-D>qJG2=5uB)1_%Y{7M-x7R2OFD$mrip8IX%ir-?S~~ZM>jX3 zcyRl-b3uwS`m3)=LS#Cykw<2LI^UHHY+8h|LUrMPneCZJ%!C;Rp&Rn_P zeHoDXMLtchyKK2O;Tx z?~^|G5Xc+RpFK1F+b}_q4+fHPq+5LHq9X)Vf2l0s9t&nOcdAQsR6>$P#%u+IwV_ zY_qeTvT|v;@a&{l3ErmnQ?ir(>9RNOJLS()Xv|-iBI6ZwUb`lHLdPEId|YIj8Ri>w zq6aRGlHNdj6M?hGro1)VcT^tw8xXJgeQ&)v?6c&jK)wKkE_c%`oGE@UZAI?5u?Vu} z#MO@^gmDh!tnV)95d6cV4$EX?-b_ybdd724;78c;J|>bH;H#d0Ny(Z{uUnnY&1*r1 z*U|Azmbh-n2nhVpWIMCROi)trby%bEp3F0V<3&F)muJeH*C_i)%V|zy6pPoKi?KAB z-Q7*Wchy4SIfmuq)yK%d%RYz4TocK6zDO`ja_bSabSot#xQ}6U-;rzy0>>d|e1GEK zcfJ0cLqHNTokrGJ8cZW|7W%vXcqJk$8)quJJSCw?$Ime9j2Jy`W`t5Cc<@1*WBN`% zTx=)uSGh1lpdhHux2`TvTUT5C+1tQla-@RvdN~yB-C30MA^U;+qD{Mck&BoN>ZVeV_XJfak^gSy=8Qjww!)V=ZIX7svZO&1y2u zsZnd#)`OCdUO{u)dU!t*ZHS)98Nq7i4$@1@y4XpQ(^a|SUeCVmx1Z58FXt!Ja?Ga3 z4njKBH1Mv?5fu(6D(oBpi@4z}cw|t+p1$%nd`LbpZPn3?GAT>2w*Nrgzs(bp#c6F9 zP&7W(;VWds)fxeNJFR1ejQar1Bn?P8Ke6_ZT<;4<*Jf9y<%eC4CdGOuPU;(FqjO;_ zkqJ2=_{!PbMz4E3u}>EDBiabGyqAgEZTBb-Ex7f@2f6U~pOBWlO~_MTiIB2PY`@&- zXC#8hwvi<1B^^sRD6RX;`DAndwFU&Ry!6|CCBF0&Ey$t024;{Kqa4#m_OnU9Nvh9i zx|?7T^4zfnBK>SPS&BS)9~oOWU@#x#RrsYp{+_G#Vl1}_y^sDGMfICM?*(!x^fMW3 zJ@eojX>K>BP!>nFr#^-lEP)d;t39p{&r>Xu(m(I-jF$8I?aghBUfQF>^s5$O&yS!S zr+bmA67=<(jxarrK&R4)K zx=x?Q0)f5WF7FO_S%2-(f@34&!pwqyPC3JCsxbSG<8+4^Cp8Iv;;9?L0xQ{c%V?L` z_W7X@EAG@n+y3nBkPdP$H>8K73ijK~Qt^nnJ0_xx-bZ#A_S|Wk7jnScFdSdDmOvsS zRx(wlH<+8;!Y;alVSFeK=ZjsO4v1kn)bj3wAn@z+B+ha_arN{Cx2{#57v8I6POin% znca%K*Q5zH&cn1rgNxL$_8v%XPK%UxD}EDt(NRYYK)jF^W1Z;$9`w`MQ5F0OtF3LT(3ig|>xO zD6u+o+v+D_1~+@S`#Y5I9ZX64w|C;D`Q0v86E z+K`R?_Uh=E(Is!=pa#uL$lD8-*?0KVhMLqGMqRa6Ow3{Gpu#n%T0hCu10?j}~+lV))dE0=q@3{8ZMG;`j+^4H#_QL*iNx_i0RK zA*wdtO32UL{dx$)g=arY(oOg8SKL3^^Js1Q!@E5dRZs8yfxVn$2woiJ%w8i+{5VNE z-ldhiGsY7hX_EMs7`BP=K_VN5(ax(Fw8&p@$L;EnCfb%2@#PK=q0{_s-Kwwu=u`IP zs6rkbqA;>6zYWQiz7a?slfPg7M%zT?9blI`N=KU9oduqHnrRJpm6n57){Bez;EJAx zx~2X=UjagNPQ4~5Vw>v}912Fjgv3m*R7dEG8eE*0>-;B&6q7pw`5S0IEJZMGPzUN5 z)?N7^lZtDd;3)pOycqzw@CM7!wGXtfD~@65gbJ2l;lp{ z@Xjy#JAU{R&n6Eox45a!zxUWr1494Eo5~R*1Vescg+NnhAo@e(cU)A-el+gL>}EiF zEIs>ySc^EG9(M5B$s58sr)OSby}P1sBdqHjuW9x6xOwo*N%L18P@dM(3gkLq2xK7^PPq%w8Q&9Q!0|*OR(${19k*Ue4iLeRf)ghyQc>Li zp?jMooesQlh3z1?@|bn_-b$Fu5EfTskDRLnh-rp2Q{}pv)e(EBnN~qGCTB7i)g5$Y zyYUIs|Fr!+D$c4QR~*N6mXykcAwK5omWu?=aX|Ipa#QDs$kTFrncg{S*i(rwXfR; z9$={V9(*s%XDf|sDFYMy#AATRF`7Vr{7pDkN_+MSk?@qwS&6lQPA8DsG z-D%tb-}Mr;<96A*KT_4p?((?{X9MK+o%)aX8(Q@3^N0C(*xL_)5~R+SH1r$7l@)=r zmtMKIM$Wi6q&=n!NoX_<(EDR*kFEFQ<^2AtZe4Cxu&XwMdiRitSiH8+Wjr&(fv#mm zv-wmxs-5~q*T7H$hLm&ydGz{NvxLFGe0jOE%3uAD}wd*vJ_P zpt2d28Yu`cCDD(|X86rVcD@WfuQRpLswP`EWRc_r+tG2lDM1?&$9-bLD0UNMofbHrd5_$pt zOf?pQSeec4%!I^l+jU;&l56^e7QwepW=_g0chZT+pgF3ghDG1i=|_3Vlp)eh#E@FR zg-^9_8*<*B2oi|#7zFV6{rq`G?kZD+xychfm={;q!!Ga1A=s>aqbYLU9b_1SVJUFO zlWTqh-x?6*tlTc^j|bp#{oF6o6+Cc6dVKf1U{k`MY|x|jI~xbrg(Z)ANr*i%kL)I% zq#}2gXHmZyRr9G~UB(H!x)(*nCH(zWapsK?b^lyy)0!(JiEVxHoQU-8gCmX1kH@Dj z4Gbh26!cW|mbaNA!(HRQ)9ck-to$m4YS?}>Z*@%4Cj<$O#3zJ1vAm5`76^K%om8{B zz{4)Ed3JoPtKVFgVviQJ-HGo-ZWd8%_=eg*;<*YP6)8$Z6EA-5iS$Z;-iDK#Hh&XypvXxrdR~W?OUdU4b)8~#r>>^HkZ_h~- zeE^hZzc2)yD>-_~OG{rO*evvH#OqbPM z8!P#?>1E12$A7IPiB*h|?v$4jq)4vI&ARNr+3|S-qW|^qeOdloQ2LziolMoN#?3w- zb7}YZzIM@AP4f5lxpktHId-$}r)8%22PcND(ox- zrr=M43T@J#9D^P6n82eYK>`CbC!PWPQKW8n%cZWwuD>Mu?F(YyoA3CSfFRBfZv}6Z zk4L}VdR*+{5QiLT5|lx4J%1=NF_2b!qQdp?bf2MrXQK9M_YPeigzC&#*944RZ6l7` zT~OVt^?oPi^Gtu9!sc6i+|jMQ1}HPp=3zOVTgTLn9T&=R9hH&-ICivi{`oy6X@@^j zV}AC#QDX?8h)ZK-#M6SdX$&nX-D*7>u=qJylMo&-Zf<6-solPFeCqN zBwy2aci|0q>Q4s-e=y(K>sj=Y4wrjIJ*V5@qN}@?#acqNwk(GL*L8R45JfXm?$}_l z>(HkyUQNBIn$Qx87xvn5NkAOnzn@TWE}ir~0y-usr^04#uiu~lpYJXJn$gEkd@H4d zxO5#tpwLz}eE)y511{rAYVd-=g42JKd2hyU|+!|MF&KK{Cnn&T-r-HNAw`TYDh zh8E$LABT^$vvB}XE9&si&-?kedzdfrtlWB>nLApMG|2vJbgRr4)|6eIpq~gQ_5a+H zQKOyz*LQMx#J@gc__OEv&+mJIyHveH zq9c4=H=Qd5!?*e8=T0t(P&bB!RE{)~X$%VD-|x%*5bdNKr|(CxJ4!T{f0g?KC`Ko|P^OiViGh2X0 z)abEjS173J^7=zcg|M>coyA?+P3(9a(M%$A;5R<`fFyD+exAR7?*C3YNeG75;feWF z_+9Tltm%>h&X~`n4YdmEL)Z~|Db7XE^7g{1TnmREe;GMB{@@8?h2==)7eK7>8AhIf&Slo*h@Kd!e& z1SS5#HM);nGp{%3yfX|GK&dW-{q?xSu*@75Bw`5kT|dW`uXbZ1OwP-33aZG$0l(rO z-;caQE9EXZ4;$$S171mcS2@EA#S(XKk>Y%1k?schEyeE6Un~|F0KtoZ26w;MBGJ~V z*1(WcnFN;RYXJzSb~te;?0-D_+Mzry&_>n^?Rab{by9aF+&$`ndNXZMU*AC_fFzz$ z%RFy|W!CILS#aXLXY0-k{Ldu?2D1TwOK73?Uo~O_V7)yVuNZ*6#DM=#EAuV(m4Cf& z4)T*Fs1M)TX?sB3(XJ16_fb6W*E@VrnT<95buWJEXMU`HZo)HT^8WkTUv?uUcQ!J5 z5`3g0d)@xHcRzoBIJ)=`$N|vlVOzd`?M?f81V8P#Z+3?cA&j^ef39)+(;oi^?^yBA zGt)?^bi2H=7p5Tpyf?V^>veRY8CCQmm*U05#U<>2n%P%7*l^gPx$pd_b0x(j!vWlg9QWP1kpn76A1WVej1JTcw;&F zSttIxR)b7UVi?!gezD#7uDq_qPceZv^Y3fJ1RY9vHcoqW$4DgJ1xYx( z9K3>$pXaEFxZfB5qjsP#`fGhP+D2NAL3|H@zuX-Wc6-Iee?2F^*L-}xH&v4Nm;GM7 z^AdTxTwfZj8JmzV+ON$v_P{!CI0)#@3zDSj4W*t(8|s2Z%?&I;*W-kWjU z7ERYSt0&R$;4PP%_(I(Q+vaQGw*GN%r3)wlc)$1kds0G((q6ulQ5S;Ro-JAEgh*SR zebPtJ$=s;e*8moJ!sUG{mo1GnT@n7#uyVqKLs6U=-MLPYivsjnDn&gA~ zyzzbU`T=UkamjbE{bT$c|6M$YgV+*EU8In4R|Ln_ty@OW_*HAjj6Kr!&38&M3 z_^>srjv*cFN*T023IheUKtg1bKH>^3%F*=sG3|8thzjzlgCXXFQP>h|sz7^#d&)6= zPdpE1*|3j+ff0&@-{PD?l=SZMT4&3^eKDReM5k_OaxBK;BU{($#3f|6PWg74Ads$3 zxrsRJ?ip;Co*Ya#6lqdjB->EUUZO=)#+nv_N8f_WNsPOhC zZP#Z2i>-+uhewJabYDxI@fuG-A4b-Z^mburY@TJ#zfWbhK#MeQwpatCH{W>{ ztvW+H)Z?a}W7-W=09xQWRYe>Qu04FMJ2Ds{@=f1-I$|GLcK2q}FJHHCsCu^4%5T?< z21&>XIV1OUrmOfnlim%|@RSHvzv{vTzaSj@EB{xV| zRYk7ai=m{v1U$=AeLigw+D1z0m?LZbOMuiq7JY*J?MH2Th;X07fw3ck9Bls1zgw)s zdp)3SNNXT^Lo~`W*#II|Q-*LOb!dU_)q*ID4OgO{P^v^{F>x?dS-`OgKN+){sk7_r zC0ctRMPXy=Ra??fd!tI8WZZC1A0cz=VyR;2B*D;ANJ_7#ba2Dh9x_)SUbC4?`S!Eg z$VP^V$07P-wSvF8fTd(#=HgqiS&pa$zSAKN_L1Po-!^$ncF&>T-uONPOq!S;sDcu5 zRJv<1nn&`x3>KuZXnzSC(SNLOk{2XbMDj7T0_^(r3-GvzI^jDW#Nfw!^!a(pS*rh> zO^fEkpz#Y6bQ%%}MJc=_lqF%j7?`9O3iW@C-VdgorhcYppEG znxG~J)b=szs1h!~&L1{0Z&4*H9o^m<{bbT!^=+FxMr388X&$-|9(#@+Cltj~-Ef<3 zFkhXy8D(bN_bUbB2M_t`etZ~QvBU6XfzSv7LEsS(Bq@_|O!slhy-u(gd0mUtjYD5q zITfdB+CdKpU2?saciIAz>wu`M_C$IRZ(8!VoDEK=+N{AW)l*OizKvP<%%P>dZP zu^D9X!}pO)T%o7?8z2nADq3=)E!!uFNLQW^S!PN^o~Mvs+riZlZwosTf^~Y&GtrUf z^`vvb`|*g|_p2ev+ws}z41MSxo}6-wzmomVm?0pl%{J#!s-$L1VXuB*o|H~+McB0yd2KoIpL~wOgC)ipH}EfB9|k&j7|LzWa!pCR@<=I)Qo7U zq>ypOk!*o*);ZWjuGiO2v325jn0t27SdK^7{n)oKm4jC-ij+qe%BOY}-Wo5j?R` zwbwti)&<}1cKz(R2@wHf09wC)A8FDReR_HgFJf(BKkAvxiOM8~JWBUCB!#iO_fqcV z1Wu)zIK*r>@KCMp=Txe?wLsqe)*UpppS=?xfxJy@vsg{=MKcB@`ljmr8^4@NLO9TR zojRuF(BGR(4=sWuEp>w_=M7BW9M(IHCy?yCVjx>sI74giK902_Umskw(P5kA!uy*N z?@t}BMr~f5o70MKZ$Vma+yU5euIG+M?8T90$G}C|$%BRHqX9u&TKB;0Mn#QhU*vr=I#XzovokDJf*~_5Gt= zM0Y+PSUQ8$nE|MOnYkZs{D+oIU^fv%3O7M%eG{uz9udzHmqEKA7|lQ4@e`ko*UcpT z5e@!P2m>!7bd(4q`Z_^k0bJhp6oD!F)QA7e`D2Z=(&2-%FD zvXsfNLhAWaF@cE*t4NY9BBj{v?W5;?;!uaqoe;~|_FwWLDy}Nuk>MFB9#bcKujOyB zXrtwCL_kcqhCH3Oo4E6Oa;#u+Yqm2Z?vRlPp7b|qwC_9GOOEs@)%W@DecRMgIU_+8 zz+NN1$KdaEC7N9&dG(>!kK&`SVnBAN#E!_gw@K@`+eC=_fC0B~uZ{-0AL(UAp&eRn zY7m< zj3K|;xhIb&D;7Qnrs9L`f!FMgBGQWV3WEW=>3RML>8jZSr%t?+~D2BMLj_IB>H zd^dQ3r^`DR0t{U`I_w!_{aKVaJhZY257>a@^<=}1T6J?zJE0MKG9W> z$6dBssTy-Dg3x^B5)toadnHFp!lr<=JK9Lx$8uOrrEOxqw0UmzzjQ)H9OzVTuM8ZYu*jrtSG#yor3ZH(G1=@~O^fkM!MFnlac`wk74zRAut z$Ds(9wXnPsVGv$@oWakru?IV6J9i6N#~7^Sqw1Z0M0lmf^IYLfuN~Rjs)uK06sBFu zRIWf0j_-R}-(#Zb41hkcXIZ9Jzfhccl_v2qA{w+7M|;?iybY}9x8ubM;Qu!M8}^Ke0Hr_;ac$LOBEeY}HKmI$PduQs#v zL-x5Fx7Lp)_tVftkF@POIS&FgWUFKF-l!Z~lApYMOR2^=cS7vZoAGo7QGqb$I&jtg z;Bg+Fgz#j=W~%QV5rqSk6nk@5vpw8lA%sMSYgd9`t-ZNS_)&N&u5_1q-o0>UjTdK~ z5mk@9&32&5wP$)4_B|`9JY{DxRPOAphYoA9NMsBzB?HeQtaq}N>O59tcoLi$y zl4wQ_6?s~bd5=el1cM34V99l5MC^IX%&N{?9~`4r@0xW>%}u+6VqZa90#i%($@qsF zizAM+Q{NUggv>_?*+ErKmI?XFy@Of7}PFJ-&!xZV)u&tNxha*@LO*|K_TW=SIe^=<4 zE3f(-04w;{o=67p8~fbHsL7=8P8yao z4EwkUz?1mQc}Hy$Li>*Al=j9G{YcKhIpbcHF+xSC1AJktxfwY?FmspcscP^0&n@sr zsteiU1u@t}x(AVV;()C;I%U9;6R;bH)ZX39Sj0qcVsiuA%wsBnl@+Pj&)GX~P=R)y zo>kE(^-HY|?y3n8kAR8L33j;F)@$WR=8vHc$o2(j%=t%pz1jalrR06eP;9w(9NOHVeq- zO7=mlE@dJJRP>bCe#~nP{F(&p>PwitK<%-8Y?hgZ^NUeyzY+SYfV3>^%3X5Q>O@iR zjZ|SDc29#u9WNq_8B?n9X~_D+YF$+veN)Y58AiM-RXP(O?5dzzZ4x1HuAg1dKemC9 zevCK~a6%R3jAwVQeH1g7+I-;?^AY;F;addw!Jj%UmrJ+gr@{e*Vs8jf?whn(OHyc5Hu>GM|HKsYFH(_Thdk82ozx(gp z@OO{cksqivUG~&Nj%+Z89U8IS@XrJP+FfG5YdtZczd=Jbg1}tid;DhK$|jP;hp&j` z<#!0j*%yJwpsmbpFp9t-fKUem8>&O!>aGt#eS>kkr1j4p%%+;%f&Qo@r}28f`vQwV zoY{FZo~7zvq2HKH;CeNKglXuy5zqBl;mla?+B;RAzCr+9?GZCs+}pA6@%|}3uNd>L zxa$;Fv=*oU+SaS_9GR8RSLFUY316Cn_q9J2Or53vsC-CZV(AVV9I#ibP<}4zUV!`Fh4bKaiB!;C~LX<{BQ`mXW9_`iU7SvN;=>*IffoN;72N_m*r{qxGHYdAw>S4C>&tlB07?rvQ;H>Ab$NVXFuxu~R zGT+&#%*U)^knzR($KWK02c(l5#G9puJ0ikrXNg%k6CFfClHj^V{#(cf;WHTgj7B>0 z{!Zw~1E^s;EHTe>>zyl>b_2LVNuXboW8yq`!?GEA{gzAL8Hs;&Vx(^GZ*kOR^B7H{ zhbRQUNuYqmQpS>p=*uoCZvph6lT`pTc;zFcXwthac@vTc+-(}!Cb#UliA=ksp@h3! zdv=$dOX{6F)Kdg}E9}Aug%zG2&pr3^HAu;{y@7;6ULg&fLX#^4QrwsB)tzB}IggX8 zjSF6VJ~WJ}b_;0R*W&5cJW#8^$wU0q;lA9Ko-Li|B^#^#b=vEaP3h&R?8t?$_rZ%S%! z*ElL3{S6XmGi4?aFOr04Px2Tb+{kY;nku|;HnSrH{3kzVEDtNkS*x6+7*LZu(0Shf zqYe1oqXK0Y%k)c{X(e_IJTekK1nGzk%cS*uD)%8ceuHlYy26$3O-ct|+KF3x4LR<@ zbHjE(Kkl7Qv0jmJNQ7*1*>ac&^*|Iqseo`g@^N73f&?W~W>>76G9CBZoFnAoi(IQM zqlww;Rh_%&rl4{A`kG7KpI{Urp8wX(Xu-{6zqABa{9J)SYihO?WlJ4mOdZW)%=cF3fF=7ka#WY-Hf~`ngz9gHZ5Cp?Gewesm zQ!p^fafXaIi#P4JO_`odjo(k}KFvfw(`PgsrYhanqYS#yr`t@hCf1*Q)4g5xf72(x zn+45CW4|w%cI4l8sQ3D-4f+&BKN( zUI^%IjBZ>ce+Sm!b0nzfO_TqjR3v1IXxzTkpT;(y*lc(iV+W!eJS2E>wka z1JwYrIDhjsw_8?hR-|&xIqlCfw)7j*&4&9iZ}+G~KN_IN8383 z?KVFn@~OOJ2jfSdu#FdfgyiQ(clF=d;47Aph$1Pgw{1tvx&QyH{*PY%{}Z!%W0Z^n zrdW-J8~Oon?@Pa&gV7y&9Shs}XK?YyoE)=^SMZ~aIRbt^e@`o(4dyEK0H7nf>LcwN zCut<0w*Q=YoI3ZHrXlUZ|F3EI<9_~Mt7*tFI6oAQbl?9HOk8fEXU|)Pmd*B7|<^OfoK_SN__q`9l3I^CxBNdc(2h$(g7zr2uD!BL`b!U%` z8oGJVvo-(d**fX`LFu|Y|F?eePM&b_;<F0_Kt9yqjG1+vHrRE zKlM_&-8+2LU)nYRurBu&(xzLnJ>snQtpC+tz)Lfryh6e_B7arH&)BHbchp%+ua@u0DqrztuDQH_Fzi4Vkw;dS<4cr5E0qxt~>!pd@lnN zx(yo(CwGcW6XEpl(6u|W3h$OTbSLB>Lmw0W*2nZegTa640D}gr0M^5#uOL|4XQc)~ zz4<`O;SfZOyEpoHuuY394tHcTJ5SnmBl&)gJvh)tgah7d&d%Qm&cnya?AElU=-=xd zo*mq;8W3X4P8EhW$LYhnaRCx^r^gpGNPV3p)y(jsf=UZ&ABHny5Az;*0ksH%ClmD- zkzWT)n;h)E>9V+*oKaj0?b?4~orFeF!GfHu)WvRY2E z!PPAcfcM!PPK@Gie(*93IaFin^APyQk7f4*xrV{;$&XXKoUShN7Uf%XUDzKE)n9rc z`GfUyziiyR0jF}4ig9&LpOtZ=0vIXG_(j{{_JS-DBO9-DI2yzTPD-;5{4Y12VG>+> zR^38Hql&dTr?w@JltQXh)T<*KNQUo_&pvgpUBUzI;0Bx>VwW|}r^5-LHUnXFaF+Nk zqbIE}Mpsr_HS^wl+4@W&Kn7M*N8T|?X%A$KJ+=+#Ad|y;O4E_hA$A$9&jWS6HbGze z)LBh^m~55|aYo_(;&GO1`o`P3gOJLecIRg&IgCNBG8?jcJOgzyoWBUkIZV!cInOa6|r15 z<4JJtv%l;sTdf{n8HY@;5J@M#_n-s!j)OcdUCD{(3>DV#OL)71xy{Pi!RD1+t9dRz zF?A1tJ68|%-Jca*=ov&viw5I@Z@N6YLtK&Xf}P@8ftiBJBMb! z6jfn~rBzl3|MczeIN)WKk~JiI>Y1_I07z(RDly3eZ z2p(`G$u;y&l{BzGLE;_%5$X&#@pmr;a_HnJ1Echnwhc^|j))AIFwuBHRFhgx~0 z9n;gm(_xU2-oD)5#b~hLhXl*JXpJL*=XF0nfR)EsHQ8`N)^;$0q=8l=;=rIru(;N9 zvO8Uvd^10hj#RyePe9eeFC3FG&%kC+D&XiAYwYMvr#4(PG;1lg9hs+GlA}` z-^@_FG=T>4Fe1?tvPtp+KOu8e^kP=X#Zj$Bg>z4!qz&|q< zs=2?SS6&l5Np^~=kBhOh{nL+$FGCxd>`kiI4+haeD@NWW-Xyx0`k2x3EXQ$Ca_ z0NaG`S~ook?z@+pKx+df(j4(^`T*4L278mo8f^1jfxEK*(p60TnNQMGUFfx}#aV!`0`E-@EJVOe>WcMaF`uCOZ?q~`!vzM{e`F?~nbn?&nrt7KWAR(F# z^X)Zfw&ChQt z&(RbIzX}!ad5S%Pzdg)IOfP#k0H7@8`SS&$2LrO5a{I*`rFCgy;kIzgNlQ-x$}+*v z;)*7MMiUcNc?Q1+n)3WI*<31qgr`fd=18Mr%-UNFh7J}_kec2#<_G-S4`WqqM{@Wq zyazX7>6<)X+zB*qmG{g*`Ur$kMPkt9-@|L=(XzK^%eHgbp7D55u>-a(^9YD6TAp!O znBe73`RI6S5+Li-6>015is8lE-lSRcux5duZ&>tfc~zcORlFviIA(i5`}A7bFq8P1 zDc_hjkjZ?z`AYJ@?~chia1JG1nCf>VojF8AFAa}gbx&f@>B0ZvH7ojWU+5n_Bl1*! zH2=Xdvvo=0Vq(q1>lQ$kse5d}WckeeVJk&J&4W8!ixH{D!zR=k!F&UYe5)CrF5-7b z7cKsdcsTIR$H|nh`)jZ4*efJ_?wcS@InZZ+aQr*TKOo?p<i!*Qv#C4m;mPQ!P*;DbuU^rU#ZtyE{&LzrGgb%;erw*gZ7}GR0CQqqlK= zIImPP7h;?TKN7@1VW1N{^LUTFvaD5Ur3_iBq*Ncn_(&8JstbQNf_Z;EM67QBzIn0` z&%ODPh;R~3PuPa>Dwcd|pzlu;q@wBRSl9o>-h1sjZf@JU55x=Rbjcu!qL@T6-!V#J z6mxj`-G@ExS>?6%##sjk2m4|gD8R65a7ZNo)O%}RyZP_@yI%x9&Nv1oN955;L1Jt2hdG{H`JBeqG z3{Ez?JmekAx#eH7pa7oj1}g{(tYSLnps{ttfHFKl@iKqJWBt-^NWtOG94BxIupJFP z>XiQVjF&xx>5XqLULr6OF}W*O^d^fKP= z6Irp~vQ85VDhwq6EQ0l%LA1{8)~R2~gj1&|7>7lEr9fM>Q2sVe+%a-H2`0td9OEa= z?ntsCn+)f^CaMAVvOclDgaHx%KP@ynv5%S8C_$NFwbrgS2JTVEFs}um5y;jT0Pb0tN$GX-Z4=JrZu_pQ zIlm2>n)DEy_J&ZH27sxsm=Qp@aMHMsfux-%E`^LMtQMdK2Z_S_3AlbJxcy#t5FSuJ z69Pd&cK5#b!o38RK#Q@I*`8mFI{9LSy;B9KESLVaP7^3l2~l9HvqXUT1w2#$%=b;q zgA?-5Tb49C96!1*v0lrHF+fvb4l5{3&RiWg*}y>j5FeIgz?tsO(iOuziFj}nakq^C*ou!AUZ#T`H30B9PXSO&pXI1-q- zCN@&HN^7r=Z-sLep_^t!$0T`7tyhoa1tqxgaY9NNI84sMP0V@^8%1upROSkzS>|nM z>YlFZr&yzYqwsh$Ss4ZK88)JMMCwuXYaZu$1noh#CguHO7AZie#{J8q!#n30Se`GW z&sm*^BhSJH37rb*r4!Ch@wFRDy)B6wssoR{f(XoGbcp3X%Up+Qkev!4$nX0<>iJtU z{Ne8<{q-#v70~8Tc49Dw1qGE284_K%e7g)qHli6;suNAF)OnWepP!+9}wv}-)NrBhrzd3h9ix}1I}ZEa*zmhySscyX`Qt_5DVB|v49q~*th49tjd0FMsxMH(%004L!ybP4bFQ#Zv4&}Bx` zwxyp6w5!?TG!b*)r35=VP<|9F?HRX;+7qBi?jV7p(B8?Y@+qJ!PHVjTb)Xh3_^jbj zF#$kH#W1Ezy!rA8(^k=Yk8#u$8+9bZ(dVQmAOQoU*8Q9M2MZs&imifr>|Z1;9!^Z8 zeiXkvyyb46TSMG4wZA%7+8Vz{D;F$L*emeh8QZ+09ZlEJWaL6s1z0Zvkh82Fp%5+u zD_Hb&z^*|?=5K4oA2oIe4N@MIAnWf9q?F)c=yIB&oSsdV;ah3oe+w^DS0Sg%&h9D^ zg&vA(=>u~bZ&BCnY>UQ1>l1*Es3j8Iv}uDYF+MN8;2nz$D)X-^o^Ic8dE9Smi9iaC=ZF*I2?k#?^m!r^PV}lfHFelAImF-3=jJ1vXzBgYfEpta;hdIQfz;8?K z?=My;Olud;#+q^1{#Qfs3W>Y~T-Y^c-F&~xnznWx_5Jtk4v$KX{1n<1DXYwQPQ z|BEJ5_jMqk`Zmsc7InYBGa(3p@4g`+sv1mD3|x^w?9I1pJbcBkbNnN&BCA&uJ(p;t z-^U3V2X5&xEdZe}&mg+GI&qbqu#xWg;|s0+RlLG60DQl~0I~CeA?R4i{Oqm-QF9=? z`S*9g8NibKN3Un$Z=!br;%2fXUvjmtx*@~4M$l$Rqo9i{unc79zcxhPnGr{QAr>#X zo(dSG;XA=ad<)MX0(jb?&GPqmHep=;)MH4W{=b^n@gM*A<^R2Z9J+=7gI?=>6POYO z{PJ^XeOSxy7vhyKWb)|=Q+#Cbdj8%ol(hcG?)4Z13%$6Y=&H(EdVMZ1s7~M z@zMW2^MTJCM0!6yd)SfuU*)s^pWUbb^rU}%5B`7ZNrUO&Kl&h;zyBIff9r#KrUuR5 zPcd$`(AzWci$l2=c#w1+8;-bQpZ)^6%3AfDDBuhpJcJk-XALdw%?UA8Qcg9iMiY?6 z{lkfxJqUOZy|PR*phEnjwUNa316&7SlXL?=3F@P#LnF6T;(coAHPndL`GNX}LZK*w z5v8i$F1wai#&9~{n}>vaeV z&{ziV^{D7(!TWx#Z5I@m+S4qpGAsSHo;gprw;q+d5XlnSgICxeKg4iI`^=#XlU~d_ zj~#C93LW@aAr@Hv`+59pZhU=k_=e8J0RYOUYY2@;meU=wxB<Udz$$cGxhn2B6hKMc-(uJ5pa@XY-s`EY)HQ2*H5 z3a>!We?*YMc?byZQP2-%`kG8V+OODm9b!WGh`5_qNCZI3=qdQ(b(m@3u$(J9 zYArLqyqueFZhE3xm%k>|g7_+Dn@(q;I~UIk4rqtjSaB>Ie+Kdn;qxfbxtH7&d}{yn zivfj7MrIc2ga&Zi%^60o7pPpVUYw37WU?JlGHxM<1DVPov4UbQE5N+!5z-|tz9;-U z8kU1;6oBB-TF~CxixGZ#`v+)%Ly}PQ2^R2O9OZC+z@X_-UzG(u4n(s%8mrH zg&g%_?ySrD!-}&j(s<%9`nZcv!?K(j2npRZ)Yi4d`!9 zCeVQP7Yqk7-yPHDWlf)c;{9aFF*pwrm?bO_u4pO*UxzxbA@5!Q!{61bxnUDoZzQGqpxpQ$ByT0dUFC<<6 zGo`YnC-*jXV#xmNDibX~*n46?DDwh|O?b6w+f23&P$8md?;P$Jq+tw*w2>;3U^pG! zD62it3w&f5Sc60FgKTo?084wlS1OSAlm>`&q}E=qXrTp78E}a8zzJHM9!dQ|FvoMfnKk43*zu+QqSz1J~f1g zXkb7Yc}FfJ2Q+#A=hCTqZQ&I17TmL9=mu=6H=^wpPt{Rr(+5lKEkgi1(w* zkwJ3;5^0pYJ?g_4^qU#cUfQ9mzMe>-hB`3seh;v!IxvUD)_X&}kq5>p zU}ykK3o*qI;|9#AY6%hupA$h!wUqb=_S(PHWIYl4 z;aK{;&uRr8{q1XK*VKTN83eQ7O)`)3AjS<<{dVBK;?2J8*Sp~HFqfHtwO zgp*QjAf~Kuy1RnTdmn^2sJ7{m6bP*Ct}^UCOVVt~UfS4}7FF&-z>-f$xBp@oBZl}V6N+D!XAgjd%m--7{Rr^p&W6c=>quyVi*Shl3EhQIVl z!5EbNgVk5$t@ux-g$PRn>|+48@`?KE!z!$AP^H3idcZY>pv(Pcj~blJ^E-soTHj=X z_$h88Iq*J>P{Fw`qXxAMK2pku@w#vnbwh1@COWXn`NJLT#%Xj1KS^6z8+3f!+@J6m z5DBXpI$^~=c@UTZv5zPcd?xbNqSv`Xf84>ktMMAw$#mck1Ew5K1A=LQyyO(&qwu zPr=I?{F&ER5txyF_<$rf2xw4Uyu*V>f$%KtjKLUS!C7KG$lZ3h=kly0nLD?UTib!d#53BhHfn zg@?ji2FHtdx(Uohc*lf5jOYgDS@uq}>}+itaUks#tvX7Z0% zAloTJkk^w37j!;x0@m>c&K~S3-!PuOE^!c*JsIq;GaLaqkL_U9Xkm9PR&^#<^|A7* zwBMV1-sk2w^eHdBM08AoeC-fxVt98 zbU-6awLk{cN-gC}rH}5oz4maxm9SgCm`||_>GIT`=FRa?nqcDgioSB2yMb|UmBkPX zE+2R?vJr*kESJ$Re!%)Ze?OGR16=V%3k(k6rYS)YxIGT)(C~|wK(dw=cBE;ffclk+ zej^}LA$P5eGoow|onnAFpSeC0j|NrINb3NNn28Z&^4|qiZy6Q%)*9safzoM?gRD+W z4!p<8Ihf>ur9D1I&j>)7S5-e)hyIvPlqyQU1(k0dELgEJAOKlLnwdTnLb7MhO`xSy zLH3&-q%$BeLI3z|C(eQ>G1Y|v+x1?sDTvWdl|(UnZ&XOeP~FH86tZ9${jor8*1J{^ zg692FKZNp{BDp{Nl+=WrMpzT!$YQi?lxM(79cI%&(}B?QGy&@%=drf~=2!c~*&RB2 z65vlaqTJ{a!e?oU1;L`CO<8#psZY52y!J`0I^@V_r}0^*VeTac@fV<6vE}QX+wpR{ z&~zrUgp7gs`CK!Xj}MihE^b_rliHJK4$@t&98iqv5`)$&X21(~jQ7%nw%7QynYVV- zOR`=+rUg-m5Li9c2!|X;yd9u5eMV~w{%GrDAAoeYRu2bOOYd0@Gz?V+UG3GP_s-OD zJAugiLGuO*uu6SK;KQ;(HqjbAryHSe{)MFdAXluB4d2w-CJCI98bF~rP#nrfnTH`a zyx`;@gpnOXOzIysW~S8r{QBFT5LlVm3-s;R4KqG{Cdkb(m&*z7^x}Sm&nW^Ly^S=S z^C0LL+YxlB!}%<~1j;oYh`J{m!poqZFBOkO1^*Zs^x+=Z=z0^)eX16GbLzSAtZG$F z^u2*;hqEkAtz9=X z^tMdUDcVT9NTD6^aS21U(xfgRV+sDWaR<8jfIaPSyw6BCzCP!Xx~o}gCWze`pr}UB zGmRn07Kd%$^F0Rh_pzU0T+rQTLfx~At*j@JZI9hOhF+0wCP<8o<8aTu9rJ;B(en~l zHGYGV`A^yIvXVU%ynm~K-^Cw)9bhz~S(-iAWgJuX`OBlZz;apRt{e`LSRnFhMDF(y9IuUFqBtq|T=kvV=+;Kqo(CRrE9#Pi=4t zyw5L;9?sj!tlo$pzeDB zt%B$o%T=m=pi@1vJ3-{D2VwhX%y896uP2G1QTlnF-Fzkj)AD6`RmAw?Ltn zmbmm~j>}=4D26Q8!t_4<@m6&Re~U%Xv_W#LVx#Pl4to~3^tmXx=?&mmdS7$5F#n-v zdue~NM?Y8Y8#-4{y4m>wsF{-(!}+;ms84EWTYREs9FQkI(Iemm9Pk{NP-t;m4zl%L ze9`&OBPwqVgD%%KTN0v4zouy*<24wxYl5d0qGJWZUlNy2oYZQ zci9i7_>!9U&pYYM5rov4zx#G%XeNOs6mlKzAAt1&zZMEso@i(>G*tRdUBdYTzy6os zf6?I4U!*tjL>j;L{$@<00_Ydy3-{0ab2DE*`)E;lp|28pRzd*FXgq;DSE-+z$RdvfB z;Bor3KO>0`2n&Gu?es9vfSF4_J?l^a50ZE>{?BzMXA?X@WV+j1lzx0vaB*OE!^M9Y z>kk0~&N{Gez0CdbLQTiZ7hLYg|6|D8FE#t0bGYy!emtL(;mHdycj4kx2MloOhYNo5 zA2AO8ykD*jUlxap|1bgaE@p}m_EZeNKvvvW5pL>Jly8SIKkKIha3r|5ztzxg*Vhj# zR*XPqFD|)7<`yg?6(`I)+>ytiL?XQY6iB@j-0x)*1KHqTHPJur^S^owx{Z({kFFdx zfYRl1kzNaSr*jL3zYUlFwU+^=L(rlLN|Vk*+NJO9735ZEUJ3a0erSqNXA*>Oo^O_a z4Bk~1r;}TX^GW{WI^fT`|8R7pX8V0#@XK?B^ho$Aw^hCK{4d}A@0tf7{{E@G`uqM0 z5Bg7zZ?U-#`?v4@_s_$k2@HMtSMAo{KmW65)ZRaRLB)!4NLK$Z_v5c?0wd@5@eEG5 zzkB?m-2S{u%QO0^7610` z{x-&~2;N!oO-_&r{!bp}&-?ImPvBQZum3!gKkw;(p2@HK$p0_K$>uNzrXL#!2fgD z{$pME*EK&s10VK(Zzy{HBNybC@ATuD6=2x@`uYFA%1K-#`CzPi{YxvGQou4B)}P`{jOlM}D3OOr^ifTffYu|9K|A?)U!lO#c0z z{AZl}I`;pcj*~--tJ`H(At%+ZYGlpN2K7aTm<$8fz+eh>#AL*fLSY(UNH&o&^r)KcJ4LzU9h0qBm&~8aukgt zt1}k8f(=?nZKkgvwDu^xDQHCkdLiQsjL#eMIKPnN^W_fOi$K*1s#P<2Hy@7q94eH5 zZkwL$8;Gw_gh-#018qs}K3J#E)U;PG@VUFuewNi+pfa18uKw=w#02FcCQMEU z4V>2ssSHS7{`Y(=-DE(8M|?^g%Ra^zss zhGF)i~i6*udXSJv;XCf7T4qWdr_ z=UrcChDCxYx#TF+R`F{Ucv`Do_oF{_mm16uSKR=zdODSTJ-->m(EDR(ANFjnq)zNhWTkhY`k4jy#}`4e9H;>6nx@gj7H_Rg7#lJvh*WiYs~k+{7p*|ixdpVY~z9u0Sk*f$dbYn)K6ac9HPhi z>C*mj?WfD-MNr5sX4wzO71n`9$W7E1r$UBri*1h}co=4Lhmz*gg_d5b?{;8IT?nxg z*YiQ5q5BZ--F*g)GNC_^;p5Se!;#A~1Y3nJ#K>FO1p(g#TG9Gp>okZ;VhemSEo8xc zp`rUiIbg%t-(j#qwA&2Iwlg#YlK6eNb3YvIah+hCen@P7W1WZf+aVfLUTZE_xrq$s zL!#(552(Bv+t^7`_)t$>0YDj#)b6{Dbs=uJi82vwuQXcsz=msDIGK(Li^jSfAmo8y z2>17%EmPp=2G6)>)R)Kz(n5-m6aGfT&0fVCChDZ(OVA z^H7IN2@!!MP%PGXLs;RnOlC`&f+Kj8mZE}(7+$%$lkmLM0C(YNx$eL)s4 zGc8PL{&flRxI!yFj6w5IqH&tB7}}-~5Adu~Wc`W;W>)B~DfpM^-XXpk7RUD|g;h#dx5k_4NHFqt^;Gl;{gi2p?=}WkynYgBx@t35$3t546M3 z;svNrnlKfc1JoB!fejB8o3iHg6KvZ2Ij}wYw0qE>ONioRsPmC;N-5K%1aY?>^5lUa zN+4)!jMo=vZP>A;`4sKSJOYM3^bI&{wmDnXk!ZKC_7cr=tS)SMLm}lCd)IDof@&cL z900oE@9STCSw)tAdT}hI$vxNZof>6J(sgWB6E_jM0Zcy~H0U%v@E<_9-MAG;(oL)% z-)9%i2KVwtQP)_>{4Qv7$MEv#^n`KQ^T7ihVy5H$<|D{;rX>DEv+Zbs6T7PDJ8j>f z)qz}$0Fo0R9dmo~H?5#Usf)h`H6SQBbwCzq2Gd~pCfcV8n(s&+>BBa2t=~XH*QXZF2T!L zeP7Ga*}?M9^5)>TZrpTWmqFU#2~kB^hCwgRyTkn{_mBqFZ$&FQsKkbqeg%W?j1QUu zRx+;=PDrPA^7XX3VjLPO>D?xhJYad;xI}4_4BqDITvtLDbUG=SZAj=&-oi@pE>KDV6vKy%a71pce0o*n6A- z=Y`|uGv4m#mnNBG*q7BO8+byf#mDwk^qYc+;8Q;ii!T6;PwaieNFD=vqtjXLx95P=Wb*r*G}0l=DDj}iox-Jh=#ZkpR?4Zz$%!C5R+Q|qmzTA_vZQl02Ld%~gY@pdFBqW8uSc(V{)+sd~ zQFA_moE`+PEp`mLXIT0|bCf>rF0NMDxPXxS^N5sL)>#p#S2R--k=A@Fa)`MFcRV zs*lg;mx3;DphH^15e65?{Az&sdtlv@2et&{fv70p-#6C=#|GWKq@IoId)XloOP9}e z;vg{VFbxOF8BINaEBE_u0dR>TXMTXG94?1+i12bnO?(+G?Bkwd?Df6^8I8S9Oz|>d zfSeKE;AGM?w09xawu<-99uScXC=~NHXA$8Cqx6>3Sab97VK&ThCvZ)6hG~c6LK9RE z?D8_Si!BMVEdU(bvLKxO)co|EM2N~=u2zwA4UdxD%PtKBRrYe;9YH*Jmmy1@t#}q< z8rWcYSE~)uhuDgltFYaOC~B`?b?Rdre&~LKTzZhJ-euJsvKVpZ&tl|nA*eVjEz^e6 zIEQlR1e9)&S%gC@ROR`c^8_JkVUL8S(2F(+msSwmNYIQ;phTsYxb1m>vF=jKIohJ8 zQIj|LI}&lHbfbY-ktESkR%?l)3iY3CG0 ziKaF`UPXjKDdB|q=DYUwbudZImIVSoteHR*Lt-+6cNqV&0rAu;C2E!BV!B0~(|3a5 zK_t;|JS+Q1kf5bp>-k~2Cg#>#qCF%KU^J6=p(Hl}p1Ke&&-7&3778;2;n7afu< z$5_^12=ImB{c(#?XVV`y&l4^)2SR0s!>shmLh1sNsx>(3mwjTu%%T2cRgWB@A`ztpV}_)kNzSk7#0^7avN< zaTol;f=kd~d2kB@L;*5`ki5*}LvQ=ijCe@!g5d5jgRG5q(FT+{LH{VnlkTD5oK9~7 zE#Nwh47Nc}&=;*W2=W~Fci+kMyp1m;2`ACENb2xv5Hx(C6_~hi9G~TPRr(PFTf*XH z14>s~DGJBjr13$b%_HcrQl^YP&4w8Gl)suB#R0*m(2a%UQFY?^pklKQOV1R251JH+ z@>pn~puVOs5x1VAxyV|M(?gF5|NV5f#B~#b3?Jn<-ewN${Rx*>>ctW+{Zt}*Tl5^H zSdD?gDPpwr{(&mukpW7mz>)#;UM2zYWm9s_wpboo99D74ysx)ak74-aeWttlo4UP_Y?~OAyaBMsLR_G25Z0YJ%BFiI3(a+}h62bY z#Ki0rb6o52a(UOltD-T2P#7`~#m_Jq2;(v6%iYm=JB+d9Mq(&5CH_eWj;0e5JkIbC zZArb)FoWCFQiGM(#e0aWWMT&0)S8WfwS9b5vD`GYzI5chW&3)s2a=f(;d{%mQOt;p zH!2d?)jblcRYjVx>*{o-B-ITlL+JxzE?h0E$O8MmmX@@}GSzzA=E8@XGCdkF5Z4Ae zU&gAhNcU>{<|4-gk18OV*b#g4Lp=RTY7@DF3_?#H3M2(nftpOtqoMM4C4D%Npy=sm z6#>}z=lu2(>P>j2;L3yJ4Iw}t?-N1eg5^r`a{p{M>3Un-i-e1}M~4AE8+~T?6kPxa zpHcW$UWFOb-Z!bRcM~pk2$Bnz`g{Jo584P~#23YN;L<6ww7@z6ocP4Qur{bJrCou2RHF)lHAe2MvH?_4b0J?Mp8GjNgRyS~2N;9m3BR zyv!$WR~z&1`}XJG|Kqt>5hdibcaj&GyX#+=I)PBA{5(ezS>Y!9ch8ZoDp7sIO~}mc z1~&mr)Nm6%f>-5m6RK!~&wuG}t*OS?!=DrBgL(X|Fgd^w>9z*Jyf}BwA_!6c>$$YR zl3E8?PYpRkS0R>6G92`A-1u%;w_Qkl?H z=K&5{#09J0r;eGZGHVC+uyEEP9xlH;f=%1s+bxaiGAFnbVt?M>4+K~m5wBns__8Te zc$6y6eU*mfU*zkgk%&u+MS!U@$?oy`Q8D?oeK3Oy8;(7<)O!c>1`@W?4vWODAw~+T z2!iLhJ(u@ftE5@H#Yf`g^kTbu+=86}XA4rEIWYaUT>ri7rlmoK=n6CGP=cu;duSpMyVD^(cU)sU8YA?}k1a=Kikc#C2Z=Z4Ai*(ZY$!6U# zqp!Ttx&v6Ny$`~0HAY4-iI%$bw9ec}Wk_DarFiA(^V8JpHv_Ml@d^l8-Ran?WWJ zdORKqGU;g*rgn$9H!*jt=(s~}CSwjzg+d|wS~@_u4iH2uTTO2f|Q~==hZp+tXv)j1U0%ZCSP38<^c^u zf}EKSp*a4h$RA}Z763QEtqqQij}Ok=zL3-~Q#3HR-Xp?IP_>uHJ`fXit@Nvp0ac5( z+UNtPajc?C>#QXmCcSFr4Dv~$uZW#4?Qy%#e8W)6vk?*d-6||l7HBq;7gW(AUhbl& zI6X0{uI_ike8R?|s+>1=&AXf1-qBg=D)0DGkOPe&rsLzS8R-}CbL~`*N`b#i!GAP) ziF?f0vx$!jo!`O|()6lh`V3fpY0aB^+ts}Ja{e7X%jNDVYN&5iD`oXlo3@@=!_4Z!N!BY@I6Eh|%WmcCNTfkm4=xVT@qaiQGgitIA zkBS{m05_<;hxV;~LIvtkYQR7(IFBY_F6`cp_gp@iv;(r{E1zN>i#Gz2P?h2ORH=@f z;2nnWS%l}w=JSIEVG-BaGzdDQ8-=(^)ix$i5f@{-#Ea?i72KKSd&t`B-ivyot}%XG z((EH4anTxiSX{;@285nqJ@0Wc1|R`c02uyNwLc}85j$pb;Fk&fzNX*-)XK}v!X(G; z$Xi)3f^wh-pe94@>|PtJOG*7UGzFMb$1+=5I)Ni%T3xx&ValP&eKdQ9ztd^EeZp7ERJ2|#wbbLnth2beFVU8t+A z=xA-8!DPOr$NP$lj;73C?O{sVLfEmI#utItomBXWY_v};YVhHdgtSp~>h~J@i(Mpd zcv$4s*oy(bk_14MF|P3Hc~7A5by_aBCbj~mm}`1%DCrJh%f7uprAdLjkYy`h#J>7( zD+&^MN2MrQ4d0!ni`=w~NkK5SZ5+O_A^APB*7AKk*jI3@PeVmEl?TOcE)|M*cPUa~ zqRDe7-?xb+A2qBH#6;G(czG{ebKXWysDg_Yh+ZJ+cHiU&aJ27k?d_86euvsOpB3bN zYOtUFqTo$xuztMu)kyWyc$dv*N56l5k1;CW)O8@sGkNzzqCckWe!27Cw{%^-dAK=J zI`kfII%9>yZu63w1a=(&2H7~CiL0pt*H7aBK?(}E)+rX>C09X14E;^r*&uBN2&DIXaK3@3?WLsnjOy{y7V#g(@sCOIkAvZYlN4Q|~V|A@S~HHl4+{10kAOsDPAiSS#6 zq9Nq9F1i~92^cx5Ruijtb!L$)D)amT+k$|y$|Se1w3q^XR=)%L5xIr33HdVRC@1oz z^MqGaJcMsp1Hh3?yCqZ!i)v5}Kd>Dm31EvBHq@TjGbJeQ{!q~qQrJNG7!}sdxjeP^ zbF0DXxZW#XgH$WbDuZ&9r(EoW8=R;XInW;0`^bw*yT{}yIIR+0we&vD#hha+ zWqptVzMwfMulH1CR=U2Q6~)U3l4onRsHrH)`g!=p&gP_A16rdBmya@O1_hdAdMJ0; z1|z!$_E@@YcU*mNsRjufRdfrNv9uP#Yj$1k;Ug-OwDwaz^W3`(x@mmLH9LPGh>%6^ z5KNk=%q`tQPO1?I;UGN2GOQ1KxniUxiMm?};frwsw1i~m;s%M>m*n92PcTUjQ*u{A#80F06%_rnAZ%*K=r(%Zm_4oPIP5t3P>(^(b5XJ-3boM_3iyeKha$)F6P5Ek`l>2L~vy< z*$kp;zP80E-G+<1%(fIhSwXo;E908XJQ&HL8$IP#UjFcLsOt_9!J9z(pA&Z{d~PQogFD`5Ke+q1 z+0kEgdO;|oKE!O?2DjpP*cIFgW^tbhL zhj^4eR{$$cAtwB++ff}?AeRr+-5=A-K_;4YUJJ3BE$r+J%@%C_DmmbE8220YD37>R z_3v}}k^sIE{2OyI5Y0X*?3T&=6)~YNd_}GJZC5qywD9wGr!;J;!s#d*}(KcPJm86tTB#|4Kd-5A_yFQP;)O+`hyamsc8R^(#XE3iO zpv3qK)N5BuCx|;RpQDpzUc`Fq)VH<6Qx*eAR4y!2jMP4eD%}9^l>#Zcc%qU5KGwR^ zWRe1O$!kD45@WsZdHJeo5>7g4UhNIs6=^UZOYo*=V17?s;(R+Yzn*Nc_)~s2n{v3Ho(8iKjvzhYlS0V z+BLq-H@|$K)+zPg_0Bz80y42}n3Go8^s5tHCH$Mt(nY9%o+a0cB|bs3ooEgTEmAlY z0S+(7!urTzt0LZtCrfmPw0|WjSycyGuuYXF(=#D&eGch-1g~g9Bku_qqcK2>3YNQ} z!P+6tMZ(NC$*mtH+c61dDM>ad6r?jX6a;cp-*7*VvI@f{U2J)u3goqD2A4qA zWPP#U;f7}1XIN1B3D!o2+&XA!b}V?A@JLzfCp#!yWZgG@L}U)Agk(1ri-Ux>BRH;o zn zb;KA>aP-1a*^|cbEs= z3-Hl`0ef#hJ5TiQNO}s`tCsu>v_O|?0wP@p@4CS%Ed;&P_KlG4&kZa(o&<4pM6@8g z-UGMyVuQOve12G>&-NpC$l_gGIsLLe;y}bgF#>Pa{Y(0b9Mzo%!R#>r_zx?+Om{BV zF1OBP#m^1PG_?qJSs~rG@Bf z_`eS-y#+otEuEtqX~8yhgsUwF+0_nvPzMDZZZZ6*yZms1HseDbvglCGy^IB)QLeC@s{oNWA)l4j=p`1-!sj(XiGI>YGQ=XD;R+vyEyd>mmH0?r=N2@)i}^)K zgI5n}6=^ujkY?`Hf1I^_KSS)u^7V!N(erhOXdoh>KaBb=hzc@FNrHMnum+^DPa{P3I*#iN zH*1co)s(^1+E+Ys2d^#M8s%AB--%%N3SOBpJ3kfO$k7iuSG94cuzLdSd+iqSp63H( z`W*z!e$_1mxO=fZKs02m3BiU|1%|jeZy-o@wKxDHqaP~`FT+B-E0vMmMoF}738nyU z?%d(c;2cnK<)ss1oL3o`9i7HRD5OH*u}vUwl)k{EmZ&PzKEtQG{@`MhT* z5Jmv2*-jm@3KJrC&Q0A#CD>wmWs1&zgVTK)& z7ji?EDRVw#a1$VL5i>2w2SB`?!Eh3k{bioKv=Y&5= zPIrS0SUyM~YZ`5FNK;RBP)S`L1YXAX4u=GtLI%9-bVaAz7fLk{2`xTYtb}799U~WG z5J*&COnutl(bM8b&;c_G^y;llu05?O_Al?~wrx-s{L%e^aya8())78E zWPg9}^!2?qLDX7!WltM!wFT8fNUg(TRJt;Xpxi3wtqy4H z){eaeimKrk&%Sc9Ux9}wU>t`Jmv3A0DT0?9C0>0W^=9(Webuu+;^^S8-c z2>ps`PM=;u6efHIwmq0CaSd;$?ldcn=v*Gu3K!fTOOrjs%+$1V{t+Wi$|>;!Rx4`S zgXSM^*VUB8DEp(%n`<(r+3|E*QK6t|aF!n|wx9Zb&jXno!Z*#rAKZUF)m@)%`&-*h z@4|S%uHxVKcDo2)GU1wS4X(oE8G!W^j@M_(ZMweIr=5;>sw8#6Cp)sW6RoI;ZTx@~ zl({VIObC2P%3W*o$LkJt8o3_r_f7zm0iIKueUIE0eE;9%bW7~pVL0q{V#kqYZBIlp z25?U1Fg3_E?3kXzHbzW0J)kcg;ykYJ2*H!;zl=&NDd%_Pop~6J!c@@JH&W%ul9oDo zB6OMivI?ZKzQ*qLAvr!4KI>+F=#&8^1v)_tTpM)^qnMtY)25++!=F@ISU2mOk$m2G zwz4CUBtZzPT}o^pa13L`{Xh51|Lhbs<*U)KCB@B_gXUhJdxK}f0Sk6)*Gi!-zUqRZ zFt`C#vnd-~ZYI#zh)}dJw}KOL^2Ug^QD}fg2#R?=6o8wgSZPQf%c|am4X7%0l@ugD zLZB4a*_&#-$r~c&zS}|&WTG6gT3vG=jy(LYoz{NrM9z(UzhnbTIakTzvVgKxt(deWrrmaAs zWL{w40VCVHG(L~V1NsF2W8eO-9jhA1Y||VzopQQ-gS!|OoZJ^iL_04GLig+5H*R#% zu#)x_7lr2S{OMWUtO%|n01n(P(2WRu{Gt3#*cUQ)Fq;BMn0jQRDp-(#HShJMH1!h> z?<&D`0?;+iL-D^;c_`np{c<1jv5$f<9#BUKhD&}dFPD(SG?kZ?0MF>#7ACtp0D|K} z0fDdd(OYIkiGMMFm`iS+9SKnQH;!J%C4c*< zJHD*F{Xe}2Q=RNeItrPlpP-~dy0~*3#N!b6&&o}T3be>GPpn$?b1I{@W`8WU0utT%twD6f$Y14dk+c`QC(2UVR~<3la7Kx2<^cE;=`hwvzT-cxK; zzlDKo;67KNAbg!dC@dz0z25b0GGU1ee=b^^_LRU78y~d%NEa+O=mPJ>JoY4KcNjP9knY8A)0x`_A8sBEx%uI!Z4gt@ z^Xy59t37#dTRJ{rbD5Mc=)oR#5WM7I)}e7RH8I0f&W8xskA{7kO8u#h-{?cJ#`{y= zI%|h-YKGq|Q=UhGhridOPOQcx@;Cq5rptN|a5a9H(%xlXb$ijvvsB`re;4p&9Jt`L$2-j#MzclHmK&2;T($5QKeryN?UDni25nc29VPa?sXfXm8yK3*3;t{ z;Vz>v6+uDgLi@m5F*`VS)qlP#W6Y;ecc9NAVfJu--bQG-kN}2WOlkwS5Y9F0YWjl4 zN%6B)w>lFyUA4$0@Yuo$im>e8!HgViXqKyeKPoN3pvB7}W3WZ2X$c)iP;exizZ*_` z3Hn36j8y9-(VC{!?^B#wRk|S$Y1*kYo{_u@RcUDo%YJ&}i_n_N>7Fn*;SUW7^Sbc$ zg~NcHe0G!(%ku$?2dF9g#J!~icA0#3UHpby7>VU?z1#F4Be%hS%QWp>9(>ulk;Z08 z;?jfJ^zRH6HUx*mlC3x!=LXa*uqi*ybcl4cV-v2wU`2sFDT0&5YrcxT{0}Jtzvl@JvS)Igt6|%IgA~*BM&41^e~<((AqvJGz() z{J84dK@Q+sck4x%Lv(4M(QXZGpA>~+a#^~Q8Zr~v*^m$m0Zw+(+-ys5OQ@`m`!fEB_1^3iL*7c2_fYJYhZ7dj zy-7_-1Y<;)r+?jvuC(BL@hvQldkVO@>_FT?iZynp^48Lh@fb-G@ahqA!)?D2{kjI~ zB~(lh^##wMM%(4_d8h5HVk$c%!%wh6UknM2Ac`mR%Aa597wHNms+0p~1@7Wc1;J{# z&#&q*g2)qZIce$bnc~at=@FTR(G`h0@g<{ohO1Bprl@emQSqnr@Atw0gNw-Im@Q;* zG!ge*ZQM$L`iGm1)i^;NU-`?}&GQO!W9p{USVX|Q`0w?beE9hRk7Os!2I;ADvv|$Z$AG$#~Y}jnKIRyn!O=vQ@3-V#UykL*}Y7qwgZlSgm9-Q76zJ7 zXt6n~S{0U;vy0jQhj0D+$BQ85kJ2|F_aYGs*EjT}N za3BDmN8SO=Qx;BC+G^|!xgBZ*=jo(yS{QMnNo|Klrz-WKmArjB>+_e5T7l)dc=p!)qZd2m_sHvnUKfU3 zj!?8|4CbeS5Y+60nN_dMhz>-iJr3;wxwhg^s(t=p&P(LL z{+!Qd1CB5#Ev#(@Qca-dtqX^$$RUe1m?A3ZJicESG%|7cm0I+dy}%IwyP#bDkav%2 zMfn16s&y}C-4Zn@98rG*%grC+j{d;813GzR-=W_Cq6#}&fh8k)3TSw(8(fyzpv`l; z;CAQT6Wy0|J@s~yY9USVZ0G&lWMPH=0Dy6 zOkaI5t@Nyt!p>&G93m|ZA_->8 z4>ZDHrdZEC>8Xk=;I4eR6URA%$}7c*wf6;fS{|T;(ioqv=a0toZMtC)t52Y9`x1P* zi7^o;Dd-gN^HdXD8iQKK4986H_S4+nfGFxGW)i_-m}`J4#a-~C>G@iD?V+q_dgf^K zA>4|_$rxHeb;lHaFJZu8@U|^E20e*KdsfXc&cLDpjgZHrcz`Xto<3Gs@Z5!r>h~Z8 zM*_MZ0Tr4+!DbkMmS|uchmUijDB=DuD5X|7s@*Y3gh8n_IX^ zHG~x=5I#*lC=HvZyN9V_uS3i?#)Na;fA<^;`k==8su~GMuU}$KJRTAM$U2HCr^I3NRZBkWqLtKF>J2JwA0>J!F)Nm5QY@0ew)uXYD0ia8_(KA zY%2r@?IK`59zWiG7-^3-z$BG;h?7Fn*E{^_z1|Up6z$ zEMoYnp%OPz*E{g0Zix-$bL!#00w-40pX)$s@aiy&zd&Y>I@1|`N2>PO^0AqTzvWE~ ztwCo6*#ru{7qNYS4Bo#9T)>+DFc^Fy35VX^h#j=#2t9r51DC77@Ao`GCzh5TEsEud zBU}NGHDxsIAK8E3ukGQxO-@|Ya6o9h4ZCe{RirN=KXug_XHYO=Nr@3Cw>oo zIX=mEh3$!eWvAkLI7Qbb`S@IcLtHRS6IA6*kg`^+-F6&53)G4sV;SIqkccolLu%cJ z-S#{1=GARX05uxD8fzx*<1bI@0QWNu@W^&iW}`C#pfht^YtJF=oevoFM!OW4DUyJi zlTV&5tzs{)+g-(adD6AdOJinP9j=Q+@86$$aN0yI4oZxWWE$q;`aaQEg9_pMaBIz| z(WB^H9SG(j2IqUMeL*Ey=zO65 zk4NCK+UPodm~NDI@1m>TvdC7TP?cKWzptM)caJ#4d&`R7@IcMwr~W=5zAuLI_sm4t zfVw9KaK3w-$hvAMzc&0x1}rx5bABa+DMKk#b?!Wo0TfU?uy&U)?cSY+`2@S+PBGrC zO=PM-(AP|UO{<>cDDUIuaifoNg)?OdrivumPkiO=bg&ngWn18wku~5)SOom>k|NsGF7lD$FOOv1#ybR25uV2xOfg z!F0{zrzR3hpj}wl-m~kpKY)RwPb7>rF~(5>3_2;n@xrjMFv7N_-&7!*Ala*8P%tkY z=}oe#A0^B*U|o3>!sws}GPeUdwS|kjMMwZ^Lh$Li&^_uR-0gUAg+<>o3;GQd|7odQ zAeS}Zs=uAc0MjGOxR&z^1xno5Soq5c&_E2VGKbBo+_)`I6+X3AkOp@f6r3{eQ_zKQ zaBAu^T>hZ*_XC~EjZVh5Q+T)D49i*P*D(jU^1)NDM5x0guk3C+i>!DM8z6tEDiOrD z&RkKZG6Qh%pvNTfG_FvY>KV4(f{FrfFf52Apuz1>4aqsZ=Dq}hhEwJQ$OGl7)%m3h z;^d6;5sqPV8C&mO)6<`RS|}Ia7p=CA0Fu{l`h9Tf=U;C~@x-Z(gXg_?RftBhkH}Nn z8vvhcz{x}Gw==<$ZJv>II9nHr8|;V%e@2WMwz*Mv?|ZB{8oPEZ9e)iXGyZ^{p{B>f z`hhn~oZ@|1Vc9NuD-rd#gB?dW-HLp1$^?Io`1IcFwj3(^85pN>j41^VZk4W}dk~KH zD1Qno0n_)b;le1aI6{2xVJ*z0`r_k+&|%x;9E7{KWDXflkh^PWrY9F2=y3K~kgwQU zm7MFXhfx2cN1bZ-BhP5KsN^u$;J_jb95Gm)>zYTd5yZ;7K*0#3L1g zbLaBOy(2L-e-y>G!_8T2?;xf;#{x*_ z^~Ji-&QuuxrF*K<3Ghk2Z!SrFH$wINNI5P9_Ko8W7XKO=YTy(3r46ivXomX%ns+@w zIV0c&<_Fk$g7q=$&{+sxzc2KkRd=Xpj|iXv=VKMCCvj@RM}}ZuDA34TgvX%R&dlp< z+S0U<9XNi^hn22uYH-i(p;RyAZ)qOgXj?ayO0JqGc8A#9@#ep%qUAfD!*&55Nx>DI zGCe_OYDBi(bhZsX+5J8masl`16AE;LA?FZdN7?%?{@wB@R=y|Sn1^43{R&^I1BlU;jOls>W*tQi5Y=Bpa-vw}TfR_0M=6eLtADWqdzO zP#Ds6N%IHvqCeH4IR@$bfWiwbq3!47w(u2vPSD~F+tmKBa#KzpaD{YvY9`<#I<3vX zpB{IACC&w_Tf@QKVNxBqh+f3yx~rm#?QZl~(9Xb!^e?k!4JL{-M7CDB=1w zMAl&`_Vyc{kk#To4VS^fq{aVMBm3x@uW#exXz%JYr!MvC(@VSI%9P7OWrdcO3{nHF zEZ&ONaW$!vYjhCrYKZ>SS!A8&W%@W%Zl%hn&8=}ikQ6G(6a2SA(bjeRV&DFX5Vz|E zGbWrm|B;2V73^<)?Be7^-8Fc&Jx~e(3i+8|-_HW)rd5K|oUiy8vQ8TQh83o@%idh9 zKd^tBJwK6euj?q<8%X&{jORg^82G4t2u8%uh{X{YGfjeyR`2<00~Fm{HbU)6r$^IU zpx4xc4_oVnuEJrCIg#KC%RWL5nbsGpjzx^++zuNoDlQ1NoSUJy|2>NrfnW^LHpzV` zbUqxV`yZLL>yN>IdDRZr8S~C8_cuK70{`i5c>P)eSOfj#y8cI=kFG(cgzp%9Twrpj z|4%u#|Niqeh|=J%eZi6Nf6A2on@;_F{=M8h289_w0!jbtb^q_b>t9*I|IoGn{!aD( zm%mfA#S(I|9H^~rLEm6bL8TvxKOLBsQ7Ny8Y=@=4m2dL`DFFbZ=uk%s>9jbli`F08 zo`#+a|H02mc42k=?^(gjffv%RGKNuW47xN42-&-Y9%|2Kou1dfH0j3n-_;ukv*`)7 z>JgS*cJmV`hm9D89`*rX)PH*aP?>w(+-|z{;HVVcs2$kZh}AOo3e4MBDv9VR*@TFW z3v!zvG4+?Hx^A~*R!@u%sc8NIJL56@=7^KWY<67FayW(j9~sK!1;6mSWL%B?=EP@y z-t6-6TS1b**RmO(ta*I47CT*}7gpO3R47pZ{djptDG^}0OKK{lS8qn1H&4`X?(bWn zZCYAF$lg*BnZ-dAbu5Aw@-iw~Mp1K!G=?A+&5-q7TN@hY?_EOWS1tHSGMx!NC(v<1 z^5w=P_EZtL?K+MqEe7uGT`Zz^CBivD$0Pz8o^Q!@I z>8{}T2>A)d$`T>^>9?Q!h`0iJb}Q^m!TXt(uHt3`*rwkdx9z49`x&sb#QMTTREIoW zJy_U=nTE*Q6~CzHQ3Qx0exWzXECJu*)IKyKRJ&h3bEJ#TXc7Z#yX}xpgUqhKzsl@2 znA`nFvV^vLEkF$QYl{E*H49NNKKyQkLU-~tdWULxu&_jF-)VtmYfz*b{^g4Gah(C? z^ecPTwZ$`jmBv#ewd(^a+f#~N*!h2}7o4der~z^8$!L0cQLM;y&hi9!0P_6qBqc-1 zdOanSLJbZqdq1a-XBv%-4_LKj)k>T=_5Npn4S}NwLRxR&u$YiZ6a;Fq{VeU&FO&r& z?zen0q|ZXwOTqaY_P}N*XBaUU!3CZE%1YjUU#xogxeal`Z0(Wt{)VsDJxI4Nsqf4? zV2s`g4>P8Wf60mY7oUXh`oX%6(II@q=06J}LRMlo*ML8SPj*ix@yhg_xy$1^*t zEVR>a5n;ch=-Fg!XgXgI+CFOMl4GS^|B<6hG%9}ODnS!mjkIxEY&T}X+q|%$dq4=j z)-dAI(4uB#nRjqzT9YZ*rZ4WL&)Gq76y`k;`N9Wa-YvIB$IJy_#)tAFjw)^qADUPk ze~Fe;GQ$KgX#mi^aW9h6rp|VEF$C%h9ngdJm$h$BguD6~()1H)0d|P2J3Z4emM8p4v&AE3mQC)yEG9(G(6>6)pT$1$a=@t#8zN<>@BcJGnhS z&@ZI1@+kEx6E5CtK%fgwc|%;RGGRThVedeZ-zog5L0wNi--~sKIiTW$TiSO!4bR+q zt$nqJ{itCqv&O4q3x)Ig6^mJ2#2{Nih^xL^jUQ8Q2i?1Q85!GNm+vqe7Gvth$^8^U zu>0~_uRAQ0Sa1^LER4>YmYz$S{8|T8Sm_1J^b(%vcqFMtcrrTc2b8kbrU$q5oBFOd zo9sHt5yLvwUUTR{29bQ+zlBeJD{?M&GeZhcx)dtaK_qVl3Mt(9Q8Z?Qvr2v-na;k4 z`wp)l1f`tqtcra^hx*P~sESgXtB52S^HId?Sa`1fg zT&H#aI~TM)F84(_0dy)oAO>XQ(EWx$3@DQ#F5Yce`f}ixc>*Q{OJ`{P15(*1+Iijj z+5W-(90zsH;uqTz^0?A7l6B(0G_KdC3g8tl9D4rpQ6gsY*jouzd`aMIEQb{KvOE*8 z!Kl+D_vsndBKKrd5M-pGbO&FbvBBPIarh~+0~}&t-oPCH1w#tU(|vZZhp60w@eSrI z>4YzW6uv%MOvM)hEAHf$U!|m55mcVNU+CQ|p(Mq)X*CC-MY~OAuf^+yy{|}hOJrq* zdZ1ZaBy~jmkyJNz`95CaJu88kQ7t#vNUj7+SR~1iz#&@JVz3k|;2s!BDh7FGnrV|FG46KxGenj^VxGAZ#n~{xu zydOKIDqZm&6~G8x7z>@=Gogu33~tK^4F~E8mV~>q741bzFY?&E6dWa78H01J0UF93 zFe&jyomJcIaO-VMBmbzy`Qq4x12aKzdEM|5Mi~T3sL&|QVl}sCxBSch;<;d{L_~gY zBENfTT{0d+LrdB`E7Al%yKfcx9)jTFKOvQ&L}kkCip+oclKNkYKH-9+eVXQB?QlXU|m8akpsXGoSY6mpIEom~9s(d;F)R*?#(Tuid{&Ti9 z;h-JrEuZ&ze91QEp%um!+VWlcpgfJ>fUBRRaqD6zfA>Q%0)(l1dq&|H-P`lM_e2Vw zd?*;o6p;r{vyU=ua>2qwT}}wSQP|Vb0OGhqLH@-OhO!b*9mq zLH~rnWTB~I(@ygTr8|ri@aO?k4CbvM1yn=k9JNFzl;AF6?(TeM%4 z&D9Tc13JP5(I% zQYY=!8YncreL%b{HsG0#5D+SDhyqRk%&8$U%XcctQjlW50d5JXh5;j=!|44g_DlEr zD?=BkqIzyU{x5IcdW&J|N7O%`;q<39fzQx6`s^-1Zmbe#$%}(kJ?}}sBc*N_J5mK! zdG=RY5KY>Hm*uDDY5IxlfQ=H@Rj@eDq6O=)C=}&|geulkl56Wz2apLvlr(K=SVx&G zETYN&g#kl$dOv^cNFQPPTzWC_FUP;(L;?eIfKCwIr4VP4<^Er&T z6N*}(S}0OR;bX|)AaMO41AmQF`XzJ-+gzCg7uZ|J;)tNG6-rz~#9MKwkHoLAZi%;^ z%HadC0O5oiBJtBFXsXEsXPaQ@n)atdi_$cNCOHSD5OaFKDVG_j2rz4G15{y{zAh4D zg@F6rG*&}u%!Afq#BD3cTu<5sxorqVV2@aw8r(3v@?Te9HxX5uap2O?C=B9VPY%E{jF(BYs5# zoRv;@IQZ)o@ftz(K!A~;AJmsp=!=49nd(Av0&uwoSL65#%44k@T$>NHY^(-S(bew+ zeGM>}CsYo2GK{xR-E5JYax?TWL*)^0ygBfCm(K#3MsTRVhMbWr52%UOrroob9J(4% z{B+yC2;2%%l4;YPeW!ST0l4`$NB3+N_ZBoIH{i<~N|TwdZITL`0! zK&3I2@6R8$3sCH|v>*c*QK)F8;pww7+X z?K9-ncm=-yrU*rV5BkHQjUWWU=6+?S!6>wnRy%6AKS`jjln z_Z7#$7~Co+FET+a-(HKN8dk#NPU-V1gl)^_lT@6*O_4Rzi=dwC?ixjIt#Ap1tQ}I6 zpBw5#Gc-(D7E2ylNF$Vai#D}H9-v7fu>t*_3v3SM6%Nnu%u2~SM{YX*R;WIp$ga(1l{!eeS-})e?|W=sGzd4etWNf zzDti2OvC>-Z)qeT(D{trl&@-OQu~rc<9QS9z)Ef{hFTGlp}$oA7>#q3pNa4N0fO|F z3%zb`@+wOOg4YhBG$kxVAF1bU%q6uP3d)*Vi8saKzv|o4Y?HOl)8Fsf+pfUJLc&cz zdGnBdXBK+o(<+9$kpXLJ_|U@I2Shojg$kO#31_fU(Sq!M4<&p>62W{MzrVhglD9s5d~b$-qI=9-m*- z$@CUI9knt6RX?Z^6H`+?G37^I4L}|vaH=7bkFg(@v;;8MiwU#z$o_i)_;?0uzBz z1fWlx8S|g-Kk?7||M}PZADkD|$j&*u|Lp(k`;XkoSAMI3EqfPN2*7kVANVx`_j*gwG>AmD-ox-a|b=6=Vnh4&}@S)a6!NhWL?Gdfq!Jf2kcQ@O{Uo z1H3IOw8=tg@4s{Jj*=*A?F(eJ`>@7xgL`Tb2sQ38g$Lp8XGxv&P3lDGG`{aphbW-{ zV|pi#l2yJ?MgT8VFQDu7Y5Qkd%SbTNihRmdIUM>`X(f$vI8CuYMykMUSN9y&EU&;KF>gNo1@K8PUEkZ1P!H3kkz>t7cv~^u8L$VnHW<0C2MPu=D;gmHiuAh(XW-k{_XzNK04|oW?tSv=rcYw;g`s6(4Xo~>heY0z2HT#xz$8GXuoIGbSY(j7 zsctAM1X^6gSvVfN>FpbMBAzNedUWpd`^`jc;ywVuY+u~$_sv*@&X{{@ap24a*y#E^ zh(3S_h4>91ANztH(%@wRk{jUWErtJiJ19aH&d28!eqmkfBu25NZ|GZJK2M_MKARr& z*-0*}tL$)&{}fkW&qkg)94{r3@?e+z8(e#Kf6f3%8LnB~u6Cca$dT4d7`!T~zZhO- z)qAdn_cUES4)`g9+3v`8)W3&2nMMQzp3K)m#^c|e<82doi5}y+y;XU-ut+KgxDyB< z9>Dc&qy-B6vzP*_e-(g1S5mzWOJj=q>9tB4k&g&!>#v&MbmA^2*ecxm-%kvp z@8ticKpj5UuS)7{U=M5UdYEhen3eusfxdnsd3*H9{Z;&56+>@~fpEwF1Z zZNqD~-Do##ZBje$5w*>0p%!d*p9v!T8kW&2YR;Y1V>62i!I2csGrK~98L?&{oo(NO zf;=a>06-j!h$D=`sa!6@&@>Z-`|kHu%A`&Wpxs_kjaLKDP5YNA=NrR~I z{m)CZ0u|3W(3_N=@Js_MB+gxivnJpa2OHAg&|5&=A@#5o1}Fs|P0-rxjKTj2H&Zy- zK`h|QF9|B5-3O_1*+scjUnrQ8n6RCb2u0x86`)<7kj z>rb%lI0)_;ki^lnT-K(-Edy7HcGQKSqr;q^w#A(_YYRLD^XcztF}MfbmFx$N0Uy)}$kFXGY)syXhaz?hUyD3k+|%B>1M9*W?27fpqET+vut1NJ_922Mv#g6@G+J zA@pqjbA~oNF33QAf*~UOZH|~jEASHqr(}nG?I0f zA0ISvaz%?sIPKR6;}GAKs?7){4{#<_TGCl!RQvhsZq^s}qcq?Xyk4fGVp>h0nM{lESR&xbK&FwAcC-Q)81V3#w>J?bqVn*Xe^#tyn_|H9F&&~ zA)2|jYk{#U!Acb3SwS_l_Wi6I4-*l{BpCdg$J>el&J+fBltZ0qD3_%DJ&|j@0lf&I zjfG05*Wc^JoR^ru*aV`d=q1tlv7&r}9>g?nB3RW;W$E03bs6r{!zxp7{y~uDzw(*{ zS6pFx#Rhnn?2+rr%U3+( zd$k|G!{5~xU}+L$o|v>UYdQ^>0aqrYfy4zBIyVC@iy%6~2N{iS4O|L@u>pjX0ko|= z4&Vfkfr=H^UVIELq<# zfq{Ob2>`mVf%3nvmHFvQ^|B@@6X;t1rC-q(KS8etP39{E``6_8e$>kDm2b$!fAz?` zh7JBKfzN$nMHFzZdd}Rd8{YiD^@K_hJa7aPD`SK}y_5fvhkpviYiQUwe#$Ae^Y!(=%3zLs8() z>p~qEvSiTe+_H)SGA-ztNCXnb-s_73X$a1}3mkUdr@7`I>}YpBOJ)4w0^)n5Y$h|4g8yU;L^VSbBhXbBFMEAj`|59)lSa^>I$?4Q7a>=hvBhJW*Qk-p-!YMysJp9z947OvgUEv;- z1IM>4knis5{6^l1Vv#s*lgyQjYr()M>Si*_9zw0P_j*9^=j}ps%V*GvpaDHQdHSV+ z!AdMsfImCm0TlVEIE?X9Abr$CU#xC?H?Iwcj7SbSstn1Sx%T0LHCi8k0!6B2EaKxr z&HUFyz|?7j4mG1Q`Oil@{7pj4QiJ@5l-^&qBeNAfEa7-5 zp0)DMdAL^o7;FDdTiji?46sW9N)JQ;9Z1(+iEu5^s%4>Bh(>H;9GrYK5Qqwjkt#rL z9&DY$--ro~)9{ROu?wz+4<|%~%|KXnz9EzoPk>}nz!!Z2mjnDpZt=r6+=TVYowQ0= z+*VJ}b28Ax4OpE5(&=}Mv?P)G`Sc6DPG_Ar*PAZBnvsD{2<`?)6ELb$-!JR875d?0 zMzHWqq_xV>axi`gDgbY&_;&JGt^Ki-JrPZx{cxC!S70+rJ>~SNJ^j(fYtSprB0M-vJ{+JDuf&Kk6uOg}I^ZQS- zhs}?X9lv0E0EA4Lz9WFgBym8q4KHfZF+S;24hFh5u%Dv`fCK8F{fK9vBJ0JlGT5vc zbr1Mi+<^lB%`6UIJ5jY<6k-?cen^0pOkKz-MqTKX?J;QYmnn$wXv^+Bc^ha(i7cFJ zf9xwUHQnDgx_;gbh~qpha9-3(>;)RBI5HAnBXpF@IM;t*e1X^&@-~TWg7C|1?EvXV zvD?2slq>nGO$&_idl__kq>8+CM@DSPX|`iv!wDXT=1S|$^nqVIZaoLxfPIt6}Emfu|xkBHvY|;oJ`>zcS=tC0`DJFxrh~a{!Qx6y1HA zVG%qq+>VweBn@ns37I)YEnnA1xYj`<)CUGReN@Ty4#uctK_ti{U>5yhz;cb>qd@xw zFA)bmFAU9|lSo4<>T|4xrUF&Fg4jnKzaD%gfZ9+Of+1DK z^LzoO7KR7|FlwHBr6Xn7g$-!!dvmjp$)5Nve~o|KxMhTd`;9O^@(&wi8src|WR%e> z!2*4Ud=8}W!0(uawHLgT^X|OejCP^4Mi-HSgFBF@wO6ZU-Yi20QNB@v^aX`@58)h< zwhA15km!Hg(i!OlxA*K_V)bg-mEhpw?ztDDKbMVh5B@wh<3Y+gmI3(TmJ(mh;~?V7 zXdEgz?Fe?*pkJZH?DnO|2aezG0N9Io;{pQiLUYUzdL)J2WG}b2%)8w`_}E=Em^7#_ zI&csCwIJpX`3t!FC=I^E2l$#eloY=ins9wW5W8oxEARP>(GxT^oD3`wz@+qG;r}B~ zmj9(m0fcAofmB~b6GjQg9(C`?@eg zdW)k}T(HaIlolL7JuAsIuh|5k!H4n>H!pAiLqHjF2%6N3dHl4q`=JzTk_ zkQ(!jlY$?koe#wCssONhvC4w!%IiUDBfC|FHlTYA7GrD5kKH^C51dtt?o7f4n}FiM zyDuO6B(VNk#46O@qKW(r_0hCY5D6jaD9oCwZ|me>#d?H{TK|v|x!H*DrSG&01m+L( z>^%4c`C|MAMq$c^$_c@TVup?zFRuXTXgxG?#h{dgp@3k~|GN)2dPe#rw|u|d^_0r; zzg#b9@{i*mO+LE=0gjDxF#II*_m8KayRYT@i3Chtk=gJx|G91wA>1rKQp%@##ZbI})rwFM0vK4~>nxe)?Ip7zE?UF_P+Yr^G_q@Xt~GwND_{S`>%n=z-qZd> zJVAqXS1}O*s1ak&&#mP1s>Z$mN@=m)T|Oi3)A|`2U@WjY7b;x?E8ZlU_}%7rgnoSL zv8CoGqUDpplg}O6EIF9T%RT_<^Qb#Pa*<#M+cC8A5h|^YIXjX$EY!{;9fI5e$K~(c z`&@?@%XVT**hb#--9A#y3`;CLvP|Mtf2Z6Takg8!Dbs$J}3Kn3Vml`R8~MRPoQAP zib>67SW9(M5x$p<7jw{aqeDX-|0q|8tZesXvmE0sAy@~E7HBu9)B$Y%b=+bKrX)f4 z0RDI2UivC;ZchBM*KXFY5UB8PHv8*RS$X~Mea#P4G@v&-yPm<^!uPt}#Va7k60&geU|2;%UH;B}ic7oJQKs;f z1d0eQlJI2t43m zJDzpw@ow9Xe8Nn(&u{2&suTyy8!~tB^TOqywZOl;^dEp(XvO_pWM~z9anBOtpsG

s3RN)fOTu!3%b`qVxQ?47mK}eiTz6J1v=sqU|2QbveiOajFgQ8*_mqV8 z%=V-4gxZM&6$mPywSq40f|c&d8PN_Xn} zEhFvkKtW98-fqkX8_@@JkBL#Kqz)w$cyN;8AV6jX>_i>S{crs`fn1b|&Vc3Vwng=u z_*o?r_Bg^@2;Zc|3+R2el9Vt4vrpJ{%PgAAJJ$&-U~ZJ>%!HU^a`CO~AQpEOGFNQD zVA+%0P&_9qKio@oT!*~@+Iin5phkhzms*C0T3LJJ%G zRJ;%sTp87Kl%;^-MeU7tq)m-YId@wvSpgn?*eC+~eK7&^B@$ro1K4Z*0-Z6r>qCc; z!_vv)b^7W*9Y#dZ{%40#4|umj7k){Zl>wDmKx~DojNN%`eV(sQ} zr+_yh0@~|%epHMr-S>gr?nIzLlQn6CrKR3z`p%|a2bYj|J2K`4Dk2F*W7KQ2HD8&m&bx~D;4+ip93A`HN<2pBR&dW`zCVE7fuloLH$y5+pn&bs-4#sNLZ#ydZF`RRc$8ykCo_8AgyyUj%e=xKk^c6fyecF>tgPxB zK@J|kIQ1Ky@-lccB5421e|X=iYX#RTmZLDayi#KEoRNp>zYZ$ouvec*majpTp3^Bj ztyG5WLSx#Gy-i?Wr`Y*7+MQ`z`gx}31l7G?ra$id8ybDxFwsvH1jT_h;gI$~)R>_v z^9DOJ&rDO;l!IjV?ekuf3I*(ngActuqA~4cr%Ih8Um;QGFDN>_c1ZKSxYTLi35UtC zxG;8VOA(-hjcTU%3ksyhH#FXEW&+0B2+C_DiGsMc@dpaIm--6tqy}4KNUcEgWBtCx z+8q;S3xo9d$~>eW;C8T$x7PvtiiJ0@Ri|4|Ol-|@KHjtX)k>@zIpnyv5}GOq*;X!O zt%>$gLSq8-{d@@p%2`C#+Al|kLTg#kK7e`S_}TokNPw}KbQoYz+zFl&VGx71DY5;P z1s4PlUZ)!u0Bx_p1ck$VofG@4h!Jx}=9-yfDE>w7{cCN< zQ8!n*i2V*onOZMj@6!RJoVOB&W5+tZYmAy-pTrN+Z;@cGk#H;KXL2KK&WxXRtKD%h zg4?1%h4x}}m$3||X?Q=)abVuz<4_3&cd+c(;;G~t5vdCHw&3Ia1xkh4)Oj1Z*bYz4 z_|tXO3VkE1-R1RLFGB6@7Ph7X{yO~$wJe#8*4N&TesbBRUlx!50~R<=_DJk>JHE9K zIyW9p4RwURqL3W4Q#YSHx{*pgi39HGlB@brZB_AI`k@YPVy$n z-7csy9So);Vuvk$1c=)@^D--#JOKxp&(TkKc5mmVU)k?mNdDp%7jdyYfz>#!5uy`? zHU1-hb{z;$8xJ1$?|vf78FdGzZ7Y#Sz|DUJvBZMpe&_+*51Aq_(cgG8wK>EbF%E4U zG2cyrmZ!9j9*x`#>&6I6r3;3?kr^OzWB*%S`Y%JO#|_aLPY2*S9K8HX2GclR!WY^g z^JjQVTG3p0&dJ@gKTgTO@u=>HcIjWcvUD;0w7WOsUSm0pR&&f-U+j0Y2J-!7Y@aEa z-%Jk2s5Rp+F-}HqN&b_f)Qbc?Nw$%*+4MaB{e1iD`H0bz4oLMonwX2%HE}SK$#YwP zD5j`P>|Uyxy;&e~{Jnr!4AUR* z%sNqnNJTZ?Y__4EcEGbITxTr^V`!>r=~tq39iMaZ?xg_@@;U|!!=6GN&URjr*Dh*RWMxG zVUAHf5U1AobWQ#k&j`pIsXncUs(vgw&G6cj9Mq5#9us)N#N+Pq%#$KoTiigq=P@W% zt}h%uN?4^9J|(=}L2T0JK6Djb>6NrNP$H!lU|aa_4_L<5zB@S)QrHQ}`#@g*fKo%` z?~$gTWm84^yPDQrZ2>X>T}z~WAmRKX@~~z#*N2`Z!1+@Bw-cP??PUKAx|m+k+zPXMB8jnU^bHDBu! z!0;H5|9#)PLc*u}a7fRmW3^q)aV-ilP_H74{Lk|RB4S;Q4%88>dv42E{6(%;oU2L-f3D+*MN5wXw@ z;*s-PFEQ)9ejns^_p&eeOrp=(rfG;nf$5kMY-CCU;D~NK@9Fc-^;I4C7411`rzdV( z^hs6z<=1Q{Ei2(Bqd9BT+WPxCO1U*3ZYxmrJRZdjypHhX{0f^U0G<>$lHBraUm?La z=MX^$4~*wg`}Xa}+F?^2>@>HbYJ_7BcJ0MTJ_VO_%f*!@RREwM-BX3r9|G1l!qT4V zel%EdN2V7T}<52_6VPlM}D zj4?VCI(0K2SL>TV#tLQ@@d-@hC7#-mJ##zqGIAT-?BTF{fQqv%<^6u|_1EJL0@ZH> zk!%#|1Uhc8Q6{47+Hd^Pg zIX{EhD&aOY5$jlRYF)~w=>&pwA^GoxeC|GyiY9V0Hd)>1(W@XVw>4A}#Y5|%LnkJb zH}YEMr+WmHNB4dm^Ol1grab;uVm)psFkJT`6)fvjvFD_?)kgr{&?`+Ky3KH-E`s;` zn;xFoC?Pz`A%!~@gb0XRFKznU>U$L(7d zje6FU?GglC!b?C;O0Al{74?x=&u=8E0S+mq@}eT+TZr<3-!jT2aIuFq3GO0(kBVo1^N)tFR@g&+CNtRaHZMDs)$5EfDu*HDf{38hP(vq!mJW#QD z*R5){6CbO~={=`y0V!xJOA2kLwC%0hzvFH8-scMr(s}#lE~#@2q-7G>eqrJzT=lyx zdyzkoY!un#;c)oOU$0i9F~XA2(GLCLjz=Bbj<#v%|5yYklMemK)gzr zu}ZH``Z%!CF!#(hO1E3A{_fQs@uFvFm%1ZL(wdbL2BJGejDZu50$4(M=GyM>Ab8&b zrpOedO2Z;5?nrf<3B}J8peT_QrH%5qS6)y@TyW;IBw(QAX1KpiNjN^qWaxuWO`P{& z^fhe2<1YOzMy9}Bg-cpe#6Fvd?w$BGB6A}W{N9EB<;~ywcVBCE&2I0^5V}6=u~Xez zg2{)!9`QX5rx^i=MR*gJpCR5ajCUQ6i-(Zi;ZZb&y($1%h#zCqo%rWr3linqQAAc7 zjCpDVfGkT1_ijNfCw(|;PZYbUD87OP!My_NDDQX0x0q=vU#;zSslJ#3BtNU?CF)41 z-3^nq@DU!*ur_7OVd{98g`6$Ss7c9bAzs27$2Fe$P#4-PV3H+#9=#S@H6`rY_yzEGL9|Up&j#7BL z0=nvYO+P9I(8VD?ol97_Il4$QhO49Q4jKk(guT|D!9Bcg~F^1kzvUE2B*ZF3QWeKQ=I-7$w5>F^R^cfaHNn=n8$_ZnbSS zm(02P4!QN13};+#3@Nws$v`_{lGr(EQswyB#q>9E${F4~AeDO(XC^pq$ydJQfNaIQ zhhqT1*MHl=PBD~!o|VV>ej&Th?xA3Mj@l$+V#Pe!2l3{Ct*qz5tUlA@Tk{&ZP^{B! zpOLJi`j~VTPDKTzVmX2 z_kqhVc4N_xJ2{O^ibgWO)VLoJZD)h|>Hf1uAq`pHyW{dx&dYpX{ojCjc*}9VV?Pbg zBezD|zR6HKk#@xVxn)F;JPgJ^dvRoe56i(V{Ese?UtFwx}g3klJi7ItIU=&vP`DSMNJr z_?;JZ$Mkqpe-jZcG5v+d2!ud5Q$HqZHONHM*ZIXOT(&#LYFw{Pp|hya7_UoFdEL;K zXM~dIhlQ?~SOrKc;tTW!ALXva5B7iV&VRk;|9ahH-(2*)Vqg^z#HKuFPElpGkA6G1 z=FX4xij#{nqGOEu20h_}kS`E3e;za@vdq{=;Rm&znLSnr4DAOdsClD52l-MEyv$8M zzDx?`Ow>D+@^T0?VgNuD9XR00WjMaclya{wp`g17{In&@72LPd*U$Lcn3gVu!F~8M?UevmVatcY-wa#y~|XDA}|8RL%?;7L#%G9C1MCP-L3;1@w@9y z3#Hr$;lQ~uAjf{=-6(~)Vo=XTIwiLXhhnQxkcAM<>6ns5f~>>eK7AC=l_Me_JB~rE zhY(Tt;(x!=0HC+MnSXi0Alb2J$b3ep0MhXNJ{E2!iC-Zb4B{Y{u)}9Ts-p?U!ys6_ zpC0X=78Mh?f7|(;;e+{L)jW{u@{=9#e9XmivGL|3`CrVxW6SN0BGpOi9C)ODXwQ1i zb#MdrsQ>LJ1YcF|WQMAHG2U{d-=A2Cx81TEp1&hVx|wS6rENYrP0)6f3}CusDt<}A zjMMsDu;UPk9QZi;XS4a+aAf%-t2m>)mzLF}fA-eD{q^sQ_1NIyC4{)+2>O>ksN*h0 z;of*=b2u$YjKBb|6FE8v%=JD#jM|b7! zFhOzDcEntoS3pN;AlKq{S%r1fLV^QX53eZ_(p3PVO%BksnHVGNIPSbSSJ^{w*QaCq z+5u{c*u&}p!AxI2hSUBM`P~q0;#`jK&KAh698Y40-36_+f4*K+^~b<@eP7^^{`=RO zmNFf>)3i&YnTE#H_4K5F+YNf3J-o zXSfCEV=hM|P3Sy(OUYQ& zvBLEo#uyhv5ZO9+w6tmk*4TmmcJ-(S<$pe(c3PEKz_lF>fDJ;g|GGcqW&1cpv$|ht z=s);(;OUZMg4oVf`~FMeT&J-2nwOXq^NuB(YWXmN}$Yny$-^A63( zT}Irp+`~7x9%*WOdF|REv=GLI)moQu3;FR&QAeuXrmafNNZ)X9LE5|Fu8;{j($_jq%Xv|+dG$SVB$3&*_4iibV>u$x(s{Hv|=1p1;ETT4kpDw zBol834#I5=znOO1wqNzd6uYB*(rV?H3g#he_w}0Fv+nY6Frb z*>wC#6B{)|$#FD;Vd1qtl*KbgxB#b#k>(`m0arvFogVGUmzwZ-Q-@%-E>3RO?y+~T zK8eroqtt)FEBwzH!uQIk7sZ%-Awgc0#QiWGG1$A&9{=q>0pP`#)u_L&^E>4C>!XVV zqip8A5X*n>@9+4w#?iMy$|?aD`JAo9T+V4%evV2e{q5hrA3e6w?e9TzBGW99OiO#! z>B&L@@>OOh+_mT>$o}G^^plDys_Nb8a+)z^r`N=-=4U(=qG0^mfOmSfpr9<*O4)Us zpoHKXjRj5(sM){bo_u3Y`uYy|?6MQi*Wl}XQ;brbPas0_AY%%{e(~M?OGPNG3S@?A z*h{VY#Z&9FGP?JleIP9UU!MIievY%Brw{o#$d%Gfki$PphAfZMtIEFbma{-=b9=eI z9X0Qvn*+SzRheCs?eL3A^{UQCrMeq&XXHqxEuwsgLGqaBlujoiIHprRP`|t0WRR<5z{^*YPpv6p-fxL;EYS4y6Z*5_EXUOZeUNW?fr@IA> z3xhy<-`sU!abNO~K72`y^oF3R>TwL7I}jP0SOa(K@Bm6bCUD%0ii?>$ry8A!IxGK3 z5Mq(cY}&YGX?)l1x_^FeKpC=w_)hPb(Yr~+V~mVJdr{{)k$ctJpWYt$me|YVeb4upU&XKt{9o+l44y>fs$MD?L<`TFew~&3!d90S82J0p zAiWUWi!#_-g*o}kXL1eUbN{7>-3oF&`es!1SFTxm*Lag1NHa5TR+&u9~c2vh1b6OVSpD#XDWCGzV0IMsI-WW zPjJoPXb5uV6olkYKEKd>&lfqX@5)!A)(1|x9#`Zq-r=JS?=4ArIOP;yOoisJgV6(7 zUto5PQyVnFoXftW^z_r#JTqe|cVi1)XEiptnt59+-F0_UrO)%0WJExNoi^n^T zx#{jE@p$Z~FC+14XQMr0e{D8b#K+|i`{FIqu4H_A2caUwm>HWbB6X-gFE~NVE5;Jx=LPn~Z16(+9&g$0)zElXEd(-KD3$`_xm$JYd?7 z-F|5pfYkQ)LUxbDQQjDoDG@L-E`n6yR?JKW>TK7me?4J58)6JjOE9jWeIP!dQr5<` z16MX_@OGI~g@~*9rc%-gdwI^^n>dO>T=C5cZwQ{>)34Kh??63X>}9%XuKBzD)qRa# zzCfUCZ?}zmRnadH8a<5O_wjy3dCM6wrX{M=lvw~{X?uI8-vvJp?=?@u89#-C0H}YGWTw)aB#I@BFB$ zfK-t2$0`?MMNY#ah0r)_xiQB`Q)EUZeguxcF5#{{)zin<*y?ZM(BHibdE>t8U60-S zCpC8(h7+xDIrqP%eH=TEa-ynK*;8`;rSXqqli>hGC!W#;L>^J1jU!ttcZ{B<(Hlnc z^4$!*nsphw)xhC=gOSP~ary&ILn}mtnZ%}|hd7pmzi!ETy=ad6`&kMAARe(%AM0h~ zT5$i_Sm=+R32pC-y8Y*l^Phiy|GDe;;rw$bd8l_qY;5L}Rv#BE(G$in+>HjdM14tW zvv&(=^o(c)Fu_48y0~<=oyO;MX62)|&s9Y1ck2903~D53j?7UKf*nrv*)As#Xam{AM1dSx>0anESq{j=id<*jX} zKp1?&*|w!T_5G5Z&OjbTj}H~nM(#X~-+#_7|NiFyAS1q~eGQa|#9hwijmQ@HltVU; zDT&8~sgygr2(Zdb3tm2;U@VN#y?ZfNg zSGNY|n+rXbK*sRrk1K8Sex_udf%1e##%}^S&)003NdL+W|JN@=bx?Sc?&e8)(%xo& z8pubV$o(EH_L$%DZ`Uruf;mB0jkHHPxjQbpPJSI7MA~?Mch%z|fB&~`_kaG~cYTbq ziE(~eEDd~jQH9I0gfjhqdNcpJFG`5WxPRTaYqvZpQ)z?e1UY1e3~KDaHoLyn{dPqA zB%%hzpIsdCG4U1hDrd~Yu40w)sF~)hBS^99wywmK3=bqN?ra~m)Q-LJfBoUP{vz&_ zvmrh1fdJR|hd7Y!7lv19cv7vb7cIY!7XGG<%=t7u==++vXMo-NUq24);rV{E;Ct+( zCHig;Yo7gcWV@i5liKCnC@1f_4&7@V1MhdP(=oK3kF0f^kTOz@Qu`eAc$x6I$4QHS z=Wse+G7oA0gca~PmrfUq>{_i^RjYmS$L$8NjC73-4ZI+_ffhD|1rYn@m-6q7j0!+* z_F*Vi@@Ydn9!ZWHrDZh>#c@mM4NnM@Y~|-2>GnzyQRLCiAN(h`9xtZeegjAj1pD+% z=DSDBYVGnFz=z$`ek1Y+%aje9tFUJkq2BQO>mqw~cS7yXes$N^na|rf?^0-e0Rli% zm?Li#!)G_z_9CVpzS~T@WPrx7`37oufP9e$6)LAd`z`vN;`7r~Fi5iXv>;r#FtG^P zsb)+y{GBW9cr90!%}!EznspD-n#fx|9y9Yrjh(6Xv4-(7ym&~t&}KodXgJs;@4+nh zq|(B@o#gl#n6_3)}Q+&@c`&%gIc5*7P_lyl`R@6T?>>}CU&)xdLycjQ%D7b|M zuhs)}czrsY*B2zjc*S@9!@=WqhD@3a+=uY{3Ac-TL4k(f(<^tpkpkIjy|(s6k-epe zSw$72crGo-^dq$S_H-hb2(0UPxw=e8-e1&{%@IG3k2vm~Z|ieLuypKFi9;)72#*4^Bkx{d>a;)E$IM`PkQ##}X@@KTz%wvh6W4HF>z7 z78(@Q-k3;={Nj4)|MU5ez7TbcJ`7-^irN5UblJ>gqd`mZMlk8Lg3lnw);llGkHULJ z+3%3W3&$WRiG}re!`|>wD3g$pyB;}&!-DUeKTdOXa6$UWz23iF2PwN4Jv6^?lFU{- z`tEBKf2>sP%g7ov&Gn*Ky#?sd7O$hqY4;+XYw`Dv_IvH7K0gnUdPsYgD`6z7Zfo3J zc4sxLF+!9$pBopwRoW37+Wfvt=$-D<*6+`#w~*GE(@knZ2H+a&RN9z;FD7j;blev4 zH{vrNr~uhc){(7vXmfLJ&dO7ZK2OLd=EvkmzTMvJs23o2F1xvWo>&v8VuC-Ebfh#= z0tUCzo_tDuDv@1xs)^^9T6Y;pE8bP#j~K2qK%W+r_1c(biWVB|R2Qq1%vIGUwNo3P zZeP6l+kU$|rJO4XRs7i?F)_uq6Gfw;HGFo`U7n_w@vs2{zWU~o`7JU6uOm7W(gV3V zwB!X z_c|_?L?t^s^ZX&$?-m5zX%8=b=rm4;6P=ODcM+G$WcS&EmkWB~xmt0A`Eljf?F$|? z(!P>rb-Y8Za(G={?QGO)+3Cug5A8@S@c-7IyCgKtSFLo1*iKvbjwAT2_X~0p9ee?? zYIM`7x~Sf3kIHVCp-yT;bQ`yNnoD({yqa)wiRPC{)4+Th@qL3u`dFbLy+;+Q@wnj- zpz3>Jl?b)un7`kS!!5dB6}kW#|j9Z9`T2M2+rK;sK2>>%Z(oUpr0fi7BezA0xGtU zf)`$z{B+69i**7UVP()|;IL}X@YUwcBS!JjDsF68TCh|DJ>!7Kf&j<*Sgk$JX+DO{ z@(cYg0r8%fU%I)~I62h9>1>edJrN4lL9OKTaG>~tJZF6LfSL_-Si-R+!|UpdchPZY z-(>+#-=&`PLFO=WczhoZ4{%u*Ce+*4Hhi3hl?}h?*~ z8SDI4-0;7nvW8LScSrAK`_}L@18dmt13!>70QxU|{a#;(hQRBBr0MX7 zA~>W&hXntzw>kUTvgR(i2ka$@C!a!4X1cD{d8gd6&uL73{ACA|0?v6M9k%P^9r0za z(x1YT+3@6wuVf17fJ%*IU04Pq2!^E1x~@ zfH;b%;nD2t2|C{=oR92$IJdRUTi^X*VRy~rD6gBeF%8;TF8OElbiX%}H>R#BF5hAo zc!nHGSZmKW)TIAs-a|qQH3+mYP$4o zFF^U|6Ygix=a>8}^KL`a6#O+i9g~qiJkAj^h7{_m+%@0)m#&ZIkxErsn|G3Uy3v{c z$0s0cC5#gh*O$x6~w`;zva zs)emykY@+YLvgx#XVwdArdg#C;t#pp-{mL23W+|JU{O&dt2Y znAmkz+GfTNP3{@p1VI(W%??G&#*qfH?^d$(Hics93aaejY+g-Y`>@fsp}5~S7_iQS zKjR==%$qz^6td|=?{TzEy*-X{Wj3N8JQPl$FWt45j)!q7Xw{iXWnr0f(7Gq8E<{xE zak*lFa0uT?SdC;bJm>90YX)7j`{?d=Q?L^tEj6s`<7qyV3(_SfNk0l#CUEq;=DX~6 z66^;kMc&yz_01>a;R{tJJKJ5)rr;d|jI!%25^voB3G;FTxfbP7y9=3KYsCWN5Jn_V zA{K!hJC~eMx%%awSorsxFmKXy!QS298s(^W6bY?5aY9BH5y8ia3~-&-DpCM{u;O6D z3_yZkzQxA$*^287O*&fVjc0|2bv^@L!=5?zQH!A^t(TYP8ii;O%YG5>(N=pg-E;Ms z-4cS%aC|xU6GV~k0&|Nt03nO1k zt!zsc1<$!xu?(&a92GK)aQ5W+tjSOhMF&lOw3P5NGEW z6CNhA*s>0fA-vUljC^iCwe=WcIwT5iSK+Vq)zg_cbPbOibpG4`byG0eMUI8)c}t)> zK8C@W2@>(dV>>DP5tXp>YKRoW>LA|Y5;25RfegiTZ*<{J+LV~1_Q!7qevOff^jiC}u2w2zDU490j3I_@^ z85qSu)+Gx`G9~z*2~Pdk>lB*uy@B~r%&OSeZQt^NUO5W-pg#xEtFVo!EO8U;t@E)c zs4oU968@c#4YHGjxnxN0JA*0#x#UZ5GS;MomTF=z&B=ieU zf(dxNdGzv!lK^A`M%FLpuS_-AZz#(5om&sk_wnG4tyfo)#E*hHscK;E=LA~OBp>h0 z>P0yAJ_>9WNzxy&?33Cr$jQ3rNN|YPdfRDF%14_8M0z~Bn!Pa$GQ0i!8ZT1_Yv#l^ zF^<{vE6-V8R*sKc&cGt+l`&~vr9PYCX@{yTYSumrg2K8U&p-q92ZHLUlcL*>B034` z=%D3D-m&xPUMIz6duj3I!HgozfVJWu9jxB4-G;_D{?^{5+#;n?A9;%=HRVl@q<;~^ zc}!kY^|8$B@RE9Nr9`{*(ULWuE5rgMwT>u;k2LX-4vg7=N zO}d2iMP*$;#^Maj3#FZGPE?ym^iqW2YyA$4QF{f{8d+_qhw9Pvr#FUTGiy0jpUn5J z==IYsa`Iwr(o`^DU%q*C$kTAOO6Wrzyq@chMuel#`4~P>aJ)XY<%}wf^mj<(?S?l^ zI8+cBcxp~Bja@}1k#QF)=Mc}~Vaiog(%fI2JS!z{l!GX$ZZmG)3+IV4$lV>{4?l8P zKfJkCHV=aw-copx$26d=qG;Q&z#MMW%Ub>Y>&g+B3%QCvRr1g&dJq!5I z`&lF$G-F8b)22MVIpV3EuS*o3x!>+1FXyXtKSBRXjWV!R@&nlz35aNLEBX|!8piwD zdHcO_C(kZ?_xEJK-_4+(-zqLJ=It`5&Xr!ee?=o|!}t0p?X!pmCfyv?*ovbjyQRO23)Vw3H)=AtkS7E2)tT-Z4h=?r97$k)uy zx!d9}s(ZvpaQ(vdc-F@~Klzo+qN(~jgiVBRaf{!O5%tlWpl1?ZgW*#b0;^a~MBT=6KIoqwD-BcQ52v-feeaB`3&j|Ka*CM7ZFj+q-;^(RKPYfGi|p zA`qf)r%s%l@9irTp$MEwU%S|Z`!!BND%&~KI!r%vK22|Q-6Id0t3=;1jEt0sx$H6s zIFPYjz2NYU5#_hri&CiC^4MDIb^293aXuW93aiff8|f2H! z<|2}S0>`g0$zAeZujj3m>&-=ry1Nxkbct3_an++6116J(*)wrR8hUJ=%rA6<$ zr9tLd2#WRh{*@_D=rv$2Vm)h_&NJjn~eUQ-2<&R(yjZx0#Xu2 z?z&)dyB&<|mw$@VLa;@4V6h=FVtB5U>h?+17pE+CfX{>=23$G{`%F2fMEiW1zCHXa zJCb7$X7@(-II0YlazHO<&-#Ut)T*Xav@Z9BWC(}Ex+r9ELL|;5VlUelSc5RzRFI!@ z!OG6p$Iay3_^SV9+@FlT)*B zC)k}iI_aRpw%*!2l(B<{CMgmb@9j>e{jR6|ic_!gv9L1Z-o)p#L0lr&N7<*&k_bh>1ZsylI`zn|La=*NF&0dwQHt2uoMG_I*3ssWAR9JDi?&PX!$cA?>|f zj6ONQcomS!*+;K=U4X}l(Lq90 zft;ow+gXRem4f?Y6*&eJ)}SnYLxMBQ19^vF?+P*tUQ=0^MTp7IgZf=R=bL0K9i0_L za4znsa8-vaUnOvH#e_d7;7-h>z|4rZ0E@wpotu&J^T_a5r|bAv`&(9%&p@$VVy$g| zKpq&Vfv!o zFM*lV%JT%~sDGTg6t2Oi@I1h{9m6B5D2!BN?DAgU{=`lp^Fo!%`k^^EsRuPXdT9cH z0J4JVWdBe$f!agZ#%~(suS*9o^P!p^v$^Nr_SfJIjWVg<7RX?t*tQhw;lF1s6`55! zorbTzzw+fQM19zfs?Vgu-2z-TeQkPmOx&ofAVNz{t91Ec;qZwkO%W2aq|fW+$Jgqh z4qu<&r8I@Z=z~=hLwgjj_LIQ^gkZ``eancS6noX7F&g$nlFpEHsyv(_aUssv$7Q)A z@2tn%1s-_|10*T+*%Mv`k(##cl57?7;as?45-%F`r|>lO{2n&j>$-w5*Pf-w*_rJ; z3D%j{N=mgcQBOW=DB?$FFr(`l+ytfES8+9iw^#1Lv^#spgG)oz>rNU`NQ>@$u(AHI zh`vGlg}?t4}(|y{+7QP32kyyaQ6BR zWG)>>kgdG4rjVfzRDesB?^obpKgg$k!4qdO)_Sx#qnDXH{(STIZjM||{|QdH!87o!sxmqIOL@Ac4!dI|t5m^oO+9Vo{u zNG$pe+lMxmx&43UA#BkVpP@*Xn%4s3_OJf$zh;Kd)%ELfWRH%D9{7&Azmr2tf&s;? z=J?;kqQRfz&qr>M#7P1Uc-c(^})&e2_lq#1iS4r`@k;2S9jrPg%0gA$t% zswYjxHLa=NJAK$(>yv99z3rcY@lK=H`H-#knZI8DF{NcIR< z{%5Xu$&0`KG(g`E@Akj1gCt(0<5!NQ`(enNJFyE-80XvB{E3F(%UibOM#woCK+IJW z_CylvnYQ?J2AFUADTC~gPh-{*Veu-^MwxJqNQpv>GY#ShZ!l(#5L`H#Ks3Q_e()T-sq!sJ$W!caR6k|0*3EK%P!ZJndw4wy!aTl6A& z!KV%Ay;o-M?d;jfSA=rQC-Z_D{4^VXKX;l&*A7a|zr4$TzF=SU z&>+p>;(@Zvo)KVWv0A$ek4$OhI#9Iqrh94BsUnWOX@39LAv zr3j_qMqA}A=X$3Wfb!*J^3AS)1+34jAgeEb+Ptgbo1kb~+Hl&@C|M`%RX<$4J{05f z)`Bc+u~68Kx_p$LuV6YtO}qo6*r3{1jBpU{Rw1Apu~I$jIYoN}V+w8c{!XIxLF_`m z5b9Ano|?gHEK<|s%l9$49t4`?1onO4y_rv%U0UNfyum2QgTX?`>z99g zHQH476Gvu3Nq$8AqkNRX6o`3!%vB&+BQ%z0hq%)iwmzuWV#Ox>T=Zz_L!ptEAbQ=6i^K~c`3a$ScGj`{`19*yUXkukN?hY=%tU0w&<1M zAN|ef{CA$kP`-vGzl%c$aZjvRKKz@>ML?`l`KJ9r2N>K;R~jFZ`zgf*G@)6`y#)&( za*tb;)JOVG6Gtm-Ozj3|i?(MmYTJ@lNqtm+cC1}c?!c&> zf-B=w=B-EL-hK=hYbpkEI8*UYs>cu9H)QRhA^6{Q?()6-?IkY?mE!-;=l&%*DAnskr%>1vLvTAR#2NTad*DP!@&;tmYcOEEL!fZGeK6Xd&qC5jwZ#sBw(H3k-| zooqm$>o)&0BU*}~tk6fywG8+D4mo1?=hlyyM5h?%`(m4lijGmQ#0)=qRO1YRs^OYe zFXnUiaun9z;f3rE7m>^-@=g`9jZLSz|2)*5Y)H-y@@`=wK`eNK=zBGg9 zXEUj#X1R)Flcnd@Y6T!2F=Cvk2>q#&*}Og8#co*)D}G3R%QT`^1=}6G5ToL~I_ID^<-sQ_BkRUXQ9IfM(fj)&9!v zj>@L7hgy(K8_~>?+1lv*RUOR4bqCOG4Nd4SbCs$U_rR`phN{YkjkDzVpItF#WL@PE ztj=4)t2!j29#{8I(dGPGc!5h>v?r?hl^KFWBdqZHMER(>m>#d58vJ>3d5Hd%0Xs-v z^?tg6Wq9Qd`j9KF{KdSMu55pM9wR?wd-w*TU$@!whky|&JS=PXF5}@{2g~jggyQ9S z&@5`wgDT@6&%IRr#lh7amXAUYZfA9@S{NNcQ~_EY2AtDHEgkW8Hoxp-1p?pwQav57 zfO9C+IXc%ilG|B!gJ1duxBVxT9nS<+Zz4lbCH?WIT5t4t?)#dOS`ioCw;jX+~tI~uJx!p2qKHK_b zRywvP;o#vOt_fVt#XKB~Q4f=ye!OzO6b7r)ZW4E|@A-y?Lci_DH$=69PrHZvO8&$Z zeTIzo+2g=NMN`f4CsV|yiW#nbd?!BN4)IPf>o(JRi0ltM6y0t6bRRJ<(j@?!H*j;8z)l-E-F) zK^`F~ESU3+?&1t}EEDGAOJDIu^nhwONuvbgHjDY4G+ZlW$8}))c9fcZe37L{3bC#J zoza1RabCNB@<1;Y;j;gC9!NqKT$?Z9GLJE=_C-KV5GtPU2Xj^O%c*T%_e{)s3&6ey zZF&7@0W^pE^sCd_00k^5T|>{FOLN(@6eETS$!QEBJOJ z##WAU-ZiW%S%xWE2l41%U+AP_4%p29{#)D=+*#Gg0fh|9{{*GnLYrBSaHrk74~#sx z#8m{{kDLuL@-F=N?wfcx7>e+0?i)npzq9MY;i0aCZR+nw$dvv=MYxT7@8X+}1EH6x z>|vK`<(wuw9I?E)>vOb`qu4WF8gfo?2#afs+PO*MHZcuO(T% z|EWU{af>S<)@+%;>}SpJ?SpA=Y~%Xqmwf z48&;AJtf0%3=D?%5@t)!+U?F+-FZ-OH_yMvJ@`0x<%-{;Ny-+^8=kDpKWsZQ!8cIY ztj!Zq@%E_TFpRQElngJ@3PbzzTDA>u z+zIa_;oZ}pR84PI{nvZPS`if*HRh_JAzaU%*;@N-jTs8a?UH}=Pa$E35{EmvforA1 zSe~6x*y{*Sa)MmVhid%MFA#ko+ShnywvU?BFV_osNO^|S>@_gY9|9etgp8ceh%u6$ z#?_}2`vCN|m-Ccj@W?}E2dpZPmYpidu4S7C%6sJ!x=MNoY-l=9!{@PJLaGbkyK9|r zqwu_3oRI&xvJ3UnQWv?AN+uw7JLB_&5fYeO`dNb!pUBCE-Cd=pxHyP(*(fdFMitw@ z&IDt@pj=_DiWMdG)!NrR-xxmZEXOf8WvzR)KFLce=F%XO#jaZ7LZGwPgK~Tw4oxVd z!kG@3!Qb{t2=Uje&>^J^CIFYq>_Je1l%2!(B#uKPfyf?I>P2GFHYEz1-Nc9-z^fZZ@|>r7CV&mAfBiO{0a0sqA*JTnW90 zU$Y0k{WdV3TfA>p-uzH11PPPRsoKD$1OxtEVsto~kc>Fq!OHQ1wCNs9IFr`QAc}vp z;0l9S^d`S1_wfSiFr!;KC(2lNd={HyLcWNsFhL`~-!v$_A*II$45aHkVy6N200l6l ziMHSwU5y=TZLGqkHujpl(h)wOEN##Wc}E~&C-*IH z${bBhI2fW=;gFr3kt&4s z2pF^uBqaw2feMdeMX$lW9JC*jiw1Z^wv<3yO@G~<*bA(Fh0u#YG9NymetmB+>v+B2 zpC=6XA^qf`-8Q6!EyIaEpE#Ad)hw`2tqpDsiF?`GYpDcEP@$K;<65IfG6i7`T46O+ z20LYAttAYM4)Uj2l_P`5h9dVsvq;@9J@=y18Fr-j&AzQKoC4`Q5HxG_S$)Vv+M^2) z8X5qnq}-BQ(Dp7Z$C~r8o_xB^3fM^?isG{#>4Mh5b^9uMI%e?HyO@OJ)Kh4Q;L3hUMb1k!UePRy&RD}sE7gb}w9A~~HW!&!= z0J6m9{fC$IyEQrs_uF-yYGWNwxxJ<*!U3fi=UFl&)Hu65`bBIy2lQDTfzS@DmT2o7 z=DqH27rt+w8f>RD$W1&4E_#Q*P>z>KP|yPX)U!Tu7iifF{fzZ%k}SWyh9%G+Vn<3c z;q&Ri!&PC{!w~5m7OO|a32MXrzJLEUQ|y<&i~I!ChNOSR%_VBRtjmP+W%Q+y_CIaf zf1=CiYA5*?--SMs2Uqh|)hTlU_w_MBr^j?0Y6z#)7 zYYGy~5PqVE7ACW&4I07UzKFYw=L8~z|CFKg_pc#u23iBZ_f7uXL;3A%4KhDqi*_-! z;03ZY8R; z3j$miLUO%3HXvXw;8BCUn^wFi$cWC0=Y+=B-t@^=3a;!t*4N+nkw2P0%6a&a-zfXR z7u-_ZaAj3rGk?PZs)czV`1nw+TDXha!)|h~54gX;_vi;+3cj5Vboeh$`$Y36ieXbU zI~M{%?B|?(0Po6LryC&>NdaO@WPv?FqHJLMdI0S3rlBb`iRVvNQNn^}VDU_Bi0HlJ z6mX@q^WH~sTbt_r_l%5RdVHht<5)}v*!RBq8IpGJ48*PCWZF>;9YOH*(Sz1Gi0o*z zJpbuS=rFb41+?a|)DJ{j?CY3^-cx zoCM%o!sjM%_tN;_uW)5dT+VUx?$)Ti0|5@CXn8}wPv6bvu2Y`(e02;^LL$xvptlR* zQ^Ras4dY4jpTylP;ACji>j@VLAt<*0yu~vOJ#FE$$`cAC(hM22;aQ5vn>QX~dJFH9 zOIhSHB0ruHbCq^I$f$V@kQwmI^(dg1pY~l}5VQJorqhq(dNzL?SL~r5eRW?~9x_rQ zP_*EuupZ|iV$@B^z+$LgmjLg>$9e-w4$wJaWC|t%DGo5TQ98kWNY7J~+aKBo_aX>k zwB|968rC0d-r_UB|E^tP1JmGwlfacCt}o}wohxgGy2+R8qcB@!GGa)|eYL%aB+w7u z5?+X32|pfn>^UG`HIug6rNegR=%IsO25i>-9W#hXCn4Vv(j_|00DV=}1?KG(68;Tj zH{7Y;duOiu=L5g$E6w|pHJ_rn?SKIH^a^op6cmhVl@!2z4mfG8za4k}rJn`*HfdnR zWE!BL@t>#j!6N(m>EW3Q5mxNbRUlA(knc6Q{?%(Z0tr$6r~yzWz3=i!x)5$PGU1am zvtR{nVI^CB9aW@iCJ-O@>{bLZ;2HpMU(IDQ55j8&arou^$R$^4Y7f?k75cxKiuv=$ z@c}2znq}2ca|H;4o7UWlBfS8za7k|$1ay*MOdcF(>1KSy-ve=jY3b_bjtxPoRK#mw zgCM4v?;aRH0H<3LJX&n#l^1Gk51wmZy{7{~H$6qk0JO-|#}nNf?~XcL@kSQ*eO1{R zSWVYbvg3<-rrN)*4I*z~3_uzt?OdcFuPz4FeoI_q00gbvweL#tYRq@@MmP{pUW z3huQc(Mx4j#p~>~JxihbW75x4(cW^kcYr)3c-iy__)`E3XJqxMTG!5g#daZ7vzKqj z%X1C*19KpLLaR?2ov=@T-p+3^@deVD#zZp}B~mcUNb2~7N%id!J(y2y)gf1DYn}mu zX_%De;dN`Gn6gl?kbQwog#3A9_YhpB1JkseO(dd+;vnBel{LHiH!-oEM4OqBaec_N zQ(e_-^meSntCdd&@U)J9(5VF&ri91SsJt3psDJIu(B%e}M8h4veln3}kP!2AIRg3| z4}S{f_@&2egg4j|vj=qi>LWkBr)-(?ON)&6D0tCMd^D;D+1CIH)~})4u(L&Zd5F z!=u{nNf(dkTgWMj*xH64H5KDf< zsr_EF6!BO)JfsZ2>kR@)io!|x^^A2vD?{ge-&)67XMbH^khXClVZed-mA`O6bRHkH zPbfqSX%SVPHW$on_BRCrqB}70V7K;!u)Kha?v=uQnlc6UH$qGx3n*@Xxo15G`_@fT zOt5cZ{k5KlA{IG=&=u@?*wCGYRmMHL>;P5YyF{!7gRq%_cSf)5+gRlra5Bct-~ zb>8>yt#kzttfMQ)+5yb(FLmp8-u~O4Zw;HmGo+4Vn9}~NHmp>@WqoV=&^y_GJFb7O z6AL((U%k>av1j4ethe8LBY*xo013aI88`o25|a8!9ce)9(vOTWRB+(FH^LrRmWkSJ z5;%Mj7c%=~<++4#tZx>QOA1v}~+J!bK{joUvNHGLQPSEy@JLJ_V&Op=7K>x z=42osz;l)tu419$_IJXCkMu{b*fab9TB!IWN7I}a__-8IM*JIvQ{nxTHs0an?q zud_td9pk0T)9$ZBv;X4L&_QQ|(8=?42tFoCcpq1f2B?*9L)xXDxL(0oZ9Il{J3p~8 z*yh;RWWC%2L&P4La!(+n!8t$GE(Wd@5Anw;ePd~uZLJ@P`#?_8>96&gMyQvhrnI*V zG?IV2ehjks)(7?ks4W7{2iSy-63lZ$%5HIZN8A#TR!9ZP@8NSM>E@zWVo$u@u?hO0 znzm&2ZZJtP(}Hs25s2WhX@et0M}UB@epNZhI}TyR*nQ3P_G)ArF{Hu~mpbrH7{K+2 z@oJ;*5R86+X41B3nKX;h;ygh2Z6TJGwY8@HS zZ$rZDKW`1#JBhz&44Yo;oNwsruX~fEgh2@;1(r;0h(Zk|~7aw0sgr@aOtAZ1%$vPA&I_mkAz#0zC{nb9uJHqkA}?i^29nfZTa@XcVKlZDbgVS{1@Yg&z-d z@&2UuY2kLsE!3B5%V#)hhVADORsNY4H#$Jx>Pg*MS9qkWN=-TeS)h!{ttt2uAjkU+ z(=6D;-uP$v5YGBnQ)@sg?FDx}-9bit5ff(d!Iv3;CxrFjsi)`-~mJBpU#> z0b53fj}lD{f(iD((>AM^n@(?ztZbjZ52fdUAi}6pQI;xHhzekcbm15^txSK4n_l+Q zY8h#)!ASh5MyJ4D{BwB9sF$Bpb4IxnOG!CINdWVdxC@5w zpC|Y3gD$ZIS^B89IUiVz3ks&7uWKOWgp0xcYYq0Kyd{Ej@qnuTBwwF&4i>Z5ue0^v zX6)bBlGmW80e)&hkm_P7h4t3DW`*5lT>DTXcQ-ZwZ~-av@!V-;NnNa6p|!MWhcplh zJhCC4uN3^q*Kp2Ix3@x%Zc~#VzW!`VSnkYa)}eS-PPk)RO*>u_AAGK3xw`SHp=t># zxu<^zh=pSG7aMrdk9F6ZXagbk203X8(GV}ZZ*s6xm}DiBH`bO=pwpp`Q-wuVIgP5F zwjDq$|5&$wTfYTf7cQXSy6HU&$2Z|YtpR=A4V$^~;k1n_S))bHOL>mTb#uu)(q_;Y{j?_W#yFS%N%t8c|u z^EQvLKtbgJ?#A|Ja!tiY0TxIK!xaIQul(;hfEoDsOUT0AKM88G-6m+6(23$(*uoe;I3x=aC~C*WXF!`rk1 zSm$M5E^C#8dn(qWE6@J(+-cG;8A{q!80+SyX>uW`@ZjW&8bqJ7t#>>|F&;qdl6$#{ z-#!lY)(tO^J~G7j%flT%dO`BWWIv%WBMOoNWr|dAwb2qMN?E*A+O-6Kz{p!|n~_%V$>^2w6R2Dh|Tu6Re0M#9Cu~7Z!Y^ zd19Iozj&=oriOKN6}+4jZeY-r@KaRZ=~q7#rVxw4yX8?p+?aYbo{wy%?lzp_Ieth0 z*(M)ZyFiFAJhTk#4h7H&A|8oAVe_f=>a}X6Q_#u!gKj`Se&7{f`<3jzX_fYP13dMe z)`JTRb0eCrn?6g+6@&fEFZ`{&QAyiq#!bj>u<*H2&3qKcolhg6%5 zOkXw=^gzn|q4Sk3rW126A;YFF{nrYttfGs7gt)iu^Sl`o_c=^BvE@ShjR3qVopPw3+^xC7@$_EbnRsZ@f{!zebltIBIDPZJDIh^fV zz&YnOl{2XsnG*~Cn#{aOqdG2rhl$g=2_Gvxc(&BiB2r6JC{LvpHG2!4)1C* zwf%u#hxB5GGYBqv1WdI)u*`ho{IJdh4Tn@WyHPwnUd!a3=FbGFemaZ&m=FKsMphsf z8rEV0W;B35{nm|!)bTre&e|4|K3^|8T<{8VVkc-uny-J>&CpAEg7%gdHjwrHslV{| zuYY8{ed~kr%pM(lsDFO$Kh|hjyHfw$UjMnY`;_aqF45jF;J#!3_*j3w_MxbkY!Hn8 zUeo-kzWD8Xk_XL|_AD9488RdPt-kpEd*4~R`qMW&i|4Q2rCNB9u>bQq{p;pKbGSb- zApWgxamD{r=6q21e0vlB=}%ZPfBo!#KQ>PF{t7+#G7lx%{^p>V zr<9>s)*ZMRKpLC;^xA}(93}j&9scc2{`^`LYw=}@e9mWdvr*KwAH>;H&)UD=W2Qjp zs0h9}j+%E1Zix%(ogC|DaK?@51WN9nFz=}`6cC9DEJYirqpMWNGBTxhLBo?10DK!EIs==+L63YlW_yG`J9`8 zkOBi~kjMG)8i1lsrJGc);4=Osv||=Mz4N0hpF>&jNkFNNsJu6ym-aY2pqw9N9>U^X zO!B1Q0bFD3ym}XiR{j7nY&7k-bVgZ-aKU*>vo_bxp$LNGB$dwF2PvZN3jq)B!9H_R zrH^>&o}^*hS$ez|a04<7c}>`ft7*3WwN9nf1WF$DbIt>r&cn-T%85k3_9JInIl(T( zLPHmIdu%q)Fo(vxBdjDqKEf^zG@zf(T6|o*&v+x`)6+F{i)iJ+xcR9HA%)EK0yFYZ z1%QEqrP&Sq18EqL2!A}U!{J?PFgVr5AzoN{pO+CL&{$@iS`B<;xqIPD)TPj61d&!Y zp3y|=B6V*~7;)c7{&po{3qzk%z+Vlo_hkqu)U%+yddQDx94=d+dpMfXlCvwsV{$lb z=Pqyfoe*n%*fLQo%DUAOSzk4t$j3u1r3P34ZxKZHkS-5~k|vNqim=TYtP)CHkS_xZ zj~K?O&AD1L@;!0u6Nqg?(-?4KLafGsxd~cmrTs{Tg3%TT{!ef9LOsKKrpf(u8lMMLvv;oc zH!D}HZ?wEhLjvLGHBI)hKVZgeY;~Ptm84d{*6F`_x$+G(U;q zB;Kje80;OV?2R5Czb=oO-E!**)y{>?2M$Qk!|F&V^P={%fbZH#pG?s;P{t zC>PW4rsoj7i^6nRc2+Nglwi^r1HRm+^;Zl?*AP;Et@x7lS8(mr1>5V(+|)ymsNn^8!lL7-tnH`4x6<}(i*(UuuP z^f92#dY9E88QiTH)QF|Z7#}B83nPCAt>%5cR?;n6Ek%RQF#^3z&Vju)8FniT*`=jD zEVdL#iv?%_R3>83?tm`Z*28t?P1y-H+O3e_UXOSAe%exU6gvnuzTw6FFnUl3LDI@| z93=6CFGpp1*YL?;A(9=IZa(2rq*5%>9+8RRhgbOUEH+HA@Sy=oIMbI=C4LtcDC8X*s00|F#5= zFouR_0wiVuBQ8=;qzH0l2yi`DB_wU(;Q4ez<8E&^^#$fMYH3~XT;%<$FhfRRAlb5u z9ww_Sv^pOf$eIl2J%LEYFIH=5BaywBxAWaX0fVu2vKd%UdX>6ENRvbp-dK>#IBD^K zk21{Ai5|OT8^}5W=2jr?8ZuOtz@)BPAO&#Fow- z!fd30IUj^LC6E2@%!D=l%c*IU9eF1WVZ>CjpLg<8Ci3%q#vgLz<79 z3Y*F{uWZFK0?=`t7-~uU&QE7OfvD_|_HW>*0f$n5a9=EL_tdcEN=#R42@8&cbUJE6 zYd&;3RL`piNXlLh{RR2n8q#y&D~~I4RJO{mPz}rFb5>5NQPOX&Ng7OVj=-~gr+%8| z9d0z7>g!WZ9E?o^Ms;WIK}59lly=?zY)WIBZiO3A1Aq-G0B;w-`>}M zNGR+M|5`iU(5rPwK*7k-yPJRxFE0Htx?CD<4pvpe#prTPsqcSqUCTRC_jqLD0`f* zH+;fZ4jt=U$8KOFPLofmn8mv(Z9Zdn=(&PtU`Zf59eST5=7We-%218G6qoPR>fSU` z^t>?4eO}R<@<3-hb!7?gi%;{e`X$cp2SksBFkXDi{HvIsfV+1gHxWAFn-<|m^KiOZ zCtFJc$->ml%}(C3grVkixC$Xi*L)7dNj!R4ooHlOG%JDCgMb+YO~R%}RU5ZqPOI(U z4N9w}+=@8xZ*{DD$atE?3kLye1X?Sa(k{3&M3YLG%m|MPW%q7a;{wZ1B`QD_NgDMz zeS$ZBf7n>|d7&owc^QNeQXtBn=N6_iS8t1!0usZ%d%Cj_e)m%6{sH!@tffk11(_KM z5RxWm8czN|OAmM-pg3izF>VY#xZ4jHU*14EJ65PsyC%0A;Egjcq-|VPm5LMztSuH! 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 Z@OuP)kHGH{_&ox@N8tAe{4XDY{|7L-6IlQN diff --git a/images/quick_tour/web_debug_toolbar.png b/images/quick_tour/web_debug_toolbar.png index 1e2b38d06cb529e865343fa3f2070c590bf1f291..86249e862f3702d10154184e06ee55c0485c35f3 100644 GIT binary patch literal 51250 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

wgyg2Dfv{mpL}?~ym(Suu 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

Page not found

{# example security usage, see below #} - {% if app.user and is_granted('IS_AUTHENTICATED_FULLY') %} + {% if is_granted('IS_AUTHENTICATED_FULLY') %} {# ... #} {% endif %} @@ -124,24 +124,6 @@ store the HTTP status code and message respectively. for the standard HTML exception page or ``exception.json.twig`` for the JSON exception page. -Avoiding Exceptions when Using Security Functions in Error Templates -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -One of the common pitfalls when designing custom error pages is to use the -``is_granted()`` function in the error template (or in any parent template -inherited by the error template). If you do that, you'll see an exception thrown -by Symfony. - -The cause of this problem is that routing is done before security. If a 404 error -occurs, the security layer isn't loaded and thus, the ``is_granted()`` function -is undefined. The solution is to add the following check before using this function: - -.. code-block:: twig - - {% if app.user and is_granted('...') %} - {# ... #} - {% endif %} - .. _testing-error-pages: Testing Error Pages during Development From ac107c7f3f9007eb841673c40ef463476ed364c3 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 17 May 2015 16:45:31 -0400 Subject: [PATCH 049/235] WIP documentation for the new guard auth Just a bootstrap to explain things, and start discussion --- cookbook/security/guard-api-key.rst | 485 +++++++++++++++++++++ cookbook/security/guard-authentication.rst | 12 + 2 files changed, 497 insertions(+) create mode 100644 cookbook/security/guard-api-key.rst create mode 100644 cookbook/security/guard-authentication.rst diff --git a/cookbook/security/guard-api-key.rst b/cookbook/security/guard-api-key.rst new file mode 100644 index 00000000000..76f6256fcbd --- /dev/null +++ b/cookbook/security/guard-api-key.rst @@ -0,0 +1,485 @@ +.. index:: + single: Security; Custom Request Authenticator + +How to Authenticate Users with an API Key using Guard +===================================================== + +Nowadays, it's quite usual to authenticate the user via an API key (when developing +a web service for instance). The API key is provided for every request and is +passed as a query string parameter or via an HTTP header. + +Setting up the authenticator is just 3 steps: + +* :ref:`cookbook-guard-api-authenticator` +* :ref:`cookbook-guard-api-configuration` +* :ref:`cookbook-guard-api-user-provider` + +.. _cookbook-guard-api-authenticator: + +A) Create the Guard Authenticator +--------------------------------- + +Suppose you want to read an ``X-API-TOKEN`` header on each request and use +that to authenticate the user. To do this, create a class that implements +:class:`Symfony\\Component\\Security\\Guard\\\GuardAuthenticatorInterface`:: + + // src/AppBundle/Security/TokenAuthenticator.php + namespace AppBundle\Security; + + use Symfony\Component\HttpFoundation\Request; + use Symfony\Component\HttpFoundation\Response; + use Symfony\Component\Security\Core\Exception\AuthenticationCredentialsNotFoundException; + use Symfony\Component\Security\Guard\AbstractGuardAuthenticator; + use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; + use Symfony\Component\Security\Core\Exception\AuthenticationException; + use Symfony\Component\Security\Core\User\UserProviderInterface; + + class TokenAuthenticator extends AbstractGuardAuthenticator + { + public function getCredentialsFromRequest(Request $request) + { + $token = $request->headers->get('X-AUTH-TOKEN'); + + // no token? Don't do anything :D + if (!$token) { + return; + } + + return [ + 'token' => $token, + ]; + } + + public function authenticate($credentials, UserProviderInterface $userProvider) + { + $token = $credentials['token']; + + // call a method on your UserProvider - see below for details + $user = $userProvider->loadUserByToken($token); + + if (!$user) { + throw new AuthenticationCredentialsNotFoundException(); + } + + return $user; + } + + public function onAuthenticationSuccess(Request $request, TokenInterface $token, $providerKey) + { + // on success, just let the request keep going! + return null; + } + + public function onAuthenticationFailure(Request $request, AuthenticationException $exception) + { + $data = array( + // you might translate this message + 'message' => $exception->getMessageKey() + ); + + return new Response(json_encode($data), 403); + } + + /** + * Called when authentication is needed, but it's not sent + */ + public function start(Request $request, AuthenticationException $authException = null) + { + $data = array( + // you might translate this message + 'message' => 'Authentication Required' + ); + + return new Response(json_encode($data), 401); + } + + public function supportsRememberMe() + { + return false; + } + } + +Nice work! You're not done yet, but let's look at each piece: + +**getCredentialsFromRequest()** + The guard system calls this method on *every* request and your job is + to read the token from the request and return it (it'll be passed to + ``authenticate()``). If you return ``null``, the rest of the authentication + process is skipped. + +**authenticate** + If you returned something from ``getCredentialsFromRequest()``, that + value is passed here as ``$credentials``. This is the *core* of the authentication + process. Your job is to use ``$credentials`` to return a ``UserInterface`` + object *or* throw an :class:`Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException` + (e.g. if the token does not exist). *How* you do this is up to you and + you'll learn more in :ref:`user provider ` + section. + +**onAuthenticationSuccess** + This is called after successful authentication and your job is to either + return a :class:`Symfony\\Component\\HttpFoundation\\Response` object + that will be sent to the client or ``null`` to continue the request + (e.g. allow the route/controller to be called like normal). Since this + is an API where each request authenticates itself, you want to return + ``nul``. + +**onAuthenticationFailure** + This is called if authentication fails (i.e. if you throw an + :class:`Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException`) + inside ``authenticate()`` or ``getCredentialsFromRequest()``. Your job + is to return the :class:`Symfony\\Component\\HttpFoundation\\Response` + object that should be sent to the client. + +**start** + This is called if the client accesses a URI/resource that requires authentication, + but no authentication details were sent (i.e. you returned ``null`` from + ``getCredentialsFromRequest()``). Your job is to return a + :class:`Symfony\\Component\\HttpFoundation\\Response` object that helps + the user authenticate (e.g. a 401 response that says "token is missing!"). + +**supportsRememberMe** + Since this is a stateless API, you do not want to support "remember me" + functionality. + +.. _cookbook-guard-api-configuration: + +B) Configure the Service and security.yml +----------------------------------------- + +To use your configurator, you'll need to register it as a service: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/services.yml + services: + app.token_authenticator: + class: AppBundle\Security\TokenAuthenticator + arguments: [] + + .. code-block:: xml + + + + + + + + + + + + .. code-block:: php + + // app/config/services.php + + // ... + $container + ->register('app.token_authenticator', 'AppBundle\Security\TokenAuthenticator'); + +Now you can configure your firewall to use the ``guard`` authentication system +and your new ``app.token_authenticator`` authenticator: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/security.yml + security: + # ... + + firewalls: + secured_area: + pattern: ^/ + # set to false if you *do* want to store users in the session + stateless: true + guard: + authenticators: + - app.token_authenticator + + .. code-block:: xml + + + + + + + + + + apikey_authenticator + + + + + + .. code-block:: php + + // app/config/security.php + + // .. + + $container->loadFromExtension('security', array( + 'firewalls' => array( + 'secured_area' => array( + 'pattern' => '^/', + 'stateless' => true, + 'simple_preauth' => array( + 'authenticators' => array( + 'app.token_authenticator' + ), + ), + ), + ), + )); + +Perfect! Now that the security system knows about your authenticator, the +last step is to configure your "user provider" and make it work nicely with +the authenticator. + +C) Adding the User Provider +--------------------------- + +Even though you're authenticating with an API token, the end result is that +a "User" object is set on the security system. Returning this user is the goal +of your configurator's ``authenticate()`` method. + +To help out, you'll need to configure a :ref:`user provider `. +A few core providers exist (including one that :ref:`loads users from Doctrine `), +but creating one that does exactly what you want is easy. + +Suppose you're using Doctrine and have a ``User`` entity that has a ``token`` +property that can be used to authenticate with your API (the ``User`` entity +class isn't shown here). To load users from that entity, create a class that +implements :class:`Symfony\\Component\\Security\\Core\\User\\UserProviderInterface`:: + + namespace AppBundle\Security; + + use AppBundle\Repository\UserRepository; + use Doctrine\ORM\EntityManager; + use Symfony\Component\Security\Core\Exception\UsernameNotFoundException; + use Symfony\Component\Security\Core\User\UserInterface; + use Symfony\Component\Security\Core\User\UserProviderInterface; + + class UserProvider implements UserProviderInterface + { + private $em; + + public function __construct(EntityManager $em) + { + $this->em = $em; + } + + // UserProviderInterface + public function loadUserByUsername($username) + { + $user = $this->getUserRepository()->findOneBy(array('username' => $username)); + + if (null === $user) { + throw new UsernameNotFoundException(sprintf('User "%s" not found.', $username)); + } + + return $user; + } + + // UserProviderInterface + public function refreshUser(UserInterface $user) + { + $user = $this->getUserRepository()->find($user->getId()); + if (!$user) { + throw new UsernameNotFoundException(sprintf('User with id "%s" not found!', $user->getId())); + } + + return $user; + } + + // UserProviderInterface + public function supportsClass($class) + { + return $class === get_class($this) || is_subclass_of($class, get_class($this)); + } + + // our own custom method + public function loadUserByToken($token) + { + return $this->getUserRepository()->findOneBy(array( + 'token' => $token + )); + } + + /** + * @return UserRepository + */ + private function getUserRepository() + { + return $this->em->getRepository('AppBundle:User'); + } + } + +Most of these methods are part of ``UserInterface`` and are used internally. +But ``loadUserByToken()`` is a custom method that you'll use in a moment. + +Register your brand-new "user provider" as a service: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/services.yml + services: + app.user_provider: + class: AppBundle\Security\UserProvider + arguments: ['@doctrine.orm.entity_manager'] + + + .. code-block:: xml + + + + + + + + + doctrine.orm.entity_manager + + + + + .. code-block:: php + + // app/config/services.php + + // ... + $container + ->register('app.user_provider', 'AppBundle\Security\UserProvider') + ->setArguments(array( + new Reference('doctrine.orm.entity_manager') + )); + +And finally plug this into your security system and tell your firewall that +this is your provider: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/security.yml + security: + # ... + + providers: + # this key could be anything, but it's referenced below + main_provider: + id: app.user_provider + + firewalls: + secured_area: + # all the existing stuff ... + provider: main_provider + + .. code-block:: xml + + + + + + + + + + + + + + + + .. code-block:: php + + // app/config/security.php + + // .. + + $container->loadFromExtension('security', array( + 'firewalls' => array( + 'secured_area' => array( + // ... + 'provider' => 'main_provider' + ), + ), + 'providers' => array( + 'main_provider' => array( + 'id' => 'app.user_provider', + ), + ), + )); + +Great work! Because of this, when ``authenticate()`` is called on your ``TokenAuthenticator``, +the ``$userProvider`` argument will be *your* ``UserProvider`` class. This +means you can add whatever methods to ``UserProvider`` that you want, and +then use them inside ``authenticate()``. + +As a reminder, the ``TokenAuthenticator::authenticate()`` looks like this:: + + // src/AppBundle/Security/TokenAuthenticator.php + // ... + + public function authenticate($credentials, UserProviderInterface $userProvider) + { + $token = $credentials['token']; + + // call a method on your UserProvider - see below for details + $user = $userProvider->loadUserByToken($token); + + if (!$user) { + throw new AuthenticationCredentialsNotFoundException(); + } + + return $user; + } + +To query for a ``User`` object whose ``token`` property matches the ``$token``, +you can use the ``UserProvider::loadUserByToken()`` that was added a moment +ago. It makes that query and reutrns the ``User`` object. + +This is just *one* example: you could add whatever methods to ``UserProvider`` +that you want or use whatever logic you want to return the ``User`` object. + +Doing more with Guard Auth +-------------------------- + +Now that you know how to authenticate with a token, see what else you can +do: + +Doing more with Guard Auth +-------------------------- + +Now that you know how to authenticate with a token, see what else you can +do: + +* :doc:`Creating a Login Form ` +* :doc:`Using Multiple Authenticators (Login form *and* API Token) ` + diff --git a/cookbook/security/guard-authentication.rst b/cookbook/security/guard-authentication.rst new file mode 100644 index 00000000000..c27886c264e --- /dev/null +++ b/cookbook/security/guard-authentication.rst @@ -0,0 +1,12 @@ +.. index:: + single: Security; Custom Authentication + +How to Authenticate in any way using Guard +========================================== + +Whether you're creating a traditional login form or authenticating via an +API token, using the guard authentication system will make this painless. + +* :doc:`Creating a Login Form ` +* :doc:`Authenticating with an API Token ` +* :doc:`Using Multiple Authenticators (Login form *and* API Token) ` From 9e411fee438c4ac23e56a6280a124c3310d80512 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 17 May 2015 20:51:00 -0400 Subject: [PATCH 050/235] I'm extending the abstract class - so mention that. Also adding anonymous You probably want anonymous, because without it, if you return null so that the listener does nothing, you'll get an exception from the AccessListener. This article is written more where you don't *force* auth in the authenticator, but then if a resource is protected, it of course requires it. --- cookbook/security/guard-api-key.rst | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/cookbook/security/guard-api-key.rst b/cookbook/security/guard-api-key.rst index 76f6256fcbd..25fc83ba11b 100644 --- a/cookbook/security/guard-api-key.rst +++ b/cookbook/security/guard-api-key.rst @@ -20,8 +20,9 @@ A) Create the Guard Authenticator --------------------------------- Suppose you want to read an ``X-API-TOKEN`` header on each request and use -that to authenticate the user. To do this, create a class that implements -:class:`Symfony\\Component\\Security\\Guard\\\GuardAuthenticatorInterface`:: +that to authenticate the user. To do this, create a class that extends +:class:`Symfony\\Component\\Security\\Guard\\AbstractGuardAuthenticator` +(or which implements :class:`Symfony\\Component\\Security\\Guard\\GuardAuthenticatorInterface`):: // src/AppBundle/Security/TokenAuthenticator.php namespace AppBundle\Security; @@ -199,6 +200,7 @@ and your new ``app.token_authenticator`` authenticator: pattern: ^/ # set to false if you *do* want to store users in the session stateless: true + anonymous: true guard: authenticators: - app.token_authenticator @@ -218,6 +220,7 @@ and your new ``app.token_authenticator`` authenticator: apikey_authenticator @@ -237,6 +240,7 @@ and your new ``app.token_authenticator`` authenticator: 'secured_area' => array( 'pattern' => '^/', 'stateless' => true, + 'anonymous' => true, 'simple_preauth' => array( 'authenticators' => array( 'app.token_authenticator' From bfce91b5b1b16ee98d4db29b6486cd3d5ee63261 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Mon, 18 May 2015 10:06:17 -0400 Subject: [PATCH 051/235] Fixing minor comments --- cookbook/security/guard-api-key.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cookbook/security/guard-api-key.rst b/cookbook/security/guard-api-key.rst index 25fc83ba11b..abf4967769d 100644 --- a/cookbook/security/guard-api-key.rst +++ b/cookbook/security/guard-api-key.rst @@ -46,9 +46,9 @@ that to authenticate the user. To do this, create a class that extends return; } - return [ + return array( 'token' => $token, - ]; + ); } public function authenticate($credentials, UserProviderInterface $userProvider) @@ -241,7 +241,7 @@ and your new ``app.token_authenticator`` authenticator: 'pattern' => '^/', 'stateless' => true, 'anonymous' => true, - 'simple_preauth' => array( + 'guard' => array( 'authenticators' => array( 'app.token_authenticator' ), From 440fe6f4d04e78dba22876fc363b96b78b766292 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 22 Nov 2015 18:31:06 -0500 Subject: [PATCH 052/235] revamping Guard article --- cookbook/security/api_key_authentication.rst | 5 + .../custom_authentication_provider.rst | 1 + .../custom_password_authenticator.rst | 5 + cookbook/security/guard-api-key.rst | 489 --------------- cookbook/security/guard-authentication.rst | 573 +++++++++++++++++- 5 files changed, 580 insertions(+), 493 deletions(-) delete mode 100644 cookbook/security/guard-api-key.rst diff --git a/cookbook/security/api_key_authentication.rst b/cookbook/security/api_key_authentication.rst index f2e9fc7e824..da7de4f8502 100644 --- a/cookbook/security/api_key_authentication.rst +++ b/cookbook/security/api_key_authentication.rst @@ -4,6 +4,11 @@ How to Authenticate Users with API Keys ======================================= +.. tip:: + + Check out :doc:`/cookbook/security/guard-authentication` for a simpler and more + flexible way to accomplish custom authentication tasks like this. + Nowadays, it's quite usual to authenticate the user via an API key (when developing a web service for instance). The API key is provided for every request and is passed as a query string parameter or via an HTTP header. diff --git a/cookbook/security/custom_authentication_provider.rst b/cookbook/security/custom_authentication_provider.rst index 0d57295277a..f44ea0b8cf8 100644 --- a/cookbook/security/custom_authentication_provider.rst +++ b/cookbook/security/custom_authentication_provider.rst @@ -10,6 +10,7 @@ How to Create a custom Authentication Provider you through that process. But depending on your needs, you may be able to solve your problem in a simpler, or via a community bundle: + * :doc:`/cookbook/security/guard-authentication` * :doc:`/cookbook/security/custom_password_authenticator` * :doc:`/cookbook/security/api_key_authentication` * To authenticate via OAuth using a third-party service such as Google, Facebook diff --git a/cookbook/security/custom_password_authenticator.rst b/cookbook/security/custom_password_authenticator.rst index c8d54869c11..c71995b7402 100644 --- a/cookbook/security/custom_password_authenticator.rst +++ b/cookbook/security/custom_password_authenticator.rst @@ -4,6 +4,11 @@ How to Create a Custom Form Password Authenticator ================================================== +.. tip:: + + Check out :doc:`/cookbook/security/guard-authentication` for a simpler and more + flexible way to accomplish custom authentication tasks like this. + Imagine you want to allow access to your website only between 2pm and 4pm UTC. Before Symfony 2.4, you had to create a custom token, factory, listener and provider. In this entry, you'll learn how to do this for a login form diff --git a/cookbook/security/guard-api-key.rst b/cookbook/security/guard-api-key.rst deleted file mode 100644 index abf4967769d..00000000000 --- a/cookbook/security/guard-api-key.rst +++ /dev/null @@ -1,489 +0,0 @@ -.. index:: - single: Security; Custom Request Authenticator - -How to Authenticate Users with an API Key using Guard -===================================================== - -Nowadays, it's quite usual to authenticate the user via an API key (when developing -a web service for instance). The API key is provided for every request and is -passed as a query string parameter or via an HTTP header. - -Setting up the authenticator is just 3 steps: - -* :ref:`cookbook-guard-api-authenticator` -* :ref:`cookbook-guard-api-configuration` -* :ref:`cookbook-guard-api-user-provider` - -.. _cookbook-guard-api-authenticator: - -A) Create the Guard Authenticator ---------------------------------- - -Suppose you want to read an ``X-API-TOKEN`` header on each request and use -that to authenticate the user. To do this, create a class that extends -:class:`Symfony\\Component\\Security\\Guard\\AbstractGuardAuthenticator` -(or which implements :class:`Symfony\\Component\\Security\\Guard\\GuardAuthenticatorInterface`):: - - // src/AppBundle/Security/TokenAuthenticator.php - namespace AppBundle\Security; - - use Symfony\Component\HttpFoundation\Request; - use Symfony\Component\HttpFoundation\Response; - use Symfony\Component\Security\Core\Exception\AuthenticationCredentialsNotFoundException; - use Symfony\Component\Security\Guard\AbstractGuardAuthenticator; - use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; - use Symfony\Component\Security\Core\Exception\AuthenticationException; - use Symfony\Component\Security\Core\User\UserProviderInterface; - - class TokenAuthenticator extends AbstractGuardAuthenticator - { - public function getCredentialsFromRequest(Request $request) - { - $token = $request->headers->get('X-AUTH-TOKEN'); - - // no token? Don't do anything :D - if (!$token) { - return; - } - - return array( - 'token' => $token, - ); - } - - public function authenticate($credentials, UserProviderInterface $userProvider) - { - $token = $credentials['token']; - - // call a method on your UserProvider - see below for details - $user = $userProvider->loadUserByToken($token); - - if (!$user) { - throw new AuthenticationCredentialsNotFoundException(); - } - - return $user; - } - - public function onAuthenticationSuccess(Request $request, TokenInterface $token, $providerKey) - { - // on success, just let the request keep going! - return null; - } - - public function onAuthenticationFailure(Request $request, AuthenticationException $exception) - { - $data = array( - // you might translate this message - 'message' => $exception->getMessageKey() - ); - - return new Response(json_encode($data), 403); - } - - /** - * Called when authentication is needed, but it's not sent - */ - public function start(Request $request, AuthenticationException $authException = null) - { - $data = array( - // you might translate this message - 'message' => 'Authentication Required' - ); - - return new Response(json_encode($data), 401); - } - - public function supportsRememberMe() - { - return false; - } - } - -Nice work! You're not done yet, but let's look at each piece: - -**getCredentialsFromRequest()** - The guard system calls this method on *every* request and your job is - to read the token from the request and return it (it'll be passed to - ``authenticate()``). If you return ``null``, the rest of the authentication - process is skipped. - -**authenticate** - If you returned something from ``getCredentialsFromRequest()``, that - value is passed here as ``$credentials``. This is the *core* of the authentication - process. Your job is to use ``$credentials`` to return a ``UserInterface`` - object *or* throw an :class:`Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException` - (e.g. if the token does not exist). *How* you do this is up to you and - you'll learn more in :ref:`user provider ` - section. - -**onAuthenticationSuccess** - This is called after successful authentication and your job is to either - return a :class:`Symfony\\Component\\HttpFoundation\\Response` object - that will be sent to the client or ``null`` to continue the request - (e.g. allow the route/controller to be called like normal). Since this - is an API where each request authenticates itself, you want to return - ``nul``. - -**onAuthenticationFailure** - This is called if authentication fails (i.e. if you throw an - :class:`Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException`) - inside ``authenticate()`` or ``getCredentialsFromRequest()``. Your job - is to return the :class:`Symfony\\Component\\HttpFoundation\\Response` - object that should be sent to the client. - -**start** - This is called if the client accesses a URI/resource that requires authentication, - but no authentication details were sent (i.e. you returned ``null`` from - ``getCredentialsFromRequest()``). Your job is to return a - :class:`Symfony\\Component\\HttpFoundation\\Response` object that helps - the user authenticate (e.g. a 401 response that says "token is missing!"). - -**supportsRememberMe** - Since this is a stateless API, you do not want to support "remember me" - functionality. - -.. _cookbook-guard-api-configuration: - -B) Configure the Service and security.yml ------------------------------------------ - -To use your configurator, you'll need to register it as a service: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/services.yml - services: - app.token_authenticator: - class: AppBundle\Security\TokenAuthenticator - arguments: [] - - .. code-block:: xml - - - - - - - - - - - - .. code-block:: php - - // app/config/services.php - - // ... - $container - ->register('app.token_authenticator', 'AppBundle\Security\TokenAuthenticator'); - -Now you can configure your firewall to use the ``guard`` authentication system -and your new ``app.token_authenticator`` authenticator: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/security.yml - security: - # ... - - firewalls: - secured_area: - pattern: ^/ - # set to false if you *do* want to store users in the session - stateless: true - anonymous: true - guard: - authenticators: - - app.token_authenticator - - .. code-block:: xml - - - - - - - - - - apikey_authenticator - - - - - - .. code-block:: php - - // app/config/security.php - - // .. - - $container->loadFromExtension('security', array( - 'firewalls' => array( - 'secured_area' => array( - 'pattern' => '^/', - 'stateless' => true, - 'anonymous' => true, - 'guard' => array( - 'authenticators' => array( - 'app.token_authenticator' - ), - ), - ), - ), - )); - -Perfect! Now that the security system knows about your authenticator, the -last step is to configure your "user provider" and make it work nicely with -the authenticator. - -C) Adding the User Provider ---------------------------- - -Even though you're authenticating with an API token, the end result is that -a "User" object is set on the security system. Returning this user is the goal -of your configurator's ``authenticate()`` method. - -To help out, you'll need to configure a :ref:`user provider `. -A few core providers exist (including one that :ref:`loads users from Doctrine `), -but creating one that does exactly what you want is easy. - -Suppose you're using Doctrine and have a ``User`` entity that has a ``token`` -property that can be used to authenticate with your API (the ``User`` entity -class isn't shown here). To load users from that entity, create a class that -implements :class:`Symfony\\Component\\Security\\Core\\User\\UserProviderInterface`:: - - namespace AppBundle\Security; - - use AppBundle\Repository\UserRepository; - use Doctrine\ORM\EntityManager; - use Symfony\Component\Security\Core\Exception\UsernameNotFoundException; - use Symfony\Component\Security\Core\User\UserInterface; - use Symfony\Component\Security\Core\User\UserProviderInterface; - - class UserProvider implements UserProviderInterface - { - private $em; - - public function __construct(EntityManager $em) - { - $this->em = $em; - } - - // UserProviderInterface - public function loadUserByUsername($username) - { - $user = $this->getUserRepository()->findOneBy(array('username' => $username)); - - if (null === $user) { - throw new UsernameNotFoundException(sprintf('User "%s" not found.', $username)); - } - - return $user; - } - - // UserProviderInterface - public function refreshUser(UserInterface $user) - { - $user = $this->getUserRepository()->find($user->getId()); - if (!$user) { - throw new UsernameNotFoundException(sprintf('User with id "%s" not found!', $user->getId())); - } - - return $user; - } - - // UserProviderInterface - public function supportsClass($class) - { - return $class === get_class($this) || is_subclass_of($class, get_class($this)); - } - - // our own custom method - public function loadUserByToken($token) - { - return $this->getUserRepository()->findOneBy(array( - 'token' => $token - )); - } - - /** - * @return UserRepository - */ - private function getUserRepository() - { - return $this->em->getRepository('AppBundle:User'); - } - } - -Most of these methods are part of ``UserInterface`` and are used internally. -But ``loadUserByToken()`` is a custom method that you'll use in a moment. - -Register your brand-new "user provider" as a service: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/services.yml - services: - app.user_provider: - class: AppBundle\Security\UserProvider - arguments: ['@doctrine.orm.entity_manager'] - - - .. code-block:: xml - - - - - - - - - doctrine.orm.entity_manager - - - - - .. code-block:: php - - // app/config/services.php - - // ... - $container - ->register('app.user_provider', 'AppBundle\Security\UserProvider') - ->setArguments(array( - new Reference('doctrine.orm.entity_manager') - )); - -And finally plug this into your security system and tell your firewall that -this is your provider: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/security.yml - security: - # ... - - providers: - # this key could be anything, but it's referenced below - main_provider: - id: app.user_provider - - firewalls: - secured_area: - # all the existing stuff ... - provider: main_provider - - .. code-block:: xml - - - - - - - - - - - - - - - - .. code-block:: php - - // app/config/security.php - - // .. - - $container->loadFromExtension('security', array( - 'firewalls' => array( - 'secured_area' => array( - // ... - 'provider' => 'main_provider' - ), - ), - 'providers' => array( - 'main_provider' => array( - 'id' => 'app.user_provider', - ), - ), - )); - -Great work! Because of this, when ``authenticate()`` is called on your ``TokenAuthenticator``, -the ``$userProvider`` argument will be *your* ``UserProvider`` class. This -means you can add whatever methods to ``UserProvider`` that you want, and -then use them inside ``authenticate()``. - -As a reminder, the ``TokenAuthenticator::authenticate()`` looks like this:: - - // src/AppBundle/Security/TokenAuthenticator.php - // ... - - public function authenticate($credentials, UserProviderInterface $userProvider) - { - $token = $credentials['token']; - - // call a method on your UserProvider - see below for details - $user = $userProvider->loadUserByToken($token); - - if (!$user) { - throw new AuthenticationCredentialsNotFoundException(); - } - - return $user; - } - -To query for a ``User`` object whose ``token`` property matches the ``$token``, -you can use the ``UserProvider::loadUserByToken()`` that was added a moment -ago. It makes that query and reutrns the ``User`` object. - -This is just *one* example: you could add whatever methods to ``UserProvider`` -that you want or use whatever logic you want to return the ``User`` object. - -Doing more with Guard Auth --------------------------- - -Now that you know how to authenticate with a token, see what else you can -do: - -Doing more with Guard Auth --------------------------- - -Now that you know how to authenticate with a token, see what else you can -do: - -* :doc:`Creating a Login Form ` -* :doc:`Using Multiple Authenticators (Login form *and* API Token) ` - diff --git a/cookbook/security/guard-authentication.rst b/cookbook/security/guard-authentication.rst index c27886c264e..30d158344e2 100644 --- a/cookbook/security/guard-authentication.rst +++ b/cookbook/security/guard-authentication.rst @@ -1,11 +1,576 @@ .. index:: single: Security; Custom Authentication -How to Authenticate in any way using Guard -========================================== +How to Create a Custom Authentication System with Guard +======================================================= -Whether you're creating a traditional login form or authenticating via an -API token, using the guard authentication system will make this painless. +Whether you need to build a traditional login form, an API token authentication system +or you need to integrate with some proprietary single-sign-on system, the Guard +component can make it easy... and fun! + +In this example, you'll build an API token authentication system... and learn how +to work with Guard. + +Create a User and a User Provider +--------------------------------- + +No matter how you authenticate, you need to create a User class that implements ``UserInterface`` +and configure a :doc:`user provider `. In this +example, users are stored in the database via Doctrine, and each user has an ``apiKey`` +property they can use to access their account via the API:: + + // src/AppBundle/Entity/User.php + namespace AppBundle\Entity; + + use Symfony\Component\Security\Core\User\UserInterface; + use Doctrine\ORM\Mapping as ORM; + + /** + * @ORM\Entity + * @ORM\Table(name="user") + */ + class User implements UserInterface + { + /** + * @ORM\Id + * @ORM\GeneratedValue(strategy="AUTO") + * @ORM\Column(type="integer") + */ + private $id; + + /** + * @ORM\Column(type="string", unique=true) + */ + private $username; + + /** + * @ORM\Colum(type"string", unique=true) + */ + private $apiKey; + + public function getUsername() + { + return $this->username; + } + + public function getRoles() + { + return ['ROLE_USER']; + } + + public function getPassword() + { + } + public function getSalt() + { + } + public function eraseCredentials() + { + } + + // more getters/setters + } + +.. tip:: + + This User doesn't have a password, but you can add a ``password`` property if + you also want to allow this user to login with a password (e.g. via a login form). + +Your ``User`` class doesn't need to be store in Doctrine: do whatever you need. +Next, make sure you've configured a "user provider" for the user: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/security.yml + security: + # ... + + providers: + your_db_provider: + entity: + class: AppBundle:User + + # ... + + .. code-block:: xml + + + + + + + + + + + + + + + + + .. code-block:: php + + // app/config/security.php + $container->loadFromExtension('security', array( + // ... + + 'providers' => array( + 'your_db_provider' => array( + 'entity' => array( + 'class' => 'AppBundle:User', + ), + ), + ), + + // ... + )); + +That's it! Need more information about this step, see: + +* :doc:`/cookbook/security/entity_provider` +* :doc:`/cookbook/security/custom_provider` + +Step 1) Create the Authenticator Class +-------------------------------------- + +To create a custom authentication system, just create a class an make it implement +:class:`Symfony\\Component\\Security\\Guard\\GuardAuthenticatorInterface`. Or, extend +the simpler :class:`Symfony\\Component\\Security\\Guard\\AbstractGuardAuthenticator`. +This requires you to implement six methods:: + + // src/AppBundle/Security/TokenAuthenticator.php + namespace AppBundle\Security; + + use Symfony\Component\HttpFoundation\Request; + use Symfony\Component\HttpFoundation\Response; + use Symfony\Component\Security\Core\User\UserInterface; + use Symfony\Component\Security\Guard\AbstractGuardAuthenticator; + use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; + use Symfony\Component\Security\Core\Exception\AuthenticationException; + use Symfony\Component\Security\Core\User\UserProviderInterface; + use Doctrine\ORM\EntityManager; + + class TokenAuthenticator extends AbstractGuardAuthenticator + { + private $em; + + public function __construct(EntityManager $em) + { + $this->em = $em; + } + + /** + * Called on every request. Return whatever credentials you want, + * or null to stop authentication. + */ + public function getCredentials(Request $request) + { + if (!$token = $request->headers->get('X-AUTH-TOKEN')) { + // no token? Return null and no other methods will be called + return; + } + + // What we return here will be passed to getUser() as $credentials + return array( + 'token' => $token, + ); + } + + public function getUser($credentials, UserProviderInterface $userProvider) + { + $apiToken = $credentials['token']; + + // if null, authentication will fail + // if a User object, checkCredentials() is called + return $this->em->getRepository('AppBundle:User') + ->findOneBy(array('apiToken' => $apiToken)); + } + + public function checkCredentials($credentials, UserInterface $user) + { + // check credentials - e.g. make sure the password is valid + // no credential check is needed in this case + + // return true to cause authentication success + return true; + } + + public function onAuthenticationSuccess(Request $request, TokenInterface $token, $providerKey) + { + // on success, let the request continue + return null; + } + + public function onAuthenticationFailure(Request $request, AuthenticationException $exception) + { + $data = array( + 'message' => strtr($exception->getMessageKey(), $exception->getMessageData()) + + // or to translate this message + // $this->translator->trans($exception->getMessageKey(), $exception->getMessageData()) + ); + + return new Response(json_encode($data), 403); + } + + /** + * Called when authentication is needed, but it's not sent + */ + public function start(Request $request, AuthenticationException $authException = null) + { + $data = array( + // you might translate this message + 'message' => 'Authentication Required' + ); + + return new Response(json_encode($data), 401); + } + + public function supportsRememberMe() + { + return false; + } + } + +Nice work! Each method is explained below: :ref:`The Guard Authenticator Methods`. + +Step 2) Configure the Authenticator +----------------------------------- + +To finish this, register the class as a service: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/services.yml + services: + app.token_authenticator: + class: AppBundle\Security\TokenAuthenticator + arguments: ['@doctrine.orm.entity_manager'] + + .. code-block:: xml + + + + + + + + + .. code-block:: php + + // app/config/services.php + use Symfony\Component\DependencyInjection\Definition; + use Symfony\Component\DependencyInjection\Reference; + + $container->setDefinition('app.token_authenticator', new Definition( + 'AppBundle\Security\TokenAuthenticator', + array(new Reference('doctrine.orm.entity_manager')) + )); + +Finally, configure your ``firewalls`` key in ``security.yml`` to use this authenticator: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/security.yml + security: + # ... + + firewalls: + # ... + + main: + anonymous: ~ + logout: ~ + + guard: + authenticators: + - app.token_authenticator + + # if you want, disable storing the user in the session + # stateless: true + + # maybe other things, like form_login, remember_me, etc + # ... + + .. code-block:: xml + + + + + + + + + + + + app.token_authenticator + + + + + + + + .. code-block:: php + + // app/config/security.php + + // .. + + $container->loadFromExtension('security', array( + 'firewalls' => array( + 'main' => array( + 'pattern' => '^/', + 'anonymous' => true, + 'logout' => true, + 'guard' => array( + 'authenticators' => array( + 'app.token_authenticator' + ), + ), + // ... + ), + ), + )); + +You did it! You now have a fully-working API token authentication system. If you're +homepage required ``ROLE_USER``, then you could test it under different conditions: + +.. code-block:: bash + + # test with no token + curl http://localhost:8000/ + # {"message":"Authentication Required"} + + # test with a bad token + curl -H "X-AUTH-TOKEN: FAKE" http://localhost:8000/ + # {"message":"Username could not be found."} + + # test with a working token + curl -H "X-AUTH-TOKEN: REAL" http://localhost:8000/ + # the homepage controller is executed: the page loads normally + +Now, learn more about what each method does. + +.. _guard-auth-methods: + +The Guard Authenticator Methods +------------------------------- + +Each authenticator needs the following methods: + +**getCredentials(Request $request)** + This will be called on *every* request and your job is to read the token (or + whatever your "authentication" information is) from the request and return it. + If you return ``null``, the rest of the authentication process is skipped. Otherwise, + ``getUser()`` will be called and the return value is passed as the first argument. + +**getUser($credentials, UserProviderInterface $userProvider)** + If ``getCredentials()`` returns a non-null value, then this method is called + and its return value is passed here as the ``$credentials`` argument. Your job + is to return an object that implements ``UserInterface``. If you do, then + ``checkCredentials()`` will be called. If you return ``null`` (or throw an + :ref:`AuthenticationException `) + authentication will fail. + +**checkCredentials($credentials, UserInterface $user)** + If ``getUser()`` returns a User object, this method is called. Your job is to + verify if the credentials are correct. For a login for, this is where you would + check that the password is correct for the user. To pass authentication, return + ``true``. If you return *anything* else + (or throw an :ref:`AuthenticationException `), + authentication will fail. + +**onAuthenticationSuccess(Request $request, TokenInterface $token, $providerKey)** + This is called after successful authentication and your job is to either + return a :class:`Symfony\\Component\\HttpFoundation\\Response` object + that will be sent to the client or ``null`` to continue the request + (e.g. allow the route/controller to be called like normal). Since this + is an API where each request authenticates itself, you want to return + ``nul``. + +**onAuthenticationFailure(Request $request, AuthenticationException $exception)** + This is called if authentication fails. Your job + is to return the :class:`Symfony\\Component\\HttpFoundation\\Response` + object that should be sent to the client. The ``$exception`` will tell you + *what* went wrong during authentication. + +**start** + This is called if the client accesses a URI/resource that requires authentication, + but no authentication details were sent (i.e. you returned ``null`` from + ``getCredentialsFromRequest()``). Your job is to return a + :class:`Symfony\\Component\\HttpFoundation\\Response` object that helps + the user authenticate (e.g. a 401 response that says "token is missing!"). + +**supportsRememberMe** + Since this is a stateless API, you do not want to support "remember me" + functionality. + +.. _guard-customize-error: + +Customizing Error Messages +-------------------------- + +When ``onAuthenticationFailure()`` is called, it is passed an ``AuthenticationException`` +that describes *how* authentication failed via its ``$e->getMessageKey()`` (and +``$e->getMessageData()``) method. The message will be different based on *where* +authentication fails (i.e. ``getUser()`` versus ``checkCredentials()``). + +But, you can easily return a custom message by throwing a +:class:`Symfony\\Component\\Security\\Core\\Exception\\CustomUserMessageAuthenticationException`. +You can throw this from ``getCredentials()``, ``getUser()`` or ``checkCredentials()`` +to cause a failure:: + + // src/AppBundle/Security/TokenAuthenticator.php + // ... + + use Symfony\Component\Security\Core\Exception\CustomUserMessageAuthenticationException; + + class TokenAuthenticator extends AbstractGuardAuthenticator + { + // ... + + public function getCredentials(Request $request) + { + // ... + + if ($token == 'MickyMouse') { + throw new CustomUserMessageAuthenticationException( + 'MickyMouse is not a real API key: he\'s a cartoon character' + ); + } + + // ... + } + + // ... + } + +In this case, since "MickyMouse" is a ridiculous API key, you could include an easter +egg to return a custom message if someone tries this: + +.. code-block:: bash + + curl -H "X-AUTH-TOKEN: MickyMouse" http://localhost:8000/ + # {"message":"MickyMouse is not a real API key: he's a cartoon character"} + +Frequently Asked Questions +-------------------------- + +**Can I have Multiple Authenticators?** + Yes! But when you do, you'll need choose just *one* authenticator to be your + "entry_point". This means you'll need to choose *which* authenticator's ``start()`` + method should be called when an anonymous user tries to access a protected resource. + For example, suppose you have an ``app.form_login_authenticator`` that handles + a traditional form login. When a user access a protected page anonymously, you + want to use the ``start()`` method from the form authenticator and redirect them + to the login page (instead of returning a JSON response): + + .. configuration-block:: + + .. code-block:: yaml + + # app/config/security.yml + security: + # ... + + firewalls: + # ... + + main: + anonymous: ~ + logout: ~ + + guard: + authenticators: + - app.token_authenticator + + # if you want, disable storing the user in the session + # stateless: true + + # maybe other things, like form_login, remember_me, etc + # ... + + .. code-block:: xml + + + + + + + + + + + + app.token_authenticator + + + + + + + + .. code-block:: php + + // app/config/security.php + + // .. + + $container->loadFromExtension('security', array( + 'firewalls' => array( + 'main' => array( + 'pattern' => '^/', + 'anonymous' => true, + 'logout' => true, + 'guard' => array( + 'authenticators' => array( + 'app.token_authenticator' + ), + ), + // ... + ), + ), + )); + +**Can I use this with ``form_login``?** + Yes! ``form_login`` is *one* way to authenticator a user, so you could use + it *and* then add one more more authenticators. Use a guard authenticator doesn't + collide with other ways to authenticate. + +**Can I use this with FOSUserBundle?** + Yes! Actually, FOSUserBundle doesn't handle security: it simply gives you a + ``User`` object and some routes and controllers to help with login, registration, + forgot password, etc. When you use FOSUserBundle, you typically use ``form_login`` + to actually authenticate the user. You can continue doing that (see previous + question) or use the ``User`` object from FOSUserBundle and create your own + authenticator(s) (just like in this article). * :doc:`Creating a Login Form ` * :doc:`Authenticating with an API Token ` From 62dcae3b2d17228a84e7378f30b898cd7057e3a0 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 22 Nov 2015 18:35:19 -0500 Subject: [PATCH 053/235] Using JsonResponse + cleanup --- cookbook/security/guard-authentication.rst | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/cookbook/security/guard-authentication.rst b/cookbook/security/guard-authentication.rst index 30d158344e2..af0656e23f9 100644 --- a/cookbook/security/guard-authentication.rst +++ b/cookbook/security/guard-authentication.rst @@ -149,7 +149,7 @@ This requires you to implement six methods:: namespace AppBundle\Security; use Symfony\Component\HttpFoundation\Request; - use Symfony\Component\HttpFoundation\Response; + use Symfony\Component\HttpFoundation\JsonResponse; use Symfony\Component\Security\Core\User\UserInterface; use Symfony\Component\Security\Guard\AbstractGuardAuthenticator; use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; @@ -217,7 +217,7 @@ This requires you to implement six methods:: // $this->translator->trans($exception->getMessageKey(), $exception->getMessageData()) ); - return new Response(json_encode($data), 403); + return new JsonResponse($data, 403); } /** @@ -230,7 +230,7 @@ This requires you to implement six methods:: 'message' => 'Authentication Required' ); - return new Response(json_encode($data), 401); + return new JsonResponse($data, 401); } public function supportsRememberMe() @@ -571,7 +571,3 @@ Frequently Asked Questions to actually authenticate the user. You can continue doing that (see previous question) or use the ``User`` object from FOSUserBundle and create your own authenticator(s) (just like in this article). - -* :doc:`Creating a Login Form ` -* :doc:`Authenticating with an API Token ` -* :doc:`Using Multiple Authenticators (Login form *and* API Token) ` From 9782ff1bd657dfa0a812b99a2c96610d9bfb6024 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 22 Nov 2015 18:37:39 -0500 Subject: [PATCH 054/235] adding toc entries --- cookbook/map.rst.inc | 1 + cookbook/security/index.rst | 1 + 2 files changed, 2 insertions(+) diff --git a/cookbook/map.rst.inc b/cookbook/map.rst.inc index 8049b6b320d..bcbe7e00c91 100644 --- a/cookbook/map.rst.inc +++ b/cookbook/map.rst.inc @@ -161,6 +161,7 @@ * :doc:`/cookbook/security/form_login_setup` * :doc:`/cookbook/security/entity_provider` + * :doc:`/cookbook/security/guard-authentication` * :doc:`/cookbook/security/remember_me` * :doc:`/cookbook/security/impersonating_user` * :doc:`/cookbook/security/form_login` diff --git a/cookbook/security/index.rst b/cookbook/security/index.rst index c9a478c927a..bdbeaab10d8 100644 --- a/cookbook/security/index.rst +++ b/cookbook/security/index.rst @@ -9,6 +9,7 @@ Authentication (Identifying/Logging in the User) form_login_setup entity_provider + guard-authentication remember_me impersonating_user form_login From 80c637d612310ff93564806118cbb225e83f39d2 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 22 Nov 2015 20:00:59 -0500 Subject: [PATCH 055/235] adding the MicroKernel article --- book/installation.rst | 2 + cookbook/configuration/index.rst | 1 + cookbook/configuration/micro-kernel-trait.rst | 327 ++++++++++++++++++ cookbook/map.rst.inc | 1 + 4 files changed, 331 insertions(+) create mode 100644 cookbook/configuration/micro-kernel-trait.rst diff --git a/book/installation.rst b/book/installation.rst index 407cfc36704..6e213203936 100644 --- a/book/installation.rst +++ b/book/installation.rst @@ -54,6 +54,8 @@ execute it as follows: c:\> move symfony c:\projects c:\projects\> php symfony +.. _installation-creating-the-app: + Creating the Symfony Application -------------------------------- diff --git a/cookbook/configuration/index.rst b/cookbook/configuration/index.rst index 11838c6fa38..741fe5be4e4 100644 --- a/cookbook/configuration/index.rst +++ b/cookbook/configuration/index.rst @@ -5,6 +5,7 @@ Configuration :maxdepth: 2 environments + micro-kernel-trait override_dir_structure using_parameters_in_dic front_controllers_and_kernel diff --git a/cookbook/configuration/micro-kernel-trait.rst b/cookbook/configuration/micro-kernel-trait.rst new file mode 100644 index 00000000000..54f68409133 --- /dev/null +++ b/cookbook/configuration/micro-kernel-trait.rst @@ -0,0 +1,327 @@ +Building your own Framework with the MicroKernelTrait +===================================================== + +A :ref:`traditional Symfony app ` contains a sensible +directory structure, various configuration files and an ``AppKernel`` with several +bundles already-registered. This is a fully-featured app that's ready to go. + +But did you know, you can create a fully-functional Symfony application in as little +as one file? This is possible thanks to the new +:class:`Symfony\\Bundle\\FrameworkBundle\\Kernel\\MicroKernelTrait`. This allows +you to start with a tiny application, and then add features and structure as you +need to. + +.. note:: + + The MicroKernelTrait requires PHP 5.4. However, there's nothing special about + this trait. If you're using PHP 5.3, simply copy its methods into *your* kernel + class to get the same functionality. + +A Single-File Symfony Application +--------------------------------- + +Start with a completely empty directory. Get ``symfony/symfony`` as a dependency +via Composer: + +.. code-block:: bash + + composer require symfony/symfony + +Next, create an ``index.php`` file that creates a kernel class and executes it:: + + use Symfony\Bundle\FrameworkBundle\Kernel\MicroKernelTrait; + use Symfony\Component\Config\Loader\LoaderInterface; + use Symfony\Component\DependencyInjection\ContainerBuilder; + use Symfony\Component\HttpFoundation\JsonResponse; + use Symfony\Component\HttpFoundation\Request; + use Symfony\Component\HttpKernel\Kernel; + use Symfony\Component\Routing\RouteCollectionBuilder; + + // require Composer's autoloader + require __DIR__.'/vendor/autoload.php'; + + class AppKernel extends Kernel + { + use MicroKernelTrait; + + public function registerBundles() + { + return array( + new Symfony\Bundle\FrameworkBundle\FrameworkBundle() + ); + } + + protected function configureContainer(ContainerBuilder $c, LoaderInterface $loader) + { + // PHP equivalent of config.yml + $c->loadFromExtension('framework', array( + 'secret' => 'S0ME_SECRET' + )); + } + + protected function configureRoutes(RouteCollectionBuilder $routes) + { + // kernel is a service that points to this class + // optional 3rd argument is the route name + $routes->add('/random/{limit}', 'kernel:randomAction'); + } + + public function randomAction($limit) + { + return new JsonResponse(array( + 'number' => rand(0, $limit) + )); + } + } + + $kernel = new AppKernel('dev', true); + $request = Request::createFromGlobals(); + $response = $kernel->handle($request); + $response->send(); + $kernel->terminate($request, $response); + +That's it! To test it, you can start the built-in web server: + +.. code-block:: bash + + $ php -S localhost:8000 + +Then see the JSON response in your browser: + +> http://localhost:8000/random/10 + +The Methods of a "Micro" Kernel +------------------------------- + +When you use the ``MicroKernelTrait``, your kernel needs to have exactly three methods +that define your bundles, your services and your routes: + +**registerBundles()** + This is the same ``registerBundles()`` that you see in a normal kernel. + +**configureContainer(ContainerBuilder $c, LoaderInterface $loader)** + This methods builds and configures the container. In practice, you will use + ``loadFromExtension`` to configure different bundles (this is the equivalent) + of what you see in a normal ``config.yml`` file. You can also register services + directly in PHP or load external configuration files (shown below). + +**configureRoutes(RouteCollectionBuilder $routes)** + Your job in this method is to add routes to the system. The ``RouteCollectionBuilder`` + is new in Symfony 2.8 and has methods that make adding routes in PHP more fun. + You can also load external routing files (shown below). + + +Advanced Example: Twig, Annotations and the Web Debug Toolbar +------------------------------------------------------------- + +The purpose of the ``MicroKernelTrait`` is *not* to have a single-file application. +Instead, it's goal to give you the power to choose your bundles and structure. + +First, you'll probably want to put your PHP classes in an ``src/`` directory. Configure +your ``composer.json`` file to load from there: + +... code-block:: json + +{ + "require": { + "...": "...", + }, + "autoload": { + "psr-4": { + "": "src/" + } + } +} + +Now, suppose you want to use Twig and load routes via annotations. For annotation +routing, you need SensioFrameworkExtraBundle. This comes with a normal Symfony project. +But in this case, you need to download it: + +.. code-block:: bash + + composer require sensio/framework-extra-bundle + +Instead of putting *everything* in ``index.php``, create a new ``app/AppKernel.php`` +to hold the kernel. Now it looks like this:: + + // app/AppKernel.php + + use Symfony\Bundle\FrameworkBundle\Kernel\MicroKernelTrait; + use Symfony\Component\Config\Loader\LoaderInterface; + use Symfony\Component\DependencyInjection\ContainerBuilder; + use Symfony\Component\HttpKernel\Kernel; + use Symfony\Component\Routing\RouteCollectionBuilder; + use Doctrine\Common\Annotations\AnnotationRegistry; + + // require Composer's autoloader + $loader = require __DIR__.'/../vendor/autoload.php'; + // auto-load annotations + AnnotationRegistry::registerLoader(array($loader, 'loadClass')); + + class AppKernel extends Kernel + { + use MicroKernelTrait; + + public function registerBundles() + { + $bundles = array( + new Symfony\Bundle\FrameworkBundle\FrameworkBundle(), + new Symfony\Bundle\TwigBundle\TwigBundle(), + new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle() + ); + + if ($this->getEnvironment() == 'dev') { + $bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle(); + } + + return $bundles; + } + + protected function configureContainer(ContainerBuilder $c, LoaderInterface $loader) + { + $loader->load(__DIR__.'/config/config.yml'); + + // configure WebProfilerBundle only if the bundle is enabled + if (isset($this->bundles['WebProfilerBundle'])) { + $c->loadFromExtension('web_profiler', array( + 'toolbar' => true, + 'intercept_redirects' => false, + )); + } + } + + protected function configureRoutes(RouteCollectionBuilder $routes) + { + // import the WebProfilerRoutes, only if the bundle is enabled + if (isset($this->bundles['WebProfilerBundle'])) { + $routes->mount('/_wdt', $routes->import('@WebProfilerBundle/Resources/config/routing/wdt.xml')); + $routes->mount('/_profiler', $routes->import('@WebProfilerBundle/Resources/config/routing/profiler.xml')); + } + + // load the annotation routes + $routes->mount( + '/', + $routes->import(__DIR__.'/../src/App/Controller/', 'annotation') + ); + } + } + +Unlike the previous kernel, this loads an external ``app/config/config.yml`` file, +because the configuration started to get bigger: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/config.yml + framework: + secret: S0ME_SECRET + templating: + engines: ['twig'] + profiler: { only_exceptions: false } + + .. code-block:: xml + + + + + + + + twig + + + + + + .. code-block:: php + + // app/config/config.php + $container->loadFromExtension('framework', array( + 'secret' => 'S0ME_SECRET', + 'templating' => array( + 'engines' => array('twig'), + ), + 'profiler' => array( + 'only_exceptions' => false, + ), + )); + +This also loads annotation routes from an ``src/App/Controller/`` directory, which +has one file in it:: + + // src/App/Controller/MicroController.php + namespace App\Controller; + + use Symfony\Bundle\FrameworkBundle\Controller\Controller; + use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; + + class MicroController extends Controller + { + /** + * @Route("/random/{limit}") + */ + public function randomAction($limit) + { + $number = rand(0, $limit); + + return $this->render('micro/random.html.twig', array( + 'number' => $number + )); + } + } + +Template files should live in the ``Resources/views`` directory of whatever directory +your *kernel* lives in. Since ``AppKernel`` lives in ``app/``, this template lives +at ``app/Resources/views/micro/random.html.twig``. + +Finally, you need a front controller to boot and run the application. Create a +``web/index.php``: + + // web/index.php + + use Symfony\Component\HttpFoundation\Request; + + require __DIR__.'/../app/AppKernel.php'; + + $kernel = new AppKernel('dev', true); + $request = Request::createFromGlobals(); + $response = $kernel->handle($request); + $response->send(); + $kernel->terminate($request, $response); + +That's it! This ``/random/10`` URL will work, Twig will render, and you'll even +get the web debug toolbar to show up at the bottom. The final structure looks like +this: + +.. code-block:: text + + your-project/ + ├─ app/ + | ├─ AppKernel.php + │ ├─ cache/ + │ ├─ config/ + │ ├─ logs/ + │ └─ Resources + | └─ views + | ├─ base.html.twig + | └─ micro + | └─ random.html.twig + ├─ src/ + │ └─ App + | └─ Controller + | └─ MicroController.php + ├─ vendor/ + │ └─ ... + ├─ web/ + | └─ index.php + ├─ composer.json + └─ composer.lock + +Hey, that looks a lot like a *traditional* Symfony application! You're right: the +``MicroKernelTrait`` *is* still Symfony: but you can control your structure and +features quite easily. diff --git a/cookbook/map.rst.inc b/cookbook/map.rst.inc index 8049b6b320d..0f689f32f53 100644 --- a/cookbook/map.rst.inc +++ b/cookbook/map.rst.inc @@ -30,6 +30,7 @@ * :doc:`/cookbook/configuration/index` * :doc:`/cookbook/configuration/environments` + * :doc:`/cookbook/configuration/micro-kernel-trait` * :doc:`/cookbook/configuration/override_dir_structure` * :doc:`/cookbook/configuration/using_parameters_in_dic` * :doc:`/cookbook/configuration/front_controllers_and_kernel` From 4752d4c41eca8bd5887b902df44dd17abfb9a745 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 22 Nov 2015 20:06:08 -0500 Subject: [PATCH 056/235] adding one clarifying message --- cookbook/security/guard-authentication.rst | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/cookbook/security/guard-authentication.rst b/cookbook/security/guard-authentication.rst index af0656e23f9..23f2bcceb60 100644 --- a/cookbook/security/guard-authentication.rst +++ b/cookbook/security/guard-authentication.rst @@ -140,6 +140,10 @@ That's it! Need more information about this step, see: Step 1) Create the Authenticator Class -------------------------------------- +Suppose you have an API where your clients will send an ``X-AUTH-TOKEN`` header +on each request with their API token. Your job is to read this and find the associated +user (if any). + To create a custom authentication system, just create a class an make it implement :class:`Symfony\\Component\\Security\\Guard\\GuardAuthenticatorInterface`. Or, extend the simpler :class:`Symfony\\Component\\Security\\Guard\\AbstractGuardAuthenticator`. From 0820e6994ce279840c4fe1596102e1913506c2ac Mon Sep 17 00:00:00 2001 From: Hidde Wieringa Date: Sat, 24 Oct 2015 17:43:19 +0200 Subject: [PATCH 057/235] Updated form aliases to FQCNs for forms in book and component --- book/forms.rst | 163 +++++++++++++++---------------- components/form/introduction.rst | 42 ++++---- 2 files changed, 104 insertions(+), 101 deletions(-) diff --git a/book/forms.rst b/book/forms.rst index 63c0d37651e..044703438ac 100644 --- a/book/forms.rst +++ b/book/forms.rst @@ -91,9 +91,9 @@ from inside a controller:: $task->setDueDate(new \DateTime('tomorrow')); $form = $this->createFormBuilder($task) - ->add('task', 'text') - ->add('dueDate', 'date') - ->add('save', 'submit', array('label' => 'Create Task')) + ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') + ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') + ->add('save', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', array('label' => 'Create Task')) ->getForm(); return $this->render('default/new.html.twig', array( @@ -116,8 +116,20 @@ building the form. In this example, you've added two fields to your form - ``task`` and ``dueDate`` - corresponding to the ``task`` and ``dueDate`` properties of the ``Task`` class. -You've also assigned each a "type" (e.g. ``text``, ``date``), which, among -other things, determines which HTML form tag(s) is rendered for that field. +You've also assigned each a "type" (e.g. ``TextType`` and ``DateType``), +represented by its fully qualified class name. Among other things, it determines +which HTML form tag(s) is rendered for that field. + +.. tip:: + + If you are using PHP 5.5 or later you can use the ``::class`` constant of a + form type to get its fully qualified class name. Make sure you include the + class with a ``use`` statement. + +.. versionadded:: 2.8 + To denote the form type, you have to use the fully qualified class name. + Before Symfony 2.8, you could use an alias for each type like 'name' or + 'date'. Finally, you added a submit button with a custom label for submitting the form to the server. @@ -224,9 +236,9 @@ controller:: $task = new Task(); $form = $this->createFormBuilder($task) - ->add('task', 'text') - ->add('dueDate', 'date') - ->add('save', 'submit', array('label' => 'Create Task')) + ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') + ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') + ->add('save', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', array('label' => 'Create Task')) ->getForm(); $form->handleRequest($request); @@ -241,7 +253,7 @@ controller:: 'form' => $form->createView(), )); } - + .. caution:: Be aware that the ``createView()`` method should be called *after* ``handleRequest`` @@ -310,10 +322,10 @@ which of the buttons was clicked to adapt the program flow in your controller. To do this, add a second button with the caption "Save and add" to your form:: $form = $this->createFormBuilder($task) - ->add('task', 'text') - ->add('dueDate', 'date') - ->add('save', 'submit', array('label' => 'Create Task')) - ->add('saveAndAdd', 'submit', array('label' => 'Save and Add')) + ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') + ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') + ->add('save', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', array('label' => 'Create Task')) + ->add('saveAndAdd', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', array('label' => 'Save and Add')) ->getForm(); In your controller, use the button's @@ -622,8 +634,8 @@ First, we need to add the two buttons to the form:: $form = $this->createFormBuilder($task) // ... - ->add('nextStep', 'submit') - ->add('previousStep', 'submit') + ->add('nextStep', 'Symfony\Component\Form\Extension\Core\Type\SubmitType') + ->add('previousStep', 'Symfony\Component\Form\Extension\Core\Type\SubmitType') ->getForm(); Then, we configure the button for returning to the previous step to run @@ -632,7 +644,7 @@ so we set its ``validation_groups`` option to false:: $form = $this->createFormBuilder($task) // ... - ->add('previousStep', 'submit', array( + ->add('previousStep', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', array( 'validation_groups' => false, )) ->getForm(); @@ -701,7 +713,7 @@ the documentation for each type. The label for the form field can be set using the ``label`` option, which can be applied to any field:: - ->add('dueDate', 'date', array( + ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType', array( 'widget' => 'single_text', 'label' => 'Due Date', )) @@ -722,7 +734,7 @@ Now that you've added validation metadata to the ``Task`` class, Symfony already knows a bit about your fields. If you allow it, Symfony can "guess" the type of your field and set it up for you. In this example, Symfony can guess from the validation rules that both the ``task`` field is a normal -``text`` field and the ``dueDate`` field is a ``date`` field:: +``TextType`` field and the ``dueDate`` field is a ``DateType`` field:: public function newAction() { @@ -731,7 +743,7 @@ guess from the validation rules that both the ``task`` field is a normal $form = $this->createFormBuilder($task) ->add('task') ->add('dueDate', null, array('widget' => 'single_text')) - ->add('save', 'submit') + ->add('save', 'Symfony\Component\Form\Extension\Core\Type\SubmitType') ->getForm(); } @@ -992,9 +1004,9 @@ ways. If you build your form in the controller, you can use ``setAction()`` and $form = $this->createFormBuilder($task) ->setAction($this->generateUrl('target_route')) ->setMethod('GET') - ->add('task', 'text') - ->add('dueDate', 'date') - ->add('save', 'submit') + ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') + ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') + ->add('save', 'Symfony\Component\Form\Extension\Core\Type\SubmitType') ->getForm(); .. note:: @@ -1064,36 +1076,20 @@ that will house the logic for building the task form:: $builder ->add('task') ->add('dueDate', null, array('widget' => 'single_text')) - ->add('save', 'submit') + ->add('save', 'Symfony\Component\Form\Extension\Core\Type\SubmitType') ; } - - public function getName() - { - return 'task'; - } } -.. caution:: - - The ``getName()`` method returns the identifier of this form "type". These - identifiers must be unique in the application. Unless you want to override - a built-in type, they should be different from the default Symfony types - and from any type defined by a third-party bundle installed in your application. - Consider prefixing your types with ``app_`` to avoid identifier collisions. - This new class contains all the directions needed to create the task form. It can be used to quickly build a form object in the controller:: // src/AppBundle/Controller/DefaultController.php - // add this new use statement at the top of the class - use AppBundle\Form\Type\TaskType; - public function newAction() { $task = ...; - $form = $this->createForm(new TaskType(), $task); + $form = $this->createForm('AppBundle\Form\Type\TaskType', $task); // ... } @@ -1160,8 +1156,8 @@ the choice is ultimately up to you. Defining your Forms as Services ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Defining your form type as a service is a good practice and makes it really -easy to use in your application. +Your form type might have some external dependencies. You can define your form +type as a service, and inject inject all dependencies you need. .. note:: @@ -1169,6 +1165,38 @@ easy to use in your application. :doc:`later on in this book `. Things will be more clear after reading that chapter. +You might want to use a service defined as ``app.my_service`` in your form +type. Create a constructor to your form type to receive the service:: + + // src/AppBundle/Form/Type/TaskType.php + namespace AppBundle\Form\Type; + + use App\Utility\MyService; + use Symfony\Component\Form\AbstractType; + use Symfony\Component\Form\FormBuilderInterface; + + class TaskType extends AbstractType + { + private $myService; + + public function __construct(MyService $mySevice) + { + $this->myService = $myService; + } + + public function buildForm(FormBuilderInterface $builder, array $options) + { + // You can now use myService. + $builder + ->add('task') + ->add('dueDate', null, array('widget' => 'single_text')) + ->add('save', 'Symfony\Component\Form\Extension\Core\Type\SubmitType') + ; + } + } + +Define your form type as a service. + .. configuration-block:: .. code-block:: yaml @@ -1177,8 +1205,9 @@ easy to use in your application. services: app.form.type.task: class: AppBundle\Form\Type\TaskType + arguments: ["@app.my_service"] tags: - - { name: form.type, alias: task } + - { name: form.type } .. code-block:: xml @@ -1190,7 +1219,7 @@ easy to use in your application. - + @@ -1198,44 +1227,17 @@ easy to use in your application. .. code-block:: php // src/AppBundle/Resources/config/services.php + $definition = new Definition('AppBundle\Form\Type\TaskType', array( + new Reference('app.my_service'), + )); $container - ->register( + ->setDefinition( 'app.form.type.task', - 'AppBundle\Form\Type\TaskType' + $definition ) - ->addTag('form.type', array( - 'alias' => 'task', - )) + ->addTag('form.type') ; -That's it! Now you can use your form type directly in a controller:: - - // src/AppBundle/Controller/DefaultController.php - // ... - - public function newAction() - { - $task = ...; - $form = $this->createForm('task', $task); - - // ... - } - -or even use from within the form type of another form:: - - // src/AppBundle/Form/Type/ListType.php - // ... - - class ListType extends AbstractType - { - public function buildForm(FormBuilderInterface $builder, array $options) - { - // ... - - $builder->add('someTask', 'task'); - } - } - Read :ref:`form-cookbook-form-field-service` for more information. .. index:: @@ -1360,11 +1362,6 @@ create a form class so that a ``Category`` object can be modified by the user:: 'data_class' => 'AppBundle\Entity\Category', )); } - - public function getName() - { - return 'category'; - } } The end goal is to allow the ``Category`` of a ``Task`` to be modified right @@ -1380,7 +1377,7 @@ class: { // ... - $builder->add('category', new CategoryType()); + $builder->add('category', 'AppBundle\Form\Type\CategoryType'); } The fields from ``CategoryType`` can now be rendered alongside those from diff --git a/components/form/introduction.rst b/components/form/introduction.rst index b654f7bee0a..68f14e10fc9 100644 --- a/components/form/introduction.rst +++ b/components/form/introduction.rst @@ -391,9 +391,13 @@ is created from the form factory. .. code-block:: php-standalone + // PHP 5.5 and above + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\DateType; + $form = $formFactory->createBuilder() - ->add('task', 'text') - ->add('dueDate', 'date') + ->add('task', TextType::class) + ->add('dueDate', DateType::class) ->getForm(); var_dump($twig->render('new.html.twig', array( @@ -414,9 +418,10 @@ is created from the form factory. { // createFormBuilder is a shortcut to get the "form factory" // and then call "createBuilder()" on it + $form = $this->createFormBuilder() - ->add('task', 'text') - ->add('dueDate', 'date') + ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') + ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') ->getForm(); return $this->render('AcmeTaskBundle:Default:new.html.twig', array( @@ -427,8 +432,9 @@ is created from the form factory. As you can see, creating a form is like writing a recipe: you call ``add`` for each new field you want to create. The first argument to ``add`` is the -name of your field, and the second is the field "type". The Form component -comes with a lot of :doc:`built-in types `. +name of your field, and the second is the fully qualified class name. If you +use PHP 5.5 or above, you can use ``::class`` constant of a form type. The Form +component comes with a lot of :doc:`built-in types `. Now that you've built your form, learn how to :ref:`render ` it and :ref:`process the form submission `. @@ -449,8 +455,8 @@ builder: ); $form = $formFactory->createBuilder('form', $defaults) - ->add('task', 'text') - ->add('dueDate', 'date') + ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') + ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') ->getForm(); .. code-block:: php-symfony @@ -460,8 +466,8 @@ builder: ); $form = $this->createFormBuilder($defaults) - ->add('task', 'text') - ->add('dueDate', 'date') + ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') + ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') ->getForm(); .. tip:: @@ -550,8 +556,8 @@ method: use Symfony\Component\HttpFoundation\RedirectResponse; $form = $formFactory->createBuilder() - ->add('task', 'text') - ->add('dueDate', 'date') + ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') + ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') ->getForm(); $request = Request::createFromGlobals(); @@ -578,8 +584,8 @@ method: public function newAction(Request $request) { $form = $this->createFormBuilder() - ->add('task', 'text') - ->add('dueDate', 'date') + ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') + ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') ->getForm(); $form->handleRequest($request); @@ -626,10 +632,10 @@ option when building each field: use Symfony\Component\Validator\Constraints\Type; $form = $formFactory->createBuilder() - ->add('task', 'text', array( + ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType', array( 'constraints' => new NotBlank(), )) - ->add('dueDate', 'date', array( + ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType', array( 'constraints' => array( new NotBlank(), new Type('\DateTime'), @@ -643,10 +649,10 @@ option when building each field: use Symfony\Component\Validator\Constraints\Type; $form = $this->createFormBuilder() - ->add('task', 'text', array( + ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType', array( 'constraints' => new NotBlank(), )) - ->add('dueDate', 'date', array( + ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType', array( 'constraints' => array( new NotBlank(), new Type('\DateTime'), From 291a42a30ead0828a3db2ba5d21787be647e1c07 Mon Sep 17 00:00:00 2001 From: Hidde Wieringa Date: Sat, 24 Oct 2015 17:46:46 +0200 Subject: [PATCH 058/235] Fixed removed XML tag in form book --- book/forms.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/book/forms.rst b/book/forms.rst index 044703438ac..50ece071427 100644 --- a/book/forms.rst +++ b/book/forms.rst @@ -1219,6 +1219,7 @@ Define your form type as a service. + From 3ab3830f2e35f2001d3283b231c2a1e449ab232f Mon Sep 17 00:00:00 2001 From: Hidde Wieringa Date: Sat, 24 Oct 2015 17:48:43 +0200 Subject: [PATCH 059/235] Fixed PHP 5.5+ reference in form component --- components/form/introduction.rst | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/components/form/introduction.rst b/components/form/introduction.rst index 68f14e10fc9..a1c8f14d575 100644 --- a/components/form/introduction.rst +++ b/components/form/introduction.rst @@ -391,13 +391,9 @@ is created from the form factory. .. code-block:: php-standalone - // PHP 5.5 and above - use Symfony\Component\Form\Extension\Core\Type\TextType; - use Symfony\Component\Form\Extension\Core\Type\DateType; - $form = $formFactory->createBuilder() - ->add('task', TextType::class) - ->add('dueDate', DateType::class) + ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') + ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') ->getForm(); var_dump($twig->render('new.html.twig', array( From 3237a340e658d3b27ea1d3d9e9c71f3e8f71e006 Mon Sep 17 00:00:00 2001 From: Hidde Wieringa Date: Mon, 23 Nov 2015 22:14:27 +0100 Subject: [PATCH 060/235] Updated form constant usage --- book/forms.rst | 84 +++++++++++++++++--------------- components/form/introduction.rst | 74 +++++++++++++++++++++------- 2 files changed, 101 insertions(+), 57 deletions(-) diff --git a/book/forms.rst b/book/forms.rst index 50ece071427..7ee7bff700d 100644 --- a/book/forms.rst +++ b/book/forms.rst @@ -80,6 +80,9 @@ from inside a controller:: use AppBundle\Entity\Task; use Symfony\Bundle\FrameworkBundle\Controller\Controller; use Symfony\Component\HttpFoundation\Request; + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\DateType; + use Symfony\Component\Form\Extension\Core\Type\SubmitType; class DefaultController extends Controller { @@ -91,9 +94,11 @@ from inside a controller:: $task->setDueDate(new \DateTime('tomorrow')); $form = $this->createFormBuilder($task) - ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') - ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') - ->add('save', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', array('label' => 'Create Task')) + ->add('task', TextType::class) + // If you use PHP 5.3 or 5.4 you must use + // ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') + ->add('dueDate', DateType::class) + ->add('save', SubmitType::class, array('label' => 'Create Task')) ->getForm(); return $this->render('default/new.html.twig', array( @@ -120,16 +125,10 @@ You've also assigned each a "type" (e.g. ``TextType`` and ``DateType``), represented by its fully qualified class name. Among other things, it determines which HTML form tag(s) is rendered for that field. -.. tip:: - - If you are using PHP 5.5 or later you can use the ``::class`` constant of a - form type to get its fully qualified class name. Make sure you include the - class with a ``use`` statement. - .. versionadded:: 2.8 To denote the form type, you have to use the fully qualified class name. - Before Symfony 2.8, you could use an alias for each type like 'name' or - 'date'. + Before Symfony 2.8, you could use an alias for each type like ``'name'`` or + ``'date'``. Finally, you added a submit button with a custom label for submitting the form to the server. @@ -236,9 +235,9 @@ controller:: $task = new Task(); $form = $this->createFormBuilder($task) - ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') - ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') - ->add('save', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', array('label' => 'Create Task')) + ->add('task', TextType::class) + ->add('dueDate', DateType::class) + ->add('save', SubmitType::class, array('label' => 'Create Task')) ->getForm(); $form->handleRequest($request); @@ -322,10 +321,10 @@ which of the buttons was clicked to adapt the program flow in your controller. To do this, add a second button with the caption "Save and add" to your form:: $form = $this->createFormBuilder($task) - ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') - ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') - ->add('save', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', array('label' => 'Create Task')) - ->add('saveAndAdd', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', array('label' => 'Save and Add')) + ->add('task', TextType::class) + ->add('dueDate', DateType::class) + ->add('save', SubmitType::class, array('label' => 'Create Task')) + ->add('saveAndAdd', SubmitType::class, array('label' => 'Save and Add')) ->getForm(); In your controller, use the button's @@ -634,8 +633,8 @@ First, we need to add the two buttons to the form:: $form = $this->createFormBuilder($task) // ... - ->add('nextStep', 'Symfony\Component\Form\Extension\Core\Type\SubmitType') - ->add('previousStep', 'Symfony\Component\Form\Extension\Core\Type\SubmitType') + ->add('nextStep', SubmitType::class) + ->add('previousStep', SubmitType::class) ->getForm(); Then, we configure the button for returning to the previous step to run @@ -644,7 +643,7 @@ so we set its ``validation_groups`` option to false:: $form = $this->createFormBuilder($task) // ... - ->add('previousStep', 'Symfony\Component\Form\Extension\Core\Type\SubmitType', array( + ->add('previousStep', SubmitType::class, array( 'validation_groups' => false, )) ->getForm(); @@ -681,7 +680,7 @@ boxes. However, the :doc:`date field ` can be configured to be rendered as a single text box (where the user would enter the date as a string in the box):: - ->add('dueDate', 'date', array('widget' => 'single_text')) + ->add('dueDate', DateType::class, array('widget' => 'single_text')) .. image:: /images/book/form-simple2.png :align: center @@ -713,7 +712,7 @@ the documentation for each type. The label for the form field can be set using the ``label`` option, which can be applied to any field:: - ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType', array( + ->add('dueDate', DateType::class, array( 'widget' => 'single_text', 'label' => 'Due Date', )) @@ -743,7 +742,7 @@ guess from the validation rules that both the ``task`` field is a normal $form = $this->createFormBuilder($task) ->add('task') ->add('dueDate', null, array('widget' => 'single_text')) - ->add('save', 'Symfony\Component\Form\Extension\Core\Type\SubmitType') + ->add('save', SubmitType::class) ->getForm(); } @@ -1004,9 +1003,9 @@ ways. If you build your form in the controller, you can use ``setAction()`` and $form = $this->createFormBuilder($task) ->setAction($this->generateUrl('target_route')) ->setMethod('GET') - ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') - ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') - ->add('save', 'Symfony\Component\Form\Extension\Core\Type\SubmitType') + ->add('task', TextType::class) + ->add('dueDate', DateType::clas) + ->add('save', SubmitType::class) ->getForm(); .. note:: @@ -1068,6 +1067,7 @@ that will house the logic for building the task form:: use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; + use Symfony\Component\Form\Extension\Core\Type\SubmitType; class TaskType extends AbstractType { @@ -1076,7 +1076,7 @@ that will house the logic for building the task form:: $builder ->add('task') ->add('dueDate', null, array('widget' => 'single_text')) - ->add('save', 'Symfony\Component\Form\Extension\Core\Type\SubmitType') + ->add('save', SubmitType::class) ; } } @@ -1085,11 +1085,12 @@ This new class contains all the directions needed to create the task form. It ca be used to quickly build a form object in the controller:: // src/AppBundle/Controller/DefaultController.php + use AppBundle\Form\Type\TaskType; public function newAction() { $task = ...; - $form = $this->createForm('AppBundle\Form\Type\TaskType', $task); + $form = $this->createForm(TaskType::class, $task); // ... } @@ -1136,7 +1137,7 @@ the choice is ultimately up to you. $builder ->add('task') ->add('dueDate', null, array('mapped' => false)) - ->add('save', 'submit') + ->add('save', SubmitType::class) ; } @@ -1174,6 +1175,7 @@ type. Create a constructor to your form type to receive the service:: use App\Utility\MyService; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; + use Symfony\Component\Form\Extension\Core\Type\SubmitType; class TaskType extends AbstractType { @@ -1190,7 +1192,7 @@ type. Create a constructor to your form type to receive the service:: $builder ->add('task') ->add('dueDate', null, array('widget' => 'single_text')) - ->add('save', 'Symfony\Component\Form\Extension\Core\Type\SubmitType') + ->add('save', SubmitType::class) ; } } @@ -1228,7 +1230,9 @@ Define your form type as a service. .. code-block:: php // src/AppBundle/Resources/config/services.php - $definition = new Definition('AppBundle\Form\Type\TaskType', array( + use AppBundle\Form\Type\TaskType; + + $definition = new Definition(TaskType::class, array( new Reference('app.my_service'), )); $container @@ -1373,12 +1377,13 @@ class: .. code-block:: php use Symfony\Component\Form\FormBuilderInterface; + use AppBundle\Form\Type\CategoryType; public function buildForm(FormBuilderInterface $builder, array $options) { // ... - $builder->add('category', 'AppBundle\Form\Type\CategoryType'); + $builder->add('category', CategoryType::class); } The fields from ``CategoryType`` can now be rendered alongside those from @@ -1849,10 +1854,10 @@ an array of the submitted data. This is actually really easy:: { $defaultData = array('message' => 'Type your message here'); $form = $this->createFormBuilder($defaultData) - ->add('name', 'text') - ->add('email', 'email') - ->add('message', 'textarea') - ->add('send', 'submit') + ->add('name', TextType::class) + ->add('email', EmailType::class) + ->add('message', TextareaType::class) + ->add('send', SubmitType::class) ->getForm(); $form->handleRequest($request); @@ -1913,12 +1918,13 @@ but here's a short example: use Symfony\Component\Validator\Constraints\Length; use Symfony\Component\Validator\Constraints\NotBlank; + use Symfony\Component\Form\Extension\Core\Type\TextType; $builder - ->add('firstName', 'text', array( + ->add('firstName', TextType::class, array( 'constraints' => new Length(array('min' => 3)), )) - ->add('lastName', 'text', array( + ->add('lastName', TextType::class, array( 'constraints' => array( new NotBlank(), new Length(array('min' => 3)), diff --git a/components/form/introduction.rst b/components/form/introduction.rst index a1c8f14d575..36a13fb9d28 100644 --- a/components/form/introduction.rst +++ b/components/form/introduction.rst @@ -391,9 +391,16 @@ is created from the form factory. .. code-block:: php-standalone + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\DateType; + + // ... + $form = $formFactory->createBuilder() - ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') - ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') + ->add('task', TextType::class) + // If you use PHP 5.3 or 5.4, you must use + // ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') + ->add('dueDate', DateType::class) ->getForm(); var_dump($twig->render('new.html.twig', array( @@ -407,6 +414,8 @@ is created from the form factory. use Symfony\Bundle\FrameworkBundle\Controller\Controller; use Symfony\Component\HttpFoundation\Request; + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\DateType; class DefaultController extends Controller { @@ -416,8 +425,10 @@ is created from the form factory. // and then call "createBuilder()" on it $form = $this->createFormBuilder() - ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') - ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') + ->add('task', TextType::class) + // If you use PHP 5.3 or 5.4, you must use + // ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') + ->add('dueDate', DateType::class) ->getForm(); return $this->render('AcmeTaskBundle:Default:new.html.twig', array( @@ -446,24 +457,34 @@ builder: .. code-block:: php-standalone + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\DateType; + + // ... + $defaults = array( 'dueDate' => new \DateTime('tomorrow'), ); $form = $formFactory->createBuilder('form', $defaults) - ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') - ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') + ->add('task', TextType::class) + ->add('dueDate', DateType::class) ->getForm(); .. code-block:: php-symfony + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\DateType; + + // ... + $defaults = array( 'dueDate' => new \DateTime('tomorrow'), ); $form = $this->createFormBuilder($defaults) - ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') - ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') + ->add('task', TextType::class) + ->add('dueDate', DateType::class) ->getForm(); .. tip:: @@ -515,7 +536,11 @@ by ``handleRequest()`` to determine whether a form has been submitted): .. code-block:: php-standalone - $formBuilder = $formFactory->createBuilder('form', null, array( + use Symfony\Component\Form\Extension\Core\Type\FormType; + + // ... + + $formBuilder = $formFactory->createBuilder(FormType::class, null, array( 'action' => '/search', 'method' => 'GET', )); @@ -524,11 +549,13 @@ by ``handleRequest()`` to determine whether a form has been submitted): .. code-block:: php-symfony + use Symfony\Component\Form\Extension\Core\Type\FormType; + // ... public function searchAction() { - $formBuilder = $this->createFormBuilder('form', null, array( + $formBuilder = $this->createFormBuilder(FormType::class, null, array( 'action' => '/search', 'method' => 'GET', )); @@ -550,10 +577,14 @@ method: use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\RedirectResponse; + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\DateType; + + // ... $form = $formFactory->createBuilder() - ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') - ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') + ->add('task', TextType::class) + ->add('dueDate', DateType::class) ->getForm(); $request = Request::createFromGlobals(); @@ -575,13 +606,16 @@ method: .. code-block:: php-symfony + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\DateType; + // ... public function newAction(Request $request) { $form = $this->createFormBuilder() - ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') - ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType') + ->add('task', TextType::class) + ->add('dueDate', DateType::class) ->getForm(); $form->handleRequest($request); @@ -626,12 +660,14 @@ option when building each field: use Symfony\Component\Validator\Constraints\NotBlank; use Symfony\Component\Validator\Constraints\Type; + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\DateType; $form = $formFactory->createBuilder() - ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType', array( + ->add('task', TextType::class, array( 'constraints' => new NotBlank(), )) - ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType', array( + ->add('dueDate', DateType::class, array( 'constraints' => array( new NotBlank(), new Type('\DateTime'), @@ -643,12 +679,14 @@ option when building each field: use Symfony\Component\Validator\Constraints\NotBlank; use Symfony\Component\Validator\Constraints\Type; + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\DateType; $form = $this->createFormBuilder() - ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType', array( + ->add('task', TextType::class, array( 'constraints' => new NotBlank(), )) - ->add('dueDate', 'Symfony\Component\Form\Extension\Core\Type\DateType', array( + ->add('dueDate', DateType::class, array( 'constraints' => array( new NotBlank(), new Type('\DateTime'), From f8b080d713baed6232f11039ae79cb7611b56d95 Mon Sep 17 00:00:00 2001 From: Hidde Wieringa Date: Mon, 23 Nov 2015 23:20:53 +0100 Subject: [PATCH 061/235] Found more places which use old form types --- best_practices/forms.rst | 24 ++-- components/form/form_events.rst | 28 +++-- components/form/type_guesser.rst | 14 ++- cookbook/doctrine/registration_form.rst | 17 ++- cookbook/form/create_form_type_extension.rst | 22 ++-- cookbook/form/data_transformers.rst | 107 +++++++++++++----- cookbook/form/dynamic_form_modification.rst | 52 +++++---- cookbook/form/inherit_data_option.rst | 29 +++-- reference/forms/types/date.rst | 10 +- reference/forms/types/options/attr.rst.inc | 2 +- .../forms/types/options/by_reference.rst.inc | 4 +- 11 files changed, 189 insertions(+), 120 deletions(-) diff --git a/best_practices/forms.rst b/best_practices/forms.rst index 86b57e633d6..2df876680a1 100644 --- a/best_practices/forms.rst +++ b/best_practices/forms.rst @@ -22,6 +22,9 @@ form in its own PHP class:: use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolver; + use Symfony\Component\Form\Extension\Core\Type\TextareaType; + use Symfony\Component\Form\Extension\Core\Type\EmailType; + use Symfony\Component\Form\Extension\Core\Type\DateTimeType; class PostType extends AbstractType { @@ -29,10 +32,10 @@ form in its own PHP class:: { $builder ->add('title') - ->add('summary', 'textarea') - ->add('content', 'textarea') - ->add('authorEmail', 'email') - ->add('publishedAt', 'datetime') + ->add('summary', TextareaType::class) + ->add('content', TextareaType::class) + ->add('authorEmail', EmailType::class) + ->add('publishedAt', DateTimeType::class) ; } @@ -42,14 +45,9 @@ form in its own PHP class:: 'data_class' => 'AppBundle\Entity\Post' )); } - - public function getName() - { - return 'post'; - } } -To use the class, use ``createForm`` and instantiate the new class:: +To use the class, use ``createForm`` and pass the fully qualified class name:: use AppBundle\Form\PostType; // ... @@ -57,7 +55,7 @@ To use the class, use ``createForm`` and instantiate the new class:: public function newAction(Request $request) { $post = new Post(); - $form = $this->createForm(new PostType(), $post); + $form = $this->createForm(PostType::class, $post); // ... } @@ -97,7 +95,7 @@ directly in your form class, this would effectively limit the scope of that form { $builder // ... - ->add('save', 'submit', array('label' => 'Create Post')) + ->add('save', SubmitType::class, array('label' => 'Create Post')) ; } @@ -122,7 +120,7 @@ some developers configure form buttons in the controller:: public function newAction(Request $request) { $post = new Post(); - $form = $this->createForm(new PostType(), $post); + $form = $this->createForm(PostType::class, $post); $form->add('submit', 'submit', array( 'label' => 'Create', 'attr' => array('class' => 'btn btn-default pull-right') diff --git a/components/form/form_events.rst b/components/form/form_events.rst index 5fb51d59fa1..5bde8df6b42 100644 --- a/components/form/form_events.rst +++ b/components/form/form_events.rst @@ -288,10 +288,13 @@ Creating and binding an event listener to the form is very easy:: use Symfony\Component\Form\FormEvent; use Symfony\Component\Form\FormEvents; + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\CheckboxType; + use Symfony\Component\Form\Extension\Core\Type\EmailType; $form = $formFactory->createBuilder() - ->add('username', 'text') - ->add('show_email', 'checkbox') + ->add('username', TextType::class) + ->add('show_email', CheckboxType::class) ->addEventListener(FormEvents::PRE_SUBMIT, function (FormEvent $event) { $user = $event->getData(); $form = $event->getForm(); @@ -304,7 +307,7 @@ Creating and binding an event listener to the form is very easy:: // If the data was submitted previously, the additional value that is // included in the request variables needs to be removed. if (true === $user['show_email']) { - $form->add('email', 'email'); + $form->add('email', EmailType::class } else { unset($user['email']); $event->setData($user); @@ -317,14 +320,17 @@ Creating and binding an event listener to the form is very easy:: When you have created a form type class, you can use one of its methods as a callback for better readability:: + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\CheckboxType; + // ... class SubscriptionType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { - $builder->add('username', 'text'); - $builder->add('show_email', 'checkbox'); + $builder->add('username', TextType::class); + $builder->add('show_email', CheckboxType::class); $builder->addEventListener( FormEvents::PRE_SET_DATA, array($this, 'onPreSetData') @@ -351,6 +357,7 @@ Event subscribers have different uses: use Symfony\Component\EventDispatcher\EventSubscriberInterface; use Symfony\Component\Form\FormEvent; use Symfony\Component\Form\FormEvents; + use Symfony\Component\Form\Extension\Core\Type\EmailType; class AddEmailFieldListener implements EventSubscriberInterface { @@ -370,7 +377,7 @@ Event subscribers have different uses: // Check whether the user from the initial data has chosen to // display his email or not. if (true === $user->isShowEmail()) { - $form->add('email', 'email'); + $form->add('email', EmailType::class); } } @@ -387,7 +394,7 @@ Event subscribers have different uses: // If the data was submitted previously, the additional value that // is included in the request variables needs to be removed. if (true === $user['show_email']) { - $form->add('email', 'email'); + $form->add('email', EmailType::class); } else { unset($user['email']); $event->setData($user); @@ -397,11 +404,14 @@ Event subscribers have different uses: To register the event subscriber, use the addEventSubscriber() method:: + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\CheckboxType; + // ... $form = $formFactory->createBuilder() - ->add('username', 'text') - ->add('show_email', 'checkbox') + ->add('username', TextType::class) + ->add('show_email', CheckboxType::class) ->addEventSubscriber(new AddEmailFieldListener()) ->getForm(); diff --git a/components/form/type_guesser.rst b/components/form/type_guesser.rst index 13a64400118..e1f88f3e96d 100644 --- a/components/form/type_guesser.rst +++ b/components/form/type_guesser.rst @@ -91,6 +91,10 @@ With this knowledge, you can easily implement the ``guessType`` method of the use Symfony\Component\Form\Guess\Guess; use Symfony\Component\Form\Guess\TypeGuess; + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\IntegerType; + use Symfony\Component\Form\Extension\Core\Type\NumberType; + use Symfony\Component\Form\Extension\Core\Type\CheckboxType; class PHPDocTypeGuesser implements FormTypeGuesserInterface { @@ -107,25 +111,25 @@ With this knowledge, you can easily implement the ``guessType`` method of the case 'string': // there is a high confidence that the type is text when // @var string is used - return new TypeGuess('text', array(), Guess::HIGH_CONFIDENCE); + return new TypeGuess(TextType::class, array(), Guess::HIGH_CONFIDENCE); case 'int': case 'integer': // integers can also be the id of an entity or a checkbox (0 or 1) - return new TypeGuess('integer', array(), Guess::MEDIUM_CONFIDENCE); + return new TypeGuess(IntegerType::class, array(), Guess::MEDIUM_CONFIDENCE); case 'float': case 'double': case 'real': - return new TypeGuess('number', array(), Guess::MEDIUM_CONFIDENCE); + return new TypeGuess(NumberType::class, array(), Guess::MEDIUM_CONFIDENCE); case 'boolean': case 'bool': - return new TypeGuess('checkbox', array(), Guess::HIGH_CONFIDENCE); + return new TypeGuess(CheckboxType::class, array(), Guess::HIGH_CONFIDENCE); default: // there is a very low confidence that this one is correct - return new TypeGuess('text', array(), Guess::LOW_CONFIDENCE); + return new TypeGuess(TextType::class, array(), Guess::LOW_CONFIDENCE); } } diff --git a/cookbook/doctrine/registration_form.rst b/cookbook/doctrine/registration_form.rst index 062969242c1..9e19eb205f5 100644 --- a/cookbook/doctrine/registration_form.rst +++ b/cookbook/doctrine/registration_form.rst @@ -157,15 +157,18 @@ Next, create the form for the ``User`` entity:: use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolver; + use Symfony\Component\Form\Extension\Core\Type\EmailType; + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\RepeatedType; class UserType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { $builder - ->add('email', 'email') - ->add('username', 'text') - ->add('plainPassword', 'repeated', array( + ->add('email', EmailType::class) + ->add('username', TextType::class) + ->add('plainPassword', RepeatedType::class, array( 'type' => 'password', 'first_options' => array('label' => 'Password'), 'second_options' => array('label' => 'Repeat Password'), @@ -213,7 +216,7 @@ controller for displaying the registration form:: { // 1) build the form $user = new User(); - $form = $this->createForm(new UserType(), $user); + $form = $this->createForm(UserType::class, $user); // 2) handle the submit (will only happen on POST) $form->handleRequest($request); @@ -368,15 +371,17 @@ To do this, add a ``termsAccepted`` field to your form, but set its // src/AppBundle/Form/UserType.php // ... use Symfony\Component\Validator\Constraints\IsTrue; + use Symfony\Component\Form\Extension\Core\Type\CheckboxType; + use Symfony\Component\Form\Extension\Core\Type\EmailType; class UserType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { $builder - ->add('email', 'email'); + ->add('email', EmailType::class); // ... - ->add('termsAccepted', 'checkbox', array( + ->add('termsAccepted', CheckboxType::class, array( 'mapped' => false, 'constraints' => new IsTrue(), )) diff --git a/cookbook/form/create_form_type_extension.rst b/cookbook/form/create_form_type_extension.rst index ec22d8a94a3..ed7d8f2694e 100644 --- a/cookbook/form/create_form_type_extension.rst +++ b/cookbook/form/create_form_type_extension.rst @@ -300,14 +300,16 @@ next to the file field. For example:: use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\FileType; class MediaType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { $builder - ->add('name', 'text') - ->add('file', 'file', array('image_path' => 'webPath')); + ->add('name', TextType::class) + ->add('file', FileType::class, array('image_path' => 'webPath')); } public function getName() @@ -324,13 +326,13 @@ Generic Form Type Extensions You can modify several form types at once by specifying their common parent (:doc:`/reference/forms/types`). For example, several form types natively -available in Symfony inherit from the ``text`` form type (such as ``email``, -``search``, ``url``, etc.). A form type extension applying to ``text`` -(i.e. whose ``getExtendedType`` method returns ``text``) would apply to all of -these form types. +available in Symfony inherit from the ``TextType`` form type (such as ``email``, +``SearchType``, ``UrlType``, etc.). A form type extension applying to ``TextType`` +(i.e. whose ``getExtendedType`` method returns ``TextType::class``) would apply + to all of these form types. In the same way, since **most** form types natively available in Symfony inherit -from the ``form`` form type, a form type extension applying to ``form`` would -apply to all of these. A notable exception are the ``button`` form types. Also -keep in mind that a custom form type which extends neither the ``form`` nor -the ``button`` type could always be created. +from the ``FormType`` form type, a form type extension applying to ``FormType`` +would apply to all of these. A notable exception are the ``ButtonType`` form +types. Also keep in mind that a custom form type which extends neither the +``FormType`` nor the ``ButtonType`` type could always be created. diff --git a/cookbook/form/data_transformers.rst b/cookbook/form/data_transformers.rst index 72af8108659..c63bce0e54f 100644 --- a/cookbook/form/data_transformers.rst +++ b/cookbook/form/data_transformers.rst @@ -26,13 +26,14 @@ Suppose you have a Task form with a description ``textarea`` type:: use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolver; + use Symfony\Component\Form\Extension\Core\Type\TextareaType; // ... class TaskType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { - $builder->add('description', 'textarea'); + $builder->add('description', TextareaType::class); } public function configureOptions(OptionsResolver $resolver) @@ -62,13 +63,14 @@ class:: use Symfony\Component\Form\CallbackTransformer; use Symfony\Component\Form\FormBuilderInterface; + use Symfony\Component\Form\Extension\Core\Type\TextareaType; // ... class TaskType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { - $builder->add('description', 'textarea'); + $builder->add('description', TextareaType::class); $builder->get('description') ->addModelTransformer(new CallbackTransformer( @@ -104,8 +106,10 @@ in your code. You can also add the transformer, right when adding the field by changing the format slightly:: + use Symfony\Component\Form\Extension\Core\Type\TextareaType; + $builder->add( - $builder->create('description', 'textarea') + $builder->create('description', TextareaType::class) ->addModelTransformer(...) ); @@ -123,14 +127,17 @@ Start by setting up the text field like normal:: // src/AppBundle/Form/TaskType.php namespace AppBundle\Form\Type; + use Symfony\Component\Form\Extension\Core\Type\TextareaType; + use Symfony\Component\Form\Extension\Core\Type\TextType; + // ... class TaskType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { $builder - ->add('description', 'textarea') - ->add('issue', 'text') + ->add('description', TextareaType::class) + ->add('issue', TextType::class) ; } @@ -247,13 +254,15 @@ Next, you need to instantiate the ``IssueToNumberTransformer`` class from inside of the entity manager (because ``IssueToNumberTransformer`` needs this). No problem! Just add a ``__construct()`` function to ``TaskType`` and force this -to be passed in. Then, you can easily create and add the transformer:: +to be passed in by registering ``TaskType`` as a service.:: // src/AppBundle/Form/TaskType.php namespace AppBundle\Form\Type; use AppBundle\Form\DataTransformer\IssueToNumberTransformer; use Doctrine\Common\Persistence\ObjectManager; + use Symfony\Component\Form\Extension\Core\Type\TextareaType; + use Symfony\Component\Form\Extension\Core\Type\TextType; // ... class TaskType extends AbstractType @@ -268,8 +277,8 @@ to be passed in. Then, you can easily create and add the transformer:: public function buildForm(FormBuilderInterface $builder, array $options) { $builder - ->add('description', 'textarea') - ->add('issue', 'text', array( + ->add('description', TextareaType::class) + ->add('issue', TextType::class, array( // validation message if the data transformer fails 'invalid_message' => 'That is not a valid issue number', )); @@ -283,18 +292,62 @@ to be passed in. Then, you can easily create and add the transformer:: // ... } -Now, when you create your ``TaskType``, you'll need to pass in the entity manager:: +Define the form type as a service in your configuration files. - // e.g. in a controller somewhere - $manager = $this->getDoctrine()->getManager(); - $form = $this->createForm(new TaskType($manager), $task); +.. configuration-block:: - // ... + .. code-block:: yaml -.. note:: + # src/AppBundle/Resources/config/services.yml + services: + app.form.type.task: + class: AppBundle\Form\Type\TaskType + arguments: ["@doctrine.orm.entity_manager"] + tags: + - { name: form.type } - To make this step easier (especially if ``TaskType`` is embedded into other - form type classes), you might choose to :ref:`register your form type as a service `. + .. code-block:: xml + + + + + + + + + + + + + + .. code-block:: php + + // src/AppBundle/Resources/config/services.php + use AppBundle\Form\Type\TaskType; + + $definition = new Definition(TaskType::class, array( + new Reference('doctrine.orm.entity_manager'), + )); + $container + ->setDefinition( + 'app.form.type.task', + $definition + ) + ->addTag('form.type') + ; +.. tip:: + + For more information about defining form types as services, read + :ref:`register your form type as a service `. + +Now, you can easily use your ``TaskType``:: + + // e.g. in a controller somewhere + $form = $this->createForm(TaskType::class, $task); + + // ... Cool, you're done! Your user will be able to enter an issue number into the text field and it will be transformed back into an Issue object. This means @@ -312,7 +365,7 @@ its error message can be controlled with the ``invalid_message`` field option. // THIS IS WRONG - TRANSFORMER WILL BE APPLIED TO THE ENTIRE FORM // see above example for correct code - $builder->add('issue', 'text') + $builder->add('issue', TextType::class) ->addModelTransformer($transformer); .. _using-transformers-in-a-custom-field-type: @@ -360,12 +413,7 @@ First, create the custom field type class:: public function getParent() { - return 'text'; - } - - public function getName() - { - return 'issue_selector'; + return TextType::class; } } @@ -385,7 +433,7 @@ it's recognized as a custom field type: class: AppBundle\Form\IssueSelectorType arguments: ["@doctrine.orm.entity_manager"] tags: - - { name: form.type, alias: issue_selector } + - { name: form.type } .. code-block:: xml @@ -401,7 +449,7 @@ it's recognized as a custom field type: - + @@ -421,9 +469,7 @@ it's recognized as a custom field type: new Reference('doctrine.orm.entity_manager'), ) ) - ->addTag('form.type', array( - 'alias' => 'issue_selector', - )) + ->addTag('form.type') ; Now, whenever you need to use your special ``issue_selector`` field type, @@ -433,6 +479,7 @@ it's quite easy:: namespace AppBundle\Form\Type; use AppBundle\Form\DataTransformer\IssueToNumberTransformer; + use Symfony\Component\Form\Extension\Core\Type\TextareaType; // ... class TaskType extends AbstractType @@ -440,8 +487,8 @@ it's quite easy:: public function buildForm(FormBuilderInterface $builder, array $options) { $builder - ->add('description', 'textarea') - ->add('issue', 'issue_selector') + ->add('description', TextareaType::class) + ->add('issue', IssueSelectorType::class) ; } diff --git a/cookbook/form/dynamic_form_modification.rst b/cookbook/form/dynamic_form_modification.rst index db442c85740..cf2bca09d11 100644 --- a/cookbook/form/dynamic_form_modification.rst +++ b/cookbook/form/dynamic_form_modification.rst @@ -128,7 +128,7 @@ the event listener might look like the following:: // If no data is passed to the form, the data is "null". // This should be considered a new "Product" if (!$product || null === $product->getId()) { - $form->add('name', 'text'); + $form->add('name', TextType::class); } }); } @@ -178,6 +178,7 @@ class:: use Symfony\Component\Form\FormEvent; use Symfony\Component\Form\FormEvents; use Symfony\Component\EventDispatcher\EventSubscriberInterface; + use Symfony\Component\Form\Extension\Core\Type\TextType; class AddNameFieldSubscriber implements EventSubscriberInterface { @@ -194,7 +195,7 @@ class:: $form = $event->getForm(); if (!$product || null === $product->getId()) { - $form->add('name', 'text'); + $form->add('name', TextType::class); } } } @@ -224,24 +225,21 @@ Using an event listener, your form might look like this:: use Symfony\Component\Form\FormEvents; use Symfony\Component\Form\FormEvent; use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface; + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\TextareaType; class FriendMessageFormType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { $builder - ->add('subject', 'text') - ->add('body', 'textarea') + ->add('subject', TextType::class) + ->add('body', TextareaType::class) ; $builder->addEventListener(FormEvents::PRE_SET_DATA, function (FormEvent $event) { // ... add a choice list of friends of the current application user }); } - - public function getName() - { - return 'friend_message'; - } } The problem is now to get the current user and create a choice field that @@ -277,6 +275,10 @@ and fill in the listener logic:: use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface; use Doctrine\ORM\EntityRepository; + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\TextareaType; + use Symfony\Bridge\Doctrine\Form\Type\EntityType; + // ... class FriendMessageFormType extends AbstractType @@ -291,8 +293,8 @@ and fill in the listener logic:: public function buildForm(FormBuilderInterface $builder, array $options) { $builder - ->add('subject', 'text') - ->add('body', 'textarea') + ->add('subject', TextType::class) + ->add('body', TextareaType::class) ; // grab the user, do a quick sanity check that one exists @@ -323,7 +325,7 @@ and fill in the listener logic:: // create the field, this is similar the $builder->add() // field name, field type, data, options - $form->add('friend', 'entity', $formOptions); + $form->add('friend', EntityType::class, $formOptions); } ); } @@ -339,7 +341,7 @@ and fill in the listener logic:: .. note:: The ``multiple`` and ``expanded`` form options will default to false - because the type of the friend field is ``entity``. + because the type of the friend field is ``EntityType::class``. Using the Form ~~~~~~~~~~~~~~ @@ -388,7 +390,7 @@ it with :ref:`dic-tags-form-type`. class: AppBundle\Form\Type\FriendMessageFormType arguments: ["@security.token_storage"] tags: - - { name: form.type, alias: friend_message } + - { name: form.type } .. code-block:: xml @@ -396,7 +398,7 @@ it with :ref:`dic-tags-form-type`. - + @@ -404,7 +406,7 @@ it with :ref:`dic-tags-form-type`. // app/config/config.php $definition = new Definition('AppBundle\Form\Type\FriendMessageFormType'); - $definition->addTag('form.type', array('alias' => 'friend_message')); + $definition->addTag('form.type'); $container->setDefinition( 'app.form.friend_message', $definition, @@ -420,7 +422,7 @@ access to the form factory, you then use:: { public function newAction(Request $request) { - $form = $this->get('form.factory')->create('friend_message'); + $form = $this->get('form.factory')->create(FriendMessageFormType::class); // ... } @@ -428,14 +430,14 @@ access to the form factory, you then use:: If you extend the ``Symfony\Bundle\FrameworkBundle\Controller\Controller`` class, you can simply call:: - $form = $this->createForm('friend_message'); + $form = $this->createForm(FriendMessageFormType::class); You can also easily embed the form type into another form:: // inside some other "form type" class public function buildForm(FormBuilderInterface $builder, array $options) { - $builder->add('message', 'friend_message'); + $builder->add('message', FriendMessageFormType::class); } .. _cookbook-form-events-submitted-data: @@ -461,6 +463,7 @@ sport like this:: use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\Form\FormEvent; use Symfony\Component\Form\FormEvents; + use Symfony\Bridge\Doctrine\Form\Type\EntityType; // ... class SportMeetupType extends AbstractType @@ -468,7 +471,7 @@ sport like this:: public function buildForm(FormBuilderInterface $builder, array $options) { $builder - ->add('sport', 'entity', array( + ->add('sport', EntityType::class, array( 'class' => 'AppBundle:Sport', 'placeholder' => '', )) @@ -485,7 +488,7 @@ sport like this:: $sport = $data->getSport(); $positions = null === $sport ? array() : $sport->getAvailablePositions(); - $form->add('position', 'entity', array( + $form->add('position', EntityType::class, array( 'class' => 'AppBundle:Position', 'placeholder' => '', 'choices' => $positions, @@ -532,6 +535,7 @@ The type would now look like:: // ... use Symfony\Component\Form\FormInterface; + use Symfony\Bridge\Doctrine\Form\Type\EntityType; use AppBundle\Entity\Sport; class SportMeetupType extends AbstractType @@ -539,7 +543,7 @@ The type would now look like:: public function buildForm(FormBuilderInterface $builder, array $options) { $builder - ->add('sport', 'entity', array( + ->add('sport', EntityType::class, array( 'class' => 'AppBundle:Sport', 'placeholder' => '', )); @@ -548,7 +552,7 @@ The type would now look like:: $formModifier = function (FormInterface $form, Sport $sport = null) { $positions = null === $sport ? array() : $sport->getAvailablePositions(); - $form->add('position', 'entity', array( + $form->add('position', EntityType::class, array( 'class' => 'AppBundle:Position', 'placeholder' => '', 'choices' => $positions, @@ -605,7 +609,7 @@ your application. Assume that you have a sport meetup creation controller:: public function createAction(Request $request) { $meetup = new SportMeetup(); - $form = $this->createForm(new SportMeetupType(), $meetup); + $form = $this->createForm(SportMeetupType::class, $meetup); $form->handleRequest($request); if ($form->isValid()) { // ... save the meetup, redirect etc. diff --git a/cookbook/form/inherit_data_option.rst b/cookbook/form/inherit_data_option.rst index 7429baae325..f4e6fdf88d6 100644 --- a/cookbook/form/inherit_data_option.rst +++ b/cookbook/form/inherit_data_option.rst @@ -52,14 +52,15 @@ Start with building two forms for these entities, ``CompanyType`` and ``Customer use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; + use Symfony\Component\Form\Extension\Core\Type\TextType; class CompanyType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { $builder - ->add('name', 'text') - ->add('website', 'text'); + ->add('name', TextType::class) + ->add('website', TextType::class); } } @@ -70,14 +71,15 @@ Start with building two forms for these entities, ``CompanyType`` and ``Customer use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\Form\AbstractType; + use Symfony\Component\Form\Extension\Core\Type\TextType; class CustomerType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { $builder - ->add('firstName', 'text') - ->add('lastName', 'text'); + ->add('firstName', TextType::class) + ->add('lastName', TextType::class); } } @@ -91,16 +93,18 @@ for that:: use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolver; + use Symfony\Component\Form\Extension\Core\Type\TextareaType; + use Symfony\Component\Form\Extension\Core\Type\TextType; class LocationType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { $builder - ->add('address', 'textarea') - ->add('zipcode', 'text') - ->add('city', 'text') - ->add('country', 'text'); + ->add('address', TextareaType::class) + ->add('zipcode', TextType::class) + ->add('city', TextType::class) + ->add('country', TextType::class); } public function configureOptions(OptionsResolver $resolver) @@ -109,11 +113,6 @@ for that:: 'inherit_data' => true )); } - - public function getName() - { - return 'location'; - } } The location form has an interesting option set, namely ``inherit_data``. This @@ -135,7 +134,7 @@ Finally, make this work by adding the location form to your two original forms:: { // ... - $builder->add('foo', new LocationType(), array( + $builder->add('foo', LocationType::class, array( 'data_class' => 'AppBundle\Entity\Company' )); } @@ -147,7 +146,7 @@ Finally, make this work by adding the location form to your two original forms:: { // ... - $builder->add('bar', new LocationType(), array( + $builder->add('bar', LocationType::class, array( 'data_class' => 'AppBundle\Entity\Customer' )); } diff --git a/reference/forms/types/date.rst b/reference/forms/types/date.rst index a4fda47bba1..e374b93f946 100644 --- a/reference/forms/types/date.rst +++ b/reference/forms/types/date.rst @@ -56,10 +56,10 @@ This field type is highly configurable, but easy to use. The most important options are ``input`` and ``widget``. Suppose that you have a ``publishedAt`` field whose underlying date is a -``DateTime`` object. The following configures the ``date`` type for that +``DateTime`` object. The following configures the ``DateType`` type for that field as three different choice fields:: - $builder->add('publishedAt', 'date', array( + $builder->add('publishedAt', DateType::class, array( 'input' => 'datetime', 'widget' => 'choice', )); @@ -68,7 +68,7 @@ The ``input`` option *must* be changed to match the type of the underlying date data. For example, if the ``publishedAt`` field's data were a unix timestamp, you'd need to set ``input`` to ``timestamp``:: - $builder->add('publishedAt', 'date', array( + $builder->add('publishedAt', DateType::class, array( 'input' => 'timestamp', 'widget' => 'choice', )); @@ -94,13 +94,13 @@ If your widget option is set to ``choice``, then this field will be represented as a series of ``select`` boxes. The ``placeholder`` option can be used to add a "blank" entry to the top of each select box:: - $builder->add('dueDate', 'date', array( + $builder->add('dueDate', DateType::class, array( 'placeholder' => '', )); Alternatively, you can specify a string to be displayed for the "blank" value:: - $builder->add('dueDate', 'date', array( + $builder->add('dueDate', DateType::class, array( 'placeholder' => array('year' => 'Year', 'month' => 'Month', 'day' => 'Day') )); diff --git a/reference/forms/types/options/attr.rst.inc b/reference/forms/types/options/attr.rst.inc index bbee5888a4a..46238ac023b 100644 --- a/reference/forms/types/options/attr.rst.inc +++ b/reference/forms/types/options/attr.rst.inc @@ -7,6 +7,6 @@ If you want to add extra attributes to an HTML field representation you can use the ``attr`` option. It's an associative array with HTML attributes as keys. This can be useful when you need to set a custom class for some widget:: - $builder->add('body', 'textarea', array( + $builder->add('body', TextareaType::class, array( 'attr' => array('class' => 'tinymce'), )); diff --git a/reference/forms/types/options/by_reference.rst.inc b/reference/forms/types/options/by_reference.rst.inc index a2e80e1d544..1023e625cd9 100644 --- a/reference/forms/types/options/by_reference.rst.inc +++ b/reference/forms/types/options/by_reference.rst.inc @@ -15,8 +15,8 @@ To explain this further, here's a simple example:: ->add('title', 'text') ->add( $builder->create('author', 'form', array('by_reference' => ?)) - ->add('name', 'text') - ->add('email', 'email') + ->add('name', TextType::class) + ->add('email', EmailType::class) ) If ``by_reference`` is true, the following takes place behind the scenes From e1036270a48170f61466f61a71787a98d0ab5194 Mon Sep 17 00:00:00 2001 From: Hidde Wieringa Date: Mon, 23 Nov 2015 23:23:56 +0100 Subject: [PATCH 062/235] Fixed wrong indendation --- cookbook/form/create_form_type_extension.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/form/create_form_type_extension.rst b/cookbook/form/create_form_type_extension.rst index ed7d8f2694e..85a786066f4 100644 --- a/cookbook/form/create_form_type_extension.rst +++ b/cookbook/form/create_form_type_extension.rst @@ -329,7 +329,7 @@ You can modify several form types at once by specifying their common parent available in Symfony inherit from the ``TextType`` form type (such as ``email``, ``SearchType``, ``UrlType``, etc.). A form type extension applying to ``TextType`` (i.e. whose ``getExtendedType`` method returns ``TextType::class``) would apply - to all of these form types. +to all of these form types. In the same way, since **most** form types natively available in Symfony inherit from the ``FormType`` form type, a form type extension applying to ``FormType`` From e59d351c7c5bc4c24790ff2cf75804a208e97b82 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Fri, 27 Nov 2015 13:47:06 -0500 Subject: [PATCH 063/235] tweaks thanks to WouterJ and javiereguiluz --- cookbook/configuration/micro-kernel-trait.rst | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/cookbook/configuration/micro-kernel-trait.rst b/cookbook/configuration/micro-kernel-trait.rst index 54f68409133..79f1d474f6d 100644 --- a/cookbook/configuration/micro-kernel-trait.rst +++ b/cookbook/configuration/micro-kernel-trait.rst @@ -25,7 +25,7 @@ via Composer: .. code-block:: bash - composer require symfony/symfony + $ composer require symfony/symfony Next, create an ``index.php`` file that creates a kernel class and executes it:: @@ -101,12 +101,12 @@ that define your bundles, your services and your routes: **configureContainer(ContainerBuilder $c, LoaderInterface $loader)** This methods builds and configures the container. In practice, you will use - ``loadFromExtension`` to configure different bundles (this is the equivalent) - of what you see in a normal ``config.yml`` file. You can also register services + ``loadFromExtension`` to configure different bundles (this is the equivalent + of what you see in a normal ``config.yml`` file). You can also register services directly in PHP or load external configuration files (shown below). **configureRoutes(RouteCollectionBuilder $routes)** - Your job in this method is to add routes to the system. The ``RouteCollectionBuilder`` + Your job in this method is to add routes to the application. The ``RouteCollectionBuilder`` is new in Symfony 2.8 and has methods that make adding routes in PHP more fun. You can also load external routing files (shown below). @@ -115,23 +115,23 @@ Advanced Example: Twig, Annotations and the Web Debug Toolbar ------------------------------------------------------------- The purpose of the ``MicroKernelTrait`` is *not* to have a single-file application. -Instead, it's goal to give you the power to choose your bundles and structure. +Instead, its goal to give you the power to choose your bundles and structure. First, you'll probably want to put your PHP classes in an ``src/`` directory. Configure your ``composer.json`` file to load from there: -... code-block:: json +.. code-block:: json -{ - "require": { - "...": "...", - }, - "autoload": { - "psr-4": { - "": "src/" + { + "require": { + "...": "..." + }, + "autoload": { + "psr-4": { + "": "src/" + } } } -} Now, suppose you want to use Twig and load routes via annotations. For annotation routing, you need SensioFrameworkExtraBundle. This comes with a normal Symfony project. @@ -139,7 +139,7 @@ But in this case, you need to download it: .. code-block:: bash - composer require sensio/framework-extra-bundle + $ composer require sensio/framework-extra-bundle Instead of putting *everything* in ``index.php``, create a new ``app/AppKernel.php`` to hold the kernel. Now it looks like this:: From 1eb5f23d1e0d4df5c20f2b9339b1cdc20cc5ed5d Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Fri, 27 Nov 2015 14:06:23 -0500 Subject: [PATCH 064/235] Updating some places to use the new CustomUserMessageAuthenticationException --- cookbook/security/api_key_authentication.rst | 18 +++++++++++++++--- .../security/custom_password_authenticator.rst | 16 ++++++++++++---- 2 files changed, 27 insertions(+), 7 deletions(-) diff --git a/cookbook/security/api_key_authentication.rst b/cookbook/security/api_key_authentication.rst index f2e9fc7e824..624fe68a6f9 100644 --- a/cookbook/security/api_key_authentication.rst +++ b/cookbook/security/api_key_authentication.rst @@ -25,6 +25,7 @@ value and then a User object is created:: use Symfony\Component\Security\Core\Authentication\SimplePreAuthenticatorInterface; use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; use Symfony\Component\Security\Core\Exception\AuthenticationException; + use Symfony\Component\Security\Core\Exception\CustomUserMessageAuthenticationException; use Symfony\Component\Security\Core\Authentication\Token\PreAuthenticatedToken; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\Security\Core\User\UserProviderInterface; @@ -69,7 +70,8 @@ value and then a User object is created:: $username = $userProvider->getUsernameForApiKey($apiKey); if (!$username) { - throw new AuthenticationException( + // this message will be returned to the client + throw new CustomUserMessageAuthenticationException( sprintf('API Key "%s" does not exist.', $apiKey) ); } @@ -90,6 +92,11 @@ value and then a User object is created:: } } +.. versionadded:: 2.8 + The ``CustomUserMessageAuthenticationException`` class is new in Symfony 2.8 + and helps you return custom authentication messages. In 2.7 or earlier, throw + an ``AuthenticationException`` or any sub-class (you can still do this in 2.8). + Once you've :ref:`configured ` everything, you'll be able to authenticate by adding an apikey parameter to the query string, like ``http://example.com/admin/foo?apikey=37b51d194a7513e45b56f6524f2d51f2``. @@ -280,7 +287,11 @@ you can use to create an error ``Response``. public function onAuthenticationFailure(Request $request, AuthenticationException $exception) { - return new Response("Authentication Failed.", 403); + return new Response( + // this contains information about *why* authentication failed + // use it, or return your own message + strtr($exception->getMessageKey(), $exception->getMessageData()) + , 403) } } @@ -532,7 +543,8 @@ to see if the stored token has a valid User object that can be used:: } if (!$username) { - throw new AuthenticationException( + // this message will be returned to the client + throw new CustomUserMessageAuthenticationException( sprintf('API Key "%s" does not exist.', $apiKey) ); } diff --git a/cookbook/security/custom_password_authenticator.rst b/cookbook/security/custom_password_authenticator.rst index c8d54869c11..23e6d3b123f 100644 --- a/cookbook/security/custom_password_authenticator.rst +++ b/cookbook/security/custom_password_authenticator.rst @@ -29,7 +29,7 @@ the user:: use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; use Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken; use Symfony\Component\Security\Core\Encoder\UserPasswordEncoderInterface; - use Symfony\Component\Security\Core\Exception\AuthenticationException; + use Symfony\Component\Security\Core\Exception\CustomUserMessageAuthenticationException; use Symfony\Component\Security\Core\Exception\UsernameNotFoundException; use Symfony\Component\Security\Core\User\UserProviderInterface; @@ -47,7 +47,8 @@ the user:: try { $user = $userProvider->loadUserByUsername($token->getUsername()); } catch (UsernameNotFoundException $e) { - throw new AuthenticationException('Invalid username or password'); + // error will be shown to the client + throw new CustomUserMessageAuthenticationException('Invalid username or password'); } $passwordValid = $this->encoder->isPasswordValid($user, $token->getCredentials()); @@ -55,7 +56,8 @@ the user:: if ($passwordValid) { $currentHour = date('G'); if ($currentHour < 14 || $currentHour > 16) { - throw new AuthenticationException( + // error will be shown to the client + throw new CustomUserMessageAuthenticationException( 'You can only log in between 2 and 4!', 100 ); @@ -69,7 +71,8 @@ the user:: ); } - throw new AuthenticationException('Invalid username or password'); + // error will be shown to the client + throw new CustomUserMessageAuthenticationException('Invalid username or password'); } public function supportsToken(TokenInterface $token, $providerKey) @@ -84,6 +87,11 @@ the user:: } } +.. versionadded:: 2.8 + The ``CustomUserMessageAuthenticationException`` class is new in Symfony 2.8 + and helps you return custom authentication messages. In 2.7 or earlier, throw + an ``AuthenticationException`` or any sub-class (you can still do this in 2.8). + How it Works ------------ From 51720c76fe819a2bedab4fef88874773bfae7aba Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Fri, 27 Nov 2015 14:16:59 -0500 Subject: [PATCH 065/235] Many fixes thanks to great review from ogizanagi, javiereguiluz and others --- cookbook/security/guard-authentication.rst | 40 ++++++++++++---------- 1 file changed, 21 insertions(+), 19 deletions(-) diff --git a/cookbook/security/guard-authentication.rst b/cookbook/security/guard-authentication.rst index 23f2bcceb60..5201fcf2bbb 100644 --- a/cookbook/security/guard-authentication.rst +++ b/cookbook/security/guard-authentication.rst @@ -8,7 +8,7 @@ Whether you need to build a traditional login form, an API token authentication or you need to integrate with some proprietary single-sign-on system, the Guard component can make it easy... and fun! -In this example, you'll build an API token authentication system... and learn how +In this example, you'll build an API token authentication system and learn how to work with Guard. Create a User and a User Provider @@ -17,7 +17,7 @@ Create a User and a User Provider No matter how you authenticate, you need to create a User class that implements ``UserInterface`` and configure a :doc:`user provider `. In this example, users are stored in the database via Doctrine, and each user has an ``apiKey`` -property they can use to access their account via the API:: +property they use to access their account via the API:: // src/AppBundle/Entity/User.php namespace AppBundle\Entity; @@ -76,7 +76,7 @@ property they can use to access their account via the API:: This User doesn't have a password, but you can add a ``password`` property if you also want to allow this user to login with a password (e.g. via a login form). -Your ``User`` class doesn't need to be store in Doctrine: do whatever you need. +Your ``User`` class doesn't need to be stored in Doctrine: do whatever you need. Next, make sure you've configured a "user provider" for the user: .. configuration-block:: @@ -124,7 +124,7 @@ Next, make sure you've configured a "user provider" for the user: 'providers' => array( 'your_db_provider' => array( 'entity' => array( - 'class' => 'AppBundle:User', + 'class' => 'AppBundle:User', ), ), ), @@ -144,7 +144,7 @@ Suppose you have an API where your clients will send an ``X-AUTH-TOKEN`` header on each request with their API token. Your job is to read this and find the associated user (if any). -To create a custom authentication system, just create a class an make it implement +To create a custom authentication system, just create a class and make it implement :class:`Symfony\\Component\\Security\\Guard\\GuardAuthenticatorInterface`. Or, extend the simpler :class:`Symfony\\Component\\Security\\Guard\\AbstractGuardAuthenticator`. This requires you to implement six methods:: @@ -181,7 +181,7 @@ This requires you to implement six methods:: return; } - // What we return here will be passed to getUser() as $credentials + // What you return here will be passed to getUser() as $credentials return array( 'token' => $token, ); @@ -356,7 +356,7 @@ Finally, configure your ``firewalls`` key in ``security.yml`` to use this authen ), )); -You did it! You now have a fully-working API token authentication system. If you're +You did it! You now have a fully-working API token authentication system. If your homepage required ``ROLE_USER``, then you could test it under different conditions: .. code-block:: bash @@ -398,7 +398,7 @@ Each authenticator needs the following methods: **checkCredentials($credentials, UserInterface $user)** If ``getUser()`` returns a User object, this method is called. Your job is to - verify if the credentials are correct. For a login for, this is where you would + verify if the credentials are correct. For a login form, this is where you would check that the password is correct for the user. To pass authentication, return ``true``. If you return *anything* else (or throw an :ref:`AuthenticationException `), @@ -410,7 +410,7 @@ Each authenticator needs the following methods: that will be sent to the client or ``null`` to continue the request (e.g. allow the route/controller to be called like normal). Since this is an API where each request authenticates itself, you want to return - ``nul``. + ``null``. **onAuthenticationFailure(Request $request, AuthenticationException $exception)** This is called if authentication fails. Your job @@ -421,13 +421,15 @@ Each authenticator needs the following methods: **start** This is called if the client accesses a URI/resource that requires authentication, but no authentication details were sent (i.e. you returned ``null`` from - ``getCredentialsFromRequest()``). Your job is to return a + ``getCredentials()``). Your job is to return a :class:`Symfony\\Component\\HttpFoundation\\Response` object that helps the user authenticate (e.g. a 401 response that says "token is missing!"). **supportsRememberMe** + If you want to support "remember me" functionality, return true from this method. + You will still need to active ``rememebe_me`` under your firewall for it to work. Since this is a stateless API, you do not want to support "remember me" - functionality. + functionality in this example. .. _guard-customize-error: @@ -457,9 +459,9 @@ to cause a failure:: { // ... - if ($token == 'MickyMouse') { + if ($token == 'ILuvAPIs') { throw new CustomUserMessageAuthenticationException( - 'MickyMouse is not a real API key: he\'s a cartoon character' + 'ILuvAPIs is not a real API key: it\'s just a silly phrase' ); } @@ -469,13 +471,13 @@ to cause a failure:: // ... } -In this case, since "MickyMouse" is a ridiculous API key, you could include an easter +In this case, since "ILuvAPIs" is a ridiculous API key, you could include an easter egg to return a custom message if someone tries this: .. code-block:: bash - curl -H "X-AUTH-TOKEN: MickyMouse" http://localhost:8000/ - # {"message":"MickyMouse is not a real API key: he's a cartoon character"} + curl -H "X-AUTH-TOKEN: ILuvAPIs" http://localhost:8000/ + # {"message":"ILuvAPIs is not a real API key: it's just a silly phrase"} Frequently Asked Questions -------------------------- @@ -485,7 +487,7 @@ Frequently Asked Questions "entry_point". This means you'll need to choose *which* authenticator's ``start()`` method should be called when an anonymous user tries to access a protected resource. For example, suppose you have an ``app.form_login_authenticator`` that handles - a traditional form login. When a user access a protected page anonymously, you + a traditional form login. When a user accesses a protected page anonymously, you want to use the ``start()`` method from the form authenticator and redirect them to the login page (instead of returning a JSON response): @@ -564,8 +566,8 @@ Frequently Asked Questions )); **Can I use this with ``form_login``?** - Yes! ``form_login`` is *one* way to authenticator a user, so you could use - it *and* then add one more more authenticators. Use a guard authenticator doesn't + Yes! ``form_login`` is *one* way to authenticate a user, so you could use + it *and* then add one or more authenticators. Using a guard authenticator doesn't collide with other ways to authenticate. **Can I use this with FOSUserBundle?** From 3ebf2d0355e4751bc112612d895a1d06289975e2 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Fri, 27 Nov 2015 16:11:00 -0500 Subject: [PATCH 066/235] Fixing bad merge --- cookbook/form/dynamic_form_modification.rst | 7 ------- 1 file changed, 7 deletions(-) diff --git a/cookbook/form/dynamic_form_modification.rst b/cookbook/form/dynamic_form_modification.rst index 216d5eafc63..085b34beb7d 100644 --- a/cookbook/form/dynamic_form_modification.rst +++ b/cookbook/form/dynamic_form_modification.rst @@ -433,13 +433,6 @@ class, you can simply call:: } } -<<<<<<< HEAD -======= -If you extend the ``Symfony\Bundle\FrameworkBundle\Controller\Controller`` class, you can simply call:: - - $form = $this->createForm(FriendMessageFormType::class); - ->>>>>>> pull/5834 You can also easily embed the form type into another form:: // inside some other "form type" class From 4799a7cdaf7bab1decd1bdedaad11fd40a6e4706 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Fri, 27 Nov 2015 16:17:55 -0500 Subject: [PATCH 067/235] minor tweaks #5834 --- book/forms.rst | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/book/forms.rst b/book/forms.rst index 7ee7bff700d..036fdc127ce 100644 --- a/book/forms.rst +++ b/book/forms.rst @@ -126,9 +126,10 @@ represented by its fully qualified class name. Among other things, it determines which HTML form tag(s) is rendered for that field. .. versionadded:: 2.8 - To denote the form type, you have to use the fully qualified class name. - Before Symfony 2.8, you could use an alias for each type like ``'name'`` or - ``'date'``. + To denote the form type, you have to use the fully qualified class name - like + TextType::class in PHP 5.5+ or ``Symfony\Component\Form\Extension\Core\Type\TextType``. + Before Symfony 2.8, you could use an alias for each type like ``text`` or + ``date``. For more details, see the `2.8 UPGRADE Log`_. Finally, you added a submit button with a custom label for submitting the form to the server. @@ -1230,18 +1231,11 @@ Define your form type as a service. .. code-block:: php // src/AppBundle/Resources/config/services.php - use AppBundle\Form\Type\TaskType; + use ; - $definition = new Definition(TaskType::class, array( - new Reference('app.my_service'), - )); - $container - ->setDefinition( - 'app.form.type.task', - $definition - ) + $container->register('app.form.type.task', 'AppBundle\Form\Type\TaskType') + ->addArgument(new Reference('app.my_service')) ->addTag('form.type') - ; Read :ref:`form-cookbook-form-field-service` for more information. @@ -1978,3 +1972,4 @@ Learn more from the Cookbook .. _`form_div_layout.html.twig`: https://github.com/symfony/symfony/blob/master/src/Symfony/Bridge/Twig/Resources/views/Form/form_div_layout.html.twig .. _`Cross-site request forgery`: http://en.wikipedia.org/wiki/Cross-site_request_forgery .. _`view on GitHub`: https://github.com/symfony/symfony/tree/master/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form +.. _`2.8 UPGRADE Log`: https://github.com/symfony/symfony/blob/2.8/UPGRADE-2.8.md#form \ No newline at end of file From 3117df5957068bfdc0d51ddc078ab4c2958789d7 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Fri, 27 Nov 2015 17:31:28 -0500 Subject: [PATCH 068/235] Another huge batch of changes for the form type changes in 2.8 --- best_practices/forms.rst | 21 +----- book/forms.rst | 7 +- book/validation.rst | 2 +- cookbook/bundles/override.rst | 15 ++-- cookbook/controller/upload_file.rst | 5 +- cookbook/form/create_custom_field_type.rst | 69 +++++++++---------- cookbook/form/create_form_type_extension.rst | 35 +++++----- cookbook/form/dynamic_form_modification.rst | 40 +---------- cookbook/form/form_collections.rst | 31 ++++----- cookbook/form/form_customization.rst | 6 +- cookbook/form/use_empty_data.rst | 16 +++-- reference/forms/types/checkbox.rst | 5 +- reference/forms/types/choice.rst | 27 ++++++-- reference/forms/types/collection.rst | 16 +++-- reference/forms/types/entity.rst | 28 ++++++-- reference/forms/types/file.rst | 5 +- reference/forms/types/money.rst | 5 +- .../forms/types/options/button_attr.rst.inc | 5 +- .../forms/types/options/by_reference.rst.inc | 6 +- .../forms/types/options/choice_attr.rst.inc | 5 +- .../forms/types/options/choice_label.rst.inc | 10 ++- reference/forms/types/options/data.rst.inc | 5 +- .../forms/types/options/data_class.rst.inc | 5 +- .../forms/types/options/date_format.rst.inc | 5 +- .../forms/types/options/empty_data.rst.inc | 5 +- .../forms/types/options/group_by.rst.inc | 5 +- .../invalid_message_parameters.rst.inc | 2 +- .../forms/types/options/placeholder.rst.inc | 15 +++- .../types/options/preferred_choices.rst.inc | 10 ++- reference/forms/types/range.rst | 5 +- reference/forms/types/repeated.rst | 10 ++- reference/forms/types/submit.rst | 7 +- reference/forms/types/time.rst | 10 ++- 33 files changed, 252 insertions(+), 191 deletions(-) diff --git a/best_practices/forms.rst b/best_practices/forms.rst index 2df876680a1..e942a40854c 100644 --- a/best_practices/forms.rst +++ b/best_practices/forms.rst @@ -110,6 +110,7 @@ some developers configure form buttons in the controller:: use Symfony\Component\HttpFoundation\Request; use Symfony\Bundle\FrameworkBundle\Controller\Controller; + use Symfony\Component\Form\Extension\Core\Type\SubmitType; use AppBundle\Entity\Post; use AppBundle\Form\PostType; @@ -121,7 +122,7 @@ some developers configure form buttons in the controller:: { $post = new Post(); $form = $this->createForm(PostType::class, $post); - $form->add('submit', 'submit', array( + $form->add('submit', SubmitType::class, array( 'label' => 'Create', 'attr' => array('class' => 'btn btn-default pull-right') )); @@ -205,21 +206,3 @@ Second, we recommend using ``$form->isSubmitted()`` in the ``if`` statement for clarity. This isn't technically needed, since ``isValid()`` first calls ``isSubmitted()``. But without this, the flow doesn't read well as it *looks* like the form is *always* processed (even on the GET request). - -Custom Form Field Types ------------------------ - -.. best-practice:: - - Add the ``app_`` prefix to your custom form field types to avoid collisions. - -Custom form field types inherit from the ``AbstractType`` class, which defines the -``getName()`` method to configure the name of that form type. These names must -be unique in the application. - -If a custom form type uses the same name as any of the Symfony's built-in form -types, it will override it. The same happens when the custom form type matches -any of the types defined by the third-party bundles installed in your application. - -Add the ``app_`` prefix to your custom form field types to avoid name collisions -that can lead to hard to debug errors. diff --git a/book/forms.rst b/book/forms.rst index 036fdc127ce..95ffabc0656 100644 --- a/book/forms.rst +++ b/book/forms.rst @@ -1005,7 +1005,7 @@ ways. If you build your form in the controller, you can use ``setAction()`` and ->setAction($this->generateUrl('target_route')) ->setMethod('GET') ->add('task', TextType::class) - ->add('dueDate', DateType::clas) + ->add('dueDate', DateType::class) ->add('save', SubmitType::class) ->getForm(); @@ -1018,7 +1018,10 @@ In :ref:`book-form-creating-form-classes` you will learn how to move the form building code into separate classes. When using an external form class in the controller, you can pass the action and method as form options:: - $form = $this->createForm(new TaskType(), $task, array( + use AppBundle\Form\Type\TaskType; + // ... + + $form = $this->createForm(TaskType::class, $task, array( 'action' => $this->generateUrl('target_route'), 'method' => 'GET', )); diff --git a/book/validation.rst b/book/validation.rst index 8856de1d304..a30ea5e0e9d 100644 --- a/book/validation.rst +++ b/book/validation.rst @@ -230,7 +230,7 @@ workflow looks like the following from inside a controller:: public function updateAction(Request $request) { $author = new Author(); - $form = $this->createForm(new AuthorType(), $author); + $form = $this->createForm(AuthorType::class, $author); $form->handleRequest($request); diff --git a/cookbook/bundles/override.rst b/cookbook/bundles/override.rst index db60e778bba..375f2678504 100644 --- a/cookbook/bundles/override.rst +++ b/cookbook/bundles/override.rst @@ -105,17 +105,16 @@ associations. Learn more about this feature and its limitations in Forms ----- -In order to override a form type, it has to be registered as a service (meaning -it is tagged as ``form.type``). You can then override it as you would override any -service as explained in `Services & Configuration`_. This, of course, will only -work if the type is referred to by its alias rather than being instantiated, -e.g.:: +As of Symfony 2.8, form types are referred to by their fully-qualified class name:: - $builder->add('name', 'custom_type'); + $builder->add('name', CustomType::class); -rather than:: +This means that you cannot override this by creating a sub-class of ``CustomType`` +and registering it as a service, and tagging it with ``form.type`` (you *could* +do this in earlier version). - $builder->add('name', new CustomType()); +Instead, you should use a "form type extension" to modify the existing form type. +For more information, see :doc:`/cookbook/form/create_form_type_extension`. .. _override-validation: diff --git a/cookbook/controller/upload_file.rst b/cookbook/controller/upload_file.rst index 065b4bbaf0a..43cb18a4d5f 100644 --- a/cookbook/controller/upload_file.rst +++ b/cookbook/controller/upload_file.rst @@ -57,6 +57,7 @@ Then, add a new ``brochure`` field to the form that manages the ``Product`` enti use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolver; + use Symfony\Component\Form\Extension\Core\Type\FileType; class ProductType extends AbstractType { @@ -64,7 +65,7 @@ Then, add a new ``brochure`` field to the form that manages the ``Product`` enti { $builder // ... - ->add('brochure', 'file', array('label' => 'Brochure (PDF file)')) + ->add('brochure', FileType::class, array('label' => 'Brochure (PDF file)')) // ... ; } @@ -116,7 +117,7 @@ Finally, you need to update the code of the controller that handles the form:: public function newAction(Request $request) { $product = new Product(); - $form = $this->createForm(new ProductType(), $product); + $form = $this->createForm(ProductType::class, $product); $form->handleRequest($request); if ($form->isValid()) { diff --git a/cookbook/form/create_custom_field_type.rst b/cookbook/form/create_custom_field_type.rst index ab933f6e8ea..b95e1d70683 100644 --- a/cookbook/form/create_custom_field_type.rst +++ b/cookbook/form/create_custom_field_type.rst @@ -25,6 +25,7 @@ for form fields, which is ``\Form\Type``. Make sure the field extend use Symfony\Component\Form\AbstractType; use Symfony\Component\OptionsResolver\OptionsResolver; + use Symfony\Component\Form\Extension\Core\Type\ChoiceType; class GenderType extends AbstractType { @@ -40,12 +41,7 @@ for form fields, which is ``\Form\Type``. Make sure the field extend public function getParent() { - return 'choice'; - } - - public function getName() - { - return 'gender'; + return ChoiceType::class; } } @@ -54,8 +50,12 @@ for form fields, which is ``\Form\Type``. Make sure the field extend The location of this file is not important - the ``Form\Type`` directory is just a convention. +.. versionadded:: 2.8 + In 2.8, the ``getName()`` method was removed. Now, fields are always referred + to by their fully-qualified class name. + Here, the return value of the ``getParent`` function indicates that you're -extending the ``choice`` field type. This means that, by default, you inherit +extending the ``ChoiceType`` field. This means that, by default, you inherit all of the logic and rendering of that field type. To see some of the logic, check out the `ChoiceType`_ class. There are three methods that are particularly important: @@ -89,10 +89,6 @@ important: Also, if you need to modify the "view" of any of your child types from your parent type, use the ``finishView()`` method. -The ``getName()`` method returns an identifier which should be unique in -your application. This is used in various places, such as when customizing -how your form type will be rendered. - The goal of this field was to extend the choice type to enable selection of a gender. This is achieved by fixing the ``choices`` to a list of possible genders. @@ -100,13 +96,19 @@ genders. Creating a Template for the Field --------------------------------- -Each field type is rendered by a template fragment, which is determined in -part by the value of your ``getName()`` method. For more information, see +Each field type is rendered by a template fragment, which is determined in part by +the class name of your type. For more information, see :ref:`cookbook-form-customization-form-themes`. -In this case, since the parent field is ``choice``, you don't *need* to do -any work as the custom field type will automatically be rendered like a ``choice`` -type. But for the sake of this example, suppose that when your field is "expanded" +.. note:: + + The first part of the prefix (e.g. ``gender``) comes from the class name + (``GenderType`` -> ``gender``). This can be controlled by overriding ``getBlockPrefix()`` + in ``GenderType``. + +In this case, since the parent field is ``ChoiceType``, you don't *need* to do +any work as the custom field type will automatically be rendered like a ``ChoiceType``. +But for the sake of this example, suppose that when your field is "expanded" (i.e. radio buttons or checkboxes, instead of a select field), you want to always render it in a ``ul`` element. In your form theme template (see above link for details), create a ``gender_widget`` block to handle this: @@ -154,7 +156,7 @@ link for details), create a ``gender_widget`` block to handle this: .. note:: Make sure the correct widget prefix is used. In this example the name should - be ``gender_widget``, according to the value returned by ``getName``. + be ``gender_widget`` (see :ref:`cookbook-form-customization-form-themes`). Further, the main config file should point to the custom form template so that it's used when rendering all forms. @@ -241,18 +243,19 @@ new instance of the type in one of your forms:: use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; + use AppBundle\Form\Type\GenderType; class AuthorType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { - $builder->add('gender_code', new GenderType(), array( + $builder->add('gender_code', GenderType::class, array( 'placeholder' => 'Choose a gender', )); } } -But this only works because the ``GenderType()`` is very simple. What if +But this only works because the ``GenderType`` is very simple. What if the gender codes were stored in configuration or in a database? The next section explains how more complex field types solve this problem. @@ -311,14 +314,14 @@ the ``genders`` parameter value as the first argument to its to-be-created arguments: - "%genders%" tags: - - { name: form.type, alias: gender } + - { name: form.type } .. code-block:: xml %genders% - + .. code-block:: php @@ -331,9 +334,7 @@ the ``genders`` parameter value as the first argument to its to-be-created 'AppBundle\Form\Type\GenderType', array('%genders%') )) - ->addTag('form.type', array( - 'alias' => 'gender', - )) + ->addTag('form.type') ; .. tip:: @@ -341,10 +342,8 @@ the ``genders`` parameter value as the first argument to its to-be-created Make sure the services file is being imported. See :ref:`service-container-imports-directive` for details. -Be sure that the ``alias`` attribute of the tag corresponds with the value -returned by the ``getName`` method defined earlier. You'll see the importance -of this in a moment when you use the custom field type. But first, add a ``__construct`` -method to ``GenderType``, which receives the gender configuration:: +First, add a ``__construct`` method to ``GenderType``, which receives the gender +configuration:: // src/AppBundle/Form/Type/GenderType.php namespace AppBundle\Form\Type; @@ -374,28 +373,28 @@ method to ``GenderType``, which receives the gender configuration:: } Great! The ``GenderType`` is now fueled by the configuration parameters and -registered as a service. Additionally, because you used the ``form.type`` alias in its -configuration, using the field is now much easier:: +registered as a service. Because you used the ``form.type`` alias in its configuration, +your service will be used instead of creating a *new* ``GenderType``. In other words, +your controller *does not need to change*, it still looks like this:: // src/AppBundle/Form/Type/AuthorType.php namespace AppBundle\Form\Type; + use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; - - // ... + use AppBundle\Form\Type\GenderType; class AuthorType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { - $builder->add('gender_code', 'gender', array( + $builder->add('gender_code', GenderType::class, array( 'placeholder' => 'Choose a gender', )); } } -Notice that instead of instantiating a new instance, you can just refer to -it by the alias used in your service configuration, ``gender``. Have fun! +Have fun! .. _`ChoiceType`: https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php .. _`FieldType`: https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Form/Extension/Core/Type/FieldType.php diff --git a/cookbook/form/create_form_type_extension.rst b/cookbook/form/create_form_type_extension.rst index 85a786066f4..11009d5922f 100644 --- a/cookbook/form/create_form_type_extension.rst +++ b/cookbook/form/create_form_type_extension.rst @@ -15,7 +15,7 @@ extensions come in. Form type extensions have 2 main use-cases: #. You want to add a **specific feature to a single type** (such - as adding a "download" feature to the "file" field type); + as adding a "download" feature to the ``FileType`` field type); #. You want to add a **generic feature to several types** (such as adding a "help" text to every "input text"-like type). @@ -51,6 +51,7 @@ class. In most cases, it's easier to extend the abstract class:: namespace AppBundle\Form\Extension; use Symfony\Component\Form\AbstractTypeExtension; + use Symfony\Component\Form\Extension\Core\Type\FileType; class ImageTypeExtension extends AbstractTypeExtension { @@ -61,7 +62,7 @@ class. In most cases, it's easier to extend the abstract class:: */ public function getExtendedType() { - return 'file'; + return FileType::class; } } @@ -105,14 +106,14 @@ tag: app.image_type_extension: class: AppBundle\Form\Extension\ImageTypeExtension tags: - - { name: form.type_extension, alias: file } + - { name: form.type_extension, extended_type: Symfony\Component\Form\Extension\Core\Type\FileType } .. code-block:: xml - + .. code-block:: php @@ -122,11 +123,15 @@ tag: 'app.image_type_extension', 'AppBundle\Form\Extension\ImageTypeExtension' ) - ->addTag('form.type_extension', array('alias' => 'file')); + ->addTag('form.type_extension', array('extended_type' => 'Symfony\Component\Form\Extension\Core\Type\FileType')); + +.. versionadded:: 2.8 + The ``extended_type`` option is new in Symfony 2.8. Before, the option was + called ``alias``. -The ``alias`` key of the tag is the type of field that this extension should -be applied to. In your case, as you want to extend the ``file`` field type, -you will use ``file`` as an alias. +The ``extended_type`` key of the tag is the type of field that this extension should +be applied to. In your case, as you want to extend the ``Symfony\Component\Form\Extension\Core\Type\FileType`` +field type, you will use that as the ``extended_type``. Adding the extension Business Logic ----------------------------------- @@ -175,14 +180,14 @@ database):: } Your form type extension class will need to do two things in order to extend -the ``file`` form type: +the ``FileType::class`` form type: #. Override the ``configureOptions`` method in order to add an ``image_path`` option; #. Override the ``buildForm`` and ``buildView`` methods in order to pass the image URL to the view. -The logic is the following: when adding a form field of type ``file``, +The logic is the following: when adding a form field of type ``FileType::class``, you will be able to specify a new option: ``image_path``. This option will tell the file field how to get the actual image URL in order to display it in the view:: @@ -195,6 +200,7 @@ it in the view:: use Symfony\Component\Form\FormInterface; use Symfony\Component\PropertyAccess\PropertyAccess; use Symfony\Component\OptionsResolver\OptionsResolver; + use Symfony\Component\Form\Extension\Core\Type\FileType; class ImageTypeExtension extends AbstractTypeExtension { @@ -205,7 +211,7 @@ it in the view:: */ public function getExtendedType() { - return 'file'; + return FileType::class; } /** @@ -291,7 +297,7 @@ Specifically, you need to override the ``file_widget`` block: Using the Form Type Extension ----------------------------- -From now on, when adding a field of type ``file`` in your form, you can +From now on, when adding a field of type ``FileType::class`` in your form, you can specify an ``image_path`` option that will be used to display an image next to the file field. For example:: @@ -311,11 +317,6 @@ next to the file field. For example:: ->add('name', TextType::class) ->add('file', FileType::class, array('image_path' => 'webPath')); } - - public function getName() - { - return 'media'; - } } When displaying the form, if the underlying model has already been associated diff --git a/cookbook/form/dynamic_form_modification.rst b/cookbook/form/dynamic_form_modification.rst index 085b34beb7d..6483ed73532 100644 --- a/cookbook/form/dynamic_form_modification.rst +++ b/cookbook/form/dynamic_form_modification.rst @@ -346,39 +346,8 @@ and fill in the listener logic:: Using the Form ~~~~~~~~~~~~~~ -Our form is now ready to use and there are two possible ways to use it inside -of a controller: - -a) create it manually and remember to pass the token storage to it; - -or - -b) define it as a service. - -a) Creating the Form manually -............................. - -This is very simple, and is probably the better approach unless you're using -your new form type in many places or embedding it into other forms:: - - class FriendMessageController extends Controller - { - public function newAction(Request $request) - { - $tokenStorage = $this->container->get('security.token_storage'); - $form = $this->createForm( - new FriendMessageFormType($tokenStorage) - ); - - // ... - } - } - -b) Defining the Form as a Service -................................. - -To define your form as a service, just create a normal service and then tag -it with :ref:`dic-tags-form-type`. +Our form is now ready to use. But first, because it has a ``__construct()`` method, +you need to register it as a service and tag it with :ref:`form.type `: .. configuration-block:: @@ -413,11 +382,6 @@ it with :ref:`dic-tags-form-type`. array('security.token_storage') ); -If you wish to create it from within a service that has access to the form factory, -you then use:: - - $form = $formFactory->create('friend_message'); - In a controller that extends the :class:`Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller` class, you can simply call:: diff --git a/cookbook/form/form_collections.rst b/cookbook/form/form_collections.rst index e186f642f17..903ef4d3a37 100644 --- a/cookbook/form/form_collections.rst +++ b/cookbook/form/form_collections.rst @@ -99,11 +99,6 @@ Then, create a form class so that a ``Tag`` object can be modified by the user:: 'data_class' => 'AppBundle\Entity\Tag', )); } - - public function getName() - { - return 'tag'; - } } With this, you have enough to render a tag form by itself. But since the end @@ -119,6 +114,7 @@ Notice that you embed a collection of ``TagType`` forms using the use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolver; + use Symfony\Component\Form\Extension\Core\Type\CollectionType; class TaskType extends AbstractType { @@ -126,7 +122,9 @@ Notice that you embed a collection of ``TagType`` forms using the { $builder->add('description'); - $builder->add('tags', 'collection', array('entry_type' => new TagType())); + $builder->add('tags', CollectionType::class, array( + 'entry_type' => TagType::class + )); } public function configureOptions(OptionsResolver $resolver) @@ -135,14 +133,9 @@ Notice that you embed a collection of ``TagType`` forms using the 'data_class' => 'AppBundle\Entity\Task', )); } - - public function getName() - { - return 'task'; - } } -In your controller, you'll now initialize a new instance of ``TaskType``:: +In your controller, you'll create a new form from the ``TaskType``: // src/AppBundle/Controller/TaskController.php namespace AppBundle\Controller; @@ -169,7 +162,7 @@ In your controller, you'll now initialize a new instance of ``TaskType``:: $task->getTags()->add($tag2); // end dummy code - $form = $this->createForm(new TaskType(), $task); + $form = $this->createForm(TaskType::class, $task); $form->handleRequest($request); @@ -284,8 +277,8 @@ add the ``allow_add`` option to your collection field:: { $builder->add('description'); - $builder->add('tags', 'collection', array( - 'entry_type' => new TagType(), + $builder->add('tags', CollectionType::class, array( + 'entry_type' => TagType::class, 'allow_add' => true, )); } @@ -453,7 +446,7 @@ Next, add a ``by_reference`` option to the ``tags`` field and set it to ``false` { // ... - $builder->add('tags', 'collection', array( + $builder->add('tags', CollectionType::class, array( // ... 'by_reference' => false, )); @@ -569,7 +562,7 @@ you will learn about next!). .. _cookbook-form-collections-remove: Allowing Tags to be Removed ----------------------------- +--------------------------- The next step is to allow the deletion of a particular item in the collection. The solution is similar to allowing tags to be added. @@ -583,7 +576,7 @@ Start by adding the ``allow_delete`` option in the form Type:: { // ... - $builder->add('tags', 'collection', array( + $builder->add('tags', CollectionType::class, array( // ... 'allow_delete' => true, )); @@ -696,7 +689,7 @@ the relationship between the removed ``Tag`` and ``Task`` object. $originalTags->add($tag); } - $editForm = $this->createForm(new TaskType(), $task); + $editForm = $this->createForm(new TaskType::class, $task); $editForm->handleRequest($request); diff --git a/cookbook/form/form_customization.rst b/cookbook/form/form_customization.rst index b90f22455db..025297bee32 100644 --- a/cookbook/form/form_customization.rst +++ b/cookbook/form/form_customization.rst @@ -211,6 +211,9 @@ this folder. In this example, the customized fragment name is ``integer_widget`` because you want to override the HTML ``widget`` for all ``integer`` field types. If you need to customize ``textarea`` fields, you would customize ``textarea_widget``. + + The ``integer`` part comes from the class name: ``IntegerType`` becomes ``integer``, + based on a standard. As you can see, the fragment name is a combination of the field type and which part of the field is being rendered (e.g. ``widget``, ``label``, @@ -698,12 +701,13 @@ field whose *id* is ``product_name`` (and name is ``product[name]``). form type:: use Symfony\Component\Form\FormBuilderInterface; + use Symfony\Component\Form\Extension\Core\Type\TextType; public function buildForm(FormBuilderInterface $builder, array $options) { // ... - $builder->add('name', 'text', array( + $builder->add('name', TextType::class, array( 'block_name' => 'custom_name', )); } diff --git a/cookbook/form/use_empty_data.rst b/cookbook/form/use_empty_data.rst index 342341e5b7a..79026a573f0 100644 --- a/cookbook/form/use_empty_data.rst +++ b/cookbook/form/use_empty_data.rst @@ -15,11 +15,11 @@ your form. For example:: // $blog is passed in as the data, so the empty_data // option is not needed - $form = $this->createForm(new BlogType(), $blog); + $form = $this->createForm(BlogType::class, $blog); // no data is passed in, so empty_data is // used to get the "starting data" - $form = $this->createForm(new BlogType()); + $form = $this->createForm(BlogType::class); } By default, ``empty_data`` is set to ``null``. Or, if you have specified @@ -61,10 +61,14 @@ that constructor with no arguments:: } } -You can instantiate your class however you want. In this example, we pass -some dependency into the ``BlogType`` when we instantiate it, then use that -to instantiate the ``Blog`` class. The point is, you can set ``empty_data`` -to the exact "new" object that you want to use. +You can instantiate your class however you want. In this example, you pass +some dependency into the ``BlogType`` then use that to instantiate the ``Blog`` class. +The point is, you can set ``empty_data`` to the exact "new" object that you want to use. + +.. tip:: + + In order to pass arguments to the ``BlogType`` constructor, you'll need to + :ref:`register it as a service and tag with form.type `. Option 2: Provide a Closure --------------------------- diff --git a/reference/forms/types/checkbox.rst b/reference/forms/types/checkbox.rst index 3b45e55c582..5f774a3498e 100644 --- a/reference/forms/types/checkbox.rst +++ b/reference/forms/types/checkbox.rst @@ -36,7 +36,10 @@ Example Usage .. code-block:: php - $builder->add('public', 'checkbox', array( + use Symfony\Component\Form\Extension\Core\Type\CheckboxType; + // ... + + $builder->add('public', CheckboxType::class, array( 'label' => 'Show this entry publicly?', 'required' => false, )); diff --git a/reference/forms/types/choice.rst b/reference/forms/types/choice.rst index 346e7ef7a08..1a9c101fbcf 100644 --- a/reference/forms/types/choice.rst +++ b/reference/forms/types/choice.rst @@ -52,7 +52,10 @@ Example Usage The easiest way to use this field is to specify the choices directly via the ``choices`` option:: - $builder->add('isAttending', 'choice', array( + use Symfony\Component\Form\Extension\Core\Type\ChoiceType; + // ... + + $builder->add('isAttending', ChoiceType::class, array( 'choices' => array( 'Maybe' => null, 'Yes' => true, @@ -87,7 +90,10 @@ This field has a *lot* of options and most control how the field is displayed. I this example, the underlying data is some ``Category`` object that has a ``getName()`` method:: - $builder->add('category', 'choice', [ + use Symfony\Component\Form\Extension\Core\Type\ChoiceType; + // ... + + $builder->add('category', ChoiceType::class, [ 'choices' => [ new Category('Cat1'), new Category('Cat2'), @@ -132,7 +138,10 @@ Grouping Options You can easily "group" options in a select by passing a multi-dimensional choices array:: - $builder->add('stockStatus', 'choice', [ + use Symfony\Component\Form\Extension\Core\Type\ChoiceType; + // ... + + $builder->add('stockStatus', ChoiceType::class, [ 'choices' => [ 'Main Statuses' => [ 'Yes' => 'stock_yes', @@ -163,7 +172,10 @@ This is the most basic way to specify the choices that should be used by this field. The ``choices`` option is an array, where the array key is the item's label and the array value is the item's value:: - $builder->add('inStock', 'choice', array( + use Symfony\Component\Form\Extension\Core\Type\ChoiceType; + // ... + + $builder->add('inStock', ChoiceType::class, array( 'choices' => array('In Stock' => true, 'Out of Stock' => false), // always include this 'choices_as_values' => true, @@ -195,7 +207,7 @@ to the user. * Since 2.7:: - $builder->add('gender', 'choice', array( + $builder->add('gender', ChoiceType::class, array( // Shows "Male" to the user, returns "m" when selected 'choices' => array('Male' => 'm', 'Female' => 'f'), 'choices_as_values' => true, @@ -206,7 +218,7 @@ type behaves as if it were set to true: * Default for 3.0:: - $builder->add('gender', 'choice', array( + $builder->add('gender', ChoiceType::class, array( 'choices' => array('Male' => 'm', 'Female' => 'f'), )); @@ -263,9 +275,10 @@ With this option you can also allow float values to be selected as data. For example:: use Symfony\Component\Form\Extension\Core\ChoiceList\ChoiceList; + use Symfony\Component\Form\Extension\Core\Type\ChoiceType; // ... - $builder->add('status', 'choice', array( + $builder->add('status', ChoiceType::class, array( 'choice_list' => new ChoiceList( array(1, 0.5, 0.1), array('Full', 'Half', 'Almost empty') diff --git a/reference/forms/types/collection.rst b/reference/forms/types/collection.rst index 8c322eaea0e..3dfdddfe435 100644 --- a/reference/forms/types/collection.rst +++ b/reference/forms/types/collection.rst @@ -52,9 +52,13 @@ in a form. For example, suppose you have an ``emails`` field that corresponds to an array of email addresses. In the form, you want to expose each email address as its own input text box:: - $builder->add('emails', 'collection', array( + use Symfony\Component\Form\Extension\Core\Type\CollectionType; + use Symfony\Component\Form\Extension\Core\Type\EmailType; + // ... + + $builder->add('emails', CollectionType::class, array( // each entry in the array will be an "email" field - 'entry_type' => 'email', + 'entry_type' => EmailType::class, // these options are passed to each "email" type 'entry_options' => array( 'required' => false, @@ -288,8 +292,12 @@ type as your `entry_type`_ option (e.g. for a collection of drop-down menus), then you'd need to at least pass the ``choices`` option to the underlying type:: - $builder->add('favorite_cities', 'collection', array( - 'entry_type' => 'choice', + use Symfony\Component\Form\Extension\Core\Type\CollectionType; + use Symfony\Component\Form\Extension\Core\Type\ChoiceType; + // ... + + $builder->add('favorite_cities', CollectionType::class, array( + 'entry_type' => ChoiceType::class, 'entry_options' => array( 'choices' => array( 'nashville' => 'Nashville', diff --git a/reference/forms/types/entity.rst b/reference/forms/types/entity.rst index da48a29b788..a0487477029 100644 --- a/reference/forms/types/entity.rst +++ b/reference/forms/types/entity.rst @@ -52,7 +52,10 @@ Basic Usage The ``entity`` type has just one required option: the entity which should be listed inside the choice field:: - $builder->add('users', 'entity', array( + use Symfony\Bridge\Doctrine\Form\Type\EntityType; + // ... + + $builder->add('users', EntityType::class, array( 'class' => 'AcmeHelloBundle:User', 'choice_label' => 'username', )); @@ -71,9 +74,10 @@ If you need to specify a custom query to use when fetching the entities the ``query_builder`` option. The easiest way to use the option is as follows:: use Doctrine\ORM\EntityRepository; + use Symfony\Bridge\Doctrine\Form\Type\EntityType; // ... - $builder->add('users', 'entity', array( + $builder->add('users', EntityType::class, array( 'class' => 'AcmeHelloBundle:User', 'query_builder' => function (EntityRepository $er) { return $er->createQueryBuilder('u') @@ -92,7 +96,10 @@ For example, if you have a ``$group`` variable (passed into your form perhaps as a form option) and ``getUsers`` returns a collection of ``User`` entities, then you can supply the ``choices`` option directly:: - $builder->add('users', 'entity', array( + use Symfony\Bridge\Doctrine\Form\Type\EntityType; + // ... + + $builder->add('users', EntityType::class, array( 'class' => 'AcmeHelloBundle:User', 'choices' => $group->getUsers(), )); @@ -123,7 +130,10 @@ choice_label This is the property that should be used for displaying the entities as text in the HTML element:: - $builder->add('category', 'entity', array( + use Symfony\Bridge\Doctrine\Form\Type\EntityType; + // ... + + $builder->add('category', EntityType::class, array( 'class' => 'AppBundle:Category', 'choice_label' => 'displayName', )); @@ -131,7 +141,10 @@ the HTML element:: If left blank, the entity object will be cast to a string and so must have a ``__toString()`` method. You can also pass a callback function for more control:: - $builder->add('category', 'entity', array( + use Symfony\Bridge\Doctrine\Form\Type\EntityType; + // ... + + $builder->add('category', EntityType::class, array( 'class' => 'AppBundle:Category', 'choice_label' => function ($category) { return $category->getDisplayName(); @@ -150,7 +163,10 @@ more detais, see the main :ref:`choice_label ` docu For example, if the translations property is actually an associative array of objects, each with a name property, then you could do this:: - $builder->add('gender', 'entity', array( + use Symfony\Bridge\Doctrine\Form\Type\EntityType; + // ... + + $builder->add('gender', EntityType::class, array( 'class' => 'MyBundle:Gender', 'choice_label' => 'translations[en].name', )); diff --git a/reference/forms/types/file.rst b/reference/forms/types/file.rst index 0a1e6f534f4..b31b72a3f18 100644 --- a/reference/forms/types/file.rst +++ b/reference/forms/types/file.rst @@ -34,7 +34,10 @@ Basic Usage Say you have this form definition:: - $builder->add('attachment', 'file'); + use Symfony\Component\Form\Extension\Core\Type\FileType; + // ... + + $builder->add('attachment', FileType::class); When the form is submitted, the ``attachment`` field will be an instance of :class:`Symfony\\Component\\HttpFoundation\\File\\UploadedFile`. It can diff --git a/reference/forms/types/money.rst b/reference/forms/types/money.rst index cec92232cea..a9683f02abc 100644 --- a/reference/forms/types/money.rst +++ b/reference/forms/types/money.rst @@ -65,7 +65,10 @@ If, for some reason, you need to divide your starting value by a number before rendering it to the user, you can use the ``divisor`` option. For example:: - $builder->add('price', 'money', array( + use Symfony\Component\Form\Extension\Core\Type\FileType; + // ... + + $builder->add('price', MoneyType::class, array( 'divisor' => 100, )); diff --git a/reference/forms/types/options/button_attr.rst.inc b/reference/forms/types/options/button_attr.rst.inc index 20265677042..93f70017d7e 100644 --- a/reference/forms/types/options/button_attr.rst.inc +++ b/reference/forms/types/options/button_attr.rst.inc @@ -7,6 +7,9 @@ If you want to add extra attributes to the HTML representation of the button, you can use ``attr`` option. It's an associative array with HTML attribute as a key. This can be useful when you need to set a custom class for the button:: - $builder->add('save', 'button', array( + use Symfony\Component\Form\Extension\Core\Type\ButtonType; + // ... + + $builder->add('save', ButtonType::class, array( 'attr' => array('class' => 'save'), )); diff --git a/reference/forms/types/options/by_reference.rst.inc b/reference/forms/types/options/by_reference.rst.inc index 1023e625cd9..6055ff8508b 100644 --- a/reference/forms/types/options/by_reference.rst.inc +++ b/reference/forms/types/options/by_reference.rst.inc @@ -10,9 +10,13 @@ called in all cases. To explain this further, here's a simple example:: + use Symfony\Component\Form\Extension\Core\Type\TextType; + use Symfony\Component\Form\Extension\Core\Type\EmailType; + // ... + $builder = $this->createFormBuilder($article); $builder - ->add('title', 'text') + ->add('title', TextType::class) ->add( $builder->create('author', 'form', array('by_reference' => ?)) ->add('name', TextType::class) diff --git a/reference/forms/types/options/choice_attr.rst.inc b/reference/forms/types/options/choice_attr.rst.inc index 4b4d8f187ac..4b31fc3deb8 100644 --- a/reference/forms/types/options/choice_attr.rst.inc +++ b/reference/forms/types/options/choice_attr.rst.inc @@ -12,7 +12,10 @@ of attributes (if they are the same for each choice), a callable or a property p If an array, the keys of the ``choices`` array must be used as keys:: - $builder->add('attending', 'choice', array( + use Symfony\Component\Form\Extension\Core\Type\ChoiceType; + // ... + + $builder->add('attending', ChoiceType::class, array( 'choices' => array( 'Yes' => true, 'No' => false, diff --git a/reference/forms/types/options/choice_label.rst.inc b/reference/forms/types/options/choice_label.rst.inc index d2ebb176906..a27f1ece7f6 100644 --- a/reference/forms/types/options/choice_label.rst.inc +++ b/reference/forms/types/options/choice_label.rst.inc @@ -10,7 +10,10 @@ Normally, the array key of each item in the ``choices`` option is used as the text that's shown to the user. The ``choice_label`` option allows you to take more control:: - $builder->add('attending', 'choice', array( + use Symfony\Component\Form\Extension\Core\Type\ChoiceType; + // ... + + $builder->add('attending', ChoiceType::class, array( 'choices' => array( 'yes' => true, 'no' => false, @@ -39,7 +42,10 @@ If your choice values are objects, then ``choice_label`` can also be a :ref:`property path `. Imagine you have some ``Status`` class with a ``getDisplayName()`` method:: - $builder->add('attending', 'choice', array( + use Symfony\Component\Form\Extension\Core\Type\ChoiceType; + // ... + + $builder->add('attending', ChoiceType::class, array( 'choices' => array( new Status(Status::YES), new Status(Status::NO), diff --git a/reference/forms/types/options/data.rst.inc b/reference/forms/types/options/data.rst.inc index c9bf76424c5..63ca91cbf5c 100644 --- a/reference/forms/types/options/data.rst.inc +++ b/reference/forms/types/options/data.rst.inc @@ -8,7 +8,10 @@ corresponding property of the form's domain object (if an object is bound to the form). If you want to override the initial value for the form or just an individual field, you can set it in the data option:: - $builder->add('token', 'hidden', array( + use Symfony\Component\Form\Extension\Core\Type\HiddenType; + // ... + + $builder->add('token', HiddenType::class, array( 'data' => 'abcdef', )); diff --git a/reference/forms/types/options/data_class.rst.inc b/reference/forms/types/options/data_class.rst.inc index 991e68635ea..0d81c0659e4 100644 --- a/reference/forms/types/options/data_class.rst.inc +++ b/reference/forms/types/options/data_class.rst.inc @@ -8,6 +8,9 @@ form, so you can use it for any form field type which requires an object. .. code-block:: php - $builder->add('media', 'sonata_media_type', array( + use AppBundle\Form\MediaType; + // ... + + $builder->add('media', MediaType::class, array( 'data_class' => 'Acme\DemoBundle\Entity\Media', )); diff --git a/reference/forms/types/options/date_format.rst.inc b/reference/forms/types/options/date_format.rst.inc index 62152ac48ac..283a6c13d87 100644 --- a/reference/forms/types/options/date_format.rst.inc +++ b/reference/forms/types/options/date_format.rst.inc @@ -13,7 +13,10 @@ override it by passing the format as a string. For more information on valid formats, see `Date/Time Format Syntax`_:: - $builder->add('date_created', 'date', array( + use Symfony\Component\Form\Extension\Core\Type\DateType; + // ... + + $builder->add('date_created', DateType::class, array( 'widget' => 'single_text', // this is actually the default format for single_text 'format' => 'yyyy-MM-dd', diff --git a/reference/forms/types/options/empty_data.rst.inc b/reference/forms/types/options/empty_data.rst.inc index e1baeb1e7ce..02eb8d12d4c 100644 --- a/reference/forms/types/options/empty_data.rst.inc +++ b/reference/forms/types/options/empty_data.rst.inc @@ -16,7 +16,10 @@ But you can customize this to your needs. For example, if you want the ``gender`` choice field to be explicitly set to ``null`` when no value is selected, you can do it like this:: - $builder->add('gender', 'choice', array( + use Symfony\Component\Form\Extension\Core\Type\ChoiceType; + // ... + + $builder->add('gender', ChoiceType::class, array( 'choices' => array( 'm' => 'Male', 'f' => 'Female' diff --git a/reference/forms/types/options/group_by.rst.inc b/reference/forms/types/options/group_by.rst.inc index 9147a0a09bf..4492c3e5dd9 100644 --- a/reference/forms/types/options/group_by.rst.inc +++ b/reference/forms/types/options/group_by.rst.inc @@ -15,7 +15,10 @@ a bit more flexibility. Take the following example:: - $builder->add('publishAt', 'choice', array( + use Symfony\Component\Form\Extension\Core\Type\ChoiceType; + // ... + + $builder->add('publishAt', ChoiceType::class, array( 'choices' => array( 'now' => new \DateTime('now'), 'tomorrow' => new \DateTime('+1 day'), diff --git a/reference/forms/types/options/invalid_message_parameters.rst.inc b/reference/forms/types/options/invalid_message_parameters.rst.inc index 72a327351a4..b877f04bb72 100644 --- a/reference/forms/types/options/invalid_message_parameters.rst.inc +++ b/reference/forms/types/options/invalid_message_parameters.rst.inc @@ -7,7 +7,7 @@ When setting the ``invalid_message`` option, you may need to include some variables in the string. This can be done by adding placeholders to that option and including the variables in this option:: - $builder->add('some_field', 'some_type', array( + $builder->add('some_field', SomeFormType::class, array( // ... 'invalid_message' => 'You entered an invalid value, it should include %num% letters', 'invalid_message_parameters' => array('%num%' => 6), diff --git a/reference/forms/types/options/placeholder.rst.inc b/reference/forms/types/options/placeholder.rst.inc index afb649bdd58..12d20b00f3a 100644 --- a/reference/forms/types/options/placeholder.rst.inc +++ b/reference/forms/types/options/placeholder.rst.inc @@ -17,13 +17,19 @@ applies if the ``multiple`` option is set to false. * Add an empty value with "Choose an option" as the text:: - $builder->add('states', 'choice', array( + use Symfony\Component\Form\Extension\Core\Type\ChoiceType; + // ... + + $builder->add('states', ChoiceType::class, array( 'placeholder' => 'Choose an option', )); * Guarantee that no "empty" value option is displayed:: - $builder->add('states', 'choice', array( + use Symfony\Component\Form\Extension\Core\Type\ChoiceType; + // ... + + $builder->add('states', ChoiceType::class, array( 'placeholder' => false, )); @@ -31,7 +37,10 @@ If you leave the ``placeholder`` option unset, then a blank (with no text) option will automatically be added if and only if the ``required`` option is false:: + use Symfony\Component\Form\Extension\Core\Type\ChoiceType; + // ... + // a blank (with no text) option will be added - $builder->add('states', 'choice', array( + $builder->add('states', ChoiceType::class, array( 'required' => false, )); diff --git a/reference/forms/types/options/preferred_choices.rst.inc b/reference/forms/types/options/preferred_choices.rst.inc index e9b0f54ea8f..feee7351ead 100644 --- a/reference/forms/types/options/preferred_choices.rst.inc +++ b/reference/forms/types/options/preferred_choices.rst.inc @@ -7,7 +7,10 @@ This option allows you to move certain choices to the top of your list with a vi separator between them and the rest of the options. If you have a form of languages, you can list the most popular on top, like Bork Bork and Pirate:: - $builder->add('language', 'choice', array( + use Symfony\Component\Form\Extension\Core\Type\ChoiceType; + // ... + + $builder->add('language', ChoiceType::class, array( 'choices' => array( 'English' => 'en', 'Spanish' => 'es', @@ -24,7 +27,10 @@ you can list the most popular on top, like Bork Bork and Pirate:: This options can also be a callback function to give you more flexibility. This might be especially useful if your values are objects:: - $builder->add('publishAt', 'choice', array( + use Symfony\Component\Form\Extension\Core\Type\ChoiceType; + // ... + + $builder->add('publishAt', ChoiceType::class, array( 'choices' => array( 'now' => new \DateTime('now'), 'tomorrow' => new \DateTime('+1 day'), diff --git a/reference/forms/types/range.rst b/reference/forms/types/range.rst index 31795c809d1..0a1e8bb855a 100644 --- a/reference/forms/types/range.rst +++ b/reference/forms/types/range.rst @@ -32,7 +32,10 @@ Basic Usage .. code-block:: php - $builder->add('name', 'range', array( + use Symfony\Component\Form\Extension\Core\Type\RangeType; + // ... + + $builder->add('name', RangeType::class, array( 'attr' => array( 'min' => 5, 'max' => 50 diff --git a/reference/forms/types/repeated.rst b/reference/forms/types/repeated.rst index fd38fe4d191..b091cb33fb2 100644 --- a/reference/forms/types/repeated.rst +++ b/reference/forms/types/repeated.rst @@ -38,7 +38,10 @@ Example Usage .. code-block:: php - $builder->add('password', 'repeated', array( + use Symfony\Component\Form\Extension\Core\Type\RepeatedType; + // ... + + $builder->add('password', RepeatedType::class, array( 'type' => 'password', 'invalid_message' => 'The password fields must match.', 'options' => array('attr' => array('class' => 'password-field')), @@ -130,7 +133,10 @@ Additional options (will be merged into `options`_ below) that should be passed *only* to the first field. This is especially useful for customizing the label:: - $builder->add('password', 'repeated', array( + use Symfony\Component\Form\Extension\Core\Type\RepeatedType; + // ... + + $builder->add('password', RepeatedType::class, array( 'first_options' => array('label' => 'Password'), 'second_options' => array('label' => 'Repeat Password'), )); diff --git a/reference/forms/types/submit.rst b/reference/forms/types/submit.rst index 9d8c015a8d8..e8722f8dd0b 100644 --- a/reference/forms/types/submit.rst +++ b/reference/forms/types/submit.rst @@ -56,11 +56,14 @@ When your form contains multiple submit buttons, you can change the validation group based on the button which was used to submit the form. Imagine a registration form wizard with buttons to go to the previous or the next step:: + use Symfony\Component\Form\Extension\Core\Type\SubmitType; + // ... + $form = $this->createFormBuilder($user) - ->add('previousStep', 'submit', array( + ->add('previousStep', SubmitType::class, array( 'validation_groups' => false, )) - ->add('nextStep', 'submit', array( + ->add('nextStep', SubmitType::class, array( 'validation_groups' => array('Registration'), )) ->getForm(); diff --git a/reference/forms/types/time.rst b/reference/forms/types/time.rst index bfbaa7e3428..e3a4b405a5e 100644 --- a/reference/forms/types/time.rst +++ b/reference/forms/types/time.rst @@ -56,7 +56,10 @@ Suppose that you have a ``startTime`` field whose underlying time data is a ``DateTime`` object. The following configures the ``time`` type for that field as two different choice fields:: - $builder->add('startTime', 'time', array( + use Symfony\Component\Form\Extension\Core\Type\TimeType; + // ... + + $builder->add('startTime', TimeType::class, array( 'input' => 'datetime', 'widget' => 'choice', )); @@ -65,7 +68,10 @@ The ``input`` option *must* be changed to match the type of the underlying date data. For example, if the ``startTime`` field's data were a unix timestamp, you'd need to set ``input`` to ``timestamp``:: - $builder->add('startTime', 'time', array( + use Symfony\Component\Form\Extension\Core\Type\ChoiceType; + // ... + + $builder->add('startTime', TimeType::class, array( 'input' => 'timestamp', 'widget' => 'choice', )); From 832a12a316029ce02d2910625c100e7a8fc90fde Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Fri, 27 Nov 2015 17:34:32 -0500 Subject: [PATCH 069/235] fixing build error --- cookbook/form/form_collections.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/form/form_collections.rst b/cookbook/form/form_collections.rst index 903ef4d3a37..8779406f239 100644 --- a/cookbook/form/form_collections.rst +++ b/cookbook/form/form_collections.rst @@ -135,7 +135,7 @@ Notice that you embed a collection of ``TagType`` forms using the } } -In your controller, you'll create a new form from the ``TaskType``: +In your controller, you'll create a new form from the ``TaskType``:: // src/AppBundle/Controller/TaskController.php namespace AppBundle\Controller; From 20cead68da3dff710815da31a5301130c5bba28f Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Fri, 27 Nov 2015 16:01:53 -0500 Subject: [PATCH 070/235] Reworking the voter article for the new Voter class --- cookbook/security/voters.rst | 262 +++++++++++++++++++---------------- 1 file changed, 143 insertions(+), 119 deletions(-) diff --git a/cookbook/security/voters.rst b/cookbook/security/voters.rst index 9b7be023bd8..95ba265375d 100644 --- a/cookbook/security/voters.rst +++ b/cookbook/security/voters.rst @@ -35,120 +35,179 @@ The Voter Interface A custom voter needs to implement :class:`Symfony\\Component\\Security\\Core\\Authorization\\Voter\\VoterInterface` -or extend :class:`Symfony\\Component\\Security\\Core\\Authorization\\Voter\\AbstractVoter`, +or extend :class:`Symfony\\Component\\Security\\Core\\Authorization\\Voter\\Voter`, which makes creating a voter even easier. .. code-block:: php - abstract class AbstractVoter implements VoterInterface + abstract class Voter implements VoterInterface { - abstract protected function getSupportedClasses(); - abstract protected function getSupportedAttributes(); - abstract protected function isGranted($attribute, $object, $user = null); + abstract protected function supports($attribute, $subject); + abstract protected function voteOnAttribute($attribute, $subject, TokenInterface $token); } -In this example, the voter will check if the user has access to a specific -object according to your custom conditions (e.g. they must be the owner of -the object). If the condition fails, you'll return -``VoterInterface::ACCESS_DENIED``, otherwise you'll return -``VoterInterface::ACCESS_GRANTED``. In case the responsibility for this decision -does not belong to this voter, it will return ``VoterInterface::ACCESS_ABSTAIN``. +.. versionadded:: + The ``Voter`` helper class was added in Symfony 2.8. In early versions, an + ``AbstractVoter`` class with similar behavior was available. + +.. _how-to-use-the-voter-in-a-controller: + +Setup: Checking for Access in a Controller +------------------------------------------ + +Suppose you have a ``Post`` object and you need to decide whether or not the current +user can *edit* or *view* the object. In your controller, you'll check access with +code like this:: + + // src/AppBundle/Controller/PostController.php + // ... + + class PostController extends Controller + { + /** + * @Route("/posts/{id}", name="post_show") + */ + public function showAction($id) + { + // get a Post object - e.g. query for it + $post = ...; + + // check for "view" access: calls all voters + $this->denyAccessUnlessGranted('view', $post); + + // ... + } + + /** + * @Route("/posts/{id}/edit", name="post_edit") + */ + public function editAction($id) + { + // get a Post object - e.g. query for it + $post = ...; + + // check for "edit" access: calls all voters + $this->denyAccessUnlessGranted('edit', $post); + + // ... + } + } + +The ``denyAccessUnlessGranted()`` method (and also, the simpler ``isGranted()`` method) +calls out to the "voter" system. Right now, no voters will vote on whether or not +the user can "view" or "edit" a ``Post``. But you can create your *own* voter that +decides this using whatever logic you want. + +.. tip:: + + The ``denyAccessUnlessGranted()`` function and the ``isGranted()`` functions + are both just shortcuts to call ``isGranted()`` on the ``security.authorization_checker`` + service. Creating the custom Voter ------------------------- -The goal is to create a voter that checks if a user has access to view or -edit a particular object. Here's an example implementation: +Suppose the logic to decide if a user can "view" or "edit" a ``Post`` object is +pretty complex. For example, a ``User`` can always edit or view a ``Post`` they created. +And if a ``Post`` is marked as "public", anyone can view it. A voter for this situation +would look like this:: -.. code-block:: php - - // src/AppBundle/Security/Authorization/Voter/PostVoter.php - namespace AppBundle\Security\Authorization\Voter; + // src/AppBundle/Security/PostVoter.php + namespace AppBundle\Security; - use Symfony\Component\Security\Core\Authorization\Voter\AbstractVoter; + use AppBundle\Entity\Post; use AppBundle\Entity\User; - use Symfony\Component\Security\Core\User\UserInterface; + use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; + use Symfony\Component\Security\Core\Authorization\Voter\Voter; - class PostVoter extends AbstractVoter + class PostVoter extends Voter { + // these strings are just invented: you can use anything const VIEW = 'view'; const EDIT = 'edit'; - protected function getSupportedAttributes() + protected function supports($attribute, $subject) { - return array(self::VIEW, self::EDIT); - } + // if the attribute isn't one we support, return false + if (!in_array($attribute, array(self::VIEW, self::EDIT))) { + return false; + } - protected function getSupportedClasses() - { - return array('AppBundle\Entity\Post'); + // only vote on Post objects inside this voter + if (!$subject instanceof Post) { + return false; + } + + return true; } - protected function isGranted($attribute, $post, $user = null) + protected function voteOnAttribute($attribute, $subject, TokenInterface $token) { - // make sure there is a user object (i.e. that the user is logged in) - if (!$user instanceof UserInterface) { - return false; - } + $user = $token->getUser(); - // double-check that the User object is the expected entity (this - // only happens when you did not configure the security system properly) if (!$user instanceof User) { - throw new \LogicException('The user is somehow not our User class!'); + // the user must not be logged in, so we deny access + return false; } + // we know $subject is a Post object, thanks to supports + /** @var Post $post */ + $post = $subject; + switch($attribute) { case self::VIEW: - // the data object could have for example a method isPrivate() - // which checks the Boolean attribute $private - if (!$post->isPrivate()) { - return true; - } - - break; + return $this->canView($post, $user); case self::EDIT: - // this assumes that the data object has a getOwner() method - // to get the entity of the user who owns this data object - if ($user->getId() === $post->getOwner()->getId()) { - return true; - } - - break; + return $this->canEdit($post, $user); } - return false; + throw new \LogicException('This code should not be reached!'); } - } -That's it! The voter is done. The next step is to inject the voter into -the security layer. + private function canView(Post $post, User $user) + { + // if they can edit, they can view + if ($this->canEdit($post, $user)) { + return true; + } + + // the Post object could have, for example, a method isPrivate() + // that checks a Boolean $private property + return !$post->isPrivate(); + } -To recap, here's what's expected from the three abstract methods: + private function canEdit(Post $post, User $user) + { + // this assumes that the data object has a getOwner() method + // to get the entity of the user who owns this data object + return $user === $post->getOwner(); + } + } -:method:`Symfony\\Component\\Security\\Core\\Authorization\\Voter\\AbstractVoter::getSupportedClasses` - It tells Symfony that your voter should be called whenever an object of one - of the given classes is passed to ``isGranted()``. For example, if you return - ``array('AppBundle\Model\Product')``, Symfony will call your voter when a - ``Product`` object is passed to ``isGranted()``. +That's it! The voter is done! Next, :ref:`configure it `. -:method:`Symfony\\Component\\Security\\Core\\Authorization\\Voter\\AbstractVoter::getSupportedAttributes` - It tells Symfony that your voter should be called whenever one of these - strings is passed as the first argument to ``isGranted()``. For example, if - you return ``array('CREATE', 'READ')``, then Symfony will call your voter - when one of these is passed to ``isGranted()``. +To recap, here's what's expected from the two abstract methods: -:method:`Symfony\\Component\\Security\\Core\\Authorization\\Voter\\AbstractVoter::isGranted` - It implements the business logic that verifies whether or not a given user is - allowed access to a given attribute (e.g. ``CREATE`` or ``READ``) on a given - object. This method must return a boolean. +``Voter::supports($attribute, $subject)`` + When ``isGranted()`` (or ``denyAccessUnlessGranted()``) is called, the first + argument is passed here as ``$attribute`` (e.g. ``ROLE_USER``, ``edit``) and + the second argument (if any) is passed as ```$subject`` (e.g. ``null``, a ``Post`` + object). Your job is to determine if your voter should vote on the attribute/subject + combination. If you return true, ``voteOnAttribute()`` will be called. Otherwise, + your voter is done: some other voter should process this. In this example, you + return ``true`` if the attribue is ``view`` or ``edit`` and if the object is + a ``Post`` instance. -.. note:: +``voteOnAttribute($attribute, $subject, TokenInterface $token)`` + If you return ``true`` from ``supports()``, then this method is called. Your + job is simple: return ``true`` to allow access and ``false`` to deny access. + The ``$token`` can be used to find the current user object (if any). In this + example, all of the complex business logic is included to determine access. - Currently, to use the ``AbstractVoter`` base class, you must be creating a - voter where an object is always passed to ``isGranted()``. +.. _declaring-the-voter-as-a-service: -Declaring the Voter as a Service --------------------------------- +Configuring the Voter +--------------------- To inject the voter into the security layer, you must declare it as a service and tag it with ``security.voter``: @@ -159,9 +218,8 @@ and tag it with ``security.voter``: # app/config/services.yml services: - security.access.post_voter: - class: AppBundle\Security\Authorization\Voter\PostVoter - public: false + app.post_voter: + class: AppBundle\Security\PostVoter tags: - { name: security.voter } @@ -175,7 +233,7 @@ and tag it with ``security.voter``: http://symfony.com/schema/dic/services/services-1.0.xsd"> - @@ -190,61 +248,27 @@ and tag it with ``security.voter``: // app/config/services.php use Symfony\Component\DependencyInjection\Definition; - $definition = new Definition('AppBundle\Security\Authorization\Voter\PostVoter'); - $definition + $container->register('app.post_voter', 'AppBundle\Security\Authorization\Voter\PostVoter') ->setPublic(false) ->addTag('security.voter') ; - $container->setDefinition('security.access.post_voter', $definition); - -How to Use the Voter in a Controller ------------------------------------- - -The registered voter will then always be asked as soon as the method ``isGranted()`` -from the authorization checker is called. When extending the base ``Controller`` -class, you can simply call the -:method:`Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller::denyAccessUnlessGranted()` -method:: - - // src/AppBundle/Controller/PostController.php - namespace AppBundle\Controller; - - use Symfony\Bundle\FrameworkBundle\Controller\Controller; - use Symfony\Component\HttpFoundation\Response; - - class PostController extends Controller - { - public function showAction($id) - { - // get a Post instance - $post = ...; - - // keep in mind that this will call all registered security voters - $this->denyAccessUnlessGranted('view', $post, 'Unauthorized access!'); - - return new Response('

'.$post->getName().'

'); - } - } - -.. versionadded:: 2.6 - The ``denyAccessUnlessGranted()`` method was introduced in Symfony 2.6. - Prior to Symfony 2.6, you had to call the ``isGranted()`` method of the - ``security.context`` service and throw the exception yourself. - -It's that easy! +You're done! Now, when you :ref:`call isGranted() with view/edit and a Post object `, +your voter will be executed and you can control access. .. _security-voters-change-strategy: Changing the Access Decision Strategy ------------------------------------- -Imagine you have multiple voters for one action for an object. For instance, -you have one voter that checks if the user is a member of the site and a second -one checking if the user is older than 18. +Normally, only one voter will vote at any given time (the rest will "abstain", which +means they return ``false`` from ``supports()``). But in theory, you could make multiple +voters vote for one action and object. For instance, suppose you have one voter that +checks if the user is a member of the site and a second one that checks if the user +is older than 18. To handle these cases, the access decision manager uses an access decision -strategy. You can configure this to suite your needs. There are three +strategy. You can configure this to suit your needs. There are three strategies available: ``affirmative`` (default) From a4c7d6e4ca12b96aa05d309d50929c48fd7b4b1b Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Fri, 27 Nov 2015 17:48:26 -0500 Subject: [PATCH 071/235] adding a section about calling isGranted() from within a voter --- cookbook/security/voters.rst | 101 +++++++++++++++++++++++++++++++++++ 1 file changed, 101 insertions(+) diff --git a/cookbook/security/voters.rst b/cookbook/security/voters.rst index 95ba265375d..59ba7d5bd04 100644 --- a/cookbook/security/voters.rst +++ b/cookbook/security/voters.rst @@ -256,6 +256,107 @@ and tag it with ``security.voter``: You're done! Now, when you :ref:`call isGranted() with view/edit and a Post object `, your voter will be executed and you can control access. +Checking for Roles inside a Voter +--------------------------------- + +.. versionadded:: 2.8 + The ability to inject the ``AccessDecisionManager`` is new in 2.8: it caused + a CircularReferenceException before. In earlier versions, you must inject the + ``service_container`` itself and fetch out the ``security.authorization_checker`` + to use ``isGranted()``. + +What if you want to call ``isGranted()`` fomr *inside* your voter - e.g. you want +to see if the current user has ``ROLE_SUPER_ADMIN``. That's possible by injecting +the ``AccessDecisionManager`` into your voter. You can use this to, for example, +*always* allow access to a user with ``ROLE_SUPER_ADMIN``:: + + // src/AppBundle/Security/PostVoter.php + // ... + + use Symfony\Component\Security\Core\Authorization\AccessDecisionManagerInterface; + + class PostVoter extends Voter + { + // ... + + private $decisionManager; + + public function __construct(AccessDecisionManagerInterface $decisionManager) + { + $this->decisionManager = $decisionManager; + } + + protected function voteOnAttribute($attribute, $subject, TokenInterface $token) + { + // ... + + // ROLE_SUPER_ADMIN can do anything! The power! + if ($this->decisionManager->decide($token, array('ROLE_SUPER_ADMIN'))) { + return true; + } + + // ... all the normal voter logic + } + } + +Next, update ``services.yml`` to inject the ``security.access.decision_manager`` +service: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/services.yml + services: + app.post_voter: + class: AppBundle\Security\PostVoter + arguments: ['@security.access.decision_manager'] + tags: + - { name: security.voter } + + .. code-block:: xml + + + + + + + + + + + + + + + .. code-block:: php + + // app/config/services.php + use Symfony\Component\DependencyInjection\Definition; + use Symfony\Component\DependencyInjection\Reference; + + $container->register('app.post_voter', 'AppBundle\Security\Authorization\Voter\PostVoter') + ->addArgument(new Reference('security.access.decision_manager')) + ->setPublic(false) + ->addTag('security.voter') + ; + +That's it! Calling ``decide()`` on the ``AccessDecisionManager`` is essentially +the same as calling ``isGranted()`` on the normal ``security.authorization_checker`` +service (it's just a little lower-level, which is necessary for a voter). + +.. note:: + + The ``security.access.decision_manager`` is private. This means you can't access + it directly from a controller: you can only inject it into other services. That's + ok: use ``security.authorization_checker`` instead in all cases except for voters. + .. _security-voters-change-strategy: Changing the Access Decision Strategy From 5d0e6b279b837881b12a5e138b66d170db6d9d43 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Fri, 27 Nov 2015 17:51:07 -0500 Subject: [PATCH 072/235] tweaks thanks to Javier --- cookbook/security/voters.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cookbook/security/voters.rst b/cookbook/security/voters.rst index 59ba7d5bd04..1d43feddf7a 100644 --- a/cookbook/security/voters.rst +++ b/cookbook/security/voters.rst @@ -47,7 +47,7 @@ which makes creating a voter even easier. } .. versionadded:: - The ``Voter`` helper class was added in Symfony 2.8. In early versions, an + The ``Voter`` helper class was added in Symfony 2.8. In earlier versions, an ``AbstractVoter`` class with similar behavior was available. .. _how-to-use-the-voter-in-a-controller: @@ -146,7 +146,7 @@ would look like this:: $user = $token->getUser(); if (!$user instanceof User) { - // the user must not be logged in, so we deny access + // the user must be logged in; if not, deny access return false; } From 8794a4d04327f56a39107a40d5b3ee67b0748bc1 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 10:33:16 +0100 Subject: [PATCH 073/235] app/console -> bin/console --- book/bundles.rst | 2 +- book/configuration.rst | 6 +++--- book/controller.rst | 2 +- book/doctrine.rst | 24 ++++++++++++------------ book/installation.rst | 10 +++++----- book/page_creation.rst | 4 ++-- book/routing.rst | 6 +++--- book/security.rst | 2 +- book/service_container.rst | 6 +++--- book/templating.rst | 8 ++++---- book/translation.rst | 10 +++++----- 11 files changed, 40 insertions(+), 40 deletions(-) diff --git a/book/bundles.rst b/book/bundles.rst index ff09cc6fc3e..0fdfcfc088f 100644 --- a/book/bundles.rst +++ b/book/bundles.rst @@ -122,7 +122,7 @@ generating a basic bundle skeleton: .. code-block:: bash - $ php app/console generate:bundle --namespace=Acme/TestBundle + $ php bin/console generate:bundle --namespace=Acme/TestBundle The bundle skeleton generates a basic controller, template and routing resource that can be customized. You'll learn more about Symfony's command-line diff --git a/book/configuration.rst b/book/configuration.rst index da32a0e1afe..e307d464e26 100644 --- a/book/configuration.rst +++ b/book/configuration.rst @@ -122,13 +122,13 @@ FrameworkBundle configuration: .. code-block:: bash - $ app/console config:dump-reference FrameworkBundle + $ bin/console config:dump-reference FrameworkBundle The extension alias (configuration key) can also be used: .. code-block:: bash - $ app/console config:dump-reference framework + $ bin/console config:dump-reference framework .. note:: @@ -177,7 +177,7 @@ cached files and allow them to rebuild: .. code-block:: bash - $ php app/console cache:clear --env=prod --no-debug + $ php bin/console cache:clear --env=prod --no-debug .. note:: diff --git a/book/controller.rst b/book/controller.rst index cc7774d85b2..449e98b69e8 100644 --- a/book/controller.rst +++ b/book/controller.rst @@ -532,7 +532,7 @@ console command: .. code-block:: bash - $ php app/console debug:container + $ php bin/console debug:container .. versionadded:: 2.6 Prior to Symfony 2.6, this command was called ``container:debug``. diff --git a/book/doctrine.rst b/book/doctrine.rst index 87e894c1f45..e91ce4ec729 100644 --- a/book/doctrine.rst +++ b/book/doctrine.rst @@ -116,7 +116,7 @@ for you: .. code-block:: bash - $ php app/console doctrine:database:create + $ php bin/console doctrine:database:create .. sidebar:: Setting up the Database to be UTF8 @@ -128,8 +128,8 @@ for you: .. code-block:: bash - $ php app/console doctrine:database:drop --force - $ php app/console doctrine:database:create + $ php bin/console doctrine:database:drop --force + $ php bin/console doctrine:database:create There's no way to configure these defaults inside Doctrine, as it tries to be as agnostic as possible in terms of environment configuration. One way to solve @@ -227,7 +227,7 @@ just a simple PHP class. .. code-block:: bash - $ php app/console doctrine:generate:entity + $ php bin/console doctrine:generate:entity .. index:: single: Doctrine; Adding mapping metadata @@ -392,7 +392,7 @@ a regular PHP class, you need to create getter and setter methods (e.g. ``getNam .. code-block:: bash - $ php app/console doctrine:generate:entities AppBundle/Entity/Product + $ php bin/console doctrine:generate:entities AppBundle/Entity/Product This command makes sure that all the getters and setters are generated for the ``Product`` class. This is a safe command - you can run it over and @@ -434,10 +434,10 @@ mapping information) of a bundle or an entire namespace: .. code-block:: bash # generates all entities in the AppBundle - $ php app/console doctrine:generate:entities AppBundle + $ php bin/console doctrine:generate:entities AppBundle # generates all entities of bundles in the Acme namespace - $ php app/console doctrine:generate:entities Acme + $ php bin/console doctrine:generate:entities Acme .. note:: @@ -459,7 +459,7 @@ in your application. To do this, run: .. code-block:: bash - $ php app/console doctrine:schema:update --force + $ php bin/console doctrine:schema:update --force .. tip:: @@ -852,7 +852,7 @@ used earlier to generate the missing getter and setter methods: .. code-block:: bash - $ php app/console doctrine:generate:entities AppBundle + $ php bin/console doctrine:generate:entities AppBundle Next, add a new method - ``findAllOrderedByName()`` - to the newly generated repository class. This method will query for all the ``Product`` entities, @@ -906,7 +906,7 @@ you can let Doctrine create the class for you. .. code-block:: bash - $ php app/console doctrine:generate:entity --no-interaction \ + $ php bin/console doctrine:generate:entity --no-interaction \ --entity="AppBundle:Category" \ --fields="name:string(255)" @@ -1063,7 +1063,7 @@ methods for you: .. code-block:: bash - $ php app/console doctrine:generate:entities AppBundle + $ php bin/console doctrine:generate:entities AppBundle Ignore the Doctrine metadata for a moment. You now have two classes - ``Category`` and ``Product`` with a natural one-to-many relationship. The ``Category`` @@ -1092,7 +1092,7 @@ table, and ``product.category_id`` column, and new foreign key: .. code-block:: bash - $ php app/console doctrine:schema:update --force + $ php bin/console doctrine:schema:update --force .. note:: diff --git a/book/installation.rst b/book/installation.rst index 407cfc36704..898aeb24e1a 100644 --- a/book/installation.rst +++ b/book/installation.rst @@ -164,7 +164,7 @@ browsing the project directory and executing this command: .. code-block:: bash $ cd my_project_name/ - $ php app/console server:run + $ php bin/console server:run Then, open your browser and access the ``http://localhost:8000/`` URL to see the Welcome Page of Symfony: @@ -195,7 +195,7 @@ server with the ``server:stop`` command: .. code-block:: bash - $ php app/console server:stop + $ php bin/console server:stop Checking Symfony Application Configuration and Setup ---------------------------------------------------- @@ -265,7 +265,7 @@ If there are any issues, correct them now before moving on. If none of the previous methods work for you, change the umask so that the cache and log directories will be group-writable or world-writable (depending if the web server user and the command line user are in the same group or not). - To achieve this, put the following line at the beginning of the ``app/console``, + To achieve this, put the following line at the beginning of the ``bin/console``, ``web/app.php`` and ``web/app_dev.php`` files:: umask(0002); // This will let the permissions be 0775 @@ -306,7 +306,7 @@ several minutes to complete. .. code-block:: bash - $ php app/console security:check + $ php bin/console security:check A good security practice is to execute this command regularly to be able to update or replace compromised dependencies as soon as possible. @@ -331,7 +331,7 @@ of the Symfony Installer anywhere in your system: c:\projects\> php symfony demo Once downloaded, enter into the ``symfony_demo/`` directory and run the PHP's -built-in web server executing the ``php app/console server:run`` command. Access +built-in web server executing the ``php bin/console server:run`` command. Access to the ``http://localhost:8000`` URL in your browser to start using the Symfony Demo application. diff --git a/book/page_creation.rst b/book/page_creation.rst index c062182d5f8..e450fbd61e9 100644 --- a/book/page_creation.rst +++ b/book/page_creation.rst @@ -544,11 +544,11 @@ by changing one option in this configuration file. To find out how, see the :doc:`Configuration Reference ` section. Or, to get a big example dump of all of the valid configuration under a key, -use the handy ``app/console`` command: +use the handy ``bin/console`` command: .. code-block:: bash - $ app/console config:dump-reference framework + $ bin/console config:dump-reference framework There's a lot more power behind Symfony's configuration system, including environments, imports and parameters. To learn all of it, see the diff --git a/book/routing.rst b/book/routing.rst index ed0b4bf809c..e9cc99fc127 100644 --- a/book/routing.rst +++ b/book/routing.rst @@ -1393,7 +1393,7 @@ the command by running the following from the root of your project. .. code-block:: bash - $ php app/console debug:router + $ php bin/console debug:router .. versionadded:: 2.6 Prior to Symfony 2.6, this command was called ``router:debug``. @@ -1415,14 +1415,14 @@ the route name after the command: .. code-block:: bash - $ php app/console debug:router article_show + $ php bin/console debug:router article_show Likewise, if you want to test whether a URL matches a given route, you can use the ``router:match`` console command: .. code-block:: bash - $ php app/console router:match /blog/my-latest-post + $ php bin/console router:match /blog/my-latest-post This command will print which route the URL matches. diff --git a/book/security.rst b/book/security.rst index 094bb487bfe..5f410cac2ac 100644 --- a/book/security.rst +++ b/book/security.rst @@ -1363,7 +1363,7 @@ security vulnerability in your installed dependencies: .. code-block:: bash - $ php app/console security:check + $ php bin/console security:check A good security practice is to execute this command regularly to be able to update or replace compromised dependencies as soon as possible. Internally, diff --git a/book/service_container.rst b/book/service_container.rst index 2cb08ae4078..07845abad72 100644 --- a/book/service_container.rst +++ b/book/service_container.rst @@ -1147,7 +1147,7 @@ console. To show all services and the class for each service, run: .. code-block:: bash - $ php app/console debug:container + $ php bin/console debug:container .. versionadded:: 2.6 Prior to Symfony 2.6, this command was called ``container:debug``. @@ -1156,7 +1156,7 @@ By default, only public services are shown, but you can also view private servic .. code-block:: bash - $ php app/console debug:container --show-private + $ php bin/console debug:container --show-private .. note:: @@ -1170,7 +1170,7 @@ its id: .. code-block:: bash - $ php app/console debug:container my_mailer + $ php bin/console debug:container my_mailer Learn more ---------- diff --git a/book/templating.rst b/book/templating.rst index 4c1de72f752..26bfde3daee 100644 --- a/book/templating.rst +++ b/book/templating.rst @@ -1211,7 +1211,7 @@ should use the ``parent()`` Twig function to include everything from the ``style block of the base template. You can also include assets located in your bundles' ``Resources/public`` folder. -You will need to run the ``php app/console assets:install target [--symlink]`` +You will need to run the ``php bin/console assets:install target [--symlink]`` command, which moves (or symlinks) files into the correct location. (target is by default "web"). @@ -1391,7 +1391,7 @@ to create it). You're now free to customize the template. .. caution:: If you add a template in a new location, you *may* need to clear your - cache (``php app/console cache:clear``), even if you are in debug mode. + cache (``php bin/console cache:clear``), even if you are in debug mode. This logic also applies to base bundle templates. Suppose also that each template in AcmeBlogBundle inherits from a base template called @@ -1641,10 +1641,10 @@ console command: .. code-block:: bash # You can check by filename: - $ php app/console lint:twig app/Resources/views/article/recent_list.html.twig + $ php bin/console lint:twig app/Resources/views/article/recent_list.html.twig # or by directory: - $ php app/console lint:twig app/Resources/views + $ php bin/console lint:twig app/Resources/views .. _template-formats: diff --git a/book/translation.rst b/book/translation.rst index 7cd2fe0e8a9..3e02f2e65bf 100644 --- a/book/translation.rst +++ b/book/translation.rst @@ -387,7 +387,7 @@ For more options, see :ref:`component-translator-message-catalogs`. .. code-block:: bash - $ php app/console cache:clear + $ php bin/console cache:clear .. _book-translation-fallback: @@ -815,7 +815,7 @@ To inspect all messages in the ``fr`` locale for the AcmeDemoBundle, run: .. code-block:: bash - $ php app/console debug:translation fr AcmeDemoBundle + $ php bin/console debug:translation fr AcmeDemoBundle You will get this output: @@ -856,15 +856,15 @@ By default all domains are inspected, but it is possible to specify a single dom .. code-block:: bash - $ php app/console debug:translation en AcmeDemoBundle --domain=messages + $ php bin/console debug:translation en AcmeDemoBundle --domain=messages When bundles have a lot of messages, it is useful to display only the unused or only the missing messages, by using the ``--only-unused`` or ``--only-missing`` switches: .. code-block:: bash - $ php app/console debug:translation en AcmeDemoBundle --only-unused - $ php app/console debug:translation en AcmeDemoBundle --only-missing + $ php bin/console debug:translation en AcmeDemoBundle --only-unused + $ php bin/console debug:translation en AcmeDemoBundle --only-missing Summary ------- From 1461bdcf4e7ac8d7a0304ad30782e1987a03443b Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 10:35:16 +0100 Subject: [PATCH 074/235] app/phpunit.xml.dist -> phpunit.xml.dist --- book/testing.rst | 35 +++++++++++++++++------------------ 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/book/testing.rst b/book/testing.rst index 9dc85d4cba8..59d2c2c5428 100644 --- a/book/testing.rst +++ b/book/testing.rst @@ -28,11 +28,10 @@ command: .. code-block:: bash # specify the configuration directory on the command line - $ phpunit -c app/ + $ phpunit -The ``-c`` option tells PHPUnit to look in the ``app/`` directory for a configuration -file. If you're curious about the PHPUnit options, check out the ``app/phpunit.xml.dist`` -file. +PHPunit is configured by the ``phpunit.xml.dist`` file in the root of your +Symfony application. .. tip:: @@ -93,23 +92,23 @@ of your bundle:: Just like in your real application - autoloading is automatically enabled via the ``bootstrap.php.cache`` file (as configured by default in the -``app/phpunit.xml.dist`` file). +``phpunit.xml.dist`` file). Running tests for a given file or directory is also very easy: .. code-block:: bash # run all tests of the application - $ phpunit -c app + $ phpunit # run all tests in the Util directory - $ phpunit -c app src/AppBundle/Tests/Util + $ phpunit src/AppBundle/Tests/Util # run tests for the Calculator class - $ phpunit -c app src/AppBundle/Tests/Util/CalculatorTest.php + $ phpunit src/AppBundle/Tests/Util/CalculatorTest.php # run all tests for the entire Bundle - $ phpunit -c app src/AppBundle/ + $ phpunit src/AppBundle/ .. index:: single: Tests; Functional tests @@ -802,23 +801,23 @@ PHPUnit Configuration ~~~~~~~~~~~~~~~~~~~~~ Each application has its own PHPUnit configuration, stored in the -``app/phpunit.xml.dist`` file. You can edit this file to change the defaults or -create an ``app/phpunit.xml`` file to set up a configuration for your local -machine only. +``phpunit.xml.dist`` file. You can edit this file to change the defaults or +create an ``phpunit.xml`` file to set up a configuration for your local machine +only. .. tip:: - Store the ``app/phpunit.xml.dist`` file in your code repository and ignore - the ``app/phpunit.xml`` file. + Store the ``phpunit.xml.dist`` file in your code repository and ignore + the ``phpunit.xml`` file. By default, only the tests from your own custom bundles stored in the standard directories ``src/*/*Bundle/Tests``, ``src/*/Bundle/*Bundle/Tests``, ``src/*Bundle/Tests`` are run by the ``phpunit`` command, as configured -in the ``app/phpunit.xml.dist`` file: +in the ``phpunit.xml.dist`` file: .. code-block:: xml - + @@ -836,7 +835,7 @@ configuration adds tests from a custom ``lib/tests`` directory: .. code-block:: xml - + @@ -853,7 +852,7 @@ section: .. code-block:: xml - + From 3318f2e42ac6139cbe57cda1bf5cc9468e5b4cb3 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 10:37:15 +0100 Subject: [PATCH 075/235] app/(cache|logs) -> var/(cache|logs) --- book/installation.rst | 16 ++++++++-------- book/templating.rst | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/book/installation.rst b/book/installation.rst index 898aeb24e1a..5983a8f39ec 100644 --- a/book/installation.rst +++ b/book/installation.rst @@ -214,8 +214,8 @@ If there are any issues, correct them now before moving on. .. sidebar:: Setting up Permissions - One common issue when installing Symfony is that the ``app/cache`` and - ``app/logs`` directories must be writable both by the web server and the + One common issue when installing Symfony is that the ``var/cache`` and + ``var/logs`` directories must be writable both by the web server and the command line user. On a UNIX system, if your web server user is different from your command line user, you can try one of the following solutions. @@ -236,12 +236,12 @@ If there are any issues, correct them now before moving on. .. code-block:: bash - $ rm -rf app/cache/* - $ rm -rf app/logs/* + $ rm -rf var/cache/* + $ rm -rf var/logs/* $ HTTPDUSER=`ps axo user,comm | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\ -f1` - $ sudo chmod +a "$HTTPDUSER allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs - $ sudo chmod +a "`whoami` allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs + $ sudo chmod +a "$HTTPDUSER allow delete,write,append,file_inherit,directory_inherit" var/cache var/logs + $ sudo chmod +a "`whoami` allow delete,write,append,file_inherit,directory_inherit" var/cache var/logs **3. Using ACL on a system that does not support chmod +a** @@ -255,8 +255,8 @@ If there are any issues, correct them now before moving on. .. code-block:: bash $ HTTPDUSER=`ps axo user,comm | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\ -f1` - $ sudo setfacl -R -m u:"$HTTPDUSER":rwX -m u:`whoami`:rwX app/cache app/logs - $ sudo setfacl -dR -m u:"$HTTPDUSER":rwX -m u:`whoami`:rwX app/cache app/logs + $ sudo setfacl -R -m u:"$HTTPDUSER":rwX -m u:`whoami`:rwX var/cache var/logs + $ sudo setfacl -dR -m u:"$HTTPDUSER":rwX -m u:`whoami`:rwX var/cache var/logs If this doesn't work, try adding ``-n`` option. diff --git a/book/templating.rst b/book/templating.rst index 26bfde3daee..d54495273b3 100644 --- a/book/templating.rst +++ b/book/templating.rst @@ -159,7 +159,7 @@ Twig Template Caching Twig is fast. Each Twig template is compiled down to a native PHP class that is rendered at runtime. The compiled classes are located in the -``app/cache/{environment}/twig`` directory (where ``{environment}`` is the +``var/cache/{environment}/twig`` directory (where ``{environment}`` is the environment, such as ``dev`` or ``prod``) and in some cases can be useful while debugging. See :ref:`environments-summary` for more information on environments. From 6b5c97737052c5666b0dd3c0674caf8e9ac69ff7 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 10:40:37 +0100 Subject: [PATCH 076/235] app/bootstrap.php.cache -> var/bootstrap.php.cache --- book/http_cache.rst | 5 +---- book/performance.rst | 20 +++++++++++--------- 2 files changed, 12 insertions(+), 13 deletions(-) diff --git a/book/http_cache.rst b/book/http_cache.rst index bf91ff2345d..24a5b23982f 100644 --- a/book/http_cache.rst +++ b/book/http_cache.rst @@ -145,12 +145,9 @@ To enable caching, modify the code of a front controller to use the caching kernel:: // web/app.php - require_once __DIR__.'/../app/bootstrap.php.cache'; - require_once __DIR__.'/../app/AppKernel.php'; - require_once __DIR__.'/../app/AppCache.php'; - use Symfony\Component\HttpFoundation\Request; + // ... $kernel = new AppKernel('prod', false); $kernel->loadClassCache(); // wrap the default AppKernel with the AppCache one diff --git a/book/performance.rst b/book/performance.rst index c73ed68c1ee..c60554015b8 100644 --- a/book/performance.rst +++ b/book/performance.rst @@ -75,16 +75,18 @@ If you're using the Standard Distribution, this code should already be available as comments in this file:: // app.php - // ... - - $loader = require_once __DIR__.'/../app/bootstrap.php.cache'; - // Use APC for autoloading to improve performance - // Change 'sf2' by the prefix you want in order - // to prevent key conflict with another application + // ... + $loader = require __DIR__.'/../app/autoload.php'; + include_once __DIR__.'/../var/bootstrap.php.cache'; + // Enable APC for autoloading to improve performance. + // You should change the ApcClassLoader first argument to a unique prefix + // in order to prevent cache key conflicts with other applications + // also using APC. /* - $loader = new ApcClassLoader('sf2', $loader); - $loader->register(true); + $apcLoader = new Symfony\Component\ClassLoader\ApcClassLoader(sha1(__FILE__), $loader); + $loader->unregister(); + $apcLoader->register(true); */ // ... @@ -119,7 +121,7 @@ If you're using the Symfony Standard Edition, then you're probably already using the bootstrap file. To be sure, open your front controller (usually ``app.php``) and check to make sure that the following line exists:: - require_once __DIR__.'/../app/bootstrap.php.cache'; + include_once __DIR__.'/../var/bootstrap.php.cache'; Note that there are two disadvantages when using a bootstrap file: From 0d6941483ea756c2a00a71bd9aa7b5ce3d0c9783 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 10:49:31 +0100 Subject: [PATCH 077/235] Updating 'Exploring the Project' --- book/bundles.rst | 1 + book/page_creation.rst | 49 ++++++++++++++++++++++++++---------------- 2 files changed, 31 insertions(+), 19 deletions(-) diff --git a/book/bundles.rst b/book/bundles.rst index 0fdfcfc088f..db7994795c2 100644 --- a/book/bundles.rst +++ b/book/bundles.rst @@ -107,6 +107,7 @@ Now that you've created the bundle, enable it via the ``AppKernel`` class:: { $bundles = array( // ... + // register your bundle new Acme\TestBundle\AcmeTestBundle(), ); diff --git a/book/page_creation.rst b/book/page_creation.rst index e450fbd61e9..c676a0f39ed 100644 --- a/book/page_creation.rst +++ b/book/page_creation.rst @@ -102,8 +102,8 @@ Suppose you want to create a JSON endpoint that returns the lucky number. Just add a second method to ``LuckyController``:: // src/AppBundle/Controller/LuckyController.php - // ... + // ... class LuckyController extends Controller { // ... @@ -132,8 +132,8 @@ Try this out in your browser: You can even shorten this with the handy :class:`Symfony\\Component\\HttpFoundation\\JsonResponse`:: // src/AppBundle/Controller/LuckyController.php - // ... + // ... // --> don't forget this new use statement use Symfony\Component\HttpFoundation\JsonResponse; @@ -168,8 +168,8 @@ at the end: .. code-block:: php-annotations // src/AppBundle/Controller/LuckyController.php - // ... + // ... class LuckyController extends Controller { /** @@ -192,7 +192,7 @@ at the end: .. code-block:: xml - + add this new use statement use Symfony\Bundle\FrameworkBundle\Controller\Controller; @@ -296,8 +296,8 @@ Twig templates, another that can log messages and many more. To render a Twig template, use a service called ``templating``:: // src/AppBundle/Controller/LuckyController.php - // ... + // ... class LuckyController extends Controller { /** @@ -329,8 +329,8 @@ But this can get even easier! By extending the ``Controller`` class, you also get a lot of shortcut methods, like ``render()``:: // src/AppBundle/Controller/LuckyController.php - // ... + // ... /** * @Route("/lucky/number/{count}") */ @@ -434,30 +434,41 @@ worked inside the two most important directories: else). As you get more advanced, you'll learn what can be done inside each of these. -The ``app/`` directory also holds a few other things, like the cache directory -``app/cache/``, the logs directory ``app/logs/`` and ``app/AppKernel.php``, -which you'll use to enable new bundles (and one of a *very* short list of +The ``app/`` directory also holds some other things, like ``app/AppKernel.php``, +which you'll use to enable new bundles (this is one of a *very* short list of PHP files in ``app/``). The ``src/`` directory has just one directory - ``src/AppBundle`` - and everything lives inside of it. A bundle is like a "plugin" and you can `find open source bundles`_ and install them into your project. But even -*your* code lives in a bundle - typically ``AppBundle`` (though there's -nothing special about ``AppBundle``). To find out more about bundles and +*your* code lives in a bundle - typically *AppBundle* (though there's +nothing special about AppBundle). To find out more about bundles and why you might create multiple bundles (hint: sharing code between projects), see the :doc:`Bundles ` chapter. So what about the other directories in the project? -``vendor/`` - Vendor (i.e. third-party) libraries and bundles are downloaded here by - the `Composer`_ package manager. - ``web/`` This is the document root for the project and contains any publicly accessible files, like CSS, images and the Symfony front controllers that execute the app (``app_dev.php`` and ``app.php``). +``tests/`` + The automatic tests (e.g. Unit tests) of your application live here. + +``bin/`` + The "binary" files live here. The most important one is the ``console`` + file which is used to execute Symfony commands via the console. + +``var/`` + This is were automatically created files are stored, like cache files + (``var/cache/``) and logs (``var/logs/``). + +``vendor/`` + Vendor (i.e. third-party) libraries and bundles are downloaded here by + the `Composer`_ package manager. You should never need to manually edit + something in this directory. + .. seealso:: Symfony is flexible. If you need to, you can easily override the default @@ -475,8 +486,8 @@ is ``app/config/config.yml``: .. code-block:: yaml # app/config/config.yml - # ... + # ... framework: secret: "%secret%" router: @@ -548,7 +559,7 @@ use the handy ``bin/console`` command: .. code-block:: bash - $ bin/console config:dump-reference framework + $ php bin/console config:dump-reference framework There's a lot more power behind Symfony's configuration system, including environments, imports and parameters. To learn all of it, see the From ed430157ae1e07eddf15670d7d44993bd1eddd94 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 10:51:55 +0100 Subject: [PATCH 078/235] Prefix commands with 'php' --- book/configuration.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/book/configuration.rst b/book/configuration.rst index e307d464e26..da96b334947 100644 --- a/book/configuration.rst +++ b/book/configuration.rst @@ -122,13 +122,13 @@ FrameworkBundle configuration: .. code-block:: bash - $ bin/console config:dump-reference FrameworkBundle + $ php bin/console config:dump-reference FrameworkBundle The extension alias (configuration key) can also be used: .. code-block:: bash - $ bin/console config:dump-reference framework + $ php bin/console config:dump-reference framework .. note:: From 215c36dc1db1fd1fb3ab3d0d3780796ed2fa10c0 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 11:03:33 +0100 Subject: [PATCH 079/235] [BestPractices] Use new directory structure --- best_practices/business-logic.rst | 6 ++- best_practices/creating-the-project.rst | 57 ++++++++++--------------- best_practices/introduction.rst | 4 -- best_practices/tests.rst | 4 +- 4 files changed, 29 insertions(+), 42 deletions(-) diff --git a/best_practices/business-logic.rst b/best_practices/business-logic.rst index 85f3a14bb0a..4642844bcb4 100644 --- a/best_practices/business-logic.rst +++ b/best_practices/business-logic.rst @@ -21,6 +21,8 @@ Inside here, you can create whatever directories you want to organize things: │ └─ AppBundle/ │ └─ Utils/ │ └─ MyClass.php + ├─ tests/ + ├─ var/ ├─ vendor/ └─ web/ @@ -40,6 +42,8 @@ and put things there: │ │ └─ Utils/ │ │ └─ MyClass.php │ └─ AppBundle/ + ├─ tests/ + ├─ var/ ├─ vendor/ └─ web/ @@ -318,7 +322,7 @@ command: .. code-block:: bash - $ php app/console doctrine:fixtures:load + $ php bin/console doctrine:fixtures:load Careful, database will be purged. Do you want to continue Y/N ? Y > purging database diff --git a/best_practices/creating-the-project.rst b/best_practices/creating-the-project.rst index 60e6db3be55..4ae67d7e342 100644 --- a/best_practices/creating-the-project.rst +++ b/best_practices/creating-the-project.rst @@ -27,14 +27,9 @@ to create files and execute the following commands: .. code-block:: bash - # Linux, Mac OS X $ cd projects/ $ symfony new blog - # Windows - c:\> cd projects/ - c:\projects\> php symfony.phar new blog - This command creates a new directory called ``blog`` that contains a fresh new project based on the most recent stable Symfony version available. In addition, the installer checks if your system meets the technical requirements to execute @@ -58,13 +53,18 @@ number of files and directories generated automatically: blog/ ├─ app/ - │ ├─ console - │ ├─ cache/ │ ├─ config/ - │ ├─ logs/ │ └─ Resources/ + ├─ bin + │ └─ console ├─ src/ │ └─ AppBundle/ + ├─ var/ + │ ├─ cache/ + │ ├─ logs/ + │ └─ sessions/ + ├─ tests/ + │ └─ AppBundle/ ├─ vendor/ └─ web/ @@ -72,13 +72,16 @@ This file and directory hierarchy is the convention proposed by Symfony to structure your applications. The recommended purpose of each directory is the following: -* ``app/cache/``, stores all the cache files generated by the application; * ``app/config/``, stores all the configuration defined for any environment; -* ``app/logs/``, stores all the log files generated by the application; * ``app/Resources/``, stores all the templates and the translation files for the application; * ``src/AppBundle/``, stores the Symfony specific code (controllers and routes), your domain code (e.g. Doctrine classes) and all your business logic; +* ``var/cache/``, stores all the cache files generated by the application; +* ``var/logs/``, stores all the log files generated by the application; +* ``var/sessions/``, stores all the session files generated by the application; +* ``tests/AppBundle/``, stores the automatic tests (e.g. Unit tests) of the + application. * ``vendor/``, this is the directory where Composer installs the application's dependencies and you should never modify any of its contents; * ``web/``, stores all the front controller files and all the web assets, such @@ -123,13 +126,18 @@ that follows these best practices: blog/ ├─ app/ - │ ├─ console - │ ├─ cache/ │ ├─ config/ - │ ├─ logs/ │ └─ Resources/ + ├─ bin/ + │ └─ console ├─ src/ │ └─ AppBundle/ + ├─ tests/ + │ └─ AppBundle/ + ├─ var/ + │ ├─ cache/ + │ ├─ logs/ + └─ sessions/ ├─ vendor/ └─ web/ ├─ app.php @@ -142,7 +150,7 @@ that follows these best practices: .. code-block:: bash - $ php app/console generate:bundle --namespace=AppBundle --dir=src --format=annotation --no-interaction + $ php bin/console generate:bundle --namespace=AppBundle --dir=src --format=annotation --no-interaction Extending the Directory Structure --------------------------------- @@ -152,27 +160,6 @@ structure of Symfony, you can :doc:`override the location of the main directories `: ``cache/``, ``logs/`` and ``web/``. -In addition, Symfony3 will use a slightly different directory structure when -it's released: - -.. code-block:: text - - blog-symfony3/ - ├─ app/ - │ ├─ config/ - │ └─ Resources/ - ├─ bin/ - │ └─ console - ├─ src/ - ├─ var/ - │ ├─ cache/ - │ └─ logs/ - ├─ vendor/ - └─ web/ - -The changes are pretty superficial, but for now, we recommend that you use -the Symfony directory structure. - .. _`Composer`: https://getcomposer.org/ .. _`Get Started`: https://getcomposer.org/doc/00-intro.md .. _`Composer download page`: https://getcomposer.org/download/ diff --git a/best_practices/introduction.rst b/best_practices/introduction.rst index 2c5661c6671..dad135249e6 100644 --- a/best_practices/introduction.rst +++ b/best_practices/introduction.rst @@ -76,12 +76,8 @@ installer and then execute this command to download the demo application: .. code-block:: bash - # Linux and Mac OS X $ symfony demo - # Windows - c:\> php symfony demo - **The demo application is a simple blog engine**, because that will allow us to focus on the Symfony concepts and features without getting buried in difficult implementation details. Instead of developing the application step by step in diff --git a/best_practices/tests.rst b/best_practices/tests.rst index 758c7b567ce..16aa6d16a35 100644 --- a/best_practices/tests.rst +++ b/best_practices/tests.rst @@ -30,8 +30,8 @@ A functional test can be as easy as this: .. code-block:: php - // src/AppBundle/Tests/ApplicationAvailabilityFunctionalTest.php - namespace AppBundle\Tests; + // tests/AppBundle/ApplicationAvailabilityFunctionalTest.php + namespace Tests\AppBundle; use Symfony\Bundle\FrameworkBundle\Test\WebTestCase; From c6d436b30412abe3c6d914c4de322670f4f46ecb Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 11:06:28 +0100 Subject: [PATCH 080/235] [QuickTour] Use new directory structure --- quick_tour/the_architecture.rst | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/quick_tour/the_architecture.rst b/quick_tour/the_architecture.rst index e9b9816fc21..a345807af66 100644 --- a/quick_tour/the_architecture.rst +++ b/quick_tour/the_architecture.rst @@ -15,8 +15,14 @@ but the recommended structure is as follows: ``app/`` The application configuration, templates and translations. +``bin/`` + Executable files (e.g. ``bin/console``). ``src/`` The project's PHP code. +``tests/`` + Automatic tests (e.g. Unit tests). +``var/`` + Generated files (cache, logs, etc.). ``vendor/`` The third-party dependencies. ``web/`` @@ -30,7 +36,7 @@ stylesheets and JavaScript files. It is also where each :term:`front controller` lives, such as the production controller shown here:: // web/app.php - require_once __DIR__.'/../app/bootstrap.php.cache'; + require_once __DIR__.'/../var/bootstrap.php.cache'; require_once __DIR__.'/../app/AppKernel.php'; use Symfony\Component\HttpFoundation\Request; @@ -260,7 +266,7 @@ Symfony applications can contain several configuration files defined in several formats (YAML, XML, PHP, etc.) Instead of parsing and combining all those files for each request, Symfony uses its own cache system. In fact, the application configuration is only parsed for the very first request -and then compiled down to plain PHP code stored in the ``app/cache/`` +and then compiled down to plain PHP code stored in the ``var/cache/`` directory. In the development environment, Symfony is smart enough to update the cache @@ -271,10 +277,10 @@ the ``prod`` environment: .. code-block:: bash - $ php app/console cache:clear --env=prod + $ php bin/console cache:clear --env=prod When developing a web application, things can go wrong in many ways. The -log files in the ``app/logs/`` directory tell you everything about the requests +log files in the ``var/logs/`` directory tell you everything about the requests and help you fix the problem quickly. Using the Command Line Interface @@ -288,13 +294,13 @@ Run it without any arguments to learn more about its capabilities: .. code-block:: bash - $ php app/console + $ php bin/console The ``--help`` option helps you discover the usage of a command: .. code-block:: bash - $ php app/console debug:router --help + $ php bin/console debug:router --help Final Thoughts -------------- From bea4a0c9d7162acc7bd655a4279dc06b06f063f9 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 11:11:26 +0100 Subject: [PATCH 081/235] app/console -> bin/console --- cookbook/assetic/asset_management.rst | 6 +++--- cookbook/bundles/installation.rst | 4 ++-- cookbook/configuration/apache_router.rst | 2 +- cookbook/configuration/environments.rst | 6 +++--- .../front_controllers_and_kernel.rst | 4 ++-- .../configuration/override_dir_structure.rst | 4 ++-- cookbook/console/console_command.rst | 2 +- cookbook/console/usage.rst | 6 +++--- cookbook/deployment/azure-website.rst | 2 +- cookbook/deployment/heroku.rst | 2 +- cookbook/deployment/platformsh.rst | 4 ++-- cookbook/deployment/tools.rst | 4 ++-- cookbook/doctrine/console.rst | 6 +++--- .../doctrine/multiple_entity_managers.rst | 8 ++++---- cookbook/doctrine/registration_form.rst | 2 +- cookbook/doctrine/reverse_engineering.rst | 6 +++--- cookbook/email/spool.rst | 6 +++--- cookbook/event_dispatcher/event_listener.rst | 4 ++-- cookbook/profiler/profiling_data.rst | 6 +++--- cookbook/security/acl.rst | 2 +- cookbook/security/entity_provider.rst | 4 ++-- cookbook/web_server/built_in.rst | 20 +++++++++---------- 22 files changed, 55 insertions(+), 55 deletions(-) diff --git a/cookbook/assetic/asset_management.rst b/cookbook/assetic/asset_management.rst index af0055f5795..2972243e842 100644 --- a/cookbook/assetic/asset_management.rst +++ b/cookbook/assetic/asset_management.rst @@ -500,7 +500,7 @@ each time you deploy), you should run the following command: .. code-block:: bash - $ php app/console assetic:dump --env=prod --no-debug + $ php bin/console assetic:dump --env=prod --no-debug This will physically generate and write each file that you need (e.g. ``/js/abcd123.js``). If you update any of your assets, you'll need to run this again to regenerate @@ -542,7 +542,7 @@ need to dump them manually. To do so, run the following command: .. code-block:: bash - $ php app/console assetic:dump + $ php bin/console assetic:dump This physically writes all of the asset files you need for your ``dev`` environment. The big disadvantage is that you need to run this each time @@ -551,7 +551,7 @@ assets will be regenerated automatically *as they change*: .. code-block:: bash - $ php app/console assetic:watch + $ php bin/console assetic:watch The ``assetic:watch`` command was introduced in AsseticBundle 2.4. In prior versions, you had to use the ``--watch`` option of the ``assetic:dump`` diff --git a/cookbook/bundles/installation.rst b/cookbook/bundles/installation.rst index 1dd7e1f4d83..2b6f222fd57 100644 --- a/cookbook/bundles/installation.rst +++ b/cookbook/bundles/installation.rst @@ -108,14 +108,14 @@ via the ``config:dump-reference`` command: .. code-block:: bash - $ app/console config:dump-reference AsseticBundle + $ bin/console config:dump-reference AsseticBundle Instead of the full bundle name, you can also pass the short name used as the root of the bundle's configuration: .. code-block:: bash - $ app/console config:dump-reference assetic + $ bin/console config:dump-reference assetic The output will look like this: diff --git a/cookbook/configuration/apache_router.rst b/cookbook/configuration/apache_router.rst index a8b4f8a7c33..c42ed3dd818 100644 --- a/cookbook/configuration/apache_router.rst +++ b/cookbook/configuration/apache_router.rst @@ -98,7 +98,7 @@ Now generate the mod_rewrite rules: .. code-block:: bash - $ php app/console router:dump-apache -e=prod --no-debug + $ php bin/console router:dump-apache -e=prod --no-debug Which should roughly output the following: diff --git a/cookbook/configuration/environments.rst b/cookbook/configuration/environments.rst index a7b3ac22ba3..8bb2c45a41b 100644 --- a/cookbook/configuration/environments.rst +++ b/cookbook/configuration/environments.rst @@ -221,13 +221,13 @@ behavior: .. code-block:: bash # 'dev' environment and debug enabled - $ php app/console command_name + $ php bin/console command_name # 'prod' environment (debug is always disabled for 'prod') - $ php app/console command_name --env=prod + $ php bin/console command_name --env=prod # 'test' environment and debug disabled - $ php app/console command_name --env=test --no-debug + $ php bin/console command_name --env=test --no-debug In addition to the ``--env`` and ``--debug`` options, the behavior of Symfony commands can also be controlled with environment variables. The Symfony console diff --git a/cookbook/configuration/front_controllers_and_kernel.rst b/cookbook/configuration/front_controllers_and_kernel.rst index cab5f41b427..9bfe3be4e46 100644 --- a/cookbook/configuration/front_controllers_and_kernel.rst +++ b/cookbook/configuration/front_controllers_and_kernel.rst @@ -75,7 +75,7 @@ as the default one. access. For example, you don't want to make a debugging environment available to arbitrary users in your production environment. -Technically, the `app/console`_ script used when running Symfony on the command +Technically, the `bin/console`_ script used when running Symfony on the command line is also a front controller, only that is not used for web, but for command line requests. @@ -162,7 +162,7 @@ way of loading your configuration. .. _Symfony Standard Edition: https://github.com/symfony/symfony-standard .. _app.php: https://github.com/symfony/symfony-standard/blob/master/web/app.php .. _app_dev.php: https://github.com/symfony/symfony-standard/blob/master/web/app_dev.php -.. _app/console: https://github.com/symfony/symfony-standard/blob/master/app/console +.. _bin/console: https://github.com/symfony/symfony-standard/blob/master/bin/console .. _AppKernel: https://github.com/symfony/symfony-standard/blob/master/app/AppKernel.php .. _decorate: https://en.wikipedia.org/wiki/Decorator_pattern .. _RewriteRule shipped with the Symfony Standard Edition: https://github.com/symfony/symfony-standard/blob/master/web/.htaccess diff --git a/cookbook/configuration/override_dir_structure.rst b/cookbook/configuration/override_dir_structure.rst index d387a7931fa..6a6bc5f1bf4 100644 --- a/cookbook/configuration/override_dir_structure.rst +++ b/cookbook/configuration/override_dir_structure.rst @@ -154,8 +154,8 @@ file: .. code-block:: bash - $ php app/console cache:clear --env=prod - $ php app/console assetic:dump --env=prod --no-debug + $ php bin/console cache:clear --env=prod + $ php bin/console assetic:dump --env=prod --no-debug Override the ``vendor`` Directory --------------------------------- diff --git a/cookbook/console/console_command.rst b/cookbook/console/console_command.rst index 7e23a4762a4..2069aaa361b 100644 --- a/cookbook/console/console_command.rst +++ b/cookbook/console/console_command.rst @@ -68,7 +68,7 @@ This command will now automatically be available to run: .. code-block:: bash - $ php app/console demo:greet Fabien + $ php bin/console demo:greet Fabien .. _cookbook-console-dic: diff --git a/cookbook/console/usage.rst b/cookbook/console/usage.rst index 0e2c1e5befd..8bdd134913e 100644 --- a/cookbook/console/usage.rst +++ b/cookbook/console/usage.rst @@ -17,13 +17,13 @@ clear and warm the ``prod`` cache you need to run: .. code-block:: bash - $ php app/console cache:clear --env=prod + $ php bin/console cache:clear --env=prod or the equivalent: .. code-block:: bash - $ php app/console cache:clear -e prod + $ php bin/console cache:clear -e prod In addition to changing the environment, you can also choose to disable debug mode. This can be useful where you want to run commands in the ``dev`` environment @@ -31,4 +31,4 @@ but avoid the performance hit of collecting debug data: .. code-block:: bash - $ php app/console list --no-debug + $ php bin/console list --no-debug diff --git a/cookbook/deployment/azure-website.rst b/cookbook/deployment/azure-website.rst index e24ed31409e..3ec53c8e466 100644 --- a/cookbook/deployment/azure-website.rst +++ b/cookbook/deployment/azure-website.rst @@ -388,7 +388,7 @@ MySQL database. .. code-block:: bash - $ php app/console doctrine:schema:update --force + $ php bin/console doctrine:schema:update --force This command builds the tables and indexes for your MySQL database. If your Symfony application is more complex than a basic Symfony Standard Edition, you diff --git a/cookbook/deployment/heroku.rst b/cookbook/deployment/heroku.rst index 62ca1be4365..b61c923c891 100644 --- a/cookbook/deployment/heroku.rst +++ b/cookbook/deployment/heroku.rst @@ -275,7 +275,7 @@ This is also very useful to build assets on the production system, e.g. with Ass { "scripts": { "compile": [ - "app/console assetic:dump" + "bin/console assetic:dump" ] } } diff --git a/cookbook/deployment/platformsh.rst b/cookbook/deployment/platformsh.rst index 7b679177feb..c4d91aafef8 100644 --- a/cookbook/deployment/platformsh.rst +++ b/cookbook/deployment/platformsh.rst @@ -69,9 +69,9 @@ Platform.sh how to deploy your application (read more about hooks: build: | rm web/app_dev.php - app/console --env=prod assetic:dump --no-debug + bin/console --env=prod assetic:dump --no-debug deploy: | - app/console --env=prod cache:clear + bin/console --env=prod cache:clear For best practices, you should also add a ``.platform`` folder at the root of your Git repository which contains the following files: diff --git a/cookbook/deployment/tools.rst b/cookbook/deployment/tools.rst index c53ed2fa6a5..cf6c3186e1f 100644 --- a/cookbook/deployment/tools.rst +++ b/cookbook/deployment/tools.rst @@ -150,7 +150,7 @@ Make sure you clear (and warm-up) your Symfony cache: .. code-block:: bash - $ php app/console cache:clear --env=prod --no-debug + $ php bin/console cache:clear --env=prod --no-debug E) Dump your Assetic Assets ~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -159,7 +159,7 @@ If you're using Assetic, you'll also want to dump your assets: .. code-block:: bash - $ php app/console assetic:dump --env=prod --no-debug + $ php bin/console assetic:dump --env=prod --no-debug F) Other Things! ~~~~~~~~~~~~~~~~ diff --git a/cookbook/doctrine/console.rst b/cookbook/doctrine/console.rst index 0cfb7befca0..11459a3b2d5 100644 --- a/cookbook/doctrine/console.rst +++ b/cookbook/doctrine/console.rst @@ -11,7 +11,7 @@ command: .. code-block:: bash - $ php app/console list doctrine + $ php bin/console list doctrine A list of available commands will print out. You can find out more information about any of these commands (or any Symfony command) by running the ``help`` @@ -20,7 +20,7 @@ task, run: .. code-block:: bash - $ php app/console help doctrine:database:create + $ php bin/console help doctrine:database:create Some notable or interesting tasks include: @@ -30,7 +30,7 @@ Some notable or interesting tasks include: .. code-block:: bash - $ php app/console doctrine:ensure-production-settings --env=prod + $ php bin/console doctrine:ensure-production-settings --env=prod * ``doctrine:mapping:import`` - allows Doctrine to introspect an existing database and create mapping information. For more information, see diff --git a/cookbook/doctrine/multiple_entity_managers.rst b/cookbook/doctrine/multiple_entity_managers.rst index 5434d847365..484809aad4c 100644 --- a/cookbook/doctrine/multiple_entity_managers.rst +++ b/cookbook/doctrine/multiple_entity_managers.rst @@ -165,20 +165,20 @@ When working with multiple connections to create your databases: .. code-block:: bash # Play only with "default" connection - $ php app/console doctrine:database:create + $ php bin/console doctrine:database:create # Play only with "customer" connection - $ php app/console doctrine:database:create --connection=customer + $ php bin/console doctrine:database:create --connection=customer When working with multiple entity managers to update your schema: .. code-block:: bash # Play only with "default" mappings - $ php app/console doctrine:schema:update --force + $ php bin/console doctrine:schema:update --force # Play only with "customer" mappings - $ php app/console doctrine:schema:update --force --em=customer + $ php bin/console doctrine:schema:update --force --em=customer If you *do* omit the entity manager's name when asking for it, the default entity manager (i.e. ``default``) is returned:: diff --git a/cookbook/doctrine/registration_form.rst b/cookbook/doctrine/registration_form.rst index 062969242c1..9e31f9eded9 100644 --- a/cookbook/doctrine/registration_form.rst +++ b/cookbook/doctrine/registration_form.rst @@ -322,7 +322,7 @@ database schema using this command: .. code-block:: bash - $ php app/console doctrine:schema:update --force + $ php bin/console doctrine:schema:update --force That's it! Head to ``/register`` to try things out! diff --git a/cookbook/doctrine/reverse_engineering.rst b/cookbook/doctrine/reverse_engineering.rst index dd50a6be9c2..efa393a0beb 100644 --- a/cookbook/doctrine/reverse_engineering.rst +++ b/cookbook/doctrine/reverse_engineering.rst @@ -59,7 +59,7 @@ table fields. .. code-block:: bash - $ php app/console doctrine:mapping:import --force AcmeBlogBundle xml + $ php bin/console doctrine:mapping:import --force AcmeBlogBundle xml This command line tool asks Doctrine to introspect the database and generate the XML metadata files under the ``src/Acme/BlogBundle/Resources/config/doctrine`` @@ -92,8 +92,8 @@ entity classes by executing the following two commands. .. code-block:: bash - $ php app/console doctrine:mapping:convert annotation ./src - $ php app/console doctrine:generate:entities AcmeBlogBundle + $ php bin/console doctrine:mapping:convert annotation ./src + $ php bin/console doctrine:generate:entities AcmeBlogBundle The first command generates entity classes with annotation mappings. But if you want to use YAML or XML mapping instead of annotations, you should diff --git a/cookbook/email/spool.rst b/cookbook/email/spool.rst index 3747f421f81..d8b897c9619 100644 --- a/cookbook/email/spool.rst +++ b/cookbook/email/spool.rst @@ -117,19 +117,19 @@ There is a console command to send the messages in the spool: .. code-block:: bash - $ php app/console swiftmailer:spool:send --env=prod + $ php bin/console swiftmailer:spool:send --env=prod It has an option to limit the number of messages to be sent: .. code-block:: bash - $ php app/console swiftmailer:spool:send --message-limit=10 --env=prod + $ php bin/console swiftmailer:spool:send --message-limit=10 --env=prod You can also set the time limit in seconds: .. code-block:: bash - $ php app/console swiftmailer:spool:send --time-limit=10 --env=prod + $ php bin/console swiftmailer:spool:send --time-limit=10 --env=prod Of course you will not want to run this manually in reality. Instead, the console command should be triggered by a cron job or scheduled task and run diff --git a/cookbook/event_dispatcher/event_listener.rst b/cookbook/event_dispatcher/event_listener.rst index 19ceebf755f..ecdcada660b 100644 --- a/cookbook/event_dispatcher/event_listener.rst +++ b/cookbook/event_dispatcher/event_listener.rst @@ -274,11 +274,11 @@ using the console. To show all events and their listeners, run: .. code-block:: bash - $ php app/console debug:event-dispatcher + $ php bin/console debug:event-dispatcher You can get registered listeners for a particular event by specifying its name: .. code-block:: bash - $ php app/console debug:event-dispatcher kernel.exception + $ php bin/console debug:event-dispatcher kernel.exception diff --git a/cookbook/profiler/profiling_data.rst b/cookbook/profiler/profiling_data.rst index 761dae943e6..bb87bbf8cd7 100644 --- a/cookbook/profiler/profiling_data.rst +++ b/cookbook/profiler/profiling_data.rst @@ -53,10 +53,10 @@ one where the information was generated, use the ``profiler:export`` and .. code-block:: bash # on the production machine - $ php app/console profiler:export > profile.data + $ php bin/console profiler:export > profile.data # on the development machine - $ php app/console profiler:import /path/to/profile.data + $ php bin/console profiler:import /path/to/profile.data # you can also pipe from the STDIN - $ cat /path/to/profile.data | php app/console profiler:import + $ cat /path/to/profile.data | php bin/console profiler:import diff --git a/cookbook/security/acl.rst b/cookbook/security/acl.rst index b881393d91b..df3b936b3f0 100644 --- a/cookbook/security/acl.rst +++ b/cookbook/security/acl.rst @@ -96,7 +96,7 @@ Fortunately, there is a task for this. Simply run the following command: .. code-block:: bash - $ php app/console init:acl + $ php bin/console init:acl Getting Started --------------- diff --git a/cookbook/security/entity_provider.rst b/cookbook/security/entity_provider.rst index 58acf646245..1cb4db24bd3 100644 --- a/cookbook/security/entity_provider.rst +++ b/cookbook/security/entity_provider.rst @@ -145,13 +145,13 @@ by running: .. code-block:: bash - $ php app/console doctrine:generate:entities AppBundle/Entity/User + $ php bin/console doctrine:generate:entities AppBundle/Entity/User Next, make sure to :ref:`create the database table `: .. code-block:: bash - $ php app/console doctrine:schema:update --force + $ php bin/console doctrine:schema:update --force What's this UserInterface? ~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/cookbook/web_server/built_in.rst b/cookbook/web_server/built_in.rst index dc42eda9cb9..10dceab5b4e 100644 --- a/cookbook/web_server/built_in.rst +++ b/cookbook/web_server/built_in.rst @@ -27,7 +27,7 @@ executing the ``server:start`` command: .. code-block:: bash - $ php app/console server:start + $ php bin/console server:start This starts the web server at ``localhost:8000`` in the background that serves your Symfony application. @@ -37,7 +37,7 @@ can change the socket passing an IP address and a port as a command-line argumen .. code-block:: bash - $ php app/console server:start 192.168.0.1:8080 + $ php bin/console server:start 192.168.0.1:8080 .. note:: @@ -46,7 +46,7 @@ can change the socket passing an IP address and a port as a command-line argumen .. code-block:: bash - $ php app/console server:start --force + $ php bin/console server:start --force .. versionadded:: 2.8 The ``--force`` option was introduced in Symfony 2.8. @@ -58,9 +58,9 @@ can change the socket passing an IP address and a port as a command-line argumen .. code-block:: bash - $ php app/console server:status + $ php bin/console server:status - $ php app/console server:status 192.168.0.1:8080 + $ php bin/console server:status 192.168.0.1:8080 The first command shows if your Symfony application will be server through ``localhost:8000``, the second one does the same for ``192.168.0.1:8080``. @@ -82,7 +82,7 @@ can change the socket passing an IP address and a port as a command-line argumen .. code-block:: bash - $ php app/console server:start 0.0.0.0:8000 + $ php bin/console server:start 0.0.0.0:8000 .. caution:: @@ -101,14 +101,14 @@ script: .. code-block:: bash - $ php app/console server:start --env=test --router=app/config/router_test.php + $ php bin/console server:start --env=test --router=app/config/router_test.php If your application's document root differs from the standard directory layout, you have to pass the correct location using the ``--docroot`` option: .. code-block:: bash - $ php app/console server:start --docroot=public_html + $ php bin/console server:start --docroot=public_html Stopping the Server ------------------- @@ -118,7 +118,7 @@ command: .. code-block:: bash - $ php app/console server:stop + $ php bin/console server:stop Like with the start command, if you omit the socket information, Symfony will stop the web server bound to ``localhost:8000``. Just pass the socket information @@ -126,7 +126,7 @@ when the web server listens to another IP address or to another port: .. code-block:: bash - $ php app/console server:stop 192.168.0.1:8080 + $ php bin/console server:stop 192.168.0.1:8080 .. _`built-in web server`: http://www.php.net/manual/en/features.commandline.webserver.php .. _`php.net`: http://php.net/manual/en/features.commandline.webserver.php#example-411 From b6d93f09bf5d26bd4f9be965b23b659cbe00f3e1 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 11:12:36 +0100 Subject: [PATCH 082/235] app/phpunit.xml.dist -> phpunit.xml.dist --- cookbook/testing/bootstrap.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cookbook/testing/bootstrap.rst b/cookbook/testing/bootstrap.rst index aecbaff6c94..1f3c5464e41 100644 --- a/cookbook/testing/bootstrap.rst +++ b/cookbook/testing/bootstrap.rst @@ -19,12 +19,12 @@ First, add the following file:: require __DIR__.'/bootstrap.php.cache'; -Replace the test bootstrap file ``bootstrap.php.cache`` in ``app/phpunit.xml.dist`` +Replace the test bootstrap file ``bootstrap.php.cache`` in ``phpunit.xml.dist`` with ``tests.bootstrap.php``: .. code-block:: xml - + + From b3da3b7e19e5f85959b10b590487f575e1139fad Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 11:14:00 +0100 Subject: [PATCH 083/235] app/cache -> var/cache --- cookbook/configuration/environments.rst | 6 +++--- cookbook/deployment/azure-website.rst | 4 ++-- cookbook/deployment/platformsh.rst | 2 +- cookbook/workflow/new_project_svn.rst | 6 +++--- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/cookbook/configuration/environments.rst b/cookbook/configuration/environments.rst index 8bb2c45a41b..15f2e2f8479 100644 --- a/cookbook/configuration/environments.rst +++ b/cookbook/configuration/environments.rst @@ -342,13 +342,13 @@ Symfony takes advantage of caching in many ways: the application configuration, routing configuration, Twig templates and more are cached to PHP objects stored in files on the filesystem. -By default, these cached files are largely stored in the ``app/cache`` directory. +By default, these cached files are largely stored in the ``var/cache`` directory. However, each environment caches its own set of files: .. code-block:: text / - ├─ app/ + ├─ var/ │ ├─ cache/ │ │ ├─ dev/ # cache directory for the *dev* environment │ │ └─ prod/ # cache directory for the *prod* environment @@ -357,7 +357,7 @@ However, each environment caches its own set of files: Sometimes, when debugging, it may be helpful to inspect a cached file to understand how something is working. When doing so, remember to look in the directory of the environment you're using (most commonly ``dev`` while -developing and debugging). While it can vary, the ``app/cache/dev`` directory +developing and debugging). While it can vary, the ``var/cache/dev`` directory includes the following: ``appDevDebugProjectContainer.php`` diff --git a/cookbook/deployment/azure-website.rst b/cookbook/deployment/azure-website.rst index 3ec53c8e466..a1c8307871a 100644 --- a/cookbook/deployment/azure-website.rst +++ b/cookbook/deployment/azure-website.rst @@ -260,10 +260,10 @@ directory with at least the following contents: .. code-block:: text /app/bootstrap.php.cache - /app/cache/* + /var/cache/* /app/config/parameters.yml /app/logs/* - !app/cache/.gitkeep + !var/cache/.gitkeep !app/logs/.gitkeep /app/SymfonyRequirements.php /build/ diff --git a/cookbook/deployment/platformsh.rst b/cookbook/deployment/platformsh.rst index c4d91aafef8..9ca118f197e 100644 --- a/cookbook/deployment/platformsh.rst +++ b/cookbook/deployment/platformsh.rst @@ -62,7 +62,7 @@ Platform.sh how to deploy your application (read more about # The mounts that will be performed when the package is deployed. mounts: - "/app/cache": "shared:files/cache" + "/var/cache": "shared:files/cache" "/app/logs": "shared:files/logs" # The hooks that will be performed when the package is deployed. diff --git a/cookbook/workflow/new_project_svn.rst b/cookbook/workflow/new_project_svn.rst index 8fe7e9eacd9..9ea1c05b78a 100644 --- a/cookbook/workflow/new_project_svn.rst +++ b/cookbook/workflow/new_project_svn.rst @@ -75,17 +75,17 @@ with these steps: .. code-block:: bash $ cd myproject/ - $ svn add --depth=empty app app/cache app/logs app/config web + $ svn add --depth=empty app var/cache app/logs app/config web $ svn propset svn:ignore "vendor" . $ svn propset svn:ignore "bootstrap*" app/ $ svn propset svn:ignore "parameters.yml" app/config/ - $ svn propset svn:ignore "*" app/cache/ + $ svn propset svn:ignore "*" var/cache/ $ svn propset svn:ignore "*" app/logs/ $ svn propset svn:ignore "bundles" web - $ svn ci -m "commit basic Symfony ignore list (vendor, app/bootstrap*, app/config/parameters.yml, app/cache/*, app/logs/*, web/bundles)" + $ svn ci -m "commit basic Symfony ignore list (vendor, app/bootstrap*, app/config/parameters.yml, var/cache/*, app/logs/*, web/bundles)" #. The rest of the files can now be added and committed to the project: From 6614c0f8def8555165b2a5b3aa64cac15deab64d Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 11:14:54 +0100 Subject: [PATCH 084/235] app/logs -> var/logs --- cookbook/console/logging.rst | 2 +- cookbook/deployment/azure-website.rst | 4 ++-- cookbook/logging/monolog.rst | 4 ++-- cookbook/workflow/new_project_svn.rst | 6 +++--- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/cookbook/console/logging.rst b/cookbook/console/logging.rst index 08781d7901b..4b2c83a0c6d 100644 --- a/cookbook/console/logging.rst +++ b/cookbook/console/logging.rst @@ -65,7 +65,7 @@ container and use it to do the logging:: } Depending on the environment in which you run your command (and your logging -setup), you should see the logged entries in ``app/logs/dev.log`` or ``app/logs/prod.log``. +setup), you should see the logged entries in ``var/logs/dev.log`` or ``var/logs/prod.log``. Enabling automatic Exceptions Logging ------------------------------------- diff --git a/cookbook/deployment/azure-website.rst b/cookbook/deployment/azure-website.rst index a1c8307871a..93a2661ce2a 100644 --- a/cookbook/deployment/azure-website.rst +++ b/cookbook/deployment/azure-website.rst @@ -262,9 +262,9 @@ directory with at least the following contents: /app/bootstrap.php.cache /var/cache/* /app/config/parameters.yml - /app/logs/* + /var/logs/* !var/cache/.gitkeep - !app/logs/.gitkeep + !var/logs/.gitkeep /app/SymfonyRequirements.php /build/ /vendor/ diff --git a/cookbook/logging/monolog.rst b/cookbook/logging/monolog.rst index 28db626cda6..c4e5c3d9a7f 100644 --- a/cookbook/logging/monolog.rst +++ b/cookbook/logging/monolog.rst @@ -39,8 +39,8 @@ to write the logs (the handlers can be shared). the logger will log to. The basic handler is the ``StreamHandler`` which writes logs in a stream -(by default in the ``app/logs/prod.log`` in the prod environment and -``app/logs/dev.log`` in the dev environment). +(by default in the ``var/logs/prod.log`` in the prod environment and +``var/logs/dev.log`` in the dev environment). Monolog comes also with a powerful built-in handler for the logging in prod environment: ``FingersCrossedHandler``. It allows you to store the diff --git a/cookbook/workflow/new_project_svn.rst b/cookbook/workflow/new_project_svn.rst index 9ea1c05b78a..3bf786d7f9f 100644 --- a/cookbook/workflow/new_project_svn.rst +++ b/cookbook/workflow/new_project_svn.rst @@ -75,17 +75,17 @@ with these steps: .. code-block:: bash $ cd myproject/ - $ svn add --depth=empty app var/cache app/logs app/config web + $ svn add --depth=empty app var/cache var/logs app/config web $ svn propset svn:ignore "vendor" . $ svn propset svn:ignore "bootstrap*" app/ $ svn propset svn:ignore "parameters.yml" app/config/ $ svn propset svn:ignore "*" var/cache/ - $ svn propset svn:ignore "*" app/logs/ + $ svn propset svn:ignore "*" var/logs/ $ svn propset svn:ignore "bundles" web - $ svn ci -m "commit basic Symfony ignore list (vendor, app/bootstrap*, app/config/parameters.yml, var/cache/*, app/logs/*, web/bundles)" + $ svn ci -m "commit basic Symfony ignore list (vendor, app/bootstrap*, app/config/parameters.yml, var/cache/*, var/logs/*, web/bundles)" #. The rest of the files can now be added and committed to the project: From af7052b63e7d562df3d990e2fb3165d3d3c04ff0 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 11:45:07 +0100 Subject: [PATCH 085/235] app/bootstrap.php.cache -> var/bootstrap.php.cache --- cookbook/configuration/apache_router.rst | 2 +- cookbook/configuration/override_dir_structure.rst | 3 +-- cookbook/debugging.rst | 13 ++++++------- cookbook/workflow/new_project_svn.rst | 4 ++-- 4 files changed, 10 insertions(+), 12 deletions(-) diff --git a/cookbook/configuration/apache_router.rst b/cookbook/configuration/apache_router.rst index c42ed3dd818..4e69b18a289 100644 --- a/cookbook/configuration/apache_router.rst +++ b/cookbook/configuration/apache_router.rst @@ -145,7 +145,7 @@ to ``ApacheRequest`` in ``web/app.php``:: // web/app.php - require_once __DIR__.'/../app/bootstrap.php.cache'; + require_once __DIR__.'/../var/bootstrap.php.cache'; require_once __DIR__.'/../app/AppKernel.php'; // require_once __DIR__.'/../app/AppCache.php'; diff --git a/cookbook/configuration/override_dir_structure.rst b/cookbook/configuration/override_dir_structure.rst index 6a6bc5f1bf4..7b552fc8f3a 100644 --- a/cookbook/configuration/override_dir_structure.rst +++ b/cookbook/configuration/override_dir_structure.rst @@ -91,8 +91,7 @@ in your ``app.php`` and ``app_dev.php`` front controllers. If you simply renamed the directory, you're fine. But if you moved it in some way, you may need to modify these paths inside those files:: - require_once __DIR__.'/../Symfony/app/bootstrap.php.cache'; - require_once __DIR__.'/../Symfony/app/AppKernel.php'; + require_once __DIR__.'/../Symfony/var/bootstrap.php.cache'; You also need to change the ``extra.symfony-web-dir`` option in the ``composer.json`` file: diff --git a/cookbook/debugging.rst b/cookbook/debugging.rst index 98fae25bad8..2333bd65665 100644 --- a/cookbook/debugging.rst +++ b/cookbook/debugging.rst @@ -30,22 +30,21 @@ The ``app_dev.php`` front controller reads as follows by default:: // ... - $loader = require_once __DIR__.'/../app/bootstrap.php.cache'; - require_once __DIR__.'/../app/AppKernel.php'; + $loader = require __DIR__.'/../app/autoload.php'; + Debug::enable(); $kernel = new AppKernel('dev', true); $kernel->loadClassCache(); $request = Request::createFromGlobals(); + // ... -To make your debugger happier, disable all PHP class caches by removing the -call to ``loadClassCache()`` and by replacing the require statements like -below:: +To make your debugger happier, disable all PHP class caches by removing (or +commenting) the call to ``loadClassCache()``:: // ... - // $loader = require_once __DIR__.'/../app/bootstrap.php.cache'; $loader = require_once __DIR__.'/../app/autoload.php'; - require_once __DIR__.'/../app/AppKernel.php'; + Debug::enable(); $kernel = new AppKernel('dev', true); // $kernel->loadClassCache(); diff --git a/cookbook/workflow/new_project_svn.rst b/cookbook/workflow/new_project_svn.rst index 3bf786d7f9f..7cec932445d 100644 --- a/cookbook/workflow/new_project_svn.rst +++ b/cookbook/workflow/new_project_svn.rst @@ -78,14 +78,14 @@ with these steps: $ svn add --depth=empty app var/cache var/logs app/config web $ svn propset svn:ignore "vendor" . - $ svn propset svn:ignore "bootstrap*" app/ + $ svn propset svn:ignore "bootstrap*" var/ $ svn propset svn:ignore "parameters.yml" app/config/ $ svn propset svn:ignore "*" var/cache/ $ svn propset svn:ignore "*" var/logs/ $ svn propset svn:ignore "bundles" web - $ svn ci -m "commit basic Symfony ignore list (vendor, app/bootstrap*, app/config/parameters.yml, var/cache/*, var/logs/*, web/bundles)" + $ svn ci -m "commit basic Symfony ignore list (vendor, var/bootstrap*, app/config/parameters.yml, var/cache/*, var/logs/*, web/bundles)" #. The rest of the files can now be added and committed to the project: From ef613f6ed71fef442ef52fe72a26faaea87f5f15 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 11:45:37 +0100 Subject: [PATCH 086/235] app/SymfonyRequirements.php -> bin/SymfonyRequirements.php --- cookbook/deployment/azure-website.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/deployment/azure-website.rst b/cookbook/deployment/azure-website.rst index 93a2661ce2a..ba5e278b2d1 100644 --- a/cookbook/deployment/azure-website.rst +++ b/cookbook/deployment/azure-website.rst @@ -265,7 +265,7 @@ directory with at least the following contents: /var/logs/* !var/cache/.gitkeep !var/logs/.gitkeep - /app/SymfonyRequirements.php + /bin/SymfonyRequirements.php /build/ /vendor/ /bin/ From df20095156a9c82d766f6c8310dd8763d921c730 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 11:54:54 +0100 Subject: [PATCH 087/235] Testing changes --- cookbook/email/testing.rst | 4 ++- cookbook/form/unit_testing.rst | 26 ++++++++++--------- cookbook/testing/database.rst | 13 +++++++--- cookbook/testing/doctrine.rst | 11 ++++---- cookbook/testing/profiling.rst | 6 ++--- .../testing/simulating_authentication.rst | 4 +-- 6 files changed, 38 insertions(+), 26 deletions(-) diff --git a/cookbook/email/testing.rst b/cookbook/email/testing.rst index 270f7506895..6ab1e522e7e 100644 --- a/cookbook/email/testing.rst +++ b/cookbook/email/testing.rst @@ -33,7 +33,9 @@ Start with an easy controller action that sends an email:: In your functional test, use the ``swiftmailer`` collector on the profiler to get information about the messages sent on the previous request:: - // src/AppBundle/Tests/Controller/MailControllerTest.php + // tests/AppBundle/Controller/MailControllerTest.php + namespace Tests\AppBundle\Controller; + use Symfony\Bundle\FrameworkBundle\Test\WebTestCase; class MailControllerTest extends WebTestCase diff --git a/cookbook/form/unit_testing.rst b/cookbook/form/unit_testing.rst index e27d944cb7e..3a082dfd49f 100644 --- a/cookbook/form/unit_testing.rst +++ b/cookbook/form/unit_testing.rst @@ -36,8 +36,8 @@ The Basics The simplest ``TypeTestCase`` implementation looks like the following:: - // src/AppBundle/Tests/Form/Type/TestedTypeTest.php - namespace AppBundle\Tests\Form\Type; + // tests/AppBundle/Form/Type/TestedTypeTest.php + namespace Tests\AppBundle\Form\Type; use AppBundle\Form\Type\TestedType; use AppBundle\Model\TestObject; @@ -117,15 +117,18 @@ might look like this:: // src/AppBundle/Form/Type/TestedType.php - // ... the buildForm method - $builder->add('app_test_child_type'); + // ... + public function buildForm(FormBuilderInterface $builder, array $options) + { + $builder->add('app_test_child_type'); + } To create your form correctly, you need to make the type available to the form factory in your test. The easiest way is to register it manually before creating the parent form using the ``PreloadedExtension`` class:: - // src/AppBundle/Tests/Form/Type/TestedTypeTests.php - namespace AppBundle\Tests\Form\Type; + // tests/AppBundle/Form/Type/TestedTypeTests.php + namespace Tests\AppBundle\Form\Type; use AppBundle\Form\Type\TestedType; use AppBundle\Model\TestObject; @@ -158,7 +161,7 @@ before creating the parent form using the ``PreloadedExtension`` class:: be getting errors that are not related to the form you are currently testing but to its children. -Adding custom Extensions +Adding Custom Extensions ------------------------ It often happens that you use some options that are added by @@ -168,8 +171,8 @@ The ``TypeTestCase`` loads only the core form extension so an "Invalid option" exception will be raised if you try to use it for testing a class that depends on other extensions. You need to add those extensions to the factory object:: - // src/AppBundle/Tests/Form/Type/TestedTypeTests.php - namespace AppBundle\Tests\Form\Type; + // tests/AppBundle/Form/Type/TestedTypeTests.php + namespace Tests\AppBundle\Form\Type; use AppBundle\Form\Type\TestedType; use AppBundle\Model\TestObject; @@ -217,8 +220,8 @@ Testing against different Sets of Data If you are not familiar yet with PHPUnit's `data providers`_, this might be a good opportunity to use them:: - // src/AppBundle/Tests/Form/Type/TestedTypeTests.php - namespace AppBundle\Tests\Form\Type; + // tests/AppBundle/Form/Type/TestedTypeTests.php + namespace Tests\AppBundle\Form\Type; use AppBundle\Form\Type\TestedType; use AppBundle\Model\TestObject; @@ -226,7 +229,6 @@ a good opportunity to use them:: class TestedTypeTest extends TypeTestCase { - /** * @dataProvider getValidTestData */ diff --git a/cookbook/testing/database.rst b/cookbook/testing/database.rst index 04c8d07ee48..405a329f4e1 100644 --- a/cookbook/testing/database.rst +++ b/cookbook/testing/database.rst @@ -33,6 +33,7 @@ class. Suppose the class you want to test looks like this:: + // src/AppBundle/Salary/SalaryCalculator.php namespace AppBundle\Salary; use Doctrine\Common\Persistence\ObjectManager; @@ -59,14 +60,20 @@ Suppose the class you want to test looks like this:: Since the ``ObjectManager`` gets injected into the class through the constructor, it's easy to pass a mock object within a test:: + // tests/AppBundle/Salary/SalaryCalculatorTest.php + namespace Tests\AppBundle\Salary; + use AppBundle\Salary\SalaryCalculator; + use AppBundle\Entity\Employee; + use Doctrine\ORM\EntityRepository; + use Doctrine\Common\Persistence\ObjectManager; class SalaryCalculatorTest extends \PHPUnit_Framework_TestCase { public function testCalculateTotalSalary() { // First, mock the object to be used in the test - $employee = $this->getMock('\AppBundle\Entity\Employee'); + $employee = $this->getMock(Employee::class); $employee->expects($this->once()) ->method('getSalary') ->will($this->returnValue(1000)); @@ -76,7 +83,7 @@ it's easy to pass a mock object within a test:: // Now, mock the repository so it returns the mock of the employee $employeeRepository = $this - ->getMockBuilder('\Doctrine\ORM\EntityRepository') + ->getMockBuilder(EntityRepository::class) ->disableOriginalConstructor() ->getMock(); $employeeRepository->expects($this->once()) @@ -85,7 +92,7 @@ it's easy to pass a mock object within a test:: // Last, mock the EntityManager to return the mock of the repository $entityManager = $this - ->getMockBuilder('\Doctrine\Common\Persistence\ObjectManager') + ->getMockBuilder(ObjectManager::class) ->disableOriginalConstructor() ->getMock(); $entityManager->expects($this->once()) diff --git a/cookbook/testing/doctrine.rst b/cookbook/testing/doctrine.rst index c263d18c91c..aadbe729113 100644 --- a/cookbook/testing/doctrine.rst +++ b/cookbook/testing/doctrine.rst @@ -20,12 +20,12 @@ If you need to actually execute a query, you will need to boot the kernel to get a valid connection. In this case, you'll extend the ``KernelTestCase``, which makes all of this quite easy:: - // src/AppBundle/Tests/Entity/ProductRepositoryFunctionalTest.php - namespace AppBundle\Tests\Entity; + // tests/AppBundle/Entity/ProductRepositoryTest.php + namespace Tests\AppBundle\Entity; use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase; - class ProductRepositoryFunctionalTest extends KernelTestCase + class ProductRepositoryTest extends KernelTestCase { /** * @var \Doctrine\ORM\EntityManager @@ -38,10 +38,10 @@ which makes all of this quite easy:: public function setUp() { self::bootKernel(); + $this->em = static::$kernel->getContainer() ->get('doctrine') - ->getManager() - ; + ->getManager(); } public function testSearchByCategoryName() @@ -60,6 +60,7 @@ which makes all of this quite easy:: protected function tearDown() { parent::tearDown(); + $this->em->close(); } } diff --git a/cookbook/testing/profiling.rst b/cookbook/testing/profiling.rst index 1789c69dbc9..d809c4febe2 100644 --- a/cookbook/testing/profiling.rst +++ b/cookbook/testing/profiling.rst @@ -15,9 +15,9 @@ spent in the framework, etc. But before writing assertions, enable the profiler and check that the profiler is indeed available (it is enabled by default in the ``test`` environment):: - class HelloControllerTest extends WebTestCase + class LuckyControllerTest extends WebTestCase { - public function testIndex() + public function testNumberAction() { $client = static::createClient(); @@ -25,7 +25,7 @@ the ``test`` environment):: // (it does nothing if the profiler is not available) $client->enableProfiler(); - $crawler = $client->request('GET', '/hello/Fabien'); + $crawler = $client->request('GET', '/lucky/number'); // ... write some assertions about the Response diff --git a/cookbook/testing/simulating_authentication.rst b/cookbook/testing/simulating_authentication.rst index f2e04acd612..8777a67e2a1 100644 --- a/cookbook/testing/simulating_authentication.rst +++ b/cookbook/testing/simulating_authentication.rst @@ -15,8 +15,8 @@ Another way would be to create a token yourself and store it in a session. While doing this, you have to make sure that an appropriate cookie is sent with a request. The following example demonstrates this technique:: - // src/AppBundle/Tests/Controller/DefaultControllerTest.php - namespace Appbundle\Tests\Controller; + // tests/AppBundle/Controller/DefaultControllerTest.php + namespace Tests\Appbundle\Controller; use Symfony\Bundle\FrameworkBundle\Test\WebTestCase; use Symfony\Component\BrowserKit\Cookie; From f2be12ab988d589c399011337de2bbbb50513e59 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 12:01:41 +0100 Subject: [PATCH 088/235] Updated directory structures --- .../configuration_organization.rst | 12 +++++-- cookbook/configuration/environments.rst | 2 +- .../configuration/override_dir_structure.rst | 35 +++++++++++-------- 3 files changed, 30 insertions(+), 19 deletions(-) diff --git a/cookbook/configuration/configuration_organization.rst b/cookbook/configuration/configuration_organization.rst index 5473a4c06b1..d6a5e4f1ade 100644 --- a/cookbook/configuration/configuration_organization.rst +++ b/cookbook/configuration/configuration_organization.rst @@ -34,7 +34,7 @@ default Symfony Standard Edition follow this structure: .. code-block:: text - / + your-project/ ├─ app/ │ └─ config/ │ ├─ config.yml @@ -47,6 +47,8 @@ default Symfony Standard Edition follow this structure: │ ├─ routing_dev.yml │ └─ security.yml ├─ src/ + ├─ tests/ + ├─ var/ ├─ vendor/ └─ web/ @@ -65,7 +67,7 @@ name as the environment: .. code-block:: text - / + your-project/ ├─ app/ │ └─ config/ │ ├─ common/ @@ -84,6 +86,8 @@ name as the environment: │ ├─ routing.yml │ └─ security.yml ├─ src/ + ├─ tests/ + ├─ var/ ├─ vendor/ └─ web/ @@ -161,7 +165,7 @@ and several files to define all application services: .. code-block:: text - / + your-project/ ├─ app/ │ └─ config/ │ ├─ bundles/ @@ -183,6 +187,8 @@ and several files to define all application services: │ ├─ ... │ └─ security.yml ├─ src/ + ├─ tests/ + ├─ var/ ├─ vendor/ └─ web/ diff --git a/cookbook/configuration/environments.rst b/cookbook/configuration/environments.rst index 15f2e2f8479..e43f07d6b46 100644 --- a/cookbook/configuration/environments.rst +++ b/cookbook/configuration/environments.rst @@ -347,7 +347,7 @@ However, each environment caches its own set of files: .. code-block:: text - / + your-project/ ├─ var/ │ ├─ cache/ │ │ ├─ dev/ # cache directory for the *dev* environment diff --git a/cookbook/configuration/override_dir_structure.rst b/cookbook/configuration/override_dir_structure.rst index 7b552fc8f3a..5982d2bf80e 100644 --- a/cookbook/configuration/override_dir_structure.rst +++ b/cookbook/configuration/override_dir_structure.rst @@ -12,12 +12,16 @@ directory structure is: your-project/ ├─ app/ - │ ├─ cache/ │ ├─ config/ - │ ├─ logs/ │ └─ ... ├─ src/ │ └─ ... + ├─ tests/ + │ └─ ... + ├─ var/ + │ ├─ cache/ + │ ├─ logs/ + │ └─ ... ├─ vendor/ │ └─ ... └─ web/ @@ -41,13 +45,13 @@ in the ``AppKernel`` class of you application:: public function getCacheDir() { - return $this->rootDir.'/'.$this->environment.'/cache'; + return dirname(__DIR__).'/var/'.$this->environment.'/cache'; } } -``$this->rootDir`` is the absolute path to the ``app`` directory and ``$this->environment`` -is the current environment (i.e. ``dev``). In this case you have changed -the location of the cache directory to ``app/{environment}/cache``. +In this code, ``$this->environment`` is the current environment (i.e. ``dev``). +In this case you have changed the location of the cache directory to +``var/{environment}/cache``. .. caution:: @@ -74,11 +78,11 @@ method:: public function getLogDir() { - return $this->rootDir.'/'.$this->environment.'/logs'; + return dirname(__DIR__).'/var/'.$this->environment.'/logs'; } } -Here you have changed the location of the directory to ``app/{environment}/logs``. +Here you have changed the location of the directory to ``var/{environment}/logs``. .. _override-web-dir: @@ -86,22 +90,22 @@ Override the ``web`` Directory ------------------------------ If you need to rename or move your ``web`` directory, the only thing you -need to guarantee is that the path to the ``app`` directory is still correct +need to guarantee is that the path to the ``var`` directory is still correct in your ``app.php`` and ``app_dev.php`` front controllers. If you simply renamed the directory, you're fine. But if you moved it in some way, you may need to modify these paths inside those files:: - require_once __DIR__.'/../Symfony/var/bootstrap.php.cache'; + require_once __DIR__.'/../path/to/var/bootstrap.php.cache'; -You also need to change the ``extra.symfony-web-dir`` option in the ``composer.json`` -file: +You also need to change the ``extra.symfony-web-dir`` option in the +``composer.json`` file: -.. code-block:: javascript +.. code-block:: json { - ... + "...": "...", "extra": { - ... + "...": "...", "symfony-web-dir": "my_new_web_dir" } } @@ -178,6 +182,7 @@ The change in the ``composer.json`` will look like this: Then, update the path to the ``autoload.php`` file in ``app/autoload.php``:: // app/autoload.php + // ... $loader = require '/some/dir/vendor/autoload.php'; From 47e11f85ede509177dd6c3d700ae4b42d6154cfe Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 13:37:13 +0100 Subject: [PATCH 089/235] Applied comments --- .../configuration_organization.rst | 21 ++++++------------- cookbook/deployment/azure-website.rst | 2 +- 2 files changed, 7 insertions(+), 16 deletions(-) diff --git a/cookbook/configuration/configuration_organization.rst b/cookbook/configuration/configuration_organization.rst index d6a5e4f1ade..d3a1fc85b2f 100644 --- a/cookbook/configuration/configuration_organization.rst +++ b/cookbook/configuration/configuration_organization.rst @@ -36,6 +36,7 @@ default Symfony Standard Edition follow this structure: your-project/ ├─ app/ + │ ├─ ... │ └─ config/ │ ├─ config.yml │ ├─ config_dev.yml @@ -46,11 +47,7 @@ default Symfony Standard Edition follow this structure: │ ├─ routing.yml │ ├─ routing_dev.yml │ └─ security.yml - ├─ src/ - ├─ tests/ - ├─ var/ - ├─ vendor/ - └─ web/ + ├─ ... This default structure was chosen for its simplicity — one file per environment. But as any other Symfony feature, you can customize it to better suit your needs. @@ -69,6 +66,7 @@ name as the environment: your-project/ ├─ app/ + │ ├─ ... │ └─ config/ │ ├─ common/ │ │ ├─ config.yml @@ -85,11 +83,7 @@ name as the environment: │ ├─ parameters.yml │ ├─ routing.yml │ └─ security.yml - ├─ src/ - ├─ tests/ - ├─ var/ - ├─ vendor/ - └─ web/ + ├─ ... To make this work, change the code of the :method:`Symfony\\Component\\HttpKernel\\KernelInterface::registerContainerConfiguration` @@ -167,6 +161,7 @@ and several files to define all application services: your-project/ ├─ app/ + │ ├─ ... │ └─ config/ │ ├─ bundles/ │ │ ├─ bundle1.yml @@ -186,11 +181,7 @@ and several files to define all application services: │ ├─ backend.yml │ ├─ ... │ └─ security.yml - ├─ src/ - ├─ tests/ - ├─ var/ - ├─ vendor/ - └─ web/ + ├─ ... Again, change the code of the ``registerContainerConfiguration()`` method to make Symfony aware of the new file organization:: diff --git a/cookbook/deployment/azure-website.rst b/cookbook/deployment/azure-website.rst index ba5e278b2d1..c13d8afc2ec 100644 --- a/cookbook/deployment/azure-website.rst +++ b/cookbook/deployment/azure-website.rst @@ -265,7 +265,7 @@ directory with at least the following contents: /var/logs/* !var/cache/.gitkeep !var/logs/.gitkeep - /bin/SymfonyRequirements.php + /var/SymfonyRequirements.php /build/ /vendor/ /bin/ From 25ae8c11b715d70c2e9d77ad68ddd5794e83491b Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 13:38:51 +0100 Subject: [PATCH 090/235] Applied suggestions --- book/page_creation.rst | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/book/page_creation.rst b/book/page_creation.rst index c676a0f39ed..dc763c45a76 100644 --- a/book/page_creation.rst +++ b/book/page_creation.rst @@ -461,13 +461,13 @@ So what about the other directories in the project? file which is used to execute Symfony commands via the console. ``var/`` - This is were automatically created files are stored, like cache files + This is where automatically created files are stored, like cache files (``var/cache/``) and logs (``var/logs/``). ``vendor/`` - Vendor (i.e. third-party) libraries and bundles are downloaded here by - the `Composer`_ package manager. You should never need to manually edit - something in this directory. + Third-party libraries, packages and bundles are downloaded here by + the `Composer`_ package manager. You should never edit something in this + directory. .. seealso:: From 4036d264eabc761ca24736f88d5926355deed610 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 17:06:28 +0100 Subject: [PATCH 091/235] Use new Simple{Form,Pre}AuthenticatorInterface namespaces --- cookbook/security/api_key_authentication.rst | 20 ++++++++++++------- .../custom_password_authenticator.rst | 10 ++++++++-- 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/cookbook/security/api_key_authentication.rst b/cookbook/security/api_key_authentication.rst index da7de4f8502..18027be259f 100644 --- a/cookbook/security/api_key_authentication.rst +++ b/cookbook/security/api_key_authentication.rst @@ -16,8 +16,14 @@ passed as a query string parameter or via an HTTP header. The API Key Authenticator ------------------------- +.. versionadded:: 2.8 + The ``SimplePreAuthenticatorInterface`` interface was moved to the + ``Symfony\Component\Security\Http\Authentication`` namespace in Symfony + 2.8. Prior to 2.8, it was located in the + ``Symfony\Component\Security\Core\Authentication`` namespace. + Authenticating a user based on the Request information should be done via a -pre-authentication mechanism. The :class:`Symfony\\Component\\Security\\Core\\Authentication\\SimplePreAuthenticatorInterface` +pre-authentication mechanism. The :class:`Symfony\\Component\\Security\\Http\\Authentication\\SimplePreAuthenticatorInterface` allows you to implement such a scheme really easily. Your exact situation may differ, but in this example, a token is read @@ -27,13 +33,13 @@ value and then a User object is created:: // src/AppBundle/Security/ApiKeyAuthenticator.php namespace AppBundle\Security; - use Symfony\Component\Security\Core\Authentication\SimplePreAuthenticatorInterface; + use Symfony\Component\HttpFoundation\Request; + use Symfony\Component\Security\Core\Authentication\Token\PreAuthenticatedToken; use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; use Symfony\Component\Security\Core\Exception\AuthenticationException; - use Symfony\Component\Security\Core\Authentication\Token\PreAuthenticatedToken; - use Symfony\Component\HttpFoundation\Request; - use Symfony\Component\Security\Core\User\UserProviderInterface; use Symfony\Component\Security\Core\Exception\BadCredentialsException; + use Symfony\Component\Security\Core\User\UserProviderInterface; + use Symfony\Component\Security\Http\Authentication\SimplePreAuthenticatorInterface; class ApiKeyAuthenticator implements SimplePreAuthenticatorInterface { @@ -273,9 +279,9 @@ you can use to create an error ``Response``. // src/AppBundle/Security/ApiKeyAuthenticator.php namespace AppBundle\Security; - use Symfony\Component\Security\Core\Authentication\SimplePreAuthenticatorInterface; use Symfony\Component\Security\Core\Exception\AuthenticationException; use Symfony\Component\Security\Http\Authentication\AuthenticationFailureHandlerInterface; + use Symfony\Component\Security\Http\Authentication\SimplePreAuthenticatorInterface; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpFoundation\Request; @@ -506,8 +512,8 @@ for security reasons. To take advantage of the session, update ``ApiKeyAuthentic to see if the stored token has a valid User object that can be used:: // src/AppBundle/Security/ApiKeyAuthenticator.php - // ... + // ... class ApiKeyAuthenticator implements SimplePreAuthenticatorInterface { // ... diff --git a/cookbook/security/custom_password_authenticator.rst b/cookbook/security/custom_password_authenticator.rst index c71995b7402..ca1f02775a2 100644 --- a/cookbook/security/custom_password_authenticator.rst +++ b/cookbook/security/custom_password_authenticator.rst @@ -21,8 +21,14 @@ The Password Authenticator .. versionadded:: 2.6 The ``UserPasswordEncoderInterface`` interface was introduced in Symfony 2.6. +.. versionadded:: 2.8 + The ``SimpleFormAuthenticatorInterface`` interface was moved to the + ``Symfony\Component\Security\Http\Authentication`` namespace in Symfony + 2.8. Prior to 2.8, it was located in the + ``Symfony\Component\Security\Core\Authentication`` namespace. + First, create a new class that implements -:class:`Symfony\\Component\\Security\\Core\\Authentication\\SimpleFormAuthenticatorInterface`. +:class:`Symfony\\Component\\Security\\Http\\Authentication\\SimpleFormAuthenticatorInterface`. Eventually, this will allow you to create custom logic for authenticating the user:: @@ -30,13 +36,13 @@ the user:: namespace Acme\HelloBundle\Security; use Symfony\Component\HttpFoundation\Request; - use Symfony\Component\Security\Core\Authentication\SimpleFormAuthenticatorInterface; use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; use Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken; use Symfony\Component\Security\Core\Encoder\UserPasswordEncoderInterface; use Symfony\Component\Security\Core\Exception\AuthenticationException; use Symfony\Component\Security\Core\Exception\UsernameNotFoundException; use Symfony\Component\Security\Core\User\UserProviderInterface; + use Symfony\Component\Security\Http\Authentication\SimpleFormAuthenticatorInterface; class TimeAuthenticator implements SimpleFormAuthenticatorInterface { From 22026ee5042d789b2613eeaa97a797fa92c8a92e Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 17:13:45 +0100 Subject: [PATCH 092/235] Document Security key to secret renamings --- cookbook/security/remember_me.rst | 3 ++- reference/configuration/security.rst | 22 +++++++++++++++------- 2 files changed, 17 insertions(+), 8 deletions(-) diff --git a/cookbook/security/remember_me.rst b/cookbook/security/remember_me.rst index aea7eddcf53..43f38620ced 100644 --- a/cookbook/security/remember_me.rst +++ b/cookbook/security/remember_me.rst @@ -84,7 +84,8 @@ The ``remember_me`` firewall defines the following configuration options: ``secret`` (**required**) .. versionadded:: 2.8 - Prior to Symfony 2.8, the ``secret`` option was named ``key``. + The ``secret`` option was introduced in Symfony 2.8. Prior to 2.8, it + was named ``key``. The value used to encrypt the cookie's content. It's common to use the ``secret`` value defined in the ``app/config/parameters.yml`` file. diff --git a/reference/configuration/security.rst b/reference/configuration/security.rst index 907a85246ef..7ebc489b2eb 100644 --- a/reference/configuration/security.rst +++ b/reference/configuration/security.rst @@ -180,7 +180,7 @@ Each part will be explained in the next section. remember_me: token_provider: name - secret: someS3cretKey + secret: "%secret%" name: NameOfTheCookie lifetime: 3600 # in seconds path: /foo @@ -227,7 +227,7 @@ Each part will be explained in the next section. domain: ~ handlers: [] anonymous: - secret: 4f954a0667e01 + secret: "%secret%" switch_user: provider: ~ parameter: _switch_user @@ -246,6 +246,10 @@ Each part will be explained in the next section. ROLE_ADMIN: [ROLE_ORGANIZER, ROLE_USER] ROLE_SUPERADMIN: [ROLE_ADMIN] +.. versionadded:: 2.8 + The ``secret`` option of ``anonymous`` and ``remember_me`` was introduced + in Symfony 2.8. Prior to 2.8, it was called ``key``. + .. _reference-security-firewall-form-login: Form Login Configuration @@ -479,7 +483,7 @@ multiple firewalls, the "context" could actually be shared: HTTP-Digest Authentication -------------------------- -To use HTTP-Digest authentication you need to provide a realm and a key: +To use HTTP-Digest authentication you need to provide a realm and a secret: .. configuration-block:: @@ -490,7 +494,7 @@ To use HTTP-Digest authentication you need to provide a realm and a key: firewalls: somename: http_digest: - key: "a_random_string" + secret: "%secret%" realm: "secure-api" .. code-block:: xml @@ -498,7 +502,7 @@ To use HTTP-Digest authentication you need to provide a realm and a key: - + @@ -509,12 +513,16 @@ To use HTTP-Digest authentication you need to provide a realm and a key: 'firewalls' => array( 'somename' => array( 'http_digest' => array( - 'key' => 'a_random_string', - 'realm' => 'secure-api', + 'secret' => '%secret%', + 'realm' => 'secure-api', ), ), ), )); +.. versionadded:: 2.8 + The ``secret`` option was introduced in Symfony 2.8. Prior to 2.8, it was + called ``key``. + .. _`PBKDF2`: https://en.wikipedia.org/wiki/PBKDF2 .. _`ircmaxell/password-compat`: https://packagist.org/packages/ircmaxell/password-compat From 0526ca09115d074f7823c9902da61eac6cd57a7b Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 17:16:39 +0100 Subject: [PATCH 093/235] Document deprecation of supports{Attribute,Class}() methods --- components/security/authorization.rst | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/components/security/authorization.rst b/components/security/authorization.rst index 3895592b95e..fc51b57f8aa 100644 --- a/components/security/authorization.rst +++ b/components/security/authorization.rst @@ -90,10 +90,10 @@ of :class:`Symfony\\Component\\Security\\Core\\Authorization\\Voter\\VoterInterf which means they have to implement a few methods which allows the decision manager to use them: -``supportsAttribute($attribute)`` +``supportsAttribute($attribute)`` (deprecated as of 2.8) will be used to check if the voter knows how to handle the given attribute; -``supportsClass($class)`` +``supportsClass($class)`` (deprecated as of 2.8) will be used to check if the voter is able to grant or deny access for an object of the given class; @@ -103,6 +103,12 @@ manager to use them: i.e. ``VoterInterface::ACCESS_GRANTED``, ``VoterInterface::ACCESS_DENIED`` or ``VoterInterface::ACCESS_ABSTAIN``; +.. note:: + + The ``supportsAttribute()`` and ``supportsClass()`` methods are deprecated + as of Symfony 2.8 and no longer required in 3.0. These methods should not + be called outside the voter class. + The Security component contains some standard voters which cover many use cases: From abad91d46606959fba9c4fdfa669275a06df494b Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 17:32:05 +0100 Subject: [PATCH 094/235] Removed note about removed content --- cookbook/console/console_command.rst | 5 ----- 1 file changed, 5 deletions(-) diff --git a/cookbook/console/console_command.rst b/cookbook/console/console_command.rst index 7e23a4762a4..184c51e541d 100644 --- a/cookbook/console/console_command.rst +++ b/cookbook/console/console_command.rst @@ -82,11 +82,6 @@ for details. Getting Services from the Service Container ------------------------------------------- -.. caution:: - - The "container scopes" concept explained in this section has been deprecated - in Symfony 2.8 and it will be removed in Symfony 3.0. - By using :class:`Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand` as the base class for the command (instead of the more basic :class:`Symfony\\Component\\Console\\Command\\Command`), you have access to the From 943ee0c7a746fc0929c97d420f6d7005c2a8ab26 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Wed, 24 Jun 2015 22:57:04 +0200 Subject: [PATCH 095/235] Added minimal cookbook article about shared --- book/service_container.rst | 2 +- cookbook/service_container/index.rst | 1 + cookbook/service_container/scopes.rst | 5 ++++ cookbook/service_container/shared.rst | 43 +++++++++++++++++++++++++++ 4 files changed, 50 insertions(+), 1 deletion(-) create mode 100644 cookbook/service_container/shared.rst diff --git a/book/service_container.rst b/book/service_container.rst index 2cb08ae4078..2c777c8106e 100644 --- a/book/service_container.rst +++ b/book/service_container.rst @@ -145,7 +145,7 @@ As a bonus, the ``Mailer`` service is only created once and the same instance is returned each time you ask for the service. This is almost always the behavior you'll need (it's more flexible and powerful), but you'll learn later how you can configure a service that has multiple instances in the -":doc:`/cookbook/service_container/scopes`" cookbook article. +":doc:`/cookbook/service_container/shared`" cookbook article. .. note:: diff --git a/cookbook/service_container/index.rst b/cookbook/service_container/index.rst index f66a455b788..f0166e75fd8 100644 --- a/cookbook/service_container/index.rst +++ b/cookbook/service_container/index.rst @@ -4,5 +4,6 @@ Service Container .. toctree:: :maxdepth: 2 + shared scopes compiler_passes diff --git a/cookbook/service_container/scopes.rst b/cookbook/service_container/scopes.rst index 13d35e4cc1e..50e644b12f2 100644 --- a/cookbook/service_container/scopes.rst +++ b/cookbook/service_container/scopes.rst @@ -8,6 +8,11 @@ How to Work with Scopes The "container scopes" concept explained in this article has been deprecated in Symfony 2.8 and it will be removed in Symfony 3.0. + + Use the ``request_stack`` service (introduced in Symfony 2.4) instead of + the ``request`` service/scope and use the ``shared`` setting (introduced in + Symfony 2.8) instead of the ``prototype`` scope + (:doc:`read more about shared services `). This article is all about scopes, a somewhat advanced topic related to the :doc:`/book/service_container`. If you've ever gotten an error mentioning diff --git a/cookbook/service_container/shared.rst b/cookbook/service_container/shared.rst new file mode 100644 index 00000000000..205afd7028d --- /dev/null +++ b/cookbook/service_container/shared.rst @@ -0,0 +1,43 @@ +.. index:: + single: Service Container; Shared Services + +How to Define Not Shared Services +================================= + +.. versionadded:: 2.8 + The ``shared`` setting was introduced in Symfony 2.8. Prior to Symfony 2.8, + you had to use the ``prototype`` scope. + +In the service container, all services are shared by default. This means that +each time you retrieve the service, you'll get the *same* instance. This is +often the behaviour you want, but in some cases, you might want to always get a +*new* instance. + +In order to always get a new instance, set the ``shared`` setting to ``false`` +in your service definition: + +.. configuration-block:: + + .. code-block:: yaml + + services: + app.some_not_shared_service: + class: ... + shared: false + # ... + + .. code-block:: xml + + + + + + .. code-block:: php + + $definition = new Definition('...'); + $definition->setShared(false); + + $container->setDefinition('app.some_not_shared_service', $definition); + +Now, whenever you call ``$container->get('app.some_not_shared_service')`` or +inject this service, you'll recieve a new instance. From 68da0410ec91af442914d274bb98554187b2a660 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 17:48:42 +0100 Subject: [PATCH 096/235] Update voter section of best practices --- best_practices/security.rst | 60 +++++++++++++++++++++++++++---------- 1 file changed, 45 insertions(+), 15 deletions(-) diff --git a/best_practices/security.rst b/best_practices/security.rst index 207499aea07..6b25a7f54b5 100644 --- a/best_practices/security.rst +++ b/best_practices/security.rst @@ -264,37 +264,66 @@ the same ``getAuthorEmail`` logic you used above: namespace AppBundle\Security; - use Symfony\Component\Security\Core\Authorization\Voter\AbstractVoter; + use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; + use Symfony\Component\Security\Core\Authorization\AccessDecisionManagerInterface; + use Symfony\Component\Security\Core\Authorization\Voter\Voter; use Symfony\Component\Security\Core\User\UserInterface; + use AppBundle\Entity\Post; - // AbstractVoter class requires Symfony 2.6 or higher version - class PostVoter extends AbstractVoter + // Voter class requires Symfony 2.8 or higher version + class PostVoter extends Voter { const CREATE = 'create'; const EDIT = 'edit'; - protected function getSupportedAttributes() + /** + * @var AccessDecisionManagerInterface + */ + private $decisionManager; + + public function __construct(AccessDecisionManagerInterface $decisionManager) { - return array(self::CREATE, self::EDIT); + $this->decisionManager = $decisionManager; } - protected function getSupportedClasses() + protected function supports($attribute, $subject) { - return array('AppBundle\Entity\Post'); + if (!in_array($attribute, array(self::CREATE, self::EDIT))) { + return false; + } + + if (!$subject instanceof Post) { + return false; + } + + return true; } - protected function isGranted($attribute, $post, $user = null) + protected function voteOnAttribute($attribute, $subject, TokenInterface $token) { + $user = $token->getUser(); + /** @var Post */ + $post = $subject; // $subject must be a Post instance, thanks to the supports method + if (!$user instanceof UserInterface) { return false; } - if ($attribute === self::CREATE && in_array('ROLE_ADMIN', $user->getRoles(), true)) { - return true; - } - - if ($attribute === self::EDIT && $user->getEmail() === $post->getAuthorEmail()) { - return true; + switch ($attribute) { + case self::CREATE: + // if the user is an admin, allow them to create new posts + if ($this->decisionManager->decide($token, array('ROLE_ADMIN'))) { + return true; + } + + break; + case self::EDIT: + // if the user is the author of the post, allow them to edit the posts + if ($user->getEmail() === $post->getAuthorEmail()) { + return true; + } + + break; } return false; @@ -310,6 +339,7 @@ To enable the security voter in the application, define a new service: # ... post_voter: class: AppBundle\Security\PostVoter + arguments: ['@security.access.decision_manager'] public: false tags: - { name: security.voter } @@ -337,7 +367,7 @@ via the even easier shortcut in a controller: */ public function editAction($id) { - $post = // query for the post ... + $post = ...; // query for the post $this->denyAccessUnlessGranted('edit', $post); From a4ad744041a58c303f7563795828a4dd78b11b0f Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sun, 29 Nov 2015 01:05:33 +0100 Subject: [PATCH 097/235] Use path() and url() PHP templating helpers --- book/forms.rst | 4 ++- book/from_flat_php_to_symfony2.rst | 2 +- book/http_cache.rst | 13 ++++--- book/routing.rst | 25 +++++++------ book/templating.rst | 45 ++++++++++++++---------- cookbook/security/csrf_in_login_form.rst | 4 ++- cookbook/security/form_login.rst | 4 ++- cookbook/security/form_login_setup.rst | 4 ++- cookbook/security/impersonating_user.rst | 10 +++--- cookbook/security/remember_me.rst | 4 ++- cookbook/templating/PHP.rst | 4 +-- 11 files changed, 71 insertions(+), 48 deletions(-) diff --git a/book/forms.rst b/book/forms.rst index 7ee7bff700d..504cc8a7ed6 100644 --- a/book/forms.rst +++ b/book/forms.rst @@ -1036,7 +1036,9 @@ to the ``form()`` or the ``form_start()`` helper: start($form, array( - 'action' => $view['router']->generate('target_route'), + // The path() method was introduced in Symfony 2.8. Prior to 2.8, + // you had to use generate(). + 'action' => $view['router']->path('target_route'), 'method' => 'GET', )) ?> diff --git a/book/from_flat_php_to_symfony2.rst b/book/from_flat_php_to_symfony2.rst index d243b390434..5420a31ea1b 100644 --- a/book/from_flat_php_to_symfony2.rst +++ b/book/from_flat_php_to_symfony2.rst @@ -598,7 +598,7 @@ database and the Templating component to render a template and return a

nbpvFQ$5`v;!;wphh%5U1poaGMGrn#S5zke6&PP)Sc zb)R!4x{2b*(B?l=Y&KXVI~?&~L`;I5GX>oe+)Tl&@JN27w`lD>T6eXO3(E2#D>nJ> z&lri~%L4z*h5j1Y74udsplKCCu@=Swovu~f=1?89UM`{aJUN{KjCG$Q1x)|EM6`#ZW0`=GRh03p1r2Y3t)2$~9zbt~rG2D^#hOS(H z4otIW^(s-SIrK{x7 z#74=G1+|zjB+*ERzhFB|>GL@BT0Pt6cep`FW{A~KU(B4y8jAZuE6Cm2#6VLS-s!@3 zivC9vhl&u6;^_Z;J>-no74s6yY=kZy+=`yPP8$gz>5RC!|0wX&1mTeG1O!$$1m?+v zhxdW#^R{z>J^6l1xgJ}p(F8FE;Ucbua&!`17`|KV8YsBmc0fF@r{}AEUl6l?_J6p; zTQ^x;Ycy&RSM^=^`&s9PYDd`++Sg_8^3ZK}BAte z*7(UU3#Ev}eyGb?$?#n~~NHXyhFg!4u*sqLZ*38$5P+S;DBmkV8 zhx0mFzV~LU1R04q$uA*wSEpw4 z;(~^w`(Aq;+xi@AXc=Hw{W)0ie-m|7yEgnh^4T)LgA~VIy7N|8Sw9Z^BT&G5I}^hh zD7eR?`zAyO6C>eVz-Flcn`D%Q#-H4A$}F1@hWt`iJzfko-n?bW0AR19MPHicE6TlT zRqH`wbEHrGf2P9!A6);>ApXaPN>R-1dHit_g~(x{%vl{ZN3~7s++HLS+v;b?0xDiX z`Uc?DY2@5ISHa}JACIR?-d(T?8If|YQ_pPtkRR@rBE?~|cpdI!xf>ywx<%z_UKE1Z zM()jL>y*d)=P3WrM*l}IJTg#P?8A}=)}CsSXd|^_Vj+S~ZPGf{RuEb?NLG8s%d$I=MvIdcD-DCHicS71q;YPj0f`Iad+b z(xM>v#4E(G!)m(#=~z^#bu9qBDjJ#*$Oz_t^!@+(0HQ>rRB9WUH$w(5!^n9|u3^zn z%F6`9Sk2rq-Ttw%@cvuuoHqr?4C!_h*qAM&@wAGK^8d>~)}Nk_9})D-e9DGCLp};J LK Date: Tue, 17 Nov 2015 09:48:51 +0100 Subject: [PATCH 048/235] Removed the comments about the is_granted() issues in non-secure pages --- book/security.rst | 16 +++++++--------- cookbook/controller/error_pages.rst | 20 +------------------- 2 files changed, 8 insertions(+), 28 deletions(-) diff --git a/book/security.rst b/book/security.rst index 5953e702654..094bb487bfe 100644 --- a/book/security.rst +++ b/book/security.rst @@ -884,7 +884,7 @@ Access Control in Templates ........................... If you want to check if the current user has a role inside a template, use -the built-in helper function: +the built-in ``is_granted()`` helper function: .. configuration-block:: @@ -900,20 +900,18 @@ the built-in helper function: Delete -If you use this function and you are *not* behind a firewall, an exception will -be thrown. Again, it's almost always a good idea to have a main firewall that -covers all URLs (as shown before in this chapter). - -.. caution:: +.. note:: - Be careful with this in your base layout or on your error pages! Because of - some internal Symfony details, to avoid broken error pages in the ``prod`` - environment, wrap calls in these templates with a check for ``app.user``: + In Symfony versions previous to 2.8, using the ``is_granted()`` function + in a page that wasn't behind a firewall resulted in an exception. That's why + you also needed to check first for the existence of the user: .. code-block:: html+twig {% if app.user and is_granted('ROLE_ADMIN') %} + Starting from Symfony 2.8, the ``app.user and ...`` check is no longer needed. + Securing other Services ....................... diff --git a/cookbook/controller/error_pages.rst b/cookbook/controller/error_pages.rst index f169aa64cfb..e516976128a 100644 --- a/cookbook/controller/error_pages.rst +++ b/cookbook/controller/error_pages.rst @@ -96,7 +96,7 @@ To override the 404 error template for HTML pages, create a new

C7TNF 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 From d01621d0faf249e33c52f426b6ee71c05a26eba2 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 7 Nov 2015 00:51:41 +0100 Subject: [PATCH 047/235] Remove hello_fabien.png as it's not used --- images/quick_tour/hello_fabien.png | Bin 89063 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 images/quick_tour/hello_fabien.png diff --git a/images/quick_tour/hello_fabien.png b/images/quick_tour/hello_fabien.png deleted file mode 100644 index 8329899b090600f721968ebe7625feb3e459e8f1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 89063 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

Ve|{U(Kyf8NbxoH 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

- + + diff --git a/cookbook/security/form_login_setup.rst b/cookbook/security/form_login_setup.rst index c936dd8b08e..b1909a5807e 100644 --- a/cookbook/security/form_login_setup.rst +++ b/cookbook/security/form_login_setup.rst @@ -237,7 +237,9 @@ Finally, create the template:
getMessage() ?>
- + + diff --git a/cookbook/security/impersonating_user.rst b/cookbook/security/impersonating_user.rst index 2e37aaa0b2f..f12ac39941f 100644 --- a/cookbook/security/impersonating_user.rst +++ b/cookbook/security/impersonating_user.rst @@ -84,11 +84,11 @@ to show a link to exit impersonation: .. code-block:: html+php isGranted('ROLE_PREVIOUS_ADMIN')): ?> -
+ + Exit impersonation diff --git a/cookbook/security/remember_me.rst b/cookbook/security/remember_me.rst index aea7eddcf53..b1bb8650e21 100644 --- a/cookbook/security/remember_me.rst +++ b/cookbook/security/remember_me.rst @@ -175,7 +175,9 @@ this:
getMessage() ?>
- + + diff --git a/cookbook/templating/PHP.rst b/cookbook/templating/PHP.rst index c156866f61b..03a16cf2d33 100644 --- a/cookbook/templating/PHP.rst +++ b/cookbook/templating/PHP.rst @@ -306,11 +306,11 @@ updated by changing the configuration: .. code-block:: html+php - + Greet Thomas! -The ``generate()`` method takes the route name and an array of parameters as +The ``path()`` method takes the route name and an array of parameters as arguments. The route name is the main key under which routes are referenced and the parameters are the values of the placeholders defined in the route pattern: From feb68dd29181fef80f4c65beafa5c75ad2245812 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 29 Nov 2015 22:47:27 -0500 Subject: [PATCH 098/235] Completely updating the form type reference section for the text -> TextType changes --- reference/forms/types.rst | 9 +++- reference/forms/types/birthday.rst | 22 +++++----- reference/forms/types/button.rst | 10 ++--- reference/forms/types/checkbox.rst | 11 +++-- reference/forms/types/choice.rst | 12 +++--- reference/forms/types/collection.rst | 27 ++++++------ reference/forms/types/country.rst | 25 +++++------ reference/forms/types/currency.rst | 28 ++++++------ reference/forms/types/date.rst | 17 +++++--- reference/forms/types/datetime.rst | 20 ++++----- reference/forms/types/email.rst | 13 +++--- reference/forms/types/entity.rst | 43 ++++++++++--------- reference/forms/types/file.rst | 13 +++--- reference/forms/types/form.rst | 12 +++--- reference/forms/types/hidden.rst | 9 ++-- reference/forms/types/integer.rst | 11 +++-- reference/forms/types/language.rst | 27 ++++++------ reference/forms/types/locale.rst | 27 ++++++------ reference/forms/types/map.rst.inc | 64 ++++++++++++++-------------- reference/forms/types/money.rst | 13 +++--- reference/forms/types/number.rst | 11 +++-- reference/forms/types/password.rst | 15 +++---- reference/forms/types/percent.rst | 13 +++--- reference/forms/types/radio.rst | 24 +++++------ reference/forms/types/range.rst | 13 +++--- reference/forms/types/repeated.rst | 22 +++++----- reference/forms/types/reset.rst | 10 ++--- reference/forms/types/search.rst | 11 +++-- reference/forms/types/submit.rst | 10 ++--- reference/forms/types/text.rst | 13 +++--- reference/forms/types/textarea.rst | 11 +++-- reference/forms/types/time.rst | 15 +++---- reference/forms/types/timezone.rst | 29 ++++++------- reference/forms/types/url.rst | 13 +++--- 34 files changed, 299 insertions(+), 324 deletions(-) diff --git a/reference/forms/types.rst b/reference/forms/types.rst index 5df657d1910..6dbfb54010c 100644 --- a/reference/forms/types.rst +++ b/reference/forms/types.rst @@ -4,6 +4,13 @@ Form Types Reference ==================== +.. versionadded:: 2.8 + To denote the form type, you have to use the fully qualified class name - like + ``TextType::class`` in PHP 5.5+ or ``Symfony\Component\Form\Extension\Core\Type\TextType``. + Before Symfony 2.8, you could use an alias for each type like ``text`` or + ``date``. The old alias syntax will still work until Symfony 3.0. For more details, + see the `2.8 UPGRADE Log`_. + .. toctree:: :maxdepth: 1 :hidden: @@ -49,7 +56,7 @@ Form Types Reference types/form A form is composed of *fields*, each of which are built with the help of -a field *type* (e.g. a ``text`` type, ``choice`` type, etc). Symfony comes +a field *type* (e.g. ``TextType``, ``ChoiceType``, etc). Symfony comes standard with a large list of field types that can be used in your application. Supported Field Types diff --git a/reference/forms/types/birthday.rst b/reference/forms/types/birthday.rst index 740c885efba..5a31c5cde4c 100644 --- a/reference/forms/types/birthday.rst +++ b/reference/forms/types/birthday.rst @@ -1,16 +1,16 @@ .. index:: - single: Forms; Fields; birthday + single: Forms; Fields; BirthdayType -birthday Field Type -=================== +BirthdayType Field +================== -A :doc:`date ` field that specializes in handling +A :doc:`DateType ` field that specializes in handling birthdate data. Can be rendered as a single text box, three text boxes (month, day and year), or three select boxes. -This type is essentially the same as the :doc:`date ` +This type is essentially the same as the :doc:`DateType ` type, but with a more appropriate default for the `years`_ option. The `years`_ option defaults to 120 years ago to the current year. @@ -22,7 +22,7 @@ option defaults to 120 years ago to the current year. +----------------------+-------------------------------------------------------------------------------+ | Overridden options | - `years`_ | +----------------------+-------------------------------------------------------------------------------+ -| Inherited options | from the :doc:`date ` type: | +| Inherited options | from the :doc:`DateType `: | | | | | | - `days`_ | | | - `placeholder`_ | @@ -33,7 +33,7 @@ option defaults to 120 years ago to the current year. | | - `view_timezone`_ | | | - `widget`_ | | | | -| | from the :doc:`form ` type: | +| | from the :doc:`FormType `: | | | | | | - `data`_ | | | - `disabled`_ | @@ -43,7 +43,7 @@ option defaults to 120 years ago to the current year. | | - `mapped`_ | | | - `read_only`_ (deprecated as of 2.8) | +----------------------+-------------------------------------------------------------------------------+ -| Parent type | :doc:`date ` | +| Parent type | :doc:`DateType ` | +----------------------+-------------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\BirthdayType` | +----------------------+-------------------------------------------------------------------------------+ @@ -62,8 +62,7 @@ relevant when the ``widget`` option is set to ``choice``. Inherited Options ----------------- -These options inherit from the :doc:`date ` -type: +These options inherit from the :doc:`DateType `: .. include:: /reference/forms/types/options/days.rst.inc @@ -81,8 +80,7 @@ type: .. include:: /reference/forms/types/options/date_widget.rst.inc -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/button.rst b/reference/forms/types/button.rst index 2ed5ac1750d..17910f6a67c 100644 --- a/reference/forms/types/button.rst +++ b/reference/forms/types/button.rst @@ -1,11 +1,11 @@ .. index:: - single: Forms; Fields; button + single: Forms; Fields; ButtonType -button Field Type -================= +ButtonType Field +================ .. versionadded:: 2.3 - The ``button`` type was introduced in Symfony 2.3 + The ``ButtonType`` was introduced in Symfony 2.3 A simple, non-responsive button. @@ -28,7 +28,7 @@ Inherited Options The following options are defined in the :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\BaseType` class. The ``BaseType`` class is the parent class for both the ``button`` type -and the :doc:`form type `, but it is not part +and the :doc:`FormType `, but it is not part of the form type tree (i.e. it can not be used as a form type on its own). .. include:: /reference/forms/types/options/button_attr.rst.inc diff --git a/reference/forms/types/checkbox.rst b/reference/forms/types/checkbox.rst index 5f774a3498e..1f1a0efa25d 100644 --- a/reference/forms/types/checkbox.rst +++ b/reference/forms/types/checkbox.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; checkbox + single: Forms; Fields; CheckboxType -checkbox Field Type -=================== +CheckboxType Field +================== Creates a single input checkbox. This should always be used for a field that has a boolean value: if the box is checked, the field will be set to @@ -26,7 +26,7 @@ true, if the box is unchecked, the value will be set to false. | | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------+ -| Parent type | :doc:`form ` | +| Parent type | :doc:`FormType ` | +-------------+------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\CheckboxType` | +-------------+------------------------------------------------------------------------+ @@ -59,8 +59,7 @@ Overridden Options Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/choice.rst b/reference/forms/types/choice.rst index 1a9c101fbcf..be0bf17265a 100644 --- a/reference/forms/types/choice.rst +++ b/reference/forms/types/choice.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; choice + single: Forms; Fields; ChoiceType -choice Field Type (select drop-downs, radio buttons & checkboxes) -================================================================= +ChoiceType Field (select drop-downs, radio buttons & checkboxes) +================================================================ A multi-purpose field used to allow the user to "choose" one or more options. It can be rendered as a ``select`` tag, radio buttons, or checkboxes. @@ -41,7 +41,7 @@ To use this field, you must specify *either* ``choices`` or ``choice_loader`` op | | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------------+ -| Parent type | :doc:`form ` | +| Parent type | :doc:`FormType ` | +-------------+------------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\ChoiceType` | +-------------+------------------------------------------------------------------------------+ @@ -91,6 +91,7 @@ this example, the underlying data is some ``Category`` object that has a ``getNa method:: use Symfony\Component\Form\Extension\Core\Type\ChoiceType; + use AppBundle\Entity\Category; // ... $builder->add('category', ChoiceType::class, [ @@ -333,8 +334,7 @@ the parent field (the form in most cases). Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/by_reference.rst.inc diff --git a/reference/forms/types/collection.rst b/reference/forms/types/collection.rst index 3dfdddfe435..269f00977d2 100644 --- a/reference/forms/types/collection.rst +++ b/reference/forms/types/collection.rst @@ -1,12 +1,12 @@ .. index:: - single: Forms; Fields; collection + single: Forms; Fields; CollectionType -collection Field Type -===================== +CollectionType Field +==================== This field type is used to render a "collection" of some field or form. -In the easiest sense, it could be an array of ``text`` fields that populate -an array ``emails`` field. In more complex examples, you can embed entire +In the easiest sense, it could be an array of ``TextType`` fields that populate +an array ``emails`` values. In more complex examples, you can embed entire forms, which is useful when creating forms that expose one-to-many relationships (e.g. a product from where you can manage many related product photos). @@ -32,7 +32,7 @@ photos). | | - `mapped`_ | | | - `required`_ | +-------------+-----------------------------------------------------------------------------+ -| Parent type | :doc:`form ` | +| Parent type | :doc:`FormType ` | +-------------+-----------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\CollectionType` | +-------------+-----------------------------------------------------------------------------+ @@ -287,8 +287,8 @@ entry_options **type**: ``array`` **default**: ``array()`` This is the array that's passed to the form type specified in the `entry_type`_ -option. For example, if you used the :doc:`choice ` -type as your `entry_type`_ option (e.g. for a collection of drop-down menus), +option. For example, if you used the :doc:`ChoiceType ` +as your `entry_type`_ option (e.g. for a collection of drop-down menus), then you'd need to at least pass the ``choices`` option to the underlying type:: @@ -317,9 +317,9 @@ entry_type **type**: ``string`` or :class:`Symfony\\Component\\Form\\FormTypeInterface` **required** -This is the field type for each item in this collection (e.g. ``text``, -``choice``, etc). For example, if you have an array of email addresses, -you'd use the :doc:`email ` type. If you want +This is the field type for each item in this collection (e.g. ``TextType``, +``ChoiceType``, etc). For example, if you have an array of email addresses, +you'd use the :doc:`EmailType `. If you want to embed a collection of some other form, create a new instance of your form type and pass it as this option. @@ -374,9 +374,8 @@ not replaced with the same value. Inherited Options ----------------- -These options inherit from the :doc:`form ` -type. Not all options are listed here - only the most applicable to this -type: +These options inherit from the :doc:`FormType `. +Not all options are listed here - only the most applicable to this type: .. _reference-form-types-by-reference: diff --git a/reference/forms/types/country.rst b/reference/forms/types/country.rst index e7b7226c067..abe34f03546 100644 --- a/reference/forms/types/country.rst +++ b/reference/forms/types/country.rst @@ -1,10 +1,10 @@ .. index:: single: Forms; Fields; country -country Field Type -================== +CountryType Field +================= -The ``country`` type is a subset of the ``ChoiceType`` that displays countries +The ``CountryType`` is a subset of the ``ChoiceType`` that displays countries of the world. As an added bonus, the country names are displayed in the language of the user. @@ -14,10 +14,9 @@ The "value" for each country is the two-letter country code. The locale of your user is guessed using :phpmethod:`Locale::getDefault` -Unlike the ``choice`` type, you don't need to specify a ``choices`` or -``choice_list`` option as the field type automatically uses all of the countries -of the world. You *can* specify either of these options manually, but then -you should just use the ``choice`` type directly. +Unlike the ``ChoiceType``, you don't need to specify a ``choices`` option as the +field type automatically uses all of the countries of the world. You *can* specify +the option manually, but then you should just use the ``ChoiceType`` directly. +-------------+-----------------------------------------------------------------------+ | Rendered as | can be various tags (see :ref:`forms-reference-choice-tags`) | @@ -25,7 +24,7 @@ you should just use the ``choice`` type directly. | Overridden | - `choices`_ | | options | | +-------------+-----------------------------------------------------------------------+ -| Inherited | from the :doc:`choice ` type | +| Inherited | from the :doc:`ChoiceType ` | | options | | | | - `placeholder`_ | | | - `error_bubbling`_ | @@ -34,7 +33,7 @@ you should just use the ``choice`` type directly. | | - `multiple`_ | | | - `preferred_choices`_ | | | | -| | from the :doc:`form ` type | +| | from the :doc:`FormType ` | | | | | | - `data`_ | | | - `disabled`_ | @@ -45,7 +44,7 @@ you should just use the ``choice`` type directly. | | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+-----------------------------------------------------------------------+ -| Parent type | :doc:`choice ` | +| Parent type | :doc:`ChoiceType ` | +-------------+-----------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\CountryType` | +-------------+-----------------------------------------------------------------------+ @@ -64,8 +63,7 @@ The locale is used to translate the countries names. Inherited Options ----------------- -These options inherit from the :doc:`choice ` -type: +These options inherit from the :doc:`ChoiceType `: .. include:: /reference/forms/types/options/placeholder.rst.inc @@ -79,8 +77,7 @@ type: .. include:: /reference/forms/types/options/preferred_choices.rst.inc -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/currency.rst b/reference/forms/types/currency.rst index 5fa7d19b720..3281314e4cf 100644 --- a/reference/forms/types/currency.rst +++ b/reference/forms/types/currency.rst @@ -1,17 +1,15 @@ .. index:: single: Forms; Fields; currency -currency Field Type -=================== +CurrencyType Field +================== -The ``currency`` type is a subset of the -:doc:`choice type ` that allows the user -to select from a large list of `3-letter ISO 4217`_ currencies. +The ``CurrencyType`` is a subset of the :doc:`ChoiceType ` +that allows the user to select from a large list of `3-letter ISO 4217`_ currencies. -Unlike the ``choice`` type, you don't need to specify a ``choices`` or -``choice_list`` option as the field type automatically uses a large list -of currencies. You *can* specify either of these options manually, but then -you should just use the ``choice`` type directly. +Unlike the ``ChoiceType``, you don't need to specify a ``choices`` option as the +field type automatically uses a large list of currencies. You *can* specify the option +manually, but then you should just use the ``ChoiceType`` directly. +-------------+------------------------------------------------------------------------+ | Rendered as | can be various tags (see :ref:`forms-reference-choice-tags`) | @@ -19,7 +17,7 @@ you should just use the ``choice`` type directly. | Overridden | - `choices`_ | | options | | +-------------+------------------------------------------------------------------------+ -| Inherited | from the :doc:`choice ` type | +| Inherited | from the :doc:`ChoiceType ` | | options | | | | - `placeholder`_ | | | - `error_bubbling`_ | @@ -27,7 +25,7 @@ you should just use the ``choice`` type directly. | | - `multiple`_ | | | - `preferred_choices`_ | | | | -| | from the :doc:`form ` type | +| | from the :doc:`FormType ` type | | | | | | - `data`_ | | | - `disabled`_ | @@ -38,7 +36,7 @@ you should just use the ``choice`` type directly. | | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------+ -| Parent type | :doc:`choice ` | +| Parent type | :doc:`ChoiceType ` | +-------------+------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\CurrencyType` | +-------------+------------------------------------------------------------------------+ @@ -56,8 +54,7 @@ The choices option defaults to all currencies. Inherited Options ----------------- -These options inherit from the :doc:`choice` -type: +These options inherit from the :doc:`ChoiceType `: .. include:: /reference/forms/types/options/placeholder.rst.inc @@ -69,8 +66,7 @@ type: .. include:: /reference/forms/types/options/preferred_choices.rst.inc -These options inherit from the :doc:`form` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/date.rst b/reference/forms/types/date.rst index e374b93f946..2d93e10a00f 100644 --- a/reference/forms/types/date.rst +++ b/reference/forms/types/date.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; date + single: Forms; Fields; DateType -date Field Type -=============== +DateType Field +============== A field that allows the user to modify date information via a variety of different HTML elements. @@ -44,7 +44,7 @@ day and year) or three select boxes (see the `widget`_ option). | | - `mapped`_ | | | - `read_only`_ (deprecated as of 2.8) | +----------------------+-----------------------------------------------------------------------------+ -| Parent type | :doc:`form ` | +| Parent type | :doc:`FormType ` | +----------------------+-----------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\DateType` | +----------------------+-----------------------------------------------------------------------------+ @@ -59,6 +59,9 @@ Suppose that you have a ``publishedAt`` field whose underlying date is a ``DateTime`` object. The following configures the ``DateType`` type for that field as three different choice fields:: + use Symfony\Component\Form\Extension\Core\Type\DateType; + // ... + $builder->add('publishedAt', DateType::class, array( 'input' => 'datetime', 'widget' => 'choice', @@ -68,6 +71,9 @@ The ``input`` option *must* be changed to match the type of the underlying date data. For example, if the ``publishedAt`` field's data were a unix timestamp, you'd need to set ``input`` to ``timestamp``:: + use Symfony\Component\Form\Extension\Core\Type\DateType; + // ... + $builder->add('publishedAt', DateType::class, array( 'input' => 'timestamp', 'widget' => 'choice', @@ -146,8 +152,7 @@ error_bubbling Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/datetime.rst b/reference/forms/types/datetime.rst index 58471e175b8..087e99478e9 100644 --- a/reference/forms/types/datetime.rst +++ b/reference/forms/types/datetime.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; datetime + single: Forms; Fields; DateTimeType -datetime Field Type -=================== +DateTimeType Field +================== This field type allows the user to modify data that represents a specific date and time (e.g. ``1984-06-05 12:15:30``). @@ -47,7 +47,7 @@ the data can be a ``DateTime`` object, a string, a timestamp or an array. | | - `mapped`_ | | | - `read_only`_ (deprecated as of 2.8) | +----------------------+-----------------------------------------------------------------------------+ -| Parent type | :doc:`form ` | +| Parent type | :doc:`FormType ` | +----------------------+-----------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\DateTimeType` | +----------------------+-----------------------------------------------------------------------------+ @@ -61,7 +61,7 @@ date_format **type**: ``integer`` or ``string`` **default**: ``IntlDateFormatter::MEDIUM`` Defines the ``format`` option that will be passed down to the date field. -See the :ref:`date type's format option ` +See the :ref:`DateType's format option ` for more details. date_widget @@ -119,8 +119,7 @@ time_widget **type**: ``string`` **default**: ``choice`` -Defines the ``widget`` option for the :doc:`time ` -type +Defines the ``widget`` option for the :doc:`TimeType `. .. include:: /reference/forms/types/options/view_timezone.rst.inc @@ -129,8 +128,8 @@ widget **type**: ``string`` **default**: ``null`` -Defines the ``widget`` option for both the :doc:`date ` -type and :doc:`time ` type. This can be overridden +Defines the ``widget`` option for both the :doc:`DateType ` +and :doc:`TimeType `. This can be overridden with the `date_widget`_ and `time_widget`_ options. .. include:: /reference/forms/types/options/with_minutes.rst.inc @@ -161,8 +160,7 @@ error_bubbling Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/email.rst b/reference/forms/types/email.rst index 58b68da5cc8..9e70150ec5a 100644 --- a/reference/forms/types/email.rst +++ b/reference/forms/types/email.rst @@ -1,10 +1,10 @@ .. index:: - single: Forms; Fields; email + single: Forms; Fields; EmailType -email Field Type -================ +EmailType Field +=============== -The ``email`` field is a text field that is rendered using the HTML5 +The ``EmailType`` field is a text field that is rendered using the HTML5 ```` tag. +-------------+---------------------------------------------------------------------+ @@ -23,7 +23,7 @@ The ``email`` field is a text field that is rendered using the HTML5 | | - `required`_ | | | - `trim`_ | +-------------+---------------------------------------------------------------------+ -| Parent type | :doc:`text ` | +| Parent type | :doc:`TextType ` | +-------------+---------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\EmailType` | +-------------+---------------------------------------------------------------------+ @@ -31,8 +31,7 @@ The ``email`` field is a text field that is rendered using the HTML5 Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/entity.rst b/reference/forms/types/entity.rst index a0487477029..4eacb7078f8 100644 --- a/reference/forms/types/entity.rst +++ b/reference/forms/types/entity.rst @@ -1,10 +1,10 @@ .. index:: - single: Forms; Fields; choice + single: Forms; Fields; EntityType -entity Field Type -================= +EntityType Field +================ -A special ``choice`` field that's designed to load options from a Doctrine +A special ``ChoiceType`` field that's designed to load options from a Doctrine entity. For example, if you have a ``Category`` entity, you could use this field to display a ``select`` field of all, or some, of the ``Category`` objects from the database. @@ -20,7 +20,7 @@ objects from the database. | Overridden | - `choices`_ | | options | | +-------------+------------------------------------------------------------------+ -| Inherited | from the :doc:`choice ` type: | +| Inherited | from the :doc:`ChoiceType `: | | options | | | | - `placeholder`_ | | | - `expanded`_ | @@ -28,7 +28,7 @@ objects from the database. | | - `preferred_choices`_ | | | - `group_by`_ | | | | -| | from the :doc:`form ` type: | +| | from the :doc:`FormType `: | | | | | | - `data`_ | | | - `disabled`_ | @@ -41,7 +41,7 @@ objects from the database. | | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------+ -| Parent type | :doc:`choice ` | +| Parent type | :doc:`ChoiceType ` | +-------------+------------------------------------------------------------------+ | Class | :class:`Symfony\\Bridge\\Doctrine\\Form\\Type\\EntityType` | +-------------+------------------------------------------------------------------+ @@ -56,15 +56,18 @@ be listed inside the choice field:: // ... $builder->add('users', EntityType::class, array( - 'class' => 'AcmeHelloBundle:User', + 'class' => 'AppBundle:User', 'choice_label' => 'username', )); In this case, all ``User`` objects will be loaded from the database and rendered as either a ``select`` tag, a set or radio buttons or a series of checkboxes (this depends on the ``multiple`` and ``expanded`` values). -If the entity object does not have a ``__toString()`` method the ``choice_label`` -option is needed. +Because of the `choice_label`_ option, the ``username`` property (usually by calling +``getUsername()``) will be used as the text to display in the field. + +If you omit the ``choice_label`` option, then your entity *must* have a ``__toString()`` +method. Using a Custom Query for the Entities ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -78,7 +81,7 @@ the ``query_builder`` option. The easiest way to use the option is as follows:: // ... $builder->add('users', EntityType::class, array( - 'class' => 'AcmeHelloBundle:User', + 'class' => 'AppBundle:User', 'query_builder' => function (EntityRepository $er) { return $er->createQueryBuilder('u') ->orderBy('u.username', 'ASC'); @@ -100,7 +103,7 @@ then you can supply the ``choices`` option directly:: // ... $builder->add('users', EntityType::class, array( - 'class' => 'AcmeHelloBundle:User', + 'class' => 'AppBundle:User', 'choices' => $group->getUsers(), )); @@ -114,8 +117,8 @@ class **type**: ``string`` **required** -The class of your entity (e.g. ``AcmeStoreBundle:Category``). This can be -a fully-qualified class name (e.g. ``Acme\StoreBundle\Entity\Category``) +The class of your entity (e.g. ``AppBundle:Category``). This can be +a fully-qualified class name (e.g. ``AppBundle\Entity\Category``) or the short alias name (as shown prior). choice_label @@ -167,7 +170,7 @@ more detais, see the main :ref:`choice_label ` docu // ... $builder->add('gender', EntityType::class, array( - 'class' => 'MyBundle:Gender', + 'class' => 'AppBundle:Category', 'choice_label' => 'translations[en].name', )); @@ -206,8 +209,7 @@ See :ref:`reference-forms-entity-choices`. Inherited Options ----------------- -These options inherit from the :doc:`choice ` -type: +These options inherit from the :doc:`ChoiceType `: .. include:: /reference/forms/types/options/placeholder.rst.inc @@ -229,11 +231,10 @@ type: .. note:: - This option expects an array of entity objects, unlike the ``choice`` - field that requires an array of keys. + This option expects an array of entity objects (that's actually the same as with + the ``ChoiceType`` field, whichs requires an array of the preferred "values"). -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/file.rst b/reference/forms/types/file.rst index b31b72a3f18..2f964867111 100644 --- a/reference/forms/types/file.rst +++ b/reference/forms/types/file.rst @@ -1,10 +1,10 @@ .. index:: - single: Forms; Fields; file + single: Forms; Fields; FileType -file Field Type -=============== +FileType Field +============== -The ``file`` type represents a file input in your form. +The ``FileType`` represents a file input in your form. +-------------+---------------------------------------------------------------------+ | Rendered as | ``input`` ``file`` field | @@ -24,7 +24,7 @@ The ``file`` type represents a file input in your form. | | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+---------------------------------------------------------------------+ -| Parent type | :doc:`form ` | +| Parent type | :doc:`FormType ` | +-------------+---------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\FileType` | +-------------+---------------------------------------------------------------------+ @@ -115,8 +115,7 @@ value is empty. Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/disabled.rst.inc diff --git a/reference/forms/types/form.rst b/reference/forms/types/form.rst index 860ff593d45..ccd229795d4 100644 --- a/reference/forms/types/form.rst +++ b/reference/forms/types/form.rst @@ -1,11 +1,11 @@ .. index:: - single: Forms; Fields; form + single: Forms; Fields; FormType -form Field Type -=============== +FormType Field +============== -The ``form`` type predefines a couple of options that are then available -on all types for which ``form`` is the parent type. +The ``FormType`` predefines a couple of options that are then available +on all types for which ``FormType`` is the parent. +-----------+--------------------------------------------------------------------+ | Options | - `action`_ | @@ -146,7 +146,7 @@ Inherited Options The following options are defined in the :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\BaseType` class. The ``BaseType`` class is the parent class for both the ``form`` type and -the :doc:`button type `, but it is not part +the :doc:`ButtonType `, but it is not part of the form type tree (i.e. it can not be used as a form type on its own). .. include:: /reference/forms/types/options/attr.rst.inc diff --git a/reference/forms/types/hidden.rst b/reference/forms/types/hidden.rst index 272eb853852..e211c526f63 100644 --- a/reference/forms/types/hidden.rst +++ b/reference/forms/types/hidden.rst @@ -1,8 +1,8 @@ .. index:: single: Forms; Fields; hidden -hidden Field Type -================= +HiddenType Field +================ The hidden type represents a hidden input field. @@ -18,7 +18,7 @@ The hidden type represents a hidden input field. | | - `mapped`_ | | | - `property_path`_ | +-------------+----------------------------------------------------------------------+ -| Parent type | :doc:`form ` | +| Parent type | :doc:`FormType ` | +-------------+----------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\HiddenType` | +-------------+----------------------------------------------------------------------+ @@ -45,8 +45,7 @@ Hidden fields cannot have a required attribute. Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/integer.rst b/reference/forms/types/integer.rst index b2d4348861e..19fff1d4e89 100644 --- a/reference/forms/types/integer.rst +++ b/reference/forms/types/integer.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; integer + single: Forms; Fields; IntegerType -integer Field Type -================== +IntegerType Field +================= Renders an input "number" field. Basically, this is a text field that's good at handling data that's in an integer form. The input ``number`` field @@ -36,7 +36,7 @@ integers. By default, all non-integer values (e.g. 6.78) will round down | | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+-----------------------------------------------------------------------+ -| Parent type | :doc:`form ` | +| Parent type | :doc:`FormType ` | +-------------+-----------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\IntegerType` | +-------------+-----------------------------------------------------------------------+ @@ -85,8 +85,7 @@ Overridden Options Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/language.rst b/reference/forms/types/language.rst index 621dc08b3cd..aa2ea09b44f 100644 --- a/reference/forms/types/language.rst +++ b/reference/forms/types/language.rst @@ -1,10 +1,10 @@ .. index:: - single: Forms; Fields; language + single: Forms; Fields; LanguageType -language Field Type -=================== +LanguageType Field +================== -The ``language`` type is a subset of the ``ChoiceType`` that allows the +The ``LanguageType`` is a subset of the ``ChoiceType`` that allows the user to select from a large list of languages. As an added bonus, the language names are displayed in the language of the user. @@ -15,10 +15,9 @@ in the `International Components for Unicode`_ (e.g. ``fr`` or ``zh_Hant``). The locale of your user is guessed using :phpmethod:`Locale::getDefault` -Unlike the ``choice`` type, you don't need to specify a ``choices`` or -``choice_list`` option as the field type automatically uses a large list -of languages. You *can* specify either of these options manually, but then -you should just use the ``choice`` type directly. +Unlike the ``ChoiceType``, you don't need to specify a ``choices`` option as the +field type automatically uses a large list of languages. You *can* specify the option +manually, but then you should just use the ``ChoiceType`` directly. +-------------+------------------------------------------------------------------------+ | Rendered as | can be various tags (see :ref:`forms-reference-choice-tags`) | @@ -26,7 +25,7 @@ you should just use the ``choice`` type directly. | Overridden | - `choices`_ | | options | | +-------------+------------------------------------------------------------------------+ -| Inherited | from the :doc:`choice ` type | +| Inherited | from the :doc:`ChoiceType ` | | options | | | | - `placeholder`_ | | | - `error_bubbling`_ | @@ -35,7 +34,7 @@ you should just use the ``choice`` type directly. | | - `multiple`_ | | | - `preferred_choices`_ | | | | -| | from the :doc:`form ` type | +| | from the :doc:`FormType ` | | | | | | - `data`_ | | | - `disabled`_ | @@ -46,7 +45,7 @@ you should just use the ``choice`` type directly. | | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------+ -| Parent type | :doc:`choice ` | +| Parent type | :doc:`ChoiceType ` | +-------------+------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\LanguageType` | +-------------+------------------------------------------------------------------------+ @@ -65,8 +64,7 @@ The default locale is used to translate the languages names. Inherited Options ----------------- -These options inherit from the :doc:`choice ` -type: +These options inherit from the :doc:`ChoiceType `: .. include:: /reference/forms/types/options/placeholder.rst.inc @@ -80,8 +78,7 @@ type: .. include:: /reference/forms/types/options/preferred_choices.rst.inc -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/locale.rst b/reference/forms/types/locale.rst index c1ddaf47ed0..83ae8acfa81 100644 --- a/reference/forms/types/locale.rst +++ b/reference/forms/types/locale.rst @@ -1,10 +1,10 @@ .. index:: - single: Forms; Fields; locale + single: Forms; Fields; LocaleType -locale Field Type -================= +LocaleType Field +================ -The ``locale`` type is a subset of the ``ChoiceType`` that allows the user +The ``LocaleType`` is a subset of the ``ChoiceType`` that allows the user to select from a large list of locales (language+country). As an added bonus, the locale names are displayed in the language of the user. @@ -17,10 +17,9 @@ for French/France). The locale of your user is guessed using :phpmethod:`Locale::getDefault` -Unlike the ``choice`` type, you don't need to specify a ``choices`` or -``choice_list`` option as the field type automatically uses a large list -of locales. You *can* specify either of these options manually, but then -you should just use the ``choice`` type directly. +Unlike the ``ChoiceType``, you don't need to specify a ``choices`` option as the +field type automatically uses a large list of locales. You *can* specify these options +manually, but then you should just use the ``ChoiceType`` directly. +-------------+------------------------------------------------------------------------+ | Rendered as | can be various tags (see :ref:`forms-reference-choice-tags`) | @@ -28,7 +27,7 @@ you should just use the ``choice`` type directly. | Overridden | - `choices`_ | | options | | +-------------+------------------------------------------------------------------------+ -| Inherited | from the :doc:`choice ` type | +| Inherited | from the :doc:`ChoiceType ` | | options | | | | - `placeholder`_ | | | - `error_bubbling`_ | @@ -37,7 +36,7 @@ you should just use the ``choice`` type directly. | | - `multiple`_ | | | - `preferred_choices`_ | | | | -| | from the :doc:`form ` type | +| | from the :doc:`FormType ` | | | | | | - `data`_ | | | - `disabled`_ | @@ -48,7 +47,7 @@ you should just use the ``choice`` type directly. | | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------+ -| Parent type | :doc:`choice ` | +| Parent type | :doc:`ChoiceType ` | +-------------+------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\LocaleType` | +-------------+------------------------------------------------------------------------+ @@ -67,8 +66,7 @@ specify the language. Inherited Options ----------------- -These options inherit from the :doc:`choice ` -type: +These options inherit from the :doc:`ChoiceType `: .. include:: /reference/forms/types/options/placeholder.rst.inc @@ -82,8 +80,7 @@ type: .. include:: /reference/forms/types/options/preferred_choices.rst.inc -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/map.rst.inc b/reference/forms/types/map.rst.inc index de0e07db282..4351908de8a 100644 --- a/reference/forms/types/map.rst.inc +++ b/reference/forms/types/map.rst.inc @@ -1,63 +1,63 @@ Text Fields ~~~~~~~~~~~ -* :doc:`text ` -* :doc:`textarea ` -* :doc:`email ` -* :doc:`integer ` -* :doc:`money ` -* :doc:`number ` -* :doc:`password ` -* :doc:`percent ` -* :doc:`search ` -* :doc:`url ` -* :doc:`range ` +* :doc:`TextType ` +* :doc:`TextareaType ` +* :doc:`EmailType ` +* :doc:`IntegerType ` +* :doc:`MoneyType ` +* :doc:`NumberType ` +* :doc:`PasswordType ` +* :doc:`PercentType ` +* :doc:`SearchType ` +* :doc:`UrlType ` +* :doc:`RangeType ` Choice Fields ~~~~~~~~~~~~~ -* :doc:`choice ` -* :doc:`entity ` -* :doc:`country ` -* :doc:`language ` -* :doc:`locale ` -* :doc:`timezone ` -* :doc:`currency ` +* :doc:`ChoiceType ` +* :doc:`EntityType ` +* :doc:`CountryType ` +* :doc:`LanguageType ` +* :doc:`LocaleType ` +* :doc:`TimezoneType ` +* :doc:`CurrencyType ` Date and Time Fields ~~~~~~~~~~~~~~~~~~~~ -* :doc:`date ` -* :doc:`datetime ` -* :doc:`time ` -* :doc:`birthday ` +* :doc:`DateType ` +* :doc:`DateTimeType ` +* :doc:`TimeType ` +* :doc:`BirthdayType ` Other Fields ~~~~~~~~~~~~ -* :doc:`checkbox ` -* :doc:`file ` -* :doc:`radio ` +* :doc:`CheckboxType ` +* :doc:`FileType ` +* :doc:`RadioType ` Field Groups ~~~~~~~~~~~~ -* :doc:`collection ` -* :doc:`repeated ` +* :doc:`CollectionType ` +* :doc:`RepeatedType ` Hidden Fields ~~~~~~~~~~~~~ -* :doc:`hidden ` +* :doc:`HiddenType ` Buttons ~~~~~~~ -* :doc:`button` -* :doc:`reset` -* :doc:`submit` +* :doc:`ButtonType ` +* :doc:`ResetType ` +* :doc:`SubmitType ` Base Fields ~~~~~~~~~~~ -* :doc:`form ` +* :doc:`FormType ` diff --git a/reference/forms/types/money.rst b/reference/forms/types/money.rst index a9683f02abc..f97dec52d51 100644 --- a/reference/forms/types/money.rst +++ b/reference/forms/types/money.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; money + single: Forms; Fields; MoneyType -money Field Type -================ +MoneyType Field +=============== Renders an input text field and specializes in handling submitted "money" data. @@ -35,7 +35,7 @@ how the input and output of the data is handled. | | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+---------------------------------------------------------------------+ -| Parent type | :doc:`form ` | +| Parent type | :doc:`FormType ` | +-------------+---------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\MoneyType` | +-------------+---------------------------------------------------------------------+ @@ -65,7 +65,7 @@ If, for some reason, you need to divide your starting value by a number before rendering it to the user, you can use the ``divisor`` option. For example:: - use Symfony\Component\Form\Extension\Core\Type\FileType; + use Symfony\Component\Form\Extension\Core\Type\MoneyType; // ... $builder->add('price', MoneyType::class, array( @@ -101,8 +101,7 @@ Overridden Options Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/number.rst b/reference/forms/types/number.rst index 59094ac1bb9..3d67a154957 100644 --- a/reference/forms/types/number.rst +++ b/reference/forms/types/number.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; number + single: Forms; Fields; NumberType -number Field Type -================= +NumberType Field +================ Renders an input text field and specializes in handling number input. This type offers different options for the scale, rounding and grouping @@ -31,7 +31,7 @@ that you want to use for your number. | | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+----------------------------------------------------------------------+ -| Parent type | :doc:`form ` | +| Parent type | :doc:`FormType ` | +-------------+----------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\NumberType` | +-------------+----------------------------------------------------------------------+ @@ -80,8 +80,7 @@ Overridden Options Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/password.rst b/reference/forms/types/password.rst index 3e971ff113f..f5db4f721be 100644 --- a/reference/forms/types/password.rst +++ b/reference/forms/types/password.rst @@ -1,10 +1,10 @@ .. index:: - single: Forms; Fields; password + single: Forms; Fields; PasswordType -password Field Type -=================== +PasswordType Field +================== -The ``password`` field renders an input password text box. +The ``PasswordType`` field renders an input password text box. +-------------+------------------------------------------------------------------------+ | Rendered as | ``input`` ``password`` field | @@ -25,7 +25,7 @@ The ``password`` field renders an input password text box. | | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------+ -| Parent type | :doc:`text ` | +| Parent type | :doc:`TextType ` | +-------------+------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\PasswordType` | +-------------+------------------------------------------------------------------------+ @@ -54,7 +54,7 @@ trim **type**: ``boolean`` **default**: ``false`` -Unlike the rest of form types, the ``password`` type doesn't apply the +Unlike the rest of form types, the ``PasswordType`` doesn't apply the :phpfunction:`trim` function to the value submitted by the user. This ensures that the password is merged back onto the underlying object exactly as it was typed by the user. @@ -62,8 +62,7 @@ by the user. Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/disabled.rst.inc diff --git a/reference/forms/types/percent.rst b/reference/forms/types/percent.rst index 0efc8c7c2c2..14ad60281bf 100644 --- a/reference/forms/types/percent.rst +++ b/reference/forms/types/percent.rst @@ -1,11 +1,11 @@ .. index:: - single: Forms; Fields; percent + single: Forms; Fields; PercentType -percent Field Type -================== +PercentType Field +================= -The ``percent`` type renders an input text field and specializes in handling +The ``PercentType`` renders an input text field and specializes in handling percentage data. If your percentage data is stored as a decimal (e.g. ``.95``), you can use this field out-of-the-box. If you store your data as a number (e.g. ``95``), you should set the ``type`` option to ``integer``. @@ -34,7 +34,7 @@ This field adds a percentage sign "``%``" after the input box. | | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+-----------------------------------------------------------------------+ -| Parent type | :doc:`form ` | +| Parent type | :doc:`FormType ` | +-------------+-----------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\PercentType` | +-------------+-----------------------------------------------------------------------+ @@ -82,8 +82,7 @@ Overridden Options Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/radio.rst b/reference/forms/types/radio.rst index b1adec4c6ea..cd7b0cc9d68 100644 --- a/reference/forms/types/radio.rst +++ b/reference/forms/types/radio.rst @@ -1,26 +1,26 @@ .. index:: - single: Forms; Fields; radio + single: Forms; Fields; RadioType -radio Field Type -================ +RadioType Field +=============== Creates a single radio button. If the radio button is selected, the field will be set to the specified value. Radio buttons cannot be unchecked - the value only changes when another radio button with the same name gets checked. -The ``radio`` type isn't usually used directly. More commonly it's used -internally by other types such as :doc:`choice `. -If you want to have a boolean field, use :doc:`checkbox `. +The ``RadioType`` isn't usually used directly. More commonly it's used +internally by other types such as :doc:`ChoiceType `. +If you want to have a boolean field, use :doc:`CheckboxType `. +-------------+---------------------------------------------------------------------+ | Rendered as | ``input`` ``radio`` field | +-------------+---------------------------------------------------------------------+ -| Inherited | from the :doc:`checkbox ` type: | +| Inherited | from the :doc:`CheckboxType `: | | options | | | | - `value`_ | | | | -| | from the :doc:`form ` type: | +| | from the :doc:`FormType `: | | | | | | - `data`_ | | | - `disabled`_ | @@ -33,7 +33,7 @@ If you want to have a boolean field, use :doc:`checkbox ` | +| Parent type | :doc:`CheckboxType ` | +-------------+---------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\RadioType` | +-------------+---------------------------------------------------------------------+ @@ -41,13 +41,11 @@ If you want to have a boolean field, use :doc:`checkbox ` -type: +These options inherit from the :doc:`CheckboxType `: .. include:: /reference/forms/types/options/value.rst.inc -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/range.rst b/reference/forms/types/range.rst index 0a1e8bb855a..a59082adb78 100644 --- a/reference/forms/types/range.rst +++ b/reference/forms/types/range.rst @@ -1,10 +1,10 @@ .. index:: - single: Forms; Fields; range + single: Forms; Fields; RangeType -range Field Type -================ +RangeType Field +=============== -The ``range`` field is a slider that is rendered using the HTML5 +The ``RangeType`` field is a slider that is rendered using the HTML5 ```` tag. +-------------+---------------------------------------------------------------------+ @@ -22,7 +22,7 @@ The ``range`` field is a slider that is rendered using the HTML5 | | - `required`_ | | | - `trim`_ | +-------------+---------------------------------------------------------------------+ -| Parent type | :doc:`text ` | +| Parent type | :doc:`TextType ` | +-------------+---------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\RangeType` | +-------------+---------------------------------------------------------------------+ @@ -45,8 +45,7 @@ Basic Usage Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/attr.rst.inc diff --git a/reference/forms/types/repeated.rst b/reference/forms/types/repeated.rst index b091cb33fb2..8c7bca02a87 100644 --- a/reference/forms/types/repeated.rst +++ b/reference/forms/types/repeated.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; repeated + single: Forms; Fields; RepeatedType -repeated Field Type -=================== +RepeatedType Field +================== This is a special field "group", that creates two identical fields whose values must match (or a validation error is thrown). The most common use @@ -28,7 +28,7 @@ accuracy. | | - `invalid_message_parameters`_ | | | - `mapped`_ | +-------------+------------------------------------------------------------------------+ -| Parent type | :doc:`form ` | +| Parent type | :doc:`FormType ` | +-------------+------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\RepeatedType` | +-------------+------------------------------------------------------------------------+ @@ -39,10 +39,11 @@ Example Usage .. code-block:: php use Symfony\Component\Form\Extension\Core\Type\RepeatedType; + use Symfony\Component\Form\Extension\Core\Type\PasswordType; // ... $builder->add('password', RepeatedType::class, array( - 'type' => 'password', + 'type' => PasswordType::class, 'invalid_message' => 'The password fields must match.', 'options' => array('attr' => array('class' => 'password-field')), 'required' => true, @@ -58,7 +59,7 @@ single value (usually a string) that you need. The most important option is ``type``, which can be any field type and determines the actual type of the two underlying fields. The ``options`` option is passed to each of those individual fields, meaning - in this example - any -option supported by the ``password`` type can be passed in this array. +option supported by the ``PasswordType`` can be passed in this array. Rendering ~~~~~~~~~ @@ -120,7 +121,7 @@ first_name This is the actual field name to be used for the first field. This is mostly meaningless, however, as the actual data entered into both of the fields -will be available under the key assigned to the ``repeated`` field itself +will be available under the key assigned to the ``RepeatedType`` field itself (e.g. ``password``). However, if you don't specify a label, this field name is used to "guess" the label for you. @@ -150,7 +151,7 @@ This options array will be passed to each of the two underlying fields. In other words, these are the options that customize the individual field types. For example, if the ``type`` option is set to ``password``, this array might contain the options ``always_empty`` or ``required`` - both -options that are supported by the ``password`` field type. +options that are supported by the ``PasswordType`` field. second_name ~~~~~~~~~~~ @@ -174,7 +175,7 @@ type **type**: ``string`` **default**: ``text`` The two underlying fields will be of this field type. For example, passing -a type of ``password`` will render two password fields. +``PasswordType::class`` will render two password fields. Overridden Options ------------------ @@ -187,8 +188,7 @@ error_bubbling Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/reset.rst b/reference/forms/types/reset.rst index 20b2d9dad70..c3f7c215221 100644 --- a/reference/forms/types/reset.rst +++ b/reference/forms/types/reset.rst @@ -1,11 +1,11 @@ .. index:: - single: Forms; Fields; reset + single: Forms; Fields; ResetType -reset Field Type -================ +ResetType Field +=============== .. versionadded:: 2.3 - The ``reset`` type was introduced in Symfony 2.3 + The ``ResetType`` was introduced in Symfony 2.3 A button that resets all fields to their original values. @@ -18,7 +18,7 @@ A button that resets all fields to their original values. | | - `label_attr`_ | | | - `translation_domain`_ | +----------------------+---------------------------------------------------------------------+ -| Parent type | :doc:`button` | +| Parent type | :doc:`ButtonType ` | +----------------------+---------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\ResetType` | +----------------------+---------------------------------------------------------------------+ diff --git a/reference/forms/types/search.rst b/reference/forms/types/search.rst index 69f4f449734..52b23077768 100644 --- a/reference/forms/types/search.rst +++ b/reference/forms/types/search.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; search + single: Forms; Fields; SearchType -search Field Type -================= +SearchType Field +================ This renders an ```` field, which is a text box with special functionality supported by some browsers. @@ -24,7 +24,7 @@ Read about the input search field at `DiveIntoHTML5.info`_ | | - `required`_ | | | - `trim`_ | +-------------+----------------------------------------------------------------------+ -| Parent type | :doc:`text ` | +| Parent type | :doc:`TextType ` | +-------------+----------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\SearchType` | +-------------+----------------------------------------------------------------------+ @@ -32,8 +32,7 @@ Read about the input search field at `DiveIntoHTML5.info`_ Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/disabled.rst.inc diff --git a/reference/forms/types/submit.rst b/reference/forms/types/submit.rst index e8722f8dd0b..aa0d466f06b 100644 --- a/reference/forms/types/submit.rst +++ b/reference/forms/types/submit.rst @@ -1,11 +1,11 @@ .. index:: - single: Forms; Fields; submit + single: Forms; Fields; SubmitType -submit Field Type -================= +SubmitType Field +================ .. versionadded:: 2.3 - The ``submit`` type was introduced in Symfony 2.3 + The ``SubmitType`` type was introduced in Symfony 2.3 A submit button. @@ -19,7 +19,7 @@ A submit button. | | - `translation_domain`_ | | | - `validation_groups`_ | +----------------------+----------------------------------------------------------------------+ -| Parent type | :doc:`button` | +| Parent type | :doc:`ButtonType` | +----------------------+----------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\SubmitType` | +----------------------+----------------------------------------------------------------------+ diff --git a/reference/forms/types/text.rst b/reference/forms/types/text.rst index 38d1f784a8d..403d5556979 100644 --- a/reference/forms/types/text.rst +++ b/reference/forms/types/text.rst @@ -1,10 +1,10 @@ .. index:: - single: Forms; Fields; text + single: Forms; Fields; TextType -text Field Type -=============== +TextType Field +============== -The text field represents the most basic input text field. +The TextType field represents the most basic input text field. +-------------+--------------------------------------------------------------------+ | Rendered as | ``input`` ``text`` field | @@ -25,7 +25,7 @@ The text field represents the most basic input text field. | Overridden | - `compound`_ | | options | | +-------------+--------------------------------------------------------------------+ -| Parent type | :doc:`form ` | +| Parent type | :doc:`FormType ` | +-------------+--------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\TextType` | +-------------+--------------------------------------------------------------------+ @@ -33,8 +33,7 @@ The text field represents the most basic input text field. Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/textarea.rst b/reference/forms/types/textarea.rst index 18ce38f4a4b..51d14af113e 100644 --- a/reference/forms/types/textarea.rst +++ b/reference/forms/types/textarea.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; textarea + single: Forms; Fields; TextareaType -textarea Field Type -=================== +TextareaType Field +================== Renders a ``textarea`` HTML element. @@ -23,7 +23,7 @@ Renders a ``textarea`` HTML element. | | - `required`_ | | | - `trim`_ | +-------------+------------------------------------------------------------------------+ -| Parent type | :doc:`text ` | +| Parent type | :doc:`TextType ` | +-------------+------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\TextareaType` | +-------------+------------------------------------------------------------------------+ @@ -31,8 +31,7 @@ Renders a ``textarea`` HTML element. Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/attr.rst.inc diff --git a/reference/forms/types/time.rst b/reference/forms/types/time.rst index e3a4b405a5e..868555bddae 100644 --- a/reference/forms/types/time.rst +++ b/reference/forms/types/time.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; time + single: Forms; Fields; TimeType -time Field Type -=============== +TimeType Field +============== A field to capture time input. @@ -41,7 +41,7 @@ stored as a ``DateTime`` object, a string, a timestamp or an array. | | - `mapped`_ | | | - `read_only`_ (deprecated as of 2.8) | +----------------------+-----------------------------------------------------------------------------+ -| Parent type | form | +| Parent type | FormType | +----------------------+-----------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\TimeType` | +----------------------+-----------------------------------------------------------------------------+ @@ -53,7 +53,7 @@ This field type is highly configurable, but easy to use. The most important options are ``input`` and ``widget``. Suppose that you have a ``startTime`` field whose underlying time data is -a ``DateTime`` object. The following configures the ``time`` type for that +a ``DateTime`` object. The following configures the ``TimeType`` for that field as two different choice fields:: use Symfony\Component\Form\Extension\Core\Type\TimeType; @@ -68,7 +68,7 @@ The ``input`` option *must* be changed to match the type of the underlying date data. For example, if the ``startTime`` field's data were a unix timestamp, you'd need to set ``input`` to ``timestamp``:: - use Symfony\Component\Form\Extension\Core\Type\ChoiceType; + use Symfony\Component\Form\Extension\Core\Type\TimeType; // ... $builder->add('startTime', TimeType::class, array( @@ -162,8 +162,7 @@ error_bubbling Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/timezone.rst b/reference/forms/types/timezone.rst index d23ba791b0b..835e7d719c7 100644 --- a/reference/forms/types/timezone.rst +++ b/reference/forms/types/timezone.rst @@ -1,19 +1,18 @@ .. index:: - single: Forms; Fields; timezone + single: Forms; Fields; TimezoneType -timezone Field Type -=================== +TimezoneType Field +================== -The ``timezone`` type is a subset of the ``ChoiceType`` that allows the +The ``TimezoneType`` is a subset of the ``ChoiceType`` that allows the user to select from all possible timezones. The "value" for each timezone is the full timezone name, such as ``America/Chicago`` or ``Europe/Istanbul``. -Unlike the ``choice`` type, you don't need to specify a ``choices`` or -``choice_list`` option as the field type automatically uses a large list -of timezones. You *can* specify either of these options manually, but then -you should just use the ``choice`` type directly. +Unlike the ``ChoiceType``, you don't need to specify a ``choices`` option as the +field type automatically uses a large list of timezones. You *can* specify the option +manually, but then you should just use the ``ChoiceType`` directly. +-------------+------------------------------------------------------------------------+ | Rendered as | can be various tags (see :ref:`forms-reference-choice-tags`) | @@ -21,14 +20,14 @@ you should just use the ``choice`` type directly. | Overridden | - `choices`_ | | options | | +-------------+------------------------------------------------------------------------+ -| Inherited | from the :doc:`choice ` type | +| Inherited | from the :doc:`ChoiceType ` | | options | | | | - `placeholder`_ | | | - `expanded`_ | | | - `multiple`_ | | | - `preferred_choices`_ | | | | -| | from the :doc:`form ` type | +| | from the :doc:`FormType ` | | | | | | - `data`_ | | | - `disabled`_ | @@ -41,7 +40,7 @@ you should just use the ``choice`` type directly. | | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------+ -| Parent type | :doc:`choice ` | +| Parent type | :doc:`ChoiceType ` | +-------------+------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\TimezoneType` | +-------------+------------------------------------------------------------------------+ @@ -52,7 +51,7 @@ Overridden Options choices ~~~~~~~ -**default**: :class:`Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\TimezoneChoiceList` +**default**: An array of timezones. The Timezone type defaults the choices to all timezones returned by :phpmethod:`DateTimeZone::listIdentifiers`, broken down by continent. @@ -60,8 +59,7 @@ The Timezone type defaults the choices to all timezones returned by Inherited Options ----------------- -These options inherit from the :doc:`choice ` -type: +These options inherit from the :doc:`ChoiceType `: .. include:: /reference/forms/types/options/placeholder.rst.inc @@ -71,8 +69,7 @@ type: .. include:: /reference/forms/types/options/preferred_choices.rst.inc -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/url.rst b/reference/forms/types/url.rst index ff4656dd6ed..e34ca991ebc 100644 --- a/reference/forms/types/url.rst +++ b/reference/forms/types/url.rst @@ -1,10 +1,10 @@ .. index:: - single: Forms; Fields; url + single: Forms; Fields; UrlType -url Field Type -============== +UrlType Field +============= -The ``url`` field is a text field that prepends the submitted value with +The ``UrlType`` field is a text field that prepends the submitted value with a given protocol (e.g. ``http://``) if the submitted value doesn't already have a protocol. @@ -26,7 +26,7 @@ have a protocol. | | - `required`_ | | | - `trim`_ | +-------------+-------------------------------------------------------------------+ -| Parent type | :doc:`text ` | +| Parent type | :doc:`TextType ` | +-------------+-------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\UrlType` | +-------------+-------------------------------------------------------------------+ @@ -46,8 +46,7 @@ the data is submitted to the form. Inherited Options ----------------- -These options inherit from the :doc:`form ` -type: +These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/data.rst.inc From d1314492ce84e2aad922599a8a942005c2fc79e0 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 29 Nov 2015 22:51:07 -0500 Subject: [PATCH 099/235] several other tweaks --- book/forms.rst | 5 +++-- cookbook/form/create_form_type_extension.rst | 2 +- reference/forms/types.rst | 2 ++ 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/book/forms.rst b/book/forms.rst index 95ffabc0656..e6f3a062851 100644 --- a/book/forms.rst +++ b/book/forms.rst @@ -127,9 +127,10 @@ which HTML form tag(s) is rendered for that field. .. versionadded:: 2.8 To denote the form type, you have to use the fully qualified class name - like - TextType::class in PHP 5.5+ or ``Symfony\Component\Form\Extension\Core\Type\TextType``. + ``TextType::class`` in PHP 5.5+ or ``Symfony\Component\Form\Extension\Core\Type\TextType``. Before Symfony 2.8, you could use an alias for each type like ``text`` or - ``date``. For more details, see the `2.8 UPGRADE Log`_. + ``date``. The old alias syntax will still work until Symfony 3.0. For more details, + see the `2.8 UPGRADE Log`_. Finally, you added a submit button with a custom label for submitting the form to the server. diff --git a/cookbook/form/create_form_type_extension.rst b/cookbook/form/create_form_type_extension.rst index 11009d5922f..df290c1e4f4 100644 --- a/cookbook/form/create_form_type_extension.rst +++ b/cookbook/form/create_form_type_extension.rst @@ -113,7 +113,7 @@ tag: - + .. code-block:: php diff --git a/reference/forms/types.rst b/reference/forms/types.rst index 6dbfb54010c..9e8426de693 100644 --- a/reference/forms/types.rst +++ b/reference/forms/types.rst @@ -65,3 +65,5 @@ Supported Field Types The following field types are natively available in Symfony: .. include:: /reference/forms/types/map.rst.inc + +.. _`2.8 UPGRADE Log`: https://github.com/symfony/symfony/blob/2.8/UPGRADE-2.8.md#form From b09431276b293737a82467a889256470786dde87 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 29 Nov 2015 22:58:49 -0500 Subject: [PATCH 100/235] language tweak --- book/routing.rst | 2 +- book/templating.rst | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/book/routing.rst b/book/routing.rst index b57ad003e2e..9ffbd210933 100644 --- a/book/routing.rst +++ b/book/routing.rst @@ -1577,7 +1577,7 @@ URL) rather than the ``path()`` function (which generates a relative URL): The ``url()`` PHP templating helper was introduced in Symfony 2.8. Prior to 2.8, you had to use the ``generate()`` helper method with ``Symfony\Component\Routing\Generator\UrlGeneratorInterface::ABSOLUTE_URL`` - passed as third argument. + passed as the third argument. .. note:: diff --git a/book/templating.rst b/book/templating.rst index 8f558e5cf40..f50085219c1 100644 --- a/book/templating.rst +++ b/book/templating.rst @@ -711,7 +711,7 @@ tags: + passed as the third argument. --> render( $view['router']->url('...'), array('renderer' => 'hinclude') @@ -1032,7 +1032,7 @@ correctly: The ``url()`` PHP templating helper was introduced in Symfony 2.8. Prior to 2.8, you had to use the ``generate()`` helper method with ``Symfony\Component\Routing\Generator\UrlGeneratorInterface::ABSOLUTE_URL`` - passed as third argument. + passed as the third argument. .. index:: single: Templating; Linking to assets From 31f6e3dced4d802a20981589d6cc2971e8e38a22 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 29 Nov 2015 23:08:17 -0500 Subject: [PATCH 101/235] Many tweaks thanks to a great review --- cookbook/security/voters.rst | 32 ++++++++++++++++++-------------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/cookbook/security/voters.rst b/cookbook/security/voters.rst index 1d43feddf7a..1750f2e8025 100644 --- a/cookbook/security/voters.rst +++ b/cookbook/security/voters.rst @@ -46,7 +46,7 @@ which makes creating a voter even easier. abstract protected function voteOnAttribute($attribute, $subject, TokenInterface $token); } -.. versionadded:: +.. versionadded:: 2.8 The ``Voter`` helper class was added in Symfony 2.8. In earlier versions, an ``AbstractVoter`` class with similar behavior was available. @@ -150,7 +150,7 @@ would look like this:: return false; } - // we know $subject is a Post object, thanks to supports + // you know $subject is a Post object, thanks to supports /** @var Post $post */ $post = $subject; @@ -172,7 +172,7 @@ would look like this:: } // the Post object could have, for example, a method isPrivate() - // that checks a Boolean $private property + // that checks a boolean $private property return !$post->isPrivate(); } @@ -191,7 +191,7 @@ To recap, here's what's expected from the two abstract methods: ``Voter::supports($attribute, $subject)`` When ``isGranted()`` (or ``denyAccessUnlessGranted()``) is called, the first argument is passed here as ``$attribute`` (e.g. ``ROLE_USER``, ``edit``) and - the second argument (if any) is passed as ```$subject`` (e.g. ``null``, a ``Post`` + the second argument (if any) is passed as ``$subject`` (e.g. ``null``, a ``Post`` object). Your job is to determine if your voter should vote on the attribute/subject combination. If you return true, ``voteOnAttribute()`` will be called. Otherwise, your voter is done: some other voter should process this. In this example, you @@ -222,6 +222,8 @@ and tag it with ``security.voter``: class: AppBundle\Security\PostVoter tags: - { name: security.voter } + # small performance boost + public: false .. code-block:: xml @@ -234,7 +236,7 @@ and tag it with ``security.voter``: @@ -248,7 +250,7 @@ and tag it with ``security.voter``: // app/config/services.php use Symfony\Component\DependencyInjection\Definition; - $container->register('app.post_voter', 'AppBundle\Security\Authorization\Voter\PostVoter') + $container->register('app.post_voter', 'AppBundle\Security\PostVoter') ->setPublic(false) ->addTag('security.voter') ; @@ -265,14 +267,15 @@ Checking for Roles inside a Voter ``service_container`` itself and fetch out the ``security.authorization_checker`` to use ``isGranted()``. -What if you want to call ``isGranted()`` fomr *inside* your voter - e.g. you want +What if you want to call ``isGranted()`` from *inside* your voter - e.g. you want to see if the current user has ``ROLE_SUPER_ADMIN``. That's possible by injecting -the ``AccessDecisionManager`` into your voter. You can use this to, for example, -*always* allow access to a user with ``ROLE_SUPER_ADMIN``:: +the :class:`Symfony\\Component\\Security\\Core\\Authorization\\AccessDecisionManager` +into your voter. You can use this to, for example, *always* allow access to a user +with ``ROLE_SUPER_ADMIN``:: // src/AppBundle/Security/PostVoter.php - // ... + // ... use Symfony\Component\Security\Core\Authorization\AccessDecisionManagerInterface; class PostVoter extends Voter @@ -311,6 +314,7 @@ service: app.post_voter: class: AppBundle\Security\PostVoter arguments: ['@security.access.decision_manager'] + public: false tags: - { name: security.voter } @@ -325,7 +329,7 @@ service: @@ -341,15 +345,15 @@ service: use Symfony\Component\DependencyInjection\Definition; use Symfony\Component\DependencyInjection\Reference; - $container->register('app.post_voter', 'AppBundle\Security\Authorization\Voter\PostVoter') + $container->register('app.post_voter', 'AppBundle\Security\PostVoter') ->addArgument(new Reference('security.access.decision_manager')) ->setPublic(false) ->addTag('security.voter') ; That's it! Calling ``decide()`` on the ``AccessDecisionManager`` is essentially -the same as calling ``isGranted()`` on the normal ``security.authorization_checker`` -service (it's just a little lower-level, which is necessary for a voter). +the same as calling ``isGranted()`` from a controller or other places +(it's just a little lower-level, which is necessary for a voter). .. note:: From 41670b00f61b93c4071a50f0540fb8cf16209d73 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 29 Nov 2015 23:19:23 -0500 Subject: [PATCH 102/235] [#5922] Tweaks thanks to reviewers --- cookbook/map.rst.inc | 1 + cookbook/service_container/shared.rst | 11 ++++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/cookbook/map.rst.inc b/cookbook/map.rst.inc index 7917f2e1a54..73587ee5d47 100644 --- a/cookbook/map.rst.inc +++ b/cookbook/map.rst.inc @@ -193,6 +193,7 @@ * :doc:`/cookbook/service_container/index` + * :doc:`/cookbook/service_container/shared` * :doc:`/cookbook/service_container/scopes` * :doc:`/cookbook/service_container/compiler_passes` * (Event Dispatcher) :doc:`/cookbook/event_dispatcher/event_listener` diff --git a/cookbook/service_container/shared.rst b/cookbook/service_container/shared.rst index 205afd7028d..92844d1958f 100644 --- a/cookbook/service_container/shared.rst +++ b/cookbook/service_container/shared.rst @@ -1,7 +1,7 @@ .. index:: single: Service Container; Shared Services -How to Define Not Shared Services +How to Define Non Shared Services ================================= .. versionadded:: 2.8 @@ -10,7 +10,7 @@ How to Define Not Shared Services In the service container, all services are shared by default. This means that each time you retrieve the service, you'll get the *same* instance. This is -often the behaviour you want, but in some cases, you might want to always get a +often the behavior you want, but in some cases, you might want to always get a *new* instance. In order to always get a new instance, set the ``shared`` setting to ``false`` @@ -20,6 +20,7 @@ in your service definition: .. code-block:: yaml + # app/config/services.yml services: app.some_not_shared_service: class: ... @@ -28,16 +29,20 @@ in your service definition: .. code-block:: xml + .. code-block:: php + use Symfony\Component\DependencyInjection\Definition; + + // app/config/services.php $definition = new Definition('...'); $definition->setShared(false); $container->setDefinition('app.some_not_shared_service', $definition); Now, whenever you call ``$container->get('app.some_not_shared_service')`` or -inject this service, you'll recieve a new instance. +inject this service, you'll receive a new instance. From d62fa0a742a2f58440f8f70cec1cd99a5e628621 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 29 Nov 2015 23:27:17 -0500 Subject: [PATCH 103/235] Finding more old form references --- best_practices/forms.rst | 2 +- book/forms.rst | 6 +++--- cookbook/doctrine/file_uploads.rst | 4 ++-- cookbook/form/data_transformers.rst | 2 +- cookbook/form/form_collections.rst | 2 +- reference/constraints/File.rst | 6 +++--- reference/constraints/Image.rst | 2 +- reference/forms/types/options/by_reference.rst.inc | 4 ++-- reference/forms/types/options/invalid_message.rst.inc | 2 +- 9 files changed, 15 insertions(+), 15 deletions(-) diff --git a/best_practices/forms.rst b/best_practices/forms.rst index e942a40854c..d68418d71b5 100644 --- a/best_practices/forms.rst +++ b/best_practices/forms.rst @@ -67,7 +67,7 @@ You can also :ref:`register your form type as a service `. But this is *not* recommended unless you plan to reuse the new form type in many places or embed it in other forms directly or via the -:doc:`collection type `. +:doc:`CollectionType `. For most forms that are used only to edit or create something, registering the form as a service is over-kill, and makes it more difficult to figure diff --git a/book/forms.rst b/book/forms.rst index 599ef7dae91..cab2b60a11b 100644 --- a/book/forms.rst +++ b/book/forms.rst @@ -678,7 +678,7 @@ Field Type Options Each field type has a number of options that can be used to configure it. For example, the ``dueDate`` field is currently being rendered as 3 select -boxes. However, the :doc:`date field ` can be +boxes. However, the :doc:`DateType ` can be configured to be rendered as a single text box (where the user would enter the date as a string in the box):: @@ -1430,7 +1430,7 @@ form with many ``Product`` sub-forms). This is done by using the ``collection`` field type. For more information see the ":doc:`/cookbook/form/form_collections`" cookbook -entry and the :doc:`collection ` field type reference. +entry and the :doc:`CollectionType ` reference. .. index:: single: Forms; Theming @@ -1964,7 +1964,7 @@ Learn more from the Cookbook ---------------------------- * :doc:`/cookbook/doctrine/file_uploads` -* :doc:`File Field Reference ` +* :doc:`FileType Reference ` * :doc:`Creating Custom Field Types ` * :doc:`/cookbook/form/form_customization` * :doc:`/cookbook/form/dynamic_form_modification` diff --git a/cookbook/doctrine/file_uploads.rst b/cookbook/doctrine/file_uploads.rst index 081100a218c..2615a1a8f2b 100644 --- a/cookbook/doctrine/file_uploads.rst +++ b/cookbook/doctrine/file_uploads.rst @@ -14,7 +14,7 @@ How to Handle File Uploads with Doctrine Handling file uploads with Doctrine entities is no different than handling any other file upload. In other words, you're free to move the file in your controller after handling a form submission. For examples of how to do this, -see the :doc:`file type reference ` page. +see the :doc:`FileType reference ` page. If you choose to, you can also integrate the file upload into your entity lifecycle (i.e. creation, update and removal). In this case, as your entity @@ -98,7 +98,7 @@ file. .. tip:: If you have not done so already, you should probably read the - :doc:`file ` type documentation first to + :doc:`FileType ` documentation first to understand how the basic upload process works. .. note:: diff --git a/cookbook/form/data_transformers.rst b/cookbook/form/data_transformers.rst index c63bce0e54f..c1eeaa5781c 100644 --- a/cookbook/form/data_transformers.rst +++ b/cookbook/form/data_transformers.rst @@ -6,7 +6,7 @@ How to Use Data Transformers Data transformers are used to translate the data for a field into a format that can be displayed in a form (and back on submit). They're already used internally for -many field types. For example, the :doc:`date field type ` +many field types. For example, the :doc:`DateType ` field can be rendered as a ``yyyy-MM-dd``-formatted input textbox. Internally, a data transformer converts the starting ``DateTime`` value of the field into the ``yyyy-MM-dd`` string to render the form, and then back into a ``DateTime`` object on submit. diff --git a/cookbook/form/form_collections.rst b/cookbook/form/form_collections.rst index 8779406f239..af2728b3aa6 100644 --- a/cookbook/form/form_collections.rst +++ b/cookbook/form/form_collections.rst @@ -106,7 +106,7 @@ goal is to allow the tags of a ``Task`` to be modified right inside the task form itself, create a form for the ``Task`` class. Notice that you embed a collection of ``TagType`` forms using the -:doc:`collection ` field type:: +:doc:`CollectionType ` field:: // src/AppBundle/Form/Type/TaskType.php namespace AppBundle\Form\Type; diff --git a/reference/constraints/File.rst b/reference/constraints/File.rst index 2b975cf8369..2ff8a081ee7 100644 --- a/reference/constraints/File.rst +++ b/reference/constraints/File.rst @@ -8,8 +8,8 @@ Validates that a value is a valid "file", which can be one of the following: * A valid :class:`Symfony\\Component\\HttpFoundation\\File\\File` object (including objects of class :class:`Symfony\\Component\\HttpFoundation\\File\\UploadedFile`). -This constraint is commonly used in forms with the :doc:`file ` -form type. +This constraint is commonly used in forms with the :doc:`FileType ` +form field. .. tip:: @@ -41,7 +41,7 @@ Basic Usage ----------- This constraint is most commonly used on a property that will be rendered -in a form as a :doc:`file ` form type. For +in a form as a :doc:`FileType ` field. For example, suppose you're creating an author form where you can upload a "bio" PDF for the author. In your form, the ``bioFile`` property would be a ``file`` type. The ``Author`` class might look as follows:: diff --git a/reference/constraints/Image.rst b/reference/constraints/Image.rst index 85cf5473134..0720326c0a3 100644 --- a/reference/constraints/Image.rst +++ b/reference/constraints/Image.rst @@ -46,7 +46,7 @@ Basic Usage ----------- This constraint is most commonly used on a property that will be rendered -in a form as a :doc:`file ` form type. For +in a form as a :doc:`FileType ` field. For example, suppose you're creating an author form where you can upload a "headshot" image for the author. In your form, the ``headshot`` property would be a ``file`` type. The ``Author`` class might look as follows:: diff --git a/reference/forms/types/options/by_reference.rst.inc b/reference/forms/types/options/by_reference.rst.inc index 6055ff8508b..865d38213ee 100644 --- a/reference/forms/types/options/by_reference.rst.inc +++ b/reference/forms/types/options/by_reference.rst.inc @@ -43,8 +43,8 @@ If you set ``by_reference`` to false, submitting looks like this:: So, all that ``by_reference=false`` really does is force the framework to call the setter on the parent object. -Similarly, if you're using the :doc:`collection` -form type where your underlying collection data is an object (like with +Similarly, if you're using the :doc:`CollectionType ` +field where your underlying collection data is an object (like with Doctrine's ``ArrayCollection``), then ``by_reference`` must be set to ``false`` if you need the adder and remover (e.g. ``addAuthor()`` and ``removeAuthor()``) to be called. diff --git a/reference/forms/types/options/invalid_message.rst.inc b/reference/forms/types/options/invalid_message.rst.inc index d96705bf7d2..07e0de74267 100644 --- a/reference/forms/types/options/invalid_message.rst.inc +++ b/reference/forms/types/options/invalid_message.rst.inc @@ -7,7 +7,7 @@ This is the validation error message that's used if the data entered into this field doesn't make sense (i.e. fails validation). This might happen, for example, if the user enters a nonsense string into -a :doc:`time` field that cannot be converted +a :doc:`TimeType ` field that cannot be converted into a real time or if the user enters a string (e.g. ``apple``) into a number field. From 81c7572a415ba8ef58d7cc974b9e58a4af985eb1 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 17:34:38 +0100 Subject: [PATCH 104/235] Removed scopes article --- book/service_container.rst | 1 - cookbook/map.rst.inc | 1 - cookbook/service_container/index.rst | 1 - cookbook/service_container/scopes.rst | 249 -------------------------- 4 files changed, 252 deletions(-) delete mode 100644 cookbook/service_container/scopes.rst diff --git a/book/service_container.rst b/book/service_container.rst index 2c777c8106e..a061b68945e 100644 --- a/book/service_container.rst +++ b/book/service_container.rst @@ -1182,7 +1182,6 @@ Learn more * :doc:`/components/dependency_injection/parentservices` * :doc:`/components/dependency_injection/tags` * :doc:`/cookbook/controller/service` -* :doc:`/cookbook/service_container/scopes` * :doc:`/cookbook/service_container/compiler_passes` * :doc:`/components/dependency_injection/advanced` diff --git a/cookbook/map.rst.inc b/cookbook/map.rst.inc index 98496abd7be..b175020f713 100644 --- a/cookbook/map.rst.inc +++ b/cookbook/map.rst.inc @@ -194,7 +194,6 @@ * :doc:`/cookbook/service_container/index` * :doc:`/cookbook/service_container/shared` - * :doc:`/cookbook/service_container/scopes` * :doc:`/cookbook/service_container/compiler_passes` * (Event Dispatcher) :doc:`/cookbook/event_dispatcher/event_listener` diff --git a/cookbook/service_container/index.rst b/cookbook/service_container/index.rst index f0166e75fd8..4c341ae4c1d 100644 --- a/cookbook/service_container/index.rst +++ b/cookbook/service_container/index.rst @@ -5,5 +5,4 @@ Service Container :maxdepth: 2 shared - scopes compiler_passes diff --git a/cookbook/service_container/scopes.rst b/cookbook/service_container/scopes.rst deleted file mode 100644 index 50e644b12f2..00000000000 --- a/cookbook/service_container/scopes.rst +++ /dev/null @@ -1,249 +0,0 @@ -.. index:: - single: DependencyInjection; Scopes - -How to Work with Scopes -======================= - -.. caution:: - - The "container scopes" concept explained in this article has been deprecated - in Symfony 2.8 and it will be removed in Symfony 3.0. - - Use the ``request_stack`` service (introduced in Symfony 2.4) instead of - the ``request`` service/scope and use the ``shared`` setting (introduced in - Symfony 2.8) instead of the ``prototype`` scope - (:doc:`read more about shared services `). - -This article is all about scopes, a somewhat advanced topic related to the -:doc:`/book/service_container`. If you've ever gotten an error mentioning -"scopes" when creating services, then this article is for you. - -.. note:: - - If you are trying to inject the ``request`` service, the simple solution - is to inject the ``request_stack`` service instead and access the current - Request by calling the - :method:`Symfony\\Component\\HttpFoundation\\RequestStack::getCurrentRequest` - method (see :ref:`book-container-request-stack`). The rest of this entry - talks about scopes in a theoretical and more advanced way. If you're - dealing with scopes for the ``request`` service, simply inject ``request_stack``. - -Understanding Scopes --------------------- - -The scope of a service controls how long an instance of a service is used -by the container. The DependencyInjection component provides two generic -scopes: - -``container`` (the default one): - The same instance is used each time you ask for it from this container. - -``prototype``: - A new instance is created each time you ask for the service. - -The -:class:`Symfony\\Component\\HttpKernel\\DependencyInjection\\ContainerAwareHttpKernel` -also defines a third scope: ``request``. This scope is tied to the request, -meaning a new instance is created for each subrequest and is unavailable -outside the request (for instance in the CLI). - -An Example: Client Scope -~~~~~~~~~~~~~~~~~~~~~~~~ - -Other than the ``request`` service (which has a simple solution, see the -above note), no services in the default Symfony container belong to any -scope other than ``container`` and ``prototype``. But for the purposes of -this article, imagine there is another scope ``client`` and a service ``client_configuration`` -that belongs to it. This is not a common situation, but the idea is that -you may enter and exit multiple ``client`` scopes during a request, and each -has its own ``client_configuration`` service. - -Scopes add a constraint on the dependencies of a service: a service cannot -depend on services from a narrower scope. For example, if you create a generic -``my_foo`` service, but try to inject the ``client_configuration`` service, -you will receive a -:class:`Symfony\\Component\\DependencyInjection\\Exception\\ScopeWideningInjectionException` -when compiling the container. Read the sidebar below for more details. - -.. sidebar:: Scopes and Dependencies - - Imagine you've configured a ``my_mailer`` service. You haven't configured - the scope of the service, so it defaults to ``container``. In other words, - every time you ask the container for the ``my_mailer`` service, you get - the same object back. This is usually how you want your services to work. - - Imagine, however, that you need the ``client_configuration`` service - in your ``my_mailer`` service, maybe because you're reading some details - from it, such as what the "sender" address should be. You add it as a - constructor argument. There are several reasons why this presents a problem: - - * When requesting ``my_mailer``, an instance of ``my_mailer`` (called - *MailerA* here) is created and the ``client_configuration`` service ( - called *ConfigurationA* here) is passed to it. Life is good! - - * Your application now needs to do something with another client, and - you've designed your application in such a way that you handle this - by entering a new ``client_configuration`` scope and setting a new - ``client_configuration`` service into the container. Call this - *ConfigurationB*. - - * Somewhere in your application, you once again ask for the ``my_mailer`` - service. Since your service is in the ``container`` scope, the same - instance (*MailerA*) is just re-used. But here's the problem: the - *MailerA* instance still contains the old *ConfigurationA* object, which - is now **not** the correct configuration object to have (*ConfigurationB* - is now the current ``client_configuration`` service). This is subtle, - but the mis-match could cause major problems, which is why it's not - allowed. - - So, that's the reason *why* scopes exist, and how they can cause - problems. Keep reading to find out the common solutions. - -.. note:: - - A service can of course depend on a service from a wider scope without - any issue. - -Using a Service from a Narrower Scope -------------------------------------- - -There are two solutions to the scope problem: - -* A) Put your service in the same scope as the dependency (or a narrower one). If - you depend on the ``client_configuration`` service, this means putting your - new service in the ``client`` scope (see :ref:`changing-service-scope`); - -* B) Pass the entire container to your service and retrieve your dependency from - the container each time you need it to be sure you have the right instance - -- your service can live in the default ``container`` scope (see - :ref:`passing-container`). - -Each scenario is detailed in the following sections. - -.. _using-synchronized-service: - -.. note:: - - Prior to Symfony 2.7, there was another alternative based on ``synchronized`` - services. However, these kind of services have been deprecated starting from - Symfony 2.7. - -.. _changing-service-scope: - -A) Changing the Scope of your Service -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Changing the scope of a service should be done in its definition. This example -assumes that the ``Mailer`` class has a ``__construct`` function whose first -argument is the ``ClientConfiguration`` object: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/services.yml - services: - my_mailer: - class: AppBundle\Mail\Mailer - scope: client - arguments: ["@client_configuration"] - - .. code-block:: xml - - - - - - - - - .. code-block:: php - - // app/config/services.php - use Symfony\Component\DependencyInjection\Definition; - - $definition = $container->setDefinition( - 'my_mailer', - new Definition( - 'AppBundle\Mail\Mailer', - array(new Reference('client_configuration'), - )) - )->setScope('client'); - -.. _passing-container: - -B) Passing the Container as a Dependency of your Service -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Setting the scope to a narrower one is not always possible (for instance, a -twig extension must be in the ``container`` scope as the Twig environment -needs it as a dependency). In these cases, you can pass the entire container -into your service:: - - // src/AppBundle/Mail/Mailer.php - namespace AppBundle\Mail; - - use Symfony\Component\DependencyInjection\ContainerInterface; - - class Mailer - { - protected $container; - - public function __construct(ContainerInterface $container) - { - $this->container = $container; - } - - public function sendEmail() - { - $request = $this->container->get('client_configuration'); - // ... do something using the client configuration here - } - } - -.. caution:: - - Take care not to store the client configuration in a property of the object - for a future call of the service as it would cause the same issue described - in the first section (except that Symfony cannot detect that you are - wrong). - -The service configuration for this class would look something like this: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/services.yml - services: - my_mailer: - class: AppBundle\Mail\Mailer - arguments: ["@service_container"] - # scope: container can be omitted as it is the default - - .. code-block:: xml - - - - - - - - - .. code-block:: php - - // app/config/services.php - use Symfony\Component\DependencyInjection\Definition; - use Symfony\Component\DependencyInjection\Reference; - - $container->setDefinition('my_mailer', new Definition( - 'AppBundle\Mail\Mailer', - array(new Reference('service_container')) - )); - -.. note:: - - Injecting the whole container into a service is generally not a good - idea (only inject what you need). From eff973345e16f768db23b515fb61d251b9595985 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 29 Nov 2015 23:29:11 -0500 Subject: [PATCH 105/235] removing more scope stuff --- book/service_container.rst | 14 -------------- components/dependency_injection/parentservices.rst | 3 +-- 2 files changed, 1 insertion(+), 16 deletions(-) diff --git a/book/service_container.rst b/book/service_container.rst index a061b68945e..261c32b4183 100644 --- a/book/service_container.rst +++ b/book/service_container.rst @@ -884,20 +884,6 @@ Now, just inject the ``request_stack``, which behaves like any normal service: array(new Reference('request_stack')) )); -.. sidebar:: Why not Inject the ``request`` Service? - - Almost all Symfony2 built-in services behave in the same way: a single - instance is created by the container which it returns whenever you get it or - when it is injected into another service. There is one exception in a standard - Symfony2 application: the ``request`` service. - - If you try to inject the ``request`` into a service, you will probably receive - a - :class:`Symfony\\Component\\DependencyInjection\\Exception\\ScopeWideningInjectionException` - exception. That's because the ``request`` can **change** during the life-time - of a container (when a sub-request is created for instance). - - .. tip:: If you define a controller as a service then you can get the ``Request`` diff --git a/components/dependency_injection/parentservices.rst b/components/dependency_injection/parentservices.rst index 9237e57ac21..968686a0ea5 100644 --- a/components/dependency_injection/parentservices.rst +++ b/components/dependency_injection/parentservices.rst @@ -277,8 +277,7 @@ called when the child services are instantiated. .. caution:: - The ``scope``, ``abstract`` and ``tags`` attributes are always taken - from the child service. + The ``abstract`` and ``tags`` attributes are always taken from the child service. The parent service is abstract as it should not be directly retrieved from the container or passed into another service. It exists merely as a "template" From 3843cda97773760850ab5208615554476f3a639d Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 29 Nov 2015 23:31:44 -0500 Subject: [PATCH 106/235] removing deprecation note on a section that was removed --- cookbook/console/console_command.rst | 5 ----- 1 file changed, 5 deletions(-) diff --git a/cookbook/console/console_command.rst b/cookbook/console/console_command.rst index 64d8c4a8d90..7b4940623f0 100644 --- a/cookbook/console/console_command.rst +++ b/cookbook/console/console_command.rst @@ -82,11 +82,6 @@ for details. Getting Services from the Service Container ------------------------------------------- -.. caution:: - - The "container scopes" concept explained in this section has been deprecated - in Symfony 2.8 and it will be removed in Symfony 3.0. - By using :class:`Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand` as the base class for the command (instead of the more basic :class:`Symfony\\Component\\Console\\Command\\Command`), you have access to the From 1a2753901edfe8a101846323577c160e3459540d Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 29 Nov 2015 23:32:31 -0500 Subject: [PATCH 107/235] removing scope reference --- create_framework/dependency-injection.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/create_framework/dependency-injection.rst b/create_framework/dependency-injection.rst index 39eaae4702e..725a8c019e1 100644 --- a/create_framework/dependency-injection.rst +++ b/create_framework/dependency-injection.rst @@ -219,7 +219,7 @@ And the related change in the front controller:: We have obviously barely scratched the surface of what you can do with the container: from class names as parameters, to overriding existing object -definitions, from scope support to dumping a container to a plain PHP class, +definitions, from shared service support to dumping a container to a plain PHP class, and much more. The Symfony dependency injection container is really powerful and is able to manage any kind of PHP class. From 3d672022a21b469f940298b7d635211b699e0363 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 29 Nov 2015 23:37:14 -0500 Subject: [PATCH 108/235] tweaks thanks to the guys --- cookbook/security/api_key_authentication.rst | 3 ++- cookbook/security/custom_password_authenticator.rst | 9 ++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/cookbook/security/api_key_authentication.rst b/cookbook/security/api_key_authentication.rst index 624fe68a6f9..7fda2bba036 100644 --- a/cookbook/security/api_key_authentication.rst +++ b/cookbook/security/api_key_authentication.rst @@ -70,7 +70,8 @@ value and then a User object is created:: $username = $userProvider->getUsernameForApiKey($apiKey); if (!$username) { - // this message will be returned to the client + // CAUTION: this message will be returned to the client + // (so don't put any un-trusted messages / error strings here) throw new CustomUserMessageAuthenticationException( sprintf('API Key "%s" does not exist.', $apiKey) ); diff --git a/cookbook/security/custom_password_authenticator.rst b/cookbook/security/custom_password_authenticator.rst index 23e6d3b123f..7853e37eb04 100644 --- a/cookbook/security/custom_password_authenticator.rst +++ b/cookbook/security/custom_password_authenticator.rst @@ -47,7 +47,8 @@ the user:: try { $user = $userProvider->loadUserByUsername($token->getUsername()); } catch (UsernameNotFoundException $e) { - // error will be shown to the client + // CAUTION: this message will be returned to the client + // (so don't put any un-trusted messages / error strings here) throw new CustomUserMessageAuthenticationException('Invalid username or password'); } @@ -56,7 +57,8 @@ the user:: if ($passwordValid) { $currentHour = date('G'); if ($currentHour < 14 || $currentHour > 16) { - // error will be shown to the client + // CAUTION: this message will be returned to the client + // (so don't put any un-trusted messages / error strings here) throw new CustomUserMessageAuthenticationException( 'You can only log in between 2 and 4!', 100 @@ -71,7 +73,8 @@ the user:: ); } - // error will be shown to the client + // CAUTION: this message will be returned to the client + // (so don't put any un-trusted messages / error strings here) throw new CustomUserMessageAuthenticationException('Invalid username or password'); } From 0e53bb580d418f7cdfef5336daaa18a6a52f3398 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 29 Nov 2015 23:50:01 -0500 Subject: [PATCH 109/235] [#5917] Adding bin --- cookbook/configuration/override_dir_structure.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/cookbook/configuration/override_dir_structure.rst b/cookbook/configuration/override_dir_structure.rst index 5982d2bf80e..e389b3ef837 100644 --- a/cookbook/configuration/override_dir_structure.rst +++ b/cookbook/configuration/override_dir_structure.rst @@ -14,6 +14,8 @@ directory structure is: ├─ app/ │ ├─ config/ │ └─ ... + ├─ bin/ + │ └─ ... ├─ src/ │ └─ ... ├─ tests/ From 3083e90a560af5dd3134b568a4d8a5de9babd183 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Mon, 30 Nov 2015 00:00:12 -0500 Subject: [PATCH 110/235] [#5917] Finding some more places with the old directory structure referenced --- book/testing.rst | 41 ++++++++----------- .../configuration/override_dir_structure.rst | 2 +- cookbook/deployment/azure-website.rst | 2 +- cookbook/deployment/platformsh.rst | 2 +- cookbook/testing/bootstrap.rst | 4 +- quick_tour/the_architecture.rst | 2 +- 6 files changed, 24 insertions(+), 29 deletions(-) diff --git a/book/testing.rst b/book/testing.rst index 59d2c2c5428..4d0a9d3613b 100644 --- a/book/testing.rst +++ b/book/testing.rst @@ -21,13 +21,12 @@ it has its own excellent `documentation`_. to use version 4.2 or higher to test the Symfony core code itself). Each test - whether it's a unit test or a functional test - is a PHP class -that should live in the ``Tests/`` subdirectory of your bundles. If you follow +that should live in the ``tests/`` directory of your application. If you follow this rule, then you can run all of your application's tests with the following command: .. code-block:: bash - # specify the configuration directory on the command line $ phpunit PHPunit is configured by the ``phpunit.xml.dist`` file in the root of your @@ -63,11 +62,11 @@ called ``Calculator`` in the ``Util/`` directory of the app bundle:: } } -To test this, create a ``CalculatorTest`` file in the ``Tests/Util`` directory +To test this, create a ``CalculatorTest`` file in the ``tests/AppBundle/Util`` directory of your bundle:: - // src/AppBundle/Tests/Util/CalculatorTest.php - namespace AppBundle\Tests\Util; + // tests/AppBundle/Util/CalculatorTest.php + namespace Tests\AppBundle\Util; use AppBundle\Util\Calculator; @@ -85,13 +84,13 @@ of your bundle:: .. note:: - By convention, the ``Tests/`` sub-directory should replicate the directory - of your bundle for unit tests. So, if you're testing a class in your - bundle's ``Util/`` directory, put the test in the ``Tests/Util/`` + By convention, the ``Tests/AppBundle`` directory should replicate the directory + of your bundle for unit tests. So, if you're testing a class in the + ``AppBundle/Util/`` directory, put the test in the ``tests/AppBundle/Util/`` directory. Just like in your real application - autoloading is automatically enabled -via the ``bootstrap.php.cache`` file (as configured by default in the +via the ``autoload.php`` file (as configured by default in the ``phpunit.xml.dist`` file). Running tests for a given file or directory is also very easy: @@ -102,13 +101,13 @@ Running tests for a given file or directory is also very easy: $ phpunit # run all tests in the Util directory - $ phpunit src/AppBundle/Tests/Util + $ phpunit tests/AppBundle/Util # run tests for the Calculator class - $ phpunit src/AppBundle/Tests/Util/CalculatorTest.php + $ phpunit tests/AppBundle/Util/CalculatorTest.php # run all tests for the entire Bundle - $ phpunit src/AppBundle/ + $ phpunit tests/AppBundle/ .. index:: single: Tests; Functional tests @@ -129,15 +128,15 @@ tests as far as PHPUnit is concerned, but they have a very specific workflow: Your First Functional Test ~~~~~~~~~~~~~~~~~~~~~~~~~~ -Functional tests are simple PHP files that typically live in the ``Tests/Controller`` -directory of your bundle. If you want to test the pages handled by your +Functional tests are simple PHP files that typically live in the ``tests/AppBundle/Controller`` +directory for your bundle. If you want to test the pages handled by your ``PostController`` class, start by creating a new ``PostControllerTest.php`` file that extends a special ``WebTestCase`` class. As an example, a test could look like this:: - // src/AppBundle/Tests/Controller/PostControllerTest.php - namespace AppBundle\Tests\Controller; + // tests/AppBundle/Controller/PostControllerTest.php + namespace Tests\AppBundle\Controller; use Symfony\Bundle\FrameworkBundle\Test\WebTestCase; @@ -810,10 +809,8 @@ only. Store the ``phpunit.xml.dist`` file in your code repository and ignore the ``phpunit.xml`` file. -By default, only the tests from your own custom bundles stored in the standard -directories ``src/*/*Bundle/Tests``, ``src/*/Bundle/*Bundle/Tests``, -``src/*Bundle/Tests`` are run by the ``phpunit`` command, as configured -in the ``phpunit.xml.dist`` file: +By default, only the tests stored in ``/tests`` are run via the ``phpunit`` command, +as configured in the ``phpunit.xml.dist`` file: .. code-block:: xml @@ -822,9 +819,7 @@ in the ``phpunit.xml.dist`` file: - ../src/*/*Bundle/Tests - ../src/*/Bundle/*Bundle/Tests - ../src/*Bundle/Tests + tests diff --git a/cookbook/configuration/override_dir_structure.rst b/cookbook/configuration/override_dir_structure.rst index e389b3ef837..7ee57bb0ce1 100644 --- a/cookbook/configuration/override_dir_structure.rst +++ b/cookbook/configuration/override_dir_structure.rst @@ -97,7 +97,7 @@ in your ``app.php`` and ``app_dev.php`` front controllers. If you simply renamed the directory, you're fine. But if you moved it in some way, you may need to modify these paths inside those files:: - require_once __DIR__.'/../path/to/var/bootstrap.php.cache'; + require_once __DIR__.'/../path/to/app/autoload.php'; You also need to change the ``extra.symfony-web-dir`` option in the ``composer.json`` file: diff --git a/cookbook/deployment/azure-website.rst b/cookbook/deployment/azure-website.rst index c13d8afc2ec..0480442fabd 100644 --- a/cookbook/deployment/azure-website.rst +++ b/cookbook/deployment/azure-website.rst @@ -259,7 +259,7 @@ directory with at least the following contents: .. code-block:: text - /app/bootstrap.php.cache + /var/bootstrap.php.cache /var/cache/* /app/config/parameters.yml /var/logs/* diff --git a/cookbook/deployment/platformsh.rst b/cookbook/deployment/platformsh.rst index 9ca118f197e..8bed82d548e 100644 --- a/cookbook/deployment/platformsh.rst +++ b/cookbook/deployment/platformsh.rst @@ -63,7 +63,7 @@ Platform.sh how to deploy your application (read more about # The mounts that will be performed when the package is deployed. mounts: "/var/cache": "shared:files/cache" - "/app/logs": "shared:files/logs" + "/var/logs": "shared:files/logs" # The hooks that will be performed when the package is deployed. hooks: diff --git a/cookbook/testing/bootstrap.rst b/cookbook/testing/bootstrap.rst index 1f3c5464e41..67ad9db1d8e 100644 --- a/cookbook/testing/bootstrap.rst +++ b/cookbook/testing/bootstrap.rst @@ -17,9 +17,9 @@ First, add the following file:: )); } - require __DIR__.'/bootstrap.php.cache'; + require __DIR__.'/autoload.php'; -Replace the test bootstrap file ``bootstrap.php.cache`` in ``phpunit.xml.dist`` +Replace the test bootstrap file ``autoload.php`` in ``phpunit.xml.dist`` with ``tests.bootstrap.php``: .. code-block:: xml diff --git a/quick_tour/the_architecture.rst b/quick_tour/the_architecture.rst index a345807af66..1a973516815 100644 --- a/quick_tour/the_architecture.rst +++ b/quick_tour/the_architecture.rst @@ -286,7 +286,7 @@ and help you fix the problem quickly. Using the Command Line Interface -------------------------------- -Each application comes with a command line interface tool (``app/console``) +Each application comes with a command line interface tool (``bin/console``) that helps you maintain your application. It provides commands that boost your productivity by automating tedious and repetitive tasks. From 340ec5fe82b5be15feec7653a895a2fd1fe7b27a Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Mon, 30 Nov 2015 09:56:10 -0500 Subject: [PATCH 111/235] Adding a note thanks to Stof --- cookbook/form/create_form_type_extension.rst | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/cookbook/form/create_form_type_extension.rst b/cookbook/form/create_form_type_extension.rst index df290c1e4f4..daaba58df19 100644 --- a/cookbook/form/create_form_type_extension.rst +++ b/cookbook/form/create_form_type_extension.rst @@ -127,7 +127,9 @@ tag: .. versionadded:: 2.8 The ``extended_type`` option is new in Symfony 2.8. Before, the option was - called ``alias``. + called ``alias``. If you're a bundle author and need to support multiple Symfony + versions, specify *both* ``extended_type`` and ``alias`` (having both will prevent + any deprecation warnings). The ``extended_type`` key of the tag is the type of field that this extension should be applied to. In your case, as you want to extend the ``Symfony\Component\Form\Extension\Core\Type\FileType`` From d5d68ab7ac958dfce473d260a8fed9dcf2434bfd Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Tue, 1 Dec 2015 10:26:48 +0100 Subject: [PATCH 112/235] move filename comment to the top of the code block --- cookbook/service_container/shared.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/service_container/shared.rst b/cookbook/service_container/shared.rst index 92844d1958f..62ef094f426 100644 --- a/cookbook/service_container/shared.rst +++ b/cookbook/service_container/shared.rst @@ -36,9 +36,9 @@ in your service definition: .. code-block:: php + // app/config/services.php use Symfony\Component\DependencyInjection\Definition; - // app/config/services.php $definition = new Definition('...'); $definition->setShared(false); From 7bd1f22d7a9963cfa30814dd0a4dc17de8e5cf0a Mon Sep 17 00:00:00 2001 From: Jason McCallister Date: Mon, 30 Nov 2015 15:47:23 -0800 Subject: [PATCH 113/235] Add proper use of the password type The documentation still referenced using the old `type`. Updated the code to use `PasswordType::class` vice `password`. --- cookbook/doctrine/registration_form.rst | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cookbook/doctrine/registration_form.rst b/cookbook/doctrine/registration_form.rst index 9e19eb205f5..ebd11b412a1 100644 --- a/cookbook/doctrine/registration_form.rst +++ b/cookbook/doctrine/registration_form.rst @@ -160,6 +160,7 @@ Next, create the form for the ``User`` entity:: use Symfony\Component\Form\Extension\Core\Type\EmailType; use Symfony\Component\Form\Extension\Core\Type\TextType; use Symfony\Component\Form\Extension\Core\Type\RepeatedType; + use Symfony\Component\Form\Extension\Core\Type\PasswordType; class UserType extends AbstractType { @@ -169,7 +170,7 @@ Next, create the form for the ``User`` entity:: ->add('email', EmailType::class) ->add('username', TextType::class) ->add('plainPassword', RepeatedType::class, array( - 'type' => 'password', + 'type' => PasswordType::class, 'first_options' => array('label' => 'Password'), 'second_options' => array('label' => 'Repeat Password'), ) From d5778488d4fbd1a62fd56860202d5e1f3cf84db3 Mon Sep 17 00:00:00 2001 From: ogizanagi Date: Thu, 3 Dec 2015 17:31:28 +0100 Subject: [PATCH 114/235] Update docs accordingly to min PHP version requirement --- book/forms.rst | 4 +--- book/security.rst | 2 -- components/dom_crawler.rst | 6 ------ components/form/introduction.rst | 7 +------ components/var_dumper/introduction.rst | 5 ----- contributing/code/patches.rst | 8 ++++---- cookbook/configuration/micro-kernel-trait.rst | 6 ------ cookbook/deployment/azure-website.rst | 4 ++-- .../security/_ircmaxwell_password-compat.rst.inc | 13 ------------- cookbook/security/entity_provider.rst | 2 -- create_framework/introduction.rst | 7 +++---- reference/configuration/security.rst | 5 ----- reference/requirements.rst | 7 +------ 13 files changed, 12 insertions(+), 64 deletions(-) delete mode 100644 cookbook/security/_ircmaxwell_password-compat.rst.inc diff --git a/book/forms.rst b/book/forms.rst index cab2b60a11b..384cc9cbd8e 100644 --- a/book/forms.rst +++ b/book/forms.rst @@ -95,8 +95,6 @@ from inside a controller:: $form = $this->createFormBuilder($task) ->add('task', TextType::class) - // If you use PHP 5.3 or 5.4 you must use - // ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') ->add('dueDate', DateType::class) ->add('save', SubmitType::class, array('label' => 'Create Task')) ->getForm(); @@ -1978,4 +1976,4 @@ Learn more from the Cookbook .. _`form_div_layout.html.twig`: https://github.com/symfony/symfony/blob/master/src/Symfony/Bridge/Twig/Resources/views/Form/form_div_layout.html.twig .. _`Cross-site request forgery`: http://en.wikipedia.org/wiki/Cross-site_request_forgery .. _`view on GitHub`: https://github.com/symfony/symfony/tree/master/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form -.. _`2.8 UPGRADE Log`: https://github.com/symfony/symfony/blob/2.8/UPGRADE-2.8.md#form \ No newline at end of file +.. _`2.8 UPGRADE Log`: https://github.com/symfony/symfony/blob/2.8/UPGRADE-2.8.md#form diff --git a/book/security.rst b/book/security.rst index 5f410cac2ac..e0d5c3cb2a0 100644 --- a/book/security.rst +++ b/book/security.rst @@ -510,8 +510,6 @@ else, you'll want to encode their passwords. The best algorithm to use is // ... )); -.. include:: /cookbook/security/_ircmaxwell_password-compat.rst.inc - Of course, your users' passwords now need to be encoded with this exact algorithm. For hardcoded users, you can use an `online tool`_, which will give you something like this: diff --git a/components/dom_crawler.rst b/components/dom_crawler.rst index 2bb74fb4ac4..f9a3fe030f3 100644 --- a/components/dom_crawler.rst +++ b/components/dom_crawler.rst @@ -300,12 +300,6 @@ and :phpclass:`DOMNode` objects: The ``html`` method is new in Symfony 2.3. - .. caution:: - - Due to an issue in PHP, the ``html()`` method returns wrongly decoded HTML - entities in PHP versions lower than 5.3.6 (for example, it returns ``•`` - instead of ``•``). - Links ~~~~~ diff --git a/components/form/introduction.rst b/components/form/introduction.rst index 36a13fb9d28..a6515aa3aac 100644 --- a/components/form/introduction.rst +++ b/components/form/introduction.rst @@ -398,8 +398,6 @@ is created from the form factory. $form = $formFactory->createBuilder() ->add('task', TextType::class) - // If you use PHP 5.3 or 5.4, you must use - // ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') ->add('dueDate', DateType::class) ->getForm(); @@ -426,8 +424,6 @@ is created from the form factory. $form = $this->createFormBuilder() ->add('task', TextType::class) - // If you use PHP 5.3 or 5.4, you must use - // ->add('task', 'Symfony\Component\Form\Extension\Core\Type\TextType') ->add('dueDate', DateType::class) ->getForm(); @@ -439,8 +435,7 @@ is created from the form factory. As you can see, creating a form is like writing a recipe: you call ``add`` for each new field you want to create. The first argument to ``add`` is the -name of your field, and the second is the fully qualified class name. If you -use PHP 5.5 or above, you can use ``::class`` constant of a form type. The Form +name of your field, and the second is the fully qualified class name. The Form component comes with a lot of :doc:`built-in types `. Now that you've built your form, learn how to :ref:`render ` diff --git a/components/var_dumper/introduction.rst b/components/var_dumper/introduction.rst index 8f11a198c4d..9e97e3ec15d 100644 --- a/components/var_dumper/introduction.rst +++ b/components/var_dumper/introduction.rst @@ -145,11 +145,6 @@ Example:: } } -.. tip:: - - If you still use PHP 5.3, you can extend the - :class:`Symfony\\Component\\VarDumper\\Test\\VarDumperTestClass` instead. - Dump Examples and Output ------------------------ diff --git a/contributing/code/patches.rst b/contributing/code/patches.rst index 7d5ef0c3452..b4f0b2ba4fa 100644 --- a/contributing/code/patches.rst +++ b/contributing/code/patches.rst @@ -14,14 +14,14 @@ Before working on Symfony, setup a friendly environment with the following software: * Git; -* PHP version 5.3.9 or above; +* PHP version 5.5.9 or above; * `PHPUnit`_ 4.2 or above. .. caution:: - Before Symfony 2.7, the minimal PHP version was 5.3.3. Please keep - this in mind, if you are working on a bug fix for earlier versions - of Symfony. + Before Symfony 2.7, the minimal PHP version was 5.3.3. Before Symfony 3.0, + minimal version was 5.3.9. Please keep this in mind, if you are working on a + bug fix for earlier versions of Symfony. Configure Git ~~~~~~~~~~~~~ diff --git a/cookbook/configuration/micro-kernel-trait.rst b/cookbook/configuration/micro-kernel-trait.rst index 79f1d474f6d..7e4563f34bb 100644 --- a/cookbook/configuration/micro-kernel-trait.rst +++ b/cookbook/configuration/micro-kernel-trait.rst @@ -11,12 +11,6 @@ as one file? This is possible thanks to the new you to start with a tiny application, and then add features and structure as you need to. -.. note:: - - The MicroKernelTrait requires PHP 5.4. However, there's nothing special about - this trait. If you're using PHP 5.3, simply copy its methods into *your* kernel - class to get the same functionality. - A Single-File Symfony Application --------------------------------- diff --git a/cookbook/deployment/azure-website.rst b/cookbook/deployment/azure-website.rst index 0480442fabd..54c6175b55f 100644 --- a/cookbook/deployment/azure-website.rst +++ b/cookbook/deployment/azure-website.rst @@ -96,8 +96,8 @@ and how to properly configure PHP for a production environment. Configuring the latest PHP Runtime ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Even though Symfony only requires PHP 5.3.9 to run, it's always recommended -to use the most recent PHP version whenever possible. PHP 5.3 is no longer +Even though Symfony only requires PHP 5.5.9 to run, it's always recommended +to use the most recent PHP version whenever possible. Earlier versions are no longer supported by the PHP core team, but you can update it easily in Azure. To update your PHP version on Azure, go to the **Configure** tab of the control diff --git a/cookbook/security/_ircmaxwell_password-compat.rst.inc b/cookbook/security/_ircmaxwell_password-compat.rst.inc deleted file mode 100644 index 3f96c454488..00000000000 --- a/cookbook/security/_ircmaxwell_password-compat.rst.inc +++ /dev/null @@ -1,13 +0,0 @@ -.. caution:: - - If you're using PHP 5.4 or lower, you'll need to install the ``ircmaxell/password-compat`` - library via Composer in order to be able to use the ``bcrypt`` encoder: - - .. code-block:: json - - { - "require": { - ... - "ircmaxell/password-compat": "~1.0.3" - } - } diff --git a/cookbook/security/entity_provider.rst b/cookbook/security/entity_provider.rst index ced1039a28a..5b435ecf799 100644 --- a/cookbook/security/entity_provider.rst +++ b/cookbook/security/entity_provider.rst @@ -291,8 +291,6 @@ name ``our_db_provider`` isn't important: it just needs to match the value of the ``provider`` key under your firewall. Or, if you don't set the ``provider`` key under your firewall, the first "user provider" is automatically used. -.. include:: /cookbook/security/_ircmaxwell_password-compat.rst.inc - Creating your First User ~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/create_framework/introduction.rst b/create_framework/introduction.rst index 1d1bb864639..ead809f4ca8 100644 --- a/create_framework/introduction.rst +++ b/create_framework/introduction.rst @@ -69,7 +69,7 @@ Before You Start Reading about how to create a framework is not enough. You will have to follow along and actually type all the examples included in this tutorial. For that, -you need a recent version of PHP (5.3.9 or later is good enough), a web server +you need a recent version of PHP (5.5.9 or later is good enough), a web server (like Apache, NGinx or PHP's built-in web server), a good knowledge of PHP and an understanding of Object Oriented programming. @@ -109,9 +109,8 @@ start with the simplest web application we can think of in PHP:: printf('Hello %s', $input); -If you have PHP 5.4, you can use the PHP built-in server to test this great -application in a browser (``http://localhost:4321/index.php?name=Fabien``). -Otherwise, use your own server (Apache, Nginx, etc.): +You can use the PHP built-in server to test this great +application in a browser (``http://localhost:4321/index.php?name=Fabien``): .. code-block:: bash diff --git a/reference/configuration/security.rst b/reference/configuration/security.rst index 7ebc489b2eb..22c99a171e2 100644 --- a/reference/configuration/security.rst +++ b/reference/configuration/security.rst @@ -354,11 +354,6 @@ for the hash algorithm. Using the BCrypt Password Encoder --------------------------------- -.. caution:: - - To use this encoder, you either need to use PHP Version 5.5 or install - the `ircmaxell/password-compat`_ library via Composer. - .. configuration-block:: .. code-block:: yaml diff --git a/reference/requirements.rst b/reference/requirements.rst index a0f9e262846..9ff4d99665d 100644 --- a/reference/requirements.rst +++ b/reference/requirements.rst @@ -21,16 +21,11 @@ Below is the list of required and optional requirements. Required -------- -* PHP needs to be a minimum version of PHP 5.3.9 +* PHP needs to be a minimum version of PHP 5.5.9 * JSON needs to be enabled * ctype needs to be enabled * Your ``php.ini`` needs to have the ``date.timezone`` setting -.. caution:: - - Be aware that Symfony has some known limitations when using PHP 5.3.16. - For more information see the `Requirements section of the README`_. - Optional -------- From f87f5f41344b140b055fab8c36d63cf1f97b9f51 Mon Sep 17 00:00:00 2001 From: Pierre Maraitre Date: Sat, 5 Dec 2015 09:51:07 +0100 Subject: [PATCH 115/235] Fix #5236 [Translation] specify additional translation loading paths --- book/translation.rst | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/book/translation.rst b/book/translation.rst index 7cd2fe0e8a9..9d601817ff0 100644 --- a/book/translation.rst +++ b/book/translation.rst @@ -334,7 +334,7 @@ The translator service is accessible in PHP templates through the Translation Resource/File Names and Locations --------------------------------------------- -Symfony looks for message files (i.e. translations) in the following locations: +Symfony looks for message files (i.e. translations) in the following default locations: * the ``app/Resources/translations`` directory; @@ -372,6 +372,18 @@ The choice of which loader to use is entirely up to you and is a matter of taste. The recommended option is to use ``xlf`` for translations. For more options, see :ref:`component-translator-message-catalogs`. +.. note:: + + The the paths at which Symfony will look for message files can be modified by adding + your custom resources path in your config.yml: + + .. code-block:: yml + + framework: + translator: + paths: + - %kernel.root_dir%/../vendor/Symfony/Component/Form/Resources/translations + .. note:: You can also store translations in a database, or any other storage by From 40b7b78c9a411d75342d221745ea27087dfa3c7e Mon Sep 17 00:00:00 2001 From: Pierre Maraitre Date: Sat, 5 Dec 2015 09:57:31 +0100 Subject: [PATCH 116/235] Double "the" --- book/translation.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/book/translation.rst b/book/translation.rst index 9d601817ff0..1a644eaed9e 100644 --- a/book/translation.rst +++ b/book/translation.rst @@ -374,7 +374,7 @@ For more options, see :ref:`component-translator-message-catalogs`. .. note:: - The the paths at which Symfony will look for message files can be modified by adding + The paths at which Symfony will look for message files can be modified by adding your custom resources path in your config.yml: .. code-block:: yml From c220cd0a5bbc1d2b20296c30e2db00b68863a57e Mon Sep 17 00:00:00 2001 From: Pierre Maraitre Date: Sat, 5 Dec 2015 10:00:51 +0100 Subject: [PATCH 117/235] Clearer formulation --- book/translation.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/book/translation.rst b/book/translation.rst index 1a644eaed9e..a89c278003b 100644 --- a/book/translation.rst +++ b/book/translation.rst @@ -375,7 +375,7 @@ For more options, see :ref:`component-translator-message-catalogs`. .. note:: The paths at which Symfony will look for message files can be modified by adding - your custom resources path in your config.yml: + your custom resources path in your config.yml file: .. code-block:: yml From 0d8eadc4860d26d1529001177affdec96cb2ce01 Mon Sep 17 00:00:00 2001 From: Pierre Maraitre Date: Sat, 5 Dec 2015 10:23:37 +0100 Subject: [PATCH 118/235] Wrong code-block tag --- book/translation.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/book/translation.rst b/book/translation.rst index a89c278003b..5a05b74846a 100644 --- a/book/translation.rst +++ b/book/translation.rst @@ -377,7 +377,7 @@ For more options, see :ref:`component-translator-message-catalogs`. The paths at which Symfony will look for message files can be modified by adding your custom resources path in your config.yml file: - .. code-block:: yml + .. code-block:: yaml framework: translator: From 8c170337051dee49f51320260040f19bd9ddb013 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 5 Dec 2015 10:54:02 +0100 Subject: [PATCH 119/235] [#5948] Very minor detail --- create_framework/introduction.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/create_framework/introduction.rst b/create_framework/introduction.rst index ead809f4ca8..31c03ed3c6d 100644 --- a/create_framework/introduction.rst +++ b/create_framework/introduction.rst @@ -109,8 +109,8 @@ start with the simplest web application we can think of in PHP:: printf('Hello %s', $input); -You can use the PHP built-in server to test this great -application in a browser (``http://localhost:4321/index.php?name=Fabien``): +You can use the PHP built-in server to test this great application in a browser +(``http://localhost:4321/index.php?name=Fabien``): .. code-block:: bash From 2cabebe6848578fd01d595fe974d6a84c1d42386 Mon Sep 17 00:00:00 2001 From: Pierre Maraitre Date: Sat, 5 Dec 2015 11:56:35 +0100 Subject: [PATCH 120/235] Replace with a shorter phrase --- .idea/dictionaries/pmaraitre.xml | 7 +++++++ book/translation.rst | 3 +-- 2 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 .idea/dictionaries/pmaraitre.xml diff --git a/.idea/dictionaries/pmaraitre.xml b/.idea/dictionaries/pmaraitre.xml new file mode 100644 index 00000000000..d22c22cd2d5 --- /dev/null +++ b/.idea/dictionaries/pmaraitre.xml @@ -0,0 +1,7 @@ + + + + symfony + + + \ No newline at end of file diff --git a/book/translation.rst b/book/translation.rst index 5a05b74846a..1eac0983444 100644 --- a/book/translation.rst +++ b/book/translation.rst @@ -374,8 +374,7 @@ For more options, see :ref:`component-translator-message-catalogs`. .. note:: - The paths at which Symfony will look for message files can be modified by adding - your custom resources path in your config.yml file: + You can add other translation paths with the ``paths`` option in the configuration: .. code-block:: yaml From b3fa9412cdb4d98aa4fbed90bf5d659b2a0b00fa Mon Sep 17 00:00:00 2001 From: Pierre Maraitre Date: Sat, 5 Dec 2015 12:01:58 +0100 Subject: [PATCH 121/235] Adding configuration examples for other formats --- book/translation.rst | 48 ++++++++++++++++++++++++++++++++++++-------- 1 file changed, 40 insertions(+), 8 deletions(-) diff --git a/book/translation.rst b/book/translation.rst index 1eac0983444..18522a94f25 100644 --- a/book/translation.rst +++ b/book/translation.rst @@ -374,14 +374,46 @@ For more options, see :ref:`component-translator-message-catalogs`. .. note:: - You can add other translation paths with the ``paths`` option in the configuration: - - .. code-block:: yaml - - framework: - translator: - paths: - - %kernel.root_dir%/../vendor/Symfony/Component/Form/Resources/translations + You can add other directories with the ``paths`` option in the configuration: + + .. configuration-block:: + + .. code-block:: yaml + + # app/config/config.yml + framework: + translator: + paths: + - "%kernel.root_dir%/../translations" + + .. code-block:: xml + + + + + + + %kernel.root_dir%/../translations + + + + + .. code-block:: php + + $container->loadFromExtension('framework', array( + 'translator' => array( + 'paths' => array( + '%kernel.root_dir%/../translations' + ) + ), + )); .. note:: From 46de0d6bb04a09cde0ef29216811f81f8ff92b6d Mon Sep 17 00:00:00 2001 From: Pierre Maraitre Date: Sat, 5 Dec 2015 12:31:38 +0100 Subject: [PATCH 122/235] Delete pmaraitre.xml Delete file pushed automatically by PhpStorm --- .idea/dictionaries/pmaraitre.xml | 7 ------- 1 file changed, 7 deletions(-) delete mode 100644 .idea/dictionaries/pmaraitre.xml diff --git a/.idea/dictionaries/pmaraitre.xml b/.idea/dictionaries/pmaraitre.xml deleted file mode 100644 index d22c22cd2d5..00000000000 --- a/.idea/dictionaries/pmaraitre.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - symfony - - - \ No newline at end of file From bc2447d3132a3775f7b8ae685f17ebe6302d676a Mon Sep 17 00:00:00 2001 From: Josh Taylor Date: Sun, 6 Dec 2015 03:01:22 +1100 Subject: [PATCH 123/235] Missing n in Column --- cookbook/security/guard-authentication.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/security/guard-authentication.rst b/cookbook/security/guard-authentication.rst index 5201fcf2bbb..a19afaf7948 100644 --- a/cookbook/security/guard-authentication.rst +++ b/cookbook/security/guard-authentication.rst @@ -44,7 +44,7 @@ property they use to access their account via the API:: private $username; /** - * @ORM\Colum(type"string", unique=true) + * @ORM\Column(type"string", unique=true) */ private $apiKey; From 7d922b9058f1364cb36e3e736f5f1418ad7397a4 Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Wed, 9 Dec 2015 09:19:18 +0100 Subject: [PATCH 124/235] [#5956] change app/console back to bin/console --- book/security.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/book/security.rst b/book/security.rst index 435b563df3e..668830e468b 100644 --- a/book/security.rst +++ b/book/security.rst @@ -515,7 +515,7 @@ For hardcoded users, since 2.7 you can use the built-in command : .. code-block:: bash - $ php app/console security:encode-password + $ php bin/console security:encode-password It will give you something like this: From e19f7a10b64866d0cb10ff8eac2cb0977bdbe9f1 Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Wed, 9 Dec 2015 20:39:14 +0100 Subject: [PATCH 125/235] [#5957] remove deep parameter documentation --- reference/constraints/Valid.rst | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/reference/constraints/Valid.rst b/reference/constraints/Valid.rst index 67ec4bc86a6..e52e9e53bf1 100644 --- a/reference/constraints/Valid.rst +++ b/reference/constraints/Valid.rst @@ -9,7 +9,6 @@ an object and all sub-objects associated with it. | Applies to | :ref:`property or method ` | +----------------+---------------------------------------------------------------------+ | Options | - `traverse`_ | -| | - `deep`_ (deprecated as of 2.5) | | | - `payload`_ | +----------------+---------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Validator\\Constraints\\Valid` | @@ -268,19 +267,4 @@ If this constraint is applied to a property that holds an array of objects, then each object in that array will be validated only if this option is set to ``true``. -deep -~~~~ - -.. caution:: - - The ``deep`` option was deprecated in Symfony 2.5 and will be removed - in Symfony 3.0. When traversing arrays, nested arrays are always traversed. - When traversing nested objects, their traversal strategy is used. - -**type**: ``boolean`` **default**: ``false`` - -If this constraint is applied to a property that holds an array of objects, -then each object in that array will be validated recursively if this option -is set to ``true``. - .. include:: /reference/constraints/_payload-option.rst.inc From 2ad1ba5ca1ccf222e6bab65e72c6e462d546d3dd Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Wed, 9 Dec 2015 20:54:16 +0100 Subject: [PATCH 126/235] [#5954] minor tweaks --- book/translation.rst | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/book/translation.rst b/book/translation.rst index 4c227b2aca3..08fcc57d9d7 100644 --- a/book/translation.rst +++ b/book/translation.rst @@ -384,10 +384,11 @@ For more options, see :ref:`component-translator-message-catalogs`. framework: translator: paths: - - "%kernel.root_dir%/../translations" + - '%kernel.root_dir%/../translations' .. code-block:: xml + loadFromExtension('framework', array( 'translator' => array( 'paths' => array( - '%kernel.root_dir%/../translations' - ) + '%kernel.root_dir%/../translations', + ), ), )); From 099ea852502284a32119f7c19cae3b996359026e Mon Sep 17 00:00:00 2001 From: Arnaud Lejosne Date: Sun, 6 Dec 2015 00:13:32 +0100 Subject: [PATCH 127/235] Remove deprecated StringUtils from WSSE custom auth provider --- components/security/secure_tools.rst | 20 ++----------------- .../custom_authentication_provider.rst | 11 +--------- 2 files changed, 3 insertions(+), 28 deletions(-) diff --git a/components/security/secure_tools.rst b/components/security/secure_tools.rst index f43a4f2c7ed..32860f6fa2d 100644 --- a/components/security/secure_tools.rst +++ b/components/security/secure_tools.rst @@ -1,26 +1,10 @@ -Securely Comparing Strings and Generating Random Numbers -======================================================== +Securely Generating Random Numbers +================================== The Symfony Security component comes with a collection of nice utilities related to security. These utilities are used by Symfony, but you should also use them if you want to solve the problem they address. -Comparing Strings -~~~~~~~~~~~~~~~~~ - -The time it takes to compare two strings depends on their differences. This -can be used by an attacker when the two strings represent a password for -instance; it is known as a `Timing attack`_. - -Internally, when comparing two passwords, Symfony uses a constant-time -algorithm; you can use the same strategy in your own code thanks to the -:class:`Symfony\\Component\\Security\\Core\\Util\\StringUtils` class:: - - use Symfony\Component\Security\Core\Util\StringUtils; - - // is some known string (e.g. password) equal to some user input? - $bool = StringUtils::equals($knownString, $userInput); - Generating a Secure random Number ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/cookbook/security/custom_authentication_provider.rst b/cookbook/security/custom_authentication_provider.rst index f44ea0b8cf8..06e48345110 100644 --- a/cookbook/security/custom_authentication_provider.rst +++ b/cookbook/security/custom_authentication_provider.rst @@ -214,7 +214,6 @@ the ``PasswordDigest`` header value matches with the user's password. use Symfony\Component\Security\Core\Exception\NonceExpiredException; use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; use AppBundle\Security\Authentication\Token\WsseUserToken; - use Symfony\Component\Security\Core\Util\StringUtils; class WsseProvider implements AuthenticationProviderInterface { @@ -273,7 +272,7 @@ the ``PasswordDigest`` header value matches with the user's password. // Validate Secret $expected = base64_encode(sha1(base64_decode($nonce).$created.$secret, true)); - return StringUtils::equals($expected, $digest); + return hash_equals($expected, $digest); } public function supports(TokenInterface $token) @@ -290,14 +289,6 @@ the ``PasswordDigest`` header value matches with the user's password. provider for the given token. In the case of multiple providers, the authentication manager will then move to the next provider in the list. -.. note:: - - The comparison of the expected and the provided digests uses a constant - time comparison provided by the - :method:`Symfony\\Component\\Security\\Core\\Util\\StringUtils::equals` - method of the ``StringUtils`` class. It is used to mitigate possible - `timing attacks`_. - The Factory ----------- From 2aeffdf234a562f404ece36c6c286bb303976d96 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 12 Dec 2015 11:40:01 +0100 Subject: [PATCH 128/235] Added october and november changelog --- changelog.rst | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/changelog.rst b/changelog.rst index cd41c6c051e..42916827635 100644 --- a/changelog.rst +++ b/changelog.rst @@ -19,9 +19,21 @@ November, 2015 New Documentation ~~~~~~~~~~~~~~~~~ +* `#5907 `_ Updating some places to use the new CustomUserMessageAuthenticationException (weaverryan) +* `#5922 `_ Added minimal cookbook article about the shared flag (WouterJ) +* `#5908 `_ Voter update (weaverryan) +* `#5909 `_ More 2.8 form updates (weaverryan) +* `#5927 `_ Use path() and url() PHP templating helpers (WouterJ) +* `#5926 `_ Update voter section of best practices (WouterJ) +* `#5921 `_ [2.8] Document some Security changes (WouterJ) +* `#5834 `_ Updated form aliases to FQCNs for forms in book and component (hiddewie) +* `#5265 `_ Documentation for the new Guard authentication style (weaverryan) +* `#5899 `_ Adding the MicroKernel article (weaverryan) * `#5893 `_ Added a note about the use of _format query parameter (javiereguiluz) +* `#5891 `_ Removed the comments about the is_granted() issues in non-secure pages (javiereguiluz) * `#5876 `_ Symfony 2.7 Form choice option update (aivus, althaus, weaverryan) * `#5861 `_ Updated Table Console helper for spanning cols and rows (hiddewie) +* `#5835 `_ Updated CssSelector code example to use the new Converter (hiddewie) * `#5816 `_ Merge branches (nicolas-grekas, snoek09, WouterJ, xabbuh) * `#5804 `_ Added documentation for dnsMessage option (BenjaminPaap) * `#5774 `_ Show a more real example in data collectors doc (WouterJ) @@ -52,6 +64,7 @@ Minor Documentation Changes * `#5897 `_ Fixed some wrong line number references in doctrine.rst (DigNative) * `#5895 `_ Update debug_formatter.rst (strannik-06) * `#5883 `_ Book: Update Service Container Documentation (zanderbaldwin) +* `#5868 `_ [2.8] Make screenshots with the new profiler/web dev toolbar design (WouterJ) * `#5862 `_ Fixes done automatically by the docbot (WouterJ) * `#5851 `_ updated sentence (OskarStark) * `#5870 `_ Update securing_services.rst (aruku) @@ -63,6 +76,7 @@ Minor Documentation Changes * `#5813 `_ use constants to choose generated URL type (xabbuh) * `#5808 `_ Reworded the explanation about flash messages (javiereguiluz) * `#5809 `_ Minor fix (javiereguiluz) +* `#5807 `_ Minor rewordings for the "deprecated" service option (javiereguiluz) * `#5805 `_ Mentioned the BETA and RC support for the Symfony Installer (javiereguiluz) * `#5781 `_ Added annotations example to Linking to Pages examples (carlos-granados) * `#5780 `_ Clarify when we are talking about PHP and Twig (carlos-granados) @@ -84,10 +98,15 @@ New Documentation * `#5345 `_ Adding information about empty files sent using BinaryFileResponse. (kherge) * `#5214 `_ [WIP] Reworking most of the registration form: (weaverryan) +* `#5051 `_ Rename CollectionType entry options (WouterJ) * `#5677 `_ replacing deprecated usage of True, False, Null validators in docs (Tim Stamp) * `#5314 `_ Documented the useAttributeAsKey() method (javiereguiluz) * `#5377 `_ Added a cookbook section about event subscribers (beni0888, javiereguiluz) +* `#5623 `_ [Validator] added BIC validator (mvhirsch) +* `#5689 `_ [DI] Add some documentation for the deprecation feature (Taluu) * `#5592 `_ Updated the article about data collectors (javiereguiluz) +* `#5745 `_ [Translation] Ability to format a message catalogue without actually writing it. (aitboudad) +* `#5702 `_ Added a reference to the Foundation form theme (totophe) Fixed Documentation ~~~~~~~~~~~~~~~~~~~ @@ -103,6 +122,7 @@ Minor Documentation Changes * `#5812 `_ Remove duplicate and confusing info about testing error pages (carlos-granados) * `#5821 `_ Minor fixes in the HttpFoundation introduction article (javiereguiluz) * `#5822 `_ Fixed a syntax issue (javiereguiluz) +* `#5817 `_ fix version for `entry_options` and `entry_type` (craue) * `#5796 `_ Fix for #5783 (BenjaminPaap) * `#5810 `_ Fixed a typo (javiereguiluz) * `#5784 `_ Add fe80::1 (j-d) @@ -116,14 +136,17 @@ Minor Documentation Changes * `#5664 `_ Info about implicit session start (ThomasLandauer) * `#5744 `_ translations have been removed from symfony.com (xabbuh) * `#5771 `_ Remove not existing response constant (amansilla) +* `#5761 `_ [DX] [Security] Renamed key to secret (SongoQ) * `#5766 `_ Fixed two typos (ThomasLandauer) * `#5733 `_ [Components][OptionsResolver] adding type hint to normalizer callback (xabbuh) +* `#5561 `_ Change default value of cookie_httponly (jderusse) * `#5678 `_ Update HttpFoundation note after recent changes in routing component (senkal) * `#5643 `_ Document how to customize the prototype (daFish, WouterJ) * `#5584 `_ Add DebugBundle config reference (WouterJ) * `#5753 `_ configureOptions(...) : protected => public (lucascherifi) * `#5750 `_ fix YAML syntax highlighting (xabbuh) * `#5749 `_ complete Swiftmailer XML examples (xabbuh) +* `#5730 `_ Remove documentation of deprecated console shell (Tobion) * `#5726 `_ Document the support of Mintty for colors (stof) * `#5708 `_ Added caution to call createView after handleRequest (WouterJ) * `#5640 `_ Update controller.rst clarifying automatic deletion for flash messages (miguelvilata) From 276aa1f4c6ec45449c8c71d8d186b06c3d2de2a9 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 12 Dec 2015 11:41:27 +0100 Subject: [PATCH 129/235] Added october and november changelog --- changelog.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/changelog.rst b/changelog.rst index 469cb626087..88182ddac88 100644 --- a/changelog.rst +++ b/changelog.rst @@ -19,6 +19,9 @@ November, 2015 New Documentation ~~~~~~~~~~~~~~~~~ +* `#5917 `_ [3.0][Cookbook] Use the 3.0 directory structure (WouterJ) +* `#5916 `_ [3.0][Best Practices][Quick Tour] Use the 3.0 directory structure (WouterJ) +* `#5913 `_ [3.0][Book] Use the 3.0 directory structure (WouterJ) * `#5907 `_ Updating some places to use the new CustomUserMessageAuthenticationException (weaverryan) * `#5922 `_ Added minimal cookbook article about the shared flag (WouterJ) * `#5908 `_ Voter update (weaverryan) From 9e64dd4c491228f3e867fec485d67820daa3cc24 Mon Sep 17 00:00:00 2001 From: David Joos Date: Sat, 12 Dec 2015 13:24:27 +0000 Subject: [PATCH 130/235] Fix for small typo "$mySevice" => "$myService" --- book/forms.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/book/forms.rst b/book/forms.rst index 996fb877453..2aab3af5d7e 100644 --- a/book/forms.rst +++ b/book/forms.rst @@ -1188,7 +1188,7 @@ type. Create a constructor to your form type to receive the service:: { private $myService; - public function __construct(MyService $mySevice) + public function __construct(MyService $myService) { $this->myService = $myService; } From 433dd041b7f84cd3f66d8a835e810c70298f112e Mon Sep 17 00:00:00 2001 From: Javier Eguiluz Date: Mon, 7 Dec 2015 16:05:24 +0100 Subject: [PATCH 131/235] Added caution notes about the removal of AsseticBundle in 2.8/3.0 --- best_practices/web-assets.rst | 6 ++ book/templating.rst | 6 +- cookbook/assetic/apply_to_option.rst | 6 ++ cookbook/assetic/asset_management.rst | 85 +++++++++++++++++++++++++++ cookbook/assetic/index.rst | 6 ++ cookbook/assetic/jpeg_optimize.rst | 6 ++ cookbook/assetic/php.rst | 6 ++ cookbook/assetic/uglifyjs.rst | 6 ++ cookbook/assetic/yuicompressor.rst | 6 ++ reference/configuration/assetic.rst | 6 ++ reference/twig_reference.rst | 5 +- 11 files changed, 137 insertions(+), 7 deletions(-) diff --git a/best_practices/web-assets.rst b/best_practices/web-assets.rst index a4160d62e2e..61a992b8181 100644 --- a/best_practices/web-assets.rst +++ b/best_practices/web-assets.rst @@ -35,6 +35,12 @@ much more concise: Using Assetic ------------- +.. caution:: + + Starting from Symfony 2.8, Assetic is no longer included by default in the + Symfony Standard Edition. Refer to :doc:`this article ` + to learn how to install and enable Assetic in your Symfony application. + These days, you probably can't simply create static CSS and JavaScript files and include them in your template. Instead, you'll probably want to combine and minify these to improve client-side performance. You may also want to diff --git a/book/templating.rst b/book/templating.rst index f50085219c1..5b76fe410d4 100644 --- a/book/templating.rst +++ b/book/templating.rst @@ -1130,9 +1130,9 @@ advantage of Symfony's template inheritance. .. tip:: This section will teach you the philosophy behind including stylesheet - and JavaScript assets in Symfony. Symfony also packages another library, - called Assetic, which follows this philosophy but allows you to do much - more interesting things with those assets. For more information on + and JavaScript assets in Symfony. Symfony is also compatible with another + library, called Assetic, which follows this philosophy but allows you to do + much more interesting things with those assets. For more information on using Assetic see :doc:`/cookbook/assetic/asset_management`. Start by adding two blocks to your base template that will hold your assets: diff --git a/cookbook/assetic/apply_to_option.rst b/cookbook/assetic/apply_to_option.rst index 22c7506075f..6f132ec4641 100644 --- a/cookbook/assetic/apply_to_option.rst +++ b/cookbook/assetic/apply_to_option.rst @@ -4,6 +4,12 @@ How to Apply an Assetic Filter to a specific File Extension =========================================================== +.. caution:: + + Starting from Symfony 2.8, Assetic is no longer included by default in the + Symfony Standard Edition. Refer to :doc:`this article ` + to learn how to install and enable Assetic in your Symfony application. + Assetic filters can be applied to individual files, groups of files or even, as you'll see here, files that have a specific extension. To show you how to handle each option, suppose that you want to use Assetic's CoffeeScript diff --git a/cookbook/assetic/asset_management.rst b/cookbook/assetic/asset_management.rst index af0055f5795..6fa15d80e5d 100644 --- a/cookbook/assetic/asset_management.rst +++ b/cookbook/assetic/asset_management.rst @@ -4,6 +4,91 @@ How to Use Assetic for Asset Management ======================================= +Installing and Enabling Assetic +------------------------------- + +Starting from Symfony 2.8, Assetic is no longer included by default in the +Symfony Standard Edition. Before using any of its features, install the +AsseticBundle executing this console command in your project: + + .. code-block:: bash + + $ composer require symfony/assetic-bundle + +Then, enable the bundle in the ``AppKernel`` file of your Symfony application:: + + // app/AppKernel.php + + // ... + class AppKernel extends Kernel + { + // ... + + public function registerBundles() + { + $bundles = array( + // ... + new Symfony\Bundle\AsseticBundle\AsseticBundle(), + ); + + // ... + } + } + +Finally, add the following minimal configuration to enable Assetic support in +your application: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/config.yml + assetic: + debug: "%kernel.debug%" + use_controller: false + filters: + cssrewrite: ~ + + # ... + + .. code-block:: xml + + + + + + + + + + + + + .. code-block:: php + + // app/config/config.php + + $container->loadFromExtension('assetic', array( + 'debug' => '%kernel.debug%', + 'use_controller' => '%kernel.debug%', + 'filters' => array( + 'cssrewrite' => null, + ), + // ... + )); + + // ... + +Introducing Assetic +------------------- + Assetic combines two major ideas: :ref:`assets ` and :ref:`filters `. The assets are files such as CSS, JavaScript and image files. The filters are things that can be applied to diff --git a/cookbook/assetic/index.rst b/cookbook/assetic/index.rst index c37efdc16ee..8d2ac650587 100644 --- a/cookbook/assetic/index.rst +++ b/cookbook/assetic/index.rst @@ -1,6 +1,12 @@ Assetic ======= +.. caution:: + + Starting from Symfony 2.8, Assetic is no longer included by default in the + Symfony Standard Edition. Refer to :doc:`this article ` + to learn how to install and enable Assetic in your Symfony application. + .. toctree:: :maxdepth: 2 diff --git a/cookbook/assetic/jpeg_optimize.rst b/cookbook/assetic/jpeg_optimize.rst index c55a32dc800..d479fdd8893 100644 --- a/cookbook/assetic/jpeg_optimize.rst +++ b/cookbook/assetic/jpeg_optimize.rst @@ -4,6 +4,12 @@ How to Use Assetic for Image Optimization with Twig Functions ============================================================= +.. caution:: + + Starting from Symfony 2.8, Assetic is no longer included by default in the + Symfony Standard Edition. Refer to :doc:`this article ` + to learn how to install and enable Assetic in your Symfony application. + Among its many filters, Assetic has four filters which can be used for on-the-fly image optimization. This allows you to get the benefits of smaller file sizes without having to use an image editor to process each image. The results diff --git a/cookbook/assetic/php.rst b/cookbook/assetic/php.rst index c7e8c2e6b26..3bde1e7aef2 100644 --- a/cookbook/assetic/php.rst +++ b/cookbook/assetic/php.rst @@ -4,6 +4,12 @@ Combining, Compiling and Minimizing Web Assets with PHP Libraries ================================================================= +.. caution:: + + Starting from Symfony 2.8, Assetic is no longer included by default in the + Symfony Standard Edition. Refer to :doc:`this article ` + to learn how to install and enable Assetic in your Symfony application. + The official Symfony Best Practices recommend to use Assetic to :doc:`manage web assets `, unless you are comfortable with JavaScript-based front-end tools. diff --git a/cookbook/assetic/uglifyjs.rst b/cookbook/assetic/uglifyjs.rst index a08569647a3..47eb82ba4f6 100644 --- a/cookbook/assetic/uglifyjs.rst +++ b/cookbook/assetic/uglifyjs.rst @@ -4,6 +4,12 @@ How to Minify CSS/JS Files (Using UglifyJS and UglifyCSS) ========================================================= +.. caution:: + + Starting from Symfony 2.8, Assetic is no longer included by default in the + Symfony Standard Edition. Refer to :doc:`this article ` + to learn how to install and enable Assetic in your Symfony application. + `UglifyJS`_ is a JavaScript parser/compressor/beautifier toolkit. It can be used to combine and minify JavaScript assets so that they require less HTTP requests and make your site load faster. `UglifyCSS`_ is a CSS compressor/beautifier diff --git a/cookbook/assetic/yuicompressor.rst b/cookbook/assetic/yuicompressor.rst index 6ae078a8eac..4c2cc87a913 100644 --- a/cookbook/assetic/yuicompressor.rst +++ b/cookbook/assetic/yuicompressor.rst @@ -10,6 +10,12 @@ How to Minify JavaScripts and Stylesheets with YUI Compressor **strongly advised to avoid using YUI utilities** unless strictly necessary. Read :doc:`/cookbook/assetic/uglifyjs` for a modern and up-to-date alternative. +.. caution:: + + Starting from Symfony 2.8, Assetic is no longer included by default in the + Symfony Standard Edition. Refer to :doc:`this article ` + to learn how to install and enable Assetic in your Symfony application. + Yahoo! provides an excellent utility for minifying JavaScripts and stylesheets so they travel over the wire faster, the `YUI Compressor`_. Thanks to Assetic, you can take advantage of this tool very easily. diff --git a/reference/configuration/assetic.rst b/reference/configuration/assetic.rst index c775fc4a407..925f1cf7ac7 100644 --- a/reference/configuration/assetic.rst +++ b/reference/configuration/assetic.rst @@ -4,6 +4,12 @@ AsseticBundle Configuration ("assetic") ======================================= +.. caution:: + + Starting from Symfony 2.8, Assetic is no longer included by default in the + Symfony Standard Edition. Refer to :doc:`this article ` + to learn how to install and enable Assetic in your Symfony application. + Full Default Configuration -------------------------- diff --git a/reference/twig_reference.rst b/reference/twig_reference.rst index 8fd0c083ec9..e19857b8843 100644 --- a/reference/twig_reference.rst +++ b/reference/twig_reference.rst @@ -739,10 +739,7 @@ Those bundles can have other Twig extensions: * **Twig Extensions** includes some interesting extensions that do not belong to the Twig core. You can read more in `the official Twig Extensions - documentation`_; -* **Assetic** adds the ``{% stylesheets %}``, ``{% javascripts %}`` and - ``{% image %}`` tags. You can read more about them in - :doc:`the Assetic Documentation `. + documentation`_. .. _`Twig Reference`: http://twig.sensiolabs.org/documentation#reference .. _`the official Twig Extensions documentation`: http://twig.sensiolabs.org/doc/extensions/index.html From 168072b979d7425a9eddb7f266b74ec9ec1b73e2 Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Sun, 13 Dec 2015 18:55:44 +0100 Subject: [PATCH 132/235] [#5973] some minor tweaks --- best_practices/web-assets.rst | 6 +----- cookbook/assetic/_standard_edition_warning.inc | 5 +++++ cookbook/assetic/apply_to_option.rst | 6 +----- cookbook/assetic/asset_management.rst | 14 ++++++-------- cookbook/assetic/index.rst | 6 +----- cookbook/assetic/jpeg_optimize.rst | 6 +----- cookbook/assetic/php.rst | 6 +----- cookbook/assetic/uglifyjs.rst | 6 +----- cookbook/assetic/yuicompressor.rst | 6 +----- reference/configuration/assetic.rst | 6 +----- 10 files changed, 19 insertions(+), 48 deletions(-) create mode 100644 cookbook/assetic/_standard_edition_warning.inc diff --git a/best_practices/web-assets.rst b/best_practices/web-assets.rst index 61a992b8181..f569c6df53a 100644 --- a/best_practices/web-assets.rst +++ b/best_practices/web-assets.rst @@ -35,11 +35,7 @@ much more concise: Using Assetic ------------- -.. caution:: - - Starting from Symfony 2.8, Assetic is no longer included by default in the - Symfony Standard Edition. Refer to :doc:`this article ` - to learn how to install and enable Assetic in your Symfony application. +.. include:: /cookbook/assetic/_standard_edition_warning.inc These days, you probably can't simply create static CSS and JavaScript files and include them in your template. Instead, you'll probably want to combine diff --git a/cookbook/assetic/_standard_edition_warning.inc b/cookbook/assetic/_standard_edition_warning.inc new file mode 100644 index 00000000000..1ceab3eba35 --- /dev/null +++ b/cookbook/assetic/_standard_edition_warning.inc @@ -0,0 +1,5 @@ +.. caution:: + + Starting from Symfony 2.8, Assetic is no longer included by default in the + Symfony Standard Edition. Refer to :doc:`this article ` + to learn how to install and enable Assetic in your Symfony application. diff --git a/cookbook/assetic/apply_to_option.rst b/cookbook/assetic/apply_to_option.rst index 6f132ec4641..302a72c3eef 100644 --- a/cookbook/assetic/apply_to_option.rst +++ b/cookbook/assetic/apply_to_option.rst @@ -4,11 +4,7 @@ How to Apply an Assetic Filter to a specific File Extension =========================================================== -.. caution:: - - Starting from Symfony 2.8, Assetic is no longer included by default in the - Symfony Standard Edition. Refer to :doc:`this article ` - to learn how to install and enable Assetic in your Symfony application. +.. include:: /cookbook/assetic/_standard_edition_warning.inc Assetic filters can be applied to individual files, groups of files or even, as you'll see here, files that have a specific extension. To show you how diff --git a/cookbook/assetic/asset_management.rst b/cookbook/assetic/asset_management.rst index 6fa15d80e5d..e6019418aac 100644 --- a/cookbook/assetic/asset_management.rst +++ b/cookbook/assetic/asset_management.rst @@ -15,7 +15,7 @@ AsseticBundle executing this console command in your project: $ composer require symfony/assetic-bundle -Then, enable the bundle in the ``AppKernel`` file of your Symfony application:: +Then, enable the bundle in the ``AppKernel.php`` file of your Symfony application:: // app/AppKernel.php @@ -44,8 +44,8 @@ your application: # app/config/config.yml assetic: - debug: "%kernel.debug%" - use_controller: false + debug: '%kernel.debug%' + use_controller: '%kernel.debug%' filters: cssrewrite: ~ @@ -57,12 +57,11 @@ your application: + http://symfony.com/schema/dic/assetic + http://symfony.com/schema/dic/assetic/assetic-1.0.xsd"> @@ -74,7 +73,6 @@ your application: .. code-block:: php // app/config/config.php - $container->loadFromExtension('assetic', array( 'debug' => '%kernel.debug%', 'use_controller' => '%kernel.debug%', diff --git a/cookbook/assetic/index.rst b/cookbook/assetic/index.rst index 8d2ac650587..7389c510d5c 100644 --- a/cookbook/assetic/index.rst +++ b/cookbook/assetic/index.rst @@ -1,11 +1,7 @@ Assetic ======= -.. caution:: - - Starting from Symfony 2.8, Assetic is no longer included by default in the - Symfony Standard Edition. Refer to :doc:`this article ` - to learn how to install and enable Assetic in your Symfony application. +.. include:: /cookbook/assetic/_standard_edition_warning.inc .. toctree:: :maxdepth: 2 diff --git a/cookbook/assetic/jpeg_optimize.rst b/cookbook/assetic/jpeg_optimize.rst index d479fdd8893..55d5f1736f0 100644 --- a/cookbook/assetic/jpeg_optimize.rst +++ b/cookbook/assetic/jpeg_optimize.rst @@ -4,11 +4,7 @@ How to Use Assetic for Image Optimization with Twig Functions ============================================================= -.. caution:: - - Starting from Symfony 2.8, Assetic is no longer included by default in the - Symfony Standard Edition. Refer to :doc:`this article ` - to learn how to install and enable Assetic in your Symfony application. +.. include:: /cookbook/assetic/_standard_edition_warning.inc Among its many filters, Assetic has four filters which can be used for on-the-fly image optimization. This allows you to get the benefits of smaller file sizes diff --git a/cookbook/assetic/php.rst b/cookbook/assetic/php.rst index 3bde1e7aef2..d0bc7dc85a0 100644 --- a/cookbook/assetic/php.rst +++ b/cookbook/assetic/php.rst @@ -4,11 +4,7 @@ Combining, Compiling and Minimizing Web Assets with PHP Libraries ================================================================= -.. caution:: - - Starting from Symfony 2.8, Assetic is no longer included by default in the - Symfony Standard Edition. Refer to :doc:`this article ` - to learn how to install and enable Assetic in your Symfony application. +.. include:: /cookbook/assetic/_standard_edition_warning.inc The official Symfony Best Practices recommend to use Assetic to :doc:`manage web assets `, unless you are diff --git a/cookbook/assetic/uglifyjs.rst b/cookbook/assetic/uglifyjs.rst index 47eb82ba4f6..d05500fb4be 100644 --- a/cookbook/assetic/uglifyjs.rst +++ b/cookbook/assetic/uglifyjs.rst @@ -4,11 +4,7 @@ How to Minify CSS/JS Files (Using UglifyJS and UglifyCSS) ========================================================= -.. caution:: - - Starting from Symfony 2.8, Assetic is no longer included by default in the - Symfony Standard Edition. Refer to :doc:`this article ` - to learn how to install and enable Assetic in your Symfony application. +.. include:: /cookbook/assetic/_standard_edition_warning.inc `UglifyJS`_ is a JavaScript parser/compressor/beautifier toolkit. It can be used to combine and minify JavaScript assets so that they require less HTTP requests diff --git a/cookbook/assetic/yuicompressor.rst b/cookbook/assetic/yuicompressor.rst index 4c2cc87a913..ac8b2980c88 100644 --- a/cookbook/assetic/yuicompressor.rst +++ b/cookbook/assetic/yuicompressor.rst @@ -10,11 +10,7 @@ How to Minify JavaScripts and Stylesheets with YUI Compressor **strongly advised to avoid using YUI utilities** unless strictly necessary. Read :doc:`/cookbook/assetic/uglifyjs` for a modern and up-to-date alternative. -.. caution:: - - Starting from Symfony 2.8, Assetic is no longer included by default in the - Symfony Standard Edition. Refer to :doc:`this article ` - to learn how to install and enable Assetic in your Symfony application. +.. include:: /cookbook/assetic/_standard_edition_warning.inc Yahoo! provides an excellent utility for minifying JavaScripts and stylesheets so they travel over the wire faster, the `YUI Compressor`_. Thanks to Assetic, diff --git a/reference/configuration/assetic.rst b/reference/configuration/assetic.rst index 925f1cf7ac7..10893c5ce5c 100644 --- a/reference/configuration/assetic.rst +++ b/reference/configuration/assetic.rst @@ -4,11 +4,7 @@ AsseticBundle Configuration ("assetic") ======================================= -.. caution:: - - Starting from Symfony 2.8, Assetic is no longer included by default in the - Symfony Standard Edition. Refer to :doc:`this article ` - to learn how to install and enable Assetic in your Symfony application. +.. include:: /cookbook/assetic/_standard_edition_warning.inc Full Default Configuration -------------------------- From 32a63d80bc0b117c79968db3956682d933afb8b0 Mon Sep 17 00:00:00 2001 From: Xavier Leune Date: Wed, 16 Dec 2015 11:59:29 +0100 Subject: [PATCH 133/235] ProfilerStorage configuration The ProfilerStorage other than FileProfilerStorage have been removed in this PR : https://github.com/symfony/symfony/pull/16018 --- cookbook/profiler/storage.rst | 64 ++--------------------------------- 1 file changed, 2 insertions(+), 62 deletions(-) diff --git a/cookbook/profiler/storage.rst b/cookbook/profiler/storage.rst index 37463ae6fee..fc6d8e4da22 100644 --- a/cookbook/profiler/storage.rst +++ b/cookbook/profiler/storage.rst @@ -5,65 +5,5 @@ Switching the Profiler Storage ============================== By default the profile stores the collected data in files in the ``%kernel.cache_dir%/profiler/`` directory. -You can control the storage being used through the ``dsn``, ``username``, -``password`` and ``lifetime`` options. For example, the following configuration -uses MySQL as the storage for the profiler with a lifetime of one hour: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/config.yml - framework: - profiler: - dsn: 'mysql:host=localhost;dbname=%database_name%' - username: '%database_user%' - password: '%database_password%' - lifetime: 3600 - - .. code-block:: xml - - - - - - - - - - .. code-block:: php - - // app/config/config.php - - // ... - $container->loadFromExtension('framework', array( - 'profiler' => array( - 'dsn' => 'mysql:host=localhost;dbname=%database_name%', - 'username' => '%database_user', - 'password' => '%database_password%', - 'lifetime' => 3600, - ), - )); - -The :doc:`HttpKernel component ` currently -supports the following profiler storage drivers: - -* file -* sqlite -* mysql -* mongodb -* memcache -* memcached -* redis +You can control the storage by implementing the ``Symfony\Component\HttpKernel\Profiler\ProfilerStorageInterface`` in +your own service and override the ``profiler.storage`` service. From 77999b28ad85cf1314347a1fb14bd560ec738357 Mon Sep 17 00:00:00 2001 From: Roy Van Ginneken Date: Wed, 16 Dec 2015 13:26:19 +0100 Subject: [PATCH 134/235] Update guard-authentication.rst --- cookbook/security/guard-authentication.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/security/guard-authentication.rst b/cookbook/security/guard-authentication.rst index a19afaf7948..b5d6e264e60 100644 --- a/cookbook/security/guard-authentication.rst +++ b/cookbook/security/guard-authentication.rst @@ -44,7 +44,7 @@ property they use to access their account via the API:: private $username; /** - * @ORM\Column(type"string", unique=true) + * @ORM\Column(type="string", unique=true) */ private $apiKey; From a46a8567b3eba4ca599857e59a78391a24cdab0a Mon Sep 17 00:00:00 2001 From: Roy Van Ginneken Date: Wed, 16 Dec 2015 14:12:10 +0100 Subject: [PATCH 135/235] Update guard-authentication.rst --- cookbook/security/guard-authentication.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cookbook/security/guard-authentication.rst b/cookbook/security/guard-authentication.rst index a19afaf7948..b55056bbfbb 100644 --- a/cookbook/security/guard-authentication.rst +++ b/cookbook/security/guard-authentication.rst @@ -189,12 +189,12 @@ This requires you to implement six methods:: public function getUser($credentials, UserProviderInterface $userProvider) { - $apiToken = $credentials['token']; + $apiKey = $credentials['token']; // if null, authentication will fail // if a User object, checkCredentials() is called return $this->em->getRepository('AppBundle:User') - ->findOneBy(array('apiToken' => $apiToken)); + ->findOneBy(array('apiKey' => $apiKey)); } public function checkCredentials($credentials, UserInterface $user) From a7effb888b8c1abb0bc789be01a10a2f327b6ee4 Mon Sep 17 00:00:00 2001 From: Zac Sturgess Date: Thu, 17 Dec 2015 16:36:44 +0000 Subject: [PATCH 136/235] Fix #6037 --- components/yaml/introduction.rst | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/components/yaml/introduction.rst b/components/yaml/introduction.rst index adb0d0956e6..c4104e01e40 100644 --- a/components/yaml/introduction.rst +++ b/components/yaml/introduction.rst @@ -135,16 +135,9 @@ It may also be convenient to use the $yaml = Yaml::parse(file_get_contents('/path/to/file.yml')); -The :method:`Symfony\\Component\\Yaml\\Yaml::parse` static method takes a YAML -string or a file containing YAML. Internally, it calls the -:method:`Symfony\\Component\\Yaml\\Parser::parse` method, but enhances the -error if something goes wrong by adding the filename to the message. - -.. caution:: - - Because it is currently possible to pass a filename to this method, you - must validate the input first. Passing a filename is deprecated in - Symfony 2.2, and will be removed in Symfony 3.0. +The :method:`Symfony\\Component\\Yaml\\Yaml::parse` static method takes a YAML string. +Internally, it constructs a :class:`Symfony\\Component\\Yaml\\Parser` object and calls +the :method:`Symfony\\Component\\Yaml\\Parser::parse` method. .. _components-yaml-dump: From cb54c5e4834c9ae6becb7a7170bfe9ecc078b73f Mon Sep 17 00:00:00 2001 From: leunggamciu Date: Tue, 8 Dec 2015 12:33:53 +0800 Subject: [PATCH 137/235] RequestStack parameter is required since 3.0 --- components/http_kernel/introduction.rst | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/components/http_kernel/introduction.rst b/components/http_kernel/introduction.rst index 692698eceb0..fd4682a9a53 100644 --- a/components/http_kernel/introduction.rst +++ b/components/http_kernel/introduction.rst @@ -616,6 +616,7 @@ However, the HttpKernel component comes with some built-in listeners and a built-in ControllerResolver that can be used to create a working example:: use Symfony\Component\HttpFoundation\Request; + use Symfony\Component\HttpFoundation\RequestStack; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpKernel\HttpKernel; use Symfony\Component\EventDispatcher\EventDispatcher; @@ -641,7 +642,7 @@ a built-in ControllerResolver that can be used to create a working example:: $matcher = new UrlMatcher($routes, new RequestContext()); $dispatcher = new EventDispatcher(); - $dispatcher->addSubscriber(new RouterListener($matcher)); + $dispatcher->addSubscriber(new RouterListener($matcher, new RequestStack())); $resolver = new ControllerResolver(); $kernel = new HttpKernel($dispatcher, $resolver); From fac60234151c2e9dcb49238a0d5b6f6cd4ad1130 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Fri, 18 Dec 2015 11:32:56 +0100 Subject: [PATCH 138/235] [#5662] Update versions to 2.8 --- book/installation.rst | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/book/installation.rst b/book/installation.rst index 572c6ff03e2..aee59fdbaf7 100644 --- a/book/installation.rst +++ b/book/installation.rst @@ -98,14 +98,14 @@ optional second argument of the ``new`` command: # use the most recent version in any Symfony branch $ symfony new my_project_name 2.6 - $ symfony new my_project_name 2.7 + $ symfony new my_project_name 2.8 # use a specific Symfony version - $ symfony new my_project_name 2.6.5 $ symfony new my_project_name 2.7.3 + $ symfony new my_project_name 2.8.1 # use a beta or RC version (useful for testing new Symfony versions) - $ symfony new my_project 2.7.0-BETA1 + $ symfony new my_project 2.8.0-BETA1 $ symfony new my_project 2.7.0-RC1 The installer also supports a special version called ``lts`` which installs the @@ -152,7 +152,7 @@ version as the second argument of the ``create-project`` command: .. code-block:: bash - $ composer create-project symfony/framework-standard-edition my_project_name "2.7.*" + $ composer create-project symfony/framework-standard-edition my_project_name "2.8.*" .. tip:: From 786096e8ce6cd97419a631ac2a47b8141c0b6673 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Fri, 18 Dec 2015 11:33:58 +0100 Subject: [PATCH 139/235] Update Symfony version to 3.0 --- book/installation.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/book/installation.rst b/book/installation.rst index db176b350a9..54ce48ec930 100644 --- a/book/installation.rst +++ b/book/installation.rst @@ -97,15 +97,15 @@ optional second argument of the ``new`` command: .. code-block:: bash # use the most recent version in any Symfony branch - $ symfony new my_project_name 2.6 $ symfony new my_project_name 2.8 + $ symfony new my_project_name 3.0 # use a specific Symfony version $ symfony new my_project_name 2.7.3 $ symfony new my_project_name 2.8.1 # use a beta or RC version (useful for testing new Symfony versions) - $ symfony new my_project 2.8.0-BETA1 + $ symfony new my_project 3.0.0-BETA1 $ symfony new my_project 2.7.0-RC1 The installer also supports a special version called ``lts`` which installs the @@ -152,7 +152,7 @@ version as the second argument of the ``create-project`` command: .. code-block:: bash - $ composer create-project symfony/framework-standard-edition my_project_name "2.8.*" + $ composer create-project symfony/framework-standard-edition my_project_name "3.0.*" .. tip:: From 3b2f4d07cf8c4466433534c50084d7c1293c3a86 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Fri, 18 Dec 2015 11:39:35 +0100 Subject: [PATCH 140/235] [#5966] Removed no longer used ref target --- components/security/secure_tools.rst | 2 -- 1 file changed, 2 deletions(-) diff --git a/components/security/secure_tools.rst b/components/security/secure_tools.rst index 32860f6fa2d..4363f25fa36 100644 --- a/components/security/secure_tools.rst +++ b/components/security/secure_tools.rst @@ -45,5 +45,3 @@ to work correctly. Just pass a file name to enable it:: as storing this value in a database or including it as part of the URL. The solution is to hash the value returned by ``nextBytes()`` (to do that, you can use a simple ``md5()`` PHP function). - -.. _`Timing attack`: https://en.wikipedia.org/wiki/Timing_attack From 691616c8ff80eafec19690224dcb73f4fcf0ea75 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Fri, 31 Jul 2015 20:04:25 +0200 Subject: [PATCH 141/235] Remove 2.6 versionaddeds as version reached eom --- book/controller.rst | 21 ++------- book/routing.rst | 3 -- book/security.rst | 16 ------- book/service_container.rst | 3 -- book/templating.rst | 6 --- book/testing.rst | 3 -- book/translation.rst | 6 --- components/config/definition.rst | 4 -- components/console/events.rst | 3 -- .../console/helpers/debug_formatter.rst | 3 -- components/console/helpers/processhelper.rst | 3 -- components/console/helpers/progressbar.rst | 14 ------ components/dependency_injection/factories.rst | 5 --- components/dom_crawler.rst | 4 -- components/event_dispatcher/introduction.rst | 4 -- components/expression_language/extending.rst | 3 -- components/filesystem/lock_handler.rst | 3 -- components/http_foundation/introduction.rst | 3 -- components/options_resolver.rst | 44 ------------------- components/security/authentication.rst | 5 --- components/security/authorization.rst | 5 --- components/security/firewall.rst | 5 --- components/serializer.rst | 8 ---- components/var_dumper/introduction.rst | 5 +-- cookbook/controller/error_pages.rst | 4 -- cookbook/controller/service.rst | 3 -- cookbook/doctrine/mapping_model_classes.rst | 6 --- cookbook/doctrine/pdo_session_storage.rst | 28 ------------ cookbook/event_dispatcher/event_listener.rst | 3 -- cookbook/form/create_custom_field_type.rst | 4 -- cookbook/form/dynamic_form_modification.rst | 9 ---- cookbook/profiler/matchers.rst | 9 ---- .../custom_password_authenticator.rst | 9 +--- cookbook/security/form_login_setup.rst | 5 --- cookbook/security/pre_authenticated.rst | 3 -- cookbook/validation/severity.rst | 7 --- cookbook/web_server/built_in.rst | 4 -- reference/configuration/debug.rst | 3 -- reference/configuration/framework.rst | 14 ------ reference/configuration/security.rst | 4 -- reference/constraints/Expression.rst | 6 --- reference/constraints/File.rst | 10 ----- reference/constraints/GreaterThan.rst | 3 -- reference/constraints/GreaterThanOrEqual.rst | 3 -- reference/constraints/LessThan.rst | 3 -- reference/constraints/LessThanOrEqual.rst | 3 -- reference/constraints/_payload-option.rst.inc | 3 -- reference/dic_tags.rst | 8 ---- reference/forms/types/date.rst | 4 -- reference/forms/types/form.rst | 3 -- reference/forms/types/options/html5.rst.inc | 3 -- .../forms/types/options/placeholder.rst.inc | 4 -- reference/map.rst.inc | 2 +- reference/twig_reference.rst | 11 ----- 54 files changed, 8 insertions(+), 352 deletions(-) diff --git a/book/controller.rst b/book/controller.rst index 13a19afb334..e15d2225b92 100644 --- a/book/controller.rst +++ b/book/controller.rst @@ -441,10 +441,6 @@ If you want to redirect the user to another page, use the ``redirectToRoute()`` // return $this->redirect($this->generateUrl('homepage'), 301); } -.. versionadded:: 2.6 - The ``redirectToRoute()`` method was introduced in Symfony 2.6. Previously (and still now), you - could use ``redirect()`` and ``generateUrl()`` together for this (see the example above). - Or, if you want to redirect externally, just use ``redirect()`` and pass it the URL:: public function indexAction() @@ -536,9 +532,6 @@ console command: $ php app/console debug:container -.. versionadded:: 2.6 - Prior to Symfony 2.6, this command was called ``container:debug``. - For more information, see the :doc:`/book/service_container` chapter. .. index:: @@ -825,16 +818,10 @@ method to check the CSRF token:: // ... do something, like deleting an object } -.. versionadded:: 2.6 - The ``isCsrfTokenValid()`` shortcut method was introduced in Symfony 2.6. - It is equivalent to executing the following code: - - .. code-block:: php - - use Symfony\Component\Security\Csrf\CsrfToken; - - $this->get('security.csrf.token_manager') - ->isTokenValid(new CsrfToken('token_id', 'TOKEN')); + // isCsrfTokenValid() is equivalent to: + // $this->get('security.csrf.token_manager')->isTokenValid() + // new \Symfony\Component\Security\Csrf\CsrfToken\CsrfToken('token_id', $token) + // ); Final Thoughts -------------- diff --git a/book/routing.rst b/book/routing.rst index 39d32735434..54cbd135be8 100644 --- a/book/routing.rst +++ b/book/routing.rst @@ -1403,9 +1403,6 @@ the command by running the following from the root of your project. $ php app/console debug:router -.. versionadded:: 2.6 - Prior to Symfony 2.6, this command was called ``router:debug``. - This command will print a helpful list of *all* the configured routes in your application: diff --git a/book/security.rst b/book/security.rst index f7ebdccb824..95cae07f881 100644 --- a/book/security.rst +++ b/book/security.rst @@ -846,15 +846,6 @@ You can easily deny access from inside a controller:: // ... } -.. versionadded:: 2.6 - The ``denyAccessUnlessGranted()`` method was introduced in Symfony 2.6. Previously (and - still now), you could check access directly and throw the ``AccessDeniedException`` as shown - in the example above). - -.. versionadded:: 2.6 - The ``security.authorization_checker`` service was introduced in Symfony 2.6. Prior - to Symfony 2.6, you had to use the ``isGranted()`` method of the ``security.context`` service. - In both cases, a special :class:`Symfony\\Component\\Security\\Core\\Exception\\AccessDeniedException` is thrown, which ultimately triggers a 403 HTTP response inside Symfony. @@ -1019,10 +1010,6 @@ shown above. Retrieving the User Object -------------------------- -.. versionadded:: 2.6 - The ``security.token_storage`` service was introduced in Symfony 2.6. Prior - to Symfony 2.6, you had to use the ``getToken()`` method of the ``security.context`` service. - After authentication, the ``User`` object of the current user can be accessed via the ``security.token_storage`` service. From inside a controller, this will look like:: @@ -1223,9 +1210,6 @@ in the following way from a controller:: $user->setPassword($encoded); -.. versionadded:: 2.6 - The ``security.password_encoder`` service was introduced in Symfony 2.6. - In order for this to work, just make sure that you have the encoder for your user class (e.g. ``AppBundle\Entity\User``) configured under the ``encoders`` key in ``app/config/security.yml``. diff --git a/book/service_container.rst b/book/service_container.rst index 4616b216056..f7b9de619b7 100644 --- a/book/service_container.rst +++ b/book/service_container.rst @@ -1150,9 +1150,6 @@ console. To show all services and the class for each service, run: $ php app/console debug:container -.. versionadded:: 2.6 - Prior to Symfony 2.6, this command was called ``container:debug``. - By default, only public services are shown, but you can also view private services: .. code-block:: bash diff --git a/book/templating.rst b/book/templating.rst index 5b76fe410d4..c147a630f64 100644 --- a/book/templating.rst +++ b/book/templating.rst @@ -1269,12 +1269,6 @@ automatically:

Application Environment: getEnvironment() ?>

-.. versionadded:: 2.6 - The global ``app.security`` variable (or the ``$app->getSecurity()`` - method in PHP templates) is deprecated as of Symfony 2.6. Use ``app.user`` - (``$app->getUser()``) and ``is_granted()`` (``$view['security']->isGranted()``) - instead. - .. tip:: You can add your own global template variables. See the cookbook example diff --git a/book/testing.rst b/book/testing.rst index 9dc85d4cba8..2bbbcd91c25 100644 --- a/book/testing.rst +++ b/book/testing.rst @@ -472,9 +472,6 @@ Be warned that this does not work if you insulate the client or if you use an HTTP layer. For a list of services available in your application, use the ``debug:container`` console task. -.. versionadded:: 2.6 - Prior to Symfony 2.6, this command was called ``container:debug``. - .. tip:: If the information you need to check is available from the profiler, use diff --git a/book/translation.rst b/book/translation.rst index 08fcc57d9d7..26e39ac2f1b 100644 --- a/book/translation.rst +++ b/book/translation.rst @@ -452,9 +452,6 @@ checks translation resources for several locales: #. If the translation still isn't found, Symfony uses the ``fallbacks`` configuration parameter, which defaults to ``en`` (see `Configuration`_). -.. versionadded:: 2.6 - The ability to log missing translations was introduced in Symfony 2.6. - .. note:: When Symfony doesn't find a translation in the given locale, it will @@ -746,9 +743,6 @@ For more information, see the documentation for these libraries. Debugging Translations ---------------------- -.. versionadded:: 2.6 - Prior to Symfony 2.6, this command was called ``translation:debug``. - When maintaining a bundle, you may use or remove the usage of a translation message without updating all message catalogues. The ``debug:translation`` command helps you to find these missing or unused translation messages for a diff --git a/components/config/definition.rst b/components/config/definition.rst index f0291c5dfe0..89f4bdfa12d 100644 --- a/components/config/definition.rst +++ b/components/config/definition.rst @@ -421,10 +421,6 @@ method. The info will be printed as a comment when dumping the configuration tree with the ``config:dump-reference`` command. -.. versionadded:: 2.6 - Since Symfony 2.6, the info will also be added to the exception message - when an invalid type is given. - Optional Sections ----------------- diff --git a/components/console/events.rst b/components/console/events.rst index e5b51c910a1..ecbe68c1e25 100644 --- a/components/console/events.rst +++ b/components/console/events.rst @@ -59,9 +59,6 @@ dispatched. Listeners receive a Disable Commands inside Listeners ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -.. versionadded:: 2.6 - Disabling commands inside listeners was introduced in Symfony 2.6. - Using the :method:`Symfony\\Component\\Console\\Event\\ConsoleCommandEvent::disableCommand` method, you can disable a command inside a listener. The application diff --git a/components/console/helpers/debug_formatter.rst b/components/console/helpers/debug_formatter.rst index b5af8bb9782..d48b6a9e060 100644 --- a/components/console/helpers/debug_formatter.rst +++ b/components/console/helpers/debug_formatter.rst @@ -4,9 +4,6 @@ Debug Formatter Helper ====================== -.. versionadded:: 2.6 - The Debug Formatter helper was introduced in Symfony 2.6. - The :class:`Symfony\\Component\\Console\\Helper\\DebugFormatterHelper` provides functions to output debug information when running an external program, for instance a process or HTTP request. For example, if you used it to output diff --git a/components/console/helpers/processhelper.rst b/components/console/helpers/processhelper.rst index 5494ca0137f..6a4f7c6f6b5 100644 --- a/components/console/helpers/processhelper.rst +++ b/components/console/helpers/processhelper.rst @@ -4,9 +4,6 @@ Process Helper ============== -.. versionadded:: 2.6 - The Process Helper was introduced in Symfony 2.6. - The Process Helper shows processes as they're running and reports useful information about process status. diff --git a/components/console/helpers/progressbar.rst b/components/console/helpers/progressbar.rst index 3c97a53ec49..0e73aa91231 100644 --- a/components/console/helpers/progressbar.rst +++ b/components/console/helpers/progressbar.rst @@ -40,14 +40,6 @@ Instead of advancing the bar by a number of steps (with the you can also set the current progress by calling the :method:`Symfony\\Component\\Console\\Helper\\ProgressBar::setProgress` method. -.. versionadded:: 2.6 - The ``setProgress()`` method was called ``setCurrent()`` prior to Symfony 2.6. - -.. caution:: - - Prior to version 2.6, the progress bar only works if your platform - supports ANSI codes; on other platforms, no output is generated. - .. tip:: If your platform doesn't support ANSI codes, updates to the progress @@ -57,9 +49,6 @@ you can also set the current progress by calling the accordingly. By default, when using a ``max``, the redraw frequency is set to *10%* of your ``max``. - .. versionadded:: 2.6 - The ``setRedrawFrequency()`` method was introduced in Symfony 2.6. - If you don't know the number of steps in advance, just omit the steps argument when creating the :class:`Symfony\\Component\\Console\\Helper\\ProgressBar` instance:: @@ -307,9 +296,6 @@ that displays the number of remaining steps:: } ); -.. versionadded:: 2.6 - The ``getProgress()`` method was called ``getStep()`` prior to Symfony 2.6. - Custom Messages ~~~~~~~~~~~~~~~ diff --git a/components/dependency_injection/factories.rst b/components/dependency_injection/factories.rst index e0a351e6dad..9fd0a5211f3 100644 --- a/components/dependency_injection/factories.rst +++ b/components/dependency_injection/factories.rst @@ -12,11 +12,6 @@ For this situation, you can use a factory to create the object and tell the service container to call a method on the factory rather than directly instantiating the class. -.. versionadded:: 2.6 - The new :method:`Symfony\\Component\\DependencyInjection\\Definition::setFactory` - method was introduced in Symfony 2.6. Refer to older versions for the - syntax for factories prior to 2.6. - Suppose you have a factory that configures and returns a new ``NewsletterManager`` object:: diff --git a/components/dom_crawler.rst b/components/dom_crawler.rst index f9a3fe030f3..f99e382dbee 100644 --- a/components/dom_crawler.rst +++ b/components/dom_crawler.rst @@ -190,10 +190,6 @@ Get all the child or parent nodes:: Accessing Node Values ~~~~~~~~~~~~~~~~~~~~~ -.. versionadded:: 2.6 - The :method:`Symfony\\Component\\DomCrawler\\Crawler::nodeName` - method was introduced in Symfony 2.6. - Access the node name (HTML tag name) of the first node of the current selection (eg. "p" or "div"):: // will return the node name (HTML tag name) of the first child element under diff --git a/components/event_dispatcher/introduction.rst b/components/event_dispatcher/introduction.rst index 8a8654c8901..8a5b678cc95 100644 --- a/components/event_dispatcher/introduction.rst +++ b/components/event_dispatcher/introduction.rst @@ -628,10 +628,6 @@ and so on... Event Name Introspection ~~~~~~~~~~~~~~~~~~~~~~~~ -.. versionadded:: 2.4 - Before Symfony 2.4, the event name and the event dispatcher had to be - requested from the ``Event`` instance. These methods are now deprecated. - The ``EventDispatcher`` instance, as well as the name of the event that is dispatched, are passed as arguments to the listener:: diff --git a/components/expression_language/extending.rst b/components/expression_language/extending.rst index fa90165014d..eeb9963c6c6 100644 --- a/components/expression_language/extending.rst +++ b/components/expression_language/extending.rst @@ -56,9 +56,6 @@ evaluating or the "names" if compiling). Using Expression Providers -------------------------- -.. versionadded:: 2.6 - Expression providers were introduced in Symfony 2.6. - When you use the ``ExpressionLanguage`` class in your library, you often want to add custom functions. To do so, you can create a new expression provider by creating a class that implements diff --git a/components/filesystem/lock_handler.rst b/components/filesystem/lock_handler.rst index 5d442e79547..90efe6b1033 100644 --- a/components/filesystem/lock_handler.rst +++ b/components/filesystem/lock_handler.rst @@ -1,9 +1,6 @@ LockHandler =========== -.. versionadded:: 2.6 - The lock handler feature was introduced in Symfony 2.6 - What is a Lock? --------------- diff --git a/components/http_foundation/introduction.rst b/components/http_foundation/introduction.rst index 8b9073a1749..b929a9d5fcb 100644 --- a/components/http_foundation/introduction.rst +++ b/components/http_foundation/introduction.rst @@ -512,9 +512,6 @@ You can still set the ``Content-Type`` of the sent file, or change its ``Content 'filename.txt' ); -.. versionadded:: 2.6 - The ``deleteFileAfterSend()`` method was introduced in Symfony 2.6. - It is possible to delete the file after the request is sent with the :method:`Symfony\\Component\\HttpFoundation\\BinaryFileResponse::deleteFileAfterSend` method. Please note that this will not work when the ``X-Sendfile`` header is set. diff --git a/components/options_resolver.rst b/components/options_resolver.rst index 436d54e5109..832734ba5d4 100644 --- a/components/options_resolver.rst +++ b/components/options_resolver.rst @@ -22,11 +22,6 @@ You can install the component in 2 different ways: Notes on Previous Versions -------------------------- -.. versionadded:: 2.6 - This documentation was written for Symfony 2.6 and later. If you use an older - version, please `read the Symfony 2.5 documentation`_. For a list of changes, - see the `CHANGELOG`_. - Usage ----- @@ -222,10 +217,6 @@ For example, to make the ``host`` option required, you can do:: } } -.. versionadded:: 2.6 - As of Symfony 2.6, ``setRequired()`` accepts both an array of options or a - single option. Prior to 2.6, you could only pass arrays. - If you omit a required option, a :class:`Symfony\\Component\\OptionsResolver\\Exception\\MissingOptionsException` will be thrown:: @@ -250,11 +241,6 @@ one required option:: } } -.. versionadded:: 2.6 - The methods :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::isRequired` - and :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::getRequiredOptions` - were introduced in Symfony 2.6. - Use :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::isRequired` to find out if an option is required. You can use :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::getRequiredOptions` to @@ -275,11 +261,6 @@ retrieve the names of all required options:: } } -.. versionadded:: 2.6 - The methods :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::isMissing` - and :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::getMissingOptions` - were introduced in Symfony 2.6. - If you want to check whether a required option is still missing from the default options, you can use :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::isMissing`. The difference between this and :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::isRequired` @@ -362,11 +343,6 @@ is thrown:: In sub-classes, you can use :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::addAllowedTypes` to add additional allowed types without erasing the ones already set. -.. versionadded:: 2.6 - Before Symfony 2.6, ``setAllowedTypes()`` and ``addAllowedTypes()`` expected - the values to be given as an array mapping option names to allowed types: - ``$resolver->setAllowedTypes(array('port' => array('null', 'int')));`` - Value Validation ~~~~~~~~~~~~~~~~ @@ -413,11 +389,6 @@ returns ``true`` for acceptable values and ``false`` for invalid values:: In sub-classes, you can use :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::addAllowedValues` to add additional allowed values without erasing the ones already set. -.. versionadded:: 2.6 - Before Symfony 2.6, ``setAllowedValues()`` and ``addAllowedValues()`` expected - the values to be given as an array mapping option names to allowed values: - ``$resolver->setAllowedValues(array('transport' => array('sendmail', 'mail', 'smtp')));`` - Option Normalization ~~~~~~~~~~~~~~~~~~~~ @@ -448,11 +419,6 @@ option. You can configure a normalizer by calling } } -.. versionadded:: 2.6 - The method :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::setNormalizer` - was introduced in Symfony 2.6. Before, you had to use - :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::setNormalizers`. - The normalizer receives the actual ``$value`` and returns the normalized form. You see that the closure also takes an ``$options`` parameter. This is useful if you need to use other options during normalization:: @@ -587,11 +553,6 @@ comes from the default:: } } -.. versionadded:: 2.6 - The method :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::setDefined` - was introduced in Symfony 2.6. Before, you had to use - :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::setOptional`. - You can use :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::setDefined` to define an option without setting a default value. Then the option will only be included in the resolved options if it was actually passed to @@ -643,11 +604,6 @@ options in one go:: } } -.. versionadded:: 2.6 - The method :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::isDefined` - and :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::getDefinedOptions` - were introduced in Symfony 2.6. - The methods :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::isDefined` and :method:`Symfony\\Component\\OptionsResolver\\OptionsResolver::getDefinedOptions` let you find out which options are defined:: diff --git a/components/security/authentication.rst b/components/security/authentication.rst index e1d0834be67..3fd114b6b0d 100644 --- a/components/security/authentication.rst +++ b/components/security/authentication.rst @@ -4,11 +4,6 @@ Authentication ============== -.. versionadded:: 2.6 - The ``TokenStorageInterface`` was introduced in Symfony 2.6. Prior, you - had to use the ``getToken()`` method of the - :class:`Symfony\\Component\\Security\\Core\\SecurityContextInterface`. - When a request points to a secured area, and one of the listeners from the firewall map is able to extract the user's credentials from the current :class:`Symfony\\Component\\HttpFoundation\\Request` object, it should create diff --git a/components/security/authorization.rst b/components/security/authorization.rst index 7c613ef0c33..eb24034b1e5 100644 --- a/components/security/authorization.rst +++ b/components/security/authorization.rst @@ -29,11 +29,6 @@ An authorization decision will always be based on a few things: Any object for which access control needs to be checked, like an article or a comment object. -.. versionadded:: 2.6 - The ``TokenStorageInterface`` was introduced in Symfony 2.6. Prior, you - had to use the ``setToken()`` method of the - :class:`Symfony\\Component\\Security\\Core\\SecurityContextInterface`. - .. _components-security-access-decision-manager: Access Decision Manager diff --git a/components/security/firewall.rst b/components/security/firewall.rst index 64603efb319..c3fe82f4c49 100644 --- a/components/security/firewall.rst +++ b/components/security/firewall.rst @@ -34,11 +34,6 @@ certain action or resource of the application:: throw new AccessDeniedException(); } -.. versionadded:: 2.6 - As of Symfony 2.6, the :class:`Symfony\\Component\\Security\\Core\\SecurityContext` class was split - in the :class:`Symfony\\Component\\Security\\Core\\Authorization\\AuthorizationChecker` and - :class:`Symfony\\Component\\Security\\Core\\Authentication\\Token\\Storage\\TokenStorage` classes. - .. note:: Read the dedicated sections to learn more about :doc:`/components/security/authentication` diff --git a/components/serializer.rst b/components/serializer.rst index d2ff3066263..8f014238475 100644 --- a/components/serializer.rst +++ b/components/serializer.rst @@ -529,10 +529,6 @@ There are several types of normalizers available: Objects are normalized to a map of property names to property values. -.. versionadded:: 2.6 - The :class:`Symfony\\Component\\Serializer\\Normalizer\\PropertyNormalizer` - class was introduced in Symfony 2.6. - .. versionadded:: 2.7 The :class:`Symfony\\Component\\Serializer\\Normalizer\\ObjectNormalizer` class was introduced in Symfony 2.7. @@ -540,10 +536,6 @@ There are several types of normalizers available: Handling Circular References ---------------------------- -.. versionadded:: 2.6 - Handling of circular references was introduced in Symfony 2.6. In previous - versions of Symfony, circular references led to infinite loops. - Circular references are common when dealing with entity relations:: class Organization diff --git a/components/var_dumper/introduction.rst b/components/var_dumper/introduction.rst index 8f11a198c4d..0083cf3c6fc 100644 --- a/components/var_dumper/introduction.rst +++ b/components/var_dumper/introduction.rst @@ -9,9 +9,6 @@ The VarDumper Component arbitrary PHP variable. Built on top, it provides a better ``dump()`` function that you can use instead of :phpfunction:`var_dump`. -.. versionadded:: 2.6 - The VarDumper component was introduced in Symfony 2.6. - Installation ------------ @@ -79,7 +76,7 @@ DebugBundle and Twig Integration The DebugBundle allows greater integration of the component into the Symfony full-stack framework. It is enabled by default in the *dev* and *test* -environment of the standard edition since version 2.6. +environment of the Symfony Standard Edition. Since generating (even debug) output in the controller or in the model of your application may just break it by e.g. sending HTTP headers or diff --git a/cookbook/controller/error_pages.rst b/cookbook/controller/error_pages.rst index e516976128a..61c7769a5dc 100644 --- a/cookbook/controller/error_pages.rst +++ b/cookbook/controller/error_pages.rst @@ -136,10 +136,6 @@ what it looks like and debug it? Fortunately, the default ``ExceptionController`` allows you to preview your *error* pages during development. -.. versionadded:: 2.6 - This feature was introduced in Symfony 2.6. Before, the third-party - `WebfactoryExceptionsBundle`_ could be used for the same purpose. - To use this feature, you need to have a definition in your ``routing_dev.yml`` file like so: diff --git a/cookbook/controller/service.rst b/cookbook/controller/service.rst index 05c812df270..44ee81ab9f6 100644 --- a/cookbook/controller/service.rst +++ b/cookbook/controller/service.rst @@ -127,9 +127,6 @@ the route ``_controller`` value: If your controller implements the ``__invoke()`` method, you can simply refer to the service id (``app.hello_controller``). - .. versionadded:: 2.6 - Support for ``__invoke()`` was introduced in Symfony 2.6. - Alternatives to base Controller Methods --------------------------------------- diff --git a/cookbook/doctrine/mapping_model_classes.rst b/cookbook/doctrine/mapping_model_classes.rst index acace8725f2..6cbb748c1a6 100644 --- a/cookbook/doctrine/mapping_model_classes.rst +++ b/cookbook/doctrine/mapping_model_classes.rst @@ -23,12 +23,6 @@ register the mappings for your model classes. compiler pass since the `CouchDB Mapping Compiler Pass pull request`_ was merged. -.. versionadded:: 2.6 - Support for defining namespace aliases was introduced in Symfony 2.6. - It is safe to define the aliases with older versions of Symfony as - the aliases are the last argument to ``createXmlMappingDriver`` and - are ignored by PHP if that argument doesn't exist. - In your bundle class, write the following code to register the compiler pass. This one is written for the CmfRoutingBundle, so parts of it will need to be adapted for your case:: diff --git a/cookbook/doctrine/pdo_session_storage.rst b/cookbook/doctrine/pdo_session_storage.rst index fd088a4dec7..0e2c923d5d9 100644 --- a/cookbook/doctrine/pdo_session_storage.rst +++ b/cookbook/doctrine/pdo_session_storage.rst @@ -4,12 +4,6 @@ How to Use PdoSessionHandler to Store Sessions in the Database ============================================================== -.. caution:: - - There was a backwards-compatibility break in Symfony 2.6: the database - schema changed slightly. See :ref:`Symfony 2.6 Changes ` - for details. - The default Symfony session storage writes the session information to files. Most medium to large websites use a database to store the session values instead of files, because databases are easier to use and scale in a @@ -122,10 +116,6 @@ a second array argument to ``PdoSessionHandler``: )); $container->setDefinition('session.handler.pdo', $storageDefinition); -.. versionadded:: 2.6 - The ``db_lifetime_col`` was introduced in Symfony 2.6. Prior to 2.6, - this column did not exist. - These are parameters that you must configure: ``db_table`` (default ``sessions``): @@ -193,24 +183,6 @@ Before storing sessions in the database, you must create the table that stores the information. The following sections contain some examples of the SQL statements you may use for your specific database engine. -.. _pdo-session-handle-26-changes: - -.. sidebar:: Schema Changes needed when Upgrading to Symfony 2.6 - - If you use the ``PdoSessionHandler`` prior to Symfony 2.6 and upgrade, you'll - need to make a few changes to your session table: - - * A new session lifetime (``sess_lifetime`` by default) integer column - needs to be added; - * The data column (``sess_data`` by default) needs to be changed to a - BLOB type. - - Check the SQL statements below for more details. - - To keep the old (2.5 and earlier) functionality, change your class name - to use ``LegacyPdoSessionHandler`` instead of ``PdoSessionHandler`` (the - legacy class was added in Symfony 2.6.2). - MySQL ~~~~~ diff --git a/cookbook/event_dispatcher/event_listener.rst b/cookbook/event_dispatcher/event_listener.rst index 19ceebf755f..ac7703ce534 100644 --- a/cookbook/event_dispatcher/event_listener.rst +++ b/cookbook/event_dispatcher/event_listener.rst @@ -266,9 +266,6 @@ there are some minor advantages for each of them: Debugging Event Listeners ------------------------- -.. versionadded:: 2.6 - The ``debug:event-dispatcher`` command was introduced in Symfony 2.6. - You can find out what listeners are registered in the event dispatcher using the console. To show all events and their listeners, run: diff --git a/cookbook/form/create_custom_field_type.rst b/cookbook/form/create_custom_field_type.rst index 65df497d679..c22eec89494 100644 --- a/cookbook/form/create_custom_field_type.rst +++ b/cookbook/form/create_custom_field_type.rst @@ -259,10 +259,6 @@ But this only works because the ``GenderType`` is very simple. What if the gender codes were stored in configuration or in a database? The next section explains how more complex field types solve this problem. -.. versionadded:: 2.6 - The ``placeholder`` option was introduced in Symfony 2.6 in favor of - ``empty_value``, which is available prior to 2.6. - .. _form-cookbook-form-field-service: Creating your Field Type as a Service diff --git a/cookbook/form/dynamic_form_modification.rst b/cookbook/form/dynamic_form_modification.rst index afd199b7da7..2ddedeeb3ac 100644 --- a/cookbook/form/dynamic_form_modification.rst +++ b/cookbook/form/dynamic_form_modification.rst @@ -333,11 +333,6 @@ and fill in the listener logic:: // ... } -.. versionadded:: 2.6 - The :class:`Symfony\\Component\\Security\\Core\\Authentication\\Token\\Storage\\TokenStorageInterface` was - introduced in Symfony 2.6. Prior, you had to use the ``getToken()`` method of - :class:`Symfony\\Component\\Security\\Core\\SecurityContextInterface`. - .. note:: The ``multiple`` and ``expanded`` form options will default to false @@ -465,10 +460,6 @@ sport like this:: // ... } -.. versionadded:: 2.6 - The ``placeholder`` option was introduced in Symfony 2.6 in favor of - ``empty_value``, which is available prior to 2.6. - When you're building this form to display to the user for the first time, then this example works perfectly. diff --git a/cookbook/profiler/matchers.rst b/cookbook/profiler/matchers.rst index 0cfd3f953c0..600883cc41d 100644 --- a/cookbook/profiler/matchers.rst +++ b/cookbook/profiler/matchers.rst @@ -102,11 +102,6 @@ matcher:: } } -.. versionadded:: 2.6 - The :class:`Symfony\\Component\\Security\\Core\\Authorization\\AuthorizationCheckerInterface` was - introduced in Symfony 2.6. Prior, you had to use the ``isGranted`` method of - :class:`Symfony\\Component\\Security\\Core\\SecurityContextInterface`. - Then, configure a new service and set it as ``private`` because the application won't use it directly: @@ -144,10 +139,6 @@ won't use it directly: $container->setDefinition('app.super_admin_matcher', $definition); -.. versionadded:: 2.6 - The ``security.authorization_checker`` service was introduced in Symfony 2.6. Prior - to Symfony 2.6, you had to use the ``isGranted()`` method of the ``security.context`` service. - Once the service is registered, the only thing left to do is configure the profiler to use this service as the matcher: diff --git a/cookbook/security/custom_password_authenticator.rst b/cookbook/security/custom_password_authenticator.rst index d6efd122981..9a536c80ebd 100644 --- a/cookbook/security/custom_password_authenticator.rst +++ b/cookbook/security/custom_password_authenticator.rst @@ -10,17 +10,12 @@ How to Create a Custom Form Password Authenticator flexible way to accomplish custom authentication tasks like this. Imagine you want to allow access to your website only between 2pm and 4pm -UTC. Before Symfony 2.4, you had to create a custom token, factory, listener -and provider. In this entry, you'll learn how to do this for a login form -(i.e. where your user submits their username and password). -Before Symfony 2.6, you had to use the password encoder to authenticate the user password. +UTC. In this entry, you'll learn how to do this for a login form (i.e. where +your user submits their username and password). The Password Authenticator -------------------------- -.. versionadded:: 2.6 - The ``UserPasswordEncoderInterface`` interface was introduced in Symfony 2.6. - .. versionadded:: 2.8 The ``SimpleFormAuthenticatorInterface`` interface was moved to the ``Symfony\Component\Security\Http\Authentication`` namespace in Symfony diff --git a/cookbook/security/form_login_setup.rst b/cookbook/security/form_login_setup.rst index 77c0aa87936..527c971b197 100644 --- a/cookbook/security/form_login_setup.rst +++ b/cookbook/security/form_login_setup.rst @@ -186,11 +186,6 @@ form:: ); } -.. versionadded:: 2.6 - The ``security.authentication_utils`` service and the - :class:`Symfony\\Component\\Security\\Http\\Authentication\\AuthenticationUtils` - class were introduced in Symfony 2.6. - Don't let this controller confuse you. As you'll see in a moment, when the user submits the form, the security system automatically handles the form submission for you. If the user had submitted an invalid username or password, diff --git a/cookbook/security/pre_authenticated.rst b/cookbook/security/pre_authenticated.rst index e3501c54884..82adbd3f8fd 100644 --- a/cookbook/security/pre_authenticated.rst +++ b/cookbook/security/pre_authenticated.rst @@ -92,9 +92,6 @@ in the x509 firewall configuration respectively. REMOTE_USER Based Authentication -------------------------------- -.. versionadded:: 2.6 - REMOTE_USER pre authenticated firewall was introduced in Symfony 2.6. - A lot of authentication modules, like ``auth_kerb`` for Apache provide the username using the ``REMOTE_USER`` environment variable. This variable can be trusted by the application since the authentication happened before the request reached it. diff --git a/cookbook/validation/severity.rst b/cookbook/validation/severity.rst index 22cb267d6c3..34b091bd5c6 100644 --- a/cookbook/validation/severity.rst +++ b/cookbook/validation/severity.rst @@ -21,9 +21,6 @@ The process to achieve this behavior consists of two steps: 1. Assigning the Error Level ---------------------------- -.. versionadded:: 2.6 - The ``payload`` option was introduced in Symfony 2.6. - Use the ``payload`` option to configure the error level for each constraint: .. configuration-block:: @@ -131,10 +128,6 @@ Use the ``payload`` option to configure the error level for each constraint: 2. Customize the Error Message Template --------------------------------------- -.. versionadded:: 2.6 - The ``getConstraint()`` method in the ``ConstraintViolation`` class was - introduced in Symfony 2.6. - When validation of the ``User`` object fails, you can retrieve the constraint that caused a particular failure using the :method:`Symfony\\Component\\Validator\\ConstraintViolation::getConstraint` diff --git a/cookbook/web_server/built_in.rst b/cookbook/web_server/built_in.rst index dc42eda9cb9..4a2539d543f 100644 --- a/cookbook/web_server/built_in.rst +++ b/cookbook/web_server/built_in.rst @@ -4,10 +4,6 @@ How to Use PHP's built-in Web Server ==================================== -.. versionadded:: 2.6 - The ability to run the server as a background process was introduced - in Symfony 2.6. - Since PHP 5.4 the CLI SAPI comes with a `built-in web server`_. It can be used to run your PHP applications locally during development, for testing or for application demonstrations. This way, you don't have to bother configuring diff --git a/reference/configuration/debug.rst b/reference/configuration/debug.rst index 78a3ba6c85f..8a405e57e50 100644 --- a/reference/configuration/debug.rst +++ b/reference/configuration/debug.rst @@ -10,9 +10,6 @@ Symfony full-stack framework and can be configured under the ``debug`` key in your application configuration. When using XML, you must use the ``http://symfony.com/schema/dic/debug`` namespace. -.. versionadded:: - The DebugBundle was introduced in Symfony 2.6. - .. tip:: The XSD schema is available at diff --git a/reference/configuration/framework.rst b/reference/configuration/framework.rst index 99e9090f0df..2248c273ca3 100644 --- a/reference/configuration/framework.rst +++ b/reference/configuration/framework.rst @@ -526,11 +526,6 @@ profiler enabled ....... -.. versionadded:: 2.2 - The ``enabled`` option was introduced in Symfony 2.2. Prior to Symfony - 2.2, the profiler could only be disabled by omitting the ``framework.profiler`` - configuration entirely. - **type**: ``boolean`` **default**: ``false`` The profiler can be enabled by setting this option to ``true``. When you @@ -1321,9 +1316,6 @@ found. logging ....... -.. versionadded:: 2.6 - The ``logging`` option was introduced in Symfony 2.6. - **default**: ``true`` when the debug mode is enabled, ``false`` otherwise. When ``true``, a log entry is made whenever the translator cannot find a translation @@ -1404,9 +1396,6 @@ error messages. strict_email ............ -.. versionadded:: 2.5 - The ``strict_email`` option was introduced in Symfony 2.5. - **type**: ``Boolean`` **default**: ``false`` If this option is enabled, the `egulias/email-validator`_ library will be @@ -1416,9 +1405,6 @@ the validator uses a simple regular expression to validate email addresses. api ... -.. versionadded:: 2.5 - The ``api`` option was introduced in Symfony 2.5. - **type**: ``string`` Starting with Symfony 2.5, the Validator component introduced a new validation diff --git a/reference/configuration/security.rst b/reference/configuration/security.rst index e0689597865..599ea6bb569 100644 --- a/reference/configuration/security.rst +++ b/reference/configuration/security.rst @@ -13,10 +13,6 @@ Full Default Configuration The following is the full default configuration for the security system. Each part will be explained in the next section. -.. versionadded:: 2.5 - Support for restricting security firewalls to specific http methods was introduced in - Symfony 2.5. - .. configuration-block:: .. code-block:: yaml diff --git a/reference/constraints/Expression.rst b/reference/constraints/Expression.rst index 9f5ce639966..1f0278ca9e3 100644 --- a/reference/constraints/Expression.rst +++ b/reference/constraints/Expression.rst @@ -216,12 +216,6 @@ more about the expression language syntax, see // ... } - .. versionadded:: 2.6 - In Symfony 2.6, the Expression constraint *is* executed if the value - is ``null``. Before 2.6, if the value was ``null``, the expression - was never executed and the value was considered valid (unless you - also had a constraint like ``NotBlank`` on the property). - For more information about the expression and what variables are available to you, see the :ref:`expression ` option details below. diff --git a/reference/constraints/File.rst b/reference/constraints/File.rst index 2ff8a081ee7..842badb272a 100644 --- a/reference/constraints/File.rst +++ b/reference/constraints/File.rst @@ -156,9 +156,6 @@ Options maxSize ~~~~~~~ -.. versionadded:: 2.6 - The suffixes ``Ki`` and ``Mi`` were introduced in Symfony 2.6. - **type**: ``mixed`` If set, the size of the underlying file must be below this file size in @@ -185,9 +182,6 @@ see `Wikipedia: Binary prefix`_. binaryFormat ~~~~~~~~~~~~ -.. versionadded:: 2.6 - The ``binaryFormat`` option was introduced in Symfony 2.6. - **type**: ``boolean`` **default**: ``null`` When ``true``, the sizes will be displayed in messages with binary-prefixed @@ -227,10 +221,6 @@ per the `mimeTypes`_ option. disallowEmptyMessage ~~~~~~~~~~~~~~~~~~~~ -.. versionadded:: 2.6 - The ``disallowEmptyMessage`` option was introduced in Symfony 2.6. Prior to 2.6, - if the user uploaded an empty file, no validation error occurred. - **type**: ``string`` **default**: ``An empty file is not allowed.`` This constraint checks if the uploaded file is empty (i.e. 0 bytes). If it is, diff --git a/reference/constraints/GreaterThan.rst b/reference/constraints/GreaterThan.rst index cc1372f3bbd..95c8726f1fc 100644 --- a/reference/constraints/GreaterThan.rst +++ b/reference/constraints/GreaterThan.rst @@ -93,9 +93,6 @@ If you want to ensure that the ``age`` of a ``Person`` class is greater than Comparing Dates --------------- -.. versionadded:: 2.6 - The feature to compare dates was introduced in Symfony 2.6. - This constraint can be used to compare ``DateTime`` objects against any date string `accepted by the DateTime constructor`_. For example, you could check that a date must at least be the next day: diff --git a/reference/constraints/GreaterThanOrEqual.rst b/reference/constraints/GreaterThanOrEqual.rst index 822b8bc10bc..7c0f8e7f451 100644 --- a/reference/constraints/GreaterThanOrEqual.rst +++ b/reference/constraints/GreaterThanOrEqual.rst @@ -92,9 +92,6 @@ or equal to ``18``, you could do the following: Comparing Dates --------------- -.. versionadded:: 2.6 - The feature to compare dates was introduced in Symfony 2.6. - This constraint can be used to compare ``DateTime`` objects against any date string `accepted by the DateTime constructor`_. For example, you could check that a date must at least be the current day: diff --git a/reference/constraints/LessThan.rst b/reference/constraints/LessThan.rst index 65f171bf834..05decac79f9 100644 --- a/reference/constraints/LessThan.rst +++ b/reference/constraints/LessThan.rst @@ -93,9 +93,6 @@ If you want to ensure that the ``age`` of a ``Person`` class is less than Comparing Dates --------------- -.. versionadded:: 2.6 - The feature to compare dates was introduced in Symfony 2.6. - This constraint can be used to compare ``DateTime`` objects against any date string `accepted by the DateTime constructor`_. For example, you could check that a date must be in the past like this: diff --git a/reference/constraints/LessThanOrEqual.rst b/reference/constraints/LessThanOrEqual.rst index 48d3b1cef61..20633acd4c3 100644 --- a/reference/constraints/LessThanOrEqual.rst +++ b/reference/constraints/LessThanOrEqual.rst @@ -92,9 +92,6 @@ equal to ``80``, you could do the following: Comparing Dates --------------- -.. versionadded:: 2.6 - The feature to compare dates was introduced in Symfony 2.6. - This constraint can be used to compare ``DateTime`` objects against any date string `accepted by the DateTime constructor`_. For example, you could check that a date must be today or in the past like this: diff --git a/reference/constraints/_payload-option.rst.inc b/reference/constraints/_payload-option.rst.inc index 30c6d46bbc8..c32ad633989 100644 --- a/reference/constraints/_payload-option.rst.inc +++ b/reference/constraints/_payload-option.rst.inc @@ -3,9 +3,6 @@ payload **type**: ``mixed`` **default**: ``null`` -.. versionadded:: 2.6 - The ``payload`` option was introduced in Symfony 2.6. - This option can be used to attach arbitrary domain-specific data to a constraint. The configured payload is not used by the Validator component, but its processing is completely up to you. diff --git a/reference/dic_tags.rst b/reference/dic_tags.rst index ebeaee158c1..0939eac4256 100644 --- a/reference/dic_tags.rst +++ b/reference/dic_tags.rst @@ -876,10 +876,6 @@ For more information, see :doc:`/cookbook/routing/custom_route_loader`. routing.expression_language_provider ------------------------------------ -.. versionadded:: 2.6 - The ``routing.expression_language_provider`` tag was introduced in Symfony - 2.6. - **Purpose**: Register a provider for expression language functions in routing This tag is used to automatically register @@ -890,10 +886,6 @@ functions to the routing expression language. security.expression_language_provider ------------------------------------- -.. versionadded:: 2.6 - The ``security.expression_language_provider`` tag was introduced in Symfony - 2.6. - **Purpose**: Register a provider for expression language functions in security This tag is used to automatically register :ref:`expression function providers diff --git a/reference/forms/types/date.rst b/reference/forms/types/date.rst index 2d93e10a00f..f39872c3316 100644 --- a/reference/forms/types/date.rst +++ b/reference/forms/types/date.rst @@ -90,10 +90,6 @@ Field Options placeholder ~~~~~~~~~~~ -.. versionadded:: 2.6 - The ``placeholder`` option was introduced in Symfony 2.6 in favor of - ``empty_value``, which is available prior to 2.6. - **type**: ``string`` or ``array`` If your widget option is set to ``choice``, then this field will be represented diff --git a/reference/forms/types/form.rst b/reference/forms/types/form.rst index ccd229795d4..1b66ac5c626 100644 --- a/reference/forms/types/form.rst +++ b/reference/forms/types/form.rst @@ -56,9 +56,6 @@ Field Options allow_extra_fields ~~~~~~~~~~~~~~~~~~ -.. versionadded:: 2.6 - The ``allow_extra_fields`` option was introduced in Symfony 2.6. - **type**: ``boolean`` **default**: ``false`` Usually, if you submit extra fields that aren't configured in your form, diff --git a/reference/forms/types/options/html5.rst.inc b/reference/forms/types/options/html5.rst.inc index 1022412f3b3..30ba9762c4e 100644 --- a/reference/forms/types/options/html5.rst.inc +++ b/reference/forms/types/options/html5.rst.inc @@ -1,9 +1,6 @@ html5 ~~~~~ -.. versionadded:: 2.6 - The ``html5`` option was introduced in Symfony 2.6. - **type**: ``boolean`` **default**: ``true`` If this is set to ``true`` (the default), it'll use the HTML5 type (date, time diff --git a/reference/forms/types/options/placeholder.rst.inc b/reference/forms/types/options/placeholder.rst.inc index 12d20b00f3a..ad947dd0e08 100644 --- a/reference/forms/types/options/placeholder.rst.inc +++ b/reference/forms/types/options/placeholder.rst.inc @@ -1,10 +1,6 @@ placeholder ~~~~~~~~~~~ -.. versionadded:: 2.6 - The ``placeholder`` option was introduced in Symfony 2.6 in favor of - ``empty_value``, which is available prior to 2.6. - .. versionadded:: 2.3 Since Symfony 2.3, empty values are also supported if the ``expanded`` option is set to true. diff --git a/reference/map.rst.inc b/reference/map.rst.inc index 1d322527c61..8339192ab96 100644 --- a/reference/map.rst.inc +++ b/reference/map.rst.inc @@ -13,7 +13,7 @@ * :doc:`twig ` * :doc:`monolog ` * :doc:`web_profiler ` - * :doc:`debug ` (new in 2.6) + * :doc:`debug ` * :doc:`Configuring the Kernel (e.g. AppKernel) ` diff --git a/reference/twig_reference.rst b/reference/twig_reference.rst index e19857b8843..a88b034c357 100644 --- a/reference/twig_reference.rst +++ b/reference/twig_reference.rst @@ -361,9 +361,6 @@ information in :ref:`book-templating-pages`. absolute_url ~~~~~~~~~~~~ -.. versionadded:: 2.6 - The ``absolute_url`` function was introduced in Symfony 2.7 - .. code-block:: jinja {{ absolute_url(path) }} @@ -381,9 +378,6 @@ an existing path: relative_path ~~~~~~~~~~~~~ -.. versionadded:: 2.6 - The ``relative_path`` function was introduced in Symfony 2.7 - .. code-block:: jinja {{ relative_path(path) }} @@ -726,11 +720,6 @@ The available attributes are: * ``app.debug`` * ``app.security`` (deprecated as of 2.6) -.. caution:: - - The ``app.security`` global is deprecated as of 2.6. The user is already - available as ``app.user`` and ``is_granted()`` is registered as function. - Symfony Standard Edition Extensions ----------------------------------- From 79ec09a01bc3c19cf698b1048de7ba40ef888193 Mon Sep 17 00:00:00 2001 From: Maxime Steinhausser Date: Wed, 9 Dec 2015 22:32:16 +0100 Subject: [PATCH 142/235] [Cookbook] [Security] Use UserLoaderInterface instead of UserProviderInterface --- cookbook/security/entity_provider.rst | 36 ++++++--------------------- 1 file changed, 8 insertions(+), 28 deletions(-) diff --git a/cookbook/security/entity_provider.rst b/cookbook/security/entity_provider.rst index 58acf646245..425272b9b8d 100644 --- a/cookbook/security/entity_provider.rst +++ b/cookbook/security/entity_provider.rst @@ -424,20 +424,18 @@ both are unique in the database. Unfortunately, the native entity provider is only able to handle querying via a single property on the user. To do this, make your ``UserRepository`` implement a special -:class:`Symfony\\Component\\Security\\Core\\User\\UserProviderInterface`. This -interface requires three methods: ``loadUserByUsername($username)``, -``refreshUser(UserInterface $user)``, and ``supportsClass($class)``:: +:class:`Symfony\\Bridge\\Doctrine\\Security\\User\\UserLoaderInterface`. This +interface only requires one method: ``loadUserByUsername($username)``:: // src/AppBundle/Entity/UserRepository.php namespace AppBundle\Entity; + use Symfony\Bridge\Doctrine\Security\User\UserLoaderInterface; use Symfony\Component\Security\Core\User\UserInterface; - use Symfony\Component\Security\Core\User\UserProviderInterface; use Symfony\Component\Security\Core\Exception\UsernameNotFoundException; - use Symfony\Component\Security\Core\Exception\UnsupportedUserException; use Doctrine\ORM\EntityRepository; - class UserRepository extends EntityRepository implements UserProviderInterface + class UserRepository extends EntityRepository implements UserLoaderInterface { public function loadUserByUsername($username) { @@ -458,30 +456,12 @@ interface requires three methods: ``loadUserByUsername($username)``, return $user; } - - public function refreshUser(UserInterface $user) - { - $class = get_class($user); - if (!$this->supportsClass($class)) { - throw new UnsupportedUserException( - sprintf( - 'Instances of "%s" are not supported.', - $class - ) - ); - } - - return $this->find($user->getId()); - } - - public function supportsClass($class) - { - return $this->getEntityName() === $class - || is_subclass_of($class, $this->getEntityName()); - } } -For more details on these methods, see :class:`Symfony\\Component\\Security\\Core\\User\\UserProviderInterface`. +.. versionadded:: 2.8 + The :class:`Symfony\\Bridge\\Doctrine\\Security\\User\\UserLoaderInterface` + interface was introduced in 2.8. Prior to Symfony 2.8, you had to implement + ``Symfony\Component\Security\Core\User\UserProviderInterface``. .. tip:: From d33d77a582a81e8e65ee643e12fce33de38445d2 Mon Sep 17 00:00:00 2001 From: Kevin Robatel Date: Tue, 22 Dec 2015 15:11:27 +0100 Subject: [PATCH 143/235] Update location of `app/check.php` to `bin/symfony_requirements` --- reference/requirements.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reference/requirements.rst b/reference/requirements.rst index 9ff4d99665d..c31193609b0 100644 --- a/reference/requirements.rst +++ b/reference/requirements.rst @@ -14,7 +14,7 @@ your requirements from the command line via: .. code-block:: bash - $ php app/check.php + $ php bin/symfony_requirements Below is the list of required and optional requirements. From eb6ce3618679dcfb037fe4c46aa1468e3a766997 Mon Sep 17 00:00:00 2001 From: Wouter J Date: Wed, 23 Dec 2015 15:25:52 +0100 Subject: [PATCH 144/235] Fix syntax --- cookbook/assetic/asset_management.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cookbook/assetic/asset_management.rst b/cookbook/assetic/asset_management.rst index 770524daf9e..9980f09b419 100644 --- a/cookbook/assetic/asset_management.rst +++ b/cookbook/assetic/asset_management.rst @@ -11,9 +11,9 @@ Starting from Symfony 2.8, Assetic is no longer included by default in the Symfony Standard Edition. Before using any of its features, install the AsseticBundle executing this console command in your project: - .. code-block:: bash +.. code-block:: bash - $ composer require symfony/assetic-bundle + $ composer require symfony/assetic-bundle Then, enable the bundle in the ``AppKernel.php`` file of your Symfony application:: From 92610e3fdbde73d2e1dec8c57068867f93435148 Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Wed, 23 Dec 2015 22:21:50 +0100 Subject: [PATCH 145/235] [#5993] fix doubled "interface" --- cookbook/security/entity_provider.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/security/entity_provider.rst b/cookbook/security/entity_provider.rst index 48f6c6b8685..32c59cc9552 100644 --- a/cookbook/security/entity_provider.rst +++ b/cookbook/security/entity_provider.rst @@ -460,7 +460,7 @@ interface only requires one method: ``loadUserByUsername($username)``:: .. versionadded:: 2.8 The :class:`Symfony\\Bridge\\Doctrine\\Security\\User\\UserLoaderInterface` - interface was introduced in 2.8. Prior to Symfony 2.8, you had to implement + was introduced in 2.8. Prior to Symfony 2.8, you had to implement ``Symfony\Component\Security\Core\User\UserProviderInterface``. .. tip:: From 6b6ac3dad2e2c97bdb768dbe8b8fbcff7aaaf42d Mon Sep 17 00:00:00 2001 From: Nuno Pereira Date: Mon, 28 Dec 2015 13:10:48 +0000 Subject: [PATCH 146/235] Fix symfony version and initial add Also add var dir, so that var/cache and var/logs can be added too. Commit "add basic Symfony Standard 3.X.Y" instead of "add basic Symfony Standard 2.X.Y". --- cookbook/workflow/new_project_svn.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cookbook/workflow/new_project_svn.rst b/cookbook/workflow/new_project_svn.rst index 7cec932445d..657ad803bfb 100644 --- a/cookbook/workflow/new_project_svn.rst +++ b/cookbook/workflow/new_project_svn.rst @@ -75,7 +75,7 @@ with these steps: .. code-block:: bash $ cd myproject/ - $ svn add --depth=empty app var/cache var/logs app/config web + $ svn add --depth=empty app var var/cache var/logs app/config web $ svn propset svn:ignore "vendor" . $ svn propset svn:ignore "bootstrap*" var/ @@ -92,7 +92,7 @@ with these steps: .. code-block:: bash $ svn add --force . - $ svn ci -m "add basic Symfony Standard 2.X.Y" + $ svn ci -m "add basic Symfony Standard 3.X.Y" That's it! Since the ``app/config/parameters.yml`` file is ignored, you can store machine-specific settings like database passwords here without committing From 1f5ee01bbe1bcf241562b1b5ccd76648f918a412 Mon Sep 17 00:00:00 2001 From: Arnaud Kleinpeter Date: Mon, 28 Dec 2015 17:29:40 +0100 Subject: [PATCH 147/235] change app/check.php for 3.0 --- cookbook/deployment/tools.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/deployment/tools.rst b/cookbook/deployment/tools.rst index cf6c3186e1f..3ed5c9675a4 100644 --- a/cookbook/deployment/tools.rst +++ b/cookbook/deployment/tools.rst @@ -111,7 +111,7 @@ Check if your server meets the requirements by running: .. code-block:: bash - $ php app/check.php + $ php bin/symfony_requirements B) Configure your ``app/config/parameters.yml`` File ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From 36d947028dc8d2680e818efe05f51aa8a6be8145 Mon Sep 17 00:00:00 2001 From: Valentin Udaltsov Date: Tue, 29 Dec 2015 11:10:46 +0300 Subject: [PATCH 148/235] Update form_customization.rst --- cookbook/form/form_customization.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/form/form_customization.rst b/cookbook/form/form_customization.rst index 549a5fd38f0..44c7b7182d5 100644 --- a/cookbook/form/form_customization.rst +++ b/cookbook/form/form_customization.rst @@ -101,7 +101,7 @@ rendering a form. In other words, if you want to customize one portion of how a form is rendered, you'll import a *theme* which contains a customization of the appropriate form fragments. -Symfony comes with four **built-in form themes** that define each and every +Symfony comes with five **built-in form themes** that define each and every fragment needed to render every part of a form: * `form_div_layout.html.twig`_, wraps each form field inside a ``
`` element. From 83e73c24855e46334f654844fe0db44041eaa412 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Tue, 29 Dec 2015 13:50:23 +0100 Subject: [PATCH 149/235] [#6086] Use a more generic wording to avoid errors in the future --- cookbook/form/form_customization.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/form/form_customization.rst b/cookbook/form/form_customization.rst index 44c7b7182d5..0cbf66530ff 100644 --- a/cookbook/form/form_customization.rst +++ b/cookbook/form/form_customization.rst @@ -101,7 +101,7 @@ rendering a form. In other words, if you want to customize one portion of how a form is rendered, you'll import a *theme* which contains a customization of the appropriate form fragments. -Symfony comes with five **built-in form themes** that define each and every +Symfony comes with some **built-in form themes** that define each and every fragment needed to render every part of a form: * `form_div_layout.html.twig`_, wraps each form field inside a ``
`` element. From bcc5634849b41f32b904c62ab0b6197b9b09ef2e Mon Sep 17 00:00:00 2001 From: Javier Eguiluz Date: Wed, 30 Dec 2015 08:53:45 +0100 Subject: [PATCH 150/235] Finished the rewording of the "profiler storage" article --- cookbook/profiler/storage.rst | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/cookbook/profiler/storage.rst b/cookbook/profiler/storage.rst index fc6d8e4da22..1ce0a51c6fd 100644 --- a/cookbook/profiler/storage.rst +++ b/cookbook/profiler/storage.rst @@ -4,6 +4,21 @@ Switching the Profiler Storage ============================== -By default the profile stores the collected data in files in the ``%kernel.cache_dir%/profiler/`` directory. -You can control the storage by implementing the ``Symfony\Component\HttpKernel\Profiler\ProfilerStorageInterface`` in -your own service and override the ``profiler.storage`` service. +In Symfony versions previous to 2.8, profiles could be stored in files, databases, +services like Redis and Memcache, etc. Starting from Symfony 2.8, the only storage +mechanism with built-in support is the filesystem. + +By default the profile stores the collected data in the ``%kernel.cache_dir%/profiler/`` +directory. If you want to use another location to store the profiles, define the +``dsn`` option of the ``framework.profiler``: + +.. code-block:: yaml + + # app/config/config.yml + framework: + profiler: + dsn: 'file:/tmp/symfony/profiler' + +You can also create your own profile storage service implementing the +:class:``Symfony\Component\HttpKernel\Profiler\ProfilerStorageInterface`` and +overriding the ``profiler.storage`` service. From bcbb87f47deeebdb791b3cdf1e809bca8e717564 Mon Sep 17 00:00:00 2001 From: Javier Eguiluz Date: Wed, 30 Dec 2015 08:55:30 +0100 Subject: [PATCH 151/235] Fixed the Symfony version number --- cookbook/profiler/storage.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cookbook/profiler/storage.rst b/cookbook/profiler/storage.rst index 1ce0a51c6fd..f10f41e0ca0 100644 --- a/cookbook/profiler/storage.rst +++ b/cookbook/profiler/storage.rst @@ -4,8 +4,8 @@ Switching the Profiler Storage ============================== -In Symfony versions previous to 2.8, profiles could be stored in files, databases, -services like Redis and Memcache, etc. Starting from Symfony 2.8, the only storage +In Symfony versions previous to 3.0, profiles could be stored in files, databases, +services like Redis and Memcache, etc. Starting from Symfony 3.0, the only storage mechanism with built-in support is the filesystem. By default the profile stores the collected data in the ``%kernel.cache_dir%/profiler/`` From 6077f91a4b690c28a71d5795ba31d98ed44d41ff Mon Sep 17 00:00:00 2001 From: Maxime Steinhausser Date: Mon, 14 Dec 2015 18:44:11 +0100 Subject: [PATCH 152/235] [Form] entry_type option: replace "in favor" misuses --- reference/forms/types/collection.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reference/forms/types/collection.rst b/reference/forms/types/collection.rst index 269f00977d2..422f721ddcc 100644 --- a/reference/forms/types/collection.rst +++ b/reference/forms/types/collection.rst @@ -312,7 +312,7 @@ entry_type ~~~~~~~~~~ .. versionadded:: 2.8 - The ``entry_type`` option was introduced in Symfony 2.8 in favor of + The ``entry_type`` option was introduced in Symfony 2.8 and replaces ``type``, which is available prior to 2.8. **type**: ``string`` or :class:`Symfony\\Component\\Form\\FormTypeInterface` **required** From 874c84000eb6df47777c916d37cff299140ee26b Mon Sep 17 00:00:00 2001 From: Evgenij Efimov Date: Mon, 4 Jan 2016 22:54:12 +0300 Subject: [PATCH 153/235] Removed deprecated methods from VoterInterface --- components/security/authorization.rst | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/components/security/authorization.rst b/components/security/authorization.rst index eb24034b1e5..5306a3eec61 100644 --- a/components/security/authorization.rst +++ b/components/security/authorization.rst @@ -85,25 +85,12 @@ of :class:`Symfony\\Component\\Security\\Core\\Authorization\\Voter\\VoterInterf which means they have to implement a few methods which allows the decision manager to use them: -``supportsAttribute($attribute)`` (deprecated as of 2.8) - will be used to check if the voter knows how to handle the given attribute; - -``supportsClass($class)`` (deprecated as of 2.8) - will be used to check if the voter is able to grant or deny access for - an object of the given class; - ``vote(TokenInterface $token, $object, array $attributes)`` this method will do the actual voting and return a value equal to one of the class constants of :class:`Symfony\\Component\\Security\\Core\\Authorization\\Voter\\VoterInterface`, i.e. ``VoterInterface::ACCESS_GRANTED``, ``VoterInterface::ACCESS_DENIED`` or ``VoterInterface::ACCESS_ABSTAIN``; -.. note:: - - The ``supportsAttribute()`` and ``supportsClass()`` methods are deprecated - as of Symfony 2.8 and no longer required in 3.0. These methods should not - be called outside the voter class. - The Security component contains some standard voters which cover many use cases: From fcbcf1cd029e32963745576ed610857667d1e9a6 Mon Sep 17 00:00:00 2001 From: Dominik Hajduk Date: Mon, 4 Jan 2016 21:10:39 +0100 Subject: [PATCH 154/235] Remove repetition in text --- book/forms.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/book/forms.rst b/book/forms.rst index 29d48045f73..2e2830593e3 100644 --- a/book/forms.rst +++ b/book/forms.rst @@ -1170,7 +1170,7 @@ Defining your Forms as Services ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Your form type might have some external dependencies. You can define your form -type as a service, and inject inject all dependencies you need. +type as a service, and inject all dependencies you need. .. note:: From 2d72f3e5f60451feb865317bea3ec4ff1b84bf8c Mon Sep 17 00:00:00 2001 From: Ayyoub BOUMYA Date: Mon, 4 Jan 2016 22:29:44 +0000 Subject: [PATCH 155/235] [Form] remove the getName() function as it is deprecated --- cookbook/form/dynamic_form_modification.rst | 5 ----- 1 file changed, 5 deletions(-) diff --git a/cookbook/form/dynamic_form_modification.rst b/cookbook/form/dynamic_form_modification.rst index 431ebc8aee7..aaacedff72c 100644 --- a/cookbook/form/dynamic_form_modification.rst +++ b/cookbook/form/dynamic_form_modification.rst @@ -57,11 +57,6 @@ a bare form class looks like:: 'data_class' => 'AppBundle\Entity\Product' )); } - - public function getName() - { - return 'product'; - } } .. note:: From 586819072197fe3020e5a2e450c6cbcd4bba4d76 Mon Sep 17 00:00:00 2001 From: Diego Saint Esteben Date: Tue, 4 Aug 2015 23:35:43 -0300 Subject: [PATCH 156/235] Documented the ability of define service decoration priority --- components/dependency_injection/advanced.rst | 73 ++++++++++++++++++++ 1 file changed, 73 insertions(+) diff --git a/components/dependency_injection/advanced.rst b/components/dependency_injection/advanced.rst index 8240a5fac70..5e1aeaf4072 100644 --- a/components/dependency_injection/advanced.rst +++ b/components/dependency_injection/advanced.rst @@ -219,6 +219,79 @@ You can change the inner service name if you want to: ->setPublic(false) ->setDecoratedService('foo', 'bar.wooz'); +.. versionadded:: 2.8 + The ability to define the decoration priority was introduced in Symfony 2.8. + Prior to Symfony 2.8, the priority depends on the order in + which definitions are found. + +If you want to apply more than one decorator to a service, you can control their +order by configuring the priority of decoration, this can be any integer number +(decorators with higher priorities will be applied first). + +.. configuration-block:: + + .. code-block:: yaml + + foo: + class: Foo + + bar: + class: Bar + public: false + decorates: foo + decoration_priority: 5 + arguments: ['@bar.inner'] + + baz: + class: Baz + public: false + decorates: foo + decoration_priority: 1 + arguments: ['@baz.inner'] + + .. code-block:: xml + + + + + + + + + + + + + + + + + + + .. code-block:: php + + use Symfony\Component\DependencyInjection\Reference; + + $container->register('foo', 'Foo') + + $container->register('bar', 'Bar') + ->addArgument(new Reference('bar.inner')) + ->setPublic(false) + ->setDecoratedService('foo', null, 5); + + $container->register('baz', 'Baz') + ->addArgument(new Reference('baz.inner')) + ->setPublic(false) + ->setDecoratedService('foo', null, 1); + +The generated code will be the following: + +.. code-block:: php + + $this->services['foo'] = new Baz(new Bar(new Foo()))); + Deprecating Services -------------------- From 051f0507ad35dcdb3e6936ae588a6f41006ed9fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Romey?= Date: Wed, 6 Jan 2016 11:41:46 +0100 Subject: [PATCH 157/235] [Security][Guard] Fixed a typo --- cookbook/security/guard-authentication.rst | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/cookbook/security/guard-authentication.rst b/cookbook/security/guard-authentication.rst index d00ba351888..8bc58d30984 100644 --- a/cookbook/security/guard-authentication.rst +++ b/cookbook/security/guard-authentication.rst @@ -303,7 +303,7 @@ Finally, configure your ``firewalls`` key in ``security.yml`` to use this authen # if you want, disable storing the user in the session # stateless: true - + # maybe other things, like form_login, remember_me, etc # ... @@ -427,7 +427,7 @@ Each authenticator needs the following methods: **supportsRememberMe** If you want to support "remember me" functionality, return true from this method. - You will still need to active ``rememebe_me`` under your firewall for it to work. + You will still need to active ``remember_me`` under your firewall for it to work. Since this is a stateless API, you do not want to support "remember me" functionality in this example. @@ -448,17 +448,17 @@ to cause a failure:: // src/AppBundle/Security/TokenAuthenticator.php // ... - + use Symfony\Component\Security\Core\Exception\CustomUserMessageAuthenticationException; - + class TokenAuthenticator extends AbstractGuardAuthenticator { // ... - + public function getCredentials(Request $request) { // ... - + if ($token == 'ILuvAPIs') { throw new CustomUserMessageAuthenticationException( 'ILuvAPIs is not a real API key: it\'s just a silly phrase' @@ -467,7 +467,7 @@ to cause a failure:: // ... } - + // ... } @@ -512,7 +512,7 @@ Frequently Asked Questions # if you want, disable storing the user in the session # stateless: true - + # maybe other things, like form_login, remember_me, etc # ... From 75edc24c510c15b97d63aed979b2ef48ac11e157 Mon Sep 17 00:00:00 2001 From: Valentin Date: Thu, 7 Jan 2016 11:29:32 +0100 Subject: [PATCH 158/235] [Form] Fix syntax error in code snippet | Q | A | ------------- | --- | Doc fix? | yes | New docs? | no | Applies to | 3.0, 2.8 --- components/form/form_events.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/form/form_events.rst b/components/form/form_events.rst index 83c7b2657d2..dee049fc336 100644 --- a/components/form/form_events.rst +++ b/components/form/form_events.rst @@ -306,7 +306,7 @@ Creating and binding an event listener to the form is very easy:: // If the data was submitted previously, the additional value that is // included in the request variables needs to be removed. if (true === $user['show_email']) { - $form->add('email', EmailType::class + $form->add('email', EmailType::class); } else { unset($user['email']); $event->setData($user); From 35c2b0020b26077c2a890b39b14820507d72f06f Mon Sep 17 00:00:00 2001 From: Massimiliano Arione Date: Fri, 8 Jan 2016 09:48:57 +0100 Subject: [PATCH 159/235] fix README requirements link --- reference/requirements.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reference/requirements.rst b/reference/requirements.rst index a0f9e262846..5bce19c6ba1 100644 --- a/reference/requirements.rst +++ b/reference/requirements.rst @@ -56,4 +56,4 @@ If you want to use Doctrine, you will need to have PDO installed. Additionally, you need to have the PDO driver installed for the database server you want to use. -.. _`Requirements section of the README`: https://github.com/symfony/symfony#requirements +.. _`Requirements section of the README`: https://github.com/symfony/symfony/blob/2.8/README.md#requirements From acbadd25aa137c5fa89f37094b7e91bc4b2c9232 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Romey?= Date: Fri, 8 Jan 2016 13:22:12 +0100 Subject: [PATCH 160/235] [MicroKernel] Fixed the display of a code block --- cookbook/configuration/micro-kernel-trait.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/configuration/micro-kernel-trait.rst b/cookbook/configuration/micro-kernel-trait.rst index 79f1d474f6d..1fe157aba5a 100644 --- a/cookbook/configuration/micro-kernel-trait.rst +++ b/cookbook/configuration/micro-kernel-trait.rst @@ -280,7 +280,7 @@ your *kernel* lives in. Since ``AppKernel`` lives in ``app/``, this template liv at ``app/Resources/views/micro/random.html.twig``. Finally, you need a front controller to boot and run the application. Create a -``web/index.php``: +``web/index.php``:: // web/index.php From e9a92afce5e38889e3e434b6a9ab4cb34658830b Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Sun, 10 Jan 2016 19:33:28 +0100 Subject: [PATCH 161/235] [#6120] remove unneeded link to readme file --- reference/requirements.rst | 2 -- 1 file changed, 2 deletions(-) diff --git a/reference/requirements.rst b/reference/requirements.rst index 9e647c0ef8f..269ade07489 100644 --- a/reference/requirements.rst +++ b/reference/requirements.rst @@ -50,5 +50,3 @@ Doctrine If you want to use Doctrine, you will need to have PDO installed. Additionally, you need to have the PDO driver installed for the database server you want to use. - -.. _`Requirements section of the README`: https://github.com/symfony/symfony/blob/2.8/README.md#requirements From ca8916ca2c313bfface3adccbb66d3a1418ed17a Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Mon, 11 Jan 2016 09:27:13 +0100 Subject: [PATCH 162/235] remove trailing whitespace --- cookbook/assetic/_standard_edition_warning.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/assetic/_standard_edition_warning.inc b/cookbook/assetic/_standard_edition_warning.inc index 1ceab3eba35..bab5c7ce994 100644 --- a/cookbook/assetic/_standard_edition_warning.inc +++ b/cookbook/assetic/_standard_edition_warning.inc @@ -1,5 +1,5 @@ .. caution:: - + Starting from Symfony 2.8, Assetic is no longer included by default in the Symfony Standard Edition. Refer to :doc:`this article ` to learn how to install and enable Assetic in your Symfony application. From 6ea7370ae362dac2d7ed5297a65cc8df6146c0ce Mon Sep 17 00:00:00 2001 From: Javier Eguiluz Date: Mon, 11 Jan 2016 18:03:14 +0100 Subject: [PATCH 163/235] Added new links to the Symfony screencast series at KnpU --- book/installation.rst | 14 +++++++++++--- book/page_creation.rst | 6 ++++++ 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/book/installation.rst b/book/installation.rst index 54ce48ec930..e1627591e64 100644 --- a/book/installation.rst +++ b/book/installation.rst @@ -4,9 +4,16 @@ Installing and Configuring Symfony ================================== -The goal of this chapter is to get you up and running with a working application -built on top of Symfony. In order to simplify the process of creating new -applications, Symfony provides an installer application. +Welcome to Symfony! Starting a new Symfony project is easy. In fact, you'll have +your first working Symfony application up and running in just a few short minutes. + +.. seealso:: + + Do you prefer video tutorials? Check out the `Joyful Development with Symfony`_ + screencast series from KnpUniversity. + +To make creating new applications even simpler, Symfony provides an installer. +Downloading it is your first step. Installing the Symfony Installer -------------------------------- @@ -412,6 +419,7 @@ need in your new application. Be sure to also check out the :doc:`Cookbook `, which contains a wide variety of articles about solving specific problems with Symfony. +.. _`Joyful Development with Symfony`: http://knpuniversity.com/screencast/symfony .. _`explained in this post`: http://fabien.potencier.org/signing-project-releases.html .. _`Composer`: https://getcomposer.org/ .. _`Composer download page`: https://getcomposer.org/download/ diff --git a/book/page_creation.rst b/book/page_creation.rst index 40fc1117d68..2376a025f64 100644 --- a/book/page_creation.rst +++ b/book/page_creation.rst @@ -21,6 +21,11 @@ simple two-step process: Just like on the web, every interaction is initiated by an HTTP request. Your job is pure and simple: understand that request and return a response. +.. seealso:: + + Do you prefer video tutorials? Check out the `Joyful Development with Symfony`_ + screencast series from KnpUniversity. + .. index:: single: Page creation; Example @@ -585,6 +590,7 @@ There's also a :doc:`Cookbook ` *packed* with more advanced Have fun! +.. _`Joyful Development with Symfony`: http://knpuniversity.com/screencast/symfony/first-page .. _`app/Resources/views/base.html.twig`: https://github.com/symfony/symfony-standard/blob/2.7/app/Resources/views/base.html.twig .. _`Composer`: https://getcomposer.org .. _`find open source bundles`: http://knpbundles.com From f18a1aac9a1aaab01b19d589a452f2208bd2d4ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20R?= Date: Tue, 12 Jan 2016 15:38:32 +0100 Subject: [PATCH 164/235] Update directory permissions to make var/ writable Simplifies the directory permission commands to make sure: - session folder is writable - other custom var/ sub folders are writeable, typically data / storage / upload folder needed cms/crm/ecommerce/pim/.. systems built on top of symfony, avoiding that these projects needs to have own conflicting documentation on this Closes #6132 --- book/installation.rst | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/book/installation.rst b/book/installation.rst index 54ce48ec930..2c467e59f27 100644 --- a/book/installation.rst +++ b/book/installation.rst @@ -220,9 +220,9 @@ If there are any issues, correct them now before moving on. .. sidebar:: Setting up Permissions - One common issue when installing Symfony is that the ``var/cache`` and - ``var/logs`` directories must be writable both by the web server and the - command line user. On a UNIX system, if your web server user is different + One common issue when installing Symfony is that the ``var/cache``, ``var/logs`` + and ``var/sessions`` directories must be writable both by the web server and + the command line user. On a UNIX system, if your web server user is different from your command line user, you can try one of the following solutions. **1. Use the same user for the CLI and the web server** @@ -242,12 +242,11 @@ If there are any issues, correct them now before moving on. .. code-block:: bash - $ rm -rf var/cache/* - $ rm -rf var/logs/* + $ rm -rf var/cache/* var/logs/* var/sessions/* $ HTTPDUSER=`ps axo user,comm | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\ -f1` - $ sudo chmod +a "$HTTPDUSER allow delete,write,append,file_inherit,directory_inherit" var/cache var/logs - $ sudo chmod +a "`whoami` allow delete,write,append,file_inherit,directory_inherit" var/cache var/logs + $ sudo chmod +a "$HTTPDUSER allow delete,write,append,file_inherit,directory_inherit" var + $ sudo chmod +a "`whoami` allow delete,write,append,file_inherit,directory_inherit" var **3. Using ACL on a system that does not support chmod +a** @@ -261,8 +260,8 @@ If there are any issues, correct them now before moving on. .. code-block:: bash $ HTTPDUSER=`ps axo user,comm | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\ -f1` - $ sudo setfacl -R -m u:"$HTTPDUSER":rwX -m u:`whoami`:rwX var/cache var/logs - $ sudo setfacl -dR -m u:"$HTTPDUSER":rwX -m u:`whoami`:rwX var/cache var/logs + $ sudo setfacl -R -m u:"$HTTPDUSER":rwX -m u:`whoami`:rwX var + $ sudo setfacl -dR -m u:"$HTTPDUSER":rwX -m u:`whoami`:rwX var If this doesn't work, try adding ``-n`` option. From d6456ad165af7bb669a3dda098b77070758d3df2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20R?= Date: Tue, 12 Jan 2016 16:45:41 +0100 Subject: [PATCH 165/235] Update dir permissions to reflect var being writable --- book/installation.rst | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/book/installation.rst b/book/installation.rst index 2c467e59f27..613c83c6e33 100644 --- a/book/installation.rst +++ b/book/installation.rst @@ -220,10 +220,10 @@ If there are any issues, correct them now before moving on. .. sidebar:: Setting up Permissions - One common issue when installing Symfony is that the ``var/cache``, ``var/logs`` - and ``var/sessions`` directories must be writable both by the web server and - the command line user. On a UNIX system, if your web server user is different - from your command line user, you can try one of the following solutions. + One common issue when installing Symfony is that the ``var`` directory must + be writable both by the web server and the command line user. On a UNIX + system, if your web server user is different from your command line user + who owns the files, you can try one of the following solutions. **1. Use the same user for the CLI and the web server** From ced63f2bd1981fac00f1c89e9eeaf6d857f377bc Mon Sep 17 00:00:00 2001 From: Christophe Boucaut Date: Wed, 13 Jan 2016 09:35:40 +0100 Subject: [PATCH 166/235] Update the doc to change a deprecated use case --- components/form/introduction.rst | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/components/form/introduction.rst b/components/form/introduction.rst index 36a13fb9d28..e6909758014 100644 --- a/components/form/introduction.rst +++ b/components/form/introduction.rst @@ -457,6 +457,7 @@ builder: .. code-block:: php-standalone + use Symfony\Component\Form\Extension\Core\Type\FormType; use Symfony\Component\Form\Extension\Core\Type\TextType; use Symfony\Component\Form\Extension\Core\Type\DateType; @@ -466,7 +467,7 @@ builder: 'dueDate' => new \DateTime('tomorrow'), ); - $form = $formFactory->createBuilder('form', $defaults) + $form = $formFactory->createBuilder(FormType::class, $defaults) ->add('task', TextType::class) ->add('dueDate', DateType::class) ->getForm(); From 1c1c0e41a49b4fca035e2f0e3c6b887c60b5cd1e Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Wed, 13 Jan 2016 17:36:24 +0100 Subject: [PATCH 167/235] [#6108] remove remaining references to getName() --- cookbook/controller/upload_file.rst | 5 ----- cookbook/form/create_form_type_extension.rst | 4 ++-- 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/cookbook/controller/upload_file.rst b/cookbook/controller/upload_file.rst index 43cb18a4d5f..74bc77d8503 100644 --- a/cookbook/controller/upload_file.rst +++ b/cookbook/controller/upload_file.rst @@ -76,11 +76,6 @@ Then, add a new ``brochure`` field to the form that manages the ``Product`` enti 'data_class' => 'AppBundle\Entity\Product', )); } - - public function getName() - { - return 'product'; - } } Now, update the template that renders the form to display the new ``brochure`` diff --git a/cookbook/form/create_form_type_extension.rst b/cookbook/form/create_form_type_extension.rst index daaba58df19..e9e0ed22248 100644 --- a/cookbook/form/create_form_type_extension.rst +++ b/cookbook/form/create_form_type_extension.rst @@ -73,8 +73,8 @@ by your extension. .. tip:: The value you return in the ``getExtendedType`` method corresponds - to the value returned by the ``getName`` method in the form type class - you wish to extend. + to the fully qualified class name of the form type class you wish to + extend. In addition to the ``getExtendedType`` function, you will probably want to override one of the following methods: From 1e1ecc43ceaa6e88be404d4bcd78f98816b574f0 Mon Sep 17 00:00:00 2001 From: Evgenij Efimov Date: Sun, 27 Dec 2015 17:22:12 +0300 Subject: [PATCH 168/235] Removed doc about getting original parameter value from ParameterBag --- components/http_foundation/introduction.rst | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/components/http_foundation/introduction.rst b/components/http_foundation/introduction.rst index b929a9d5fcb..b062dc8dbba 100644 --- a/components/http_foundation/introduction.rst +++ b/components/http_foundation/introduction.rst @@ -151,11 +151,7 @@ exist:: When PHP imports the request query, it handles request parameters like ``foo[bar]=bar`` in a special way as it creates an array. So you can get the -``foo`` parameter and you will get back an array with a ``bar`` element. But -sometimes, you might want to get the value for the "original" parameter name: -``foo[bar]``. This is possible with all the ``ParameterBag`` getters like -:method:`Symfony\\Component\\HttpFoundation\\Request::get` via the third -argument:: +``foo`` parameter and you will get back an array with a ``bar`` element:: // the query string is '?foo[bar]=bar' @@ -163,10 +159,7 @@ argument:: // returns array('bar' => 'bar') $request->query->get('foo[bar]'); - // returns null - - $request->query->get('foo[bar]', null, true); - // returns 'bar' + // returns null .. _component-foundation-attributes: From b6b6a39333a466f6a74cfaa28f0d2d7777dd303e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Romey?= Date: Mon, 11 Jan 2016 19:43:06 +0100 Subject: [PATCH 169/235] [Security][Guard] Completed start method signature --- cookbook/security/guard-authentication.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/security/guard-authentication.rst b/cookbook/security/guard-authentication.rst index 8bc58d30984..1dd94e76645 100644 --- a/cookbook/security/guard-authentication.rst +++ b/cookbook/security/guard-authentication.rst @@ -418,7 +418,7 @@ Each authenticator needs the following methods: object that should be sent to the client. The ``$exception`` will tell you *what* went wrong during authentication. -**start** +**start(Request $request, AuthenticationException $authException = null)** This is called if the client accesses a URI/resource that requires authentication, but no authentication details were sent (i.e. you returned ``null`` from ``getCredentials()``). Your job is to return a From fc32f7f33723b07b8a99bc4f0b7a038429dab16b Mon Sep 17 00:00:00 2001 From: Sorin Dumitrescu Date: Thu, 14 Jan 2016 22:12:50 +0200 Subject: [PATCH 170/235] Reference to session + Corrected sample code char Corrected reference to user with reference to session + Removed extra parenthesis from code sample. --- book/controller.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/book/controller.rst b/book/controller.rst index ac2d5981e07..77a33cb2b25 100644 --- a/book/controller.rst +++ b/book/controller.rst @@ -605,7 +605,7 @@ from any controller:: $filters = $session->get('filters', array()); } -These attributes will remain on the user for the remainder of that user's +These attributes will remain in the session for the remainder of that user's session. .. index:: @@ -821,7 +821,7 @@ method to check the CSRF token:: } // isCsrfTokenValid() is equivalent to: - // $this->get('security.csrf.token_manager')->isTokenValid() + // $this->get('security.csrf.token_manager')->isTokenValid( // new \Symfony\Component\Security\Csrf\CsrfToken\CsrfToken('token_id', $token) // ); From 5d1806ef64eed1f720bb016020fa91e6afdf28c0 Mon Sep 17 00:00:00 2001 From: autiquet axel Date: Tue, 19 Jan 2016 14:48:29 +0100 Subject: [PATCH 171/235] Fix by_reference deprecated FormType::class --- reference/forms/types/options/by_reference.rst.inc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/reference/forms/types/options/by_reference.rst.inc b/reference/forms/types/options/by_reference.rst.inc index 865d38213ee..e2552817470 100644 --- a/reference/forms/types/options/by_reference.rst.inc +++ b/reference/forms/types/options/by_reference.rst.inc @@ -12,13 +12,14 @@ To explain this further, here's a simple example:: use Symfony\Component\Form\Extension\Core\Type\TextType; use Symfony\Component\Form\Extension\Core\Type\EmailType; + use Symfony\Component\Form\Extension\Core\Type\FormType; // ... $builder = $this->createFormBuilder($article); $builder ->add('title', TextType::class) ->add( - $builder->create('author', 'form', array('by_reference' => ?)) + $builder->create('author', FormType::class, array('by_reference' => ?)) ->add('name', TextType::class) ->add('email', EmailType::class) ) From 9944eca843977740cd7c1b812c52eca3d4832bd0 Mon Sep 17 00:00:00 2001 From: Jace25 Date: Mon, 25 Jan 2016 15:32:37 +0100 Subject: [PATCH 172/235] Latest demo has no bin folder Latest demo has no bin folder. Console is located inside the app folder. --- book/installation.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/book/installation.rst b/book/installation.rst index fc65eb7f4fc..58029ab3e90 100644 --- a/book/installation.rst +++ b/book/installation.rst @@ -343,7 +343,7 @@ of the Symfony Installer anywhere in your system: c:\projects\> php symfony demo Once downloaded, enter into the ``symfony_demo/`` directory and run the PHP's -built-in web server executing the ``php bin/console server:run`` command. Access +built-in web server executing the ``php app/console server:run`` command. Access to the ``http://localhost:8000`` URL in your browser to start using the Symfony Demo application. From ab2f9aa37c6e354686b1265f3520ac337d34e754 Mon Sep 17 00:00:00 2001 From: Vladimir Kovpak Date: Fri, 29 Jan 2016 17:44:53 +0200 Subject: [PATCH 173/235] Expected: semicolon Added missed semicolon. --- cookbook/security/api_key_authentication.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/security/api_key_authentication.rst b/cookbook/security/api_key_authentication.rst index ee721e4894f..5ed3b0ef133 100644 --- a/cookbook/security/api_key_authentication.rst +++ b/cookbook/security/api_key_authentication.rst @@ -308,7 +308,7 @@ you can use to create an error ``Response``. // this contains information about *why* authentication failed // use it, or return your own message strtr($exception->getMessageKey(), $exception->getMessageData()) - , 403) + , 403); } } From 50c3fb25db39fb53d21db4095c60a1325b30c712 Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Fri, 29 Jan 2016 17:33:24 +0100 Subject: [PATCH 174/235] [#6204] fix CS --- cookbook/security/api_key_authentication.rst | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/cookbook/security/api_key_authentication.rst b/cookbook/security/api_key_authentication.rst index 5ed3b0ef133..cc405446b01 100644 --- a/cookbook/security/api_key_authentication.rst +++ b/cookbook/security/api_key_authentication.rst @@ -307,8 +307,9 @@ you can use to create an error ``Response``. return new Response( // this contains information about *why* authentication failed // use it, or return your own message - strtr($exception->getMessageKey(), $exception->getMessageData()) - , 403); + strtr($exception->getMessageKey(), $exception->getMessageData()), + 403 + ); } } From 372704b760adea1267fb1f95dfc64842d6976f1e Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Sun, 31 Jan 2016 08:24:22 +0100 Subject: [PATCH 175/235] Revert "revert form login CSRF changes on wrong branch" This reverts commit 3a2a71447500f7776eb4af6b7e8e4b9014dc44fd. --- cookbook/security/csrf_in_login_form.rst | 14 +++++++------- reference/configuration/security.rst | 4 ++-- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/cookbook/security/csrf_in_login_form.rst b/cookbook/security/csrf_in_login_form.rst index c82181e02ac..be8f3f9d569 100644 --- a/cookbook/security/csrf_in_login_form.rst +++ b/cookbook/security/csrf_in_login_form.rst @@ -33,7 +33,7 @@ provider available in the Security component: # ... form_login: # ... - csrf_provider: security.csrf.token_manager + csrf_token_generator: security.csrf.token_manager .. code-block:: xml @@ -50,7 +50,7 @@ provider available in the Security component: - + @@ -66,7 +66,7 @@ provider available in the Security component: // ... 'form_login' => array( // ... - 'csrf_provider' => 'security.csrf.token_manager', + 'csrf_token_generator' => 'security.csrf.token_manager', ), ), ), @@ -124,7 +124,7 @@ After this, you have protected your login form against CSRF attacks. .. tip:: You can change the name of the field by setting ``csrf_parameter`` and change - the token ID by setting ``intention`` in your configuration: + the token ID by setting ``csrf_token_id`` in your configuration: .. configuration-block:: @@ -140,7 +140,7 @@ After this, you have protected your login form against CSRF attacks. form_login: # ... csrf_parameter: _csrf_security_token - intention: a_private_string + csrf_token_id: a_private_string .. code-block:: xml @@ -158,7 +158,7 @@ After this, you have protected your login form against CSRF attacks. @@ -176,7 +176,7 @@ After this, you have protected your login form against CSRF attacks. 'form_login' => array( // ... 'csrf_parameter' => '_csrf_security_token', - 'intention' => 'a_private_string' + 'csrf_token_id' => 'a_private_string' ), ), ), diff --git a/reference/configuration/security.rst b/reference/configuration/security.rst index cf44023f26e..a9b25ceb5e9 100644 --- a/reference/configuration/security.rst +++ b/reference/configuration/security.rst @@ -162,8 +162,8 @@ Each part will be explained in the next section. # csrf token options csrf_parameter: _csrf_token - intention: authenticate - csrf_provider: my.csrf_token_generator.id + csrf_token_id: authenticate + csrf_token_generator: my.csrf_token_generator.id # by default, the login form *must* be a POST, not a GET post_only: true From fcdb82b67f94ba9c5a9b57dd6cf3887abee556a9 Mon Sep 17 00:00:00 2001 From: Massimiliano Arione Date: Thu, 28 Jan 2016 16:20:48 +0100 Subject: [PATCH 176/235] fix types --- cookbook/form/unit_testing.rst | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/cookbook/form/unit_testing.rst b/cookbook/form/unit_testing.rst index 6ab99830165..c8c2bf51e70 100644 --- a/cookbook/form/unit_testing.rst +++ b/cookbook/form/unit_testing.rst @@ -52,7 +52,7 @@ The simplest ``TypeTestCase`` implementation looks like the following:: 'test2' => 'test2', ); - $type = new TestedType(); + $type = TestedType::class; $form = $this->factory->create($type); $object = TestObject::fromArray($formData); @@ -78,7 +78,7 @@ First you verify if the ``FormType`` compiles. This includes basic class inheritance, the ``buildForm`` function and options resolution. This should be the first test you write:: - $type = new TestedType(); + $type = TestedType::class; $form = $this->factory->create($type); This test checks that none of your data transformers used by the form @@ -136,7 +136,7 @@ before creating the parent form using the ``PreloadedExtension`` class:: { protected function getExtensions() { - $childType = new TestChildType(); + $childType = TestChildType::class; return array(new PreloadedExtension(array( $childType->getName() => $childType, @@ -145,7 +145,7 @@ before creating the parent form using the ``PreloadedExtension`` class:: public function testSubmitValidData() { - $type = new TestedType(); + $type = TestedType::class; $form = $this->factory->create($type); // ... your test From 211f3a65cd12b108f238f609cd9c98699b7d92a3 Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Thu, 4 Feb 2016 16:32:12 +0100 Subject: [PATCH 177/235] add versionadded directive for range type --- reference/forms/types/range.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/reference/forms/types/range.rst b/reference/forms/types/range.rst index a59082adb78..77d057c0bad 100644 --- a/reference/forms/types/range.rst +++ b/reference/forms/types/range.rst @@ -4,6 +4,9 @@ RangeType Field =============== +.. versionadded:: 2.8 + The ``range`` type was introduced in Symfony 2.8. + The ``RangeType`` field is a slider that is rendered using the HTML5 ```` tag. From 97ef850b453c59ad5ba661607a95e8a395856605 Mon Sep 17 00:00:00 2001 From: Tristan Darricau Date: Mon, 1 Feb 2016 10:51:47 +0100 Subject: [PATCH 178/235] Remove 2.3.* from composer snippets in the form component doc --- components/form/introduction.rst | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/components/form/introduction.rst b/components/form/introduction.rst index 3a1677b9a56..61dac0cf6cc 100644 --- a/components/form/introduction.rst +++ b/components/form/introduction.rst @@ -163,14 +163,14 @@ component offers a rich integration. To use the integration, you'll need the ``TwigBridge``, which provides integration between Twig and several Symfony components. If you're using Composer, you -could install the latest 2.3 version by adding the following ``require`` +could install the latest 3.x version by adding the following ``require`` line to your ``composer.json`` file: .. code-block:: json { "require": { - "symfony/twig-bridge": "2.3.*" + "symfony/twig-bridge": "~3.0" } } @@ -243,15 +243,15 @@ via your own Twig extension. To use the built-in integration, be sure that your project has Symfony's Translation and :doc:`Config ` components -installed. If you're using Composer, you could get the latest 2.3 version +installed. If you're using Composer, you could get the latest 3.x version of each of these by adding the following to your ``composer.json`` file: .. code-block:: json { "require": { - "symfony/translation": "2.3.*", - "symfony/config": "2.3.*" + "symfony/translation": "~3.0", + "symfony/config": "~3.0" } } @@ -295,13 +295,13 @@ array or object) and pass it through your own validation system. To use the integration with Symfony's Validator component, first make sure it's installed in your application. If you're using Composer and want to -install the latest 2.3 version, add this to your ``composer.json``: +install the latest 3.x version, add this to your ``composer.json``: .. code-block:: json { "require": { - "symfony/validator": "2.3.*" + "symfony/validator": "~3.0" } } From 06ca405628d24d74a1b89b84d1045580118d7b4a Mon Sep 17 00:00:00 2001 From: Henry Snoek Date: Tue, 19 Jan 2016 22:23:09 +0100 Subject: [PATCH 179/235] change translation getMessages() to getCatalogue() --- components/translation/usage.rst | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/components/translation/usage.rst b/components/translation/usage.rst index 3cf13b9fb7d..4ad16abb4cd 100644 --- a/components/translation/usage.rst +++ b/components/translation/usage.rst @@ -376,7 +376,11 @@ In case you want to use the same translation catalogue outside your application (e.g. use translation on the client side), it's possible to fetch raw translation messages. Just specify the required locale:: - $messages = $translator->getMessages('fr_FR'); + $catalogue = $translator->getCatalogue('fr_FR'); + $messages = $catalogue->all(); + while ($catalogue = $catalogue->getFallbackCatalogue()) { + $messages = array_replace_recursive($catalogue->all(), $messages); + } The ``$messages`` variable will have the following structure:: From 0e288a23e7b89778e59501cc9a23e4c32606bf7d Mon Sep 17 00:00:00 2001 From: gondo Date: Fri, 5 Feb 2016 15:26:14 +0100 Subject: [PATCH 180/235] removed unnecesary exception form repository removed `UsernameNotFoundException` form repository as this logic does not belong to repository and also it is duplicated. exception is already thrown on proper place if no user is found: https://github.com/symfony/symfony/blob/master/src/Symfony/Bridge/Doctrine/Security/User/EntityUserProvider.php#L60 --- cookbook/security/entity_provider.rst | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/cookbook/security/entity_provider.rst b/cookbook/security/entity_provider.rst index 57f5bb8fff1..0f36ceb0622 100644 --- a/cookbook/security/entity_provider.rst +++ b/cookbook/security/entity_provider.rst @@ -432,29 +432,18 @@ interface only requires one method: ``loadUserByUsername($username)``:: use Symfony\Bridge\Doctrine\Security\User\UserLoaderInterface; use Symfony\Component\Security\Core\User\UserInterface; - use Symfony\Component\Security\Core\Exception\UsernameNotFoundException; use Doctrine\ORM\EntityRepository; class UserRepository extends EntityRepository implements UserLoaderInterface { public function loadUserByUsername($username) { - $user = $this->createQueryBuilder('u') + return $this->createQueryBuilder('u') ->where('u.username = :username OR u.email = :email') ->setParameter('username', $username) ->setParameter('email', $username) ->getQuery() ->getOneOrNullResult(); - - if (null === $user) { - $message = sprintf( - 'Unable to find an active admin AppBundle:User object identified by "%s".', - $username - ); - throw new UsernameNotFoundException($message); - } - - return $user; } } From bb96dc61afb9bec0ac198e2f1b6d1b5f20feac2b Mon Sep 17 00:00:00 2001 From: Patrik Pacin Date: Mon, 1 Feb 2016 17:21:11 +0100 Subject: [PATCH 181/235] Update form_collections.rst removed new from new TaskType::class --- cookbook/form/form_collections.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/form/form_collections.rst b/cookbook/form/form_collections.rst index af2728b3aa6..b7cea09bba0 100644 --- a/cookbook/form/form_collections.rst +++ b/cookbook/form/form_collections.rst @@ -689,7 +689,7 @@ the relationship between the removed ``Tag`` and ``Task`` object. $originalTags->add($tag); } - $editForm = $this->createForm(new TaskType::class, $task); + $editForm = $this->createForm(TaskType::class, $task); $editForm->handleRequest($request); From 946c5c2ed54ff06e70cbad4d32f57b26656e7c8e Mon Sep 17 00:00:00 2001 From: WouterJ Date: Fri, 18 Dec 2015 11:42:20 +0100 Subject: [PATCH 182/235] Added note about the hash_equals polyfill --- .../security/custom_authentication_provider.rst | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/cookbook/security/custom_authentication_provider.rst b/cookbook/security/custom_authentication_provider.rst index 22e190a9ba9..89f28e79f86 100644 --- a/cookbook/security/custom_authentication_provider.rst +++ b/cookbook/security/custom_authentication_provider.rst @@ -289,6 +289,18 @@ the ``PasswordDigest`` header value matches with the user's password. provider for the given token. In the case of multiple providers, the authentication manager will then move to the next provider in the list. +.. note:: + + While the :phpfunction:`hash_equals` function was introduced in PHP 5.6, + you are safe to use it with any PHP version in your Symfony application. In + PHP versions prior to 5.6, `Symfony Polyfill`_ (which is included in + Symfony) will define the function for you. + + .. versionadded:: 2.8 + Symfony Polyfill is included by default since Symfony 2.8. Prior to Symfony 2.8, + you have to execute ``composer require symfony/polyfill-php56`` to be able to + use ``hash_equals`` on older PHP versions. + The Factory ----------- @@ -666,3 +678,4 @@ in the factory and consumed or passed to the other classes in the container. .. _`WSSE`: http://www.xml.com/pub/a/2003/12/17/dive.html .. _`nonce`: https://en.wikipedia.org/wiki/Cryptographic_nonce .. _`timing attacks`: https://en.wikipedia.org/wiki/Timing_attack +.. _`Symfony Polyfill`: https://github.com/symfony/polyfill From 906d55a99db90367a0785e6d3f33d34f5b8f7f47 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Mon, 21 Dec 2015 17:41:36 +0100 Subject: [PATCH 183/235] Update Testing Form Types article for 2.8 refactorings --- cookbook/form/unit_testing.rst | 79 +++++++++++++++++----------------- 1 file changed, 39 insertions(+), 40 deletions(-) diff --git a/cookbook/form/unit_testing.rst b/cookbook/form/unit_testing.rst index c8c2bf51e70..879ea97e1ed 100644 --- a/cookbook/form/unit_testing.rst +++ b/cookbook/form/unit_testing.rst @@ -52,8 +52,7 @@ The simplest ``TypeTestCase`` implementation looks like the following:: 'test2' => 'test2', ); - $type = TestedType::class; - $form = $this->factory->create($type); + $form = $this->factory->create(TestedType::class); $object = TestObject::fromArray($formData); @@ -78,8 +77,7 @@ First you verify if the ``FormType`` compiles. This includes basic class inheritance, the ``buildForm`` function and options resolution. This should be the first test you write:: - $type = TestedType::class; - $form = $this->factory->create($type); + $form = $this->factory->create(TestedType::class); This test checks that none of your data transformers used by the form failed. The :method:`Symfony\\Component\\Form\\FormInterface::isSynchronized` @@ -109,55 +107,55 @@ widgets you want to display are available in the children property:: $this->assertArrayHasKey($key, $children); } -Adding a Type your Form Depends on ----------------------------------- +Testings Types from the Service Container +----------------------------------------- -Your form may depend on other types that are defined as services. It -might look like this:: +Your form may be used as a service, as it depends on other services (e.g. the +Doctrine entity manager). In these cases, using the above code won't work, as +the Form component just instantiates the form type without passing any +arguments to the constructor. - // src/AppBundle/Form/Type/TestedType.php - - // ... the buildForm method - $builder->add('app_test_child_type'); - -To create your form correctly, you need to make the type available to the -form factory in your test. The easiest way is to register it manually -before creating the parent form using the ``PreloadedExtension`` class:: +To solve this, you have to mock the injected dependencies, instantiate your own +form type and use the :class:`Symfony\\Component\\Form\\PreloadedExtension` to +make sure the ``FormRegistry`` uses the created instance:: // src/AppBundle/Tests/Form/Type/TestedTypeTests.php namespace AppBundle\Tests\Form\Type; - use AppBundle\Form\Type\TestedType; - use AppBundle\Model\TestObject; - use Symfony\Component\Form\Test\TypeTestCase; use Symfony\Component\Form\PreloadedExtension; + // ... class TestedTypeTest extends TypeTestCase { + private $entityManager; + + protected function setUp() + { + // mock any dependencies + $this->entityManager = $this->getMock('Doctrine\Common\Persistence\ObjectManager'); + } + protected function getExtensions() { - $childType = TestChildType::class; + // create a type instance with the mocked dependencies + $type = new TestedType($this->entityManager); - return array(new PreloadedExtension(array( - $childType->getName() => $childType, - ), array())); + return array( + // register the type instances with the PreloadedExtension + new PreloadedExtension(array($type), array()), + ); } public function testSubmitValidData() { - $type = TestedType::class; - $form = $this->factory->create($type); + // Instead of creating a new instance, the one created in + // getExtensions() will be used. + $form = $this->factory->create(TestedType::class); // ... your test } } -.. caution:: - - Make sure the child type you add is well tested. Otherwise you may - be getting errors that are not related to the form you are currently - testing but to its children. - Adding Custom Extensions ------------------------ @@ -173,23 +171,25 @@ allows you to return a list of extensions to register:: // src/AppBundle/Tests/Form/Type/TestedTypeTests.php namespace AppBundle\Tests\Form\Type; - use AppBundle\Form\Type\TestedType; - use AppBundle\Model\TestObject; + // ... use Symfony\Component\Form\Extension\Validator\ValidatorExtension; - use Symfony\Component\Form\Forms; - use Symfony\Component\Form\FormBuilder; - use Symfony\Component\Form\Test\TypeTestCase; use Symfony\Component\Validator\ConstraintViolationList; class TestedTypeTest extends TypeTestCase { + private $validator; + protected function getExtensions() { - $validator = $this->getMock('\Symfony\Component\Validator\Validator\ValidatorInterface'); - $validator->method('validate')->will($this->returnValue(new ConstraintViolationList())); + $this->validator = $this->getMock( + 'Symfony\Component\Validator\Validator\ValidatorInterface' + ); + $this->validator + ->method('validate') + ->will($this->returnValue(new ConstraintViolationList())); return array( - new ValidatorExtension($validator), + new ValidatorExtension($this->validator), ); } @@ -211,7 +211,6 @@ a good opportunity to use them:: class TestedTypeTest extends TypeTestCase { - /** * @dataProvider getValidTestData */ From 7a4d9fc0eff18f493ea476fbc5e0b7513711fafa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=83=C2=A9vin=20Dunglas?= Date: Fri, 29 May 2015 14:42:04 +0200 Subject: [PATCH 184/235] [FrameworkBundle] Name converter of Serializer --- components/serializer.rst | 2 ++ cookbook/serializer.rst | 4 +++ reference/configuration/framework.rst | 49 +++++++++++++++++++++++++-- 3 files changed, 53 insertions(+), 2 deletions(-) diff --git a/components/serializer.rst b/components/serializer.rst index 235ce8acf58..2d8980684b4 100644 --- a/components/serializer.rst +++ b/components/serializer.rst @@ -344,6 +344,8 @@ method on the normalizer definition:: $serializer = new Serializer(array($normalizer), array($encoder)); $serializer->serialize($person, 'json'); // Output: {"name":"foo","sportsman":false} +.. _component-serializer-converting-property-names-when-serializing-and-deserializing: + Converting Property Names when Serializing and Deserializing ------------------------------------------------------------ diff --git a/cookbook/serializer.rst b/cookbook/serializer.rst index 2e12c6cf641..93aba022a29 100644 --- a/cookbook/serializer.rst +++ b/cookbook/serializer.rst @@ -124,6 +124,8 @@ Here is an example on how to load the $definition->addTag('serializer.normalizer'); $container->setDefinition('get_set_method_normalizer', $definition); +.. _cookbook-serializer-using-serialization-groups-annotations: + Using Serialization Groups Annotations -------------------------------------- @@ -170,6 +172,8 @@ to your class and choose which groups to use when serializing:: 'json', array('groups' => array('group1') ); +.. _cookbook-serializer-enabling-metadata-cache: + Enabling the Metadata Cache --------------------------- diff --git a/reference/configuration/framework.rst b/reference/configuration/framework.rst index 0ef27c453d2..3d4d68fc916 100644 --- a/reference/configuration/framework.rst +++ b/reference/configuration/framework.rst @@ -92,7 +92,7 @@ Configuration * `validation`_ * :ref:`enabled ` * :ref:`cache ` - * `enable_annotations`_ + * :ref:`enable_annotations ` * `translation_domain`_ * `strict_email`_ * `api`_ @@ -102,6 +102,9 @@ Configuration * `debug`_ * `serializer`_ * :ref:`enabled ` + * :ref:`cache ` + * :ref:`enable_annotations ` + * `name_converter`_ secret ~~~~~~ @@ -1372,6 +1375,8 @@ cache The service that is used to persist class metadata in a cache. The service has to implement the :class:`Symfony\\Component\\Validator\\Mapping\\Cache\\CacheInterface`. +.. _reference-validation-enable_annotations: + enable_annotations .................. @@ -1478,7 +1483,47 @@ enabled Whether to enable the ``serializer`` service or not in the service container. -For more details, see :doc:`/cookbook/serializer`. +.. _reference-serializer-cache: + +cache +..... + +**type**: ``string`` + +The service that is used to persist class metadata in a cache. The service +has to implement the :class:`Doctrine\\Common\\Cache\\Cache` interface. + +.. seealso:: + + For more information, see :ref:`cookbook-serializer-enabling-metadata-cache`. + +.. _reference-serializer-enable_annotations: + +enable_annotations +.................. + +**type**: ``boolean`` **default**: ``false`` + +If this option is enabled, serialization groups can be defined using annotations. + +.. seealso:: + + For more information, see :ref:`cookbook-serializer-using-serialization-groups-annotations`. + +name_converter +.............. + +**type**: ``string`` + +The name converter to use. +The :class:`Symfony\\Component\\Serializer\\NameConverter\\CamelCaseToSnakeCaseNameConverter` +name converter can enabled by using the ``serializer.name_converter.camel_case_to_snake_case`` +value. + +.. seealso:: + + For more information, see + :ref:`component-serializer-converting-property-names-when-serializing-and-deserializing`. Full Default Configuration -------------------------- From 353df25d9a60b5f8f04e081d2928e79b053f7d46 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 28 Nov 2015 16:39:11 +0100 Subject: [PATCH 185/235] Document automatic registration of extension compiler passes --- .../dependency_injection/compilation.rst | 112 ++++++++++++------ components/dependency_injection/tags.rst | 21 +++- .../service_container/compiler_passes.rst | 26 ++-- 3 files changed, 107 insertions(+), 52 deletions(-) diff --git a/components/dependency_injection/compilation.rst b/components/dependency_injection/compilation.rst index d3ccfd13a4c..621c674080f 100644 --- a/components/dependency_injection/compilation.rst +++ b/components/dependency_injection/compilation.rst @@ -306,46 +306,94 @@ For more details, see :doc:`/cookbook/bundles/prepend_extension`, which is specific to the Symfony Framework, but contains more details about this feature. -Creating a Compiler Pass ------------------------- +.. _creating-a-compiler-pass: +.. _components-di-compiler-pass: -You can also create and register your own compiler passes with the container. -To create a compiler pass it needs to implement the -:class:`Symfony\\Component\\DependencyInjection\\Compiler\\CompilerPassInterface` -interface. The compiler pass gives you an opportunity to manipulate the -service definitions that have been compiled. This can be very powerful, -but is not something needed in everyday use. +Execute Code During Compilation +------------------------------- -The compiler pass must have the ``process`` method which is passed the container -being compiled:: +You can also execute custom code during compilation by writing your own +compiler pass. By implementing +:class:`Symfony\\Component\\DependencyInjection\\Compiler\\CompilerPassInterface` +in your extension, the added ``process()`` method will be called during +compilation:: + // ... use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; - use Symfony\Component\DependencyInjection\ContainerBuilder; - class CustomCompilerPass implements CompilerPassInterface + class AcmeDemoExtension implements ExtensionInterface, CompilerPassInterface { public function process(ContainerBuilder $container) { - // ... + // ... do something during the compilation } + + // ... } +.. versionadded:: 2.8 + Prior to Symfony 2.8, extensions implementing ``CompilerPassInterface`` + were not automatically registered. You needed to register them as explained + in :ref:`the next section `. + +As ``process()`` is called *after* all extensions are loaded, it allows you to +edit service definitions of other extensions as well as retrieving information +about service definitions. + The container's parameters and definitions can be manipulated using the -methods described in the :doc:`/components/dependency_injection/definitions`. -One common thing to do in a compiler pass is to search for all services -that have a certain tag in order to process them in some way or dynamically -plug each into some other service. +methods described in :doc:`/components/dependency_injection/definitions`. + +.. note:: + + Please note that the ``process()`` method in the extension class is + called during the optimization step. You can read + :ref:`the next section ` if you + need to edit the container during another step. + +.. note:: + + As a rule, only work with services definition in a compiler pass and do not + create service instances. In practice, this means using the methods + ``has()``, ``findDefinition()``, ``getDefinition()``, ``setDefinition()``, + etc. instead of ``get()``, ``set()``, etc. + +.. tip:: + + Make sure your compiler pass does not require services to exist. Abort the + method call if some required service is not available. -Registering a Compiler Pass ---------------------------- +A common use-case of compiler passes is to search for all service definitions +that have a certain tag in order to process dynamically plug each into some +other service. See the section on :ref:`service tags ` +for an example. -You need to register your custom pass with the container. Its process method -will then be called when the container is compiled:: +.. _components-di-separate-compiler-passes: + +Creating Separate Compiler Passes +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Sometimes, you need to do more than one thing during compliation, want to use +compiler passes without an extension or you need to execute some code at +another step in the compilation process. In these cases, you can create a new +class implementing the ``CompilerPassInterface``:: + + use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; + use Symfony\Component\DependencyInjection\ContainerBuilder; + + class CustomPass implements CompilerPassInterface + { + public function process(ContainerBuilder $container) + { + // ... do something during the compilation + } + } + +You then need to register your custom pass with the container:: use Symfony\Component\DependencyInjection\ContainerBuilder; $container = new ContainerBuilder(); - $container->addCompilerPass(new CustomCompilerPass); + $container->addCompilerPass(new CustomPass()); .. note:: @@ -354,17 +402,16 @@ will then be called when the container is compiled:: more details. Controlling the Pass Ordering -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +............................. The default compiler passes are grouped into optimization passes and removal passes. The optimization passes run first and include tasks such as resolving references within the definitions. The removal passes perform tasks such -as removing private aliases and unused services. You can choose where in -the order any custom passes you add are run. By default they will be run -before the optimization passes. +as removing private aliases and unused services. When registering compiler +passes using ``addCompilerPass()``, you can configure when your compiler pass +is run. By default, they are run before the optimization passes. -You can use the following constants as the second argument when registering -a pass with the container to control where it goes in the order: +You can use the following constants to determine when your pass is executed: * ``PassConfig::TYPE_BEFORE_OPTIMIZATION`` * ``PassConfig::TYPE_OPTIMIZE`` @@ -373,14 +420,11 @@ a pass with the container to control where it goes in the order: * ``PassConfig::TYPE_AFTER_REMOVING`` For example, to run your custom pass after the default removal passes have -been run:: +been run, use:: - use Symfony\Component\DependencyInjection\ContainerBuilder; - use Symfony\Component\DependencyInjection\Compiler\PassConfig; - - $container = new ContainerBuilder(); + // ... $container->addCompilerPass( - new CustomCompilerPass, + new CustomPass(), PassConfig::TYPE_AFTER_REMOVING ); diff --git a/components/dependency_injection/tags.rst b/components/dependency_injection/tags.rst index 83deec45395..c293c58c011 100644 --- a/components/dependency_injection/tags.rst +++ b/components/dependency_injection/tags.rst @@ -117,11 +117,14 @@ Notice that each was given a tag named ``acme_mailer.transport``. This is the custom tag that you'll use in your compiler pass. The compiler pass is what makes this tag "mean" something. -Create a ``CompilerPass`` -------------------------- +.. _components-di-compiler-pass-tags: +.. _create-a-compilerpass: -Your compiler pass can now ask the container for any services with the -custom tag:: +Create a Compiler Pass +---------------------- + +You can now use a :ref:`compiler pass ` to ask the +container for any services with the ``acme_mailer.transport`` tag:: use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; @@ -154,7 +157,7 @@ custom tag:: The ``process()`` method checks for the existence of the ``acme_mailer.transport_chain`` service, then looks for all services tagged ``acme_mailer.transport``. It adds to the definition of the ``acme_mailer.transport_chain`` service a -call to ``addTransport()`` for each "acme_mailer.transport" service it has +call to ``addTransport()`` for each ``acme_mailer.transport`` service it has found. The first argument of each of these calls will be the mailer transport service itself. @@ -175,6 +178,13 @@ run when the container is compiled:: framework. See :doc:`/cookbook/service_container/compiler_passes` for more details. +.. tip:: + + When implementing the ``CompilerPassInterface`` in a service extension, you + do not need to register it. See the + :ref:`components documentation ` for more + information. + Adding Additional Attributes on Tags ------------------------------------ @@ -296,4 +306,3 @@ The double loop may be confusing. This is because a service can have more than one tag. You tag a service twice or more with the ``acme_mailer.transport`` tag. The second foreach loop iterates over the ``acme_mailer.transport`` tags set for the current service and gives you the attributes. - diff --git a/cookbook/service_container/compiler_passes.rst b/cookbook/service_container/compiler_passes.rst index cf629a695ef..d5b7595adc4 100644 --- a/cookbook/service_container/compiler_passes.rst +++ b/cookbook/service_container/compiler_passes.rst @@ -7,25 +7,27 @@ How to Work with Compiler Passes in Bundles Compiler passes give you an opportunity to manipulate other service definitions that have been registered with the service container. You -can read about how to create them in the components section ":doc:`/components/dependency_injection/compilation`". -To register a compiler pass from a bundle you need to add it to the build -method of the bundle definition class:: +can read about how to create them in the components section +":ref:`components-di-compiler-pass`". - // src/Acme/MailerBundle/AcmeMailerBundle.php - namespace Acme\MailerBundle; +When using :ref:`separate compiler passes `, +you need to register them in the ``build()`` method of the bundle class (this +is not needed when implementing the ``process()`` method in the extension):: + + // src/AppBundle/AppBundle.php + namespace AppBundle; use Symfony\Component\HttpKernel\Bundle\Bundle; use Symfony\Component\DependencyInjection\ContainerBuilder; + use AppBundle\DependencyInjection\Compiler\CustomPass; - use Acme\MailerBundle\DependencyInjection\Compiler\CustomCompilerPass; - - class AcmeMailerBundle extends Bundle + class AppBundle extends Bundle { public function build(ContainerBuilder $container) { parent::build($container); - $container->addCompilerPass(new CustomCompilerPass()); + $container->addCompilerPass(new CustomPass()); } } @@ -33,6 +35,6 @@ One of the most common use-cases of compiler passes is to work with tagged servi (read more about tags in the components section ":doc:`/components/dependency_injection/tags`"). If you are using custom tags in a bundle then by convention, tag names consist of the name of the bundle (lowercase, underscores as separators), followed -by a dot, and finally the "real" name. For example, if you want to introduce -some sort of "transport" tag in your AcmeMailerBundle, you should call it -``acme_mailer.transport``. +by a dot and finally the "real" name. For example, if you want to introduce +some sort of "mail_transport" tag in your AppBundle, you should call it +``app.mail_transport``. From 89b20a8c72bd21320fa4954aa032518d2c87b114 Mon Sep 17 00:00:00 2001 From: Iltar van der Berg Date: Thu, 16 Jul 2015 10:43:11 +0200 Subject: [PATCH 186/235] [Cookbook, Security] Added user_checkers.rst --- cookbook/security/index.rst | 1 + cookbook/security/user_checkers.rst | 215 ++++++++++++++++++++++++++++ 2 files changed, 216 insertions(+) create mode 100644 cookbook/security/user_checkers.rst diff --git a/cookbook/security/index.rst b/cookbook/security/index.rst index c9a478c927a..3efdd455016 100644 --- a/cookbook/security/index.rst +++ b/cookbook/security/index.rst @@ -23,6 +23,7 @@ Authentication (Identifying/Logging in the User) multiple_user_providers firewall_restriction host_restriction + user_checkers Authorization (Denying Access) ------------------------------ diff --git a/cookbook/security/user_checkers.rst b/cookbook/security/user_checkers.rst new file mode 100644 index 00000000000..83ef18e63c3 --- /dev/null +++ b/cookbook/security/user_checkers.rst @@ -0,0 +1,215 @@ +.. index:: + single: Security; Creating and Enabling Custom User Checkers + +How to Create and Enable Custom User Checkers +============================================= + +During the authentication of a user, additional checks might be required to verify +if the identified user is allowed to log in. By defining a custom user checker, you +can define per firewall which checker should be used. + +.. versionadded:: 2.8 + Defining a custom user checker was introduced in Symfony 2.8. + + +Creating a Custom User Checker +------------------------------ + +User checkers are defined in PHP classes that must implement the +:class:`UserCheckerInterface Symfony\\Component\\Security\\Core\\UserCheckerInterface`. +This interface defines two methods called ``checkPreAuth()`` and ``checkPostAuth()`` +to perform checks before and after user authentication. If one or more +conditions are not met, an exception should be thrown which extends the +:class:`AccountStatusException Symfony\\Component\\Security\\Core\\Exception\\AccountStatusException` + +.. code-block:: php + + namespace App\Security; + + use Symfony\Component\Security\Core\User\UserCheckInterface; + + class UserChecker implements UserCheckerInterface + { + public function checkPreAuth(UserInterface $user) + { + if (!$user instanceof AppUser) { + return; + } + + // user is deleted, show a generic Account Not Found message. + if ($user->isDeleted()) { + throw new AccountDeletedException('...'); + } + } + + public function checkPostAuth(UserInterface $user) + { + if (!$user instanceof AppUser) { + return; + } + + // user account is expired, the user may be notified + if ($user->isExpired()) { + throw new AccountExpiredException('...'); + } + } + } + +Enabling the Custom User Checker +-------------------------------- + +All that's left to be done is creating a service definition and configuring +this in the firewall configuration. Configuring the service is done like any +other service: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/services.yml + services: + app.user_checker: + class: App\Security\UserChecker + + .. code-block:: xml + + + + + + + + + + + .. code-block:: php + + // app/config/services.php + use Symfony\Component\DependencyInjection\Definition; + + $userChecker = new Definition('App\Security\UserChecker'); + $container->setDefinition('app.user_checker', $userChecker); + +All that's left to do is add the checker to the desired firewall where the value +is the service id of your user checker: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/security.yml + + # ... + security: + firewalls: + secured_area: + pattern: ^/ + user_checker: app.user_checker + # ... + + .. code-block:: xml + + + + + + + + + app.user_checker + + + + + + .. code-block:: php + + // app/config/security.php + + // ... + $container->loadFromExtension('security', array( + 'firewalls' => array( + 'secured_area' => array( + 'pattern' => '^/', + 'user_checker' => 'app.user_checker', + // ... + ), + ), + )); + + +Additional Configurations +------------------------- + +It's possible to have a different user checker per firewall. + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/security.yml + + # ... + security: + firewalls: + admin: + pattern: ^/admin + user_checker: app.admin_user_checker + # ... + secured_area: + pattern: ^/ + user_checker: app.user_checker + + .. code-block:: xml + + + + + + + + + app.admin_user_checker + + + + app.user_checker + + + + + + .. code-block:: php + + // app/config/security.php + + // ... + $container->loadFromExtension('security', array( + 'firewalls' => array( + 'admin' => array( + 'pattern' => '^/admin', + 'user_checkers' => 'app.admin_user_checker' + // ... + ), + 'secured_area' => array( + 'pattern' => '^/', + 'user_checker' => 'app.user_checker', + // ... + ), + ), + )); + +.. note:: + + Internally the user checkers are aliased per firewall. For `secured_area` the alias + `security.user_checker.secured_area` would point to `app.user_checker`. From dd8585dd4e6cc079777551641e69fdc2ce18a58b Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Sun, 7 Feb 2016 11:00:12 +0100 Subject: [PATCH 187/235] [#5330] some tweaks --- cookbook/map.rst.inc | 1 + cookbook/security/user_checkers.rst | 35 +++++++++++++++-------------- 2 files changed, 19 insertions(+), 17 deletions(-) diff --git a/cookbook/map.rst.inc b/cookbook/map.rst.inc index e9e7e67cf84..d57650320c7 100644 --- a/cookbook/map.rst.inc +++ b/cookbook/map.rst.inc @@ -178,6 +178,7 @@ * :doc:`/cookbook/security/multiple_user_providers` * :doc:`/cookbook/security/firewall_restriction` * :doc:`/cookbook/security/host_restriction` + * :doc:`/cookbook/security/user_checkers` * :doc:`Security Authorization (Denying Access) ` diff --git a/cookbook/security/user_checkers.rst b/cookbook/security/user_checkers.rst index 83ef18e63c3..7d7a9f73965 100644 --- a/cookbook/security/user_checkers.rst +++ b/cookbook/security/user_checkers.rst @@ -9,24 +9,28 @@ if the identified user is allowed to log in. By defining a custom user checker, can define per firewall which checker should be used. .. versionadded:: 2.8 - Defining a custom user checker was introduced in Symfony 2.8. - + The ability to configure a custom user checker per firewall was introduced + in Symfony 2.8. Creating a Custom User Checker ------------------------------ -User checkers are defined in PHP classes that must implement the -:class:`UserCheckerInterface Symfony\\Component\\Security\\Core\\UserCheckerInterface`. -This interface defines two methods called ``checkPreAuth()`` and ``checkPostAuth()`` -to perform checks before and after user authentication. If one or more -conditions are not met, an exception should be thrown which extends the -:class:`AccountStatusException Symfony\\Component\\Security\\Core\\Exception\\AccountStatusException` +User checkers are classes that must implement the +:class:`Symfony\\Component\\Security\\Core\\UserCheckerInterface`. This interface +defines two methods called ``checkPreAuth()`` and ``checkPostAuth()`` to +perform checks before and after user authentication. If one or more conditions +are not met, an exception should be thrown which extends the +:class:`Symfony\\Component\\Security\\Core\\Exception\\AccountStatusException`. .. code-block:: php - namespace App\Security; + namespace AppBundle\Security; + use AppBundle\Exception\AccountDeletedException; + use AppBundle\Security\User as AppUser; + use Symfony\Component\Security\Core\Exception\AccountExpiredException; use Symfony\Component\Security\Core\User\UserCheckInterface; + use Symfony\Component\Security\Core\User\UserInterface; class UserChecker implements UserCheckerInterface { @@ -69,7 +73,7 @@ other service: # app/config/services.yml services: app.user_checker: - class: App\Security\UserChecker + class: AppBundle\Security\UserChecker .. code-block:: xml @@ -80,17 +84,14 @@ other service: xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd"> - + .. code-block:: php // app/config/services.php - use Symfony\Component\DependencyInjection\Definition; - - $userChecker = new Definition('App\Security\UserChecker'); - $container->setDefinition('app.user_checker', $userChecker); + $container->register('app.user_checker', 'AppBundle\Security\UserChecker'); All that's left to do is add the checker to the desired firewall where the value is the service id of your user checker: @@ -211,5 +212,5 @@ It's possible to have a different user checker per firewall. .. note:: - Internally the user checkers are aliased per firewall. For `secured_area` the alias - `security.user_checker.secured_area` would point to `app.user_checker`. + Internally the user checkers are aliased per firewall. For ``secured_area`` + the alias ``security.user_checker.secured_area`` would point to ``app.user_checker``. From be5497195a8841f9a2d537c7279b48fe6e3a83c2 Mon Sep 17 00:00:00 2001 From: Oliver Hoff Date: Sat, 6 Feb 2016 17:35:07 +0100 Subject: [PATCH 188/235] #6232 update forms as services section --- best_practices/forms.rst | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/best_practices/forms.rst b/best_practices/forms.rst index 921a51ddeb8..73f2c0d775c 100644 --- a/best_practices/forms.rst +++ b/best_practices/forms.rst @@ -71,13 +71,9 @@ Registering Forms as Services You can also :ref:`register your form type as a service `. -But this is *not* recommended unless you plan to reuse the new form type in many -places or embed it in other forms directly or via the -:doc:`CollectionType `. - -For most forms that are used only to edit or create something, registering -the form as a service is over-kill, and makes it more difficult to figure -out exactly which form class is being used in a controller. +This is only needed if your form type requires some dependencies to be injected +by the container, otherwise it is unnecessary overhead and therefore *not* +recommended to do this for all form type classes. Form Button Configuration ------------------------- From 35a520dfc38af4a3f1273efd842c7e1f7411d546 Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Sun, 7 Feb 2016 12:38:21 +0100 Subject: [PATCH 189/235] [#6090] some small tweaks --- cookbook/profiler/storage.rst | 42 ++++++++++++++++++++++++++++++----- 1 file changed, 36 insertions(+), 6 deletions(-) diff --git a/cookbook/profiler/storage.rst b/cookbook/profiler/storage.rst index f10f41e0ca0..f0a330f2da6 100644 --- a/cookbook/profiler/storage.rst +++ b/cookbook/profiler/storage.rst @@ -4,7 +4,7 @@ Switching the Profiler Storage ============================== -In Symfony versions previous to 3.0, profiles could be stored in files, databases, +In Symfony versions prior to 3.0, profiles could be stored in files, databases, services like Redis and Memcache, etc. Starting from Symfony 3.0, the only storage mechanism with built-in support is the filesystem. @@ -12,12 +12,42 @@ By default the profile stores the collected data in the ``%kernel.cache_dir%/pro directory. If you want to use another location to store the profiles, define the ``dsn`` option of the ``framework.profiler``: -.. code-block:: yaml +.. configuration-block:: - # app/config/config.yml - framework: - profiler: - dsn: 'file:/tmp/symfony/profiler' + .. code-block:: yaml + + # app/config/config.yml + framework: + profiler: + dsn: 'file:/tmp/symfony/profiler' + + .. code-block:: xml + + + + + + + + + + .. code-block:: php + + // app/config/config.php + + // ... + $container->loadFromExtension('framework', array( + 'profiler' => array( + 'dsn' => 'file:/tmp/symfony/profiler', + ), + )); You can also create your own profile storage service implementing the :class:``Symfony\Component\HttpKernel\Profiler\ProfilerStorageInterface`` and From eb1c1ae0be390f493982b5c44b8e0ad6b552d658 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sun, 7 Feb 2016 13:51:53 +0100 Subject: [PATCH 190/235] Added December changelog --- changelog.rst | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/changelog.rst b/changelog.rst index 6e951b8a671..b558107a998 100644 --- a/changelog.rst +++ b/changelog.rst @@ -22,13 +22,17 @@ New Documentation * `#5906 `_ Added documentation for choice_translation_domain option (peterrehm) * `#6017 `_ Documented the Symfony Console Styles (javiereguiluz) * `#5811 `_ Conversion from mysql to PDO (iqbalmalik89) +* `#5966 `_ Remove deprecated StringUtils from WSSE custom auth provider (pimpreneil) * `#5962 `_ Simplify code example in "Adding custom extensions" section (snoek09) +* `#5977 `_ RequestStack parameter is required since 3.0 (leunggamciu) * `#6022 `_ clarify custom route loader documentation (dbu) * `#5994 `_ Updated the release process for Symfony 3.x and future releases (javiereguiluz) +* `#5954 `_ Fix #5236 [2.8][Translation] specify additional translation loading paths (Pierre Maraitre, Balamung) Fixed Documentation ~~~~~~~~~~~~~~~~~~~ +* `#6086 `_ Update form_customization.rst (vudaltsov) * `#6063 `_ minor #5829 Fix broken composer command (JHGitty) * `#5904 `_ Update php_soap_extension.rst (xDaizu) * `#5819 `_ Remove AppBundle (roukmoute) @@ -39,6 +43,7 @@ Minor Documentation Changes * `#6043 `_ Mention commiting only bower.json (krike, WouterJ) * `#5848 `_ Added hints to spool config section (martinczerwi) +* `#5586 `_ [2.8] Remove 2.6 versionaddeds as version reached eom (WouterJ) * `#6042 `_ some tweaks to unit testing form types (xabbuh) * `#6059 `_ Add best practice about the Form type namespace (WouterJ) * `#6068 `_ Remove references to API tagging (dunglas) @@ -47,6 +52,8 @@ Minor Documentation Changes * `#6094 `_ [Form] Added a missing php opening tag (dev-symfony-void) * `#5840 `_ [Contributing] [Standards] Add note about `trigger_error()` and deprecation messages (phansys) * `#6050 `_ Lots of minor fixes & applying best practices to form cookbook doc (ThomasLandauer, WouterJ) +* `#5993 `_ [Cookbook] [Security] Use UserLoaderInterface instead of UserProviderInterface (ogizanagi) +* `#6071 `_ Fix syntax (WouterJ) * `#5570 `_ Quick review of 'create framework' tutorial (WouterJ) * `#5445 `_ Reworded the explanation about the kernel.event_listener tag (javiereguiluz) * `#6054 `_ Remove 2.8 branch from patch documentation (Triiistan) @@ -64,6 +71,8 @@ Minor Documentation Changes * `#6006 `_ [Book] use AppBundle examples and follow best practices (xabbuh) * `#6016 `_ Corrected the line references for the basic controller example (theTeddyBear) * `#5446 `_ [Contributing] [Standards] Added note about phpdoc_separation (phansys) +* `#6027 `_ Update guard-authentication.rst (rvanginneken) +* `#6025 `_ Update guard-authentication.rst (rvanginneken) * `#5820 `_ Fixed an issue with command option shortcuts (javiereguiluz) * `#6033 `_ Fix Typo (Shine-neko) * `#6011 `_ Fixed formatting issues (javiereguiluz) @@ -71,19 +80,24 @@ Minor Documentation Changes * `#6009 `_ Fix missing constant usage for generating urls (Tobion) * `#5965 `_ Removing php opening tags (Deamon) * `#6003 `_ #5999 fix files names (vincentaubert) +* `#6004 `_ Fix for small typo (djoos) * `#5996 `_ Clarify example for SUBMIT form event (bkosborne) * `#6000 `_ Update registration_form.rst (afurculita) * `#5989 `_ Fix words according context (richardpq) * `#5992 `_ More use single quotes for YAML strings (snoek09) * `#5957 `_ mark deep option as deprecated (snoek09) * `#5943 `_ Add tip for when returning `null` from `createToken()` (jeroenseegers) +* `#5940 `_ [Cookbook][ServiceContainer] move filename comment to the top of the code block (xabbuh) * `#5956 `_ Update security.rst (mpaquet) * `#5959 `_ Fix #5912 Ambiguity on Access Decision Manager's Strategy (Pierre Maraitre) * `#5955 `_ use single quotes for YAML strings (snoek09) * `#5979 `_ [Book] Do not extend the base controller before introducing it (ogizanagi) * `#5970 `_ Remove isSubmitted call (DanielSiepmann) * `#5972 `_ Add isSubmitted call (DanielSiepmann) +* `#5964 `_ Missing n in Column (joshuataylor) * `#5961 `_ update from_flat_php_to_symfony2.rst (thao-witkam) +* `#5924 `_ Removed note about removed content (WouterJ) +* `#5938 `_ Add proper use of the password type (themccallister) November, 2015 From 4ffe998bdbb097446a303d6bb893335ab571376d Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sun, 7 Feb 2016 13:53:06 +0100 Subject: [PATCH 191/235] Added December changelog --- changelog.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/changelog.rst b/changelog.rst index ba4b26e4f0d..3b4b6d196ac 100644 --- a/changelog.rst +++ b/changelog.rst @@ -28,6 +28,7 @@ New Documentation * `#6022 `_ clarify custom route loader documentation (dbu) * `#5994 `_ Updated the release process for Symfony 3.x and future releases (javiereguiluz) * `#5954 `_ Fix #5236 [2.8][Translation] specify additional translation loading paths (Pierre Maraitre, Balamung) +* `#5948 `_ Update 3.0 docs accordingly to min PHP version requirement (ogizanagi) Fixed Documentation ~~~~~~~~~~~~~~~~~~~ @@ -58,6 +59,7 @@ Minor Documentation Changes * `#5445 `_ Reworded the explanation about the kernel.event_listener tag (javiereguiluz) * `#6054 `_ Remove 2.8 branch from patch documentation (Triiistan) * `#6057 `_ Fix PHP code for registering service (WouterJ) +* `#6066 `_ Update location of `app/check.php` to `bin/symfony_requirements` (Kevinrob) * `#6067 `_ improve phrasing (greg0ire) * `#6063 `_ minor #5829 Fix broken composer command (JHGitty) * `#6041 `_ Fixed misspelling of human in glossary.rst YAML (Wasserschlange) @@ -73,6 +75,7 @@ Minor Documentation Changes * `#5446 `_ [Contributing] [Standards] Added note about phpdoc_separation (phansys) * `#6027 `_ Update guard-authentication.rst (rvanginneken) * `#6025 `_ Update guard-authentication.rst (rvanginneken) +* `#6038 `_ Fix #6037 (zsturgess) * `#5820 `_ Fixed an issue with command option shortcuts (javiereguiluz) * `#6033 `_ Fix Typo (Shine-neko) * `#6011 `_ Fixed formatting issues (javiereguiluz) From 9fcd14047f5bb7f8878618aebebf8ec0803fa7d5 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sun, 7 Feb 2016 13:57:53 +0100 Subject: [PATCH 192/235] Added January changelog --- changelog.rst | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/changelog.rst b/changelog.rst index 6d42c3105a1..a92b604d021 100644 --- a/changelog.rst +++ b/changelog.rst @@ -21,6 +21,7 @@ New Documentation * `#6174 `_ Missing reference docs for kernel.finish_request event (acrobat) * `#6184 `_ added Javier as a merger for the WebProfiler bundle (fabpot) +* `#5600 `_ [DependencyInjection] Documented the ability of define the service decoration priority (dosten) * `#5303 `_ [WIP] 4373 - document security events (kevintweber) * `#6023 `_ clarify the routing component documentation a bit (dbu) * `#6091 `_ Added an example for info() method (javiereguiluz) @@ -30,12 +31,15 @@ Fixed Documentation * `#6193 `_ Added the missing namespace in example of a subscriber class (raulconti) * `#6152 `_ csrf_token_generator and csrf_token_id documentation (Raistlfiren, Aaron Valandra, xabbuh) +* `#6115 `_ [Form] Fix syntax error in code snippet (valisj) Minor Documentation Changes ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +* `#6199 `_ fix types (garak) * `#6207 `_ revert form login CSRF changes on wrong branch (xabbuh) * `#6191 `_ Document the invalidate_session option (javiereguiluz) +* `#6204 `_ Expected: semicolon (cn007b) * `#6141 `_ Docs do not match functionality (Loupax) * `#6192 `_ fix MongoDB shell syntax highlighting (xabbuh) * `#6147 `_ Update templating.rst - Asset absolute url fix (gbalcewicz) @@ -46,21 +50,32 @@ Minor Documentation Changes * `#6119 `_ Remove phrase "in order" (micheal) * `#6160 `_ remove versionadded for unmaintained versions (xabbuh) * `#6161 `_ [Contributing][Documentation] replace EOL with EOM (xabbuh) +* `#6166 `_ Fix by_reference deprecated FormType::class (nemo-) * `#6162 `_ [Reference] add missing version number (xabbuh) * `#6163 `_ Remove excessive pluses (aivus) +* `#6149 `_ Reference to session + Corrected sample code char (sfdumi) +* `#6130 `_ [Security][Guard] Completed start method signature (jeremyFreeAgent) +* `#6080 `_ Removed doc about getting original parameter value from ParameterBag (edefimov) * `#6158 `_ Update override_dir_structure.rst (denniskoenigComparon) * `#6122 `_ Added missing mandatory parameter (yceruto) +* `#6108 `_ [Form] remove the getName() function as it is deprecated (aybbou) * `#6100 `_ [Cookbook][Security] add back updateUserSecurityIdentity() hint (xabbuh) * `#6138 `_ Correction needed (pfleu) +* `#6139 `_ Update the doc to change a deprecated use case (ChristopheBoucaut) * `#6133 `_ fixed the component name (fabpot) * `#6127 `_ escape namespace backslashes in class role (xabbuh) * `#5818 `_ document old way of checking validity of CSRF token (snoek09) * `#6062 `_ Update HTTP method requirement example (WouterJ) +* `#6120 `_ fix README requirements link (garak) * `#6109 `_ add link to Monolog configuration (snoek09) +* `#6121 `_ [MicroKernel] Fixed the display of a code block (jeremyFreeAgent) * `#6096 `_ [Contributing] update year in license (xabbuh) * `#6114 `_ make method protected (OskarStark) * `#6111 `_ Fixed a typo in the choice_label code example (ferdynator) +* `#6110 `_ [Security][Guard] Fixed a typo (jeremyFreeAgent) +* `#6106 `_ Remove repetition in text (dominikhajduk) * `#6102 `_ promoted xabbuh as merger on the Yaml component (fabpot) +* `#6014 `_ [2.8][Form] entry_type option: replace "in favor" misuses (ogizanagi) * `#6013 `_ [2.7][Form] placeholder option: replace "in favor" misuses (ogizanagi) From 026d9ed3e82f71b9007e6c3b694a2122a8087a38 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sun, 7 Feb 2016 13:58:19 +0100 Subject: [PATCH 193/235] Added January changelog --- changelog.rst | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/changelog.rst b/changelog.rst index c632f35aeaa..01e77113c36 100644 --- a/changelog.rst +++ b/changelog.rst @@ -21,6 +21,7 @@ New Documentation * `#6174 `_ Missing reference docs for kernel.finish_request event (acrobat) * `#6184 `_ added Javier as a merger for the WebProfiler bundle (fabpot) +* `#6136 `_ Update directory permissions to make var/ writable (andrerom) * `#5600 `_ [DependencyInjection] Documented the ability of define the service decoration priority (dosten) * `#5303 `_ [WIP] 4373 - document security events (kevintweber) * `#6023 `_ clarify the routing component documentation a bit (dbu) @@ -44,6 +45,7 @@ Minor Documentation Changes * `#6192 `_ fix MongoDB shell syntax highlighting (xabbuh) * `#6147 `_ Update templating.rst - Asset absolute url fix (gbalcewicz) * `#6187 `_ Typofix for "Defining and Processing Configuration Values" (kix) +* `#6182 `_ Latest demo has no bin folder (Jace25) * `#6183 `_ use valid XML in code block (xabbuh) * `#6180 `_ use single quotes for YAML strings (snoek09) * `#6070 `_ Typo in When Things Get More Advanced (BallisticPain) @@ -53,6 +55,7 @@ Minor Documentation Changes * `#6166 `_ Fix by_reference deprecated FormType::class (nemo-) * `#6162 `_ [Reference] add missing version number (xabbuh) * `#6163 `_ Remove excessive pluses (aivus) +* `#6082 `_ change app/check.php for 3.0 (nanocom) * `#6149 `_ Reference to session + Corrected sample code char (sfdumi) * `#6130 `_ [Security][Guard] Completed start method signature (jeremyFreeAgent) * `#6080 `_ Removed doc about getting original parameter value from ParameterBag (edefimov) @@ -60,6 +63,7 @@ Minor Documentation Changes * `#6122 `_ Added missing mandatory parameter (yceruto) * `#6108 `_ [Form] remove the getName() function as it is deprecated (aybbou) * `#6100 `_ [Cookbook][Security] add back updateUserSecurityIdentity() hint (xabbuh) +* `#6129 `_ Added new links to the Symfony screencast series at KnpU (javiereguiluz) * `#6138 `_ Correction needed (pfleu) * `#6139 `_ Update the doc to change a deprecated use case (ChristopheBoucaut) * `#6133 `_ fixed the component name (fabpot) @@ -73,6 +77,7 @@ Minor Documentation Changes * `#6114 `_ make method protected (OskarStark) * `#6111 `_ Fixed a typo in the choice_label code example (ferdynator) * `#6110 `_ [Security][Guard] Fixed a typo (jeremyFreeAgent) +* `#6105 `_ Removed deprecated methods from VoterInterface (edefimov) * `#6106 `_ Remove repetition in text (dominikhajduk) * `#6102 `_ promoted xabbuh as merger on the Yaml component (fabpot) * `#6014 `_ [2.8][Form] entry_type option: replace "in favor" misuses (ogizanagi) From 266f7bffa99fdc33c1b41171d5dc8a2f0a4601dd Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sun, 7 Feb 2016 14:03:00 +0100 Subject: [PATCH 194/235] Fix syntax --- changelog.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/changelog.rst b/changelog.rst index d7a91cc7413..38e87b85f9a 100644 --- a/changelog.rst +++ b/changelog.rst @@ -130,7 +130,7 @@ Minor Documentation Changes * `#5445 `_ Reworded the explanation about the kernel.event_listener tag (javiereguiluz) * `#6054 `_ Remove 2.8 branch from patch documentation (Triiistan) * `#6057 `_ Fix PHP code for registering service (WouterJ) -* `#6066 `_ Update location of `app/check.php` to `bin/symfony_requirements` (Kevinrob) +* `#6066 `_ Update location of ``app/check.php`` to ``bin/symfony_requirements`` (Kevinrob) * `#6067 `_ improve phrasing (greg0ire) * `#6063 `_ minor #5829 Fix broken composer command (JHGitty) * `#6041 `_ Fixed misspelling of human in glossary.rst YAML (Wasserschlange) From f8b560d92f5d89d6e72c65658cc67a189abefc9e Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sun, 7 Feb 2016 18:04:29 +0100 Subject: [PATCH 195/235] Removed all 2.x versionadded directives --- best_practices/configuration.rst | 4 +- best_practices/creating-the-project.rst | 3 +- best_practices/forms.rst | 7 +- best_practices/i18n.rst | 6 +- best_practices/security.rst | 1 - book/forms.rst | 33 -- book/from_flat_php_to_symfony2.rst | 2 +- book/http_cache.rst | 7 +- book/page_creation.rst | 2 +- book/routing.rst | 10 - book/security.rst | 14 +- book/service_container.rst | 12 +- book/templating.rst | 21 -- book/testing.rst | 5 - book/validation.rst | 18 -- .../class_loader/debug_class_loader.rst | 2 +- components/config/definition.rst | 4 - components/console/events.rst | 3 - components/console/helpers/dialoghelper.rst | 281 +----------------- components/console/helpers/map.rst.inc | 5 +- components/console/helpers/progresshelper.rst | 86 +----- components/console/helpers/questionhelper.rst | 4 - components/console/helpers/table.rst | 3 - components/console/helpers/tablehelper.rst | 54 +--- components/console/introduction.rst | 4 - components/css_selector.rst | 4 - components/debug/introduction.rst | 4 - components/dependency_injection/advanced.rst | 8 - .../dependency_injection/compilation.rst | 5 - .../dependency_injection/lazy_services.rst | 5 +- components/dom_crawler.rst | 7 - components/filesystem/introduction.rst | 7 - components/finder.rst | 4 - components/form/form_events.rst | 5 - components/form/introduction.rst | 18 -- components/form/type_guesser.rst | 6 +- .../http_foundation/trusting_proxies.rst | 4 - components/intl.rst | 4 - components/options_resolver.rst | 1 - components/process.rst | 13 - components/property_access/introduction.rst | 7 - components/serializer.rst | 29 -- components/translation/custom_formats.rst | 10 +- components/var_dumper/introduction.rst | 4 - cookbook/bundles/best_practices.rst | 49 --- cookbook/bundles/override.rst | 4 +- cookbook/configuration/apache_router.rst | 140 +-------- cookbook/configuration/environments.rst | 10 +- cookbook/configuration/micro-kernel-trait.rst | 6 +- cookbook/console/logging.rst | 3 - cookbook/console/sending_emails.rst | 4 - cookbook/console/style.rst | 3 - cookbook/doctrine/mapping_model_classes.rst | 7 - cookbook/email/email.rst | 5 - cookbook/expression/expressions.rst | 6 +- cookbook/form/create_custom_field_type.rst | 8 - cookbook/form/create_form_type_extension.rst | 6 - cookbook/form/direct_submit.rst | 48 --- cookbook/form/dynamic_form_modification.rst | 4 - cookbook/form/inherit_data_option.rst | 4 - cookbook/form/unit_testing.rst | 5 - cookbook/form/use_virtuals_forms.rst | 7 +- cookbook/logging/channels_handlers.rst | 3 +- cookbook/logging/monolog_console.rst | 3 +- .../request/load_balancer_reverse_proxy.rst | 3 - cookbook/routing/method_parameters.rst | 26 +- cookbook/security/api_key_authentication.rst | 11 - cookbook/security/csrf_in_login_form.rst | 2 - .../custom_authentication_provider.rst | 5 - .../custom_password_authenticator.rst | 11 - cookbook/security/entity_provider.rst | 5 - cookbook/security/form_login.rst | 2 - cookbook/security/form_login_setup.rst | 2 - cookbook/security/impersonating_user.rst | 2 - cookbook/security/remember_me.rst | 6 - cookbook/security/user_checkers.rst | 4 - cookbook/security/voters.rst | 10 - cookbook/serializer.rst | 15 - cookbook/service_container/shared.rst | 4 - cookbook/session/locale_sticky_session.rst | 9 +- cookbook/session/php_bridge.rst | 3 - cookbook/validation/custom_constraint.rst | 20 -- cookbook/web_server/built_in.rst | 15 +- create_framework/http_foundation.rst | 2 +- reference/configuration/framework.rst | 68 ----- reference/configuration/security.rst | 9 - reference/configuration/twig.rst | 1 - reference/constraints/Bic.rst | 3 - reference/constraints/Callback.rst | 26 -- reference/constraints/Collection.rst | 4 - reference/constraints/Currency.rst | 3 - reference/constraints/EqualTo.rst | 3 - reference/constraints/False.rst | 6 +- reference/constraints/GreaterThan.rst | 3 - reference/constraints/GreaterThanOrEqual.rst | 3 - reference/constraints/Iban.rst | 3 - reference/constraints/IdenticalTo.rst | 3 - reference/constraints/Isbn.rst | 10 - reference/constraints/Issn.rst | 3 - reference/constraints/LessThan.rst | 3 - reference/constraints/LessThanOrEqual.rst | 3 - reference/constraints/NotEqualTo.rst | 3 - reference/constraints/NotIdenticalTo.rst | 3 - reference/constraints/Null.rst | 6 +- reference/constraints/True.rst | 6 +- reference/constraints/Url.rst | 6 - reference/dic_tags.rst | 9 +- reference/forms/twig_reference.rst | 27 -- reference/forms/types.rst | 9 - reference/forms/types/birthday.rst | 7 - reference/forms/types/button.rst | 3 - reference/forms/types/checkbox.rst | 3 - reference/forms/types/choice.rst | 108 ------- reference/forms/types/collection.rst | 13 +- reference/forms/types/country.rst | 3 - reference/forms/types/currency.rst | 3 - reference/forms/types/date.rst | 3 - reference/forms/types/datetime.rst | 7 - reference/forms/types/email.rst | 6 - reference/forms/types/entity.rst | 7 - reference/forms/types/file.rst | 3 - reference/forms/types/form.rst | 16 - reference/forms/types/integer.rst | 3 - reference/forms/types/language.rst | 3 - reference/forms/types/locale.rst | 3 - reference/forms/types/money.rst | 7 - reference/forms/types/number.rst | 3 - reference/forms/types/options/action.rst.inc | 3 - .../types/options/cascade_validation.rst.inc | 25 -- .../forms/types/options/choice_attr.rst.inc | 3 - .../forms/types/options/choice_label.rst.inc | 3 - .../forms/types/options/choice_name.rst.inc | 3 - .../options/choice_translation_domain.rst.inc | 3 - .../forms/types/options/choice_value.rst.inc | 3 - .../forms/types/options/group_by.rst.inc | 3 - .../forms/types/options/inherit_data.rst.inc | 4 - .../forms/types/options/max_length.rst.inc | 17 -- reference/forms/types/options/method.rst.inc | 3 - reference/forms/types/options/pattern.rst.inc | 24 -- .../forms/types/options/placeholder.rst.inc | 4 - .../types/options/preferred_choices.rst.inc | 3 - .../forms/types/options/read_only.rst.inc | 12 - reference/forms/types/options/scale.rst.inc | 4 - reference/forms/types/password.rst | 6 - reference/forms/types/percent.rst | 7 - reference/forms/types/radio.rst | 3 - reference/forms/types/range.rst | 3 - reference/forms/types/reset.rst | 3 - reference/forms/types/search.rst | 6 - reference/forms/types/submit.rst | 3 - reference/forms/types/text.rst | 6 - reference/forms/types/textarea.rst | 6 - reference/forms/types/time.rst | 3 - reference/forms/types/timezone.rst | 3 - reference/forms/types/url.rst | 6 - reference/twig_reference.rst | 23 -- 156 files changed, 92 insertions(+), 1745 deletions(-) delete mode 100644 reference/forms/types/options/cascade_validation.rst.inc delete mode 100644 reference/forms/types/options/max_length.rst.inc delete mode 100644 reference/forms/types/options/pattern.rst.inc delete mode 100644 reference/forms/types/options/read_only.rst.inc diff --git a/best_practices/configuration.rst b/best_practices/configuration.rst index 7f4d99c204d..4e64ecaea9f 100644 --- a/best_practices/configuration.rst +++ b/best_practices/configuration.rst @@ -52,8 +52,8 @@ Canonical Parameters Define all your application's parameters in the ``app/config/parameters.yml.dist`` file. -Since version 2.3, Symfony includes a configuration file called ``parameters.yml.dist``, -which stores the canonical list of configuration parameters for the application. +Symfony includes a configuration file called ``parameters.yml.dist``, which +stores the canonical list of configuration parameters for the application. Whenever a new configuration parameter is defined for the application, you should also add it to this file and submit the changes to your version control diff --git a/best_practices/creating-the-project.rst b/best_practices/creating-the-project.rst index 2d6c819e0ce..6c24541c3cb 100644 --- a/best_practices/creating-the-project.rst +++ b/best_practices/creating-the-project.rst @@ -114,8 +114,7 @@ ProductBundle, then there's no advantage to having two separate bundles. Create only one bundle called AppBundle for your application logic Implementing a single AppBundle bundle in your projects will make your code -more concise and easier to understand. Starting in Symfony 2.6, the official -Symfony documentation uses the AppBundle name. +more concise and easier to understand. .. note:: diff --git a/best_practices/forms.rst b/best_practices/forms.rst index 73f2c0d775c..26df4d8adec 100644 --- a/best_practices/forms.rst +++ b/best_practices/forms.rst @@ -85,9 +85,10 @@ makes them easier to re-use later. Add buttons in the templates, not in the form classes or the controllers. -Since Symfony 2.3, you can add buttons as fields on your form. This is a nice -way to simplify the template that renders your form. But if you add the buttons -directly in your form class, this would effectively limit the scope of that form: +The Symfony Form component allows you to add buttons as fields on your form. +This is a nice way to simplify the template that renders your form. But if you +add the buttons directly in your form class, this would effectively limit the +scope of that form: .. code-block:: php diff --git a/best_practices/i18n.rst b/best_practices/i18n.rst index 6d87c608344..1ad928f64f6 100644 --- a/best_practices/i18n.rst +++ b/best_practices/i18n.rst @@ -32,9 +32,9 @@ Of all the available translation formats, only XLIFF and gettext have broad support in the tools used by professional translators. And since it's based on XML, you can validate XLIFF file contents as you write them. -Symfony 2.6 added support for notes inside XLIFF files, making them more -user-friendly for translators. At the end, good translations are all about -context, and these XLIFF notes allow you to define that context. +Symfony supports notes in XLIFF files, making them more user-friendly for +translators. At the end, good translations are all about context, and these +XLIFF notes allow you to define that context. .. tip:: diff --git a/best_practices/security.rst b/best_practices/security.rst index 93a3b6e1229..37f3bfd254a 100644 --- a/best_practices/security.rst +++ b/best_practices/security.rst @@ -270,7 +270,6 @@ the same ``getAuthorEmail`` logic you used above: use Symfony\Component\Security\Core\User\UserInterface; use AppBundle\Entity\Post; - // Voter class requires Symfony 2.8 or higher version class PostVoter extends Voter { const CREATE = 'create'; diff --git a/book/forms.rst b/book/forms.rst index a15cec95d95..ea7288e4953 100644 --- a/book/forms.rst +++ b/book/forms.rst @@ -123,20 +123,9 @@ You've also assigned each a "type" (e.g. ``TextType`` and ``DateType``), represented by its fully qualified class name. Among other things, it determines which HTML form tag(s) is rendered for that field. -.. versionadded:: 2.8 - To denote the form type, you have to use the fully qualified class name - like - ``TextType::class`` in PHP 5.5+ or ``Symfony\Component\Form\Extension\Core\Type\TextType``. - Before Symfony 2.8, you could use an alias for each type like ``text`` or - ``date``. The old alias syntax will still work until Symfony 3.0. For more details, - see the `2.8 UPGRADE Log`_. - Finally, you added a submit button with a custom label for submitting the form to the server. -.. versionadded:: 2.3 - Support for submit buttons was introduced in Symfony 2.3. Before that, you had - to add buttons to the form's HTML manually. - Symfony comes with many built-in types that will be discussed shortly (see :ref:`book-forms-type-reference`). @@ -259,12 +248,6 @@ your controller:: is called. Otherwise, changes done in the ``*_SUBMIT`` events aren't applied to the view (like validation errors). -.. versionadded:: 2.3 - The :method:`Symfony\\Component\\Form\\FormInterface::handleRequest` method - was introduced in Symfony 2.3. Previously, the ``$request`` was passed - to the ``submit`` method - a strategy which is deprecated and will be - removed in Symfony 3.0. For details on that method, see :ref:`cookbook-form-submit-request`. - This controller follows a common pattern for handling forms, and has three possible paths: @@ -313,9 +296,6 @@ possible paths: Submitting Forms with Multiple Buttons ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -.. versionadded:: 2.3 - Support for buttons in forms was introduced in Symfony 2.3. - When your form contains more than one submit button, you will want to check which of the buttons was clicked to adapt the program flow in your controller. To do this, add a second button with the caption "Save and add" to your form:: @@ -491,10 +471,6 @@ you'll need to specify which validation group(s) your form should use:: 'validation_groups' => array('registration'), ))->add(...); -.. versionadded:: 2.7 - The ``configureOptions()`` method was introduced in Symfony 2.7. Previously, - the method was called ``setDefaultOptions()``. - If you're creating :ref:`form classes ` (a good practice), then you'll need to add the following to the ``configureOptions()`` method:: @@ -517,9 +493,6 @@ be used to validate the underlying object. Disabling Validation ~~~~~~~~~~~~~~~~~~~~ -.. versionadded:: 2.3 - The ability to set ``validation_groups`` to false was introduced in Symfony 2.3. - Sometimes it is useful to suppress the validation of a form altogether. For these cases you can set the ``validation_groups`` option to ``false``:: @@ -620,9 +593,6 @@ work in the book section about :ref:`validation groups start($form, array( - // The path() method was introduced in Symfony 2.8. Prior to 2.8, - // you had to use generate(). 'action' => $view['router']->path('target_route'), 'method' => 'GET', )) ?> @@ -1981,4 +1949,3 @@ Learn more from the Cookbook .. _`form_div_layout.html.twig`: https://github.com/symfony/symfony/blob/master/src/Symfony/Bridge/Twig/Resources/views/Form/form_div_layout.html.twig .. _`Cross-site request forgery`: http://en.wikipedia.org/wiki/Cross-site_request_forgery .. _`view on GitHub`: https://github.com/symfony/symfony/tree/master/src/Symfony/Bundle/FrameworkBundle/Resources/views/Form -.. _`2.8 UPGRADE Log`: https://github.com/symfony/symfony/blob/2.8/UPGRADE-2.8.md#form diff --git a/book/from_flat_php_to_symfony2.rst b/book/from_flat_php_to_symfony2.rst index 166942249a5..6c87f84e4f4 100644 --- a/book/from_flat_php_to_symfony2.rst +++ b/book/from_flat_php_to_symfony2.rst @@ -417,7 +417,7 @@ content: { "require": { - "symfony/symfony": "2.6.*" + "symfony/symfony": "3.0.*" }, "autoload": { "files": ["model.php","controllers.php"] diff --git a/book/http_cache.rst b/book/http_cache.rst index 8faf197fcf9..0bf1a145a9b 100644 --- a/book/http_cache.rst +++ b/book/http_cache.rst @@ -1095,12 +1095,7 @@ matter), Symfony uses the standard ``render`` helper to configure ESI tags: render( - // The url() method was introduced in Symfony 2.8. Prior to 2.8, - // you had to use generate($name, $parameters, UrlGeneratorInterface::ABSOLUTE_URL) - $view['router']->url( - 'latest_news', - array('maxPerPage' => 5), - ), + $view['router']->url('latest_news', array('maxPerPage' => 5)), array('strategy' => 'esi'), ) ?> diff --git a/book/page_creation.rst b/book/page_creation.rst index 31c0514925e..cc32869e341 100644 --- a/book/page_creation.rst +++ b/book/page_creation.rst @@ -582,6 +582,6 @@ There's also a :doc:`Cookbook ` *packed* with more advanced Have fun! .. _`Joyful Development with Symfony`: http://knpuniversity.com/screencast/symfony/first-page -.. _`app/Resources/views/base.html.twig`: https://github.com/symfony/symfony-standard/blob/2.7/app/Resources/views/base.html.twig +.. _`app/Resources/views/base.html.twig`: https://github.com/symfony/symfony-standard/blob/3.0/app/Resources/views/base.html.twig .. _`Composer`: https://getcomposer.org .. _`find open source bundles`: http://knpbundles.com diff --git a/book/routing.rst b/book/routing.rst index c33f49c6b0e..83a4e591b23 100644 --- a/book/routing.rst +++ b/book/routing.rst @@ -1543,10 +1543,6 @@ a template helper function: Read this blog post. -.. versionadded:: 2.8 - The ``path()`` PHP templating helper was introduced in Symfony 2.8. Prior - to 2.8, you had to use the ``generate()`` helper method. - .. index:: single: Routing; Absolute URLs @@ -1581,12 +1577,6 @@ URL) rather than the ``path()`` function (which generates a relative URL): Read this blog post. -.. versionadded:: 2.8 - The ``url()`` PHP templating helper was introduced in Symfony 2.8. Prior - to 2.8, you had to use the ``generate()`` helper method with - ``Symfony\Component\Routing\Generator\UrlGeneratorInterface::ABSOLUTE_URL`` - passed as the third argument. - .. note:: The host that's used when generating an absolute URL is automatically diff --git a/book/security.rst b/book/security.rst index a131a753267..e81df02bff7 100644 --- a/book/security.rst +++ b/book/security.rst @@ -511,7 +511,7 @@ else, you'll want to encode their passwords. The best algorithm to use is )); Of course, your users' passwords now need to be encoded with this exact algorithm. -For hardcoded users, since 2.7 you can use the built-in command: +For hardcoded users, you can use the built-in command: .. code-block:: bash @@ -894,18 +894,6 @@ the built-in ``is_granted()`` helper function: Delete -.. note:: - - In Symfony versions previous to 2.8, using the ``is_granted()`` function - in a page that wasn't behind a firewall resulted in an exception. That's why - you also needed to check first for the existence of the user: - - .. code-block:: html+twig - - {% if app.user and is_granted('ROLE_ADMIN') %} - - Starting from Symfony 2.8, the ``app.user and ...`` check is no longer needed. - Securing other Services ....................... diff --git a/book/service_container.rst b/book/service_container.rst index 05eee1ee81d..7fe60df77af 100644 --- a/book/service_container.rst +++ b/book/service_container.rst @@ -811,13 +811,15 @@ Injecting the dependency by the setter method just needs a change of syntax: "property injection". .. _book-container-request-stack: +.. _injecting-the-request: -Injecting the Request -~~~~~~~~~~~~~~~~~~~~~ +Accessing the Request in a Service +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -As of Symfony 2.4, instead of injecting the ``request`` service, you should -inject the ``request_stack`` service and access the ``Request`` by calling -the :method:`Symfony\\Component\\HttpFoundation\\RequestStack::getCurrentRequest` +Whenever you need to access the current request in a service, you can either +add it as an argument to the methods that need the request or inject the +``request_stack`` service and access the ``Request`` by calling the +:method:`Symfony\\Component\\HttpFoundation\\RequestStack::getCurrentRequest` method:: namespace Acme\HelloBundle\Newsletter; diff --git a/book/templating.rst b/book/templating.rst index a7fc74af5cc..494bdaae0cb 100644 --- a/book/templating.rst +++ b/book/templating.rst @@ -579,10 +579,6 @@ you set `with_context`_ to false). maps (i.e. an array with named keys). If you needed to pass in multiple elements, it would look like this: ``{'foo': foo, 'bar': bar}``. -.. versionadded:: 2.3 - The `include() function`_ is available since Symfony 2.3. Prior, the - `{% include %} tag`_ was used. - .. index:: single: Templating; Embedding action @@ -709,9 +705,6 @@ tags: array('renderer' => 'hinclude') ) ?> - render( $view['router']->url('...'), array('renderer' => 'hinclude') @@ -921,8 +914,6 @@ To link to the page, just use the ``path`` Twig function and refer to the route: .. code-block:: html+php - Home As expected, this will generate the URL ``/``. Now, for a more complicated @@ -1002,8 +993,6 @@ correctly: - @@ -1028,12 +1017,6 @@ correctly: array() ) ?>">Home - .. versionadded:: 2.8 - The ``url()`` PHP templating helper was introduced in Symfony 2.8. Prior - to 2.8, you had to use the ``generate()`` helper method with - ``Symfony\Component\Routing\Generator\UrlGeneratorInterface::ABSOLUTE_URL`` - passed as the third argument. - .. index:: single: Templating; Linking to assets @@ -1238,8 +1221,6 @@ is a :class:`Symfony\\Bundle\\FrameworkBundle\\Templating\\GlobalVariables` instance which will give you access to some application specific variables automatically: -``app.security`` (deprecated as of 2.6) - The security context. ``app.user`` The current user object. ``app.request`` @@ -1697,8 +1678,6 @@ key in the parameter hash: .. code-block:: html+php - validate($author, null, array('registration')); - // If you're using the old 2.4 validation API, pass the group names as the second argument - // $errors = $validator->validate($author, array('registration')); - If no groups are specified, all constraints that belong to the group ``Default`` will be applied. @@ -1248,20 +1239,11 @@ it looks like this:: $emailConstraint->message = 'Invalid email address'; // use the validator to validate the value - // If you're using the new 2.5 validation API (you probably are!) $errorList = $this->get('validator')->validate( $email, $emailConstraint ); - // If you're using the old 2.4 validation API - /* - $errorList = $this->get('validator')->validateValue( - $email, - $emailConstraint - ); - */ - if (0 === count($errorList)) { // ... this IS a valid email address, do something } else { diff --git a/components/class_loader/debug_class_loader.rst b/components/class_loader/debug_class_loader.rst index d41afe9d277..06dfce69716 100644 --- a/components/class_loader/debug_class_loader.rst +++ b/components/class_loader/debug_class_loader.rst @@ -4,5 +4,5 @@ Debugging a Class Loader .. caution:: The ``DebugClassLoader`` from the ClassLoader component was deprecated - in Symfony 2.5 and will be removed in Symfony 3.0. Use the + in Symfony 2.5 and removed in Symfony 3.0. Use the :doc:`DebugClassLoader provided by the Debug component `. diff --git a/components/config/definition.rst b/components/config/definition.rst index b2a714d5cdc..cb799da44d0 100644 --- a/components/config/definition.rst +++ b/components/config/definition.rst @@ -446,10 +446,6 @@ and in XML: -.. versionadded:: 2.6 - Since Symfony 2.6, the info will also be added to the exception message - when an invalid type is given. - Optional Sections ----------------- diff --git a/components/console/events.rst b/components/console/events.rst index ecbe68c1e25..9405635ebeb 100644 --- a/components/console/events.rst +++ b/components/console/events.rst @@ -4,9 +4,6 @@ Using Events ============ -.. versionadded:: 2.3 - Console events were introduced in Symfony 2.3. - The Application class of the Console component allows you to optionally hook into the lifecycle of a console application via events. Instead of reinventing the wheel, it uses the Symfony EventDispatcher component to do the work:: diff --git a/components/console/helpers/dialoghelper.rst b/components/console/helpers/dialoghelper.rst index 09af2971d65..8618ffcba17 100644 --- a/components/console/helpers/dialoghelper.rst +++ b/components/console/helpers/dialoghelper.rst @@ -6,286 +6,7 @@ Dialog Helper .. caution:: - The Dialog Helper was deprecated in Symfony 2.5 and will be removed in + The Dialog Helper was deprecated in Symfony 2.5 and removed in Symfony 3.0. You should now use the :doc:`Question Helper ` instead, which is simpler to use. - -The :class:`Symfony\\Component\\Console\\Helper\\DialogHelper` provides -functions to ask the user for more information. It is included in the default -helper set, which you can get by calling -:method:`Symfony\\Component\\Console\\Command\\Command::getHelperSet`:: - - $dialog = $this->getHelper('dialog'); - -All the methods inside the Dialog Helper have an -:class:`Symfony\\Component\\Console\\Output\\OutputInterface` as the first -argument, the question as the second argument and the default value as the last -argument. - -Asking the User for Confirmation --------------------------------- - -Suppose you want to confirm an action before actually executing it. Add -the following to your command:: - - // ... - if (!$dialog->askConfirmation( - $output, - 'Continue with this action?', - false - )) { - return; - } - -In this case, the user will be asked "Continue with this action?", and will -return ``true`` if the user answers with ``y`` or ``false`` if the user answers -with ``n``. The third argument to -:method:`Symfony\\Component\\Console\\Helper\\DialogHelper::askConfirmation` -is the default value to return if the user doesn't enter any input. Any other -input will ask the same question again. - -Asking the User for Information -------------------------------- - -You can also ask question with more than a simple yes/no answer. For instance, -if you want to know a bundle name, you can add this to your command:: - - // ... - $bundle = $dialog->ask( - $output, - 'Please enter the name of the bundle', - 'AcmeDemoBundle' - ); - -The user will be asked "Please enter the name of the bundle". They can type -some name which will be returned by the -:method:`Symfony\\Component\\Console\\Helper\\DialogHelper::ask` method. -If they leave it empty, the default value (AcmeDemoBundle here) is returned. - -Autocompletion -~~~~~~~~~~~~~~ - -You can also specify an array of potential answers for a given question. These -will be autocompleted as the user types:: - - $dialog = $this->getHelper('dialog'); - $bundleNames = array('AcmeDemoBundle', 'AcmeBlogBundle', 'AcmeStoreBundle'); - $name = $dialog->ask( - $output, - 'Please enter the name of a bundle', - 'FooBundle', - $bundleNames - ); - -Hiding the User's Response -~~~~~~~~~~~~~~~~~~~~~~~~~~ - -You can also ask a question and hide the response. This is particularly -convenient for passwords:: - - $dialog = $this->getHelper('dialog'); - $password = $dialog->askHiddenResponse( - $output, - 'What is the database password?', - false - ); - -.. caution:: - - When you ask for a hidden response, Symfony will use either a binary, change - stty mode or use another trick to hide the response. If none is available, - it will fallback and allow the response to be visible unless you pass ``false`` - as the third argument like in the example above. In this case, a ``RuntimeException`` - would be thrown. - -Validating the Answer ---------------------- - -You can even validate the answer. For instance, in the last example you asked -for the bundle name. Following the Symfony naming conventions, it should -be suffixed with ``Bundle``. You can validate that by using the -:method:`Symfony\\Component\\Console\\Helper\\DialogHelper::askAndValidate` -method:: - - // ... - $bundle = $dialog->askAndValidate( - $output, - 'Please enter the name of the bundle', - function ($answer) { - if ('Bundle' !== substr($answer, -6)) { - throw new \RuntimeException( - 'The name of the bundle should be suffixed with \'Bundle\'' - ); - } - - return $answer; - }, - false, - 'AcmeDemoBundle' - ); - -This methods has 2 new arguments, the full signature is:: - - askAndValidate( - OutputInterface $output, - string|array $question, - callback $validator, - integer $attempts = false, - string $default = null, - array $autocomplete = null - ) - -The ``$validator`` is a callback which handles the validation. It should -throw an exception if there is something wrong. The exception message is displayed -in the console, so it is a good practice to put some useful information in it. The callback -function should also return the value of the user's input if the validation was successful. - -You can set the max number of times to ask in the ``$attempts`` argument. -If you reach this max number it will use the default value. -Using ``false`` means the amount of attempts is infinite. -The user will be asked as long as they provide an invalid answer and will only -be able to proceed if their input is valid. - -Validating a Hidden Response -~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -You can also ask and validate a hidden response:: - - $dialog = $this->getHelper('dialog'); - - $validator = function ($value) { - if ('' === trim($value)) { - throw new \Exception('The password can not be empty'); - } - - return $value; - }; - - $password = $dialog->askHiddenResponseAndValidate( - $output, - 'Please enter your password', - $validator, - 20, - false - ); - -If you want to allow the response to be visible if it cannot be hidden for -some reason, pass true as the fifth argument. - -Let the User Choose from a List of Answers -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -If you have a predefined set of answers the user can choose from, you -could use the ``ask`` method described above or, to make sure the user -provided a correct answer, the ``askAndValidate`` method. Both have -the disadvantage that you need to handle incorrect values yourself. - -Instead, you can use the -:method:`Symfony\\Component\\Console\\Helper\\DialogHelper::select` -method, which makes sure that the user can only enter a valid string -from a predefined list:: - - $dialog = $this->getHelper('dialog'); - $colors = array('red', 'blue', 'yellow'); - - $color = $dialog->select( - $output, - 'Please select your favorite color (default to red)', - $colors, - 0 - ); - $output->writeln('You have just selected: ' . $colors[$color]); - - // ... do something with the color - -The option which should be selected by default is provided with the fourth -argument. The default is ``null``, which means that no option is the default one. - -If the user enters an invalid string, an error message is shown and the user -is asked to provide the answer another time, until they enter a valid string -or the maximum attempts is reached (which you can define in the fifth -argument). The default value for the attempts is ``false``, which means infinite -attempts. You can define your own error message in the sixth argument. - -.. versionadded:: 2.3 - Multiselect support was introduced in Symfony 2.3. - -Multiple Choices -................ - -Sometimes, multiple answers can be given. The DialogHelper provides this -feature using comma separated values. This is disabled by default, to enable -this set the seventh argument to ``true``:: - - // ... - - $selected = $dialog->select( - $output, - 'Please select your favorite color (default to red)', - $colors, - 0, - false, - 'Value "%s" is invalid', - true // enable multiselect - ); - - $selectedColors = array_map(function ($c) use ($colors) { - return $colors[$c]; - }, $selected); - - $output->writeln( - 'You have just selected: ' . implode(', ', $selectedColors) - ); - -Now, when the user enters ``1,2``, the result will be: -``You have just selected: blue, yellow``. - -Testing a Command which Expects Input -------------------------------------- - -If you want to write a unit test for a command which expects some kind of input -from the command line, you need to overwrite the HelperSet used by the command:: - - use Symfony\Component\Console\Application; - use Symfony\Component\Console\Helper\DialogHelper; - use Symfony\Component\Console\Helper\HelperSet; - use Symfony\Component\Console\Tester\CommandTester; - - // ... - public function testExecute() - { - // ... - $application = new Application(); - $application->add(new MyCommand()); - $command = $application->find('my:command:name'); - $commandTester = new CommandTester($command); - - $dialog = $command->getHelper('dialog'); - $dialog->setInputStream($this->getInputStream("Test\n")); - // Equals to a user inputting "Test" and hitting ENTER - // If you need to enter a confirmation, "yes\n" will work - - $commandTester->execute(array('command' => $command->getName())); - - // $this->assertRegExp('/.../', $commandTester->getDisplay()); - } - - protected function getInputStream($input) - { - $stream = fopen('php://memory', 'r+', false); - fputs($stream, $input); - rewind($stream); - - return $stream; - } - -By setting the input stream of the ``DialogHelper``, you imitate what the -console would do internally with all user input through the cli. This way -you can test any user interaction (even complex ones) by passing an appropriate -input stream. - -.. seealso:: - - You find more information about testing commands in the console component - docs about :ref:`testing console commands `. diff --git a/components/console/helpers/map.rst.inc b/components/console/helpers/map.rst.inc index d0913db4033..68e1e722a87 100644 --- a/components/console/helpers/map.rst.inc +++ b/components/console/helpers/map.rst.inc @@ -1,9 +1,6 @@ -* :doc:`/components/console/helpers/dialoghelper` (deprecated as of 2.5) * :doc:`/components/console/helpers/formatterhelper` * :doc:`/components/console/helpers/processhelper` * :doc:`/components/console/helpers/progressbar` -* :doc:`/components/console/helpers/progresshelper` (deprecated as of 2.5) * :doc:`/components/console/helpers/questionhelper` * :doc:`/components/console/helpers/table` -* :doc:`/components/console/helpers/tablehelper` (deprecated as of 2.5) -* :doc:`/components/console/helpers/debug_formatter` (new in 2.6) +* :doc:`/components/console/helpers/debug_formatter` diff --git a/components/console/helpers/progresshelper.rst b/components/console/helpers/progresshelper.rst index 7d858d21691..aec5c9b62ea 100644 --- a/components/console/helpers/progresshelper.rst +++ b/components/console/helpers/progresshelper.rst @@ -4,91 +4,9 @@ Progress Helper =============== -.. versionadded:: 2.3 - The ``setCurrent`` method was introduced in Symfony 2.3. - .. caution:: - The Progress Helper was deprecated in Symfony 2.5 and will be removed in - Symfony 3.0. You should now use the + The Progress Helper was deprecated in Symfony 2.5 and removed in Symfony + 3.0. You should now use the :doc:`Progress Bar ` instead which is more powerful. - -When executing longer-running commands, it may be helpful to show progress -information, which updates as your command runs: - -.. image:: /images/components/console/progress.png - -To display progress details, use the :class:`Symfony\\Component\\Console\\Helper\\ProgressHelper`, -pass it a total number of units, and advance the progress as your command executes:: - - $progress = $this->getHelper('progress'); - - $progress->start($output, 50); - $i = 0; - while ($i++ < 50) { - // ... do some work - - // advances the progress bar 1 unit - $progress->advance(); - } - - $progress->finish(); - -.. tip:: - - You can also set the current progress by calling the - :method:`Symfony\\Component\\Console\\Helper\\ProgressHelper::setCurrent` - method. - -If you want to output something while the progress bar is running, -call :method:`Symfony\\Component\\Console\\Helper\\ProgressHelper::clear` first. -After you're done, call -:method:`Symfony\\Component\\Console\\Helper\\ProgressHelper::display` -to show the progress bar again. - -The appearance of the progress output can be customized as well, with a number -of different levels of verbosity. Each of these displays different possible -items - like percentage completion, a moving progress bar, or current/total -information (e.g. 10/50):: - - $progress->setFormat(ProgressHelper::FORMAT_QUIET); - $progress->setFormat(ProgressHelper::FORMAT_NORMAL); - $progress->setFormat(ProgressHelper::FORMAT_VERBOSE); - $progress->setFormat(ProgressHelper::FORMAT_QUIET_NOMAX); - // the default value - $progress->setFormat(ProgressHelper::FORMAT_NORMAL_NOMAX); - $progress->setFormat(ProgressHelper::FORMAT_VERBOSE_NOMAX); - -You can also control the different characters and the width used for the -progress bar:: - - // the finished part of the bar - $progress->setBarCharacter('='); - // the unfinished part of the bar - $progress->setEmptyBarCharacter(' '); - $progress->setProgressCharacter('|'); - $progress->setBarWidth(50); - -To see other available options, check the API documentation for -:class:`Symfony\\Component\\Console\\Helper\\ProgressHelper`. - -.. caution:: - - For performance reasons, be careful if you set the total number of steps - to a high number. For example, if you're iterating over a large number of - items, consider setting the redraw frequency to a higher value by calling - :method:`Symfony\\Component\\Console\\Helper\\ProgressHelper::setRedrawFrequency`, - so it updates on only some iterations:: - - $progress->start($output, 50000); - - // updates every 100 iterations - $progress->setRedrawFrequency(100); - - $i = 0; - while ($i++ < 50000) { - // ... do some work - - $progress->advance(); - } diff --git a/components/console/helpers/questionhelper.rst b/components/console/helpers/questionhelper.rst index 6ca82baa5b7..ca799d4c40c 100644 --- a/components/console/helpers/questionhelper.rst +++ b/components/console/helpers/questionhelper.rst @@ -65,10 +65,6 @@ the second argument is not provided, ``true`` is assumed. The regex defaults to ``/^y/i``. - .. versionadded:: 2.7 - The regex argument was introduced in Symfony 2.7. Before, only answers - starting with ``y`` were considered as "yes". - Asking the User for Information ------------------------------- diff --git a/components/console/helpers/table.rst b/components/console/helpers/table.rst index 2c37d379a8e..5dc4e827bb3 100644 --- a/components/console/helpers/table.rst +++ b/components/console/helpers/table.rst @@ -147,9 +147,6 @@ Here is a full list of things you can customize: Spanning Multiple Columns and Rows ---------------------------------- -.. versionadded:: 2.7 - Spanning multiple columns and rows was introduced in Symfony 2.7. - To make a table cell that spans multiple columns you can use a :class:`Symfony\\Component\\Console\\Helper\\TableCell`:: use Symfony\Component\Console\Helper\Table; diff --git a/components/console/helpers/tablehelper.rst b/components/console/helpers/tablehelper.rst index 0e508b4d4d6..f0f88a7b57c 100644 --- a/components/console/helpers/tablehelper.rst +++ b/components/console/helpers/tablehelper.rst @@ -4,61 +4,9 @@ Table Helper ============ -.. versionadded:: 2.3 - The ``table`` helper was introduced in Symfony 2.3. - .. caution:: - The Table Helper was deprecated in Symfony 2.5 and will be removed in + The Table Helper was deprecated in Symfony 2.5 and removed in Symfony 3.0. You should now use the :doc:`Table ` class instead which is more powerful. - -When building a console application it may be useful to display tabular data: - -.. image:: /images/components/console/table.png - -To display a table, use the :class:`Symfony\\Component\\Console\\Helper\\TableHelper`, -set headers, rows and render:: - - $table = $this->getHelper('table'); - $table - ->setHeaders(array('ISBN', 'Title', 'Author')) - ->setRows(array( - array('99921-58-10-7', 'Divine Comedy', 'Dante Alighieri'), - array('9971-5-0210-0', 'A Tale of Two Cities', 'Charles Dickens'), - array('960-425-059-0', 'The Lord of the Rings', 'J. R. R. Tolkien'), - array('80-902734-1-6', 'And Then There Were None', 'Agatha Christie'), - )) - ; - $table->render($output); - -The table layout can be customized as well. There are two ways to customize -table rendering: using named layouts or by customizing rendering options. - -Customize Table Layout using Named Layouts ------------------------------------------- - -The Table helper ships with three preconfigured table layouts: - -* ``TableHelper::LAYOUT_DEFAULT`` - -* ``TableHelper::LAYOUT_BORDERLESS`` - -* ``TableHelper::LAYOUT_COMPACT`` - -Layout can be set using :method:`Symfony\\Component\\Console\\Helper\\TableHelper::setLayout` method. - -Customize Table Layout using Rendering Options ----------------------------------------------- - -You can also control table rendering by setting custom rendering option values: - -* :method:`Symfony\\Component\\Console\\Helper\\TableHelper::setPaddingChar` -* :method:`Symfony\\Component\\Console\\Helper\\TableHelper::setHorizontalBorderChar` -* :method:`Symfony\\Component\\Console\\Helper\\TableHelper::setVerticalBorderChar` -* :method:`Symfony\\Component\\Console\\Helper\\TableHelper::setCrossingChar` -* :method:`Symfony\\Component\\Console\\Helper\\TableHelper::setCellHeaderFormat` -* :method:`Symfony\\Component\\Console\\Helper\\TableHelper::setCellRowFormat` -* :method:`Symfony\\Component\\Console\\Helper\\TableHelper::setBorderFormat` -* :method:`Symfony\\Component\\Console\\Helper\\TableHelper::setPadType` diff --git a/components/console/introduction.rst b/components/console/introduction.rst index 92796640f52..0dfcda479ac 100644 --- a/components/console/introduction.rst +++ b/components/console/introduction.rst @@ -200,10 +200,6 @@ You can also set these colors and options inside the tagname:: Verbosity Levels ~~~~~~~~~~~~~~~~ -.. versionadded:: 2.3 - The ``VERBOSITY_VERY_VERBOSE`` and ``VERBOSITY_DEBUG`` constants were introduced - in version 2.3 - The console has five verbosity levels. These are defined in the :class:`Symfony\\Component\\Console\\Output\\OutputInterface`: diff --git a/components/css_selector.rst b/components/css_selector.rst index b01de07013f..588582fb371 100644 --- a/components/css_selector.rst +++ b/components/css_selector.rst @@ -46,10 +46,6 @@ document. The CssSelector Component ~~~~~~~~~~~~~~~~~~~~~~~~~ -.. versionadded:: 2.8 - The ``CssSelectorConverter`` class was introduced in Symfony 2.8. Previously, - the ``CssSelector`` class was used and ``toXPath`` was a static method. - The component's only goal is to convert CSS selectors to their XPath equivalents, using :method:`Symfony\\Component\\CssSelector\\CssSelectorConverter::toXPath`:: diff --git a/components/debug/introduction.rst b/components/debug/introduction.rst index 0497718e860..1042e9e504c 100644 --- a/components/debug/introduction.rst +++ b/components/debug/introduction.rst @@ -7,10 +7,6 @@ The Debug Component The Debug component provides tools to ease debugging PHP code. -.. versionadded:: 2.3 - The Debug component was introduced in Symfony 2.3. Previously, the classes - were located in the HttpKernel component. - Installation ------------ diff --git a/components/dependency_injection/advanced.rst b/components/dependency_injection/advanced.rst index 5e1aeaf4072..73b8554c41c 100644 --- a/components/dependency_injection/advanced.rst +++ b/components/dependency_injection/advanced.rst @@ -219,11 +219,6 @@ You can change the inner service name if you want to: ->setPublic(false) ->setDecoratedService('foo', 'bar.wooz'); -.. versionadded:: 2.8 - The ability to define the decoration priority was introduced in Symfony 2.8. - Prior to Symfony 2.8, the priority depends on the order in - which definitions are found. - If you want to apply more than one decorator to a service, you can control their order by configuring the priority of decoration, this can be any integer number (decorators with higher priorities will be applied first). @@ -295,9 +290,6 @@ The generated code will be the following: Deprecating Services -------------------- -.. versionadded:: 2.8 - The ``deprecated`` setting was introduced in Symfony 2.8. - Once you have decided to deprecate the use of a service (because it is outdated or you decided not to maintain it anymore), you can deprecate its definition: diff --git a/components/dependency_injection/compilation.rst b/components/dependency_injection/compilation.rst index 621c674080f..d821857a475 100644 --- a/components/dependency_injection/compilation.rst +++ b/components/dependency_injection/compilation.rst @@ -331,11 +331,6 @@ compilation:: // ... } -.. versionadded:: 2.8 - Prior to Symfony 2.8, extensions implementing ``CompilerPassInterface`` - were not automatically registered. You needed to register them as explained - in :ref:`the next section `. - As ``process()`` is called *after* all extensions are loaded, it allows you to edit service definitions of other extensions as well as retrieving information about service definitions. diff --git a/components/dependency_injection/lazy_services.rst b/components/dependency_injection/lazy_services.rst index 38f0968631f..21c78075888 100644 --- a/components/dependency_injection/lazy_services.rst +++ b/components/dependency_injection/lazy_services.rst @@ -4,9 +4,6 @@ Lazy Services ============= -.. versionadded:: 2.3 - Lazy services were introduced in Symfony 2.3. - Why Lazy Services? ------------------ @@ -30,7 +27,7 @@ the `ProxyManager bridge`_: .. code-block:: bash - $ composer require symfony/proxy-manager-bridge:~2.3 + $ composer require symfony/proxy-manager-bridge .. note:: diff --git a/components/dom_crawler.rst b/components/dom_crawler.rst index f99e382dbee..d4cc5d79d7f 100644 --- a/components/dom_crawler.rst +++ b/components/dom_crawler.rst @@ -223,11 +223,6 @@ Call an anonymous function on each node of the list:: return $node->text(); }); -.. versionadded:: 2.3 - As seen here, in Symfony 2.3, the ``each`` and ``reduce`` Closure functions - are passed a ``Crawler`` as the first argument. Previously, that argument - was a :phpclass:`DOMNode`. - The anonymous function receives the node (as a Crawler) and the position as arguments. The result is an array of values returned by the anonymous function calls. @@ -294,8 +289,6 @@ and :phpclass:`DOMNode` objects: $html = $crawler->html(); - The ``html`` method is new in Symfony 2.3. - Links ~~~~~ diff --git a/components/filesystem/introduction.rst b/components/filesystem/introduction.rst index eab50f7e6cd..53cbced419e 100644 --- a/components/filesystem/introduction.rst +++ b/components/filesystem/introduction.rst @@ -6,10 +6,6 @@ The Filesystem Component The Filesystem component provides basic utilities for the filesystem. -.. tip:: - - The lock handler feature was introduced in symfony 2.6. - :doc:`See the documentation for more information `. Installation ------------ @@ -239,9 +235,6 @@ isAbsolutePath dumpFile ~~~~~~~~ -.. versionadded:: 2.3 - The ``dumpFile()`` was introduced in Symfony 2.3. - :method:`Symfony\\Component\\Filesystem\\Filesystem::dumpFile` allows you to dump contents to a file. It does this in an atomic manner: it writes a temporary file first and then moves it to the new file location when it's finished. diff --git a/components/finder.rst b/components/finder.rst index 8f587d050c2..2a12460031a 100644 --- a/components/finder.rst +++ b/components/finder.rst @@ -95,10 +95,6 @@ Exclude directories from matching with the $finder->in(__DIR__)->exclude('ruby'); -.. versionadded:: 2.3 - The :method:`Symfony\\Component\\Finder\\Finder::ignoreUnreadableDirs` - method was introduced in Symfony 2.3. - It's also possible to ignore directories that you don't have permission to read:: $finder->ignoreUnreadableDirs()->in(__DIR__); diff --git a/components/form/form_events.rst b/components/form/form_events.rst index 30a7b532635..6d6f582639a 100644 --- a/components/form/form_events.rst +++ b/components/form/form_events.rst @@ -257,11 +257,6 @@ Name ``FormEvents`` Constant Event's Data ``form.post_bind`` ``FormEvents::POST_SUBMIT`` View data ====================== ============================= =============== -.. versionadded:: 2.3 - Before Symfony 2.3, ``FormEvents::PRE_SUBMIT``, ``FormEvents::SUBMIT`` - and ``FormEvents::POST_SUBMIT`` were called ``FormEvents::PRE_BIND``, - ``FormEvents::BIND`` and ``FormEvents::POST_BIND``. - .. caution:: The ``FormEvents::PRE_BIND``, ``FormEvents::BIND`` and diff --git a/components/form/introduction.rst b/components/form/introduction.rst index 73cd437659f..9af88766567 100644 --- a/components/form/introduction.rst +++ b/components/form/introduction.rst @@ -68,9 +68,6 @@ factory. Request Handling ~~~~~~~~~~~~~~~~ -.. versionadded:: 2.3 - The ``handleRequest()`` method was introduced in Symfony 2.3. - To process form data, you'll need to call the :method:`Symfony\\Component\\Form\\Form::handleRequest` method:: @@ -519,10 +516,6 @@ to do that in the ":ref:`form-rendering-template`" section. Changing a Form's Method and Action ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -.. versionadded:: 2.3 - The ability to configure the form method and action was introduced in - Symfony 2.3. - By default, a form is submitted to the same URI that rendered the form with an HTTP POST request. This behavior can be changed using the :ref:`form-option-action` and :ref:`form-option-method` options (the ``method`` option is also used @@ -724,17 +717,6 @@ method to access the list of errors. It returns a // a FormErrorIterator instance representing the form tree structure $errors = $form->getErrors(true, false); -.. tip:: - - In older Symfony versions, ``getErrors()`` returned an array. To use the - errors the same way in Symfony 2.5 or newer, you have to pass them to - PHP's :phpfunction:`iterator_to_array` function:: - - $errorsAsArray = iterator_to_array($form->getErrors()); - - This is useful, for example, if you want to use PHP's ``array_`` function - on the form errors. - .. _Packagist: https://packagist.org/packages/symfony/form .. _Twig: http://twig.sensiolabs.org .. _`Twig Configuration`: http://twig.sensiolabs.org/doc/intro.html diff --git a/components/form/type_guesser.rst b/components/form/type_guesser.rst index e1f88f3e96d..78fa338a814 100644 --- a/components/form/type_guesser.rst +++ b/components/form/type_guesser.rst @@ -32,11 +32,9 @@ This interface requires 4 methods: tries to guess the value of the :ref:`required ` option; * :method:`Symfony\\Component\\Form\\FormTypeGuesserInterface::guessMaxLength` - - tries to guess the value of the :ref:`max_length ` - option; + tries to guess the value of the ``maxlength`` input attribute; * :method:`Symfony\\Component\\Form\\FormTypeGuesserInterface::guessPattern` - - tries to guess the value of the :ref:`pattern ` - option. + tries to guess the value of the ``pattern`` input attribute. Start by creating the class and these methods. Next, you'll learn how to fill each on. diff --git a/components/http_foundation/trusting_proxies.rst b/components/http_foundation/trusting_proxies.rst index fbe9b30cdee..a8c0193668d 100644 --- a/components/http_foundation/trusting_proxies.rst +++ b/components/http_foundation/trusting_proxies.rst @@ -19,10 +19,6 @@ Since HTTP headers can be spoofed, Symfony does *not* trust these proxy headers by default. If you are behind a proxy, you should manually whitelist your proxy. -.. versionadded:: 2.3 - CIDR notation support was introduced in Symfony 2.3, so you can whitelist whole - subnets (e.g. ``10.0.0.0/8``, ``fc00::/7``). - .. code-block:: php use Symfony\Component\HttpFoundation\Request; diff --git a/components/intl.rst b/components/intl.rst index 48ea8152ebb..d7282cf0d14 100644 --- a/components/intl.rst +++ b/components/intl.rst @@ -8,10 +8,6 @@ The Intl Component A PHP replacement layer for the C `intl extension`_ that also provides access to the localization data of the `ICU library`_. -.. versionadded:: 2.3 - The Intl component was introduced in Symfony 2.3. In earlier versions of Symfony, - you should use the Locale component instead. - .. caution:: The replacement layer is limited to the locale "en". If you want to use diff --git a/components/options_resolver.rst b/components/options_resolver.rst index 832734ba5d4..4c0bb039e55 100644 --- a/components/options_resolver.rst +++ b/components/options_resolver.rst @@ -690,4 +690,3 @@ options in your code. .. _Packagist: https://packagist.org/packages/symfony/options-resolver .. _Form component: http://symfony.com/doc/current/components/form/introduction.html .. _CHANGELOG: https://github.com/symfony/symfony/blob/master/src/Symfony/Component/OptionsResolver/CHANGELOG.md#260 -.. _`read the Symfony 2.5 documentation`: http://symfony.com/doc/2.5/components/options_resolver.html diff --git a/components/process.rst b/components/process.rst index 348b466c5e5..aaa732d053c 100644 --- a/components/process.rst +++ b/components/process.rst @@ -131,9 +131,6 @@ are done doing other stuff:: Stopping a Process ------------------ -.. versionadded:: 2.3 - The ``signal`` parameter of the ``stop`` method was introduced in Symfony 2.3. - Any asynchronous process can be stopped at any time with the :method:`Symfony\\Component\\Process\\Process::stop` method. This method takes two arguments: a timeout and a signal. Once the timeout is reached, the signal @@ -170,10 +167,6 @@ To make your code work better on all platforms, you might want to use the $builder = new ProcessBuilder(array('ls', '-lsa')); $builder->getProcess()->run(); -.. versionadded:: 2.3 - The :method:`ProcessBuilder::setPrefix` - method was introduced in Symfony 2.3. - In case you are building a binary driver, you can use the :method:`Symfony\\Component\\Process\\ProcessBuilder::setPrefix` method to prefix all the generated process commands. @@ -249,9 +242,6 @@ exceeds 3600 seconds, or the process does not produce any output for 60 seconds. Process Signals --------------- -.. versionadded:: 2.3 - The ``signal`` method was introduced in Symfony 2.3. - When running a program asynchronously, you can send it POSIX signals with the :method:`Symfony\\Component\\Process\\Process::signal` method:: @@ -275,9 +265,6 @@ When running a program asynchronously, you can send it POSIX signals with the Process Pid ----------- -.. versionadded:: 2.3 - The ``getPid`` method was introduced in Symfony 2.3. - You can access the `pid`_ of a running process with the :method:`Symfony\\Component\\Process\\Process::getPid` method. diff --git a/components/property_access/introduction.rst b/components/property_access/introduction.rst index e646ce90ea3..041f7543b89 100644 --- a/components/property_access/introduction.rst +++ b/components/property_access/introduction.rst @@ -31,10 +31,6 @@ default configuration:: $accessor = PropertyAccess::createPropertyAccessor(); -.. versionadded:: 2.3 - The :method:`Symfony\\Component\\PropertyAccess\\PropertyAccess::createPropertyAccessor` - method was introduced in Symfony 2.3. Previously, it was called ``getPropertyAccessor()``. - Reading from Arrays ------------------- @@ -215,9 +211,6 @@ enable this feature by using :class:`Symfony\\Component\\PropertyAccess\\Propert var_dump($accessor->getValue($person, 'wouter')); // array(...) -.. versionadded:: 2.3 - The use of magic ``__call()`` method was introduced in Symfony 2.3. - .. caution:: The ``__call`` feature is disabled by default, you can enable it by calling diff --git a/components/serializer.rst b/components/serializer.rst index a1a6d6ed260..f72d4e91638 100644 --- a/components/serializer.rst +++ b/components/serializer.rst @@ -178,10 +178,6 @@ This is a common need when working with an ORM. Attributes Groups ----------------- -.. versionadded:: 2.7 - The support of serialization and deserialization groups was introduced - in Symfony 2.7. - Sometimes, you want to serialize different sets of attributes from your entities. Groups are a handy way to achieve this need. @@ -320,14 +316,6 @@ Ignoring Attributes Using attribute groups instead of the :method:`Symfony\\Component\\Serializer\\Normalizer\\AbstractNormalizer::setIgnoredAttributes` method is considered best practice. -.. versionadded:: 2.3 - The :method:`Symfony\\Component\\Serializer\\Normalizer\\AbstractNormalizer::setIgnoredAttributes` - method was introduced in Symfony 2.3. - -.. versionadded:: 2.7 - Prior to Symfony 2.7, attributes were only ignored while serializing. Since Symfony - 2.7, they are ignored when deserializing too. - As an option, there's a way to ignore attributes from the origin object. To remove those attributes use the :method:`Symfony\\Component\\Serializer\\Normalizer\\AbstractNormalizer::setIgnoredAttributes` @@ -349,10 +337,6 @@ method on the normalizer definition:: Converting Property Names when Serializing and Deserializing ------------------------------------------------------------ -.. versionadded:: 2.7 - The :class:`Symfony\\Component\\Serializer\\NameConverter\\NameConverterInterface` - interface was introduced in Symfony 2.7. - Sometimes serialized attributes must be named differently than properties or getter/setter methods of PHP classes. @@ -418,10 +402,6 @@ and :class:`Symfony\\Component\\Serializer\\Normalizer\\PropertyNormalizer`:: CamelCase to snake_case ~~~~~~~~~~~~~~~~~~~~~~~ -.. versionadded:: 2.7 - The :class:`Symfony\\Component\\Serializer\\NameConverter\\CamelCaseToSnakeCaseNameConverter` - interface was introduced in Symfony 2.7. - In many formats, it's common to use underscores to separate words (also known as snake_case). However, PSR-1 specifies that the preferred style for PHP properties and methods is CamelCase. @@ -531,10 +511,6 @@ There are several types of normalizers available: Objects are normalized to a map of property names to property values. -.. versionadded:: 2.7 - The :class:`Symfony\\Component\\Serializer\\Normalizer\\ObjectNormalizer` - class was introduced in Symfony 2.7. - Handling Circular References ---------------------------- @@ -649,11 +625,6 @@ Serializing arrays works just like serializing a single object:: // $data contains [{"name":"foo","age":99,"sportsman":false},{"name":"bar","age":33,"sportsman":true}] -.. versionadded:: 2.8 - The :class:`Symfony\\Component\\Serializer\\Normalizer\\ArrayDenormalizer` - class was introduced in 2.8. Prior to Symfony 2.8, only the serialization of - arrays is supported. - If you want to deserialize such a structure, you need to add the :class:`Symfony\\Component\\Serializer\\Normalizer\\ArrayDenormalizer` to the set of normalizers. By appending ``[]`` to the type parameter of the diff --git a/components/translation/custom_formats.rst b/components/translation/custom_formats.rst index 1ef3f365553..d5d9ddcd446 100644 --- a/components/translation/custom_formats.rst +++ b/components/translation/custom_formats.rst @@ -104,12 +104,10 @@ will save a few lines:: .. sidebar:: Format a message catalogue - .. versionadded:: 2.8 - The ability to format a message catalogue without dumping it was introduced in Symfony 2.8. - - In some cases, you want to send the dump contents as a response instead of writing them in files. - To do this, you can use the ``formatCatalogue`` method. In this case, you must pass the domain argument, - which determines the list of messages that should be dumped. + In some cases, you want to send the dump contents as a response instead of + writing them in files. To do this, you can use the ``formatCatalogue`` + method. In this case, you must pass the domain argument, which determines + the list of messages that should be dumped. The :method:`Symfony\\Component\\Translation\\Dumper\\FileDumper::formatCatalogue` method creates the output string, that will be used by the diff --git a/components/var_dumper/introduction.rst b/components/var_dumper/introduction.rst index e3f3aa1a596..f30b8543b56 100644 --- a/components/var_dumper/introduction.rst +++ b/components/var_dumper/introduction.rst @@ -103,10 +103,6 @@ option. Read more about this and other options in Using the VarDumper Component in your PHPUnit Test Suite -------------------------------------------------------- -.. versionadded:: 2.7 - The :class:`Symfony\\Component\\VarDumper\\Test\\VarDumperTestTrait` was - introduced in Symfony 2.7. - The VarDumper component provides :class:`a trait ` that can help writing some of your tests for PHPUnit. diff --git a/cookbook/bundles/best_practices.rst b/cookbook/bundles/best_practices.rst index 266ee3b7066..7f214270c14 100644 --- a/cookbook/bundles/best_practices.rst +++ b/cookbook/bundles/best_practices.rst @@ -413,55 +413,6 @@ The ``composer.json`` file should include at least the following metadata: In order to make it easier for developers to find your bundle, register it on `Packagist`_, the official repository for Composer packages. -Custom Validation Constraints ------------------------------ - -Starting with Symfony 2.5, a new Validation API was introduced. In fact, -there are 3 modes, which the user can configure in their project: - -* 2.4: the original 2.4 and earlier validation API; -* 2.5: the new 2.5 and later validation API; -* 2.5-BC: the new 2.5 API with a backwards-compatible layer so that the - 2.4 API still works. This is only available in PHP 5.3.9+. - -.. note:: - - Starting with Symfony 2.7, the support for the 2.4 API has been - dropped and the minimal PHP version required for Symfony was - increased to 5.3.9. If your bundles requires Symfony >=2.7, you - don't need to take care about the 2.4 API anymore. - -As a bundle author, you'll want to support *both* API's, since some users -may still be using the 2.4 API. Specifically, if your bundle adds a violation -directly to the :class:`Symfony\\Component\\Validator\\Context\\ExecutionContext` -(e.g. like in a custom validation constraint), you'll need to check for which -API is being used. The following code, would work for *all* users:: - - use Symfony\Component\Validator\ConstraintValidator; - use Symfony\Component\Validator\Constraint; - use Symfony\Component\Validator\Context\ExecutionContextInterface; - // ... - - class ContainsAlphanumericValidator extends ConstraintValidator - { - public function validate($value, Constraint $constraint) - { - if ($this->context instanceof ExecutionContextInterface) { - // the 2.5 API - $this->context->buildViolation($constraint->message) - ->setParameter('%string%', $value) - ->addViolation() - ; - } else { - // the 2.4 API - $this->context->addViolation( - $constraint->message, - array('%string%' => $value) - ); - } - } - } - Learn more from the Cookbook ---------------------------- diff --git a/cookbook/bundles/override.rst b/cookbook/bundles/override.rst index 375f2678504..775c62828ca 100644 --- a/cookbook/bundles/override.rst +++ b/cookbook/bundles/override.rst @@ -105,12 +105,12 @@ associations. Learn more about this feature and its limitations in Forms ----- -As of Symfony 2.8, form types are referred to by their fully-qualified class name:: +Form types are referred to by their fully-qualified class name:: $builder->add('name', CustomType::class); This means that you cannot override this by creating a sub-class of ``CustomType`` -and registering it as a service, and tagging it with ``form.type`` (you *could* +and registering it as a service and tagging it with ``form.type`` (you *could* do this in earlier version). Instead, you should use a "form type extension" to modify the existing form type. diff --git a/cookbook/configuration/apache_router.rst b/cookbook/configuration/apache_router.rst index 4e69b18a289..69c7ec14307 100644 --- a/cookbook/configuration/apache_router.rst +++ b/cookbook/configuration/apache_router.rst @@ -19,139 +19,7 @@ handle routes directly, rather than using Symfony for this task. .. caution:: - Apache router was deprecated in Symfony 2.5 and will be removed in Symfony - 3.0. Since the PHP implementation of the Router was improved, performance - gains were no longer significant (while it's very hard to replicate the - same behavior). - -Change Router Configuration Parameters --------------------------------------- - -To dump Apache routes you must first tweak some configuration parameters to tell -Symfony to use the ``ApacheUrlMatcher`` instead of the default one: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/config_prod.yml - parameters: - router.options.matcher.cache_class: ~ # disable router cache - router.options.matcher_class: Symfony\Component\Routing\Matcher\ApacheUrlMatcher - - .. code-block:: xml - - - - null - - Symfony\Component\Routing\Matcher\ApacheUrlMatcher - - - - .. code-block:: php - - // app/config/config_prod.php - $container->setParameter('router.options.matcher.cache_class', null); // disable router cache - $container->setParameter( - 'router.options.matcher_class', - 'Symfony\Component\Routing\Matcher\ApacheUrlMatcher' - ); - -.. tip:: - - Note that :class:`Symfony\\Component\\Routing\\Matcher\\ApacheUrlMatcher` - extends :class:`Symfony\\Component\\Routing\\Matcher\\UrlMatcher` so even - if you don't regenerate the mod_rewrite rules, everything will work (because - at the end of ``ApacheUrlMatcher::match()`` a call to ``parent::match()`` - is done). - -Generating mod_rewrite Rules ----------------------------- - -To test that it's working, create a very basic route for the AppBundle: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/routing.yml - hello: - path: /hello/{name} - defaults: { _controller: AppBundle:Greet:hello } - - .. code-block:: xml - - - - AppBundle:Greet:hello - - - .. code-block:: php - - // app/config/routing.php - $collection->add('hello', new Route('/hello/{name}', array( - '_controller' => 'AppBundle:Greet:hello', - ))); - -Now generate the mod_rewrite rules: - -.. code-block:: bash - - $ php bin/console router:dump-apache -e=prod --no-debug - -Which should roughly output the following: - -.. code-block:: apache - - # skip "real" requests - RewriteCond %{REQUEST_FILENAME} -f - RewriteRule .* - [QSA,L] - - # hello - RewriteCond %{REQUEST_URI} ^/hello/([^/]+?)$ - RewriteRule .* app.php [QSA,L,E=_ROUTING__route:hello,E=_ROUTING_name:%1,E=_ROUTING__controller:AppBundle\:Greet\:hello] - -You can now rewrite ``web/.htaccess`` to use the new rules, so with this example -it should look like this: - -.. code-block:: apache - - - RewriteEngine On - - # skip "real" requests - RewriteCond %{REQUEST_FILENAME} -f - RewriteRule .* - [QSA,L] - - # hello - RewriteCond %{REQUEST_URI} ^/hello/([^/]+?)$ - RewriteRule .* app.php [QSA,L,E=_ROUTING__route:hello,E=_ROUTING_name:%1,E=_ROUTING__controller:AppBundle\:Greet\:hello] - - -.. note:: - - The procedure above should be done each time you add/change a route if you - want to take full advantage of this setup. - -That's it! -You're now all set to use Apache routes. - -Additional Tweaks ------------------ - -To save some processing time, change occurrences of ``Request`` -to ``ApacheRequest`` in ``web/app.php``:: - - // web/app.php - - require_once __DIR__.'/../var/bootstrap.php.cache'; - require_once __DIR__.'/../app/AppKernel.php'; - // require_once __DIR__.'/../app/AppCache.php'; - - use Symfony\Component\HttpFoundation\ApacheRequest; - - $kernel = new AppKernel('prod', false); - $kernel->loadClassCache(); - // $kernel = new AppCache($kernel); - $kernel->handle(ApacheRequest::createFromGlobals())->send(); + Apache router was deprecated in Symfony 2.5 and removed in Symfony 3.0. + Since the PHP implementation of the Router was improved, performance gains + were no longer significant (while it's very hard to replicate the same + behavior). diff --git a/cookbook/configuration/environments.rst b/cookbook/configuration/environments.rst index faf1ffefe6d..29cd72ee295 100644 --- a/cookbook/configuration/environments.rst +++ b/cookbook/configuration/environments.rst @@ -173,10 +173,10 @@ this code and changing the environment string. specifies if the application should run in "debug mode". Regardless of the environment, a Symfony application can be run with debug mode set to ``true`` or ``false``. This affects many things in the application, - such as if errors should be displayed or if cache files are + such as displaying stacktraces on error pages or if cache files are dynamically rebuilt on each request. Though not a requirement, debug mode - is generally set to ``true`` for the ``dev`` and ``test`` environments - and ``false`` for the ``prod`` environment. + is generally set to ``true`` for the ``dev`` and ``test`` environments and + ``false`` for the ``prod`` environment. Internally, the value of the debug mode becomes the ``kernel.debug`` parameter used inside the :doc:`service container `. @@ -207,10 +207,6 @@ this code and changing the environment string. // ... )); - As of Symfony 2.3, showing errors or not no longer depends on the debug - mode. You'll need to enable that in your front controller by calling - :method:`Symfony\\Component\\Debug\\Debug::enable`. - Selecting the Environment for Console Commands ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/cookbook/configuration/micro-kernel-trait.rst b/cookbook/configuration/micro-kernel-trait.rst index 131819faa9d..65da709719f 100644 --- a/cookbook/configuration/micro-kernel-trait.rst +++ b/cookbook/configuration/micro-kernel-trait.rst @@ -100,9 +100,9 @@ that define your bundles, your services and your routes: directly in PHP or load external configuration files (shown below). **configureRoutes(RouteCollectionBuilder $routes)** - Your job in this method is to add routes to the application. The ``RouteCollectionBuilder`` - is new in Symfony 2.8 and has methods that make adding routes in PHP more fun. - You can also load external routing files (shown below). + Your job in this method is to add routes to the application. The + ``RouteCollectionBuilder`` has methods that make adding routes in PHP more + fun. You can also load external routing files (shown below). Advanced Example: Twig, Annotations and the Web Debug Toolbar diff --git a/cookbook/console/logging.rst b/cookbook/console/logging.rst index 9a7bbdc9369..d7e5590ce0b 100644 --- a/cookbook/console/logging.rst +++ b/cookbook/console/logging.rst @@ -73,9 +73,6 @@ Enabling automatic Exceptions Logging To get your console application to automatically log uncaught exceptions for all of your commands, you can use :doc:`console events`. -.. versionadded:: 2.3 - Console events were introduced in Symfony 2.3. - First configure a listener for console exception events in the service container: .. configuration-block:: diff --git a/cookbook/console/sending_emails.rst b/cookbook/console/sending_emails.rst index 5f9669d3428..300ced4fd9b 100644 --- a/cookbook/console/sending_emails.rst +++ b/cookbook/console/sending_emails.rst @@ -85,10 +85,6 @@ from the ``router`` service and override its settings:: Using Memory Spooling --------------------- -.. versionadded:: 2.3 - When using Symfony 2.3+ and SwiftmailerBundle 2.3.5+, the memory spool is now - handled automatically in the CLI and the code below is not necessary anymore. - Sending emails in a console command works the same way as described in the :doc:`/cookbook/email/email` cookbook except if memory spooling is used. diff --git a/cookbook/console/style.rst b/cookbook/console/style.rst index 3ddcf85a45a..7f24ca1f088 100644 --- a/cookbook/console/style.rst +++ b/cookbook/console/style.rst @@ -4,9 +4,6 @@ How to Style a Console Command ============================== -.. versionadded:: 2.7 - Symfony Styles for console commands were introduced in Symfony 2.7. - One of the most boring tasks when creating console commands is to deal with the styling of the command's input and output. Displaying titles and tables or asking questions to the user involves a lot of repetitive code. diff --git a/cookbook/doctrine/mapping_model_classes.rst b/cookbook/doctrine/mapping_model_classes.rst index 6cbb748c1a6..da5943dc915 100644 --- a/cookbook/doctrine/mapping_model_classes.rst +++ b/cookbook/doctrine/mapping_model_classes.rst @@ -16,13 +16,6 @@ register the mappings for your model classes. for one of the ODMs. For reusable bundles, rather than duplicate model classes just to get the auto-mapping, use the compiler pass. -.. versionadded:: 2.3 - The base mapping compiler pass was introduced in Symfony 2.3. The Doctrine bundles - support it from DoctrineBundle >= 1.3.0, MongoDBBundle >= 3.0.0, - PHPCRBundle >= 1.0.0 and the (unversioned) CouchDBBundle supports the - compiler pass since the `CouchDB Mapping Compiler Pass pull request`_ - was merged. - In your bundle class, write the following code to register the compiler pass. This one is written for the CmfRoutingBundle, so parts of it will need to be adapted for your case:: diff --git a/cookbook/email/email.rst b/cookbook/email/email.rst index e227a70ef0e..c2f51cc786b 100644 --- a/cookbook/email/email.rst +++ b/cookbook/email/email.rst @@ -141,11 +141,6 @@ template might look something like this: {# Makes an absolute URL to the /images/logo.png file #} -.. versionadded:: 2.7 - The ``absolute_url()`` function was introduced in Symfony 2.7. Prior - to 2.7, the ``asset()`` function has an argument to enable returning - an absolute URL. - The ``$message`` object supports many more options, such as including attachments, adding HTML content, and much more. Fortunately, Swift Mailer covers the topic of `Creating Messages`_ in great detail in its documentation. diff --git a/cookbook/expression/expressions.rst b/cookbook/expression/expressions.rst index 73e43745bb8..8e162c988ad 100644 --- a/cookbook/expression/expressions.rst +++ b/cookbook/expression/expressions.rst @@ -4,9 +4,9 @@ How to use Expressions in Security, Routing, Services, and Validation ===================================================================== -In Symfony 2.4, a powerful :doc:`ExpressionLanguage ` -component was added to Symfony. This allows us to add highly customized -logic inside configuration. +Symfony comes with a powerful +:doc:`ExpressionLanguage ` +component. It allows you to add highly customized logic inside configuration. The Symfony Framework leverages expressions out of the box in the following ways: diff --git a/cookbook/form/create_custom_field_type.rst b/cookbook/form/create_custom_field_type.rst index f83c60d35cf..d54379e48b0 100644 --- a/cookbook/form/create_custom_field_type.rst +++ b/cookbook/form/create_custom_field_type.rst @@ -50,10 +50,6 @@ for form fields, which is ``\Form\Type``. Make sure the field extend The location of this file is not important - the ``Form\Type`` directory is just a convention. -.. versionadded:: 2.8 - In 2.8, the ``getName()`` method was removed. Now, fields are always referred - to by their fully-qualified class name. - Here, the return value of the ``getParent`` function indicates that you're extending the ``ChoiceType`` field. This means that, by default, you inherit all of the logic and rendering of that field type. To see some of the logic, @@ -72,10 +68,6 @@ important: set) the ``multiple`` attribute on the ``select`` field. See `Creating a Template for the Field`_ for more details. -.. versionadded:: 2.7 - The ``configureOptions()`` method was introduced in Symfony 2.7. Previously, - the method was called ``setDefaultOptions()``. - ``configureOptions()`` This defines options for your form type that can be used in ``buildForm()`` and ``buildView()``. There are a lot of diff --git a/cookbook/form/create_form_type_extension.rst b/cookbook/form/create_form_type_extension.rst index e9e0ed22248..a9bef48b3c9 100644 --- a/cookbook/form/create_form_type_extension.rst +++ b/cookbook/form/create_form_type_extension.rst @@ -125,12 +125,6 @@ tag: ) ->addTag('form.type_extension', array('extended_type' => 'Symfony\Component\Form\Extension\Core\Type\FileType')); -.. versionadded:: 2.8 - The ``extended_type`` option is new in Symfony 2.8. Before, the option was - called ``alias``. If you're a bundle author and need to support multiple Symfony - versions, specify *both* ``extended_type`` and ``alias`` (having both will prevent - any deprecation warnings). - The ``extended_type`` key of the tag is the type of field that this extension should be applied to. In your case, as you want to extend the ``Symfony\Component\Form\Extension\Core\Type\FileType`` field type, you will use that as the ``extended_type``. diff --git a/cookbook/form/direct_submit.rst b/cookbook/form/direct_submit.rst index 8fd9e642e89..9b2458f8e9a 100644 --- a/cookbook/form/direct_submit.rst +++ b/cookbook/form/direct_submit.rst @@ -4,10 +4,6 @@ How to Use the submit() Function to Handle Form Submissions =========================================================== -.. versionadded:: 2.3 - The :method:`Symfony\\Component\\Form\\FormInterface::handleRequest` - method was introduced in Symfony 2.3. - With the ``handleRequest()`` method, it is really easy to handle form submissions:: @@ -42,9 +38,6 @@ submissions:: Calling Form::submit() manually ------------------------------- -.. versionadded:: 2.3 - Before Symfony 2.3, the ``submit()`` method was known as ``bind()``. - In some cases, you want better control over when exactly your form is submitted and what data is passed to it. Instead of using the :method:`Symfony\\Component\\Form\\FormInterface::handleRequest` @@ -83,44 +76,3 @@ method, pass the submitted data directly to directly on the field:: $form->get('firstName')->submit('Fabien'); - -.. _cookbook-form-submit-request: - -Passing a Request to Form::submit() (Deprecated) ------------------------------------------------- - -.. versionadded:: 2.3 - Before Symfony 2.3, the ``submit`` method was known as ``bind``. - -Before Symfony 2.3, the :method:`Symfony\\Component\\Form\\FormInterface::submit` -method accepted a :class:`Symfony\\Component\\HttpFoundation\\Request` object as -a convenient shortcut to the previous example:: - - use Symfony\Component\HttpFoundation\Request; - // ... - - public function newAction(Request $request) - { - $form = $this->createFormBuilder() - // ... - ->getForm(); - - if ($request->isMethod('POST')) { - $form->submit($request); - - if ($form->isValid()) { - // perform some action... - - return $this->redirectToRoute('task_success'); - } - } - - return $this->render('AppBundle:Default:new.html.twig', array( - 'form' => $form->createView(), - )); - } - -Passing the :class:`Symfony\\Component\\HttpFoundation\\Request` directly to -:method:`Symfony\\Component\\Form\\FormInterface::submit` still works, but is -deprecated and will be removed in Symfony 3.0. You should use the method -:method:`Symfony\\Component\\Form\\FormInterface::handleRequest` instead. diff --git a/cookbook/form/dynamic_form_modification.rst b/cookbook/form/dynamic_form_modification.rst index aaacedff72c..15b77e804a2 100644 --- a/cookbook/form/dynamic_form_modification.rst +++ b/cookbook/form/dynamic_form_modification.rst @@ -472,10 +472,6 @@ On a form, we can usually listen to the following events: * ``SUBMIT`` * ``POST_SUBMIT`` -.. versionadded:: 2.3 - The events ``PRE_SUBMIT``, ``SUBMIT`` and ``POST_SUBMIT`` were introduced - in Symfony 2.3. Before, they were named ``PRE_BIND``, ``BIND`` and ``POST_BIND``. - The key is to add a ``POST_SUBMIT`` listener to the field that your new field depends on. If you add a ``POST_SUBMIT`` listener to a form child (e.g. ``sport``), and add new children to the parent form, the Form component will detect the diff --git a/cookbook/form/inherit_data_option.rst b/cookbook/form/inherit_data_option.rst index f4e6fdf88d6..4f0ff9a6839 100644 --- a/cookbook/form/inherit_data_option.rst +++ b/cookbook/form/inherit_data_option.rst @@ -4,10 +4,6 @@ How to Reduce Code Duplication with "inherit_data" ================================================== -.. versionadded:: 2.3 - This ``inherit_data`` option was introduced in Symfony 2.3. Before, it - was known as ``virtual``. - The ``inherit_data`` form field option can be very useful when you have some duplicated fields in different entities. For example, imagine you have two entities, a ``Company`` and a ``Customer``:: diff --git a/cookbook/form/unit_testing.rst b/cookbook/form/unit_testing.rst index c671cadb41c..675ffe85a98 100644 --- a/cookbook/form/unit_testing.rst +++ b/cookbook/form/unit_testing.rst @@ -20,11 +20,6 @@ There is already a class that you can benefit from for simple FormTypes testing: :class:`Symfony\\Component\\Form\\Test\\TypeTestCase`. It is used to test the core types and you can use it to test your types too. -.. versionadded:: 2.3 - The ``TypeTestCase`` has moved to the ``Symfony\Component\Form\Test`` - namespace in 2.3. Previously, the class was located in - ``Symfony\Component\Form\Tests\Extension\Core\Type``. - .. note:: Depending on the way you installed your Symfony or Symfony Form component diff --git a/cookbook/form/use_virtuals_forms.rst b/cookbook/form/use_virtuals_forms.rst index 0de48e6ecb7..b6f75063795 100644 --- a/cookbook/form/use_virtuals_forms.rst +++ b/cookbook/form/use_virtuals_forms.rst @@ -1,5 +1,8 @@ How to Use the virtual Form Field Option ======================================== -As of Symfony 2.3, the ``virtual`` option is renamed to ``inherit_data``. You -can read everything about the new option in ":doc:`/cookbook/form/inherit_data_option`". +.. caution:: + + As of Symfony 2.3, the ``virtual`` option is renamed to ``inherit_data``. + You can read everything about the new option in + ":doc:`/cookbook/form/inherit_data_option`". diff --git a/cookbook/logging/channels_handlers.rst b/cookbook/logging/channels_handlers.rst index 870c342c585..58ad102a7c7 100644 --- a/cookbook/logging/channels_handlers.rst +++ b/cookbook/logging/channels_handlers.rst @@ -125,8 +125,7 @@ specified. Configure Additional Channels without Tagged Services ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -With MonologBundle 2.4 you can configure additional channels without the -need to tag your services: +You can also configure additional channels without the need to tag your services: .. configuration-block:: diff --git a/cookbook/logging/monolog_console.rst b/cookbook/logging/monolog_console.rst index f3cddb9a890..22b2144f2f4 100644 --- a/cookbook/logging/monolog_console.rst +++ b/cookbook/logging/monolog_console.rst @@ -58,8 +58,7 @@ the console. If they are displayed, they are timestamped and colored appropriate Additionally, error logs are written to the error output (php://stderr). There is no need to conditionally handle the verbosity settings anymore. -The Monolog console handler is enabled in the Monolog configuration. This is -the default in Symfony Standard Edition 2.4 too. +The Monolog console handler is enabled in the Monolog configuration. .. configuration-block:: diff --git a/cookbook/request/load_balancer_reverse_proxy.rst b/cookbook/request/load_balancer_reverse_proxy.rst index 343c9c35fa8..f5e2c9f4196 100644 --- a/cookbook/request/load_balancer_reverse_proxy.rst +++ b/cookbook/request/load_balancer_reverse_proxy.rst @@ -13,9 +13,6 @@ will now be the IP address of your reverse proxy), the user's true IP will be stored in a standard ``Forwarded: for="..."`` header or a non standard ``X-Forwarded-For`` header. -.. versionadded:: 2.7 - ``Forwarded`` header support was introduced in Symfony 2.7. - If you don't configure Symfony to look for these headers, you'll get incorrect information about the client's IP address, whether or not the client is connecting via HTTPS, the client's port and the hostname being requested. diff --git a/cookbook/routing/method_parameters.rst b/cookbook/routing/method_parameters.rst index be270240dd2..5151f3eafe9 100644 --- a/cookbook/routing/method_parameters.rst +++ b/cookbook/routing/method_parameters.rst @@ -74,19 +74,17 @@ delete it by matching on GET, PUT and DELETE. Faking the Method with ``_method`` ---------------------------------- -.. note:: - - The ``_method`` functionality shown here is disabled by default in Symfony 2.2 - and enabled by default in Symfony 2.3. To control it in Symfony 2.2, you - must call :method:`Request::enableHttpMethodParameterOverride ` - before you handle the request (e.g. in your front controller). In Symfony - 2.3, use the :ref:`configuration-framework-http_method_override` option. - Unfortunately, life isn't quite this simple, since most browsers do not support -sending PUT and DELETE requests via the `method` attribute in an HTML form. Fortunately, -Symfony provides you with a simple way of working around this limitation. By including -a ``_method`` parameter in the query string or parameters of an HTTP request, Symfony -will use this as the method when matching routes. Forms automatically include a -hidden field for this parameter if their submission method is not GET or POST. -See :ref:`the related chapter in the forms documentation` +sending PUT and DELETE requests via the ``method`` attribute in an HTML form. +Fortunately, Symfony provides you with a simple way of working around this +limitation. By including a ``_method`` parameter in the query string or +parameters of an HTTP request, Symfony will use this as the method when +matching routes. Forms automatically include a hidden field for this parameter +if their submission method is not GET or POST. +See :ref:`the related chapter in the forms documentation ` for more information. + +.. note:: + + This feature can be disabled using the + :ref:`configuration-framework-http_method_override` option. diff --git a/cookbook/security/api_key_authentication.rst b/cookbook/security/api_key_authentication.rst index cc405446b01..c7e66d256e3 100644 --- a/cookbook/security/api_key_authentication.rst +++ b/cookbook/security/api_key_authentication.rst @@ -16,12 +16,6 @@ passed as a query string parameter or via an HTTP header. The API Key Authenticator ------------------------- -.. versionadded:: 2.8 - The ``SimplePreAuthenticatorInterface`` interface was moved to the - ``Symfony\Component\Security\Http\Authentication`` namespace in Symfony - 2.8. Prior to 2.8, it was located in the - ``Symfony\Component\Security\Core\Authentication`` namespace. - Authenticating a user based on the Request information should be done via a pre-authentication mechanism. The :class:`Symfony\\Component\\Security\\Http\\Authentication\\SimplePreAuthenticatorInterface` allows you to implement such a scheme really easily. @@ -104,11 +98,6 @@ value and then a User object is created:: } } -.. versionadded:: 2.8 - The ``CustomUserMessageAuthenticationException`` class is new in Symfony 2.8 - and helps you return custom authentication messages. In 2.7 or earlier, throw - an ``AuthenticationException`` or any sub-class (you can still do this in 2.8). - Once you've :ref:`configured ` everything, you'll be able to authenticate by adding an apikey parameter to the query string, like ``http://example.com/admin/foo?apikey=37b51d194a7513e45b56f6524f2d51f2``. diff --git a/cookbook/security/csrf_in_login_form.rst b/cookbook/security/csrf_in_login_form.rst index 762801d6554..b6ab7b23df4 100644 --- a/cookbook/security/csrf_in_login_form.rst +++ b/cookbook/security/csrf_in_login_form.rst @@ -107,8 +107,6 @@ using the login form: - diff --git a/cookbook/security/custom_authentication_provider.rst b/cookbook/security/custom_authentication_provider.rst index 89f28e79f86..eebff8bd966 100644 --- a/cookbook/security/custom_authentication_provider.rst +++ b/cookbook/security/custom_authentication_provider.rst @@ -295,11 +295,6 @@ the ``PasswordDigest`` header value matches with the user's password. you are safe to use it with any PHP version in your Symfony application. In PHP versions prior to 5.6, `Symfony Polyfill`_ (which is included in Symfony) will define the function for you. - - .. versionadded:: 2.8 - Symfony Polyfill is included by default since Symfony 2.8. Prior to Symfony 2.8, - you have to execute ``composer require symfony/polyfill-php56`` to be able to - use ``hash_equals`` on older PHP versions. The Factory ----------- diff --git a/cookbook/security/custom_password_authenticator.rst b/cookbook/security/custom_password_authenticator.rst index 9a536c80ebd..9ed7bbf98b3 100644 --- a/cookbook/security/custom_password_authenticator.rst +++ b/cookbook/security/custom_password_authenticator.rst @@ -16,12 +16,6 @@ your user submits their username and password). The Password Authenticator -------------------------- -.. versionadded:: 2.8 - The ``SimpleFormAuthenticatorInterface`` interface was moved to the - ``Symfony\Component\Security\Http\Authentication`` namespace in Symfony - 2.8. Prior to 2.8, it was located in the - ``Symfony\Component\Security\Core\Authentication`` namespace. - First, create a new class that implements :class:`Symfony\\Component\\Security\\Http\\Authentication\\SimpleFormAuthenticatorInterface`. Eventually, this will allow you to create custom logic for authenticating @@ -96,11 +90,6 @@ the user:: } } -.. versionadded:: 2.8 - The ``CustomUserMessageAuthenticationException`` class is new in Symfony 2.8 - and helps you return custom authentication messages. In 2.7 or earlier, throw - an ``AuthenticationException`` or any sub-class (you can still do this in 2.8). - How it Works ------------ diff --git a/cookbook/security/entity_provider.rst b/cookbook/security/entity_provider.rst index 29405d3dc3f..3c4ab69838b 100644 --- a/cookbook/security/entity_provider.rst +++ b/cookbook/security/entity_provider.rst @@ -445,11 +445,6 @@ interface only requires one method: ``loadUserByUsername($username)``:: } } -.. versionadded:: 2.8 - The :class:`Symfony\\Bridge\\Doctrine\\Security\\User\\UserLoaderInterface` - was introduced in 2.8. Prior to Symfony 2.8, you had to implement - ``Symfony\Component\Security\Core\User\UserProviderInterface``. - .. tip:: Don't forget to add the repository class to the diff --git a/cookbook/security/form_login.rst b/cookbook/security/form_login.rst index 2681d149142..27ba29d6f07 100644 --- a/cookbook/security/form_login.rst +++ b/cookbook/security/form_login.rst @@ -253,8 +253,6 @@ redirect to the URL defined by some ``account`` route, use the following:
getMessage() ?>
- diff --git a/cookbook/security/form_login_setup.rst b/cookbook/security/form_login_setup.rst index 02b71d7c0cc..197e0b7b256 100644 --- a/cookbook/security/form_login_setup.rst +++ b/cookbook/security/form_login_setup.rst @@ -210,8 +210,6 @@ Finally, create the template:
getMessage() ?>
- diff --git a/cookbook/security/impersonating_user.rst b/cookbook/security/impersonating_user.rst index f12ac39941f..48c1a9dda15 100644 --- a/cookbook/security/impersonating_user.rst +++ b/cookbook/security/impersonating_user.rst @@ -84,8 +84,6 @@ to show a link to exit impersonation: .. code-block:: html+php isGranted('ROLE_PREVIOUS_ADMIN')): ?> -
diff --git a/cookbook/security/remember_me.rst b/cookbook/security/remember_me.rst index 7885b43922f..6e6650974f2 100644 --- a/cookbook/security/remember_me.rst +++ b/cookbook/security/remember_me.rst @@ -83,10 +83,6 @@ the session lasts using a cookie with the ``remember_me`` firewall option: The ``remember_me`` firewall defines the following configuration options: ``secret`` (**required**) - .. versionadded:: 2.8 - The ``secret`` option was introduced in Symfony 2.8. Prior to 2.8, it - was named ``key``. - The value used to encrypt the cookie's content. It's common to use the ``secret`` value defined in the ``app/config/parameters.yml`` file. @@ -176,8 +172,6 @@ this:
getMessage() ?>
- ` Activating the Serializer ------------------------- -.. versionadded:: 2.3 - The Serializer has always existed in Symfony, but prior to Symfony 2.3, - you needed to build the ``serializer`` service yourself. - The ``serializer`` service is not available by default. To turn it on, activate it in your configuration: @@ -74,11 +70,6 @@ you need it or it can be used in a controller like the following:: Adding Normalizers and Encoders ------------------------------- -.. versionadded:: 2.7 - The :class:`Symfony\\Component\\Serializer\\Normalizer\\ObjectNormalizer` - is enabled by default in Symfony 2.7. In prior versions, you needed to load - your own normalizer. - Once enabled, the ``serializer`` service will be available in the container and will be loaded with two :ref:`encoders ` (:class:`Symfony\\Component\\Serializer\\Encoder\\JsonEncoder` and @@ -129,9 +120,6 @@ Here is an example on how to load the Using Serialization Groups Annotations -------------------------------------- -.. versionadded:: 2.7 - Support for serialization groups was introduced in Symfony 2.7. - Enable :ref:`serialization groups annotation ` with the following configuration: @@ -177,9 +165,6 @@ to your class and choose which groups to use when serializing:: Enabling the Metadata Cache --------------------------- -.. versionadded:: 2.7 - Serializer was introduced in Symfony 2.7. - Metadata used by the Serializer component such as groups can be cached to enhance application performance. Any service implementing the ``Doctrine\Common\Cache\Cache`` interface can be used. diff --git a/cookbook/service_container/shared.rst b/cookbook/service_container/shared.rst index 62ef094f426..aec4943f188 100644 --- a/cookbook/service_container/shared.rst +++ b/cookbook/service_container/shared.rst @@ -4,10 +4,6 @@ How to Define Non Shared Services ================================= -.. versionadded:: 2.8 - The ``shared`` setting was introduced in Symfony 2.8. Prior to Symfony 2.8, - you had to use the ``prototype`` scope. - In the service container, all services are shared by default. This means that each time you retrieve the service, you'll get the *same* instance. This is often the behavior you want, but in some cases, you might want to always get a diff --git a/cookbook/session/locale_sticky_session.rst b/cookbook/session/locale_sticky_session.rst index c44fa9e2544..845ec4519ec 100644 --- a/cookbook/session/locale_sticky_session.rst +++ b/cookbook/session/locale_sticky_session.rst @@ -4,11 +4,10 @@ Making the Locale "Sticky" during a User's Session ================================================== -Prior to Symfony 2.1, the locale was stored in a session attribute called ``_locale``. -Since 2.1, it is stored in the Request, which means that it's not "sticky" -during a user's request. In this article, you'll learn how to make the locale -of a user "sticky" so that once it's set, that same locale will be used for -every subsequent request. +Symfony stores the locale setting in the Request, which means that this setting +is not available in subsequent requests. In this article, you'll learn how to +store the locale in the session, so that it'll be the same for every subsequent +request. Creating a LocaleListener ------------------------- diff --git a/cookbook/session/php_bridge.rst b/cookbook/session/php_bridge.rst index 80606654670..2a953dbf959 100644 --- a/cookbook/session/php_bridge.rst +++ b/cookbook/session/php_bridge.rst @@ -4,9 +4,6 @@ Bridge a legacy Application with Symfony Sessions ================================================= -.. versionadded:: 2.3 - The ability to integrate with a legacy PHP session was introduced in Symfony 2.3. - If you're integrating the Symfony full-stack Framework into a legacy application that starts the session with ``session_start()``, you may still be able to use Symfony's session management by using the PHP Bridge session. diff --git a/cookbook/validation/custom_constraint.rst b/cookbook/validation/custom_constraint.rst index a248a8494aa..a349e6df40b 100644 --- a/cookbook/validation/custom_constraint.rst +++ b/cookbook/validation/custom_constraint.rst @@ -65,18 +65,9 @@ The validator class is also simple, and only has one required method ``validate( public function validate($value, Constraint $constraint) { if (!preg_match('/^[a-zA-Z0-9]+$/', $value, $matches)) { - // If you're using the new 2.5 validation API (you probably are!) $this->context->buildViolation($constraint->message) ->setParameter('%string%', $value) ->addViolation(); - - // If you're using the old 2.4 validation API - /* - $this->context->addViolation( - $constraint->message, - array('%string%' => $value) - ); - */ } } } @@ -228,20 +219,9 @@ With this, the validator ``validate()`` method gets an object as its first argum public function validate($protocol, Constraint $constraint) { if ($protocol->getFoo() != $protocol->getBar()) { - // If you're using the new 2.5 validation API (you probably are!) $this->context->buildViolation($constraint->message) ->atPath('foo') ->addViolation(); - - // If you're using the old 2.4 validation API - /* - $this->context->addViolationAt( - 'foo', - $constraint->message, - array(), - null - ); - */ } } } diff --git a/cookbook/web_server/built_in.rst b/cookbook/web_server/built_in.rst index fe7ee95c283..396ed96c34e 100644 --- a/cookbook/web_server/built_in.rst +++ b/cookbook/web_server/built_in.rst @@ -44,9 +44,6 @@ can change the socket passing an IP address and a port as a command-line argumen $ php bin/console server:start --force - .. versionadded:: 2.8 - The ``--force`` option was introduced in Symfony 2.8. - .. note:: You can use the ``server:status`` command to check if a web server is @@ -61,13 +58,13 @@ can change the socket passing an IP address and a port as a command-line argumen The first command shows if your Symfony application will be server through ``localhost:8000``, the second one does the same for ``192.168.0.1:8080``. -.. note:: +.. tip:: - Before Symfony 2.6, the ``server:run`` command was used to start the built-in - web server. This command is still available and behaves slightly different. - Instead of starting the server in the background, it will block the current - terminal until you terminate it (this is usually done by pressing Ctrl - and C). + Some systems do not support the ``server:start`` command, in these cases + you can execute the ``server:run`` command. This command behaves slightly + different. Instead of starting the server in the background, it will block + the current terminal until you terminate it (this is usually done by + pressing Ctrl and C). .. sidebar:: Using the built-in Web Server from inside a Virtual Machine diff --git a/create_framework/http_foundation.rst b/create_framework/http_foundation.rst index 7c100cff3d4..1f984db858a 100644 --- a/create_framework/http_foundation.rst +++ b/create_framework/http_foundation.rst @@ -125,7 +125,7 @@ containing the new requirement: { "require": { - "symfony/http-foundation": "^2.7" + "symfony/http-foundation": "^3.0" } } diff --git a/reference/configuration/framework.rst b/reference/configuration/framework.rst index b881aaba378..78f4541d40b 100644 --- a/reference/configuration/framework.rst +++ b/reference/configuration/framework.rst @@ -31,7 +31,6 @@ Configuration * :ref:`enabled ` * `csrf_protection`_ * :ref:`enabled ` - * `field_name`_ (deprecated as of 2.4) * `esi`_ * :ref:`enabled ` * `fragments`_ @@ -95,7 +94,6 @@ Configuration * :ref:`enable_annotations ` * `translation_domain`_ * `strict_email`_ - * `api`_ * `annotations`_ * :ref:`cache ` * `file_cache_dir`_ @@ -136,9 +134,6 @@ out all the application users. http_method_override ~~~~~~~~~~~~~~~~~~~~ -.. versionadded:: 2.3 - The ``http_method_override`` option was introduced in Symfony 2.3. - **type**: ``boolean`` **default**: ``true`` This determines whether the ``_method`` request parameter is used as the @@ -179,10 +174,6 @@ trusted_proxies Configures the IP addresses that should be trusted as proxies. For more details, see :doc:`/cookbook/request/load_balancer_reverse_proxy`. -.. versionadded:: 2.3 - CIDR notation support was introduced in Symfony 2.3, so you can whitelist - whole subnets (e.g. ``10.0.0.0/8``, ``fc00::/7``). - .. configuration-block:: .. code-block:: yaml @@ -228,9 +219,6 @@ using the following keys: * ``emacs`` * ``sublime`` -.. versionadded:: 2.3.14 - The ``emacs`` and ``sublime`` editors were introduced in Symfony 2.3.14. - You can also specify a custom URL string. If you do this, all percentage signs (``%``) must be doubled to escape that character. For example, if you use PHPstorm on the Mac OS platform, you will do something like: @@ -428,18 +416,6 @@ If you're using forms, but want to avoid starting your session (e.g. using forms in an API-only website), ``csrf_protection`` will need to be set to ``false``. -field_name -.......... - -.. caution:: - - The ``framework.csrf_protection.field_name`` setting is deprecated as - of Symfony 2.4, use ``framework.form.csrf_protection.field_name`` instead. - -**type**: ``string`` **default**: ``"_token"`` - -The name of the hidden field used to render the :ref:`CSRF token `. - esi ~~~ @@ -542,12 +518,6 @@ and ``test`` environments. collect ....... -.. versionadded:: 2.3 - The ``collect`` option was introduced in Symfony 2.3. Previously, when - ``profiler.enabled`` was ``false``, the profiler *was* actually enabled, - but the collectors were disabled. Now, the profiler and the collectors - can be controlled independently. - **type**: ``boolean`` **default**: ``true`` This option configures the way the profiler behaves when it is enabled. @@ -1299,12 +1269,6 @@ fallbacks **type**: ``string|array`` **default**: ``array('en')`` -.. versionadded:: 2.3.25 - The ``fallbacks`` option was introduced in Symfony 2.3.25. Prior - to Symfony 2.3.25, it was called ``fallback`` and only allowed one fallback - language defined as a string. Please note that you can still use the - old ``fallback`` option if you want define only one fallback. - This option is used when the translation key for the current locale wasn't found. @@ -1370,10 +1334,6 @@ cache The service that is used to persist class metadata in a cache. The service has to implement the :class:`Symfony\\Component\\Validator\\Mapping\\Cache\\CacheInterface`. -.. versionadded:: 2.8 - The ``validator.mapping.cache.doctrine.apc`` service was introduced in - Symfony 2.8. - Set this option to ``validator.mapping.cache.doctrine.apc`` to use the APC cache provide from the Doctrine project. @@ -1403,30 +1363,6 @@ If this option is enabled, the `egulias/email-validator`_ library will be used by the :doc:`/reference/constraints/Email` constraint validator. Otherwise, the validator uses a simple regular expression to validate email addresses. -api -... - -**type**: ``string`` - -Starting with Symfony 2.5, the Validator component introduced a new validation -API. The ``api`` option is used to switch between the different implementations: - -``2.5`` - Use the validation API introduced in Symfony 2.5. - -``2.5-bc`` or ``auto`` - If you omit a value or set the ``api`` option to ``2.5-bc`` or ``auto``, - Symfony will use an API implementation that is compatible with both the - legacy ``2.4`` implementation and the ``2.5`` implementation. - -.. note:: - - The support for the native 2.4 API has been dropped since Symfony 2.7. - -To capture these logs in the ``prod`` environment, configure a -:doc:`channel handler ` in ``config_prod.yml`` for -the ``translation`` channel and set its ``level`` to ``debug``. - annotations ~~~~~~~~~~~ @@ -1509,9 +1445,6 @@ If this option is enabled, serialization groups can be defined using annotations name_converter .............. -.. versionadded:: 2.8 - The ``name_converter`` setting was introduced in Symfony 2.8. - **type**: ``string`` The name converter to use. @@ -1541,7 +1474,6 @@ Full Default Configuration csrf_protection: enabled: false - field_name: _token # Deprecated since 2.4, to be removed in 3.0. Use form.csrf_protection.field_name instead # form configuration form: diff --git a/reference/configuration/security.rst b/reference/configuration/security.rst index 11f3d2ec432..c867b1918e4 100644 --- a/reference/configuration/security.rst +++ b/reference/configuration/security.rst @@ -171,7 +171,6 @@ Each part will be explained in the next section. # by default, a session must exist before submitting an authentication request # if false, then Request::hasPreviousSession is not called during authentication - # new in Symfony 2.3 require_previous_session: true remember_me: @@ -242,10 +241,6 @@ Each part will be explained in the next section. ROLE_ADMIN: [ROLE_ORGANIZER, ROLE_USER] ROLE_SUPERADMIN: [ROLE_ADMIN] -.. versionadded:: 2.8 - The ``secret`` option of ``anonymous`` and ``remember_me`` was introduced - in Symfony 2.8. Prior to 2.8, it was called ``key``. - .. _reference-security-firewall-form-login: Form Login Configuration @@ -527,9 +522,5 @@ To use HTTP-Digest authentication you need to provide a realm and a secret: ), )); -.. versionadded:: 2.8 - The ``secret`` option was introduced in Symfony 2.8. Prior to 2.8, it was - called ``key``. - .. _`PBKDF2`: https://en.wikipedia.org/wiki/PBKDF2 .. _`ircmaxell/password-compat`: https://packagist.org/packages/ircmaxell/password-compat diff --git a/reference/configuration/twig.rst b/reference/configuration/twig.rst index 82312333bcb..0a8352816f7 100644 --- a/reference/configuration/twig.rst +++ b/reference/configuration/twig.rst @@ -41,7 +41,6 @@ TwigBundle Configuration ("twig") value: ~ autoescape: ~ - # The following were added in Symfony 2.3. # See http://twig.sensiolabs.org/doc/recipes.html#using-the-template-name-to-set-the-default-escaping-strategy autoescape_service: ~ # Example: '@my_service' autoescape_service_method: ~ # use in combination with autoescape_service option diff --git a/reference/constraints/Bic.rst b/reference/constraints/Bic.rst index 0d4fc9aeba7..3288c2d2b16 100644 --- a/reference/constraints/Bic.rst +++ b/reference/constraints/Bic.rst @@ -1,9 +1,6 @@ Bic === -.. versionadded:: 2.8 - The Bic constraint was introduced in Symfony 2.8. - This constraint is used to ensure that a value has the proper format of a `Business Identifier Code (BIC)`_. BIC is an internationally agreed means to uniquely identify both financial and non-financial institutions. diff --git a/reference/constraints/Callback.rst b/reference/constraints/Callback.rst index 7a11cc206de..c5588bbf2fe 100644 --- a/reference/constraints/Callback.rst +++ b/reference/constraints/Callback.rst @@ -40,8 +40,6 @@ Configuration use Symfony\Component\Validator\Constraints as Assert; use Symfony\Component\Validator\Context\ExecutionContextInterface; - // if you're using the older 2.4 validation API, you'll need this instead - // use Symfony\Component\Validator\ExecutionContextInterface; class Author { @@ -99,8 +97,6 @@ field those errors should be attributed:: // ... use Symfony\Component\Validator\Context\ExecutionContextInterface; - // if you're using the older 2.4 validation API, you'll need this instead - // use Symfony\Component\Validator\ExecutionContextInterface; class Author { @@ -114,18 +110,9 @@ field those errors should be attributed:: // check if the name is actually a fake name if (in_array($this->getFirstName(), $fakeNames)) { - // If you're using the new 2.5 validation API (you probably are!) $context->buildViolation('This name sounds totally fake!') ->atPath('firstName') ->addViolation(); - - // If you're using the old 2.4 validation API - /* - $context->addViolationAt( - 'firstName', - 'This name sounds totally fake!' - ); - */ } } } @@ -143,19 +130,10 @@ have access to the object instance, they receive the object as the first argumen // check if the name is actually a fake name if (in_array($object->getFirstName(), $fakeNames)) { - // If you're using the new 2.5 validation API (you probably are!) $context->buildViolation('This name sounds totally fake!') ->atPath('firstName') ->addViolation() ; - - // If you're using the old 2.4 validation API - /* - $context->addViolationAt( - 'firstName', - 'This name sounds totally fake!' - ); - */ } } @@ -170,8 +148,6 @@ Suppose your validation function is ``Vendor\Package\Validator::validate()``:: namespace Vendor\Package; use Symfony\Component\Validator\Context\ExecutionContextInterface; - // if you're using the older 2.4 validation API, you'll need this instead - // use Symfony\Component\Validator\ExecutionContextInterface; class Validator { @@ -256,8 +232,6 @@ constructor of the Callback constraint:: namespace AppBundle\Entity; use Symfony\Component\Validator\Context\ExecutionContextInterface; - // if you're using the older 2.4 validation API, you'll need this instead - // use Symfony\Component\Validator\ExecutionContextInterface; use Symfony\Component\Validator\Mapping\ClassMetadata; use Symfony\Component\Validator\Constraints as Assert; diff --git a/reference/constraints/Collection.rst b/reference/constraints/Collection.rst index 733b3b9144b..97d6659f745 100644 --- a/reference/constraints/Collection.rst +++ b/reference/constraints/Collection.rst @@ -179,10 +179,6 @@ occur. Required and Optional Field Constraints ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -.. versionadded:: 2.3 - The ``Required`` and ``Optional`` constraints were moved to the namespace - ``Symfony\Component\Validator\Constraints\`` in Symfony 2.3. - Constraints for fields within a collection can be wrapped in the ``Required`` or ``Optional`` constraint to control whether they should always be applied (``Required``) or only applied when the field is present (``Optional``). diff --git a/reference/constraints/Currency.rst b/reference/constraints/Currency.rst index 7349ce51f8a..cd125a42655 100644 --- a/reference/constraints/Currency.rst +++ b/reference/constraints/Currency.rst @@ -1,9 +1,6 @@ Currency ======== -.. versionadded:: 2.3 - The ``Currency`` constraint was introduced in Symfony 2.3. - Validates that a value is a valid `3-letter ISO 4217`_ currency name. +----------------+---------------------------------------------------------------------------+ diff --git a/reference/constraints/EqualTo.rst b/reference/constraints/EqualTo.rst index 950cd9e70b9..836d6cd1284 100644 --- a/reference/constraints/EqualTo.rst +++ b/reference/constraints/EqualTo.rst @@ -1,9 +1,6 @@ EqualTo ======= -.. versionadded:: 2.3 - The ``EqualTo`` constraint was introduced in Symfony 2.3. - Validates that a value is equal to another value, defined in the options. To force that a value is *not* equal, see :doc:`/reference/constraints/NotEqualTo`. diff --git a/reference/constraints/False.rst b/reference/constraints/False.rst index 3a895f5ae3d..53a768a9cc1 100644 --- a/reference/constraints/False.rst +++ b/reference/constraints/False.rst @@ -3,6 +3,6 @@ False .. caution:: - The ``False`` constraint is deprecated since Symfony 2.7 - and will be removed in Symfony 3.0. Use the - :doc:`/reference/constraints/IsFalse` constraint instead. + The ``False`` constraint is deprecated since Symfony 2.7 and removed in + Symfony 3.0. Use the :doc:`/reference/constraints/IsFalse` constraint + instead. diff --git a/reference/constraints/GreaterThan.rst b/reference/constraints/GreaterThan.rst index 95c8726f1fc..8ff9c343e5c 100644 --- a/reference/constraints/GreaterThan.rst +++ b/reference/constraints/GreaterThan.rst @@ -1,9 +1,6 @@ GreaterThan =========== -.. versionadded:: 2.3 - The ``GreaterThan`` constraint was introduced in Symfony 2.3. - Validates that a value is greater than another value, defined in the options. To force that a value is greater than or equal to another value, see :doc:`/reference/constraints/GreaterThanOrEqual`. To force a value is less diff --git a/reference/constraints/GreaterThanOrEqual.rst b/reference/constraints/GreaterThanOrEqual.rst index 7c0f8e7f451..b5510c79f66 100644 --- a/reference/constraints/GreaterThanOrEqual.rst +++ b/reference/constraints/GreaterThanOrEqual.rst @@ -1,9 +1,6 @@ GreaterThanOrEqual ================== -.. versionadded:: 2.3 - The ``GreaterThanOrEqual`` constraint was introduced in Symfony 2.3. - Validates that a value is greater than or equal to another value, defined in the options. To force that a value is greater than another value, see :doc:`/reference/constraints/GreaterThan`. diff --git a/reference/constraints/Iban.rst b/reference/constraints/Iban.rst index 9cc754c7cbb..8775b941320 100644 --- a/reference/constraints/Iban.rst +++ b/reference/constraints/Iban.rst @@ -1,9 +1,6 @@ Iban ==== -.. versionadded:: 2.3 - The Iban constraint was introduced in Symfony 2.3. - This constraint is used to ensure that a bank account number has the proper format of an `International Bank Account Number (IBAN)`_. IBAN is an internationally agreed means of identifying bank accounts across national diff --git a/reference/constraints/IdenticalTo.rst b/reference/constraints/IdenticalTo.rst index 4bf4277b0a9..410df810679 100644 --- a/reference/constraints/IdenticalTo.rst +++ b/reference/constraints/IdenticalTo.rst @@ -1,9 +1,6 @@ IdenticalTo =========== -.. versionadded:: 2.3 - The ``IdenticalTo`` constraint was introduced in Symfony 2.3. - Validates that a value is identical to another value, defined in the options. To force that a value is *not* identical, see :doc:`/reference/constraints/NotIdenticalTo`. diff --git a/reference/constraints/Isbn.rst b/reference/constraints/Isbn.rst index b979aa9f8b3..51151fd945a 100644 --- a/reference/constraints/Isbn.rst +++ b/reference/constraints/Isbn.rst @@ -1,16 +1,6 @@ Isbn ==== -.. versionadded:: 2.3 - The Isbn constraint was introduced in Symfony 2.3. - -.. caution:: - - The ``isbn10`` and ``isbn13`` options are deprecated since Symfony 2.5 - and will be removed in Symfony 3.0. Use the ``type`` option instead. - Furthermore, when using the ``type`` option, lowercase characters are no - longer supported starting in Symfony 2.5, as they are not allowed in ISBNs. - This constraint validates that an `International Standard Book Number (ISBN)`_ is either a valid ISBN-10 or a valid ISBN-13. diff --git a/reference/constraints/Issn.rst b/reference/constraints/Issn.rst index a57832bd698..7e70d3d078f 100644 --- a/reference/constraints/Issn.rst +++ b/reference/constraints/Issn.rst @@ -1,9 +1,6 @@ Issn ==== -.. versionadded:: 2.3 - The Issn constraint was introduced in Symfony 2.3. - Validates that a value is a valid `International Standard Serial Number (ISSN)`_. diff --git a/reference/constraints/LessThan.rst b/reference/constraints/LessThan.rst index 05decac79f9..9bfaefaacfa 100644 --- a/reference/constraints/LessThan.rst +++ b/reference/constraints/LessThan.rst @@ -1,9 +1,6 @@ LessThan ======== -.. versionadded:: 2.3 - The ``LessThan`` constraint was introduced in Symfony 2.3. - Validates that a value is less than another value, defined in the options. To force that a value is less than or equal to another value, see :doc:`/reference/constraints/LessThanOrEqual`. To force a value is greater diff --git a/reference/constraints/LessThanOrEqual.rst b/reference/constraints/LessThanOrEqual.rst index 20633acd4c3..b780aef3510 100644 --- a/reference/constraints/LessThanOrEqual.rst +++ b/reference/constraints/LessThanOrEqual.rst @@ -1,9 +1,6 @@ LessThanOrEqual =============== -.. versionadded:: 2.3 - The ``LessThanOrEqual`` constraint was introduced in Symfony 2.3. - Validates that a value is less than or equal to another value, defined in the options. To force that a value is less than another value, see :doc:`/reference/constraints/LessThan`. diff --git a/reference/constraints/NotEqualTo.rst b/reference/constraints/NotEqualTo.rst index 594d8925726..4b3ac0c3cec 100644 --- a/reference/constraints/NotEqualTo.rst +++ b/reference/constraints/NotEqualTo.rst @@ -1,9 +1,6 @@ NotEqualTo ========== -.. versionadded:: 2.3 - The ``NotEqualTo`` constraint was introduced in Symfony 2.3. - Validates that a value is **not** equal to another value, defined in the options. To force that a value is equal, see :doc:`/reference/constraints/EqualTo`. diff --git a/reference/constraints/NotIdenticalTo.rst b/reference/constraints/NotIdenticalTo.rst index b17137d6212..d8e2a228707 100644 --- a/reference/constraints/NotIdenticalTo.rst +++ b/reference/constraints/NotIdenticalTo.rst @@ -1,9 +1,6 @@ NotIdenticalTo ============== -.. versionadded:: 2.3 - The ``NotIdenticalTo`` constraint was introduced in Symfony 2.3. - Validates that a value is **not** identical to another value, defined in the options. To force that a value is identical, see :doc:`/reference/constraints/IdenticalTo`. diff --git a/reference/constraints/Null.rst b/reference/constraints/Null.rst index fd07a456eec..5eb8ddd9a7a 100644 --- a/reference/constraints/Null.rst +++ b/reference/constraints/Null.rst @@ -3,6 +3,6 @@ Null .. caution:: - The ``Null`` constraint is deprecated since Symfony 2.7 - and will be removed in Symfony 3.0. Use the - :doc:`/reference/constraints/IsNull` constraint instead. + The ``Null`` constraint is deprecated since Symfony 2.7 and removed in + Symfony 3.0. Use the :doc:`/reference/constraints/IsNull` constraint + instead. diff --git a/reference/constraints/True.rst b/reference/constraints/True.rst index ba54ecbd637..e358b8e47d4 100644 --- a/reference/constraints/True.rst +++ b/reference/constraints/True.rst @@ -3,6 +3,6 @@ True .. caution:: - The ``True`` constraint is deprecated since Symfony 2.7 - and will be removed in Symfony 3.0. Use the - :doc:`/reference/constraints/IsTrue` constraint instead. + The ``True`` constraint is deprecated since Symfony 2.7 and removed in + Symfony 3.0. Use the :doc:`/reference/constraints/IsTrue` constraint + instead. diff --git a/reference/constraints/Url.rst b/reference/constraints/Url.rst index 14380b00f94..2de6b989358 100644 --- a/reference/constraints/Url.rst +++ b/reference/constraints/Url.rst @@ -229,9 +229,6 @@ the ``ftp://`` type URLs to be valid, redefine the ``protocols`` array, listing checkDNS ~~~~~~~~ -.. versionadded:: 2.7 - The ``checkDNS`` option was introduced in Symfony 2.7. - **type**: ``boolean`` **default**: ``false`` By default, this constraint just validates the syntax of the given URL. If you @@ -306,9 +303,6 @@ of the ``ANY`` DNS record corresponding to the host associated with the given UR dnsMessage ~~~~~~~~~~ -.. versionadded:: 2.7 - The ``dnsMessage`` option was introduced in Symfony 2.7. - **type**: ``string`` **default**: ``The host could not be resolved.`` This message is shown when the ``checkDNS`` option is set to ``true`` and the diff --git a/reference/dic_tags.rst b/reference/dic_tags.rst index 541dac8bc11..5a9fba64137 100644 --- a/reference/dic_tags.rst +++ b/reference/dic_tags.rst @@ -231,9 +231,6 @@ The tagged service will be removed from the container if auto_alias ---------- -.. versionadded:: 2.7 - The ``auto_alias`` tag was introduced in Symfony 2.7. - **Purpose**: Define aliases based on the value of container parameters Consider the following configuration that defines three different but related @@ -706,9 +703,9 @@ channel when injecting the logger in a service. .. tip:: - If you use MonologBundle 2.4 or higher, you can configure custom channels - in the configuration and retrieve the corresponding logger service from - the service container directly (see :ref:`cookbook-monolog-channels-config`). + You can also configure custom channels in the configuration and retrieve + the corresponding logger service from the service container directly (see + :ref:`cookbook-monolog-channels-config`). .. _dic_tags-monolog-processor: diff --git a/reference/forms/twig_reference.rst b/reference/forms/twig_reference.rst index 1dc7ff7ac46..d0de12242dc 100644 --- a/reference/forms/twig_reference.rst +++ b/reference/forms/twig_reference.rst @@ -180,24 +180,6 @@ obvious (since it'll render the field for you). {{ form_rest(form) }} -.. _reference-forms-twig-enctype: - -form_enctype(view) ------------------- - -.. note:: - - This helper was deprecated in Symfony 2.3 and will be removed in Symfony - 3.0. You should use ``form_start()`` instead. - -If the form contains at least one file upload field, this will render the -required ``enctype="multipart/form-data"`` form attribute. It's always a -good idea to include this in your form tag: - -.. code-block:: html+twig - - - Form Tests Reference -------------------- @@ -331,9 +313,6 @@ done by using a public ``vars`` property on the get('name')->vars['label'] ?> -.. versionadded:: 2.3 - The ``method`` and ``action`` variables were introduced in Symfony 2.3. - +------------------------+-------------------------------------------------------------------------------------+ | Variable | Usage | +========================+=====================================================================================+ @@ -363,12 +342,6 @@ done by using a public ``vars`` property on the | ``required`` | If ``true``, a ``required`` attribute is added to the field to activate HTML5 | | | validation. Additionally, a ``required`` class is added to the label. | +------------------------+-------------------------------------------------------------------------------------+ -| ``max_length`` | Adds a ``maxlength`` HTML attribute to the element. (deprecated as of 2.5, to be | -| | removed in 3.0, use ``attr["maxlength"]`` instead) | -+------------------------+-------------------------------------------------------------------------------------+ -| ``pattern`` | Adds a ``pattern`` HTML attribute to the element. (deprecated as of 2.5, to be | -| | removed in 3.0, use ``attr["pattern"]`` instead) | -+------------------------+-------------------------------------------------------------------------------------+ | ``label`` | The string label that will be rendered. | +------------------------+-------------------------------------------------------------------------------------+ | ``multipart`` | If ``true``, ``form_enctype`` will render ``enctype="multipart/form-data"``. | diff --git a/reference/forms/types.rst b/reference/forms/types.rst index 9e8426de693..b5afd300a63 100644 --- a/reference/forms/types.rst +++ b/reference/forms/types.rst @@ -4,13 +4,6 @@ Form Types Reference ==================== -.. versionadded:: 2.8 - To denote the form type, you have to use the fully qualified class name - like - ``TextType::class`` in PHP 5.5+ or ``Symfony\Component\Form\Extension\Core\Type\TextType``. - Before Symfony 2.8, you could use an alias for each type like ``text`` or - ``date``. The old alias syntax will still work until Symfony 3.0. For more details, - see the `2.8 UPGRADE Log`_. - .. toctree:: :maxdepth: 1 :hidden: @@ -65,5 +58,3 @@ Supported Field Types The following field types are natively available in Symfony: .. include:: /reference/forms/types/map.rst.inc - -.. _`2.8 UPGRADE Log`: https://github.com/symfony/symfony/blob/2.8/UPGRADE-2.8.md#form diff --git a/reference/forms/types/birthday.rst b/reference/forms/types/birthday.rst index eb605d661aa..b9b39d65070 100644 --- a/reference/forms/types/birthday.rst +++ b/reference/forms/types/birthday.rst @@ -41,7 +41,6 @@ option defaults to 120 years ago to the current year. | | - `invalid_message`_ | | | - `invalid_message_parameters`_ | | | - `mapped`_ | -| | - `read_only`_ (deprecated as of 2.8) | +----------------------+-------------------------------------------------------------------------------+ | Parent type | :doc:`DateType ` | +----------------------+-------------------------------------------------------------------------------+ @@ -69,10 +68,6 @@ These options inherit from the :doc:`DateType `: placeholder ~~~~~~~~~~~ -.. versionadded:: 2.6 - The ``placeholder`` option was introduced in Symfony 2.6 and replaces - ``empty_value``, which is available prior to 2.6. - **type**: ``string`` | ``array`` If your widget option is set to ``choice``, then this field will be represented @@ -117,5 +112,3 @@ These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/invalid_message_parameters.rst.inc .. include:: /reference/forms/types/options/mapped.rst.inc - -.. include:: /reference/forms/types/options/read_only.rst.inc diff --git a/reference/forms/types/button.rst b/reference/forms/types/button.rst index e4f87a9c6f1..6cc4e864247 100644 --- a/reference/forms/types/button.rst +++ b/reference/forms/types/button.rst @@ -4,9 +4,6 @@ ButtonType Field ================ -.. versionadded:: 2.3 - The ``ButtonType`` was introduced in Symfony 2.3. - A simple, non-responsive button. +----------------------+----------------------------------------------------------------------+ diff --git a/reference/forms/types/checkbox.rst b/reference/forms/types/checkbox.rst index 38cc22a8b3c..8f87683f180 100644 --- a/reference/forms/types/checkbox.rst +++ b/reference/forms/types/checkbox.rst @@ -24,7 +24,6 @@ true, if the box is unchecked, the value will be set to false. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------+ | Parent type | :doc:`FormType ` | @@ -78,8 +77,6 @@ These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc Form Variables diff --git a/reference/forms/types/choice.rst b/reference/forms/types/choice.rst index 52063eb0c92..aaf48529124 100644 --- a/reference/forms/types/choice.rst +++ b/reference/forms/types/choice.rst @@ -13,7 +13,6 @@ To use this field, you must specify *either* ``choices`` or ``choice_loader`` op | Rendered as | can be various tags (see below) | +-------------+------------------------------------------------------------------------------+ | Options | - `choices`_ | -| | - `choices_as_values`_ | | | - `choice_loader`_ | | | - `choice_label`_ | | | - `choice_attr`_ | @@ -24,7 +23,6 @@ To use this field, you must specify *either* ``choices`` or ``choice_loader`` op | | - `group_by`_ | | | - `choice_value`_ | | | - `choice_name`_ | -| | - `choice_list`_ (deprecated) | +-------------+------------------------------------------------------------------------------+ | Overridden | - `compound`_ | | options | - `empty_data`_ | @@ -39,7 +37,6 @@ To use this field, you must specify *either* ``choices`` or ``choice_loader`` op | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------------+ | Parent type | :doc:`FormType ` | @@ -62,8 +59,6 @@ the ``choices`` option:: 'Yes' => true, 'No' => false, ), - // *this line is important* - 'choices_as_values' => true, )); This will create a ``select`` drop-down like this: @@ -76,14 +71,6 @@ if the starting data for this field is ``true``, then ``Yes`` will be auto-selec In other words, the **value** of each item is the value you want to get/set in PHP code, while the **key** is what will be shown to the user. -.. caution:: - - The ``choices_as_values`` *must* be set to ``true`` in all cases. This activates - the "new" choice type API, which was introduced in Symfony 2.7. If you omit this - option (or set it to ``false``), you'll activate the old API, which is deprecated - and will be removed in 3.0. To read about the old API, read an older version of - the docs. - Advanced Example (with Objects!) -------------------------------- @@ -102,7 +89,6 @@ method:: new Category('Cat3'), new Category('Cat4'), ], - 'choices_as_values' => true, 'choice_label' => function($category, $key, $index) { /** @var Category $category */ return strtoupper($category->getName()); @@ -154,7 +140,6 @@ You can easily "group" options in a select by passing a multi-dimensional choice 'Discontinued' => 'stock_discontinued', ] ], - 'choices_as_values' => true, ); .. image:: /images/reference/form/choice-example4.png @@ -179,58 +164,11 @@ is the item's label and the array value is the item's value:: $builder->add('inStock', ChoiceType::class, array( 'choices' => array('In Stock' => true, 'Out of Stock' => false), - // always include this - 'choices_as_values' => true, - )); - -choices_as_values -~~~~~~~~~~~~~~~~~ - -**type**: ``boolean`` **default**: false - -.. versionadded:: 2.7 - - The ``choices_as_values`` option was introduced in Symfony 2.7. - -The ``choices_as_values`` option was added to keep backward compatibility with the -*old* way of handling the ``choices`` option. When set to ``false`` (or omitted), -the choice keys are used as the underlying value and the choice values are shown -to the user. - -* Before 2.7 (and deprecated now):: - - $builder->add('gender', 'choice', array( - // Shows "Male" to the user, returns "m" when selected - 'choices' => array('m' => 'Male', 'f' => 'Female'), - // before 2.7, this option didn't actually exist, but the - // behavior was equivalent to setting this to false in 2.7. - 'choices_as_values' => false, - )); - -* Since 2.7:: - - $builder->add('gender', ChoiceType::class, array( - // Shows "Male" to the user, returns "m" when selected - 'choices' => array('Male' => 'm', 'Female' => 'f'), - 'choices_as_values' => true, - )); - -In Symfony 3.0, the ``choices_as_values`` option doesn't exist, but the ``choice`` -type behaves as if it were set to true: - -* Default for 3.0:: - - $builder->add('gender', ChoiceType::class, array( - 'choices' => array('Male' => 'm', 'Female' => 'f'), )); choice_loader ~~~~~~~~~~~~~ -.. versionadded:: 2.7 - - The ``choice_loader`` option was added in Symfony 2.7. - **type**: :class:`Symfony\\Component\\Form\\ChoiceList\\Loader\\ChoiceLoaderInterface` The ``choice_loader`` can be used to only partially load the choices in cases where @@ -259,50 +197,6 @@ would replace the ``choices`` option. .. include:: /reference/forms/types/options/choice_name.rst.inc - -choice_list -~~~~~~~~~~~ - -.. caution:: - - The ``choice_list`` option of ChoiceType was deprecated in Symfony 2.7. - You should use `choices`_ or `choice_loader`_ now. - -**type**: :class:`Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\ChoiceListInterface` - -This is one way of specifying the options to be used for this field. -The ``choice_list`` option must be an instance of the ``ChoiceListInterface``. -For more advanced cases, a custom class that implements the interface -can be created to supply the choices. - -With this option you can also allow float values to be selected as data. -For example:: - - use Symfony\Component\Form\Extension\Core\ChoiceList\ChoiceList; - use Symfony\Component\Form\Extension\Core\Type\ChoiceType; - - // ... - $builder->add('status', ChoiceType::class, array( - 'choice_list' => new ChoiceList( - array(1, 0.5, 0.1), - array('Full', 'Half', 'Almost empty') - ) - )); - -The ``status`` field created by the code above will be rendered as: - -.. code-block:: html - - - -But don't be confused! If ``Full`` is selected (value ``0`` in HTML), ``1`` -will be returned in your form. If ``Almost empty`` is selected (value ``2`` -in HTML), ``0.1`` will be returned. - Overridden Options ------------------ @@ -357,8 +251,6 @@ These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc Field Variables diff --git a/reference/forms/types/collection.rst b/reference/forms/types/collection.rst index 050f9c989af..f297005b75e 100644 --- a/reference/forms/types/collection.rst +++ b/reference/forms/types/collection.rst @@ -23,8 +23,7 @@ photos). | | - `prototype_name`_ | +-------------+-----------------------------------------------------------------------------+ | Inherited | - `by_reference`_ | -| options | - `cascade_validation`_ | -| | - `empty_data`_ | +| options | - `empty_data`_ | | | - `error_bubbling`_ | | | - `error_mapping`_ | | | - `label`_ | @@ -281,10 +280,6 @@ the empty values will be kept. entry_options ~~~~~~~~~~~~~ -.. versionadded:: 2.8 - The ``entry_options`` option was introduced in Symfony 2.8 in favor of - ``options``, which is available prior to 2.8. - **type**: ``array`` **default**: ``array()`` This is the array that's passed to the form type specified in the `entry_type`_ @@ -312,10 +307,6 @@ type:: entry_type ~~~~~~~~~~ -.. versionadded:: 2.8 - The ``entry_type`` option was introduced in Symfony 2.8 and replaces - ``type``, which is available prior to 2.8. - **type**: ``string`` or :class:`Symfony\\Component\\Form\\FormTypeInterface` **required** This is the field type for each item in this collection (e.g. ``TextType``, @@ -382,8 +373,6 @@ Not all options are listed here - only the most applicable to this type: .. include:: /reference/forms/types/options/by_reference.rst.inc -.. include:: /reference/forms/types/options/cascade_validation.rst.inc - .. include:: /reference/forms/types/options/empty_data.rst.inc :end-before: DEFAULT_PLACEHOLDER diff --git a/reference/forms/types/country.rst b/reference/forms/types/country.rst index 43f17712d0a..9caeb5787c1 100644 --- a/reference/forms/types/country.rst +++ b/reference/forms/types/country.rst @@ -42,7 +42,6 @@ the option manually, but then you should just use the ``ChoiceType`` directly. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+-----------------------------------------------------------------------+ | Parent type | :doc:`ChoiceType ` | @@ -104,6 +103,4 @@ The actual default value of this option depends on other field options: .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc diff --git a/reference/forms/types/currency.rst b/reference/forms/types/currency.rst index e6456bb3e63..c80ba61bc50 100644 --- a/reference/forms/types/currency.rst +++ b/reference/forms/types/currency.rst @@ -34,7 +34,6 @@ manually, but then you should just use the ``ChoiceType`` directly. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------+ | Parent type | :doc:`ChoiceType ` | @@ -93,8 +92,6 @@ The actual default value of this option depends on other field options: .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc .. _`3-letter ISO 4217`: https://en.wikipedia.org/wiki/ISO_4217 diff --git a/reference/forms/types/date.rst b/reference/forms/types/date.rst index 0e075b9b63c..720ae9e05e9 100644 --- a/reference/forms/types/date.rst +++ b/reference/forms/types/date.rst @@ -42,7 +42,6 @@ day and year) or three select boxes (see the `widget`_ option). | | - `invalid_message`_ | | | - `invalid_message_parameters`_ | | | - `mapped`_ | -| | - `read_only`_ (deprecated as of 2.8) | +----------------------+-----------------------------------------------------------------------------+ | Parent type | :doc:`FormType ` | +----------------------+-----------------------------------------------------------------------------+ @@ -167,8 +166,6 @@ These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc - Field Variables --------------- diff --git a/reference/forms/types/datetime.rst b/reference/forms/types/datetime.rst index e8c66a8cafc..0b341795263 100644 --- a/reference/forms/types/datetime.rst +++ b/reference/forms/types/datetime.rst @@ -45,7 +45,6 @@ the data can be a ``DateTime`` object, a string, a timestamp or an array. | | - `invalid_message`_ | | | - `invalid_message_parameters`_ | | | - `mapped`_ | -| | - `read_only`_ (deprecated as of 2.8) | +----------------------+-----------------------------------------------------------------------------+ | Parent type | :doc:`FormType ` | +----------------------+-----------------------------------------------------------------------------+ @@ -74,10 +73,6 @@ date_widget placeholder ~~~~~~~~~~~ -.. versionadded:: 2.6 - The ``placeholder`` option was introduced in Symfony 2.6 and replaces - ``empty_value``, which is available prior to 2.6. - **type**: ``string`` | ``array`` If your widget option is set to ``choice``, then this field will be represented @@ -199,8 +194,6 @@ These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc - Field Variables --------------- diff --git a/reference/forms/types/email.rst b/reference/forms/types/email.rst index 780bc4973c0..70ee3e6036e 100644 --- a/reference/forms/types/email.rst +++ b/reference/forms/types/email.rst @@ -19,8 +19,6 @@ The ``EmailType`` field is a text field that is rendered using the HTML5 | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `max_length`_ (deprecated as of 2.5) | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | | | - `trim`_ | +-------------+---------------------------------------------------------------------+ @@ -58,10 +56,6 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/max_length.rst.inc - -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc .. include:: /reference/forms/types/options/trim.rst.inc diff --git a/reference/forms/types/entity.rst b/reference/forms/types/entity.rst index 6db1799c6a5..86ca95e54c3 100644 --- a/reference/forms/types/entity.rst +++ b/reference/forms/types/entity.rst @@ -40,7 +40,6 @@ objects from the database. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------+ | Parent type | :doc:`ChoiceType ` | @@ -126,10 +125,6 @@ or the short alias name (as shown prior). choice_label ~~~~~~~~~~~~ -.. versionadded:: 2.7 - The ``choice_label`` option was introduced in Symfony 2.7. Prior to Symfony - 2.7, it was called ``property`` (which has the same functionality). - **type**: ``string`` or ``callable`` This is the property that should be used for displaying the entities as text in @@ -268,6 +263,4 @@ The actual default value of this option depends on other field options: .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc diff --git a/reference/forms/types/file.rst b/reference/forms/types/file.rst index 0c84aca89f8..8ebacb16020 100644 --- a/reference/forms/types/file.rst +++ b/reference/forms/types/file.rst @@ -22,7 +22,6 @@ The ``FileType`` represents a file input in your form. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+---------------------------------------------------------------------+ | Parent type | :doc:`FormType ` | @@ -132,8 +131,6 @@ These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc Form Variables diff --git a/reference/forms/types/form.rst b/reference/forms/types/form.rst index 01f1782ec40..448e110bd40 100644 --- a/reference/forms/types/form.rst +++ b/reference/forms/types/form.rst @@ -11,7 +11,6 @@ on all types for which ``FormType`` is the parent. | Options | - `action`_ | | | - `allow_extra_fields`_ | | | - `by_reference`_ | -| | - `cascade_validation`_ (deprecated as of 2.8) | | | - `compound`_ | | | - `constraints`_ | | | - `data`_ | @@ -26,12 +25,9 @@ on all types for which ``FormType`` is the parent. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `max_length`_ (deprecated as of 2.5) | | | - `method`_ | -| | - `pattern`_ (deprecated as of 2.5) | | | - `post_max_size_message`_ | | | - `property_path`_ | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | | | - `trim`_ | +-----------+--------------------------------------------------------------------+ @@ -67,8 +63,6 @@ option on the form. .. include:: /reference/forms/types/options/by_reference.rst.inc -.. include:: /reference/forms/types/options/cascade_validation.rst.inc - .. include:: /reference/forms/types/options/compound.rst.inc .. include:: /reference/forms/types/options/constraints.rst.inc @@ -114,26 +108,16 @@ The actual default value of this option depends on other field options: .. include:: /reference/forms/types/options/mapped.rst.inc -.. _reference-form-option-max_length: - -.. include:: /reference/forms/types/options/max_length.rst.inc - .. _form-option-method: .. include:: /reference/forms/types/options/method.rst.inc -.. _reference-form-option-pattern: - -.. include:: /reference/forms/types/options/pattern.rst.inc - .. include:: /reference/forms/types/options/post_max_size_message.rst.inc .. _reference-form-option-property-path: .. include:: /reference/forms/types/options/property_path.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc - .. _reference-form-option-required: .. include:: /reference/forms/types/options/required.rst.inc diff --git a/reference/forms/types/integer.rst b/reference/forms/types/integer.rst index fbd1c43a779..1b87d8f690e 100644 --- a/reference/forms/types/integer.rst +++ b/reference/forms/types/integer.rst @@ -34,7 +34,6 @@ integers. By default, all non-integer values (e.g. 6.78) will round down | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+-----------------------------------------------------------------------+ | Parent type | :doc:`FormType ` | @@ -116,6 +115,4 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc diff --git a/reference/forms/types/language.rst b/reference/forms/types/language.rst index 80e2ea4bc4a..bf584bc74f6 100644 --- a/reference/forms/types/language.rst +++ b/reference/forms/types/language.rst @@ -43,7 +43,6 @@ manually, but then you should just use the ``ChoiceType`` directly. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------+ | Parent type | :doc:`ChoiceType ` | @@ -105,8 +104,6 @@ The actual default value of this option depends on other field options: .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc .. _`International Components for Unicode`: http://site.icu-project.org diff --git a/reference/forms/types/locale.rst b/reference/forms/types/locale.rst index 5d5c0984bd8..eebdf10a237 100644 --- a/reference/forms/types/locale.rst +++ b/reference/forms/types/locale.rst @@ -45,7 +45,6 @@ manually, but then you should just use the ``ChoiceType`` directly. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------+ | Parent type | :doc:`ChoiceType ` | @@ -107,8 +106,6 @@ The actual default value of this option depends on other field options: .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc .. _`ISO 639-1`: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes diff --git a/reference/forms/types/money.rst b/reference/forms/types/money.rst index c4a9057c8c0..3f6af5941ef 100644 --- a/reference/forms/types/money.rst +++ b/reference/forms/types/money.rst @@ -33,7 +33,6 @@ how the input and output of the data is handled. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+---------------------------------------------------------------------+ | Parent type | :doc:`FormType ` | @@ -83,10 +82,6 @@ be set back on your object. scale ~~~~~ -.. versionadded:: 2.7 - The ``scale`` option was introduced in Symfony 2.7. Prior to Symfony 2.7, - it was known as ``precision``. - **type**: ``integer`` **default**: ``2`` If, for some reason, you need some scale other than 2 decimal places, @@ -132,8 +127,6 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc Form Variables diff --git a/reference/forms/types/number.rst b/reference/forms/types/number.rst index d914ab5db0b..de5ae737aba 100644 --- a/reference/forms/types/number.rst +++ b/reference/forms/types/number.rst @@ -29,7 +29,6 @@ that you want to use for your number. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+----------------------------------------------------------------------+ | Parent type | :doc:`FormType ` | @@ -111,6 +110,4 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc diff --git a/reference/forms/types/options/action.rst.inc b/reference/forms/types/options/action.rst.inc index dcc557a717f..a878355cc38 100644 --- a/reference/forms/types/options/action.rst.inc +++ b/reference/forms/types/options/action.rst.inc @@ -1,9 +1,6 @@ action ~~~~~~ -.. versionadded:: 2.3 - The ``action`` option was introduced in Symfony 2.3. - **type**: ``string`` **default**: empty string This option specifies where to send the form's data on submission (usually diff --git a/reference/forms/types/options/cascade_validation.rst.inc b/reference/forms/types/options/cascade_validation.rst.inc deleted file mode 100644 index 2136111fc80..00000000000 --- a/reference/forms/types/options/cascade_validation.rst.inc +++ /dev/null @@ -1,25 +0,0 @@ -cascade_validation -~~~~~~~~~~~~~~~~~~ - -.. caution:: - - The ``cascade_validation`` option has been deprecated in Symfony 2.8 and will be removed - in 3.0. Instead, use the ``Valid`` constraint in your model to cascade validation. Be aware - of the fact that the ``validation_group`` option will not be considered for child forms. - -**type**: ``boolean`` **default**: ``false`` - -Set this option to ``true`` to force validation on embedded form types. -For example, if you have a ``ProductType`` with an embedded ``CategoryType``, -setting ``cascade_validation`` to ``true`` on ``ProductType`` will cause -the data from ``CategoryType`` to also be validated. - -.. tip:: - - Instead of using this option, it is recommended that you use the :doc:`Valid ` - constraint in your model to force validation on a child object stored - on a property. This cascades only the validation but not the use of - the :ref:`validation_groups ` option on child forms. You can read more - about this in the section about :ref:`Embedding a Single Object `. - -.. include:: /reference/forms/types/options/_error_bubbling_hint.rst.inc diff --git a/reference/forms/types/options/choice_attr.rst.inc b/reference/forms/types/options/choice_attr.rst.inc index 4b31fc3deb8..4dcfe601881 100644 --- a/reference/forms/types/options/choice_attr.rst.inc +++ b/reference/forms/types/options/choice_attr.rst.inc @@ -1,9 +1,6 @@ choice_attr ~~~~~~~~~~~ -.. versionadded:: 2.7 - The ``choice_attr`` option was introduced in Symfony 2.7. - **type**: ``array``, ``callable`` or ``string`` **default**: ``array()`` Use this to add additional HTML attributes to each choice. This can be an array diff --git a/reference/forms/types/options/choice_label.rst.inc b/reference/forms/types/options/choice_label.rst.inc index ab6bd8b8606..b400c63249d 100644 --- a/reference/forms/types/options/choice_label.rst.inc +++ b/reference/forms/types/options/choice_label.rst.inc @@ -1,9 +1,6 @@ choice_label ~~~~~~~~~~~~ -.. versionadded:: 2.7 - The ``choice_label`` option was introduced in Symfony 2.7. - **type**: ``callable`` or ``string`` **default**: ``null`` Normally, the array key of each item in the ``choices`` option is used as the diff --git a/reference/forms/types/options/choice_name.rst.inc b/reference/forms/types/options/choice_name.rst.inc index 45a228489a3..341e0a686fb 100644 --- a/reference/forms/types/options/choice_name.rst.inc +++ b/reference/forms/types/options/choice_name.rst.inc @@ -1,9 +1,6 @@ choice_name ~~~~~~~~~~~ -.. versionadded:: 2.7 - The ``choice_name`` option was introduced in Symfony 2.7. - **type**: ``callable`` or ``string`` **default**: ``null`` Controls the internal field name of the choice. You normally don't care about this, diff --git a/reference/forms/types/options/choice_translation_domain.rst.inc b/reference/forms/types/options/choice_translation_domain.rst.inc index 1d42f222e2e..ebd6329eb04 100644 --- a/reference/forms/types/options/choice_translation_domain.rst.inc +++ b/reference/forms/types/options/choice_translation_domain.rst.inc @@ -1,9 +1,6 @@ choice_translation_domain ~~~~~~~~~~~~~~~~~~~~~~~~~ -.. versionadded:: 2.7 - The ``choice_translation_domain`` option was introduced in Symfony 2.7. - **type**: ``string``, ``boolean`` or ``null`` This option determines if the choice values should be translated and in which diff --git a/reference/forms/types/options/choice_value.rst.inc b/reference/forms/types/options/choice_value.rst.inc index fda5a4e7542..d2616fbfd27 100644 --- a/reference/forms/types/options/choice_value.rst.inc +++ b/reference/forms/types/options/choice_value.rst.inc @@ -1,9 +1,6 @@ choice_value ~~~~~~~~~~~~ -.. versionadded:: 2.7 - The ``choice_value`` option was introduced in Symfony 2.7. - **type**: ``callable`` or ``string`` **default**: ``null`` Returns the string "value" for each choice. This is used in the ``value`` attribute diff --git a/reference/forms/types/options/group_by.rst.inc b/reference/forms/types/options/group_by.rst.inc index 4492c3e5dd9..f5047145057 100644 --- a/reference/forms/types/options/group_by.rst.inc +++ b/reference/forms/types/options/group_by.rst.inc @@ -1,9 +1,6 @@ group_by ~~~~~~~~ -.. versionadded:: 2.7 - The ``group_by`` option was introduced in Symfony 2.7. - **type**: ``array``, ``callable`` or ``string`` **default**: ``null`` You can easily "group" options in a select simply by passing a multi-dimensional diff --git a/reference/forms/types/options/inherit_data.rst.inc b/reference/forms/types/options/inherit_data.rst.inc index c65ff78c7e3..716952bbecd 100644 --- a/reference/forms/types/options/inherit_data.rst.inc +++ b/reference/forms/types/options/inherit_data.rst.inc @@ -1,10 +1,6 @@ inherit_data ~~~~~~~~~~~~ -.. versionadded:: 2.3 - The ``inherit_data`` option was introduced in Symfony 2.3. Before, it - was known as ``virtual``. - **type**: ``boolean`` **default**: ``false`` This option determines if the form will inherit data from its parent form. diff --git a/reference/forms/types/options/max_length.rst.inc b/reference/forms/types/options/max_length.rst.inc deleted file mode 100644 index c108451bed0..00000000000 --- a/reference/forms/types/options/max_length.rst.inc +++ /dev/null @@ -1,17 +0,0 @@ -max_length -~~~~~~~~~~ - -.. caution:: - - The ``max_length`` option was deprecated in Symfony 2.5 and will be removed - in Symfony 3.0. Use the ``attr`` option instead by setting it to an array - with a ``maxlength`` key. - -**type**: ``integer`` **default**: ``null`` - -If this option is not null, an attribute ``maxlength`` is added, which -is used by some browsers to limit the amount of text in a field. - -This is just a browser validation, so data must still be validated -server-side. - diff --git a/reference/forms/types/options/method.rst.inc b/reference/forms/types/options/method.rst.inc index 55cf3118775..b333fef8d6c 100644 --- a/reference/forms/types/options/method.rst.inc +++ b/reference/forms/types/options/method.rst.inc @@ -1,9 +1,6 @@ method ~~~~~~ -.. versionadded:: 2.3 - The ``method`` option was introduced in Symfony 2.3. - **type**: ``string`` **default**: ``POST`` This option specifies the HTTP method used to submit the form's data. Its diff --git a/reference/forms/types/options/pattern.rst.inc b/reference/forms/types/options/pattern.rst.inc deleted file mode 100644 index 0f8f0f237e8..00000000000 --- a/reference/forms/types/options/pattern.rst.inc +++ /dev/null @@ -1,24 +0,0 @@ -pattern -~~~~~~~ - -.. caution:: - - The ``pattern`` option was deprecated in Symfony 2.5 and will be removed - in Symfony 3.0. Use the ``attr`` option instead by setting it to an array - with a ``pattern`` key. - -**type**: ``string`` **default**: ``null`` - -This adds an HTML5 ``pattern`` attribute to restrict the field input by -a given regular expression. - -.. caution:: - - The ``pattern`` attribute provides client-side validation for convenience - purposes only and must not be used as a replacement for reliable - server-side validation. - -.. note:: - - When using validation constraints, this option is set automatically - for some constraints to match the server-side validation. diff --git a/reference/forms/types/options/placeholder.rst.inc b/reference/forms/types/options/placeholder.rst.inc index ad947dd0e08..a486db35639 100644 --- a/reference/forms/types/options/placeholder.rst.inc +++ b/reference/forms/types/options/placeholder.rst.inc @@ -1,10 +1,6 @@ placeholder ~~~~~~~~~~~ -.. versionadded:: 2.3 - Since Symfony 2.3, empty values are also supported if the ``expanded`` - option is set to true. - **type**: ``string`` or ``boolean`` This option determines whether or not a special "empty" option (e.g. "Choose diff --git a/reference/forms/types/options/preferred_choices.rst.inc b/reference/forms/types/options/preferred_choices.rst.inc index feee7351ead..0941d23eb73 100644 --- a/reference/forms/types/options/preferred_choices.rst.inc +++ b/reference/forms/types/options/preferred_choices.rst.inc @@ -21,9 +21,6 @@ you can list the most popular on top, like Bork Bork and Pirate:: 'preferred_choices' => array('muppets', 'arr') )); -.. versionadded:: 2.7 - Setting a callable or propery path was introduced in Symfony 2.7. - This options can also be a callback function to give you more flexibility. This might be especially useful if your values are objects:: diff --git a/reference/forms/types/options/read_only.rst.inc b/reference/forms/types/options/read_only.rst.inc deleted file mode 100644 index d19de30612b..00000000000 --- a/reference/forms/types/options/read_only.rst.inc +++ /dev/null @@ -1,12 +0,0 @@ -read_only -~~~~~~~~~ - -.. caution:: - - The ``read_only`` option has been deprecated and will be removed in 3.0. - Instead, use the ``attr`` option by setting it to an array with a ``readonly`` key. - -**type**: ``boolean`` **default**: ``false`` - -If this option is true, the field will be rendered with the ``readonly`` -attribute so that the field is not editable. diff --git a/reference/forms/types/options/scale.rst.inc b/reference/forms/types/options/scale.rst.inc index 82df7d60d3c..49d038bc686 100644 --- a/reference/forms/types/options/scale.rst.inc +++ b/reference/forms/types/options/scale.rst.inc @@ -1,10 +1,6 @@ scale ~~~~~ -.. versionadded:: 2.7 - The ``scale`` option was introduced in Symfony 2.7. Prior to Symfony 2.7, - it was known as ``precision``. - **type**: ``integer`` **default**: Locale-specific (usually around ``3``) This specifies how many decimals will be allowed until the field rounds diff --git a/reference/forms/types/password.rst b/reference/forms/types/password.rst index f08fb0546f0..b2491a31015 100644 --- a/reference/forms/types/password.rst +++ b/reference/forms/types/password.rst @@ -22,8 +22,6 @@ The ``PasswordType`` field renders an input password text box. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `max_length`_ (deprecated as of 2.5) | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------+ | Parent type | :doc:`TextType ` | @@ -87,8 +85,4 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/max_length.rst.inc - -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc diff --git a/reference/forms/types/percent.rst b/reference/forms/types/percent.rst index 58e1dca2d64..a2156d63d13 100644 --- a/reference/forms/types/percent.rst +++ b/reference/forms/types/percent.rst @@ -32,7 +32,6 @@ This field adds a percentage sign "``%``" after the input box. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+-----------------------------------------------------------------------+ | Parent type | :doc:`FormType ` | @@ -46,10 +45,6 @@ Field Options scale ~~~~~ -.. versionadded:: 2.7 - The ``scale`` option was introduced in Symfony 2.7. Prior to Symfony 2.7, - it was known as ``precision``. - **type**: ``integer`` **default**: ``0`` By default, the input numbers are rounded. To allow for more decimal places, @@ -113,6 +108,4 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc diff --git a/reference/forms/types/radio.rst b/reference/forms/types/radio.rst index f06ffd55340..87cbbdfda5a 100644 --- a/reference/forms/types/radio.rst +++ b/reference/forms/types/radio.rst @@ -31,7 +31,6 @@ If you want to have a boolean field, use :doc:`CheckboxType ` | @@ -66,8 +65,6 @@ These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc Form Variables diff --git a/reference/forms/types/range.rst b/reference/forms/types/range.rst index 77d057c0bad..a59082adb78 100644 --- a/reference/forms/types/range.rst +++ b/reference/forms/types/range.rst @@ -4,9 +4,6 @@ RangeType Field =============== -.. versionadded:: 2.8 - The ``range`` type was introduced in Symfony 2.8. - The ``RangeType`` field is a slider that is rendered using the HTML5 ```` tag. diff --git a/reference/forms/types/reset.rst b/reference/forms/types/reset.rst index f2ef95659cd..60b7d365fac 100644 --- a/reference/forms/types/reset.rst +++ b/reference/forms/types/reset.rst @@ -4,9 +4,6 @@ ResetType Field =============== -.. versionadded:: 2.3 - The ``ResetType`` was introduced in Symfony 2.3. - A button that resets all fields to their original values. +----------------------+---------------------------------------------------------------------+ diff --git a/reference/forms/types/search.rst b/reference/forms/types/search.rst index bdf569fcb4b..37f7f69da44 100644 --- a/reference/forms/types/search.rst +++ b/reference/forms/types/search.rst @@ -20,8 +20,6 @@ Read about the input search field at `DiveIntoHTML5.info`_ | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `max_length`_ (deprecated as of 2.5) | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | | | - `trim`_ | +-------------+----------------------------------------------------------------------+ @@ -57,10 +55,6 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/max_length.rst.inc - -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc .. include:: /reference/forms/types/options/trim.rst.inc diff --git a/reference/forms/types/submit.rst b/reference/forms/types/submit.rst index 17f8861138d..c87a2f472cf 100644 --- a/reference/forms/types/submit.rst +++ b/reference/forms/types/submit.rst @@ -4,9 +4,6 @@ SubmitType Field ================ -.. versionadded:: 2.3 - The ``SubmitType`` type was introduced in Symfony 2.3. - A submit button. +----------------------+----------------------------------------------------------------------+ diff --git a/reference/forms/types/text.rst b/reference/forms/types/text.rst index bb8d32740c4..fd61506659d 100644 --- a/reference/forms/types/text.rst +++ b/reference/forms/types/text.rst @@ -18,8 +18,6 @@ The TextType field represents the most basic input text field. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `max_length`_ (deprecated as of 2.5) | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | | | - `trim`_ | +-------------+--------------------------------------------------------------------+ @@ -60,10 +58,6 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/max_length.rst.inc - -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc .. include:: /reference/forms/types/options/trim.rst.inc diff --git a/reference/forms/types/textarea.rst b/reference/forms/types/textarea.rst index 38990ae3883..6adc905208b 100644 --- a/reference/forms/types/textarea.rst +++ b/reference/forms/types/textarea.rst @@ -19,8 +19,6 @@ Renders a ``textarea`` HTML element. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `max_length`_ (deprecated as of 2.5) | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | | | - `trim`_ | +-------------+------------------------------------------------------------------------+ @@ -60,10 +58,6 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/max_length.rst.inc - -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc .. include:: /reference/forms/types/options/trim.rst.inc diff --git a/reference/forms/types/time.rst b/reference/forms/types/time.rst index d2770b49ca9..a4e54b75660 100644 --- a/reference/forms/types/time.rst +++ b/reference/forms/types/time.rst @@ -39,7 +39,6 @@ stored as a ``DateTime`` object, a string, a timestamp or an array. | | - `invalid_message`_ | | | - `invalid_message_parameters`_ | | | - `mapped`_ | -| | - `read_only`_ (deprecated as of 2.8) | +----------------------+-----------------------------------------------------------------------------+ | Parent type | FormType | +----------------------+-----------------------------------------------------------------------------+ @@ -202,8 +201,6 @@ These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc - Form Variables -------------- diff --git a/reference/forms/types/timezone.rst b/reference/forms/types/timezone.rst index a25247d4ddb..296829f66b0 100644 --- a/reference/forms/types/timezone.rst +++ b/reference/forms/types/timezone.rst @@ -38,7 +38,6 @@ manually, but then you should just use the ``ChoiceType`` directly. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | +-------------+------------------------------------------------------------------------+ | Parent type | :doc:`ChoiceType ` | @@ -100,6 +99,4 @@ The actual default value of this option depends on other field options: .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc diff --git a/reference/forms/types/url.rst b/reference/forms/types/url.rst index 626f6f33d07..8c58f007e1d 100644 --- a/reference/forms/types/url.rst +++ b/reference/forms/types/url.rst @@ -22,8 +22,6 @@ have a protocol. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | -| | - `max_length`_ (deprecated as of 2.5) | -| | - `read_only`_ (deprecated as of 2.8) | | | - `required`_ | | | - `trim`_ | +-------------+-------------------------------------------------------------------+ @@ -73,10 +71,6 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc -.. include:: /reference/forms/types/options/max_length.rst.inc - -.. include:: /reference/forms/types/options/read_only.rst.inc - .. include:: /reference/forms/types/options/required.rst.inc .. include:: /reference/forms/types/options/trim.rst.inc diff --git a/reference/twig_reference.rst b/reference/twig_reference.rst index 3fb0eb6fb2f..4ee34656e36 100644 --- a/reference/twig_reference.rst +++ b/reference/twig_reference.rst @@ -104,10 +104,6 @@ asset **type**: ``string`` ``packageName`` **type**: ``string`` | ``null`` **default**: ``null`` -``absolute`` (deprecated as of 2.7) - **type**: ``boolean`` **default**: ``false`` -``version`` (deprecated as of 2.7) - **type**: ``string`` **default** ``null`` Returns a public path to ``path``, which takes into account the base path set for the package and the URL path. More information in @@ -172,20 +168,6 @@ Renders the HTML end tag of a form together with all fields that have not been rendered yet, more information in :ref:`the Twig Form reference `. -form_enctype -~~~~~~~~~~~~ - -.. code-block:: twig - - {{ form_enctype(view) }} - -``view`` - **type**: ``FormView`` - -Renders the required ``enctype="multipart/form-data"`` attribute if the -form contains at least one file upload field, more information in -:ref:`the Twig Form reference `. - form_widget ~~~~~~~~~~~ @@ -417,10 +399,6 @@ Makes a technical name human readable (i.e. replaces underscores by spaces or transforms camelCase text like ``helloWorld`` to ``hello world`` and then capitalizes the string). -.. versionadded:: 2.3 - Transforming camelCase text into human readable text was introduced in - Symfony 2.3. - trans ~~~~~ @@ -720,7 +698,6 @@ The available attributes are: * ``app.session`` * ``app.environment`` * ``app.debug`` -* ``app.security`` (deprecated as of 2.6) Symfony Standard Edition Extensions ----------------------------------- From 121196dfd12ca968c387a0fe5caa58c7df77e5ed Mon Sep 17 00:00:00 2001 From: Marek Pietrzak Date: Thu, 12 Nov 2015 16:31:18 +0000 Subject: [PATCH 196/235] [2.8] Add "How to Use Multiple Guard Authenticators" cookbook documentation --- cookbook/map.rst.inc | 1 + cookbook/security/index.rst | 1 + .../multiple_guard_authenticators.rst | 172 ++++++++++++++++++ 3 files changed, 174 insertions(+) create mode 100644 cookbook/security/multiple_guard_authenticators.rst diff --git a/cookbook/map.rst.inc b/cookbook/map.rst.inc index d57650320c7..7f96d19c747 100644 --- a/cookbook/map.rst.inc +++ b/cookbook/map.rst.inc @@ -176,6 +176,7 @@ * :doc:`/cookbook/security/csrf_in_login_form` * :doc:`/cookbook/security/named_encoders` * :doc:`/cookbook/security/multiple_user_providers` + * :doc:`/cookbook/security/multiple_guard_authenticators` * :doc:`/cookbook/security/firewall_restriction` * :doc:`/cookbook/security/host_restriction` * :doc:`/cookbook/security/user_checkers` diff --git a/cookbook/security/index.rst b/cookbook/security/index.rst index ed13a2116f9..61efff1aa23 100644 --- a/cookbook/security/index.rst +++ b/cookbook/security/index.rst @@ -22,6 +22,7 @@ Authentication (Identifying/Logging in the User) csrf_in_login_form named_encoders multiple_user_providers + multiple_guard_authenticators firewall_restriction host_restriction user_checkers diff --git a/cookbook/security/multiple_guard_authenticators.rst b/cookbook/security/multiple_guard_authenticators.rst new file mode 100644 index 00000000000..acb1f774422 --- /dev/null +++ b/cookbook/security/multiple_guard_authenticators.rst @@ -0,0 +1,172 @@ +How to Use Multiple Guard Authenticators +======================================== + +.. versionadded:: 2.8 + The ``Guard`` component was introduced in Symfony 2.8. + +The Guard authentication component allows you to easily use many different +authenticators at a time. + +An entry point is a service id (of one of your authenticators) whose +``start()`` method is called to start the authentication process. + +Multiple Authenticators with Shared Entry Point +----------------------------------------------- + +Sometimes you want to offer your users different authentication mechanisms like +a form login and a Facebook login while both entry points redirect the user to +the same login page. +However, in your configuration you have to explicitly say which entry point +you want to use. + +This is how your security configuration can look in action: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/security.yml + security: + # ... + firewalls: + default: + anonymous: ~ + guard: + authenticators: + - app.form_login_authenticator + - app.facebook_connect_authenticator + entry_point: app.form_login_authenticator + + .. code-block:: xml + + + + + + + + + + + app.form_login_authenticator + app.facebook_connect_authenticator + + + + + + .. code-block:: php + + // app/config/security.php + $container->loadFromExtension('security', array( + // ... + 'firewalls' => array( + 'default' => array( + 'anonymous' => null, + 'guard' => array( + 'entry_point' => 'app.form_login_authenticator', + 'authenticators' => array( + 'app.form_login_authenticator', + 'app.facebook_connect_authenticator' + ), + ), + ), + ), + )); + +There is one limitation with this approach - you have to use exactly one entry point. + +Multiple Authenticators with Separate Entry Points +-------------------------------------------------- + +However, there are use cases where you have authenticators that protect different +parts of your application. For example, you have a login form that protects +the secured area of your application front-end and API end points that are +protected with API tokens. As you can only configure one entry point per firewall, +the solution is to split the configuration into two separate firewalls: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/security.yml + security: + # ... + firewalls: + api: + pattern: ^/api/ + guard: + authenticators: + - app.api_token_authenticator + default: + anonymous: ~ + guard: + authenticators: + - app.form_login_authenticator + access_control: + - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY } + - { path: ^/api, roles: ROLE_API_USER } + - { path: ^/, roles: ROLE_USER } + + .. code-block:: xml + + + + + + + + + + app.api_token_authenticator + + + + + + app.form_login_authenticator + + + + + + + + + .. code-block:: php + + // app/config/security.php + $container->loadFromExtension('security', array( + // ... + 'firewalls' => array( + 'api' => array( + 'pattern' => '^/api', + 'guard' => array( + 'authenticators' => array( + 'app.api_token_authenticator', + ), + ), + ), + 'default' => array( + 'anonymous' => null, + 'guard' => array( + 'authenticators' => array( + 'app.form_login_authenticator', + ), + ), + ), + ), + 'access_control' => array( + array('path' => '^/login', 'role' => 'IS_AUTHENTICATED_ANONYMOUSLY'), + array('path' => '^/api', 'role' => 'ROLE_API_USER'), + array('path' => '^/', 'role' => 'ROLE_USER'), + ), + )); From 63c57dd8c6b7915924a3de653bff117970c8a1bc Mon Sep 17 00:00:00 2001 From: Calin Pristavu Date: Wed, 10 Feb 2016 15:39:56 +0200 Subject: [PATCH 197/235] [Security] Include guard firewall configuration sample. As per "config:dump-reference symfony" output, add the guard firewall configuration to the sample security configuration file. --- reference/configuration/security.rst | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/reference/configuration/security.rst b/reference/configuration/security.rst index a9b25ceb5e9..c3e723cf487 100644 --- a/reference/configuration/security.rst +++ b/reference/configuration/security.rst @@ -133,6 +133,15 @@ Each part will be explained in the next section. provider: some_key_from_above http_digest: provider: some_key_from_above + guard: + # A key from the "providers" section of your security config, in case your user provider is different than the firewall + provider: ~ + + # A service id (of one of your authenticators) whose start() method should be called when an anonymous user hits a page that requires authentication + entry_point: null + + # An array of service ids for all of your "authenticators" + authenticators: [] form_login: # submit the login form here check_path: /login_check From 995bd4fcbc7cdd05a63a1fe5dc521c013624bbc9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Dunglas?= Date: Thu, 17 Dec 2015 00:23:28 +0100 Subject: [PATCH 198/235] [DependencyInjection] Autowiring doc --- .../dependency_injection/autowiring.rst | 397 ++++++++++++++++++ components/dependency_injection/index.rst | 1 + components/map.rst.inc | 1 + 3 files changed, 399 insertions(+) create mode 100644 components/dependency_injection/autowiring.rst diff --git a/components/dependency_injection/autowiring.rst b/components/dependency_injection/autowiring.rst new file mode 100644 index 00000000000..86287d5d5a7 --- /dev/null +++ b/components/dependency_injection/autowiring.rst @@ -0,0 +1,397 @@ +.. index:: + single: DependencyInjection; Autowiring + +Defining Services Dependencies Automatically +============================================ + +Autowiring allows to register services in the container with minimal configuration. +It is useful in the field of `Rapid Application Development`_, when designing prototypes +in early stages of large projects. It makes it easy to register a service graph +and eases refactoring. + +Imagine you're building an API to publish statuses on a Twitter feed, obfuscated +with `ROT13`.. (a special case of the Caesar cipher). + +Start by creating a ROT13 transformer class:: + + // src/AppBundle/Rot13Transformer.php + namespace AppBundle; + + class Rot13Transformer + { + public function transform($value) + { + return str_rot13($value); + } + } + +And now a Twitter client using this transformer:: + + // src/AppBundle/TwitterClient.php + namespace AppBundle; + + class TwitterClient + { + private $transformer; + + public function __construct(Rot13Transformer $transformer) + { + $this->transformer = $transformer; + } + + public function tweet($user, $key, $status) + { + $transformedStatus = $this->transformer->transform($status); + + // ... connect to Twitter and send the encoded status + } + } + +The Dependency Injection Component will be able to automatically register the dependencies +of this ``TwitterClient`` class by marking the ``twitter_client`` service as autowired: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/services.yml + services: + twitter_client: + class: 'AppBundle\TwitterClient' + autowire: true + + .. code-block:: xml + + + + + + + + + + + .. code-block:: php + + use Symfony\Component\DependencyInjection\Definition; + + // ... + $definition = new Definition('AppBundle\TwitterClient'); + $definition->setAutowired(true); + + $container->setDefinition('twitter_client', $definition); + +The autowiring subsystem will detect the dependencies of the ``TwitterClient`` +class by parsing its constructor. For instance it will find here an instance of +a ``Rot13Transformer`` as dependency. If an existing service definition (and only +one – see below) is of the required type, this service will be injected. If it's +not the case (like in this example), the subsystem is smart enough to automatically +register a private service for the ``Rot13Transformer`` class and set it as first +argument of the ``twitter_client`` service. Again, it can work only if there is one +class of the given type. If there are several classes of the same type, you must +use an explicit service definition or register a default implementation. + +As you can see, the autowiring feature drastically reduces the amount of configuration +required to define a service. No more arguments section! It also makes it easy +to change the dependencies of the ``TwitterClient`` class: just add or remove typehinted +arguments in the constructor and you are done. There is no need anymore to search +and edit related service definitions. + +Here is a typical controller using the ``twitter_client`` service:: + + // src/AppBundle/Controller/DefaultController.php + namespace AppBundle\Controller; + + use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; + use Sensio\Bundle\FrameworkExtraBundle\Configuration\Method; + use Symfony\Bundle\FrameworkBundle\Controller\Controller; + use Symfony\Component\HttpFoundation\Request; + use Symfony\Component\HttpFoundation\Response; + use Symfony\Component\HttpKernel\Exception\BadRequestHttpException; + + class DefaultController extends Controller + { + /** + * @Route("/tweet") + * @Method("POST") + */ + public function tweetAction(Request $request) + { + $user = $request->request->get('user'); + $key = $request->request->get('key'); + $status = $request->request->get('status'); + + if (!$user || !$key || !$status) { + throw new BadRequestHttpException(); + } + + $this->get('twitter_client')->tweet($user, $key, $status); + + return new Response('OK'); + } + } + +You can give a try to the API with ``curl``:: + + curl -d "user=kevin&key=ABCD&status=Hello" http://localhost:8000/tweet + +It should return ``OK``. + +Working with Interfaces +----------------------- + +You might also find yourself using abstractions instead of implementations (especially +in grown applications) as it allows to easily replace some dependencies without +modifying the class depending of them. + +To follow this best practice, constructor arguments must be typehinted with interfaces +and not concrete classes. It allows to replace easily the current implementation +if necessary. It also allows to use other transformers. + +Let's introduce a ``TransformerInterface``:: + + // src/AppBundle/TransformerInterface.php + namespace AppBundle; + + interface TransformerInterface + { + public function transform($value); + } + +Then edit ``Rot13Transformer`` to make it implementing the new interface:: + + // ... + + class Rot13Transformer implements TransformerInterface + + // ... + + +And update ``TwitterClient`` to depend of this new interface:: + + class TwitterClient + { + // ... + + public function __construct(TransformerInterface $transformer) + { + // ... + } + + // ... + } + +Finally the service definition must be updated because, obviously, the autowiring +subsystem isn't able to find itself the interface implementation to register:: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/services.yml + services: + rot13_transformer: + class: 'AppBundle\Rot13Transformer' + + twitter_client: + class: 'AppBundle\TwitterClient' + autowire: true + + .. code-block:: xml + + + + + + + + + + + + .. code-block:: php + + use Symfony\Component\DependencyInjection\Definition; + + // ... + $definition1 = new Definition('AppBundle\Rot13Transformer'); + $container->setDefinition('rot13_transformer', $definition1); + + $definition2 = new Definition('AppBundle\TwitterClient'); + $definition2->setAutowired(true); + $container->setDefinition('twitter_client', $definition2); + +The autowiring subsystem detects that the ``rot13_transformer`` service implements +the ``TransformerInterface`` and injects it automatically. Even when using +interfaces (and you should), building the service graph and refactoring the project +is easier than with standard definitions. + +Dealing with Multiple Implementations of the Same Type +------------------------------------------------------ + +Last but not least, the autowiring feature allows to specify the default implementation +of a given type. Let's introduce a new implementation of the ``TransformerInterface`` +returning the result of the ROT13 transformation uppercased:: + + // src/AppBundle/UppercaseRot13Transformer.php + namespace AppBundle; + + class UppercaseTransformer implements TransformerInterface + { + private $transformer; + + public function __construct(TransformerInterface $transformer) + { + $this->transformer = $transformer; + } + + public function transform($value) + { + return strtoupper($this->transformer->transform($value)); + } + } + +This class is intended to decorate the any transformer and return its value uppercased. + +We can now refactor the controller to add another endpoint leveraging this new +transformer:: + + // src/AppBundle/Controller/DefaultController.php + namespace AppBundle\Controller; + + use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; + use Sensio\Bundle\FrameworkExtraBundle\Configuration\Method; + use Symfony\Bundle\FrameworkBundle\Controller\Controller; + use Symfony\Component\HttpFoundation\Request; + use Symfony\Component\HttpFoundation\Response; + use Symfony\Component\HttpKernel\Exception\BadRequestHttpException; + + class DefaultController extends Controller + { + /** + * @Route("/tweet") + * @Method("POST") + */ + public function tweetAction(Request $request) + { + return $this->tweet($request, 'twitter_client'); + } + + /** + * @Route("/tweet-uppercase") + * @Method("POST") + */ + public function tweetUppercaseAction(Request $request) + { + return $this->tweet($request, 'uppercase_twitter_client'); + } + + private function tweet(Request $request, $service) + { + $user = $request->request->get('user'); + $key = $request->request->get('key'); + $status = $request->request->get('status'); + + if (!$user || !$key || !$status) { + throw new BadRequestHttpException(); + } + + $this->get($service)->tweet($user, $key, $status); + + return new Response('OK'); + } + } + +The last step is to update service definitions to register this new implementation +and a Twitter client using it:: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/services.yml + services: + rot13_transformer: + class: 'AppBundle\Rot13Transformer' + autowiring_types: 'AppBundle\TransformerInterface' + + twitter_client: + class: 'AppBundle\TwitterClient' + autowire: true + + uppercase_rot13_transformer: + class: 'AppBundle\UppercaseRot13Transformer' + autowire: true + + uppercase_twitter_client: + class: 'AppBundle\TwitterClient' + arguments: [ '@uppercase_rot13_transformer' ] + + .. code-block:: xml + + + + + + + + AppBundle\TransformerInterface + + + + + + + + + + .. code-block:: php + + use Symfony\Component\DependencyInjection\Reference; + use Symfony\Component\DependencyInjection\Definition; + + // ... + $definition1 = new Definition('AppBundle\Rot13Transformer'); + $definition1->setAutowiringTypes(array('AppBundle\TransformerInterface')); + $container->setDefinition('rot13_transformer', $definition1); + + $definition2 = new Definition('AppBundle\TwitterClient'); + $definition2->setAutowired(true); + $container->setDefinition('twitter_client', $definition2); + + $definition3 = new Definition('AppBundle\UppercaseRot13Transformer'); + $definition3->setAutowired(true); + $container->setDefinition('uppercase_rot13_transformer', $definition3); + + $definition4 = new Definition('AppBundle\TwitterClient'); + $definition4->addArgument(new Reference('uppercase_rot13_transformer')); + $container->setDefinition('uppercase_twitter_client', $definition4); + +It deserves some explanations. We now have 2 services implementing the ``TransformerInterface``. +The autowiring subsystem cannot guess which one to use, this leads to errors +like:: + + [Symfony\Component\DependencyInjection\Exception\RuntimeException] + Unable to autowire argument of type "AppBundle\TransformerInterface" for the service "twitter_client". + +Fortunately, the ``autowiring_types`` key is here to specify which implementation +to use by default. This key can take a list of types if necessary (using a YAML +array). + +Thanks to this setting, the ``rot13_transformer`` service is automatically injected +as an argument of the ``uppercase_rot13_transformer`` and ``twitter_client`` services. For +the ``uppercase_twitter_client``, we use a standard service definition to inject +the specific ``uppercase_rot13_transformer`` service. + +As for other RAD features such as the FrameworkBundle controller or annotations, +keep in mind to not use autowiring in public bundles nor in large projects with +complex maintenance needs. + +.. _Rapid Application Development: https://en.wikipedia.org/wiki/Rapid_application_development +.. _ROT13: https://en.wikipedia.org/wiki/ROT13 diff --git a/components/dependency_injection/index.rst b/components/dependency_injection/index.rst index 313f29af3f4..bc6ec0daf73 100644 --- a/components/dependency_injection/index.rst +++ b/components/dependency_injection/index.rst @@ -8,6 +8,7 @@ DependencyInjection types parameters definitions + autowiring synthetic_services compilation tags diff --git a/components/map.rst.inc b/components/map.rst.inc index dfead75f62c..64f2b8c70f2 100644 --- a/components/map.rst.inc +++ b/components/map.rst.inc @@ -46,6 +46,7 @@ * :doc:`/components/dependency_injection/types` * :doc:`/components/dependency_injection/parameters` * :doc:`/components/dependency_injection/definitions` + * :doc:`/components/dependency_injection/autowiring` * :doc:`/components/dependency_injection/synthetic_services` * :doc:`/components/dependency_injection/compilation` * :doc:`/components/dependency_injection/tags` From d1e3024e12d0cf339241d288460b2557c51b9a50 Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Wed, 10 Feb 2016 19:45:51 +0100 Subject: [PATCH 199/235] [#6032] some tweaks for the autowiring feature --- .../dependency_injection/autowiring.rst | 48 +++++++++++-------- 1 file changed, 28 insertions(+), 20 deletions(-) diff --git a/components/dependency_injection/autowiring.rst b/components/dependency_injection/autowiring.rst index 86287d5d5a7..46196cc846d 100644 --- a/components/dependency_injection/autowiring.rst +++ b/components/dependency_injection/autowiring.rst @@ -4,13 +4,17 @@ Defining Services Dependencies Automatically ============================================ +.. versionadded:: 2.8 + Support for autowiring services was introduced in Symfony 2.8. + Autowiring allows to register services in the container with minimal configuration. -It is useful in the field of `Rapid Application Development`_, when designing prototypes -in early stages of large projects. It makes it easy to register a service graph -and eases refactoring. +It automatically resolves the service dependencies based on the constructor's +typehint which is useful in the field of `Rapid Application Development`_, +when designing prototypes in early stages of large projects. It makes it easy +to register a service graph and eases refactoring. -Imagine you're building an API to publish statuses on a Twitter feed, obfuscated -with `ROT13`.. (a special case of the Caesar cipher). +Imagine you're building an API to publish statuses on a Twitter feed, which +has to be obfuscated with ``ROT13`` (a special case of the Caesar cipher). Start by creating a ROT13 transformer class:: @@ -47,8 +51,9 @@ And now a Twitter client using this transformer:: } } -The Dependency Injection Component will be able to automatically register the dependencies -of this ``TwitterClient`` class by marking the ``twitter_client`` service as autowired: +The DependencyInjection component will be able to automatically register +the dependencies of this ``TwitterClient`` class when the ``twitter_client`` +service is marked as autowired: .. configuration-block:: @@ -133,9 +138,11 @@ Here is a typical controller using the ``twitter_client`` service:: } } -You can give a try to the API with ``curl``:: +You can give the API a try using ``curl``: + +.. code-block:: bash - curl -d "user=kevin&key=ABCD&status=Hello" http://localhost:8000/tweet + $ curl -d "user=kevin&key=ABCD&status=Hello" http://localhost:8000/tweet It should return ``OK``. @@ -316,20 +323,20 @@ and a Twitter client using it:: # app/config/services.yml services: rot13_transformer: - class: 'AppBundle\Rot13Transformer' - autowiring_types: 'AppBundle\TransformerInterface' + class: AppBundle\Rot13Transformer + autowiring_types: AppBundle\TransformerInterface twitter_client: - class: 'AppBundle\TwitterClient' + class: AppBundle\TwitterClient autowire: true uppercase_rot13_transformer: - class: 'AppBundle\UppercaseRot13Transformer' + class: AppBundle\UppercaseRot13Transformer autowire: true uppercase_twitter_client: - class: 'AppBundle\TwitterClient' - arguments: [ '@uppercase_rot13_transformer' ] + class: AppBundle\TwitterClient + arguments: ['@uppercase_rot13_transformer'] .. code-block:: xml @@ -373,16 +380,17 @@ and a Twitter client using it:: $definition4->addArgument(new Reference('uppercase_rot13_transformer')); $container->setDefinition('uppercase_twitter_client', $definition4); -It deserves some explanations. We now have 2 services implementing the ``TransformerInterface``. -The autowiring subsystem cannot guess which one to use, this leads to errors -like:: +This deserves some explanations. You now have two services implementing the +``TransformerInterface``. The autowiring subsystem cannot guess which one +to use which leads to errors like this: + +.. code-block:: text [Symfony\Component\DependencyInjection\Exception\RuntimeException] Unable to autowire argument of type "AppBundle\TransformerInterface" for the service "twitter_client". Fortunately, the ``autowiring_types`` key is here to specify which implementation -to use by default. This key can take a list of types if necessary (using a YAML -array). +to use by default. This key can take a list of types if necessary. Thanks to this setting, the ``rot13_transformer`` service is automatically injected as an argument of the ``uppercase_rot13_transformer`` and ``twitter_client`` services. For From 01033647ccbe2f5c96b3ae5abd91d0d4ce4c9526 Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Wed, 10 Feb 2016 19:55:29 +0100 Subject: [PATCH 200/235] [#6032] fix link to ROT13 description --- components/dependency_injection/autowiring.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/components/dependency_injection/autowiring.rst b/components/dependency_injection/autowiring.rst index 46196cc846d..b2707a33411 100644 --- a/components/dependency_injection/autowiring.rst +++ b/components/dependency_injection/autowiring.rst @@ -13,8 +13,8 @@ typehint which is useful in the field of `Rapid Application Development`_, when designing prototypes in early stages of large projects. It makes it easy to register a service graph and eases refactoring. -Imagine you're building an API to publish statuses on a Twitter feed, which -has to be obfuscated with ``ROT13`` (a special case of the Caesar cipher). +Imagine you're building an API to publish statuses on a Twitter feed, obfuscated +with `ROT13`_ (a special case of the Caesar cipher). Start by creating a ROT13 transformer class:: From aa33bfa100eb10faa42dccdc6d4bb7cc67244ad2 Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Wed, 10 Feb 2016 20:02:11 +0100 Subject: [PATCH 201/235] [Components][Form] remove outdated caution --- components/form/form_events.rst | 8 -------- 1 file changed, 8 deletions(-) diff --git a/components/form/form_events.rst b/components/form/form_events.rst index 6d6f582639a..188d72c8460 100644 --- a/components/form/form_events.rst +++ b/components/form/form_events.rst @@ -257,14 +257,6 @@ Name ``FormEvents`` Constant Event's Data ``form.post_bind`` ``FormEvents::POST_SUBMIT`` View data ====================== ============================= =============== -.. caution:: - - The ``FormEvents::PRE_BIND``, ``FormEvents::BIND`` and - ``FormEvents::POST_BIND`` constants will be removed in version 3.0 of - Symfony. - The event names still keep their original values, so make sure you use the - ``FormEvents`` constants in your code for forward compatibility. - Event Listeners ~~~~~~~~~~~~~~~ From 6ef2099aecbabfaf7f16ea3a44f0dee09e7205a0 Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Thu, 11 Feb 2016 09:11:00 +0100 Subject: [PATCH 202/235] reflect behavior changes in cache generation Starting with Symfony 2.8, the class cache is generated when the cache is warmed up. This means that you cannot prevent the cache from being generated, but you must simply not load it to ease debugging. Also, this means that you have to ignore the cache files in your IDE now if it cannot deal with them properly. --- cookbook/debugging.rst | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/cookbook/debugging.rst b/cookbook/debugging.rst index 98fae25bad8..6e863be7d11 100644 --- a/cookbook/debugging.rst +++ b/cookbook/debugging.rst @@ -21,10 +21,9 @@ Disabling the Bootstrap File and Class Caching And to make the production environment as fast as possible, Symfony creates big PHP files in your cache containing the aggregation of PHP classes your -project needs for every request. However, this behavior can confuse your IDE -or your debugger. This recipe shows you how you can tweak this caching -mechanism to make it friendlier when you need to debug code that involves -Symfony classes. +project needs for every request. However, this behavior can confuse your +debugger. This recipe shows you how you can tweak this caching mechanism +to make it friendlier when you need to debug code that involves Symfony classes. The ``app_dev.php`` front controller reads as follows by default:: @@ -37,9 +36,9 @@ The ``app_dev.php`` front controller reads as follows by default:: $kernel->loadClassCache(); $request = Request::createFromGlobals(); -To make your debugger happier, disable all PHP class caches by removing the -call to ``loadClassCache()`` and by replacing the require statements like -below:: +To make your debugger happier, disable the loading of all PHP class caches +by removing the call to ``loadClassCache()`` and by replacing the require +statements like below:: // ... @@ -57,7 +56,5 @@ below:: session. Some IDEs do not like the fact that some classes are stored in different -locations. To avoid problems, you can either tell your IDE to ignore the PHP -cache files, or you can change the extension used by Symfony for these files:: - - $kernel->loadClassCache('classes', '.php.cache'); +locations. To avoid problems, you can tell your IDE to ignore the PHP cache +file. From 61ef5bb2218fd6424a3abfe782d06004c581fe9b Mon Sep 17 00:00:00 2001 From: Christian Flothmann Date: Mon, 15 Feb 2016 21:05:12 +0100 Subject: [PATCH 203/235] remove dot in front of colon --- cookbook/form/data_transformers.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/form/data_transformers.rst b/cookbook/form/data_transformers.rst index 255e64c6e8c..680758ddd6d 100644 --- a/cookbook/form/data_transformers.rst +++ b/cookbook/form/data_transformers.rst @@ -254,7 +254,7 @@ Next, you need to instantiate the ``IssueToNumberTransformer`` class from inside of the entity manager (because ``IssueToNumberTransformer`` needs this). No problem! Just add a ``__construct()`` function to ``TaskType`` and force this -to be passed in by registering ``TaskType`` as a service.:: +to be passed in by registering ``TaskType`` as a service:: // src/AppBundle/Form/TaskType.php namespace AppBundle\Form\Type; From c4400509d1c8a61a499a5bfcc0e6f07d5ab4e23a Mon Sep 17 00:00:00 2001 From: Denis Rendler Date: Wed, 17 Feb 2016 22:34:22 +0200 Subject: [PATCH 204/235] [HttpFoundation] Fix typo for ParameterBag getters [HttpFoundation] Fix typo for max number of arguments for ParameterBag getters --- components/http_foundation/introduction.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/http_foundation/introduction.rst b/components/http_foundation/introduction.rst index 1a925d51a66..c021ffc1175 100644 --- a/components/http_foundation/introduction.rst +++ b/components/http_foundation/introduction.rst @@ -140,7 +140,7 @@ has some methods to filter the input values: :method:`Symfony\\Component\\HttpFoundation\\ParameterBag::filter` Filters the parameter by using the PHP :phpfunction:`filter_var` function. -All getters takes up to three arguments: the first one is the parameter name +All getters take up to two arguments: the first one is the parameter name and the second one is the default value to return if the parameter does not exist:: From dbee0dfe5b6a6477a70652bbd90b14433a417242 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Vod=C3=A1=C4=8Dek?= Date: Fri, 19 Feb 2016 23:23:46 +0100 Subject: [PATCH 205/235] Fix setting permission for var subdirectories --- book/installation.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/book/installation.rst b/book/installation.rst index 58029ab3e90..24ad4650c64 100644 --- a/book/installation.rst +++ b/book/installation.rst @@ -252,8 +252,8 @@ If there are any issues, correct them now before moving on. $ rm -rf var/cache/* var/logs/* var/sessions/* $ HTTPDUSER=`ps axo user,comm | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\ -f1` - $ sudo chmod +a "$HTTPDUSER allow delete,write,append,file_inherit,directory_inherit" var - $ sudo chmod +a "`whoami` allow delete,write,append,file_inherit,directory_inherit" var + $ sudo chmod -R +a "$HTTPDUSER allow delete,write,append,file_inherit,directory_inherit" var + $ sudo chmod -R +a "`whoami` allow delete,write,append,file_inherit,directory_inherit" var **3. Using ACL on a system that does not support chmod +a** From 3d3bac0a919bdafc79917f5840206032ba8ace67 Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 21 Feb 2016 16:53:58 -0500 Subject: [PATCH 206/235] [#6263] Javier's comments --- cookbook/debugging.rst | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/cookbook/debugging.rst b/cookbook/debugging.rst index 6e863be7d11..26c91da8c09 100644 --- a/cookbook/debugging.rst +++ b/cookbook/debugging.rst @@ -21,9 +21,12 @@ Disabling the Bootstrap File and Class Caching And to make the production environment as fast as possible, Symfony creates big PHP files in your cache containing the aggregation of PHP classes your -project needs for every request. However, this behavior can confuse your -debugger. This recipe shows you how you can tweak this caching mechanism -to make it friendlier when you need to debug code that involves Symfony classes. +project needs for every request. However, this behavior can confuse your debugger, +because the same class can be located in two different places: the original class +file and the big file which aggregates lots of classes. + +This recipe shows you how you can tweak this caching mechanism to make it friendlier +when you need to debug code that involves Symfony classes. The ``app_dev.php`` front controller reads as follows by default:: From 06eee41a48c79d7f6ed1c440890c390a2e72b8e6 Mon Sep 17 00:00:00 2001 From: "Jose R. Prieto" Date: Tue, 23 Feb 2016 17:39:43 +0100 Subject: [PATCH 207/235] Update dependency_injection.rst because it has an error. The line: $sc->register('listener.router', 'Symfony\Component\HttpKernel\EventListener\RouterListener') ->setArguments(array(new Reference('matcher'))) ; is wrong, because the Symfony\Component\HttpKernel\EventListener\ResponseListener has two mandatory arguments; an instance of Symfony\Component\Routing\Matcher\UrlMatcher (or RequestMatcher), and an instance of RequestStack; so, we need to add the line: $sc->register('request_stack', 'Symfony\Component\HttpFoundation\RequestStack'); And change the registration of listener.router on this form: $sc->register('listener.router', 'Symfony\Component\HttpKernel\EventListener\RouterListener') ->setArguments(array(new Reference('matcher'), new Reference('request_stack'))) ; --- create_framework/dependency_injection.rst | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/create_framework/dependency_injection.rst b/create_framework/dependency_injection.rst index f5ff56c1b38..d380e19abd3 100644 --- a/create_framework/dependency_injection.rst +++ b/create_framework/dependency_injection.rst @@ -100,10 +100,11 @@ Create a new file to host the dependency injection container configuration:: $sc->register('matcher', 'Symfony\Component\Routing\Matcher\UrlMatcher') ->setArguments(array($routes, new Reference('context'))) ; + $sc->register('request_stack', 'Symfony\Component\HttpFoundation\RequestStack'); $sc->register('resolver', 'Symfony\Component\HttpKernel\Controller\ControllerResolver'); $sc->register('listener.router', 'Symfony\Component\HttpKernel\EventListener\RouterListener') - ->setArguments(array(new Reference('matcher'))) + ->setArguments(array(new Reference('matcher'), new Reference('request_stack'))) ; $sc->register('listener.response', 'Symfony\Component\HttpKernel\EventListener\ResponseListener') ->setArguments(array('UTF-8')) From dcb5a5458d8c9f4e88b178838ba3391d88495a90 Mon Sep 17 00:00:00 2001 From: Evgenij Efimov Date: Tue, 23 Feb 2016 22:25:35 +0300 Subject: [PATCH 208/235] Removed True and False constraints from reference --- reference/constraints.rst | 3 --- reference/constraints/False.rst | 8 -------- reference/constraints/Null.rst | 8 -------- reference/constraints/True.rst | 8 -------- 4 files changed, 27 deletions(-) delete mode 100644 reference/constraints/False.rst delete mode 100644 reference/constraints/Null.rst delete mode 100644 reference/constraints/True.rst diff --git a/reference/constraints.rst b/reference/constraints.rst index 2d8f33dc6b2..e91e319b3cb 100644 --- a/reference/constraints.rst +++ b/reference/constraints.rst @@ -9,11 +9,8 @@ Validation Constraints Reference constraints/Blank constraints/NotNull constraints/IsNull - constraints/Null constraints/IsTrue - constraints/True constraints/IsFalse - constraints/False constraints/Type constraints/Email diff --git a/reference/constraints/False.rst b/reference/constraints/False.rst deleted file mode 100644 index 53a768a9cc1..00000000000 --- a/reference/constraints/False.rst +++ /dev/null @@ -1,8 +0,0 @@ -False -===== - -.. caution:: - - The ``False`` constraint is deprecated since Symfony 2.7 and removed in - Symfony 3.0. Use the :doc:`/reference/constraints/IsFalse` constraint - instead. diff --git a/reference/constraints/Null.rst b/reference/constraints/Null.rst deleted file mode 100644 index 5eb8ddd9a7a..00000000000 --- a/reference/constraints/Null.rst +++ /dev/null @@ -1,8 +0,0 @@ -Null -==== - -.. caution:: - - The ``Null`` constraint is deprecated since Symfony 2.7 and removed in - Symfony 3.0. Use the :doc:`/reference/constraints/IsNull` constraint - instead. diff --git a/reference/constraints/True.rst b/reference/constraints/True.rst deleted file mode 100644 index e358b8e47d4..00000000000 --- a/reference/constraints/True.rst +++ /dev/null @@ -1,8 +0,0 @@ -True -==== - -.. caution:: - - The ``True`` constraint is deprecated since Symfony 2.7 and removed in - Symfony 3.0. Use the :doc:`/reference/constraints/IsTrue` constraint - instead. From bcba4f456240c9047e8861a48ca0403ebd723a47 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jacek=20J=C4=99drzejewski?= Date: Wed, 2 Mar 2016 18:02:56 +0100 Subject: [PATCH 209/235] Remove "paamayim nekudotayim" breaking configuration blocks in DI autowiring docs --- components/dependency_injection/autowiring.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/components/dependency_injection/autowiring.rst b/components/dependency_injection/autowiring.rst index b2707a33411..77c531a9ce5 100644 --- a/components/dependency_injection/autowiring.rst +++ b/components/dependency_injection/autowiring.rst @@ -191,7 +191,7 @@ And update ``TwitterClient`` to depend of this new interface:: } Finally the service definition must be updated because, obviously, the autowiring -subsystem isn't able to find itself the interface implementation to register:: +subsystem isn't able to find itself the interface implementation to register: .. configuration-block:: @@ -314,7 +314,7 @@ transformer:: } The last step is to update service definitions to register this new implementation -and a Twitter client using it:: +and a Twitter client using it: .. configuration-block:: From bfc797605d88f95a010eb2bc050308a6a6cfcbe2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9o=20FIDRY?= Date: Wed, 2 Mar 2016 19:55:16 +0000 Subject: [PATCH 210/235] Add Auto-wiring keyword --- components/dependency_injection/autowiring.rst | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/components/dependency_injection/autowiring.rst b/components/dependency_injection/autowiring.rst index b2707a33411..7a2b7e83d53 100644 --- a/components/dependency_injection/autowiring.rst +++ b/components/dependency_injection/autowiring.rst @@ -1,8 +1,8 @@ .. index:: single: DependencyInjection; Autowiring -Defining Services Dependencies Automatically -============================================ +Defining Services Dependencies Automatically (Autowiring) +========================================================= .. versionadded:: 2.8 Support for autowiring services was introduced in Symfony 2.8. @@ -76,7 +76,7 @@ service is marked as autowired: - + .. code-block:: php @@ -218,7 +218,7 @@ subsystem isn't able to find itself the interface implementation to register:: - + .. code-block:: php @@ -356,7 +356,7 @@ and a Twitter client using it:: - + .. code-block:: php From 1a6e4c59a564d7a8053e36088fca8c949555e408 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Plant=C3=A9?= Date: Fri, 4 Mar 2016 10:57:17 +0100 Subject: [PATCH 211/235] Missing svn:ignore The var/sessions directory content should be ignored too --- cookbook/workflow/new_project_svn.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/cookbook/workflow/new_project_svn.rst b/cookbook/workflow/new_project_svn.rst index 657ad803bfb..17e81b80d5c 100644 --- a/cookbook/workflow/new_project_svn.rst +++ b/cookbook/workflow/new_project_svn.rst @@ -82,6 +82,7 @@ with these steps: $ svn propset svn:ignore "parameters.yml" app/config/ $ svn propset svn:ignore "*" var/cache/ $ svn propset svn:ignore "*" var/logs/ + $ svn propset svn:ignore "*" var/sessions/ $ svn propset svn:ignore "bundles" web From 25b3aed842e5c3f303c8465273f32d04670abfca Mon Sep 17 00:00:00 2001 From: Kanat Gailimov Date: Thu, 3 Mar 2016 05:15:50 +0600 Subject: [PATCH 212/235] Update user_checkers.rst Fix UserCheckerInterface importing --- cookbook/security/user_checkers.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cookbook/security/user_checkers.rst b/cookbook/security/user_checkers.rst index 7d7a9f73965..3223f544e4b 100644 --- a/cookbook/security/user_checkers.rst +++ b/cookbook/security/user_checkers.rst @@ -29,7 +29,7 @@ are not met, an exception should be thrown which extends the use AppBundle\Exception\AccountDeletedException; use AppBundle\Security\User as AppUser; use Symfony\Component\Security\Core\Exception\AccountExpiredException; - use Symfony\Component\Security\Core\User\UserCheckInterface; + use Symfony\Component\Security\Core\User\UserCheckerInterface; use Symfony\Component\Security\Core\User\UserInterface; class UserChecker implements UserCheckerInterface From 11eb093af197df8663a7cf1c120ef5667fe568e4 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 5 Mar 2016 12:41:33 +0100 Subject: [PATCH 213/235] Added February changelog --- changelog.rst | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/changelog.rst b/changelog.rst index d18dbe0274a..f2e6122bbee 100644 --- a/changelog.rst +++ b/changelog.rst @@ -21,15 +21,21 @@ New Documentation * `#6172 `_ move assets options from templating to assets section and add base_path documentation (snoek09) * `#6021 `_ mention routing from the database (dbu) +* `#6032 `_ [DependencyInjection] Autowiring doc (dunglas) * `#6233 `_ Document translation_domain for choice fields (merorafael, WouterJ) * `#5655 `_ Added doc about Homestead's Symfony integration (WouterJ) +* `#5886 `_ [2.8] Add "How to Use Multiple Guard Authenticators" cookbook documentation (mheki) * `#6072 `_ Add browserkit component documentation (yamiko, yamiko-ninja, robert Parker, javiereguiluz) * `#6243 `_ Add missing getBoolean() method (bocharsky-bw) * `#6231 `_ Use hash_equals instead of StringUtils::equals (WouterJ) +* `#5530 `_ [Cookbook, Security] Added user_checkers.rst (iltar) +* `#5920 `_ Document automatic registration of extension compiler passes (WouterJ) * `#5724 `_ Describe configuration behaviour with multiple mailers (xelan) * `#6077 `_ fixes #5971 (vincentaubert) +* `#5483 `_ [FrameworkBundle] Name converter of Serializer (dunglas) * `#6156 `_ [reference] [form] [options] fix #6153 (HeahDude) * `#6104 `_ Fix #6103 (zsturgess) +* `#6058 `_ Update Testing Form Types article for 2.8 refactorings (WouterJ) * `#5856 `_ Reworded the "How to use Gmail" cookbook article (javiereguiluz) * `#6230 `_ Add annotation to glossary (rebased) (DerStoffel) * `#5642 `_ Documented label_format option (WouterJ) @@ -46,17 +52,21 @@ Minor Documentation Changes ~~~~~~~~~~~~~~~~~~~~~~~~~~~ * `#6308 `_ fix literal syntax (xabbuh) +* `#6298 `_ Update dependency_injection.rst because it has an error. (joserprieto) +* `#6263 `_ [Cookbook][Debugging] reflect behavior changes in cache generation (xabbuh) * `#6251 `_ To use annotations, files must be removed (pbowyer) * `#6288 `_ Update factories.rst (velikanov) * `#6278 `_ [HttpFoundation] Fix typo for ParameterBag getters (rendler-denis) * `#6280 `_ Fix syntax of Company class example (cakper) * `#6284 `_ [Book] [Routing] Fix third param true to UrlGeneratorInterface::ABSOLUTE_URI (eriwin) * `#6269 `_ [Cookbook][Bundles]fix yaml syntax (mhor) +* `#6277 `_ remove dot in front of colon (xabbuh) * `#6255 `_ [Cookbook][Doctrine] some tweaks to the Doctrine registration article (xabbuh) * `#6229 `_ Rewrite EventDispatcher introduction (WouterJ) * `#6260 `_ add missing options `choice_value`, `choice_name` and `choice_attr` to `EntityType` (HeahDude) * `#6262 `_ [Form] reorder options in choice types references (HeahDude) * `#6256 `_ Fixed code example (twifty) +* `#6253 `_ [Security] Include guard firewall configuration sample. (calinpristavu) * `#6250 `_ [Cookbook][Console] remove note about memory spool handling on CLI (xabbuh) * `#6249 `_ [Cookbook][Serializer] fix wording (xabbuh) * `#6246 `_ removed duplicate lines (seferov) @@ -69,6 +79,7 @@ Minor Documentation Changes * `#6215 `_ Added a caution about failing cache warmers (javiereguiluz) * `#6239 `_ Remove app_dev as build-in server is used (rmed19, WouterJ) * `#6241 `_ [ExpressionLanguage] Add caution about backslash handling (zerustech, WouterJ) +* `#6235 `_ #6232 update forms as services section (backbone87) * `#6236 `_ fix some minor typos (xabbuh) * `#6237 `_ use literals for external class names (xabbuh) * `#6206 `_ add separate placeholder examples for birthday, datetime and time type (snoek09) @@ -77,10 +88,15 @@ Minor Documentation Changes * `#5958 `_ Update security.rst (mpaquet) * `#6092 `_ Updated information about testing code coverage. (roga) * `#6051 `_ Mention HautelookAliceBundle in best practices (theofidry, WouterJ) +* `#6044 `_ Added note about the hash_equals polyfill (WouterJ) +* `#6213 `_ Update form_collections.rst (insekticid) * `#6220 `_ [book] fixes typo about redirect status codes in the controller chapter. (hhamon) * `#6227 `_ Update testing.rst (dvapelnik) +* `#6228 `_ removed unnecessary exception from repository (gondo) * `#6212 `_ Typo in default session save_path (DerekRoth) * `#6208 `_ Replace references of PSR-0 with PSR-4 (opdavies) +* `#6170 `_ change translation getMessages() to getCatalogue() (snoek09) +* `#6225 `_ [Reference][Forms] add versionadded directive for range type (xabbuh) * `#6190 `_ Fix redundant command line sample (sylozof) From 778a7f90fbb2adf06926ccccc448a927512b7e70 Mon Sep 17 00:00:00 2001 From: WouterJ Date: Sat, 5 Mar 2016 13:39:19 +0100 Subject: [PATCH 214/235] Fix faulty merge --- reference/forms/types/choice.rst | 5 ----- 1 file changed, 5 deletions(-) diff --git a/reference/forms/types/choice.rst b/reference/forms/types/choice.rst index 240e3f46ab9..b57bab4b1d0 100644 --- a/reference/forms/types/choice.rst +++ b/reference/forms/types/choice.rst @@ -222,8 +222,6 @@ For example:: The ``status`` field created by the code above will be rendered as: -.. code-block:: html - .. code-block:: html @@ -174,7 +174,7 @@ After this, you have protected your login form against CSRF attacks. 'form_login' => array( // ... 'csrf_parameter' => '_csrf_security_token', - 'csrf_token_id' => 'a_private_string' + 'intention' => 'a_private_string' ), ), ), diff --git a/cookbook/security/custom_authentication_provider.rst b/cookbook/security/custom_authentication_provider.rst index 220d8cdc5ac..fd3e4be3707 100644 --- a/cookbook/security/custom_authentication_provider.rst +++ b/cookbook/security/custom_authentication_provider.rst @@ -10,7 +10,6 @@ How to Create a custom Authentication Provider you through that process. But depending on your needs, you may be able to solve your problem in a simpler, or via a community bundle: - * :doc:`/cookbook/security/guard-authentication` * :doc:`/cookbook/security/custom_password_authenticator` * :doc:`/cookbook/security/api_key_authentication` * To authenticate via OAuth using a third-party service such as Google, Facebook @@ -214,6 +213,7 @@ the ``PasswordDigest`` header value matches with the user's password. use Symfony\Component\Security\Core\Exception\NonceExpiredException; use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; use AppBundle\Security\Authentication\Token\WsseUserToken; + use Symfony\Component\Security\Core\Util\StringUtils; class WsseProvider implements AuthenticationProviderInterface { @@ -275,7 +275,7 @@ the ``PasswordDigest`` header value matches with the user's password. // Validate Secret $expected = base64_encode(sha1(base64_decode($nonce).$created.$secret, true)); - return hash_equals($expected, $digest); + return StringUtils::equals($expected, $digest); } public function supports(TokenInterface $token) @@ -294,10 +294,11 @@ the ``PasswordDigest`` header value matches with the user's password. .. note:: - While the :phpfunction:`hash_equals` function was introduced in PHP 5.6, - you are safe to use it with any PHP version in your Symfony application. In - PHP versions prior to 5.6, `Symfony Polyfill`_ (which is included in - Symfony) will define the function for you. + The comparison of the expected and the provided digests uses a constant + time comparison provided by the + :method:`Symfony\\Component\\Security\\Core\\Util\\StringUtils::equals` + method of the ``StringUtils`` class. It is used to mitigate possible + `timing attacks`_. The Factory ----------- @@ -676,4 +677,3 @@ in the factory and consumed or passed to the other classes in the container. .. _`WSSE`: http://www.xml.com/pub/a/2003/12/17/dive.html .. _`nonce`: https://en.wikipedia.org/wiki/Cryptographic_nonce .. _`timing attacks`: https://en.wikipedia.org/wiki/Timing_attack -.. _`Symfony Polyfill`: https://github.com/symfony/polyfill diff --git a/cookbook/security/custom_password_authenticator.rst b/cookbook/security/custom_password_authenticator.rst index 9ed7bbf98b3..c8d54869c11 100644 --- a/cookbook/security/custom_password_authenticator.rst +++ b/cookbook/security/custom_password_authenticator.rst @@ -4,20 +4,20 @@ How to Create a Custom Form Password Authenticator ================================================== -.. tip:: - - Check out :doc:`/cookbook/security/guard-authentication` for a simpler and more - flexible way to accomplish custom authentication tasks like this. - Imagine you want to allow access to your website only between 2pm and 4pm -UTC. In this entry, you'll learn how to do this for a login form (i.e. where -your user submits their username and password). +UTC. Before Symfony 2.4, you had to create a custom token, factory, listener +and provider. In this entry, you'll learn how to do this for a login form +(i.e. where your user submits their username and password). +Before Symfony 2.6, you had to use the password encoder to authenticate the user password. The Password Authenticator -------------------------- +.. versionadded:: 2.6 + The ``UserPasswordEncoderInterface`` interface was introduced in Symfony 2.6. + First, create a new class that implements -:class:`Symfony\\Component\\Security\\Http\\Authentication\\SimpleFormAuthenticatorInterface`. +:class:`Symfony\\Component\\Security\\Core\\Authentication\\SimpleFormAuthenticatorInterface`. Eventually, this will allow you to create custom logic for authenticating the user:: @@ -25,13 +25,13 @@ the user:: namespace Acme\HelloBundle\Security; use Symfony\Component\HttpFoundation\Request; + use Symfony\Component\Security\Core\Authentication\SimpleFormAuthenticatorInterface; use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; use Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken; use Symfony\Component\Security\Core\Encoder\UserPasswordEncoderInterface; - use Symfony\Component\Security\Core\Exception\CustomUserMessageAuthenticationException; + use Symfony\Component\Security\Core\Exception\AuthenticationException; use Symfony\Component\Security\Core\Exception\UsernameNotFoundException; use Symfony\Component\Security\Core\User\UserProviderInterface; - use Symfony\Component\Security\Http\Authentication\SimpleFormAuthenticatorInterface; class TimeAuthenticator implements SimpleFormAuthenticatorInterface { @@ -47,9 +47,7 @@ the user:: try { $user = $userProvider->loadUserByUsername($token->getUsername()); } catch (UsernameNotFoundException $e) { - // CAUTION: this message will be returned to the client - // (so don't put any un-trusted messages / error strings here) - throw new CustomUserMessageAuthenticationException('Invalid username or password'); + throw new AuthenticationException('Invalid username or password'); } $passwordValid = $this->encoder->isPasswordValid($user, $token->getCredentials()); @@ -57,9 +55,7 @@ the user:: if ($passwordValid) { $currentHour = date('G'); if ($currentHour < 14 || $currentHour > 16) { - // CAUTION: this message will be returned to the client - // (so don't put any un-trusted messages / error strings here) - throw new CustomUserMessageAuthenticationException( + throw new AuthenticationException( 'You can only log in between 2 and 4!', 100 ); @@ -73,9 +69,7 @@ the user:: ); } - // CAUTION: this message will be returned to the client - // (so don't put any un-trusted messages / error strings here) - throw new CustomUserMessageAuthenticationException('Invalid username or password'); + throw new AuthenticationException('Invalid username or password'); } public function supportsToken(TokenInterface $token, $providerKey) diff --git a/cookbook/security/entity_provider.rst b/cookbook/security/entity_provider.rst index 3c4ab69838b..84b53b84af3 100644 --- a/cookbook/security/entity_provider.rst +++ b/cookbook/security/entity_provider.rst @@ -145,13 +145,13 @@ by running: .. code-block:: bash - $ php bin/console doctrine:generate:entities AppBundle/Entity/User + $ php app/console doctrine:generate:entities AppBundle/Entity/User Next, make sure to :ref:`create the database table `: .. code-block:: bash - $ php bin/console doctrine:schema:update --force + $ php app/console doctrine:schema:update --force What's this UserInterface? ~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -291,6 +291,8 @@ name ``our_db_provider`` isn't important: it just needs to match the value of the ``provider`` key under your firewall. Or, if you don't set the ``provider`` key under your firewall, the first "user provider" is automatically used. +.. include:: /cookbook/security/_ircmaxwell_password-compat.rst.inc + Creating your First User ~~~~~~~~~~~~~~~~~~~~~~~~ @@ -422,17 +424,19 @@ both are unique in the database. Unfortunately, the native entity provider is only able to handle querying via a single property on the user. To do this, make your ``UserRepository`` implement a special -:class:`Symfony\\Bridge\\Doctrine\\Security\\User\\UserLoaderInterface`. This -interface only requires one method: ``loadUserByUsername($username)``:: +:class:`Symfony\\Component\\Security\\Core\\User\\UserProviderInterface`. This +interface requires three methods: ``loadUserByUsername($username)``, +``refreshUser(UserInterface $user)``, and ``supportsClass($class)``:: // src/AppBundle/Entity/UserRepository.php namespace AppBundle\Entity; - use Symfony\Bridge\Doctrine\Security\User\UserLoaderInterface; use Symfony\Component\Security\Core\User\UserInterface; + use Symfony\Component\Security\Core\User\UserProviderInterface; + use Symfony\Component\Security\Core\Exception\UnsupportedUserException; use Doctrine\ORM\EntityRepository; - class UserRepository extends EntityRepository implements UserLoaderInterface + class UserRepository extends EntityRepository implements UserProviderInterface { public function loadUserByUsername($username) { @@ -443,8 +447,31 @@ interface only requires one method: ``loadUserByUsername($username)``:: ->getQuery() ->getOneOrNullResult(); } + + public function refreshUser(UserInterface $user) + { + $class = get_class($user); + if (!$this->supportsClass($class)) { + throw new UnsupportedUserException( + sprintf( + 'Instances of "%s" are not supported.', + $class + ) + ); + } + + return $this->find($user->getId()); + } + + public function supportsClass($class) + { + return $this->getEntityName() === $class + || is_subclass_of($class, $this->getEntityName()); + } } +For more details on these methods, see :class:`Symfony\\Component\\Security\\Core\\User\\UserProviderInterface`. + .. tip:: Don't forget to add the repository class to the diff --git a/cookbook/security/form_login.rst b/cookbook/security/form_login.rst index 27ba29d6f07..6d5f7c64f14 100644 --- a/cookbook/security/form_login.rst +++ b/cookbook/security/form_login.rst @@ -253,7 +253,7 @@ redirect to the URL defined by some ``account`` route, use the following:
getMessage() ?>
- + diff --git a/cookbook/security/form_login_setup.rst b/cookbook/security/form_login_setup.rst index f0b25bb527e..482f1b12eab 100644 --- a/cookbook/security/form_login_setup.rst +++ b/cookbook/security/form_login_setup.rst @@ -164,6 +164,11 @@ form:: ); } +.. versionadded:: 2.6 + The ``security.authentication_utils`` service and the + :class:`Symfony\\Component\\Security\\Http\\Authentication\\AuthenticationUtils` + class were introduced in Symfony 2.6. + Don't let this controller confuse you. As you'll see in a moment, when the user submits the form, the security system automatically handles the form submission for you. If the user had submitted an invalid username or password, @@ -210,7 +215,7 @@ Finally, create the template:
getMessage() ?>
- + diff --git a/cookbook/security/guard-authentication.rst b/cookbook/security/guard-authentication.rst deleted file mode 100644 index 1dd94e76645..00000000000 --- a/cookbook/security/guard-authentication.rst +++ /dev/null @@ -1,579 +0,0 @@ -.. index:: - single: Security; Custom Authentication - -How to Create a Custom Authentication System with Guard -======================================================= - -Whether you need to build a traditional login form, an API token authentication system -or you need to integrate with some proprietary single-sign-on system, the Guard -component can make it easy... and fun! - -In this example, you'll build an API token authentication system and learn how -to work with Guard. - -Create a User and a User Provider ---------------------------------- - -No matter how you authenticate, you need to create a User class that implements ``UserInterface`` -and configure a :doc:`user provider `. In this -example, users are stored in the database via Doctrine, and each user has an ``apiKey`` -property they use to access their account via the API:: - - // src/AppBundle/Entity/User.php - namespace AppBundle\Entity; - - use Symfony\Component\Security\Core\User\UserInterface; - use Doctrine\ORM\Mapping as ORM; - - /** - * @ORM\Entity - * @ORM\Table(name="user") - */ - class User implements UserInterface - { - /** - * @ORM\Id - * @ORM\GeneratedValue(strategy="AUTO") - * @ORM\Column(type="integer") - */ - private $id; - - /** - * @ORM\Column(type="string", unique=true) - */ - private $username; - - /** - * @ORM\Column(type="string", unique=true) - */ - private $apiKey; - - public function getUsername() - { - return $this->username; - } - - public function getRoles() - { - return ['ROLE_USER']; - } - - public function getPassword() - { - } - public function getSalt() - { - } - public function eraseCredentials() - { - } - - // more getters/setters - } - -.. tip:: - - This User doesn't have a password, but you can add a ``password`` property if - you also want to allow this user to login with a password (e.g. via a login form). - -Your ``User`` class doesn't need to be stored in Doctrine: do whatever you need. -Next, make sure you've configured a "user provider" for the user: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/security.yml - security: - # ... - - providers: - your_db_provider: - entity: - class: AppBundle:User - - # ... - - .. code-block:: xml - - - - - - - - - - - - - - - - - .. code-block:: php - - // app/config/security.php - $container->loadFromExtension('security', array( - // ... - - 'providers' => array( - 'your_db_provider' => array( - 'entity' => array( - 'class' => 'AppBundle:User', - ), - ), - ), - - // ... - )); - -That's it! Need more information about this step, see: - -* :doc:`/cookbook/security/entity_provider` -* :doc:`/cookbook/security/custom_provider` - -Step 1) Create the Authenticator Class --------------------------------------- - -Suppose you have an API where your clients will send an ``X-AUTH-TOKEN`` header -on each request with their API token. Your job is to read this and find the associated -user (if any). - -To create a custom authentication system, just create a class and make it implement -:class:`Symfony\\Component\\Security\\Guard\\GuardAuthenticatorInterface`. Or, extend -the simpler :class:`Symfony\\Component\\Security\\Guard\\AbstractGuardAuthenticator`. -This requires you to implement six methods:: - - // src/AppBundle/Security/TokenAuthenticator.php - namespace AppBundle\Security; - - use Symfony\Component\HttpFoundation\Request; - use Symfony\Component\HttpFoundation\JsonResponse; - use Symfony\Component\Security\Core\User\UserInterface; - use Symfony\Component\Security\Guard\AbstractGuardAuthenticator; - use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; - use Symfony\Component\Security\Core\Exception\AuthenticationException; - use Symfony\Component\Security\Core\User\UserProviderInterface; - use Doctrine\ORM\EntityManager; - - class TokenAuthenticator extends AbstractGuardAuthenticator - { - private $em; - - public function __construct(EntityManager $em) - { - $this->em = $em; - } - - /** - * Called on every request. Return whatever credentials you want, - * or null to stop authentication. - */ - public function getCredentials(Request $request) - { - if (!$token = $request->headers->get('X-AUTH-TOKEN')) { - // no token? Return null and no other methods will be called - return; - } - - // What you return here will be passed to getUser() as $credentials - return array( - 'token' => $token, - ); - } - - public function getUser($credentials, UserProviderInterface $userProvider) - { - $apiKey = $credentials['token']; - - // if null, authentication will fail - // if a User object, checkCredentials() is called - return $this->em->getRepository('AppBundle:User') - ->findOneBy(array('apiKey' => $apiKey)); - } - - public function checkCredentials($credentials, UserInterface $user) - { - // check credentials - e.g. make sure the password is valid - // no credential check is needed in this case - - // return true to cause authentication success - return true; - } - - public function onAuthenticationSuccess(Request $request, TokenInterface $token, $providerKey) - { - // on success, let the request continue - return null; - } - - public function onAuthenticationFailure(Request $request, AuthenticationException $exception) - { - $data = array( - 'message' => strtr($exception->getMessageKey(), $exception->getMessageData()) - - // or to translate this message - // $this->translator->trans($exception->getMessageKey(), $exception->getMessageData()) - ); - - return new JsonResponse($data, 403); - } - - /** - * Called when authentication is needed, but it's not sent - */ - public function start(Request $request, AuthenticationException $authException = null) - { - $data = array( - // you might translate this message - 'message' => 'Authentication Required' - ); - - return new JsonResponse($data, 401); - } - - public function supportsRememberMe() - { - return false; - } - } - -Nice work! Each method is explained below: :ref:`The Guard Authenticator Methods`. - -Step 2) Configure the Authenticator ------------------------------------ - -To finish this, register the class as a service: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/services.yml - services: - app.token_authenticator: - class: AppBundle\Security\TokenAuthenticator - arguments: ['@doctrine.orm.entity_manager'] - - .. code-block:: xml - - - - - - - - - .. code-block:: php - - // app/config/services.php - use Symfony\Component\DependencyInjection\Definition; - use Symfony\Component\DependencyInjection\Reference; - - $container->setDefinition('app.token_authenticator', new Definition( - 'AppBundle\Security\TokenAuthenticator', - array(new Reference('doctrine.orm.entity_manager')) - )); - -Finally, configure your ``firewalls`` key in ``security.yml`` to use this authenticator: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/security.yml - security: - # ... - - firewalls: - # ... - - main: - anonymous: ~ - logout: ~ - - guard: - authenticators: - - app.token_authenticator - - # if you want, disable storing the user in the session - # stateless: true - - # maybe other things, like form_login, remember_me, etc - # ... - - .. code-block:: xml - - - - - - - - - - - - app.token_authenticator - - - - - - - - .. code-block:: php - - // app/config/security.php - - // .. - - $container->loadFromExtension('security', array( - 'firewalls' => array( - 'main' => array( - 'pattern' => '^/', - 'anonymous' => true, - 'logout' => true, - 'guard' => array( - 'authenticators' => array( - 'app.token_authenticator' - ), - ), - // ... - ), - ), - )); - -You did it! You now have a fully-working API token authentication system. If your -homepage required ``ROLE_USER``, then you could test it under different conditions: - -.. code-block:: bash - - # test with no token - curl http://localhost:8000/ - # {"message":"Authentication Required"} - - # test with a bad token - curl -H "X-AUTH-TOKEN: FAKE" http://localhost:8000/ - # {"message":"Username could not be found."} - - # test with a working token - curl -H "X-AUTH-TOKEN: REAL" http://localhost:8000/ - # the homepage controller is executed: the page loads normally - -Now, learn more about what each method does. - -.. _guard-auth-methods: - -The Guard Authenticator Methods -------------------------------- - -Each authenticator needs the following methods: - -**getCredentials(Request $request)** - This will be called on *every* request and your job is to read the token (or - whatever your "authentication" information is) from the request and return it. - If you return ``null``, the rest of the authentication process is skipped. Otherwise, - ``getUser()`` will be called and the return value is passed as the first argument. - -**getUser($credentials, UserProviderInterface $userProvider)** - If ``getCredentials()`` returns a non-null value, then this method is called - and its return value is passed here as the ``$credentials`` argument. Your job - is to return an object that implements ``UserInterface``. If you do, then - ``checkCredentials()`` will be called. If you return ``null`` (or throw an - :ref:`AuthenticationException `) - authentication will fail. - -**checkCredentials($credentials, UserInterface $user)** - If ``getUser()`` returns a User object, this method is called. Your job is to - verify if the credentials are correct. For a login form, this is where you would - check that the password is correct for the user. To pass authentication, return - ``true``. If you return *anything* else - (or throw an :ref:`AuthenticationException `), - authentication will fail. - -**onAuthenticationSuccess(Request $request, TokenInterface $token, $providerKey)** - This is called after successful authentication and your job is to either - return a :class:`Symfony\\Component\\HttpFoundation\\Response` object - that will be sent to the client or ``null`` to continue the request - (e.g. allow the route/controller to be called like normal). Since this - is an API where each request authenticates itself, you want to return - ``null``. - -**onAuthenticationFailure(Request $request, AuthenticationException $exception)** - This is called if authentication fails. Your job - is to return the :class:`Symfony\\Component\\HttpFoundation\\Response` - object that should be sent to the client. The ``$exception`` will tell you - *what* went wrong during authentication. - -**start(Request $request, AuthenticationException $authException = null)** - This is called if the client accesses a URI/resource that requires authentication, - but no authentication details were sent (i.e. you returned ``null`` from - ``getCredentials()``). Your job is to return a - :class:`Symfony\\Component\\HttpFoundation\\Response` object that helps - the user authenticate (e.g. a 401 response that says "token is missing!"). - -**supportsRememberMe** - If you want to support "remember me" functionality, return true from this method. - You will still need to active ``remember_me`` under your firewall for it to work. - Since this is a stateless API, you do not want to support "remember me" - functionality in this example. - -.. _guard-customize-error: - -Customizing Error Messages --------------------------- - -When ``onAuthenticationFailure()`` is called, it is passed an ``AuthenticationException`` -that describes *how* authentication failed via its ``$e->getMessageKey()`` (and -``$e->getMessageData()``) method. The message will be different based on *where* -authentication fails (i.e. ``getUser()`` versus ``checkCredentials()``). - -But, you can easily return a custom message by throwing a -:class:`Symfony\\Component\\Security\\Core\\Exception\\CustomUserMessageAuthenticationException`. -You can throw this from ``getCredentials()``, ``getUser()`` or ``checkCredentials()`` -to cause a failure:: - - // src/AppBundle/Security/TokenAuthenticator.php - // ... - - use Symfony\Component\Security\Core\Exception\CustomUserMessageAuthenticationException; - - class TokenAuthenticator extends AbstractGuardAuthenticator - { - // ... - - public function getCredentials(Request $request) - { - // ... - - if ($token == 'ILuvAPIs') { - throw new CustomUserMessageAuthenticationException( - 'ILuvAPIs is not a real API key: it\'s just a silly phrase' - ); - } - - // ... - } - - // ... - } - -In this case, since "ILuvAPIs" is a ridiculous API key, you could include an easter -egg to return a custom message if someone tries this: - -.. code-block:: bash - - curl -H "X-AUTH-TOKEN: ILuvAPIs" http://localhost:8000/ - # {"message":"ILuvAPIs is not a real API key: it's just a silly phrase"} - -Frequently Asked Questions --------------------------- - -**Can I have Multiple Authenticators?** - Yes! But when you do, you'll need choose just *one* authenticator to be your - "entry_point". This means you'll need to choose *which* authenticator's ``start()`` - method should be called when an anonymous user tries to access a protected resource. - For example, suppose you have an ``app.form_login_authenticator`` that handles - a traditional form login. When a user accesses a protected page anonymously, you - want to use the ``start()`` method from the form authenticator and redirect them - to the login page (instead of returning a JSON response): - - .. configuration-block:: - - .. code-block:: yaml - - # app/config/security.yml - security: - # ... - - firewalls: - # ... - - main: - anonymous: ~ - logout: ~ - - guard: - authenticators: - - app.token_authenticator - - # if you want, disable storing the user in the session - # stateless: true - - # maybe other things, like form_login, remember_me, etc - # ... - - .. code-block:: xml - - - - - - - - - - - - app.token_authenticator - - - - - - - - .. code-block:: php - - // app/config/security.php - - // .. - - $container->loadFromExtension('security', array( - 'firewalls' => array( - 'main' => array( - 'pattern' => '^/', - 'anonymous' => true, - 'logout' => true, - 'guard' => array( - 'authenticators' => array( - 'app.token_authenticator' - ), - ), - // ... - ), - ), - )); - -**Can I use this with ``form_login``?** - Yes! ``form_login`` is *one* way to authenticate a user, so you could use - it *and* then add one or more authenticators. Using a guard authenticator doesn't - collide with other ways to authenticate. - -**Can I use this with FOSUserBundle?** - Yes! Actually, FOSUserBundle doesn't handle security: it simply gives you a - ``User`` object and some routes and controllers to help with login, registration, - forgot password, etc. When you use FOSUserBundle, you typically use ``form_login`` - to actually authenticate the user. You can continue doing that (see previous - question) or use the ``User`` object from FOSUserBundle and create your own - authenticator(s) (just like in this article). diff --git a/cookbook/security/impersonating_user.rst b/cookbook/security/impersonating_user.rst index 1dde8a7acfd..edd9f035383 100644 --- a/cookbook/security/impersonating_user.rst +++ b/cookbook/security/impersonating_user.rst @@ -84,9 +84,11 @@ to show a link to exit impersonation: .. code-block:: html+php isGranted('ROLE_PREVIOUS_ADMIN')): ?> -
+ Exit impersonation diff --git a/cookbook/security/index.rst b/cookbook/security/index.rst index 61efff1aa23..c9a478c927a 100644 --- a/cookbook/security/index.rst +++ b/cookbook/security/index.rst @@ -9,7 +9,6 @@ Authentication (Identifying/Logging in the User) form_login_setup entity_provider - guard-authentication remember_me impersonating_user form_login @@ -22,10 +21,8 @@ Authentication (Identifying/Logging in the User) csrf_in_login_form named_encoders multiple_user_providers - multiple_guard_authenticators firewall_restriction host_restriction - user_checkers Authorization (Denying Access) ------------------------------ diff --git a/cookbook/security/multiple_guard_authenticators.rst b/cookbook/security/multiple_guard_authenticators.rst deleted file mode 100644 index acb1f774422..00000000000 --- a/cookbook/security/multiple_guard_authenticators.rst +++ /dev/null @@ -1,172 +0,0 @@ -How to Use Multiple Guard Authenticators -======================================== - -.. versionadded:: 2.8 - The ``Guard`` component was introduced in Symfony 2.8. - -The Guard authentication component allows you to easily use many different -authenticators at a time. - -An entry point is a service id (of one of your authenticators) whose -``start()`` method is called to start the authentication process. - -Multiple Authenticators with Shared Entry Point ------------------------------------------------ - -Sometimes you want to offer your users different authentication mechanisms like -a form login and a Facebook login while both entry points redirect the user to -the same login page. -However, in your configuration you have to explicitly say which entry point -you want to use. - -This is how your security configuration can look in action: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/security.yml - security: - # ... - firewalls: - default: - anonymous: ~ - guard: - authenticators: - - app.form_login_authenticator - - app.facebook_connect_authenticator - entry_point: app.form_login_authenticator - - .. code-block:: xml - - - - - - - - - - - app.form_login_authenticator - app.facebook_connect_authenticator - - - - - - .. code-block:: php - - // app/config/security.php - $container->loadFromExtension('security', array( - // ... - 'firewalls' => array( - 'default' => array( - 'anonymous' => null, - 'guard' => array( - 'entry_point' => 'app.form_login_authenticator', - 'authenticators' => array( - 'app.form_login_authenticator', - 'app.facebook_connect_authenticator' - ), - ), - ), - ), - )); - -There is one limitation with this approach - you have to use exactly one entry point. - -Multiple Authenticators with Separate Entry Points --------------------------------------------------- - -However, there are use cases where you have authenticators that protect different -parts of your application. For example, you have a login form that protects -the secured area of your application front-end and API end points that are -protected with API tokens. As you can only configure one entry point per firewall, -the solution is to split the configuration into two separate firewalls: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/security.yml - security: - # ... - firewalls: - api: - pattern: ^/api/ - guard: - authenticators: - - app.api_token_authenticator - default: - anonymous: ~ - guard: - authenticators: - - app.form_login_authenticator - access_control: - - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY } - - { path: ^/api, roles: ROLE_API_USER } - - { path: ^/, roles: ROLE_USER } - - .. code-block:: xml - - - - - - - - - - app.api_token_authenticator - - - - - - app.form_login_authenticator - - - - - - - - - .. code-block:: php - - // app/config/security.php - $container->loadFromExtension('security', array( - // ... - 'firewalls' => array( - 'api' => array( - 'pattern' => '^/api', - 'guard' => array( - 'authenticators' => array( - 'app.api_token_authenticator', - ), - ), - ), - 'default' => array( - 'anonymous' => null, - 'guard' => array( - 'authenticators' => array( - 'app.form_login_authenticator', - ), - ), - ), - ), - 'access_control' => array( - array('path' => '^/login', 'role' => 'IS_AUTHENTICATED_ANONYMOUSLY'), - array('path' => '^/api', 'role' => 'ROLE_API_USER'), - array('path' => '^/', 'role' => 'ROLE_USER'), - ), - )); diff --git a/cookbook/security/pre_authenticated.rst b/cookbook/security/pre_authenticated.rst index 37b177ccd6b..2d8e6202528 100644 --- a/cookbook/security/pre_authenticated.rst +++ b/cookbook/security/pre_authenticated.rst @@ -92,6 +92,9 @@ in the x509 firewall configuration respectively. REMOTE_USER Based Authentication -------------------------------- +.. versionadded:: 2.6 + REMOTE_USER pre authenticated firewall was introduced in Symfony 2.6. + A lot of authentication modules, like ``auth_kerb`` for Apache provide the username using the ``REMOTE_USER`` environment variable. This variable can be trusted by the application since the authentication happened before the request reached it. diff --git a/cookbook/security/remember_me.rst b/cookbook/security/remember_me.rst index 6e6650974f2..77a69965d0d 100644 --- a/cookbook/security/remember_me.rst +++ b/cookbook/security/remember_me.rst @@ -22,7 +22,7 @@ the session lasts using a cookie with the ``remember_me`` firewall option: main: # ... remember_me: - secret: '%secret%' + key: '%secret%' lifetime: 604800 # 1 week in seconds path: / # by default, the feature is enabled by checking a @@ -48,7 +48,7 @@ the session lasts using a cookie with the ``remember_me`` firewall option: - - - - - - - - - .. code-block:: php - - // app/config/services.php - $container->register('app.user_checker', 'AppBundle\Security\UserChecker'); - -All that's left to do is add the checker to the desired firewall where the value -is the service id of your user checker: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/security.yml - - # ... - security: - firewalls: - secured_area: - pattern: ^/ - user_checker: app.user_checker - # ... - - .. code-block:: xml - - - - - - - - - app.user_checker - - - - - - .. code-block:: php - - // app/config/security.php - - // ... - $container->loadFromExtension('security', array( - 'firewalls' => array( - 'secured_area' => array( - 'pattern' => '^/', - 'user_checker' => 'app.user_checker', - // ... - ), - ), - )); - - -Additional Configurations -------------------------- - -It's possible to have a different user checker per firewall. - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/security.yml - - # ... - security: - firewalls: - admin: - pattern: ^/admin - user_checker: app.admin_user_checker - # ... - secured_area: - pattern: ^/ - user_checker: app.user_checker - - .. code-block:: xml - - - - - - - - - app.admin_user_checker - - - - app.user_checker - - - - - - .. code-block:: php - - // app/config/security.php - - // ... - $container->loadFromExtension('security', array( - 'firewalls' => array( - 'admin' => array( - 'pattern' => '^/admin', - 'user_checkers' => 'app.admin_user_checker' - // ... - ), - 'secured_area' => array( - 'pattern' => '^/', - 'user_checker' => 'app.user_checker', - // ... - ), - ), - )); - -.. note:: - - Internally the user checkers are aliased per firewall. For ``secured_area`` - the alias ``security.user_checker.secured_area`` would point to ``app.user_checker``. diff --git a/cookbook/security/voters.rst b/cookbook/security/voters.rst index 8649295180a..9b7be023bd8 100644 --- a/cookbook/security/voters.rst +++ b/cookbook/security/voters.rst @@ -35,175 +35,120 @@ The Voter Interface A custom voter needs to implement :class:`Symfony\\Component\\Security\\Core\\Authorization\\Voter\\VoterInterface` -or extend :class:`Symfony\\Component\\Security\\Core\\Authorization\\Voter\\Voter`, +or extend :class:`Symfony\\Component\\Security\\Core\\Authorization\\Voter\\AbstractVoter`, which makes creating a voter even easier. .. code-block:: php - abstract class Voter implements VoterInterface + abstract class AbstractVoter implements VoterInterface { - abstract protected function supports($attribute, $subject); - abstract protected function voteOnAttribute($attribute, $subject, TokenInterface $token); + abstract protected function getSupportedClasses(); + abstract protected function getSupportedAttributes(); + abstract protected function isGranted($attribute, $object, $user = null); } -.. _how-to-use-the-voter-in-a-controller: - -Setup: Checking for Access in a Controller ------------------------------------------- - -Suppose you have a ``Post`` object and you need to decide whether or not the current -user can *edit* or *view* the object. In your controller, you'll check access with -code like this:: - - // src/AppBundle/Controller/PostController.php - // ... - - class PostController extends Controller - { - /** - * @Route("/posts/{id}", name="post_show") - */ - public function showAction($id) - { - // get a Post object - e.g. query for it - $post = ...; - - // check for "view" access: calls all voters - $this->denyAccessUnlessGranted('view', $post); - - // ... - } - - /** - * @Route("/posts/{id}/edit", name="post_edit") - */ - public function editAction($id) - { - // get a Post object - e.g. query for it - $post = ...; - - // check for "edit" access: calls all voters - $this->denyAccessUnlessGranted('edit', $post); - - // ... - } - } - -The ``denyAccessUnlessGranted()`` method (and also, the simpler ``isGranted()`` method) -calls out to the "voter" system. Right now, no voters will vote on whether or not -the user can "view" or "edit" a ``Post``. But you can create your *own* voter that -decides this using whatever logic you want. - -.. tip:: - - The ``denyAccessUnlessGranted()`` function and the ``isGranted()`` functions - are both just shortcuts to call ``isGranted()`` on the ``security.authorization_checker`` - service. +In this example, the voter will check if the user has access to a specific +object according to your custom conditions (e.g. they must be the owner of +the object). If the condition fails, you'll return +``VoterInterface::ACCESS_DENIED``, otherwise you'll return +``VoterInterface::ACCESS_GRANTED``. In case the responsibility for this decision +does not belong to this voter, it will return ``VoterInterface::ACCESS_ABSTAIN``. Creating the custom Voter ------------------------- -Suppose the logic to decide if a user can "view" or "edit" a ``Post`` object is -pretty complex. For example, a ``User`` can always edit or view a ``Post`` they created. -And if a ``Post`` is marked as "public", anyone can view it. A voter for this situation -would look like this:: +The goal is to create a voter that checks if a user has access to view or +edit a particular object. Here's an example implementation: - // src/AppBundle/Security/PostVoter.php - namespace AppBundle\Security; +.. code-block:: php - use AppBundle\Entity\Post; + // src/AppBundle/Security/Authorization/Voter/PostVoter.php + namespace AppBundle\Security\Authorization\Voter; + + use Symfony\Component\Security\Core\Authorization\Voter\AbstractVoter; use AppBundle\Entity\User; - use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; - use Symfony\Component\Security\Core\Authorization\Voter\Voter; + use Symfony\Component\Security\Core\User\UserInterface; - class PostVoter extends Voter + class PostVoter extends AbstractVoter { - // these strings are just invented: you can use anything const VIEW = 'view'; const EDIT = 'edit'; - protected function supports($attribute, $subject) + protected function getSupportedAttributes() { - // if the attribute isn't one we support, return false - if (!in_array($attribute, array(self::VIEW, self::EDIT))) { - return false; - } - - // only vote on Post objects inside this voter - if (!$subject instanceof Post) { - return false; - } - - return true; + return array(self::VIEW, self::EDIT); } - protected function voteOnAttribute($attribute, $subject, TokenInterface $token) + protected function getSupportedClasses() { - $user = $token->getUser(); + return array('AppBundle\Entity\Post'); + } - if (!$user instanceof User) { - // the user must be logged in; if not, deny access + protected function isGranted($attribute, $post, $user = null) + { + // make sure there is a user object (i.e. that the user is logged in) + if (!$user instanceof UserInterface) { return false; } - // you know $subject is a Post object, thanks to supports - /** @var Post $post */ - $post = $subject; + // double-check that the User object is the expected entity (this + // only happens when you did not configure the security system properly) + if (!$user instanceof User) { + throw new \LogicException('The user is somehow not our User class!'); + } switch($attribute) { case self::VIEW: - return $this->canView($post, $user); - case self::EDIT: - return $this->canEdit($post, $user); - } + // the data object could have for example a method isPrivate() + // which checks the Boolean attribute $private + if (!$post->isPrivate()) { + return true; + } - throw new \LogicException('This code should not be reached!'); - } + break; + case self::EDIT: + // this assumes that the data object has a getOwner() method + // to get the entity of the user who owns this data object + if ($user->getId() === $post->getOwner()->getId()) { + return true; + } - private function canView(Post $post, User $user) - { - // if they can edit, they can view - if ($this->canEdit($post, $user)) { - return true; + break; } - // the Post object could have, for example, a method isPrivate() - // that checks a boolean $private property - return !$post->isPrivate(); - } - - private function canEdit(Post $post, User $user) - { - // this assumes that the data object has a getOwner() method - // to get the entity of the user who owns this data object - return $user === $post->getOwner(); + return false; } } -That's it! The voter is done! Next, :ref:`configure it `. +That's it! The voter is done. The next step is to inject the voter into +the security layer. + +To recap, here's what's expected from the three abstract methods: -To recap, here's what's expected from the two abstract methods: +:method:`Symfony\\Component\\Security\\Core\\Authorization\\Voter\\AbstractVoter::getSupportedClasses` + It tells Symfony that your voter should be called whenever an object of one + of the given classes is passed to ``isGranted()``. For example, if you return + ``array('AppBundle\Model\Product')``, Symfony will call your voter when a + ``Product`` object is passed to ``isGranted()``. -``Voter::supports($attribute, $subject)`` - When ``isGranted()`` (or ``denyAccessUnlessGranted()``) is called, the first - argument is passed here as ``$attribute`` (e.g. ``ROLE_USER``, ``edit``) and - the second argument (if any) is passed as ``$subject`` (e.g. ``null``, a ``Post`` - object). Your job is to determine if your voter should vote on the attribute/subject - combination. If you return true, ``voteOnAttribute()`` will be called. Otherwise, - your voter is done: some other voter should process this. In this example, you - return ``true`` if the attribue is ``view`` or ``edit`` and if the object is - a ``Post`` instance. +:method:`Symfony\\Component\\Security\\Core\\Authorization\\Voter\\AbstractVoter::getSupportedAttributes` + It tells Symfony that your voter should be called whenever one of these + strings is passed as the first argument to ``isGranted()``. For example, if + you return ``array('CREATE', 'READ')``, then Symfony will call your voter + when one of these is passed to ``isGranted()``. -``voteOnAttribute($attribute, $subject, TokenInterface $token)`` - If you return ``true`` from ``supports()``, then this method is called. Your - job is simple: return ``true`` to allow access and ``false`` to deny access. - The ``$token`` can be used to find the current user object (if any). In this - example, all of the complex business logic is included to determine access. +:method:`Symfony\\Component\\Security\\Core\\Authorization\\Voter\\AbstractVoter::isGranted` + It implements the business logic that verifies whether or not a given user is + allowed access to a given attribute (e.g. ``CREATE`` or ``READ``) on a given + object. This method must return a boolean. -.. _declaring-the-voter-as-a-service: +.. note:: + + Currently, to use the ``AbstractVoter`` base class, you must be creating a + voter where an object is always passed to ``isGranted()``. -Configuring the Voter ---------------------- +Declaring the Voter as a Service +-------------------------------- To inject the voter into the security layer, you must declare it as a service and tag it with ``security.voter``: @@ -214,12 +159,11 @@ and tag it with ``security.voter``: # app/config/services.yml services: - app.post_voter: - class: AppBundle\Security\PostVoter + security.access.post_voter: + class: AppBundle\Security\Authorization\Voter\PostVoter + public: false tags: - { name: security.voter } - # small performance boost - public: false .. code-block:: xml @@ -231,8 +175,8 @@ and tag it with ``security.voter``: http://symfony.com/schema/dic/services/services-1.0.xsd"> - @@ -246,124 +190,61 @@ and tag it with ``security.voter``: // app/config/services.php use Symfony\Component\DependencyInjection\Definition; - $container->register('app.post_voter', 'AppBundle\Security\PostVoter') + $definition = new Definition('AppBundle\Security\Authorization\Voter\PostVoter'); + $definition ->setPublic(false) ->addTag('security.voter') ; -You're done! Now, when you :ref:`call isGranted() with view/edit and a Post object `, -your voter will be executed and you can control access. + $container->setDefinition('security.access.post_voter', $definition); -Checking for Roles inside a Voter ---------------------------------- +How to Use the Voter in a Controller +------------------------------------ -What if you want to call ``isGranted()`` from *inside* your voter - e.g. you want -to see if the current user has ``ROLE_SUPER_ADMIN``. That's possible by injecting -the :class:`Symfony\\Component\\Security\\Core\\Authorization\\AccessDecisionManager` -into your voter. You can use this to, for example, *always* allow access to a user -with ``ROLE_SUPER_ADMIN``:: +The registered voter will then always be asked as soon as the method ``isGranted()`` +from the authorization checker is called. When extending the base ``Controller`` +class, you can simply call the +:method:`Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller::denyAccessUnlessGranted()` +method:: - // src/AppBundle/Security/PostVoter.php + // src/AppBundle/Controller/PostController.php + namespace AppBundle\Controller; - // ... - use Symfony\Component\Security\Core\Authorization\AccessDecisionManagerInterface; + use Symfony\Bundle\FrameworkBundle\Controller\Controller; + use Symfony\Component\HttpFoundation\Response; - class PostVoter extends Voter + class PostController extends Controller { - // ... - - private $decisionManager; - - public function __construct(AccessDecisionManagerInterface $decisionManager) - { - $this->decisionManager = $decisionManager; - } - - protected function voteOnAttribute($attribute, $subject, TokenInterface $token) + public function showAction($id) { - // ... + // get a Post instance + $post = ...; - // ROLE_SUPER_ADMIN can do anything! The power! - if ($this->decisionManager->decide($token, array('ROLE_SUPER_ADMIN'))) { - return true; - } + // keep in mind that this will call all registered security voters + $this->denyAccessUnlessGranted('view', $post, 'Unauthorized access!'); - // ... all the normal voter logic + return new Response('

'.$post->getName().'

'); } } -Next, update ``services.yml`` to inject the ``security.access.decision_manager`` -service: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/services.yml - services: - app.post_voter: - class: AppBundle\Security\PostVoter - arguments: ['@security.access.decision_manager'] - public: false - tags: - - { name: security.voter } - - .. code-block:: xml - - - - - - - - - - - - - - - .. code-block:: php - - // app/config/services.php - use Symfony\Component\DependencyInjection\Definition; - use Symfony\Component\DependencyInjection\Reference; - - $container->register('app.post_voter', 'AppBundle\Security\PostVoter') - ->addArgument(new Reference('security.access.decision_manager')) - ->setPublic(false) - ->addTag('security.voter') - ; - -That's it! Calling ``decide()`` on the ``AccessDecisionManager`` is essentially -the same as calling ``isGranted()`` from a controller or other places -(it's just a little lower-level, which is necessary for a voter). - -.. note:: +.. versionadded:: 2.6 + The ``denyAccessUnlessGranted()`` method was introduced in Symfony 2.6. + Prior to Symfony 2.6, you had to call the ``isGranted()`` method of the + ``security.context`` service and throw the exception yourself. - The ``security.access.decision_manager`` is private. This means you can't access - it directly from a controller: you can only inject it into other services. That's - ok: use ``security.authorization_checker`` instead in all cases except for voters. +It's that easy! .. _security-voters-change-strategy: Changing the Access Decision Strategy ------------------------------------- -Normally, only one voter will vote at any given time (the rest will "abstain", which -means they return ``false`` from ``supports()``). But in theory, you could make multiple -voters vote for one action and object. For instance, suppose you have one voter that -checks if the user is a member of the site and a second one that checks if the user -is older than 18. +Imagine you have multiple voters for one action for an object. For instance, +you have one voter that checks if the user is a member of the site and a second +one checking if the user is older than 18. To handle these cases, the access decision manager uses an access decision -strategy. You can configure this to suit your needs. There are three +strategy. You can configure this to suite your needs. There are three strategies available: ``affirmative`` (default) diff --git a/cookbook/serializer.rst b/cookbook/serializer.rst index 3a2b25ff158..9bf60060c1a 100644 --- a/cookbook/serializer.rst +++ b/cookbook/serializer.rst @@ -15,6 +15,10 @@ and encoders by reading the :doc:`Serializer Component ` Activating the Serializer ------------------------- +.. versionadded:: 2.3 + The Serializer has always existed in Symfony, but prior to Symfony 2.3, + you needed to build the ``serializer`` service yourself. + The ``serializer`` service is not available by default. To turn it on, activate it in your configuration: @@ -70,6 +74,11 @@ you need it or it can be used in a controller like the following:: Adding Normalizers and Encoders ------------------------------- +.. versionadded:: 2.7 + The :class:`Symfony\\Component\\Serializer\\Normalizer\\ObjectNormalizer` + is enabled by default in Symfony 2.7. In prior versions, you needed to load + your own normalizer. + Once enabled, the ``serializer`` service will be available in the container and will be loaded with two :ref:`encoders ` (:class:`Symfony\\Component\\Serializer\\Encoder\\JsonEncoder` and @@ -120,6 +129,9 @@ Here is an example on how to load the Using Serialization Groups Annotations -------------------------------------- +.. versionadded:: 2.7 + Support for serialization groups was introduced in Symfony 2.7. + Enable :ref:`serialization groups annotation ` with the following configuration: @@ -165,6 +177,10 @@ to your class and choose which groups to use when serializing:: Enabling the Metadata Cache --------------------------- +.. versionadded:: 2.7 + Serializer metadata and the ability to cache them were introduced in + Symfony 2.7. + Metadata used by the Serializer component such as groups can be cached to enhance application performance. Any service implementing the ``Doctrine\Common\Cache\Cache`` interface can be used. diff --git a/cookbook/service_container/compiler_passes.rst b/cookbook/service_container/compiler_passes.rst index d5b7595adc4..cf629a695ef 100644 --- a/cookbook/service_container/compiler_passes.rst +++ b/cookbook/service_container/compiler_passes.rst @@ -7,27 +7,25 @@ How to Work with Compiler Passes in Bundles Compiler passes give you an opportunity to manipulate other service definitions that have been registered with the service container. You -can read about how to create them in the components section -":ref:`components-di-compiler-pass`". +can read about how to create them in the components section ":doc:`/components/dependency_injection/compilation`". +To register a compiler pass from a bundle you need to add it to the build +method of the bundle definition class:: -When using :ref:`separate compiler passes `, -you need to register them in the ``build()`` method of the bundle class (this -is not needed when implementing the ``process()`` method in the extension):: - - // src/AppBundle/AppBundle.php - namespace AppBundle; + // src/Acme/MailerBundle/AcmeMailerBundle.php + namespace Acme\MailerBundle; use Symfony\Component\HttpKernel\Bundle\Bundle; use Symfony\Component\DependencyInjection\ContainerBuilder; - use AppBundle\DependencyInjection\Compiler\CustomPass; - class AppBundle extends Bundle + use Acme\MailerBundle\DependencyInjection\Compiler\CustomCompilerPass; + + class AcmeMailerBundle extends Bundle { public function build(ContainerBuilder $container) { parent::build($container); - $container->addCompilerPass(new CustomPass()); + $container->addCompilerPass(new CustomCompilerPass()); } } @@ -35,6 +33,6 @@ One of the most common use-cases of compiler passes is to work with tagged servi (read more about tags in the components section ":doc:`/components/dependency_injection/tags`"). If you are using custom tags in a bundle then by convention, tag names consist of the name of the bundle (lowercase, underscores as separators), followed -by a dot and finally the "real" name. For example, if you want to introduce -some sort of "mail_transport" tag in your AppBundle, you should call it -``app.mail_transport``. +by a dot, and finally the "real" name. For example, if you want to introduce +some sort of "transport" tag in your AcmeMailerBundle, you should call it +``acme_mailer.transport``. diff --git a/cookbook/service_container/index.rst b/cookbook/service_container/index.rst index 4c341ae4c1d..f66a455b788 100644 --- a/cookbook/service_container/index.rst +++ b/cookbook/service_container/index.rst @@ -4,5 +4,5 @@ Service Container .. toctree:: :maxdepth: 2 - shared + scopes compiler_passes diff --git a/cookbook/service_container/scopes.rst b/cookbook/service_container/scopes.rst new file mode 100644 index 00000000000..93227b0dd8f --- /dev/null +++ b/cookbook/service_container/scopes.rst @@ -0,0 +1,239 @@ +.. index:: + single: DependencyInjection; Scopes + +How to Work with Scopes +======================= + +This article is all about scopes, a somewhat advanced topic related to the +:doc:`/book/service_container`. If you've ever gotten an error mentioning +"scopes" when creating services, then this article is for you. + +.. note:: + + If you are trying to inject the ``request`` service, the simple solution + is to inject the ``request_stack`` service instead and access the current + Request by calling the + :method:`Symfony\\Component\\HttpFoundation\\RequestStack::getCurrentRequest` + method (see :ref:`book-container-request-stack`). The rest of this entry + talks about scopes in a theoretical and more advanced way. If you're + dealing with scopes for the ``request`` service, simply inject ``request_stack``. + +Understanding Scopes +-------------------- + +The scope of a service controls how long an instance of a service is used +by the container. The DependencyInjection component provides two generic +scopes: + +``container`` (the default one): + The same instance is used each time you ask for it from this container. + +``prototype``: + A new instance is created each time you ask for the service. + +The +:class:`Symfony\\Component\\HttpKernel\\DependencyInjection\\ContainerAwareHttpKernel` +also defines a third scope: ``request``. This scope is tied to the request, +meaning a new instance is created for each subrequest and is unavailable +outside the request (for instance in the CLI). + +An Example: Client Scope +~~~~~~~~~~~~~~~~~~~~~~~~ + +Other than the ``request`` service (which has a simple solution, see the +above note), no services in the default Symfony container belong to any +scope other than ``container`` and ``prototype``. But for the purposes of +this article, imagine there is another scope ``client`` and a service ``client_configuration`` +that belongs to it. This is not a common situation, but the idea is that +you may enter and exit multiple ``client`` scopes during a request, and each +has its own ``client_configuration`` service. + +Scopes add a constraint on the dependencies of a service: a service cannot +depend on services from a narrower scope. For example, if you create a generic +``my_foo`` service, but try to inject the ``client_configuration`` service, +you will receive a +:class:`Symfony\\Component\\DependencyInjection\\Exception\\ScopeWideningInjectionException` +when compiling the container. Read the sidebar below for more details. + +.. sidebar:: Scopes and Dependencies + + Imagine you've configured a ``my_mailer`` service. You haven't configured + the scope of the service, so it defaults to ``container``. In other words, + every time you ask the container for the ``my_mailer`` service, you get + the same object back. This is usually how you want your services to work. + + Imagine, however, that you need the ``client_configuration`` service + in your ``my_mailer`` service, maybe because you're reading some details + from it, such as what the "sender" address should be. You add it as a + constructor argument. There are several reasons why this presents a problem: + + * When requesting ``my_mailer``, an instance of ``my_mailer`` (called + *MailerA* here) is created and the ``client_configuration`` service ( + called *ConfigurationA* here) is passed to it. Life is good! + + * Your application now needs to do something with another client, and + you've designed your application in such a way that you handle this + by entering a new ``client_configuration`` scope and setting a new + ``client_configuration`` service into the container. Call this + *ConfigurationB*. + + * Somewhere in your application, you once again ask for the ``my_mailer`` + service. Since your service is in the ``container`` scope, the same + instance (*MailerA*) is just re-used. But here's the problem: the + *MailerA* instance still contains the old *ConfigurationA* object, which + is now **not** the correct configuration object to have (*ConfigurationB* + is now the current ``client_configuration`` service). This is subtle, + but the mis-match could cause major problems, which is why it's not + allowed. + + So, that's the reason *why* scopes exist, and how they can cause + problems. Keep reading to find out the common solutions. + +.. note:: + + A service can of course depend on a service from a wider scope without + any issue. + +Using a Service from a Narrower Scope +------------------------------------- + +There are two solutions to the scope problem: + +* A) Put your service in the same scope as the dependency (or a narrower one). If + you depend on the ``client_configuration`` service, this means putting your + new service in the ``client`` scope (see :ref:`changing-service-scope`); + +* B) Pass the entire container to your service and retrieve your dependency from + the container each time you need it to be sure you have the right instance + -- your service can live in the default ``container`` scope (see + :ref:`passing-container`). + +Each scenario is detailed in the following sections. + +.. _using-synchronized-service: + +.. note:: + + Prior to Symfony 2.7, there was another alternative based on ``synchronized`` + services. However, these kind of services have been deprecated starting from + Symfony 2.7. + +.. _changing-service-scope: + +A) Changing the Scope of your Service +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Changing the scope of a service should be done in its definition. This example +assumes that the ``Mailer`` class has a ``__construct`` function whose first +argument is the ``ClientConfiguration`` object: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/services.yml + services: + my_mailer: + class: AppBundle\Mail\Mailer + scope: client + arguments: ['@client_configuration'] + + .. code-block:: xml + + + + + + + + + .. code-block:: php + + // app/config/services.php + use Symfony\Component\DependencyInjection\Definition; + + $definition = $container->setDefinition( + 'my_mailer', + new Definition( + 'AppBundle\Mail\Mailer', + array(new Reference('client_configuration'), + )) + )->setScope('client'); + +.. _passing-container: + +B) Passing the Container as a Dependency of your Service +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Setting the scope to a narrower one is not always possible (for instance, a +twig extension must be in the ``container`` scope as the Twig environment +needs it as a dependency). In these cases, you can pass the entire container +into your service:: + + // src/AppBundle/Mail/Mailer.php + namespace AppBundle\Mail; + + use Symfony\Component\DependencyInjection\ContainerInterface; + + class Mailer + { + protected $container; + + public function __construct(ContainerInterface $container) + { + $this->container = $container; + } + + public function sendEmail() + { + $request = $this->container->get('client_configuration'); + // ... do something using the client configuration here + } + } + +.. caution:: + + Take care not to store the client configuration in a property of the object + for a future call of the service as it would cause the same issue described + in the first section (except that Symfony cannot detect that you are + wrong). + +The service configuration for this class would look something like this: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/services.yml + services: + my_mailer: + class: AppBundle\Mail\Mailer + arguments: ['@service_container'] + # scope: container can be omitted as it is the default + + .. code-block:: xml + + + + + + + + + .. code-block:: php + + // app/config/services.php + use Symfony\Component\DependencyInjection\Definition; + use Symfony\Component\DependencyInjection\Reference; + + $container->setDefinition('my_mailer', new Definition( + 'AppBundle\Mail\Mailer', + array(new Reference('service_container')) + )); + +.. note:: + + Injecting the whole container into a service is generally not a good + idea (only inject what you need). diff --git a/cookbook/service_container/shared.rst b/cookbook/service_container/shared.rst deleted file mode 100644 index aec4943f188..00000000000 --- a/cookbook/service_container/shared.rst +++ /dev/null @@ -1,44 +0,0 @@ -.. index:: - single: Service Container; Shared Services - -How to Define Non Shared Services -================================= - -In the service container, all services are shared by default. This means that -each time you retrieve the service, you'll get the *same* instance. This is -often the behavior you want, but in some cases, you might want to always get a -*new* instance. - -In order to always get a new instance, set the ``shared`` setting to ``false`` -in your service definition: - -.. configuration-block:: - - .. code-block:: yaml - - # app/config/services.yml - services: - app.some_not_shared_service: - class: ... - shared: false - # ... - - .. code-block:: xml - - - - - - - .. code-block:: php - - // app/config/services.php - use Symfony\Component\DependencyInjection\Definition; - - $definition = new Definition('...'); - $definition->setShared(false); - - $container->setDefinition('app.some_not_shared_service', $definition); - -Now, whenever you call ``$container->get('app.some_not_shared_service')`` or -inject this service, you'll receive a new instance. diff --git a/cookbook/session/locale_sticky_session.rst b/cookbook/session/locale_sticky_session.rst index 8f6911c4718..867fc80a687 100644 --- a/cookbook/session/locale_sticky_session.rst +++ b/cookbook/session/locale_sticky_session.rst @@ -4,10 +4,11 @@ Making the Locale "Sticky" during a User's Session ================================================== -Symfony stores the locale setting in the Request, which means that this setting -is not available in subsequent requests. In this article, you'll learn how to -store the locale in the session, so that it'll be the same for every subsequent -request. +Prior to Symfony 2.1, the locale was stored in a session attribute called ``_locale``. +Since 2.1, it is stored in the Request, which means that it's not "sticky" +during a user's request. In this article, you'll learn how to make the locale +of a user "sticky" so that once it's set, that same locale will be used for +every subsequent request. Creating a LocaleListener ------------------------- diff --git a/cookbook/session/php_bridge.rst b/cookbook/session/php_bridge.rst index 2a953dbf959..80606654670 100644 --- a/cookbook/session/php_bridge.rst +++ b/cookbook/session/php_bridge.rst @@ -4,6 +4,9 @@ Bridge a legacy Application with Symfony Sessions ================================================= +.. versionadded:: 2.3 + The ability to integrate with a legacy PHP session was introduced in Symfony 2.3. + If you're integrating the Symfony full-stack Framework into a legacy application that starts the session with ``session_start()``, you may still be able to use Symfony's session management by using the PHP Bridge session. diff --git a/cookbook/symfony1.rst b/cookbook/symfony1.rst new file mode 100644 index 00000000000..1ae0dd07293 --- /dev/null +++ b/cookbook/symfony1.rst @@ -0,0 +1,371 @@ +.. index:: + single: symfony1 + +How Symfony2 Differs from Symfony1 +================================== + +The Symfony2 Framework embodies a significant evolution when compared with +the first version of the framework. Fortunately, with the MVC architecture +at its core, the skills used to master a symfony1 project continue to be +very relevant when developing in Symfony2. Sure, ``app.yml`` is gone, but +routing, controllers and templates all remain. + +This chapter walks through the differences between symfony1 and Symfony2. +As you'll see, many tasks are tackled in a slightly different way. You'll +come to appreciate these minor differences as they promote stable, predictable, +testable and decoupled code in your Symfony2 applications. + +So, sit back and relax as you travel from "then" to "now". + +Directory Structure +------------------- + +When looking at a Symfony2 project - for example, the `Symfony Standard Edition`_ - +you'll notice a very different directory structure than in symfony1. The +differences, however, are somewhat superficial. + +The ``app/`` Directory +~~~~~~~~~~~~~~~~~~~~~~ + +In symfony1, your project has one or more applications, and each lives inside +the ``apps/`` directory (e.g. ``apps/frontend``). By default in Symfony2, +you have just one application represented by the ``app/`` directory. Like +in symfony1, the ``app/`` directory contains configuration specific to that +application. It also contains application-specific cache, log and template +directories as well as a ``Kernel`` class (``AppKernel``), which is the base +object that represents the application. + +Unlike symfony1, almost no PHP code lives in the ``app/`` directory. This +directory is not meant to house modules or library files as it did in symfony1. +Instead, it's simply the home of configuration and other resources (templates, +translation files). + +The ``src/`` Directory +~~~~~~~~~~~~~~~~~~~~~~ + +Put simply, your actual code goes here. In Symfony2, all actual application-code +lives inside a bundle (roughly equivalent to a symfony1 plugin) and, by default, +each bundle lives inside the ``src`` directory. In that way, the ``src`` +directory is a bit like the ``plugins`` directory in symfony1, but much more +flexible. Additionally, while *your* bundles will live in the ``src/`` directory, +third-party bundles will live somewhere in the ``vendor/`` directory. + +To get a better picture of the ``src/`` directory, first think of the structure +of a symfony1 application. First, part of your code likely lives inside one or +more applications. Most commonly these include modules, but could also include +any other PHP classes you put in your application. You may have also created +a ``schema.yml`` file in the ``config`` directory of your project and built +several model files. Finally, to help with some common functionality, you're +using several third-party plugins that live in the ``plugins/`` directory. +In other words, the code that drives your application lives in many different +places. + +In Symfony2, life is much simpler because *all* Symfony2 code must live in +a bundle. In the pretend symfony1 project, all the code *could* be moved +into one or more plugins (which is a very good practice, in fact). Assuming +that all modules, PHP classes, schema, routing configuration, etc. were moved +into a plugin, the symfony1 ``plugins/`` directory would be very similar +to the Symfony2 ``src/`` directory. + +Put simply again, the ``src/`` directory is where your code, assets, +templates and most anything else specific to your project will live. + +The ``vendor/`` Directory +~~~~~~~~~~~~~~~~~~~~~~~~~ + +The ``vendor/`` directory is basically equivalent to the ``lib/vendor/`` +directory in symfony1, which was the conventional directory for all vendor +libraries and bundles. By default, you'll find the Symfony2 library files in +this directory, along with several other dependent libraries such as Doctrine2, +Twig and Swift Mailer. 3rd party Symfony2 bundles live somewhere in the +``vendor/``. + +The ``web/`` Directory +~~~~~~~~~~~~~~~~~~~~~~ + +Not much has changed in the ``web/`` directory. The most noticeable difference +is the absence of the ``css/``, ``js/`` and ``images/`` directories. This +is intentional. Like with your PHP code, all assets should also live inside +a bundle. With the help of a console command, the ``Resources/public/`` +directory of each bundle is copied or symbolically-linked to the ``web/bundles/`` +directory. This allows you to keep assets organized inside your bundle, but +still make them available to the public. To make sure that all bundles are +available, run the following command: + +.. code-block:: bash + + $ php app/console assets:install web + +.. note:: + + This command is the Symfony2 equivalent to the symfony1 ``plugin:publish-assets`` + command. + +Autoloading +----------- + +One of the advantages of modern frameworks is never needing to worry about +requiring files. By making use of an autoloader, you can refer to any class +in your project and trust that it's available. Autoloading has changed in +Symfony2 to be more universal, faster, and independent of needing to clear +your cache. + +In symfony1, autoloading was done by searching the entire project for the +presence of PHP class files and caching this information in a giant array. +That array told symfony1 exactly which file contained each class. In the +production environment, this caused you to need to clear the cache when classes +were added or moved. + +In Symfony2, a tool named `Composer`_ handles this process. +The idea behind the autoloader is simple: the name of your class (including +the namespace) must match up with the path to the file containing that class. +Take the FrameworkExtraBundle from the Symfony2 Standard Edition as an +example:: + + namespace Sensio\Bundle\FrameworkExtraBundle; + + use Symfony\Component\HttpKernel\Bundle\Bundle; + // ... + + class SensioFrameworkExtraBundle extends Bundle + { + // ... + } + +The file itself lives at +``vendor/sensio/framework-extra-bundle/Sensio/Bundle/FrameworkExtraBundle/SensioFrameworkExtraBundle.php``. +As you can see, the second part of the path follows the namespace of the +class. The first part is equal to the package name of the SensioFrameworkExtraBundle. + +The namespace, ``Sensio\Bundle\FrameworkExtraBundle``, and package name, +``sensio/framework-extra-bundle``, spells out the directory that the file +should live in +(``vendor/sensio/framework-extra-bundle/Sensio/Bundle/FrameworkExtraBundle/``). +Composer can then look for the file at this specific place and load it very +fast. + +If the file did *not* live at this exact location, you'd receive a +``Class "Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle" does not exist.`` +error. In Symfony2, a "class does not exist" error means that the namespace of +the class and physical location do not match. Basically, Symfony2 is looking +in one exact location for that class, but that location doesn't exist (or +contains a different class). In order for a class to be autoloaded, you +**never need to clear your cache** in Symfony2. + +As mentioned before, for the autoloader to work, it needs to know that the +``Sensio`` namespace lives in the ``vendor/sensio/framework-extra-bundle`` +directory and that, for example, the ``Doctrine`` namespace lives in the +``vendor/doctrine/orm/lib/`` directory. This mapping is entirely controlled by +Composer. Each third-party library you load through Composer has its +settings defined and Composer takes care of everything for you. + +For this to work, all third-party libraries used by your project must be +defined in the ``composer.json`` file. + +If you look at the ``HelloController`` from the Symfony Standard Edition you +can see that it lives in the ``Acme\DemoBundle\Controller`` namespace. Yet, the +AcmeDemoBundle is not defined in your ``composer.json`` file. Nonetheless are +the files autoloaded. This is because you can tell Composer to autoload files +from specific directories without defining a dependency: + +.. code-block:: json + + { + "autoload": { + "psr-0": { "": "src/" } + } + } + +This means that if a class is not found in the ``vendor`` directory, Composer +will search in the ``src`` directory before throwing a "class does not exist" +exception. Read more about configuring the Composer autoloader in +`the Composer documentation`_. + +Using the Console +----------------- + +In symfony1, the console is in the root directory of your project and is +called ``symfony``: + +.. code-block:: bash + + $ php symfony + +In Symfony2, the console is now in the app sub-directory and is called +``console``: + +.. code-block:: bash + + $ php app/console + +Applications +------------ + +In a symfony1 project, it is common to have several applications: one for the +front-end and one for the back-end for instance. + +In a Symfony2 project, you only need to create one application (a blog +application, an intranet application, ...). Most of the time, if you want to +create a second application, you might instead create another project and +share some bundles between them. + +And if you need to separate the front-end and the back-end features of some +bundles, you can create sub-namespaces for controllers, sub-directories for +templates, different semantic configurations, separate routing configurations, +and so on. + +Of course, there's nothing wrong with having multiple applications in your +project, that's entirely up to you. A second application would mean a new +directory, e.g. ``my_app/``, with the same basic setup as the ``app/`` directory. + +.. tip:: + + Read the definition of a :term:`Project`, an :term:`Application`, and a + :term:`Bundle` in the glossary. + +Bundles and Plugins +------------------- + +In a symfony1 project, a plugin could contain configuration, modules, PHP +libraries, assets and anything else related to your project. In Symfony2, +the idea of a plugin is replaced by the "bundle". A bundle is even more powerful +than a plugin because the core Symfony2 Framework is brought in via a series +of bundles. In Symfony2, bundles are first-class citizens that are so flexible +that even core code itself is a bundle. + +In symfony1, a plugin must be enabled inside the ``ProjectConfiguration`` +class:: + + // config/ProjectConfiguration.class.php + public function setup() + { + // some plugins here + $this->enableAllPluginsExcept(array(...)); + } + +In Symfony2, the bundles are activated inside the application kernel:: + + // app/AppKernel.php + public function registerBundles() + { + $bundles = array( + new Symfony\Bundle\FrameworkBundle\FrameworkBundle(), + new Symfony\Bundle\TwigBundle\TwigBundle(), + ..., + new Acme\DemoBundle\AcmeDemoBundle(), + ); + + return $bundles; + } + +Routing (``routing.yml``) and Configuration (``config.yml``) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +In symfony1, the ``routing.yml`` and ``app.yml`` configuration files were +automatically loaded inside any plugin. In Symfony2, routing and application +configuration inside a bundle must be included manually. For example, to +include a routing resource from a bundle called AcmeDemoBundle, you can +do the following: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/routing.yml + _hello: + resource: '@AcmeDemoBundle/Resources/config/routing.yml' + + .. code-block:: xml + + + + + + + + + + .. code-block:: php + + // app/config/routing.php + use Symfony\Component\Routing\RouteCollection; + + $collection = new RouteCollection(); + $collection->addCollection($loader->import("@AcmeHelloBundle/Resources/config/routing.php")); + + return $collection; + +This will load the routes found in the ``Resources/config/routing.yml`` file +of the AcmeDemoBundle. The special ``@AcmeDemoBundle`` is a shortcut syntax +that, internally, resolves to the full path to that bundle. + +You can use this same strategy to bring in configuration from a bundle: + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/config.yml + imports: + - { resource: "@AcmeDemoBundle/Resources/config/config.yml" } + + .. code-block:: xml + + + + + + + .. code-block:: php + + // app/config/config.php + $this->import('@AcmeDemoBundle/Resources/config/config.php') + +In Symfony2, configuration is a bit like ``app.yml`` in symfony1, except much +more systematic. With ``app.yml``, you could simply create any keys you wanted. +By default, these entries were meaningless and depended entirely on how you +used them in your application: + +.. code-block:: yaml + + # some app.yml file from symfony1 + all: + email: + from_address: 'foo.bar@example.com' + +In Symfony2, you can also create arbitrary entries under the ``parameters`` +key of your configuration: + +.. configuration-block:: + + .. code-block:: yaml + + parameters: + email.from_address: 'foo.bar@example.com' + + .. code-block:: xml + + + foo.bar@example.com + + + .. code-block:: php + + $container->setParameter('email.from_address', 'foo.bar@example.com'); + +You can now access this from a controller, for example:: + + public function helloAction($name) + { + $fromAddress = $this->container->getParameter('email.from_address'); + } + +In reality, the Symfony2 configuration is much more powerful and is used +primarily to configure objects that you can use. For more information, see +the chapter titled ":doc:`/book/service_container`". + +.. _`Composer`: https://getcomposer.org +.. _`Symfony Standard Edition`: https://github.com/symfony/symfony-standard +.. _`the Composer documentation`: https://getcomposer.org/doc/04-schema.md#autoload diff --git a/cookbook/templating/PHP.rst b/cookbook/templating/PHP.rst index 03a16cf2d33..c156866f61b 100644 --- a/cookbook/templating/PHP.rst +++ b/cookbook/templating/PHP.rst @@ -306,11 +306,11 @@ updated by changing the configuration: .. code-block:: html+php - + Greet Thomas! -The ``path()`` method takes the route name and an array of parameters as +The ``generate()`` method takes the route name and an array of parameters as arguments. The route name is the main key under which routes are referenced and the parameters are the values of the placeholders defined in the route pattern: diff --git a/cookbook/templating/namespaced_paths.rst b/cookbook/templating/namespaced_paths.rst index b09fc36800a..2ca5e8879fb 100644 --- a/cookbook/templating/namespaced_paths.rst +++ b/cookbook/templating/namespaced_paths.rst @@ -71,6 +71,13 @@ directory: ); )); +.. caution:: + + Prior to 2.8, templates in custom namespaces are not pre-compiled by + Symfony's cache warmup process. They are compiled on demand. This may + cause problems if two simultaneous requests are trying to use the + template for the first time. + The registered namespace is called ``foo_bar``, which refers to the ``vendor/acme/foo-bar/templates`` directory. Assuming there's a file called ``sidebar.twig`` in that directory, you can use it easily: diff --git a/cookbook/testing/bootstrap.rst b/cookbook/testing/bootstrap.rst index 762651e2bd1..28f3e8b9c22 100644 --- a/cookbook/testing/bootstrap.rst +++ b/cookbook/testing/bootstrap.rst @@ -17,14 +17,14 @@ First, add the following file:: )); } - require __DIR__.'/autoload.php'; + require __DIR__.'/bootstrap.php.cache'; -Replace the test bootstrap file ``autoload.php`` in ``phpunit.xml.dist`` +Replace the test bootstrap file ``bootstrap.php.cache`` in ``app/phpunit.xml.dist`` with ``tests.bootstrap.php``: .. code-block:: xml - + + diff --git a/cookbook/testing/database.rst b/cookbook/testing/database.rst index 405a329f4e1..04c8d07ee48 100644 --- a/cookbook/testing/database.rst +++ b/cookbook/testing/database.rst @@ -33,7 +33,6 @@ class. Suppose the class you want to test looks like this:: - // src/AppBundle/Salary/SalaryCalculator.php namespace AppBundle\Salary; use Doctrine\Common\Persistence\ObjectManager; @@ -60,20 +59,14 @@ Suppose the class you want to test looks like this:: Since the ``ObjectManager`` gets injected into the class through the constructor, it's easy to pass a mock object within a test:: - // tests/AppBundle/Salary/SalaryCalculatorTest.php - namespace Tests\AppBundle\Salary; - use AppBundle\Salary\SalaryCalculator; - use AppBundle\Entity\Employee; - use Doctrine\ORM\EntityRepository; - use Doctrine\Common\Persistence\ObjectManager; class SalaryCalculatorTest extends \PHPUnit_Framework_TestCase { public function testCalculateTotalSalary() { // First, mock the object to be used in the test - $employee = $this->getMock(Employee::class); + $employee = $this->getMock('\AppBundle\Entity\Employee'); $employee->expects($this->once()) ->method('getSalary') ->will($this->returnValue(1000)); @@ -83,7 +76,7 @@ it's easy to pass a mock object within a test:: // Now, mock the repository so it returns the mock of the employee $employeeRepository = $this - ->getMockBuilder(EntityRepository::class) + ->getMockBuilder('\Doctrine\ORM\EntityRepository') ->disableOriginalConstructor() ->getMock(); $employeeRepository->expects($this->once()) @@ -92,7 +85,7 @@ it's easy to pass a mock object within a test:: // Last, mock the EntityManager to return the mock of the repository $entityManager = $this - ->getMockBuilder(ObjectManager::class) + ->getMockBuilder('\Doctrine\Common\Persistence\ObjectManager') ->disableOriginalConstructor() ->getMock(); $entityManager->expects($this->once()) diff --git a/cookbook/testing/doctrine.rst b/cookbook/testing/doctrine.rst index 9988b6f7469..e345b32b289 100644 --- a/cookbook/testing/doctrine.rst +++ b/cookbook/testing/doctrine.rst @@ -20,12 +20,12 @@ If you need to actually execute a query, you will need to boot the kernel to get a valid connection. In this case, you'll extend the ``KernelTestCase``, which makes all of this quite easy:: - // tests/AppBundle/Entity/ProductRepositoryTest.php - namespace Tests\AppBundle\Entity; + // src/AppBundle/Tests/Entity/ProductRepositoryFunctionalTest.php + namespace AppBundle\Tests\Entity; use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase; - class ProductRepositoryTest extends KernelTestCase + class ProductRepositoryFunctionalTest extends KernelTestCase { /** * @var \Doctrine\ORM\EntityManager @@ -38,10 +38,10 @@ which makes all of this quite easy:: protected function setUp() { self::bootKernel(); - $this->em = static::$kernel->getContainer() ->get('doctrine') - ->getManager(); + ->getManager() + ; } public function testSearchByCategoryName() @@ -60,7 +60,6 @@ which makes all of this quite easy:: protected function tearDown() { parent::tearDown(); - $this->em->close(); } } diff --git a/cookbook/testing/profiling.rst b/cookbook/testing/profiling.rst index d809c4febe2..1789c69dbc9 100644 --- a/cookbook/testing/profiling.rst +++ b/cookbook/testing/profiling.rst @@ -15,9 +15,9 @@ spent in the framework, etc. But before writing assertions, enable the profiler and check that the profiler is indeed available (it is enabled by default in the ``test`` environment):: - class LuckyControllerTest extends WebTestCase + class HelloControllerTest extends WebTestCase { - public function testNumberAction() + public function testIndex() { $client = static::createClient(); @@ -25,7 +25,7 @@ the ``test`` environment):: // (it does nothing if the profiler is not available) $client->enableProfiler(); - $crawler = $client->request('GET', '/lucky/number'); + $crawler = $client->request('GET', '/hello/Fabien'); // ... write some assertions about the Response diff --git a/cookbook/testing/simulating_authentication.rst b/cookbook/testing/simulating_authentication.rst index 8777a67e2a1..f2e04acd612 100644 --- a/cookbook/testing/simulating_authentication.rst +++ b/cookbook/testing/simulating_authentication.rst @@ -15,8 +15,8 @@ Another way would be to create a token yourself and store it in a session. While doing this, you have to make sure that an appropriate cookie is sent with a request. The following example demonstrates this technique:: - // tests/AppBundle/Controller/DefaultControllerTest.php - namespace Tests\Appbundle\Controller; + // src/AppBundle/Tests/Controller/DefaultControllerTest.php + namespace Appbundle\Tests\Controller; use Symfony\Bundle\FrameworkBundle\Test\WebTestCase; use Symfony\Component\BrowserKit\Cookie; diff --git a/cookbook/validation/custom_constraint.rst b/cookbook/validation/custom_constraint.rst index a349e6df40b..a248a8494aa 100644 --- a/cookbook/validation/custom_constraint.rst +++ b/cookbook/validation/custom_constraint.rst @@ -65,9 +65,18 @@ The validator class is also simple, and only has one required method ``validate( public function validate($value, Constraint $constraint) { if (!preg_match('/^[a-zA-Z0-9]+$/', $value, $matches)) { + // If you're using the new 2.5 validation API (you probably are!) $this->context->buildViolation($constraint->message) ->setParameter('%string%', $value) ->addViolation(); + + // If you're using the old 2.4 validation API + /* + $this->context->addViolation( + $constraint->message, + array('%string%' => $value) + ); + */ } } } @@ -219,9 +228,20 @@ With this, the validator ``validate()`` method gets an object as its first argum public function validate($protocol, Constraint $constraint) { if ($protocol->getFoo() != $protocol->getBar()) { + // If you're using the new 2.5 validation API (you probably are!) $this->context->buildViolation($constraint->message) ->atPath('foo') ->addViolation(); + + // If you're using the old 2.4 validation API + /* + $this->context->addViolationAt( + 'foo', + $constraint->message, + array(), + null + ); + */ } } } diff --git a/cookbook/validation/severity.rst b/cookbook/validation/severity.rst index 34b091bd5c6..22cb267d6c3 100644 --- a/cookbook/validation/severity.rst +++ b/cookbook/validation/severity.rst @@ -21,6 +21,9 @@ The process to achieve this behavior consists of two steps: 1. Assigning the Error Level ---------------------------- +.. versionadded:: 2.6 + The ``payload`` option was introduced in Symfony 2.6. + Use the ``payload`` option to configure the error level for each constraint: .. configuration-block:: @@ -128,6 +131,10 @@ Use the ``payload`` option to configure the error level for each constraint: 2. Customize the Error Message Template --------------------------------------- +.. versionadded:: 2.6 + The ``getConstraint()`` method in the ``ConstraintViolation`` class was + introduced in Symfony 2.6. + When validation of the ``User`` object fails, you can retrieve the constraint that caused a particular failure using the :method:`Symfony\\Component\\Validator\\ConstraintViolation::getConstraint` diff --git a/cookbook/web_server/built_in.rst b/cookbook/web_server/built_in.rst index 396ed96c34e..70ba0de0cbe 100644 --- a/cookbook/web_server/built_in.rst +++ b/cookbook/web_server/built_in.rst @@ -4,6 +4,10 @@ How to Use PHP's built-in Web Server ==================================== +.. versionadded:: 2.6 + The ability to run the server as a background process was introduced + in Symfony 2.6. + Since PHP 5.4 the CLI SAPI comes with a `built-in web server`_. It can be used to run your PHP applications locally during development, for testing or for application demonstrations. This way, you don't have to bother configuring @@ -23,7 +27,7 @@ executing the ``server:start`` command: .. code-block:: bash - $ php bin/console server:start + $ php app/console server:start This starts the web server at ``localhost:8000`` in the background that serves your Symfony application. @@ -33,16 +37,7 @@ can change the socket passing an IP address and a port as a command-line argumen .. code-block:: bash - $ php bin/console server:start 192.168.0.1:8080 - -.. note:: - - You can use the ``--force`` option to force the web server start - if the process wasn't correctly stopped (without using the ``server:stop`` command). - - .. code-block:: bash - - $ php bin/console server:start --force + $ php app/console server:start 192.168.0.1:8080 .. note:: @@ -51,20 +46,20 @@ can change the socket passing an IP address and a port as a command-line argumen .. code-block:: bash - $ php bin/console server:status + $ php app/console server:status - $ php bin/console server:status 192.168.0.1:8080 + $ php app/console server:status 192.168.0.1:8080 The first command shows if your Symfony application will be server through ``localhost:8000``, the second one does the same for ``192.168.0.1:8080``. -.. tip:: +.. note:: - Some systems do not support the ``server:start`` command, in these cases - you can execute the ``server:run`` command. This command behaves slightly - different. Instead of starting the server in the background, it will block - the current terminal until you terminate it (this is usually done by - pressing Ctrl and C). + Before Symfony 2.6, the ``server:run`` command was used to start the built-in + web server. This command is still available and behaves slightly different. + Instead of starting the server in the background, it will block the current + terminal until you terminate it (this is usually done by pressing Ctrl + and C). .. sidebar:: Using the built-in Web Server from inside a Virtual Machine @@ -75,7 +70,7 @@ can change the socket passing an IP address and a port as a command-line argumen .. code-block:: bash - $ php bin/console server:start 0.0.0.0:8000 + $ php app/console server:start 0.0.0.0:8000 .. caution:: @@ -94,14 +89,14 @@ script: .. code-block:: bash - $ php bin/console server:start --env=test --router=app/config/router_test.php + $ php app/console server:start --env=test --router=app/config/router_test.php If your application's document root differs from the standard directory layout, you have to pass the correct location using the ``--docroot`` option: .. code-block:: bash - $ php bin/console server:start --docroot=public_html + $ php app/console server:start --docroot=public_html Stopping the Server ------------------- @@ -111,7 +106,7 @@ command: .. code-block:: bash - $ php bin/console server:stop + $ php app/console server:stop Like with the start command, if you omit the socket information, Symfony will stop the web server bound to ``localhost:8000``. Just pass the socket information @@ -119,7 +114,7 @@ when the web server listens to another IP address or to another port: .. code-block:: bash - $ php bin/console server:stop 192.168.0.1:8080 + $ php app/console server:stop 192.168.0.1:8080 .. _`built-in web server`: http://www.php.net/manual/en/features.commandline.webserver.php .. _`php.net`: http://php.net/manual/en/features.commandline.webserver.php#example-411 diff --git a/cookbook/workflow/new_project_svn.rst b/cookbook/workflow/new_project_svn.rst index 17e81b80d5c..8fe7e9eacd9 100644 --- a/cookbook/workflow/new_project_svn.rst +++ b/cookbook/workflow/new_project_svn.rst @@ -75,25 +75,24 @@ with these steps: .. code-block:: bash $ cd myproject/ - $ svn add --depth=empty app var var/cache var/logs app/config web + $ svn add --depth=empty app app/cache app/logs app/config web $ svn propset svn:ignore "vendor" . - $ svn propset svn:ignore "bootstrap*" var/ + $ svn propset svn:ignore "bootstrap*" app/ $ svn propset svn:ignore "parameters.yml" app/config/ - $ svn propset svn:ignore "*" var/cache/ - $ svn propset svn:ignore "*" var/logs/ - $ svn propset svn:ignore "*" var/sessions/ + $ svn propset svn:ignore "*" app/cache/ + $ svn propset svn:ignore "*" app/logs/ $ svn propset svn:ignore "bundles" web - $ svn ci -m "commit basic Symfony ignore list (vendor, var/bootstrap*, app/config/parameters.yml, var/cache/*, var/logs/*, web/bundles)" + $ svn ci -m "commit basic Symfony ignore list (vendor, app/bootstrap*, app/config/parameters.yml, app/cache/*, app/logs/*, web/bundles)" #. The rest of the files can now be added and committed to the project: .. code-block:: bash $ svn add --force . - $ svn ci -m "add basic Symfony Standard 3.X.Y" + $ svn ci -m "add basic Symfony Standard 2.X.Y" That's it! Since the ``app/config/parameters.yml`` file is ignored, you can store machine-specific settings like database passwords here without committing diff --git a/create_framework/dependency_injection.rst b/create_framework/dependency_injection.rst index 36fa99ffd84..f5ff56c1b38 100644 --- a/create_framework/dependency_injection.rst +++ b/create_framework/dependency_injection.rst @@ -100,11 +100,10 @@ Create a new file to host the dependency injection container configuration:: $sc->register('matcher', 'Symfony\Component\Routing\Matcher\UrlMatcher') ->setArguments(array($routes, new Reference('context'))) ; - $sc->register('request_stack', 'Symfony\Component\HttpFoundation\RequestStack'); $sc->register('resolver', 'Symfony\Component\HttpKernel\Controller\ControllerResolver'); $sc->register('listener.router', 'Symfony\Component\HttpKernel\EventListener\RouterListener') - ->setArguments(array(new Reference('matcher'), new Reference('request_stack'))) + ->setArguments(array(new Reference('matcher'))) ; $sc->register('listener.response', 'Symfony\Component\HttpKernel\EventListener\ResponseListener') ->setArguments(array('UTF-8')) @@ -215,7 +214,7 @@ And the related change in the front controller:: We have obviously barely scratched the surface of what you can do with the container: from class names as parameters, to overriding existing object -definitions, from shared service support to dumping a container to a plain PHP class, +definitions, from scope support to dumping a container to a plain PHP class, and much more. The Symfony dependency injection container is really powerful and is able to manage any kind of PHP class. diff --git a/create_framework/http_foundation.rst b/create_framework/http_foundation.rst index 1f984db858a..7c100cff3d4 100644 --- a/create_framework/http_foundation.rst +++ b/create_framework/http_foundation.rst @@ -125,7 +125,7 @@ containing the new requirement: { "require": { - "symfony/http-foundation": "^3.0" + "symfony/http-foundation": "^2.7" } } diff --git a/create_framework/introduction.rst b/create_framework/introduction.rst index 70aeeda2ce3..a69a4fc08d1 100644 --- a/create_framework/introduction.rst +++ b/create_framework/introduction.rst @@ -69,7 +69,7 @@ Before You Start Reading about how to create a framework is not enough. You will have to follow along and actually type all the examples included in this tutorial. For that, -you need a recent version of PHP (5.5.9 or later is good enough), a web server +you need a recent version of PHP (5.3.9 or later is good enough), a web server (like Apache, NGinx or PHP's built-in web server), a good knowledge of PHP and an understanding of Object Oriented programming. @@ -108,8 +108,8 @@ start with the simplest web application we can think of in PHP:: printf('Hello %s', $input); -You can use the PHP built-in server to test this great application in a browser -(``http://localhost:4321/index.php?name=Fabien``): +If you have PHP 5.4, you can use the PHP built-in server to test this great +application in a browser (``http://localhost:4321/index.php?name=Fabien``): .. code-block:: bash diff --git a/images/book/doctrine_web_debug_toolbar.png b/images/book/doctrine_web_debug_toolbar.png index dd5c3fffbb1305f70b325eb9835c6b01b0645354..b7c5a690d7267db0bdc12a27286bf49db8adf9d5 100644 GIT binary patch literal 82133 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�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 VRfA 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

rbsJ&^a=GBlfdL95q@fv|qg?g+z~f+Cl4x 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 _#FY%=$-8;P@$I^c+L-U0*aE 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

Ve|{U(Kyf8NbxoH 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%0D=F~+v6#Nnb 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
So3u|UpF=~h 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
4xJ@*v_UDzlgYa9<^@H&=DYr(5P-;)ob=t0@~o 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%0A;Egjcq-|VPm5LMztSuH! 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 Z@OuP)kHGH{_&ox@N8tAe{4XDY{|7L-6IlQN literal 75322 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

wgyg2Dfv{mpL}?~ym(Suu z_1${(S%>j&TyI?CRL}a0WdI6)nb+uZ{Nh{~u>~-2=vYJX+F|rOR)~ya3fv_!`U<8r zRPDz`5*I3!h8)wEEKs4gU$va&#?|wu%$)sKX7D;dV4pI2WfANB_0K|uL)5jZELUy0{LEAkP~8} z6lnE%O+DG+ZWp$|lCNv=Oa@#hWT9|ER&U=-CM`4+L4Cn9C+=?SUNb+e08X49mdM90 zrRbpc`dOs~h>lb^um@XG*992MWuU`%k&nJ5Abll#MYsbiUEIA->~k2O?H{L}R&}mw zDw1IM7fUcfpJ=UO7naFS+R8YM?>neU-`>j(+2lbEH9>I&1kkctJDOW0JO>rAK2}6$ zIZ+w1kZ;Ul9IB5j#dp*kKhs%$Sa+iSDRp%Y3hvRv_f`)2KqGbxfv=<7$IKNPkRV#{ zPOghSVr#)D-osqJxV@Vc7i~OejsiL@8nbh>%z+{#y8x;aH0H&ov7NKzq|Q* z+x)L9JI?gYPG}5g<2xU8bqJ1{cjlEiD7?-Bnr34wwmTc^KLWnpX;MsIs|;6N#hvU8^YM9=X80l>ZH?kTXFpB6oaR3Q|FxlU%%d(d3%r z*cr6=qZw%}9DwcAQh?2|gD*X5`ZJ5x8W<%NwWJfD0^K)F#XZ?L#=r8;h8V*y&ugmX zM9LI5iqs#3G+4L`CoZ{&x&QS$1XBBv>*YrMZ?@Nr{#d|mV)vQZS7{Q3QaN4<&9<6^ z4oTS*fHXhg&b-26n=2X6j^J3H!eGbxaFY)7dq!tWaqH#~ z{gDpGKpik-mXeXgbE-~l4>Bj&?u}hVqf|%XZ_}7Z*x9S&cshE z?Aw@JOE+~8>2f41H{;tQCW|&|9;Pv{h6I@%jq*gWVR48QX zo|NUog7<2JdTq@o)&w@l|kGbwJKI#W1dd$qYjsD7_y8{*5X z%ZlYs!!AqGTxq`TXJ4<%!f2S#B;gu* z@>{e6S^&d?@Et$V694Y9Az|*o(>AL$-v(%TO}@~TO?1-JVi`^tIBu(v%@+fk{8gUc z>n;r_(ZWuar79us-zv48){sm;Fu(rT1Nb^(j~8vdv76hR92Peo;YfXmQq0(HP;=%u zL7(N3SRC(CEi$fxcM!t%;nO%H_*RoZHLlV<8ME^tJ$&E07`0nb%z$>~g|dk>xw(E! z;as|WHsL0A%qIEun0O^^VQk zXrGJ55%)hBHEcOmHVi0Ge<5B|I|2m;xYFTnZw1cZ{lv-;eRm07}JJlQW2=zWGgKdV&`Z(5;A!-zh z9trx;3ec4I?*lp?%+q0A=lm5OpF-(i16ZI(r6v~32ZKHd)frJJ?su_U5qJRHFXQb0 zw7W84zwEqR@8E4dF#pnMc(*tbk1PwGOghI`7B`CajG*yzBTORe+;(lDCzO^&7l$VJ zX#2|0)r~5V-IfGyYT#MY9iO4RU*(t)`;}3&p)yDMpub~Ai!`G>WKuwhhbku%_B~&s zzBmA`$YJav>(c*GA@fsGkuiUd!{{=+S~d5CAXkb;aBZ+^%v5A6#}z8s=(c2Pwbrvo zrn-UL1O7XcW4>rcum1ZePDK{*L+OgJ^7n#&_i#@qw?oJtw(-C?na(D?mlm?e+|D30 z-=03KbdLK0op#A;Pk3Pj6QS$?SZO|Job~2XYg#H{ML77e^QFrcW9>0bS5nh^`>C8~ z55|ZRl@41QYvYTMSBX+hIuRy=zfDNeE0cXJ0)5pj+Z@sJkDCj=a(%F_s%@}uj&aV~ zw;dt4H3TfH=02ccW0+H(!4MSK2`Q3{o8$WZ>9H2f`Xf5XbzVs&AR>%P;3yr3i@z#~ zvUxdLlv#ez9L2RnIT%SP0Zr@Vbai&>iK&Z}k9h;dew1|2e=<=pi)@)Ycw>j+)xq3g z=OOv^Y?Y1-?_pKshl>f#s$+9QRSjgGrsUAL#6^5>Z($i{N_(LP=(b#!1sBtA z2aII}P~BMtw(`|B$UKmKwXE=i-KG$L@q%cVziZOI@#3(=71Z7yVq?Hk-J!qr@iB_E z-~6z;;X-8`wupR|?EP_5Yd5BD|GnB?El#?v{(G}{+lu2pNn%02g-&gD=DIu!tK|=8 zh#6jWD( z?)AJM-}Qd@uXpyR!(!*0y{~=kYhU%Z`}n73oQ=7UOjz5iz-pL@_Vh*h)>`VY@8Jm? zSS7P*GqsX3`w`sm&fGIwd)FUTe4PvX@Mg2`_vN@bwv{EY`CzaTs@voWCR8T#`Qmo1 zYE>dDnne4)m0+N#Znq{$}*WL$2=yM$#{pq<*ha@R77D zOx4U2GPHyPq>|s9s2JO}j>>ekk0#?f`1Sj{0p#uyaE;v^rJwfau3Slb_28~$B;7O5 zT6~N$;ypvtLD3m*3$9VH^q}n|Z}3%Tu9&1w*)xpF6^WEH<&@3WJ|{^jT;S~+(+$(R z*tB@ck!p3q)?8H3lbJeft&J5{)`X|GODE3iL)+uA6WLMzDt$YgA_IeXzKyRpuo7;x zJLwa=A>=|LZ4mIkMtC5@G#KqOo3qso`Ox_{!BzSJI;{$b49|Jvjr`Vy<0F|dh#To@ zsXewsShwVKzwCJOo3$q6LD!wH3cPs`T)#+5DElHqkJ>^zE$Xwl)-| zAGWn@hAgiKyO3THhl*x=H39xLElVD}ygak9xuG?SbI?)?FfO*hB%mMJcNWhk((CTE zC*MW9Gn_Nl+ze#29*fZ|G7ed;kcT>N^5L&m`BB0&P>Am#+2u57ayZR?n(Yp-QVy+# zk{euEI5k#PP_nn|=8HWhf@#T^bO`(8gUF1DSlU7eu~^{pLXC2b6ct{5`5ZB2J}U-0yL1TS^@FZ@VG6jkSF zBFGtT%9X?hkN#Huo!xN3oprE)Wgzt?SE#R*07BoCrz}HKc5a0dzBx~nU7%XV>qc0X z75ix*a>Oi$j4;$azMxZo?2&*e+WxA+%2n&CrN2p+2pTWnDK1X$-&-Y+XL~DWKw;x5 zj6GK-mMQ{?S>d~8YMmHpzz526d%ME7RDjcIACC-u?Tqg@o87UEGnH%3$<_$t8K>CT z`tuA#IeysuY)7zbMw**W^`?slZX^fO0QS+E&seG6nSQe~(OA+zUzJ@j)~e$d2zHlD zWVtUn7TDgHjSC99pe7P4Eu~s9@m>l4iDJ-K2M)iWW>k=CzjOr3~5*=7+<)U#LYsHqhHXm`}@!7vo!_8M7Qg>2qvdp+V&MH7 z=o-Z74aILwKYqDjUhi)t_9AKhr_zi8MRV_J$;F}dLGbrw3s7Y6)P4@)VEekawAilKrs!V6Ug6&ED+TKC{3+%^j*>@L_%4;8<&Lf3Rxv=l zbeIjsvk@8h0-Hl$I&QGFpJmG7c>XLavr6M02uMEg&~^j}y59u3w66iURouys1}oS1 z=z9gCyR)A$RjQKw+(|2ZK%YjP##7yZZ&{edD~&m>R3?VJLaZ1~YkbZcA*(4#uoR(^ zIh4!bOt=*9!PCIN*lqAT%c0SjLld>zYXjQ|o(%u5AMF=upJqCUGM-{8l!pInP|4T- zHl%7__R6^I z{)8SMV+XP}vZ8+fpIHXpVOQ~V4gd1r9bd5qvQYuVtp7uf!0!Ey@H79_F@pU@&*MDu z|MTgU683ndC$2yLAA*ToVpBQ0(Dj%9EbEVZ?8*?^&fx#*sC1Cs@gmCke>ys5vau9x z2{!-T@wfdqjv4=VM>eC_l00tw7nA(TBG2P{7yoPAQLkAOY^+K-^^v^>tYz5Gx9$G? z>%qM=yeriG+<$1<^S`r%D=HZ@QKNap?q%e#EYn<+{_tA**5F=i7`qBx>4jRr@}NHO zPCr)s|I;DX_klz^ZuVcoESCMJ{r@yw^B6bkQO?=VI=Y(I328jn!K>)9P4SO1BO^Weg(0d%C1kOH%uaR=SoV59OZ)<@N`%c3 z`5W+ERZm&ud&|-XvR&c@Z%g^S5^wZ?JtPv=YQ1G4-^GlvnB7ycut(XdA3O&EoQL;A zGWWd2GfUvPR8f8)4~M^FIN3bNwr}Q^?}I&~?Q_b<0X<+IO-bK@Op3E@qAIsK)o z>LUO)ErNTlK5l2Zw}-E2c6tn68vsCa)#kt=QVHG)6UTU8^Zm7Xko{3dB%Aw_BP|;q zW88FSW@yXOyz(7s7%n2rOCwxgqKcEUNDE%fK9*nTJNekisAJRCYdqeyD7n0J+GkMT zR$misd#lq3Dcx1wza}2l-k(5=%#MrPn)KNC=^w~zlnsQ6J0l|{n%n?U$!de=_9fp0 z71YhY9nS+x>U78Q|@RMdwV0e&iuQegW;VG#mZYQ&k3f?GUvrXDvzaNUg;k z|532TwbGuq0&??#RnBLAm|TbT9p*VaY5!n%#z!V!xADBCL;B9n=vw#$?svX3cWP2h zUQ3)dP&^Pm47i}5})1Vvl|Q<4^`M^RXp7*|^Tnz?!VH(n}z zvZ|{GKnxL$yqsujtxWV$y=rN+P+_rsXsu>`WVE5=XX58aEz1SXkw3>>R7M*!btF3=D6*^tZ$X0~}h*z@H0 zhgo7q&ZlE8Pno$z9`x$mgUEUe$`%uI-(m{vu1AgOHSdm=eC>RE%NsyByfoj}d8ic> zw(14nv+hU{?a2TT9!`3lE#dbG=9%5vigmHk@k>ihBy7La9u|IyWSoEV=8gpO}maLeT=)LKfQ2t(5pG# zAa^lJ6}!jm1n~lDlK`eZHFt7-82|T#WA=B)+gr?*!^O2lA^B;S;$IJ;9Rt2o;xfs| zYfjh&e%``6WjQ7dLz_x9-*>SJ3cdL!mHmh(?vs1Ijq4zO@<&~ONozPEagic-HClyw z(E-bZrV-l&zXG`vo9!=6g4A?2nAT`ISw-v<|ZlRz;+mJ|b_v;_?fh4*Gf*~(the5OApZz79Q zpSk)@Szv^eWm9@JVG%>?s=wc^>W-8u z-)jj|x1%XQ?exsj)akq70x+uT?ukyn>+yP1biofbHZq+@Mh9#<+RLOFE<7WFnVK>Z z_hP-8sVR5mMc(2ig0Z6+d0z>FIXZ#f5|SUTLK2*=WxmP_@#n2&m46SuqBVbfk0yjQ z=`b!{>UWF64VBb?`H)mfJl2)Xi=lvPK~qtXK}bZO#TFa@Y`l;u)Dk!}b;nAw0?H8|uCMSOT+=R~dFE8KNw ze#j4(4*Q)%SX4H3o$j%v*C;Ju_qK?*!YWkQ$H^S@cW%IyP9TJ^|2>^C;Ekr zYu8BS&ozlFZnBcd?Y>=$xZ}$BGx!eKo8rQz74MkKYT2cyqe{`Pioe~yjCIRMs6Cf{ z|K!oG{UvH7>{kV%!m5kU5BgPg?v4Cd6Tj*xt1LvtmtPu#(Wf3NKQ(ZdNWI&m2Seh- z&bC6zzv^W-zG>O@RK|v zT!oiI^}Mv^hTI&mGg)2VbY6NRJ_*hLVPeyB{sZ;O7*HK4WGE6+IY888vH{FRcYEmGQMC@X=YRpU?=7OOp*(*F@2+%uDLCg9up(oGfo#=&AxC-m&;Fa2mM%{AG zIXC@N4ki*le?^H0vn0+sHJL9fu=ZDvWd4VLWlE1dwim%p+j#AMs!H4}Kc5j~`pe&1 z^v4L6D(`t;B#1%%?5rCGUD(AMf*sss+!VJ7ZcK+al6k)4Wt~D}x%PykxoKyv7L+DH z^Q;WSN3TATKoRb~6aMnNC>4^3C2l`Ix&wK`d2CD;s)z(ICj49ib?NhB3Lj?#dsj~K zZ5YX+x`T57oR01LL1O^!TWRK@q~x$bqNcDg+*)}UcSje91>FxF3JSc@_Hex;Y%kBG zDe90Nan7;O`W7iqp0CB%clkzuJNcS6%59t0Plt^6jM2e`}?1c6Z=3}6JlE1 zuP_zp-IWNfiWf!Rq5CHnN2AA;V}LB4E#aTxP>KKoS9?p?AqeJ+X9Q2^toF`et7Z;s z4rSE`uZ>MkW-({>cGGuc_olFew!l0rz6mw{;~KeUJll-exKiA2u3o-oJazk6L1d+``>^9Y|gxbsE+kOP(s zEe0{RTD1s*(E58vu&AeB9Ep!vGOLl$^gmu54yC+*X6sT6GDn)j-5GIx*EfOM`Yj*& z)7KYZ5+igi^`Pbs`6GRJDShj0U%PwQTQYPTI}z;Ho>-r$BurP634j~@w$(Wvf6-VS z3MH$rJt|+ko-N9ZDix1~1!WFUv@7#MGN#}eDHh%J#iDB%AQCv>{mhQ#z~SH!6lR@? zjYp^b>z1-}j`4HII{UlmO|Ml?72x?}4m$c+RulGTb_n}4g8mM*Gn7Kxy zn6HTu0ifmwx)Gh={t=5W67v*FbyX&xd0bR&<$7c2?#s^~W69;Vt3R8V<2R6?8X5Kn zOFY;F^=dy`qP6xe#;Qp^xp*cG-Wi;zEt|ZsH>brATNuJ&3i(EXz0)JD)3dG`k zj${=+ib9uqrZHltZ!H)@sNMFs(qsi26H3~i%T2F3cu#?o6bZXj92ZvYQ2M~`P{HLm z*!TJehMHRoxi?4 zy15-l2dv5?=k=y*7wtO)>BF$eT6F;E>|_eUPv}eRz`7ED9{J>e!C=xGWdbS!rs>^r zR;ZFBDJiUod(fe6XRi6{yh%&J3Gqy$!Ue@5xs-0ZPER3ZF*G;YAW;&4TOZK2gO#UR zyup2Ig87*hcTpkLc*n3Jn>z(}ji>FtX4I5PpSP9WtNp{tZpKb9dBzQ$CWAv~oqN(! zkDuObjk9)~{TW0T@H_J|$J|qe`gNT%p!1kLnOKNVdObI5$FOa!Fm}MT@Os$Y`m?|{ z!N>d!e{+*2dL|CL^wf4bAN7aHdePb6yObjIs;LkNg@E=-ST(RBRwBOHq^Xwm4Yn4= z9GStT?ioMePE4n0>FOYQ+R#TXudY( z1l^{#aCm)D-To6R;)^C0?t;`UQWcuk1fzL7hv6O}s9-d__fy3)yW8Bk@_=~1Ce zDn61>$l7Gsk)QZfNWV1nVY)9P>)gAF69d_%Vi8(-nJzpth5VwO30)T>1B@=uLQ-?9 z3+&WCF~r1X;^bl_3LHJj@b9{h8@eF=hVWvq!@En0mO z6_n7iuy3xfqb^>dZMwTIH0TI})!~2DMLBhi_}wg!$ZlE_RZ+9to0el_s$>QODDpx* z4<=M)(guD-_!bozWE)tKSeAHL%T`wYUFJ30ZLh?+kWE{FIl{PH-w}3y8W{{FhW= zIpNGmxlf>a68%+oXvMxicp-}I=P7NKNU?joeKp4NE5Vs_9Ub zgYlIORqiv(+Nv5({Zl2-IY%qL$*%G6v&B90c}cP}s1@V4lrsA2*VIay&1>Z(0{&KjyUXrN z>hj>Fgw|rm3pr+&itkrn8yvTE8@zm5g8WDSbkv$z*6HgV_}lB5ubmmSj$N`Lv{WE& zugB*Uc0?X*I9g+lZLv)NxqyEf=o~3m4Uu!A8ya#Z9^>!hMatY?5 z9x#gL&M3(bzUJN0H$os0QZRVLCDwf6%iGvsKM>nkeubpxKouf~Hh zM{mKrv<}x4CB7$n6mQR@-&L>EJy`$450%5IZ<|g@dLeEY|GCx&*#K2qtg04__t=l1 zh@4|d>5_|~E6+qLrdRDDE+0dFG(G{Hj8j(nkE;CkL_wn3R9sY-Zj-q4{jd(h@)62= zt@wDA=H+Iy&gI0JJAb+#z07~Jp1Wfzs-@wHu9?M){#heSyd(6`hOX{Ot;NkDx2a^Akt~)+0 zWLVX2iQkr#jCMCfN;dr@%+=*Iuekly;POEkRlBbUS|M1z7G#>T>VIs}@+5I9r*SqO(Gpx75P!jHm{4QMxnMTi|_1;)YG$+f)|b z*UV+%b16z8{*-_S^xV(atcR6;N?CRNbJ9{@OI;tU{OJ>>-cH6rx95RH^P0vOW;417 z6JjLBt(7s{e_MFvMXdXAXL{)MR3D32x7&KCd+$?oYdJp%y{&du^qlB(X?bwweU}1) zOf~j*wxiXox?Ua)8q@jmyJFMS!p$M;><+TU(Pwx_xLtO9MUXRbpdjxCMsAYg2^1WF zUi1{97h1?A0372t!BOVh_A^S*igGkm9J(y{7R%TL(i@|yY7>t85t_<4+bCYhJ?2iT z;7Wz)qp+Wr5{UsnE21ghSRnTW4Ex15|Bi?LDg*4N^km@Rn`2Dr_>fESNINsk@kr{t z+rjGHv&bXuO;u;E$Ye-w`_?TG&1~FAl$(VGocdP9lq8iyEea#j3{c_q{nM`m%r>Co z*N-7qj?u=nt8Gy8^8-kha{GxAN`dc;U>UX$+h;056~u)~VsK=W)8=6Eis8cI+4LKz z+jC`cNl%O4BHwYZ1!es!ZaoP}xz_{wwpVCI1P+rdm7t zNt0gI8ws#xwnp6Ts2tm!ekz?eQq}zSD%i7jBy)MzYHY&%2!^4IV13!e zBT}?PtNbI$jUG>`d{k5^XP^1~GBIvH|JxrGpXCd~%|nRobKqm~boYI6Lf~h+hD_Rn z5FHPxVX=A_r+idG7o9}Q!PBe2jVqbTq`)Rp=JI*b?Uw^1HOgpSJp(sgUPGPF>%n-X ztF1*KI9EWu04y#(j+-*DnxB+*HROgX_+xiCKEZFQ#c(XRRXywtGi*tYX;zml*-|z2 zt$WJg`@Ha(rH>_*ZR0$+d9!56PPH7_Q+*=vnn@c?q*-(RL&ws4?};|m@|Nb6!3MSM zQvT)^0rrgfVipbfM{1Q?4uV%(zcJj*Uafji5S8YIfFYM(%#(?NgQ#RCm^@N zx~enK+Im)}1B@ho>jFKymSC%yTdI<3tNIeqX5|2|eWU!hMwbPSi~peEXCCEaKO%YX z!#`GWLRRqMtKRg>r7jN>s}lGoeCUOzwmr}FJ&IJBE-9OKsD^~O-UKR*G&aZIpWKd> z=qx$N^O;`!XsoFvJs*uWuaiI9wWai=VJi#|A=qY#7b<&G5TW$U1Iy zHc{Y)7%gVaCh-yEN-HM7L8cUop z%Dtm^YF;?|qbHTG-*s#8D7kuO36)>k zSLt_)g6=b#HKfiAC%%g_B~KfIpW2gYwMIJU^aSaIM7j>hgY?_2s5Sn&T6LF$_N?sS z9umq%S5m-s8dGvm2JwCVY_R5UW>U6Eb*>%*pXKF%D3{%9>0V@rdv?{?dM

C7TNF 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 XV6K3~+N+eh13_2qTx=`;@K5` * `csrf_protection`_ * :ref:`enabled ` + * `field_name`_ (deprecated as of 2.4) * `esi`_ * :ref:`enabled ` * `fragments`_ @@ -94,6 +95,7 @@ Configuration * :ref:`enable_annotations ` * `translation_domain`_ * `strict_email`_ + * `api`_ * `annotations`_ * :ref:`cache ` * `file_cache_dir`_ @@ -102,7 +104,6 @@ Configuration * :ref:`enabled ` * :ref:`cache ` * :ref:`enable_annotations ` - * `name_converter`_ secret ~~~~~~ @@ -134,6 +135,9 @@ out all the application users. http_method_override ~~~~~~~~~~~~~~~~~~~~ +.. versionadded:: 2.3 + The ``http_method_override`` option was introduced in Symfony 2.3. + **type**: ``boolean`` **default**: ``true`` This determines whether the ``_method`` request parameter is used as the @@ -174,6 +178,10 @@ trusted_proxies Configures the IP addresses that should be trusted as proxies. For more details, see :doc:`/cookbook/request/load_balancer_reverse_proxy`. +.. versionadded:: 2.3 + CIDR notation support was introduced in Symfony 2.3, so you can whitelist + whole subnets (e.g. ``10.0.0.0/8``, ``fc00::/7``). + .. configuration-block:: .. code-block:: yaml @@ -219,6 +227,9 @@ using the following keys: * ``emacs`` * ``sublime`` +.. versionadded:: 2.3.14 + The ``emacs`` and ``sublime`` editors were introduced in Symfony 2.3.14. + You can also specify a custom URL string. If you do this, all percentage signs (``%``) must be doubled to escape that character. For example, if you use PHPstorm on the Mac OS platform, you will do something like: @@ -416,6 +427,18 @@ If you're using forms, but want to avoid starting your session (e.g. using forms in an API-only website), ``csrf_protection`` will need to be set to ``false``. +field_name +.......... + +.. caution:: + + The ``framework.csrf_protection.field_name`` setting is deprecated as + of Symfony 2.4, use ``framework.form.csrf_protection.field_name`` instead. + +**type**: ``string`` **default**: ``"_token"`` + +The name of the hidden field used to render the :ref:`CSRF token `. + esi ~~~ @@ -518,6 +541,12 @@ and ``test`` environments. collect ....... +.. versionadded:: 2.3 + The ``collect`` option was introduced in Symfony 2.3. Previously, when + ``profiler.enabled`` was ``false``, the profiler *was* actually enabled, + but the collectors were disabled. Now, the profiler and the collectors + can be controlled independently. + **type**: ``boolean`` **default**: ``true`` This option configures the way the profiler behaves when it is enabled. @@ -743,7 +772,7 @@ This determines whether cookies should only be sent over secure connections. cookie_httponly ............... -**type**: ``boolean`` **default**: ``true`` +**type**: ``boolean`` **default**: ``false`` This determines whether cookies should only be accessible through the HTTP protocol. This means that the cookie won't be accessible by scripting @@ -1249,6 +1278,12 @@ fallbacks **type**: ``string|array`` **default**: ``array('en')`` +.. versionadded:: 2.3.25 + The ``fallbacks`` option was introduced in Symfony 2.3.25. Prior + to Symfony 2.3.25, it was called ``fallback`` and only allowed one fallback + language defined as a string. Please note that you can still use the + old ``fallback`` option if you want define only one fallback. + This option is used when the translation key for the current locale wasn't found. @@ -1261,6 +1296,9 @@ found. logging ....... +.. versionadded:: 2.6 + The ``logging`` option was introduced in Symfony 2.6. + **default**: ``true`` when the debug mode is enabled, ``false`` otherwise. When ``true``, a log entry is made whenever the translator cannot find a translation @@ -1314,9 +1352,6 @@ cache The service that is used to persist class metadata in a cache. The service has to implement the :class:`Symfony\\Component\\Validator\\Mapping\\Cache\\CacheInterface`. -Set this option to ``validator.mapping.cache.doctrine.apc`` to use the APC -cache provide from the Doctrine project. - .. _reference-validation-enable_annotations: enable_annotations @@ -1343,6 +1378,30 @@ If this option is enabled, the `egulias/email-validator`_ library will be used by the :doc:`/reference/constraints/Email` constraint validator. Otherwise, the validator uses a simple regular expression to validate email addresses. +api +... + +**type**: ``string`` + +Starting with Symfony 2.5, the Validator component introduced a new validation +API. The ``api`` option is used to switch between the different implementations: + +``2.5`` + Use the validation API introduced in Symfony 2.5. + +``2.5-bc`` or ``auto`` + If you omit a value or set the ``api`` option to ``2.5-bc`` or ``auto``, + Symfony will use an API implementation that is compatible with both the + legacy ``2.4`` implementation and the ``2.5`` implementation. + +.. note:: + + The support for the native 2.4 API has been dropped since Symfony 2.7. + +To capture these logs in the ``prod`` environment, configure a +:doc:`channel handler ` in ``config_prod.yml`` for +the ``translation`` channel and set its ``level`` to ``debug``. + annotations ~~~~~~~~~~~ @@ -1422,21 +1481,6 @@ If this option is enabled, serialization groups can be defined using annotations For more information, see :ref:`cookbook-serializer-using-serialization-groups-annotations`. -name_converter -.............. - -**type**: ``string`` - -The name converter to use. -The :class:`Symfony\\Component\\Serializer\\NameConverter\\CamelCaseToSnakeCaseNameConverter` -name converter can enabled by using the ``serializer.name_converter.camel_case_to_snake_case`` -value. - -.. seealso:: - - For more information, see - :ref:`component-serializer-converting-property-names-when-serializing-and-deserializing`. - Full Default Configuration -------------------------- @@ -1454,6 +1498,7 @@ Full Default Configuration csrf_protection: enabled: false + field_name: _token # Deprecated since 2.4, to be removed in 3.0. Use form.csrf_protection.field_name instead # form configuration form: diff --git a/reference/configuration/security.rst b/reference/configuration/security.rst index e17154be914..77b2f0531a6 100644 --- a/reference/configuration/security.rst +++ b/reference/configuration/security.rst @@ -133,15 +133,6 @@ Each part will be explained in the next section. provider: some_key_from_above http_digest: provider: some_key_from_above - guard: - # A key from the "providers" section of your security config, in case your user provider is different than the firewall - provider: ~ - - # A service id (of one of your authenticators) whose start() method should be called when an anonymous user hits a page that requires authentication - entry_point: null - - # An array of service ids for all of your "authenticators" - authenticators: [] form_login: # submit the login form here check_path: /login_check @@ -171,8 +162,8 @@ Each part will be explained in the next section. # csrf token options csrf_parameter: _csrf_token - csrf_token_id: authenticate - csrf_token_generator: my.csrf_token_generator.id + intention: authenticate + csrf_provider: my.csrf_token_generator.id # by default, the login form *must* be a POST, not a GET post_only: true @@ -180,11 +171,12 @@ Each part will be explained in the next section. # by default, a session must exist before submitting an authentication request # if false, then Request::hasPreviousSession is not called during authentication + # new in Symfony 2.3 require_previous_session: true remember_me: token_provider: name - secret: "%secret%" + key: someS3cretKey name: NameOfTheCookie lifetime: 3600 # in seconds path: /foo @@ -231,7 +223,7 @@ Each part will be explained in the next section. domain: ~ handlers: [] anonymous: - secret: "%secret%" + key: 4f954a0667e01 switch_user: provider: ~ parameter: _switch_user @@ -370,6 +362,11 @@ for the hash algorithm. Using the BCrypt Password Encoder --------------------------------- +.. caution:: + + To use this encoder, you either need to use PHP Version 5.5 or install + the `ircmaxell/password-compat`_ library via Composer. + .. configuration-block:: .. code-block:: yaml @@ -494,7 +491,7 @@ multiple firewalls, the "context" could actually be shared: HTTP-Digest Authentication -------------------------- -To use HTTP-Digest authentication you need to provide a realm and a secret: +To use HTTP-Digest authentication you need to provide a realm and a key: .. configuration-block:: @@ -505,7 +502,7 @@ To use HTTP-Digest authentication you need to provide a realm and a secret: firewalls: somename: http_digest: - secret: '%secret%' + key: 'a_random_string' realm: 'secure-api' .. code-block:: xml @@ -513,7 +510,7 @@ To use HTTP-Digest authentication you need to provide a realm and a secret: - + @@ -524,8 +521,8 @@ To use HTTP-Digest authentication you need to provide a realm and a secret: 'firewalls' => array( 'somename' => array( 'http_digest' => array( - 'secret' => '%secret%', - 'realm' => 'secure-api', + 'key' => 'a_random_string', + 'realm' => 'secure-api', ), ), ), diff --git a/reference/configuration/twig.rst b/reference/configuration/twig.rst index 0a8352816f7..ea7f51a1a83 100644 --- a/reference/configuration/twig.rst +++ b/reference/configuration/twig.rst @@ -20,9 +20,6 @@ TwigBundle Configuration ("twig") - bootstrap_3_layout.html.twig - bootstrap_3_horizontal_layout.html.twig - # Foundation - - foundation_5_layout.html.twig - # Example: - MyBundle::form.html.twig @@ -41,6 +38,7 @@ TwigBundle Configuration ("twig") value: ~ autoescape: ~ + # The following were added in Symfony 2.3. # See http://twig.sensiolabs.org/doc/recipes.html#using-the-template-name-to-set-the-default-escaping-strategy autoescape_service: ~ # Example: '@my_service' autoescape_service_method: ~ # use in combination with autoescape_service option diff --git a/reference/constraints.rst b/reference/constraints.rst index e91e319b3cb..3dbae3e96dd 100644 --- a/reference/constraints.rst +++ b/reference/constraints.rst @@ -9,8 +9,11 @@ Validation Constraints Reference constraints/Blank constraints/NotNull constraints/IsNull + constraints/Null constraints/IsTrue + constraints/True constraints/IsFalse + constraints/False constraints/Type constraints/Email @@ -50,7 +53,6 @@ Validation Constraints Reference constraints/Currency constraints/Luhn constraints/Iban - constraints/Bic constraints/Isbn constraints/Issn diff --git a/reference/constraints/Bic.rst b/reference/constraints/Bic.rst deleted file mode 100644 index 3288c2d2b16..00000000000 --- a/reference/constraints/Bic.rst +++ /dev/null @@ -1,95 +0,0 @@ -Bic -=== - -This constraint is used to ensure that a value has the proper format of a -`Business Identifier Code (BIC)`_. BIC is an internationally agreed means to -uniquely identify both financial and non-financial institutions. - -+----------------+-----------------------------------------------------------------------+ -| Applies to | :ref:`property or method ` | -+----------------+-----------------------------------------------------------------------+ -| Options | - `message`_ | -| | - `payload`_ | -+----------------+-----------------------------------------------------------------------+ -| Class | :class:`Symfony\\Component\\Validator\\Constraints\\Bic` | -+----------------+-----------------------------------------------------------------------+ -| Validator | :class:`Symfony\\Component\\Validator\\Constraints\\BicValidator` | -+----------------+-----------------------------------------------------------------------+ - -Basic Usage ------------ - -To use the Bic validator, simply apply it to a property on an object that -will contain a Business Identifier Code (BIC). - -.. configuration-block:: - - .. code-block:: php-annotations - - // src/AppBundle/Entity/Transaction.php - namespace AppBundle\Entity; - - use Symfony\Component\Validator\Constraints as Assert; - - class Transaction - { - /** - * @Assert\Bic() - */ - protected $businessIdentifierCode; - } - - .. code-block:: yaml - - # src/AppBundle/Resources/config/validation.yml - AppBundle\Entity\Transaction: - properties: - businessIdentifierCode: - - Bic: ~ - - .. code-block:: xml - - - - - - - - - - - - - .. code-block:: php - - // src/AppBundle/Entity/Transaction.php - namespace AppBundle\Entity; - - use Symfony\Component\Validator\Mapping\ClassMetadata; - use Symfony\Component\Validator\Constraints as Assert; - - class Transaction - { - protected $businessIdentifierCode; - - public static function loadValidatorMetadata(ClassMetadata $metadata) - { - $metadata->addPropertyConstraint('businessIdentifierCode', new Assert\Bic()); - } - } - -Available Options ------------------ - -message -~~~~~~~ - -**type**: ``string`` **default**: ``This is not a valid Business Identifier Code (BIC).`` - -The default message supplied when the value does not pass the BIC check. - -.. include:: /reference/constraints/_payload-option.rst.inc - -.. _`Business Identifier Code (BIC)`: https://en.wikipedia.org/wiki/Business_Identifier_Code diff --git a/reference/constraints/Callback.rst b/reference/constraints/Callback.rst index c5588bbf2fe..7a11cc206de 100644 --- a/reference/constraints/Callback.rst +++ b/reference/constraints/Callback.rst @@ -40,6 +40,8 @@ Configuration use Symfony\Component\Validator\Constraints as Assert; use Symfony\Component\Validator\Context\ExecutionContextInterface; + // if you're using the older 2.4 validation API, you'll need this instead + // use Symfony\Component\Validator\ExecutionContextInterface; class Author { @@ -97,6 +99,8 @@ field those errors should be attributed:: // ... use Symfony\Component\Validator\Context\ExecutionContextInterface; + // if you're using the older 2.4 validation API, you'll need this instead + // use Symfony\Component\Validator\ExecutionContextInterface; class Author { @@ -110,9 +114,18 @@ field those errors should be attributed:: // check if the name is actually a fake name if (in_array($this->getFirstName(), $fakeNames)) { + // If you're using the new 2.5 validation API (you probably are!) $context->buildViolation('This name sounds totally fake!') ->atPath('firstName') ->addViolation(); + + // If you're using the old 2.4 validation API + /* + $context->addViolationAt( + 'firstName', + 'This name sounds totally fake!' + ); + */ } } } @@ -130,10 +143,19 @@ have access to the object instance, they receive the object as the first argumen // check if the name is actually a fake name if (in_array($object->getFirstName(), $fakeNames)) { + // If you're using the new 2.5 validation API (you probably are!) $context->buildViolation('This name sounds totally fake!') ->atPath('firstName') ->addViolation() ; + + // If you're using the old 2.4 validation API + /* + $context->addViolationAt( + 'firstName', + 'This name sounds totally fake!' + ); + */ } } @@ -148,6 +170,8 @@ Suppose your validation function is ``Vendor\Package\Validator::validate()``:: namespace Vendor\Package; use Symfony\Component\Validator\Context\ExecutionContextInterface; + // if you're using the older 2.4 validation API, you'll need this instead + // use Symfony\Component\Validator\ExecutionContextInterface; class Validator { @@ -232,6 +256,8 @@ constructor of the Callback constraint:: namespace AppBundle\Entity; use Symfony\Component\Validator\Context\ExecutionContextInterface; + // if you're using the older 2.4 validation API, you'll need this instead + // use Symfony\Component\Validator\ExecutionContextInterface; use Symfony\Component\Validator\Mapping\ClassMetadata; use Symfony\Component\Validator\Constraints as Assert; diff --git a/reference/constraints/Collection.rst b/reference/constraints/Collection.rst index 97d6659f745..733b3b9144b 100644 --- a/reference/constraints/Collection.rst +++ b/reference/constraints/Collection.rst @@ -179,6 +179,10 @@ occur. Required and Optional Field Constraints ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +.. versionadded:: 2.3 + The ``Required`` and ``Optional`` constraints were moved to the namespace + ``Symfony\Component\Validator\Constraints\`` in Symfony 2.3. + Constraints for fields within a collection can be wrapped in the ``Required`` or ``Optional`` constraint to control whether they should always be applied (``Required``) or only applied when the field is present (``Optional``). diff --git a/reference/constraints/Currency.rst b/reference/constraints/Currency.rst index cd125a42655..7349ce51f8a 100644 --- a/reference/constraints/Currency.rst +++ b/reference/constraints/Currency.rst @@ -1,6 +1,9 @@ Currency ======== +.. versionadded:: 2.3 + The ``Currency`` constraint was introduced in Symfony 2.3. + Validates that a value is a valid `3-letter ISO 4217`_ currency name. +----------------+---------------------------------------------------------------------------+ diff --git a/reference/constraints/EqualTo.rst b/reference/constraints/EqualTo.rst index 836d6cd1284..950cd9e70b9 100644 --- a/reference/constraints/EqualTo.rst +++ b/reference/constraints/EqualTo.rst @@ -1,6 +1,9 @@ EqualTo ======= +.. versionadded:: 2.3 + The ``EqualTo`` constraint was introduced in Symfony 2.3. + Validates that a value is equal to another value, defined in the options. To force that a value is *not* equal, see :doc:`/reference/constraints/NotEqualTo`. diff --git a/reference/constraints/Expression.rst b/reference/constraints/Expression.rst index 1f0278ca9e3..9f5ce639966 100644 --- a/reference/constraints/Expression.rst +++ b/reference/constraints/Expression.rst @@ -216,6 +216,12 @@ more about the expression language syntax, see // ... } + .. versionadded:: 2.6 + In Symfony 2.6, the Expression constraint *is* executed if the value + is ``null``. Before 2.6, if the value was ``null``, the expression + was never executed and the value was considered valid (unless you + also had a constraint like ``NotBlank`` on the property). + For more information about the expression and what variables are available to you, see the :ref:`expression ` option details below. diff --git a/reference/constraints/False.rst b/reference/constraints/False.rst new file mode 100644 index 00000000000..3a895f5ae3d --- /dev/null +++ b/reference/constraints/False.rst @@ -0,0 +1,8 @@ +False +===== + +.. caution:: + + The ``False`` constraint is deprecated since Symfony 2.7 + and will be removed in Symfony 3.0. Use the + :doc:`/reference/constraints/IsFalse` constraint instead. diff --git a/reference/constraints/File.rst b/reference/constraints/File.rst index 842badb272a..2b975cf8369 100644 --- a/reference/constraints/File.rst +++ b/reference/constraints/File.rst @@ -8,8 +8,8 @@ Validates that a value is a valid "file", which can be one of the following: * A valid :class:`Symfony\\Component\\HttpFoundation\\File\\File` object (including objects of class :class:`Symfony\\Component\\HttpFoundation\\File\\UploadedFile`). -This constraint is commonly used in forms with the :doc:`FileType ` -form field. +This constraint is commonly used in forms with the :doc:`file ` +form type. .. tip:: @@ -41,7 +41,7 @@ Basic Usage ----------- This constraint is most commonly used on a property that will be rendered -in a form as a :doc:`FileType ` field. For +in a form as a :doc:`file ` form type. For example, suppose you're creating an author form where you can upload a "bio" PDF for the author. In your form, the ``bioFile`` property would be a ``file`` type. The ``Author`` class might look as follows:: @@ -156,6 +156,9 @@ Options maxSize ~~~~~~~ +.. versionadded:: 2.6 + The suffixes ``Ki`` and ``Mi`` were introduced in Symfony 2.6. + **type**: ``mixed`` If set, the size of the underlying file must be below this file size in @@ -182,6 +185,9 @@ see `Wikipedia: Binary prefix`_. binaryFormat ~~~~~~~~~~~~ +.. versionadded:: 2.6 + The ``binaryFormat`` option was introduced in Symfony 2.6. + **type**: ``boolean`` **default**: ``null`` When ``true``, the sizes will be displayed in messages with binary-prefixed @@ -221,6 +227,10 @@ per the `mimeTypes`_ option. disallowEmptyMessage ~~~~~~~~~~~~~~~~~~~~ +.. versionadded:: 2.6 + The ``disallowEmptyMessage`` option was introduced in Symfony 2.6. Prior to 2.6, + if the user uploaded an empty file, no validation error occurred. + **type**: ``string`` **default**: ``An empty file is not allowed.`` This constraint checks if the uploaded file is empty (i.e. 0 bytes). If it is, diff --git a/reference/constraints/GreaterThan.rst b/reference/constraints/GreaterThan.rst index 8ff9c343e5c..cc1372f3bbd 100644 --- a/reference/constraints/GreaterThan.rst +++ b/reference/constraints/GreaterThan.rst @@ -1,6 +1,9 @@ GreaterThan =========== +.. versionadded:: 2.3 + The ``GreaterThan`` constraint was introduced in Symfony 2.3. + Validates that a value is greater than another value, defined in the options. To force that a value is greater than or equal to another value, see :doc:`/reference/constraints/GreaterThanOrEqual`. To force a value is less @@ -90,6 +93,9 @@ If you want to ensure that the ``age`` of a ``Person`` class is greater than Comparing Dates --------------- +.. versionadded:: 2.6 + The feature to compare dates was introduced in Symfony 2.6. + This constraint can be used to compare ``DateTime`` objects against any date string `accepted by the DateTime constructor`_. For example, you could check that a date must at least be the next day: diff --git a/reference/constraints/GreaterThanOrEqual.rst b/reference/constraints/GreaterThanOrEqual.rst index b5510c79f66..822b8bc10bc 100644 --- a/reference/constraints/GreaterThanOrEqual.rst +++ b/reference/constraints/GreaterThanOrEqual.rst @@ -1,6 +1,9 @@ GreaterThanOrEqual ================== +.. versionadded:: 2.3 + The ``GreaterThanOrEqual`` constraint was introduced in Symfony 2.3. + Validates that a value is greater than or equal to another value, defined in the options. To force that a value is greater than another value, see :doc:`/reference/constraints/GreaterThan`. @@ -89,6 +92,9 @@ or equal to ``18``, you could do the following: Comparing Dates --------------- +.. versionadded:: 2.6 + The feature to compare dates was introduced in Symfony 2.6. + This constraint can be used to compare ``DateTime`` objects against any date string `accepted by the DateTime constructor`_. For example, you could check that a date must at least be the current day: diff --git a/reference/constraints/Iban.rst b/reference/constraints/Iban.rst index 8775b941320..9cc754c7cbb 100644 --- a/reference/constraints/Iban.rst +++ b/reference/constraints/Iban.rst @@ -1,6 +1,9 @@ Iban ==== +.. versionadded:: 2.3 + The Iban constraint was introduced in Symfony 2.3. + This constraint is used to ensure that a bank account number has the proper format of an `International Bank Account Number (IBAN)`_. IBAN is an internationally agreed means of identifying bank accounts across national diff --git a/reference/constraints/IdenticalTo.rst b/reference/constraints/IdenticalTo.rst index 410df810679..4bf4277b0a9 100644 --- a/reference/constraints/IdenticalTo.rst +++ b/reference/constraints/IdenticalTo.rst @@ -1,6 +1,9 @@ IdenticalTo =========== +.. versionadded:: 2.3 + The ``IdenticalTo`` constraint was introduced in Symfony 2.3. + Validates that a value is identical to another value, defined in the options. To force that a value is *not* identical, see :doc:`/reference/constraints/NotIdenticalTo`. diff --git a/reference/constraints/Image.rst b/reference/constraints/Image.rst index fb792878276..de0d943ea7d 100644 --- a/reference/constraints/Image.rst +++ b/reference/constraints/Image.rst @@ -46,7 +46,7 @@ Basic Usage ----------- This constraint is most commonly used on a property that will be rendered -in a form as a :doc:`FileType ` field. For +in a form as a :doc:`file ` form type. For example, suppose you're creating an author form where you can upload a "headshot" image for the author. In your form, the ``headshot`` property would be a ``file`` type. The ``Author`` class might look as follows:: diff --git a/reference/constraints/Isbn.rst b/reference/constraints/Isbn.rst index 1e82fa4c36d..70c21799724 100644 --- a/reference/constraints/Isbn.rst +++ b/reference/constraints/Isbn.rst @@ -1,6 +1,16 @@ Isbn ==== +.. versionadded:: 2.3 + The Isbn constraint was introduced in Symfony 2.3. + +.. caution:: + + The ``isbn10`` and ``isbn13`` options are deprecated since Symfony 2.5 + and will be removed in Symfony 3.0. Use the ``type`` option instead. + Furthermore, when using the ``type`` option, lowercase characters are no + longer supported starting in Symfony 2.5, as they are not allowed in ISBNs. + This constraint validates that an `International Standard Book Number (ISBN)`_ is either a valid ISBN-10 or a valid ISBN-13. diff --git a/reference/constraints/Issn.rst b/reference/constraints/Issn.rst index 7e70d3d078f..a57832bd698 100644 --- a/reference/constraints/Issn.rst +++ b/reference/constraints/Issn.rst @@ -1,6 +1,9 @@ Issn ==== +.. versionadded:: 2.3 + The Issn constraint was introduced in Symfony 2.3. + Validates that a value is a valid `International Standard Serial Number (ISSN)`_. diff --git a/reference/constraints/LessThan.rst b/reference/constraints/LessThan.rst index 9bfaefaacfa..65f171bf834 100644 --- a/reference/constraints/LessThan.rst +++ b/reference/constraints/LessThan.rst @@ -1,6 +1,9 @@ LessThan ======== +.. versionadded:: 2.3 + The ``LessThan`` constraint was introduced in Symfony 2.3. + Validates that a value is less than another value, defined in the options. To force that a value is less than or equal to another value, see :doc:`/reference/constraints/LessThanOrEqual`. To force a value is greater @@ -90,6 +93,9 @@ If you want to ensure that the ``age`` of a ``Person`` class is less than Comparing Dates --------------- +.. versionadded:: 2.6 + The feature to compare dates was introduced in Symfony 2.6. + This constraint can be used to compare ``DateTime`` objects against any date string `accepted by the DateTime constructor`_. For example, you could check that a date must be in the past like this: diff --git a/reference/constraints/LessThanOrEqual.rst b/reference/constraints/LessThanOrEqual.rst index b780aef3510..48d3b1cef61 100644 --- a/reference/constraints/LessThanOrEqual.rst +++ b/reference/constraints/LessThanOrEqual.rst @@ -1,6 +1,9 @@ LessThanOrEqual =============== +.. versionadded:: 2.3 + The ``LessThanOrEqual`` constraint was introduced in Symfony 2.3. + Validates that a value is less than or equal to another value, defined in the options. To force that a value is less than another value, see :doc:`/reference/constraints/LessThan`. @@ -89,6 +92,9 @@ equal to ``80``, you could do the following: Comparing Dates --------------- +.. versionadded:: 2.6 + The feature to compare dates was introduced in Symfony 2.6. + This constraint can be used to compare ``DateTime`` objects against any date string `accepted by the DateTime constructor`_. For example, you could check that a date must be today or in the past like this: diff --git a/reference/constraints/NotEqualTo.rst b/reference/constraints/NotEqualTo.rst index 4b3ac0c3cec..594d8925726 100644 --- a/reference/constraints/NotEqualTo.rst +++ b/reference/constraints/NotEqualTo.rst @@ -1,6 +1,9 @@ NotEqualTo ========== +.. versionadded:: 2.3 + The ``NotEqualTo`` constraint was introduced in Symfony 2.3. + Validates that a value is **not** equal to another value, defined in the options. To force that a value is equal, see :doc:`/reference/constraints/EqualTo`. diff --git a/reference/constraints/NotIdenticalTo.rst b/reference/constraints/NotIdenticalTo.rst index d8e2a228707..b17137d6212 100644 --- a/reference/constraints/NotIdenticalTo.rst +++ b/reference/constraints/NotIdenticalTo.rst @@ -1,6 +1,9 @@ NotIdenticalTo ============== +.. versionadded:: 2.3 + The ``NotIdenticalTo`` constraint was introduced in Symfony 2.3. + Validates that a value is **not** identical to another value, defined in the options. To force that a value is identical, see :doc:`/reference/constraints/IdenticalTo`. diff --git a/reference/constraints/Null.rst b/reference/constraints/Null.rst new file mode 100644 index 00000000000..fd07a456eec --- /dev/null +++ b/reference/constraints/Null.rst @@ -0,0 +1,8 @@ +Null +==== + +.. caution:: + + The ``Null`` constraint is deprecated since Symfony 2.7 + and will be removed in Symfony 3.0. Use the + :doc:`/reference/constraints/IsNull` constraint instead. diff --git a/reference/constraints/True.rst b/reference/constraints/True.rst new file mode 100644 index 00000000000..ba54ecbd637 --- /dev/null +++ b/reference/constraints/True.rst @@ -0,0 +1,8 @@ +True +==== + +.. caution:: + + The ``True`` constraint is deprecated since Symfony 2.7 + and will be removed in Symfony 3.0. Use the + :doc:`/reference/constraints/IsTrue` constraint instead. diff --git a/reference/constraints/Url.rst b/reference/constraints/Url.rst index 2de6b989358..14380b00f94 100644 --- a/reference/constraints/Url.rst +++ b/reference/constraints/Url.rst @@ -229,6 +229,9 @@ the ``ftp://`` type URLs to be valid, redefine the ``protocols`` array, listing checkDNS ~~~~~~~~ +.. versionadded:: 2.7 + The ``checkDNS`` option was introduced in Symfony 2.7. + **type**: ``boolean`` **default**: ``false`` By default, this constraint just validates the syntax of the given URL. If you @@ -303,6 +306,9 @@ of the ``ANY`` DNS record corresponding to the host associated with the given UR dnsMessage ~~~~~~~~~~ +.. versionadded:: 2.7 + The ``dnsMessage`` option was introduced in Symfony 2.7. + **type**: ``string`` **default**: ``The host could not be resolved.`` This message is shown when the ``checkDNS`` option is set to ``true`` and the diff --git a/reference/constraints/Valid.rst b/reference/constraints/Valid.rst index e52e9e53bf1..67ec4bc86a6 100644 --- a/reference/constraints/Valid.rst +++ b/reference/constraints/Valid.rst @@ -9,6 +9,7 @@ an object and all sub-objects associated with it. | Applies to | :ref:`property or method ` | +----------------+---------------------------------------------------------------------+ | Options | - `traverse`_ | +| | - `deep`_ (deprecated as of 2.5) | | | - `payload`_ | +----------------+---------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Validator\\Constraints\\Valid` | @@ -267,4 +268,19 @@ If this constraint is applied to a property that holds an array of objects, then each object in that array will be validated only if this option is set to ``true``. +deep +~~~~ + +.. caution:: + + The ``deep`` option was deprecated in Symfony 2.5 and will be removed + in Symfony 3.0. When traversing arrays, nested arrays are always traversed. + When traversing nested objects, their traversal strategy is used. + +**type**: ``boolean`` **default**: ``false`` + +If this constraint is applied to a property that holds an array of objects, +then each object in that array will be validated recursively if this option +is set to ``true``. + .. include:: /reference/constraints/_payload-option.rst.inc diff --git a/reference/constraints/_payload-option.rst.inc b/reference/constraints/_payload-option.rst.inc index c32ad633989..30c6d46bbc8 100644 --- a/reference/constraints/_payload-option.rst.inc +++ b/reference/constraints/_payload-option.rst.inc @@ -3,6 +3,9 @@ payload **type**: ``mixed`` **default**: ``null`` +.. versionadded:: 2.6 + The ``payload`` option was introduced in Symfony 2.6. + This option can be used to attach arbitrary domain-specific data to a constraint. The configured payload is not used by the Validator component, but its processing is completely up to you. diff --git a/reference/constraints/map.rst.inc b/reference/constraints/map.rst.inc index b3e767b66bd..9441fb535cb 100644 --- a/reference/constraints/map.rst.inc +++ b/reference/constraints/map.rst.inc @@ -66,7 +66,6 @@ File Constraints Financial and other Number Constraints ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -* :doc:`Bic ` * :doc:`CardScheme ` * :doc:`Currency ` * :doc:`Luhn ` diff --git a/reference/dic_tags.rst b/reference/dic_tags.rst index 5a9fba64137..2d847f0a1aa 100644 --- a/reference/dic_tags.rst +++ b/reference/dic_tags.rst @@ -231,6 +231,9 @@ The tagged service will be removed from the container if auto_alias ---------- +.. versionadded:: 2.7 + The ``auto_alias`` tag was introduced in Symfony 2.7. + **Purpose**: Define aliases based on the value of container parameters Consider the following configuration that defines three different but related @@ -703,9 +706,9 @@ channel when injecting the logger in a service. .. tip:: - You can also configure custom channels in the configuration and retrieve - the corresponding logger service from the service container directly (see - :ref:`cookbook-monolog-channels-config`). + If you use MonologBundle 2.4 or higher, you can configure custom channels + in the configuration and retrieve the corresponding logger service from + the service container directly (see :ref:`cookbook-monolog-channels-config`). .. _dic_tags-monolog-processor: @@ -881,6 +884,10 @@ For more information, see :doc:`/cookbook/routing/custom_route_loader`. routing.expression_language_provider ------------------------------------ +.. versionadded:: 2.6 + The ``routing.expression_language_provider`` tag was introduced in Symfony + 2.6. + **Purpose**: Register a provider for expression language functions in routing This tag is used to automatically register @@ -891,6 +898,10 @@ functions to the routing expression language. security.expression_language_provider ------------------------------------- +.. versionadded:: 2.6 + The ``security.expression_language_provider`` tag was introduced in Symfony + 2.6. + **Purpose**: Register a provider for expression language functions in security This tag is used to automatically register :ref:`expression function providers diff --git a/reference/forms/twig_reference.rst b/reference/forms/twig_reference.rst index d0de12242dc..f5b1c58fdda 100644 --- a/reference/forms/twig_reference.rst +++ b/reference/forms/twig_reference.rst @@ -180,6 +180,24 @@ obvious (since it'll render the field for you). {{ form_rest(form) }} +.. _reference-forms-twig-enctype: + +form_enctype(view) +------------------ + +.. note:: + + This helper was deprecated in Symfony 2.3 and will be removed in Symfony + 3.0. You should use ``form_start()`` instead. + +If the form contains at least one file upload field, this will render the +required ``enctype="multipart/form-data"`` form attribute. It's always a +good idea to include this in your form tag: + +.. code-block:: html+twig + + + Form Tests Reference -------------------- @@ -313,6 +331,9 @@ done by using a public ``vars`` property on the get('name')->vars['label'] ?> +.. versionadded:: 2.3 + The ``method`` and ``action`` variables were introduced in Symfony 2.3. + +------------------------+-------------------------------------------------------------------------------------+ | Variable | Usage | +========================+=====================================================================================+ @@ -337,11 +358,19 @@ done by using a public ``vars`` property on the +------------------------+-------------------------------------------------------------------------------------+ | ``value`` | The value that will be used when rendering (commonly the ``value`` HTML attribute). | +------------------------+-------------------------------------------------------------------------------------+ +| ``read_only`` | If ``true``, ``readonly="readonly"`` is added to the field. | ++------------------------+-------------------------------------------------------------------------------------+ | ``disabled`` | If ``true``, ``disabled="disabled"`` is added to the field. | +------------------------+-------------------------------------------------------------------------------------+ | ``required`` | If ``true``, a ``required`` attribute is added to the field to activate HTML5 | | | validation. Additionally, a ``required`` class is added to the label. | +------------------------+-------------------------------------------------------------------------------------+ +| ``max_length`` | Adds a ``maxlength`` HTML attribute to the element. (deprecated as of 2.5, to be | +| | removed in 3.0, use ``attr["maxlength"]`` instead) | ++------------------------+-------------------------------------------------------------------------------------+ +| ``pattern`` | Adds a ``pattern`` HTML attribute to the element. (deprecated as of 2.5, to be | +| | removed in 3.0, use ``attr["pattern"]`` instead) | ++------------------------+-------------------------------------------------------------------------------------+ | ``label`` | The string label that will be rendered. | +------------------------+-------------------------------------------------------------------------------------+ | ``multipart`` | If ``true``, ``form_enctype`` will render ``enctype="multipart/form-data"``. | diff --git a/reference/forms/types.rst b/reference/forms/types.rst index b5afd300a63..413c5bc2bc4 100644 --- a/reference/forms/types.rst +++ b/reference/forms/types.rst @@ -18,7 +18,6 @@ Form Types Reference types/percent types/search types/url - types/range types/choice types/entity @@ -49,7 +48,7 @@ Form Types Reference types/form A form is composed of *fields*, each of which are built with the help of -a field *type* (e.g. ``TextType``, ``ChoiceType``, etc). Symfony comes +a field *type* (e.g. a ``text`` type, ``choice`` type, etc). Symfony comes standard with a large list of field types that can be used in your application. Supported Field Types diff --git a/reference/forms/types/birthday.rst b/reference/forms/types/birthday.rst index b9b39d65070..cb1e28cedad 100644 --- a/reference/forms/types/birthday.rst +++ b/reference/forms/types/birthday.rst @@ -1,16 +1,16 @@ .. index:: - single: Forms; Fields; BirthdayType + single: Forms; Fields; birthday -BirthdayType Field -================== +birthday Field Type +=================== -A :doc:`DateType ` field that specializes in handling +A :doc:`date ` field that specializes in handling birthdate data. Can be rendered as a single text box, three text boxes (month, day and year), or three select boxes. -This type is essentially the same as the :doc:`DateType ` +This type is essentially the same as the :doc:`date ` type, but with a more appropriate default for the `years`_ option. The `years`_ option defaults to 120 years ago to the current year. @@ -22,7 +22,7 @@ option defaults to 120 years ago to the current year. +----------------------+-------------------------------------------------------------------------------+ | Overridden options | - `years`_ | +----------------------+-------------------------------------------------------------------------------+ -| Inherited options | from the :doc:`DateType `: | +| Inherited options | from the :doc:`date ` type: | | | | | | - `days`_ | | | - `placeholder`_ | @@ -33,7 +33,7 @@ option defaults to 120 years ago to the current year. | | - `view_timezone`_ | | | - `widget`_ | | | | -| | from the :doc:`FormType `: | +| | from the :doc:`form ` type: | | | | | | - `data`_ | | | - `disabled`_ | @@ -41,8 +41,9 @@ option defaults to 120 years ago to the current year. | | - `invalid_message`_ | | | - `invalid_message_parameters`_ | | | - `mapped`_ | +| | - `read_only`_ | +----------------------+-------------------------------------------------------------------------------+ -| Parent type | :doc:`DateType ` | +| Parent type | :doc:`date ` | +----------------------+-------------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\BirthdayType` | +----------------------+-------------------------------------------------------------------------------+ @@ -61,13 +62,18 @@ relevant when the ``widget`` option is set to ``choice``. Inherited Options ----------------- -These options inherit from the :doc:`DateType `: +These options inherit from the :doc:`date ` +type: .. include:: /reference/forms/types/options/days.rst.inc placeholder ~~~~~~~~~~~ +.. versionadded:: 2.6 + The ``placeholder`` option was introduced in Symfony 2.6 and replaces + ``empty_value``, which is available prior to 2.6. + **type**: ``string`` | ``array`` If your widget option is set to ``choice``, then this field will be represented @@ -99,7 +105,8 @@ values for the year, month and day fields:: .. include:: /reference/forms/types/options/date_widget.rst.inc -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc @@ -112,3 +119,5 @@ These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/invalid_message_parameters.rst.inc .. include:: /reference/forms/types/options/mapped.rst.inc + +.. include:: /reference/forms/types/options/read_only.rst.inc diff --git a/reference/forms/types/button.rst b/reference/forms/types/button.rst index 6cc4e864247..20fbf3030dd 100644 --- a/reference/forms/types/button.rst +++ b/reference/forms/types/button.rst @@ -1,8 +1,11 @@ .. index:: - single: Forms; Fields; ButtonType + single: Forms; Fields; button -ButtonType Field -================ +button Field Type +================= + +.. versionadded:: 2.3 + The ``button`` type was introduced in Symfony 2.3. A simple, non-responsive button. @@ -25,7 +28,7 @@ Inherited Options The following options are defined in the :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\BaseType` class. The ``BaseType`` class is the parent class for both the ``button`` type -and the :doc:`FormType `, but it is not part +and the :doc:`form type `, but it is not part of the form type tree (i.e. it can not be used as a form type on its own). .. include:: /reference/forms/types/options/button_attr.rst.inc diff --git a/reference/forms/types/checkbox.rst b/reference/forms/types/checkbox.rst index 8f87683f180..69b5670c42b 100644 --- a/reference/forms/types/checkbox.rst +++ b/reference/forms/types/checkbox.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; CheckboxType + single: Forms; Fields; checkbox -CheckboxType Field -================== +checkbox Field Type +=================== Creates a single input checkbox. This should always be used for a field that has a boolean value: if the box is checked, the field will be set to @@ -24,9 +24,10 @@ true, if the box is unchecked, the value will be set to false. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `read_only`_ | | | - `required`_ | +-------------+------------------------------------------------------------------------+ -| Parent type | :doc:`FormType ` | +| Parent type | :doc:`form ` | +-------------+------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\CheckboxType` | +-------------+------------------------------------------------------------------------+ @@ -36,10 +37,7 @@ Example Usage .. code-block:: php - use Symfony\Component\Form\Extension\Core\Type\CheckboxType; - // ... - - $builder->add('public', CheckboxType::class, array( + $builder->add('public', 'checkbox', array( 'label' => 'Show this entry publicly?', 'required' => false, )); @@ -59,7 +57,8 @@ Overridden Options Inherited Options ----------------- -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc @@ -77,6 +76,8 @@ These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc Form Variables diff --git a/reference/forms/types/choice.rst b/reference/forms/types/choice.rst index 31d528875d6..556053c5336 100644 --- a/reference/forms/types/choice.rst +++ b/reference/forms/types/choice.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; ChoiceType + single: Forms; Fields; choice -ChoiceType Field (select drop-downs, radio buttons & checkboxes) -================================================================ +choice Field Type (select drop-downs, radio buttons & checkboxes) +================================================================= A multi-purpose field used to allow the user to "choose" one or more options. It can be rendered as a ``select`` tag, radio buttons, or checkboxes. @@ -15,6 +15,7 @@ To use this field, you must specify *either* ``choices`` or ``choice_loader`` op | Options | - `choices`_ | | | - `choice_attr`_ | | | - `choice_label`_ | +| | - `choice_list`_ (deprecated) | | | - `choice_loader`_ | | | - `choice_name`_ | | | - `choice_translation_domain`_ | @@ -39,10 +40,11 @@ To use this field, you must specify *either* ``choices`` or ``choice_loader`` op | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `read_only`_ | | | - `required`_ | | | - `translation_domain`_ | +-------------+------------------------------------------------------------------------------+ -| Parent type | :doc:`FormType ` | +| Parent type | :doc:`form ` | +-------------+------------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\ChoiceType` | +-------------+------------------------------------------------------------------------------+ @@ -53,15 +55,14 @@ Example Usage The easiest way to use this field is to specify the choices directly via the ``choices`` option:: - use Symfony\Component\Form\Extension\Core\Type\ChoiceType; - // ... - - $builder->add('isAttending', ChoiceType::class, array( + $builder->add('isAttending', 'choice', array( 'choices' => array( 'Maybe' => null, 'Yes' => true, 'No' => false, ), + // *this line is important* + 'choices_as_values' => true, )); This will create a ``select`` drop-down like this: @@ -74,6 +75,14 @@ if the starting data for this field is ``true``, then ``Yes`` will be auto-selec In other words, the **value** of each item is the value you want to get/set in PHP code, while the **key** is what will be shown to the user. +.. caution:: + + The ``choices_as_values`` *must* be set to ``true`` in all cases. This activates + the "new" choice type API, which was introduced in Symfony 2.7. If you omit this + option (or set it to ``false``), you'll activate the old API, which is deprecated + and will be removed in 3.0. To read about the old API, read an older version of + the docs. + Advanced Example (with Objects!) -------------------------------- @@ -81,17 +90,14 @@ This field has a *lot* of options and most control how the field is displayed. I this example, the underlying data is some ``Category`` object that has a ``getName()`` method:: - use Symfony\Component\Form\Extension\Core\Type\ChoiceType; - use AppBundle\Entity\Category; - // ... - - $builder->add('category', ChoiceType::class, [ + $builder->add('category', 'choice', [ 'choices' => [ new Category('Cat1'), new Category('Cat2'), new Category('Cat3'), new Category('Cat4'), ], + 'choices_as_values' => true, 'choice_label' => function($category, $key, $index) { /** @var Category $category */ return strtoupper($category->getName()); @@ -129,10 +135,7 @@ Grouping Options You can easily "group" options in a select by passing a multi-dimensional choices array:: - use Symfony\Component\Form\Extension\Core\Type\ChoiceType; - // ... - - $builder->add('stockStatus', ChoiceType::class, [ + $builder->add('stockStatus', 'choice', [ 'choices' => [ 'Main Statuses' => [ 'Yes' => 'stock_yes', @@ -143,6 +146,7 @@ You can easily "group" options in a select by passing a multi-dimensional choice 'Discontinued' => 'stock_discontinued', ] ], + 'choices_as_values' => true, ); .. image:: /images/reference/form/choice-example4.png @@ -162,10 +166,7 @@ This is the most basic way to specify the choices that should be used by this field. The ``choices`` option is an array, where the array key is the item's label and the array value is the item's value:: - use Symfony\Component\Form\Extension\Core\Type\ChoiceType; - // ... - - $builder->add('inStock', ChoiceType::class, array( + $builder->add('inStock', 'choice', array( 'choices' => array('In Stock' => true, 'Out of Stock' => false), // always include this 'choices_as_values' => true, @@ -177,9 +178,55 @@ is the item's label and the array value is the item's value:: .. include:: /reference/forms/types/options/choice_label.rst.inc +choice_list +~~~~~~~~~~~ + +.. caution:: + + The ``choice_list`` option of ChoiceType was deprecated in Symfony 2.7. + You should use `choices`_ or `choice_loader`_ now. + +**type**: :class:`Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\ChoiceListInterface` + +This is one way of specifying the options to be used for this field. +The ``choice_list`` option must be an instance of the ``ChoiceListInterface``. +For more advanced cases, a custom class that implements the interface +can be created to supply the choices. + +With this option you can also allow float values to be selected as data. +For example:: + + use Symfony\Component\Form\Extension\Core\ChoiceList\ChoiceList; + + // ... + $builder->add('status', 'choice', array( + 'choice_list' => new ChoiceList( + array(1, 0.5, 0.1), + array('Full', 'Half', 'Almost empty') + ) + )); + +The ``status`` field created by the code above will be rendered as: + +.. code-block:: html + + + +But don't be confused! If ``Full`` is selected (value ``0`` in HTML), ``1`` +will be returned in your form. If ``Almost empty`` is selected (value ``2`` +in HTML), ``0.1`` will be returned. + choice_loader ~~~~~~~~~~~~~ +.. versionadded:: 2.7 + + The ``choice_loader`` option was added in Symfony 2.7. + **type**: :class:`Symfony\\Component\\Form\\ChoiceList\\Loader\\ChoiceLoaderInterface` The ``choice_loader`` can be used to only partially load the choices in cases where @@ -218,7 +265,7 @@ to the user. * Since 2.7:: - $builder->add('gender', ChoiceType::class, array( + $builder->add('gender', 'choice', array( // Shows "Male" to the user, returns "m" when selected 'choices' => array('Male' => 'm', 'Female' => 'f'), 'choices_as_values' => true, @@ -229,7 +276,7 @@ type behaves as if it were set to true: * Default for 3.0:: - $builder->add('gender', ChoiceType::class, array( + $builder->add('gender', 'choice', array( 'choices' => array('Male' => 'm', 'Female' => 'f'), )); @@ -277,7 +324,8 @@ the parent field (the form in most cases). Inherited Options ----------------- -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/by_reference.rst.inc @@ -297,6 +345,8 @@ These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc .. include:: /reference/forms/types/options/choice_type_translation_domain.rst.inc diff --git a/reference/forms/types/collection.rst b/reference/forms/types/collection.rst index 977d64412b2..02913dcd6d7 100644 --- a/reference/forms/types/collection.rst +++ b/reference/forms/types/collection.rst @@ -1,29 +1,30 @@ .. index:: - single: Forms; Fields; CollectionType + single: Forms; Fields; collection -CollectionType Field -==================== +collection Field Type +===================== This field type is used to render a "collection" of some field or form. -In the easiest sense, it could be an array of ``TextType`` fields that populate -an array ``emails`` values. In more complex examples, you can embed entire +In the easiest sense, it could be an array of ``text`` fields that populate +an array ``emails`` field. In more complex examples, you can embed entire forms, which is useful when creating forms that expose one-to-many relationships (e.g. a product from where you can manage many related product photos). +-------------+-----------------------------------------------------------------------------+ -| Rendered as | depends on the `entry_type`_ option | +| Rendered as | depends on the `type`_ option | +-------------+-----------------------------------------------------------------------------+ | Options | - `allow_add`_ | | | - `allow_delete`_ | | | - `delete_empty`_ | -| | - `entry_options`_ | -| | - `entry_type`_ | +| | - `options`_ | | | - `prototype`_ | | | - `prototype_name`_ | +| | - `type`_ | +-------------+-----------------------------------------------------------------------------+ | Inherited | - `by_reference`_ | -| options | - `empty_data`_ | +| options | - `cascade_validation`_ | +| | - `empty_data`_ | | | - `error_bubbling`_ | | | - `error_mapping`_ | | | - `label`_ | @@ -32,7 +33,7 @@ photos). | | - `mapped`_ | | | - `required`_ | +-------------+-----------------------------------------------------------------------------+ -| Parent type | :doc:`FormType ` | +| Parent type | :doc:`form ` | +-------------+-----------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\CollectionType` | +-------------+-----------------------------------------------------------------------------+ @@ -52,16 +53,12 @@ in a form. For example, suppose you have an ``emails`` field that corresponds to an array of email addresses. In the form, you want to expose each email address as its own input text box:: - use Symfony\Component\Form\Extension\Core\Type\CollectionType; - use Symfony\Component\Form\Extension\Core\Type\EmailType; - // ... - - $builder->add('emails', CollectionType::class, array( - // each entry in the array will be an "email" field - 'entry_type' => EmailType::class, + $builder->add('emails', 'collection', array( + // each item in the array will be an "email" field + 'type' => 'email', // these options are passed to each "email" type - 'entry_options' => array( - 'attr' => array('class' => 'email-box') + 'options' => array( + 'attr' => array('class' => 'email-box') ), )); @@ -276,44 +273,30 @@ form you have to set this option to true. However, existing collection entries will only be deleted if you have the allow_delete_ option enabled. Otherwise the empty values will be kept. -entry_options -~~~~~~~~~~~~~ +options +~~~~~~~ **type**: ``array`` **default**: ``array()`` -This is the array that's passed to the form type specified in the `entry_type`_ -option. For example, if you used the :doc:`ChoiceType ` -as your `entry_type`_ option (e.g. for a collection of drop-down menus), +This is the array that's passed to the form type specified in the `type`_ +option. For example, if you used the :doc:`choice ` +type as your `type`_ option (e.g. for a collection of drop-down menus), then you'd need to at least pass the ``choices`` option to the underlying type:: - use Symfony\Component\Form\Extension\Core\Type\CollectionType; - use Symfony\Component\Form\Extension\Core\Type\ChoiceType; - // ... - - $builder->add('favorite_cities', CollectionType::class, array( - 'entry_type' => ChoiceType::class, - 'entry_options' => array( + $builder->add('favorite_cities', 'collection', array( + 'type' => 'choice', + 'options' => array( 'choices' => array( 'Nashville' => 'nashville', 'Paris' => 'paris', 'Berlin' => 'berlin', 'London' => 'london', ), + 'choices_as_values' => true, ), )); -entry_type -~~~~~~~~~~ - -**type**: ``string`` or :class:`Symfony\\Component\\Form\\FormTypeInterface` **required** - -This is the field type for each item in this collection (e.g. ``TextType``, -``ChoiceType``, etc). For example, if you have an array of email addresses, -you'd use the :doc:`EmailType `. If you want -to embed a collection of some other form, create a new instance of your -form type and pass it as this option. - prototype ~~~~~~~~~ @@ -362,16 +345,30 @@ If you have several collections in your form, or worse, nested collections you may want to change the placeholder so that unrelated placeholders are not replaced with the same value. +type +~~~~ + +**type**: ``string`` or :class:`Symfony\\Component\\Form\\FormTypeInterface` **required** + +This is the field type for each item in this collection (e.g. ``text``, +``choice``, etc). For example, if you have an array of email addresses, +you'd use the :doc:`email ` type. If you want +to embed a collection of some other form, create a new instance of your +form type and pass it as this option. + Inherited Options ----------------- -These options inherit from the :doc:`FormType `. -Not all options are listed here - only the most applicable to this type: +These options inherit from the :doc:`form ` +type. Not all options are listed here - only the most applicable to this +type: .. _reference-form-types-by-reference: .. include:: /reference/forms/types/options/by_reference.rst.inc +.. include:: /reference/forms/types/options/cascade_validation.rst.inc + .. include:: /reference/forms/types/options/empty_data.rst.inc :end-before: DEFAULT_PLACEHOLDER diff --git a/reference/forms/types/country.rst b/reference/forms/types/country.rst index edeb9225e24..4c4f3c436ea 100644 --- a/reference/forms/types/country.rst +++ b/reference/forms/types/country.rst @@ -1,10 +1,10 @@ .. index:: single: Forms; Fields; country -CountryType Field -================= +country Field Type +================== -The ``CountryType`` is a subset of the ``ChoiceType`` that displays countries +The ``country`` type is a subset of the ``ChoiceType`` that displays countries of the world. As an added bonus, the country names are displayed in the language of the user. @@ -14,9 +14,10 @@ The "value" for each country is the two-letter country code. The locale of your user is guessed using :phpmethod:`Locale::getDefault` -Unlike the ``ChoiceType``, you don't need to specify a ``choices`` option as the -field type automatically uses all of the countries of the world. You *can* specify -the option manually, but then you should just use the ``ChoiceType`` directly. +Unlike the ``choice`` type, you don't need to specify a ``choices`` or +``choice_list`` option as the field type automatically uses all of the countries +of the world. You *can* specify either of these options manually, but then +you should just use the ``choice`` type directly. +-------------+-----------------------------------------------------------------------+ | Rendered as | can be various tags (see :ref:`forms-reference-choice-tags`) | @@ -24,7 +25,7 @@ the option manually, but then you should just use the ``ChoiceType`` directly. | Overridden | - `choices`_ | | options | | +-------------+-----------------------------------------------------------------------+ -| Inherited | from the :doc:`ChoiceType ` | +| Inherited | from the :doc:`choice ` type | | options | | | | - `error_bubbling`_ | | | - `error_mapping`_ | @@ -33,7 +34,7 @@ the option manually, but then you should just use the ``ChoiceType`` directly. | | - `placeholder`_ | | | - `preferred_choices`_ | | | | -| | from the :doc:`FormType ` | +| | from the :doc:`form ` type | | | | | | - `data`_ | | | - `disabled`_ | @@ -42,9 +43,10 @@ the option manually, but then you should just use the ``ChoiceType`` directly. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `read_only`_ | | | - `required`_ | +-------------+-----------------------------------------------------------------------+ -| Parent type | :doc:`ChoiceType ` | +| Parent type | :doc:`choice ` | +-------------+-----------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\CountryType` | +-------------+-----------------------------------------------------------------------+ @@ -63,7 +65,8 @@ The locale is used to translate the countries names. Inherited Options ----------------- -These options inherit from the :doc:`ChoiceType `: +These options inherit from the :doc:`choice ` +type: .. include:: /reference/forms/types/options/error_bubbling.rst.inc @@ -77,7 +80,8 @@ These options inherit from the :doc:`ChoiceType ` .. include:: /reference/forms/types/options/preferred_choices.rst.inc -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc @@ -103,4 +107,6 @@ The actual default value of this option depends on other field options: .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc diff --git a/reference/forms/types/currency.rst b/reference/forms/types/currency.rst index 6bdedd99d1c..4ca2fdf72aa 100644 --- a/reference/forms/types/currency.rst +++ b/reference/forms/types/currency.rst @@ -1,15 +1,17 @@ .. index:: single: Forms; Fields; currency -CurrencyType Field -================== +currency Field Type +=================== -The ``CurrencyType`` is a subset of the :doc:`ChoiceType ` -that allows the user to select from a large list of `3-letter ISO 4217`_ currencies. +The ``currency`` type is a subset of the +:doc:`choice type ` that allows the user +to select from a large list of `3-letter ISO 4217`_ currencies. -Unlike the ``ChoiceType``, you don't need to specify a ``choices`` option as the -field type automatically uses a large list of currencies. You *can* specify the option -manually, but then you should just use the ``ChoiceType`` directly. +Unlike the ``choice`` type, you don't need to specify a ``choices`` or +``choice_list`` option as the field type automatically uses a large list +of currencies. You *can* specify either of these options manually, but then +you should just use the ``choice`` type directly. +-------------+------------------------------------------------------------------------+ | Rendered as | can be various tags (see :ref:`forms-reference-choice-tags`) | @@ -17,7 +19,7 @@ manually, but then you should just use the ``ChoiceType`` directly. | Overridden | - `choices`_ | | options | | +-------------+------------------------------------------------------------------------+ -| Inherited | from the :doc:`ChoiceType ` | +| Inherited | from the :doc:`choice ` type | | options | | | | - `error_bubbling`_ | | | - `expanded`_ | @@ -25,7 +27,7 @@ manually, but then you should just use the ``ChoiceType`` directly. | | - `placeholder`_ | | | - `preferred_choices`_ | | | | -| | from the :doc:`FormType ` type | +| | from the :doc:`form ` type | | | | | | - `data`_ | | | - `disabled`_ | @@ -34,9 +36,10 @@ manually, but then you should just use the ``ChoiceType`` directly. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `read_only`_ | | | - `required`_ | +-------------+------------------------------------------------------------------------+ -| Parent type | :doc:`ChoiceType ` | +| Parent type | :doc:`choice ` | +-------------+------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\CurrencyType` | +-------------+------------------------------------------------------------------------+ @@ -54,7 +57,8 @@ The choices option defaults to all currencies. Inherited Options ----------------- -These options inherit from the :doc:`ChoiceType `: +These options inherit from the :doc:`choice` +type: .. include:: /reference/forms/types/options/error_bubbling.rst.inc @@ -66,7 +70,8 @@ These options inherit from the :doc:`ChoiceType ` .. include:: /reference/forms/types/options/preferred_choices.rst.inc -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form` +type: .. include:: /reference/forms/types/options/data.rst.inc @@ -92,6 +97,8 @@ The actual default value of this option depends on other field options: .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc .. _`3-letter ISO 4217`: https://en.wikipedia.org/wiki/ISO_4217 diff --git a/reference/forms/types/date.rst b/reference/forms/types/date.rst index 720ae9e05e9..86df6afaee8 100644 --- a/reference/forms/types/date.rst +++ b/reference/forms/types/date.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; DateType + single: Forms; Fields; date -DateType Field -============== +date Field Type +=============== A field that allows the user to modify date information via a variety of different HTML elements. @@ -42,8 +42,9 @@ day and year) or three select boxes (see the `widget`_ option). | | - `invalid_message`_ | | | - `invalid_message_parameters`_ | | | - `mapped`_ | +| | - `read_only`_ | +----------------------+-----------------------------------------------------------------------------+ -| Parent type | :doc:`FormType ` | +| Parent type | :doc:`form ` | +----------------------+-----------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\DateType` | +----------------------+-----------------------------------------------------------------------------+ @@ -55,13 +56,10 @@ This field type is highly configurable, but easy to use. The most important options are ``input`` and ``widget``. Suppose that you have a ``publishedAt`` field whose underlying date is a -``DateTime`` object. The following configures the ``DateType`` type for that +``DateTime`` object. The following configures the ``date`` type for that field as three different choice fields:: - use Symfony\Component\Form\Extension\Core\Type\DateType; - // ... - - $builder->add('publishedAt', DateType::class, array( + $builder->add('publishedAt', 'date', array( 'input' => 'datetime', 'widget' => 'choice', )); @@ -70,10 +68,7 @@ The ``input`` option *must* be changed to match the type of the underlying date data. For example, if the ``publishedAt`` field's data were a unix timestamp, you'd need to set ``input`` to ``timestamp``:: - use Symfony\Component\Form\Extension\Core\Type\DateType; - // ... - - $builder->add('publishedAt', DateType::class, array( + $builder->add('publishedAt', 'date', array( 'input' => 'timestamp', 'widget' => 'choice', )); @@ -89,20 +84,24 @@ Field Options placeholder ~~~~~~~~~~~ +.. versionadded:: 2.6 + The ``placeholder`` option was introduced in Symfony 2.6 and replaces + ``empty_value``, which is available prior to 2.6. + **type**: ``string`` | ``array`` If your widget option is set to ``choice``, then this field will be represented as a series of ``select`` boxes. When the placeholder value is a string, it will be used as the **blank value** of all select boxes:: - $builder->add('dueDate', DateType::class, array( + $builder->add('dueDate', 'date', array( 'placeholder' => 'Select a value', )); Alternatively, you can use an array that configures different placeholder values for the year, month and day fields:: - $builder->add('dueDate', DateType::class, array( + $builder->add('dueDate', 'date', array( 'placeholder' => array( 'year' => 'Year', 'month' => 'Month', 'day' => 'Day' ) @@ -150,7 +149,8 @@ error_bubbling Inherited Options ----------------- -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc @@ -166,6 +166,8 @@ These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/read_only.rst.inc + Field Variables --------------- diff --git a/reference/forms/types/datetime.rst b/reference/forms/types/datetime.rst index 0b341795263..fade67e2c89 100644 --- a/reference/forms/types/datetime.rst +++ b/reference/forms/types/datetime.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; DateTimeType + single: Forms; Fields; datetime -DateTimeType Field -================== +datetime Field Type +=================== This field type allows the user to modify data that represents a specific date and time (e.g. ``1984-06-05 12:15:30``). @@ -45,8 +45,9 @@ the data can be a ``DateTime`` object, a string, a timestamp or an array. | | - `invalid_message`_ | | | - `invalid_message_parameters`_ | | | - `mapped`_ | +| | - `read_only`_ | +----------------------+-----------------------------------------------------------------------------+ -| Parent type | :doc:`FormType ` | +| Parent type | :doc:`form ` | +----------------------+-----------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\DateTimeType` | +----------------------+-----------------------------------------------------------------------------+ @@ -60,7 +61,7 @@ date_format **type**: ``integer`` or ``string`` **default**: ``IntlDateFormatter::MEDIUM`` Defines the ``format`` option that will be passed down to the date field. -See the :ref:`DateType's format option ` +See the :ref:`date type's format option ` for more details. date_widget @@ -73,6 +74,10 @@ date_widget placeholder ~~~~~~~~~~~ +.. versionadded:: 2.6 + The ``placeholder`` option was introduced in Symfony 2.6 and replaces + ``empty_value``, which is available prior to 2.6. + **type**: ``string`` | ``array`` If your widget option is set to ``choice``, then this field will be represented @@ -139,7 +144,8 @@ time_widget **type**: ``string`` **default**: ``choice`` -Defines the ``widget`` option for the :doc:`TimeType `. +Defines the ``widget`` option for the :doc:`time ` +type .. include:: /reference/forms/types/options/view_timezone.rst.inc @@ -148,8 +154,8 @@ widget **type**: ``string`` **default**: ``null`` -Defines the ``widget`` option for both the :doc:`DateType ` -and :doc:`TimeType `. This can be overridden +Defines the ``widget`` option for both the :doc:`date ` +type and :doc:`time ` type. This can be overridden with the `date_widget`_ and `time_widget`_ options. .. include:: /reference/forms/types/options/with_minutes.rst.inc @@ -180,7 +186,8 @@ error_bubbling Inherited Options ----------------- -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc @@ -194,6 +201,8 @@ These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/read_only.rst.inc + Field Variables --------------- diff --git a/reference/forms/types/email.rst b/reference/forms/types/email.rst index 70ee3e6036e..ee174e6922c 100644 --- a/reference/forms/types/email.rst +++ b/reference/forms/types/email.rst @@ -1,10 +1,10 @@ .. index:: - single: Forms; Fields; EmailType + single: Forms; Fields; email -EmailType Field -=============== +email Field Type +================ -The ``EmailType`` field is a text field that is rendered using the HTML5 +The ``email`` field is a text field that is rendered using the HTML5 ```` tag. +-------------+---------------------------------------------------------------------+ @@ -19,10 +19,12 @@ The ``EmailType`` field is a text field that is rendered using the HTML5 | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `max_length`_ (deprecated as of 2.5) | +| | - `read_only`_ | | | - `required`_ | | | - `trim`_ | +-------------+---------------------------------------------------------------------+ -| Parent type | :doc:`TextType ` | +| Parent type | :doc:`text ` | +-------------+---------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\EmailType` | +-------------+---------------------------------------------------------------------+ @@ -30,7 +32,8 @@ The ``EmailType`` field is a text field that is rendered using the HTML5 Inherited Options ----------------- -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc @@ -56,6 +59,10 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/max_length.rst.inc + +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc .. include:: /reference/forms/types/options/trim.rst.inc diff --git a/reference/forms/types/entity.rst b/reference/forms/types/entity.rst index a3dcf0da857..e73cfa13845 100644 --- a/reference/forms/types/entity.rst +++ b/reference/forms/types/entity.rst @@ -1,10 +1,10 @@ .. index:: - single: Forms; Fields; EntityType + single: Forms; Fields; choice -EntityType Field -================ +entity Field Type +================= -A special ``ChoiceType`` field that's designed to load options from a Doctrine +A special ``choice`` field that's designed to load options from a Doctrine entity. For example, if you have a ``Category`` entity, you could use this field to display a ``select`` field of all, or some, of the ``Category`` objects from the database. @@ -20,7 +20,7 @@ objects from the database. | Overridden | - `choices`_ | | options | - `data_class`_ | +-------------+------------------------------------------------------------------+ -| Inherited | from the :doc:`ChoiceType `: | +| Inherited | from the :doc:`choice ` type: | | options | | | | - `choice_attr`_ | | | - `choice_name`_ | @@ -33,7 +33,7 @@ objects from the database. | | - `preferred_choices`_ | | | - `translation_domain`_ | | | | -| | from the :doc:`FormType `: | +| | from the :doc:`form ` type: | | | | | | - `data`_ | | | - `disabled`_ | @@ -44,9 +44,10 @@ objects from the database. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `read_only`_ | | | - `required`_ | +-------------+------------------------------------------------------------------+ -| Parent type | :doc:`ChoiceType ` | +| Parent type | :doc:`choice ` | +-------------+------------------------------------------------------------------+ | Class | :class:`Symfony\\Bridge\\Doctrine\\Form\\Type\\EntityType` | +-------------+------------------------------------------------------------------+ @@ -57,22 +58,16 @@ Basic Usage The ``entity`` type has just one required option: the entity which should be listed inside the choice field:: - use Symfony\Bridge\Doctrine\Form\Type\EntityType; - // ... - - $builder->add('users', EntityType::class, array( - 'class' => 'AppBundle:User', + $builder->add('users', 'entity', array( + 'class' => 'AcmeHelloBundle:User', 'choice_label' => 'username', )); In this case, all ``User`` objects will be loaded from the database and rendered as either a ``select`` tag, a set or radio buttons or a series of checkboxes (this depends on the ``multiple`` and ``expanded`` values). -Because of the `choice_label`_ option, the ``username`` property (usually by calling -``getUsername()``) will be used as the text to display in the field. - -If you omit the ``choice_label`` option, then your entity *must* have a ``__toString()`` -method. +If the entity object does not have a ``__toString()`` method the ``choice_label`` +option is needed. Using a Custom Query for the Entities ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -82,11 +77,10 @@ If you need to specify a custom query to use when fetching the entities the ``query_builder`` option. The easiest way to use the option is as follows:: use Doctrine\ORM\EntityRepository; - use Symfony\Bridge\Doctrine\Form\Type\EntityType; // ... - $builder->add('users', EntityType::class, array( - 'class' => 'AppBundle:User', + $builder->add('users', 'entity', array( + 'class' => 'AcmeHelloBundle:User', 'query_builder' => function (EntityRepository $er) { return $er->createQueryBuilder('u') ->orderBy('u.username', 'ASC'); @@ -104,11 +98,8 @@ For example, if you have a ``$group`` variable (passed into your form perhaps as a form option) and ``getUsers`` returns a collection of ``User`` entities, then you can supply the ``choices`` option directly:: - use Symfony\Bridge\Doctrine\Form\Type\EntityType; - // ... - - $builder->add('users', EntityType::class, array( - 'class' => 'AppBundle:User', + $builder->add('users', 'entity', array( + 'class' => 'AcmeHelloBundle:User', 'choices' => $group->getUsers(), )); @@ -120,15 +111,16 @@ Field Options choice_label ~~~~~~~~~~~~ +.. versionadded:: 2.7 + The ``choice_label`` option was introduced in Symfony 2.7. Prior to Symfony + 2.7, it was called ``property`` (which has the same functionality). + **type**: ``string`` or ``callable`` This is the property that should be used for displaying the entities as text in the HTML element:: - use Symfony\Bridge\Doctrine\Form\Type\EntityType; - // ... - - $builder->add('category', EntityType::class, array( + $builder->add('category', 'entity', array( 'class' => 'AppBundle:Category', 'choice_label' => 'displayName', )); @@ -136,10 +128,7 @@ the HTML element:: If left blank, the entity object will be cast to a string and so must have a ``__toString()`` method. You can also pass a callback function for more control:: - use Symfony\Bridge\Doctrine\Form\Type\EntityType; - // ... - - $builder->add('category', EntityType::class, array( + $builder->add('category', 'entity', array( 'class' => 'AppBundle:Category', 'choice_label' => function ($category) { return $category->getDisplayName(); @@ -158,11 +147,8 @@ more detais, see the main :ref:`choice_label ` docu For example, if the translations property is actually an associative array of objects, each with a name property, then you could do this:: - use Symfony\Bridge\Doctrine\Form\Type\EntityType; - // ... - - $builder->add('gender', EntityType::class, array( - 'class' => 'AppBundle:Category', + $builder->add('gender', 'entity', array( + 'class' => 'MyBundle:Gender', 'choice_label' => 'translations[en].name', )); @@ -171,8 +157,8 @@ class **type**: ``string`` **required** -The class of your entity (e.g. ``AppBundle:Category``). This can be -a fully-qualified class name (e.g. ``AppBundle\Entity\Category``) +The class of your entity (e.g. ``AcmeStoreBundle:Category``). This can be +a fully-qualified class name (e.g. ``Acme\StoreBundle\Entity\Category``) or the short alias name (as shown prior). em @@ -217,7 +203,8 @@ to query the entities. Inherited Options ----------------- -These options inherit from the :doc:`ChoiceType `: +These options inherit from the :doc:`choice ` +type: .. include:: /reference/forms/types/options/choice_attr.rst.inc @@ -247,8 +234,8 @@ These options inherit from the :doc:`ChoiceType ` .. note:: - This option expects an array of entity objects (that's actually the same as with - the ``ChoiceType`` field, whichs requires an array of the preferred "values"). + This option expects an array of entity objects, unlike the ``choice`` + field that requires an array of keys. .. include:: /reference/forms/types/options/choice_type_translation_domain.rst.inc @@ -283,4 +270,6 @@ The actual default value of this option depends on other field options: .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc diff --git a/reference/forms/types/file.rst b/reference/forms/types/file.rst index 8ebacb16020..d946dfde4f7 100644 --- a/reference/forms/types/file.rst +++ b/reference/forms/types/file.rst @@ -1,10 +1,10 @@ .. index:: - single: Forms; Fields; FileType + single: Forms; Fields; file -FileType Field -============== +file Field Type +=============== -The ``FileType`` represents a file input in your form. +The ``file`` type represents a file input in your form. +-------------+---------------------------------------------------------------------+ | Rendered as | ``input`` ``file`` field | @@ -22,9 +22,10 @@ The ``FileType`` represents a file input in your form. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `read_only`_ | | | - `required`_ | +-------------+---------------------------------------------------------------------+ -| Parent type | :doc:`FormType ` | +| Parent type | :doc:`form ` | +-------------+---------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\FileType` | +-------------+---------------------------------------------------------------------+ @@ -34,10 +35,7 @@ Basic Usage Say you have this form definition:: - use Symfony\Component\Form\Extension\Core\Type\FileType; - // ... - - $builder->add('attachment', FileType::class); + $builder->add('attachment', 'file'); When the form is submitted, the ``attachment`` field will be an instance of :class:`Symfony\\Component\\HttpFoundation\\File\\UploadedFile`. It can @@ -115,7 +113,8 @@ value is empty. Inherited Options ----------------- -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/disabled.rst.inc @@ -131,6 +130,8 @@ These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc Form Variables diff --git a/reference/forms/types/form.rst b/reference/forms/types/form.rst index 448e110bd40..a2ed009fb9d 100644 --- a/reference/forms/types/form.rst +++ b/reference/forms/types/form.rst @@ -1,16 +1,17 @@ .. index:: - single: Forms; Fields; FormType + single: Forms; Fields; form -FormType Field -============== +form Field Type +=============== -The ``FormType`` predefines a couple of options that are then available -on all types for which ``FormType`` is the parent. +The ``form`` type predefines a couple of options that are then available +on all types for which ``form`` is the parent type. +-----------+--------------------------------------------------------------------+ | Options | - `action`_ | | | - `allow_extra_fields`_ | | | - `by_reference`_ | +| | - `cascade_validation`_ | | | - `compound`_ | | | - `constraints`_ | | | - `data`_ | @@ -25,9 +26,12 @@ on all types for which ``FormType`` is the parent. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `max_length`_ (deprecated as of 2.5) | | | - `method`_ | +| | - `pattern`_ (deprecated as of 2.5) | | | - `post_max_size_message`_ | | | - `property_path`_ | +| | - `read_only`_ | | | - `required`_ | | | - `trim`_ | +-----------+--------------------------------------------------------------------+ @@ -53,6 +57,9 @@ Field Options allow_extra_fields ~~~~~~~~~~~~~~~~~~ +.. versionadded:: 2.6 + The ``allow_extra_fields`` option was introduced in Symfony 2.6. + **type**: ``boolean`` **default**: ``false`` Usually, if you submit extra fields that aren't configured in your form, @@ -63,6 +70,8 @@ option on the form. .. include:: /reference/forms/types/options/by_reference.rst.inc +.. include:: /reference/forms/types/options/cascade_validation.rst.inc + .. include:: /reference/forms/types/options/compound.rst.inc .. include:: /reference/forms/types/options/constraints.rst.inc @@ -108,16 +117,26 @@ The actual default value of this option depends on other field options: .. include:: /reference/forms/types/options/mapped.rst.inc +.. _reference-form-option-max_length: + +.. include:: /reference/forms/types/options/max_length.rst.inc + .. _form-option-method: .. include:: /reference/forms/types/options/method.rst.inc +.. _reference-form-option-pattern: + +.. include:: /reference/forms/types/options/pattern.rst.inc + .. include:: /reference/forms/types/options/post_max_size_message.rst.inc .. _reference-form-option-property-path: .. include:: /reference/forms/types/options/property_path.rst.inc +.. include:: /reference/forms/types/options/read_only.rst.inc + .. _reference-form-option-required: .. include:: /reference/forms/types/options/required.rst.inc @@ -130,7 +149,7 @@ Inherited Options The following options are defined in the :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\BaseType` class. The ``BaseType`` class is the parent class for both the ``form`` type and -the :doc:`ButtonType `, but it is not part +the :doc:`button type `, but it is not part of the form type tree (i.e. it can not be used as a form type on its own). .. include:: /reference/forms/types/options/attr.rst.inc diff --git a/reference/forms/types/hidden.rst b/reference/forms/types/hidden.rst index e211c526f63..272eb853852 100644 --- a/reference/forms/types/hidden.rst +++ b/reference/forms/types/hidden.rst @@ -1,8 +1,8 @@ .. index:: single: Forms; Fields; hidden -HiddenType Field -================ +hidden Field Type +================= The hidden type represents a hidden input field. @@ -18,7 +18,7 @@ The hidden type represents a hidden input field. | | - `mapped`_ | | | - `property_path`_ | +-------------+----------------------------------------------------------------------+ -| Parent type | :doc:`FormType ` | +| Parent type | :doc:`form ` | +-------------+----------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\HiddenType` | +-------------+----------------------------------------------------------------------+ @@ -45,7 +45,8 @@ Hidden fields cannot have a required attribute. Inherited Options ----------------- -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/integer.rst b/reference/forms/types/integer.rst index 1b87d8f690e..70c2e1561fa 100644 --- a/reference/forms/types/integer.rst +++ b/reference/forms/types/integer.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; IntegerType + single: Forms; Fields; integer -IntegerType Field -================= +integer Field Type +================== Renders an input "number" field. Basically, this is a text field that's good at handling data that's in an integer form. The input ``number`` field @@ -34,9 +34,10 @@ integers. By default, all non-integer values (e.g. 6.78) will round down | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `read_only`_ | | | - `required`_ | +-------------+-----------------------------------------------------------------------+ -| Parent type | :doc:`FormType ` | +| Parent type | :doc:`form ` | +-------------+-----------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\IntegerType` | +-------------+-----------------------------------------------------------------------+ @@ -85,7 +86,8 @@ Overridden Options Inherited Options ----------------- -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc @@ -115,4 +117,6 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc diff --git a/reference/forms/types/language.rst b/reference/forms/types/language.rst index cdd5e461ed4..6eb57950620 100644 --- a/reference/forms/types/language.rst +++ b/reference/forms/types/language.rst @@ -1,10 +1,10 @@ .. index:: - single: Forms; Fields; LanguageType + single: Forms; Fields; language -LanguageType Field -================== +language Field Type +=================== -The ``LanguageType`` is a subset of the ``ChoiceType`` that allows the +The ``language`` type is a subset of the ``ChoiceType`` that allows the user to select from a large list of languages. As an added bonus, the language names are displayed in the language of the user. @@ -15,9 +15,10 @@ in the `International Components for Unicode`_ (e.g. ``fr`` or ``zh_Hant``). The locale of your user is guessed using :phpmethod:`Locale::getDefault` -Unlike the ``ChoiceType``, you don't need to specify a ``choices`` option as the -field type automatically uses a large list of languages. You *can* specify the option -manually, but then you should just use the ``ChoiceType`` directly. +Unlike the ``choice`` type, you don't need to specify a ``choices`` or +``choice_list`` option as the field type automatically uses a large list +of languages. You *can* specify either of these options manually, but then +you should just use the ``choice`` type directly. +-------------+------------------------------------------------------------------------+ | Rendered as | can be various tags (see :ref:`forms-reference-choice-tags`) | @@ -25,7 +26,7 @@ manually, but then you should just use the ``ChoiceType`` directly. | Overridden | - `choices`_ | | options | | +-------------+------------------------------------------------------------------------+ -| Inherited | from the :doc:`ChoiceType ` | +| Inherited | from the :doc:`choice ` type | | options | | | | - `error_bubbling`_ | | | - `error_mapping`_ | @@ -34,7 +35,7 @@ manually, but then you should just use the ``ChoiceType`` directly. | | - `placeholder`_ | | | - `preferred_choices`_ | | | | -| | from the :doc:`FormType ` | +| | from the :doc:`form ` type | | | | | | - `data`_ | | | - `disabled`_ | @@ -43,9 +44,10 @@ manually, but then you should just use the ``ChoiceType`` directly. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `read_only`_ | | | - `required`_ | +-------------+------------------------------------------------------------------------+ -| Parent type | :doc:`ChoiceType ` | +| Parent type | :doc:`choice ` | +-------------+------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\LanguageType` | +-------------+------------------------------------------------------------------------+ @@ -64,7 +66,8 @@ The default locale is used to translate the languages names. Inherited Options ----------------- -These options inherit from the :doc:`ChoiceType `: +These options inherit from the :doc:`choice ` +type: .. include:: /reference/forms/types/options/error_bubbling.rst.inc @@ -78,7 +81,8 @@ These options inherit from the :doc:`ChoiceType ` .. include:: /reference/forms/types/options/preferred_choices.rst.inc -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc @@ -104,6 +108,8 @@ The actual default value of this option depends on other field options: .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc .. _`International Components for Unicode`: http://site.icu-project.org diff --git a/reference/forms/types/locale.rst b/reference/forms/types/locale.rst index 5a54d179ceb..a629c5ac4fe 100644 --- a/reference/forms/types/locale.rst +++ b/reference/forms/types/locale.rst @@ -1,10 +1,10 @@ .. index:: - single: Forms; Fields; LocaleType + single: Forms; Fields; locale -LocaleType Field -================ +locale Field Type +================= -The ``LocaleType`` is a subset of the ``ChoiceType`` that allows the user +The ``locale`` type is a subset of the ``ChoiceType`` that allows the user to select from a large list of locales (language+country). As an added bonus, the locale names are displayed in the language of the user. @@ -17,9 +17,10 @@ for French/France). The locale of your user is guessed using :phpmethod:`Locale::getDefault` -Unlike the ``ChoiceType``, you don't need to specify a ``choices`` option as the -field type automatically uses a large list of locales. You *can* specify these options -manually, but then you should just use the ``ChoiceType`` directly. +Unlike the ``choice`` type, you don't need to specify a ``choices`` or +``choice_list`` option as the field type automatically uses a large list +of locales. You *can* specify either of these options manually, but then +you should just use the ``choice`` type directly. +-------------+------------------------------------------------------------------------+ | Rendered as | can be various tags (see :ref:`forms-reference-choice-tags`) | @@ -27,7 +28,7 @@ manually, but then you should just use the ``ChoiceType`` directly. | Overridden | - `choices`_ | | options | | +-------------+------------------------------------------------------------------------+ -| Inherited | from the :doc:`ChoiceType ` | +| Inherited | from the :doc:`choice ` type | | options | | | | - `error_bubbling`_ | | | - `error_mapping`_ | @@ -36,7 +37,7 @@ manually, but then you should just use the ``ChoiceType`` directly. | | - `placeholder`_ | | | - `preferred_choices`_ | | | | -| | from the :doc:`FormType ` | +| | from the :doc:`form ` type | | | | | | - `data`_ | | | - `disabled`_ | @@ -45,9 +46,10 @@ manually, but then you should just use the ``ChoiceType`` directly. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `read_only`_ | | | - `required`_ | +-------------+------------------------------------------------------------------------+ -| Parent type | :doc:`ChoiceType ` | +| Parent type | :doc:`choice ` | +-------------+------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\LocaleType` | +-------------+------------------------------------------------------------------------+ @@ -66,7 +68,8 @@ specify the language. Inherited Options ----------------- -These options inherit from the :doc:`ChoiceType `: +These options inherit from the :doc:`choice ` +type: .. include:: /reference/forms/types/options/error_bubbling.rst.inc @@ -80,7 +83,8 @@ These options inherit from the :doc:`ChoiceType ` .. include:: /reference/forms/types/options/preferred_choices.rst.inc -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc @@ -106,6 +110,8 @@ The actual default value of this option depends on other field options: .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc .. _`ISO 639-1`: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes diff --git a/reference/forms/types/map.rst.inc b/reference/forms/types/map.rst.inc index 4351908de8a..b4362b3f318 100644 --- a/reference/forms/types/map.rst.inc +++ b/reference/forms/types/map.rst.inc @@ -1,63 +1,62 @@ Text Fields ~~~~~~~~~~~ -* :doc:`TextType ` -* :doc:`TextareaType ` -* :doc:`EmailType ` -* :doc:`IntegerType ` -* :doc:`MoneyType ` -* :doc:`NumberType ` -* :doc:`PasswordType ` -* :doc:`PercentType ` -* :doc:`SearchType ` -* :doc:`UrlType ` -* :doc:`RangeType ` +* :doc:`text ` +* :doc:`textarea ` +* :doc:`email ` +* :doc:`integer ` +* :doc:`money ` +* :doc:`number ` +* :doc:`password ` +* :doc:`percent ` +* :doc:`search ` +* :doc:`url ` Choice Fields ~~~~~~~~~~~~~ -* :doc:`ChoiceType ` -* :doc:`EntityType ` -* :doc:`CountryType ` -* :doc:`LanguageType ` -* :doc:`LocaleType ` -* :doc:`TimezoneType ` -* :doc:`CurrencyType ` +* :doc:`choice ` +* :doc:`entity ` +* :doc:`country ` +* :doc:`language ` +* :doc:`locale ` +* :doc:`timezone ` +* :doc:`currency ` Date and Time Fields ~~~~~~~~~~~~~~~~~~~~ -* :doc:`DateType ` -* :doc:`DateTimeType ` -* :doc:`TimeType ` -* :doc:`BirthdayType ` +* :doc:`date ` +* :doc:`datetime ` +* :doc:`time ` +* :doc:`birthday ` Other Fields ~~~~~~~~~~~~ -* :doc:`CheckboxType ` -* :doc:`FileType ` -* :doc:`RadioType ` +* :doc:`checkbox ` +* :doc:`file ` +* :doc:`radio ` Field Groups ~~~~~~~~~~~~ -* :doc:`CollectionType ` -* :doc:`RepeatedType ` +* :doc:`collection ` +* :doc:`repeated ` Hidden Fields ~~~~~~~~~~~~~ -* :doc:`HiddenType ` +* :doc:`hidden ` Buttons ~~~~~~~ -* :doc:`ButtonType ` -* :doc:`ResetType ` -* :doc:`SubmitType ` +* :doc:`button` +* :doc:`reset` +* :doc:`submit` Base Fields ~~~~~~~~~~~ -* :doc:`FormType ` +* :doc:`form ` diff --git a/reference/forms/types/money.rst b/reference/forms/types/money.rst index 3f6af5941ef..023dcd165aa 100644 --- a/reference/forms/types/money.rst +++ b/reference/forms/types/money.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; MoneyType + single: Forms; Fields; money -MoneyType Field -=============== +money Field Type +================ Renders an input text field and specializes in handling submitted "money" data. @@ -33,9 +33,10 @@ how the input and output of the data is handled. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `read_only`_ | | | - `required`_ | +-------------+---------------------------------------------------------------------+ -| Parent type | :doc:`FormType ` | +| Parent type | :doc:`form ` | +-------------+---------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\MoneyType` | +-------------+---------------------------------------------------------------------+ @@ -65,10 +66,7 @@ If, for some reason, you need to divide your starting value by a number before rendering it to the user, you can use the ``divisor`` option. For example:: - use Symfony\Component\Form\Extension\Core\Type\MoneyType; - // ... - - $builder->add('price', MoneyType::class, array( + $builder->add('price', 'money', array( 'divisor' => 100, )); @@ -82,6 +80,10 @@ be set back on your object. scale ~~~~~ +.. versionadded:: 2.7 + The ``scale`` option was introduced in Symfony 2.7. Prior to Symfony 2.7, + it was known as ``precision``. + **type**: ``integer`` **default**: ``2`` If, for some reason, you need some scale other than 2 decimal places, @@ -97,7 +99,8 @@ Overridden Options Inherited Options ----------------- -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc @@ -127,6 +130,8 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc Form Variables diff --git a/reference/forms/types/number.rst b/reference/forms/types/number.rst index de5ae737aba..937a6ff6fd4 100644 --- a/reference/forms/types/number.rst +++ b/reference/forms/types/number.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; NumberType + single: Forms; Fields; number -NumberType Field -================ +number Field Type +================= Renders an input text field and specializes in handling number input. This type offers different options for the scale, rounding and grouping @@ -29,9 +29,10 @@ that you want to use for your number. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `read_only`_ | | | - `required`_ | +-------------+----------------------------------------------------------------------+ -| Parent type | :doc:`FormType ` | +| Parent type | :doc:`form ` | +-------------+----------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\NumberType` | +-------------+----------------------------------------------------------------------+ @@ -80,7 +81,8 @@ Overridden Options Inherited Options ----------------- -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc @@ -110,4 +112,6 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc diff --git a/reference/forms/types/options/action.rst.inc b/reference/forms/types/options/action.rst.inc index a878355cc38..dcc557a717f 100644 --- a/reference/forms/types/options/action.rst.inc +++ b/reference/forms/types/options/action.rst.inc @@ -1,6 +1,9 @@ action ~~~~~~ +.. versionadded:: 2.3 + The ``action`` option was introduced in Symfony 2.3. + **type**: ``string`` **default**: empty string This option specifies where to send the form's data on submission (usually diff --git a/reference/forms/types/options/attr.rst.inc b/reference/forms/types/options/attr.rst.inc index 46238ac023b..bbee5888a4a 100644 --- a/reference/forms/types/options/attr.rst.inc +++ b/reference/forms/types/options/attr.rst.inc @@ -7,6 +7,6 @@ If you want to add extra attributes to an HTML field representation you can use the ``attr`` option. It's an associative array with HTML attributes as keys. This can be useful when you need to set a custom class for some widget:: - $builder->add('body', TextareaType::class, array( + $builder->add('body', 'textarea', array( 'attr' => array('class' => 'tinymce'), )); diff --git a/reference/forms/types/options/button_attr.rst.inc b/reference/forms/types/options/button_attr.rst.inc index 93f70017d7e..20265677042 100644 --- a/reference/forms/types/options/button_attr.rst.inc +++ b/reference/forms/types/options/button_attr.rst.inc @@ -7,9 +7,6 @@ If you want to add extra attributes to the HTML representation of the button, you can use ``attr`` option. It's an associative array with HTML attribute as a key. This can be useful when you need to set a custom class for the button:: - use Symfony\Component\Form\Extension\Core\Type\ButtonType; - // ... - - $builder->add('save', ButtonType::class, array( + $builder->add('save', 'button', array( 'attr' => array('class' => 'save'), )); diff --git a/reference/forms/types/options/by_reference.rst.inc b/reference/forms/types/options/by_reference.rst.inc index e2552817470..a2e80e1d544 100644 --- a/reference/forms/types/options/by_reference.rst.inc +++ b/reference/forms/types/options/by_reference.rst.inc @@ -10,18 +10,13 @@ called in all cases. To explain this further, here's a simple example:: - use Symfony\Component\Form\Extension\Core\Type\TextType; - use Symfony\Component\Form\Extension\Core\Type\EmailType; - use Symfony\Component\Form\Extension\Core\Type\FormType; - // ... - $builder = $this->createFormBuilder($article); $builder - ->add('title', TextType::class) + ->add('title', 'text') ->add( - $builder->create('author', FormType::class, array('by_reference' => ?)) - ->add('name', TextType::class) - ->add('email', EmailType::class) + $builder->create('author', 'form', array('by_reference' => ?)) + ->add('name', 'text') + ->add('email', 'email') ) If ``by_reference`` is true, the following takes place behind the scenes @@ -44,8 +39,8 @@ If you set ``by_reference`` to false, submitting looks like this:: So, all that ``by_reference=false`` really does is force the framework to call the setter on the parent object. -Similarly, if you're using the :doc:`CollectionType ` -field where your underlying collection data is an object (like with +Similarly, if you're using the :doc:`collection` +form type where your underlying collection data is an object (like with Doctrine's ``ArrayCollection``), then ``by_reference`` must be set to ``false`` if you need the adder and remover (e.g. ``addAuthor()`` and ``removeAuthor()``) to be called. diff --git a/reference/forms/types/options/cascade_validation.rst.inc b/reference/forms/types/options/cascade_validation.rst.inc new file mode 100644 index 00000000000..de75044ba73 --- /dev/null +++ b/reference/forms/types/options/cascade_validation.rst.inc @@ -0,0 +1,20 @@ +cascade_validation +~~~~~~~~~~~~~~~~~~ + +**type**: ``boolean`` **default**: ``false`` + +Set this option to ``true`` to force validation on embedded form types. +For example, if you have a ``ProductType`` with an embedded ``CategoryType``, +setting ``cascade_validation`` to ``true`` on ``ProductType`` will cause +the data from ``CategoryType`` to also be validated. + +.. tip:: + + Instead of using this option, it is recommended that you use the ``Valid`` + constraint in your model to force validation on a child object stored + on a property. This cascades only the validation but not the use of + the ``validation_groups`` option on child forms. You can read more + about this in the section about + :ref:`Embedding a Single Object `. + +.. include:: /reference/forms/types/options/_error_bubbling_hint.rst.inc diff --git a/reference/forms/types/options/choice_attr.rst.inc b/reference/forms/types/options/choice_attr.rst.inc index 4dcfe601881..4b4d8f187ac 100644 --- a/reference/forms/types/options/choice_attr.rst.inc +++ b/reference/forms/types/options/choice_attr.rst.inc @@ -1,6 +1,9 @@ choice_attr ~~~~~~~~~~~ +.. versionadded:: 2.7 + The ``choice_attr`` option was introduced in Symfony 2.7. + **type**: ``array``, ``callable`` or ``string`` **default**: ``array()`` Use this to add additional HTML attributes to each choice. This can be an array @@ -9,10 +12,7 @@ of attributes (if they are the same for each choice), a callable or a property p If an array, the keys of the ``choices`` array must be used as keys:: - use Symfony\Component\Form\Extension\Core\Type\ChoiceType; - // ... - - $builder->add('attending', ChoiceType::class, array( + $builder->add('attending', 'choice', array( 'choices' => array( 'Yes' => true, 'No' => false, diff --git a/reference/forms/types/options/choice_label.rst.inc b/reference/forms/types/options/choice_label.rst.inc index deb961d2eea..b92c47b6874 100644 --- a/reference/forms/types/options/choice_label.rst.inc +++ b/reference/forms/types/options/choice_label.rst.inc @@ -1,16 +1,16 @@ choice_label ~~~~~~~~~~~~ +.. versionadded:: 2.7 + The ``choice_label`` option was introduced in Symfony 2.7. + **type**: ``string``, ``callable`` or ``false`` **default**: ``null`` Normally, the array key of each item in the ``choices`` option is used as the text that's shown to the user. The ``choice_label`` option allows you to take more control:: - use Symfony\Component\Form\Extension\Core\Type\ChoiceType; - // ... - - $builder->add('attending', ChoiceType::class, array( + $builder->add('attending', 'choice', array( 'choices' => array( 'yes' => true, 'no' => false, @@ -39,10 +39,7 @@ If your choice values are objects, then ``choice_label`` can also be a :ref:`property path `. Imagine you have some ``Status`` class with a ``getDisplayName()`` method:: - use Symfony\Component\Form\Extension\Core\Type\ChoiceType; - // ... - - $builder->add('attending', ChoiceType::class, array( + $builder->add('attending', 'choice', array( 'choices' => array( new Status(Status::YES), new Status(Status::NO), diff --git a/reference/forms/types/options/choice_name.rst.inc b/reference/forms/types/options/choice_name.rst.inc index 341e0a686fb..45a228489a3 100644 --- a/reference/forms/types/options/choice_name.rst.inc +++ b/reference/forms/types/options/choice_name.rst.inc @@ -1,6 +1,9 @@ choice_name ~~~~~~~~~~~ +.. versionadded:: 2.7 + The ``choice_name`` option was introduced in Symfony 2.7. + **type**: ``callable`` or ``string`` **default**: ``null`` Controls the internal field name of the choice. You normally don't care about this, diff --git a/reference/forms/types/options/choice_translation_domain.rst.inc b/reference/forms/types/options/choice_translation_domain.rst.inc index ebd6329eb04..1d42f222e2e 100644 --- a/reference/forms/types/options/choice_translation_domain.rst.inc +++ b/reference/forms/types/options/choice_translation_domain.rst.inc @@ -1,6 +1,9 @@ choice_translation_domain ~~~~~~~~~~~~~~~~~~~~~~~~~ +.. versionadded:: 2.7 + The ``choice_translation_domain`` option was introduced in Symfony 2.7. + **type**: ``string``, ``boolean`` or ``null`` This option determines if the choice values should be translated and in which diff --git a/reference/forms/types/options/choice_value.rst.inc b/reference/forms/types/options/choice_value.rst.inc index d2616fbfd27..fda5a4e7542 100644 --- a/reference/forms/types/options/choice_value.rst.inc +++ b/reference/forms/types/options/choice_value.rst.inc @@ -1,6 +1,9 @@ choice_value ~~~~~~~~~~~~ +.. versionadded:: 2.7 + The ``choice_value`` option was introduced in Symfony 2.7. + **type**: ``callable`` or ``string`` **default**: ``null`` Returns the string "value" for each choice. This is used in the ``value`` attribute diff --git a/reference/forms/types/options/data.rst.inc b/reference/forms/types/options/data.rst.inc index 63ca91cbf5c..c9bf76424c5 100644 --- a/reference/forms/types/options/data.rst.inc +++ b/reference/forms/types/options/data.rst.inc @@ -8,10 +8,7 @@ corresponding property of the form's domain object (if an object is bound to the form). If you want to override the initial value for the form or just an individual field, you can set it in the data option:: - use Symfony\Component\Form\Extension\Core\Type\HiddenType; - // ... - - $builder->add('token', HiddenType::class, array( + $builder->add('token', 'hidden', array( 'data' => 'abcdef', )); diff --git a/reference/forms/types/options/data_class.rst.inc b/reference/forms/types/options/data_class.rst.inc index 0d81c0659e4..991e68635ea 100644 --- a/reference/forms/types/options/data_class.rst.inc +++ b/reference/forms/types/options/data_class.rst.inc @@ -8,9 +8,6 @@ form, so you can use it for any form field type which requires an object. .. code-block:: php - use AppBundle\Form\MediaType; - // ... - - $builder->add('media', MediaType::class, array( + $builder->add('media', 'sonata_media_type', array( 'data_class' => 'Acme\DemoBundle\Entity\Media', )); diff --git a/reference/forms/types/options/date_format.rst.inc b/reference/forms/types/options/date_format.rst.inc index 283a6c13d87..62152ac48ac 100644 --- a/reference/forms/types/options/date_format.rst.inc +++ b/reference/forms/types/options/date_format.rst.inc @@ -13,10 +13,7 @@ override it by passing the format as a string. For more information on valid formats, see `Date/Time Format Syntax`_:: - use Symfony\Component\Form\Extension\Core\Type\DateType; - // ... - - $builder->add('date_created', DateType::class, array( + $builder->add('date_created', 'date', array( 'widget' => 'single_text', // this is actually the default format for single_text 'format' => 'yyyy-MM-dd', diff --git a/reference/forms/types/options/empty_data.rst.inc b/reference/forms/types/options/empty_data.rst.inc index 02eb8d12d4c..e1baeb1e7ce 100644 --- a/reference/forms/types/options/empty_data.rst.inc +++ b/reference/forms/types/options/empty_data.rst.inc @@ -16,10 +16,7 @@ But you can customize this to your needs. For example, if you want the ``gender`` choice field to be explicitly set to ``null`` when no value is selected, you can do it like this:: - use Symfony\Component\Form\Extension\Core\Type\ChoiceType; - // ... - - $builder->add('gender', ChoiceType::class, array( + $builder->add('gender', 'choice', array( 'choices' => array( 'm' => 'Male', 'f' => 'Female' diff --git a/reference/forms/types/options/group_by.rst.inc b/reference/forms/types/options/group_by.rst.inc index f5047145057..9147a0a09bf 100644 --- a/reference/forms/types/options/group_by.rst.inc +++ b/reference/forms/types/options/group_by.rst.inc @@ -1,6 +1,9 @@ group_by ~~~~~~~~ +.. versionadded:: 2.7 + The ``group_by`` option was introduced in Symfony 2.7. + **type**: ``array``, ``callable`` or ``string`` **default**: ``null`` You can easily "group" options in a select simply by passing a multi-dimensional @@ -12,10 +15,7 @@ a bit more flexibility. Take the following example:: - use Symfony\Component\Form\Extension\Core\Type\ChoiceType; - // ... - - $builder->add('publishAt', ChoiceType::class, array( + $builder->add('publishAt', 'choice', array( 'choices' => array( 'now' => new \DateTime('now'), 'tomorrow' => new \DateTime('+1 day'), diff --git a/reference/forms/types/options/html5.rst.inc b/reference/forms/types/options/html5.rst.inc index 30ba9762c4e..1022412f3b3 100644 --- a/reference/forms/types/options/html5.rst.inc +++ b/reference/forms/types/options/html5.rst.inc @@ -1,6 +1,9 @@ html5 ~~~~~ +.. versionadded:: 2.6 + The ``html5`` option was introduced in Symfony 2.6. + **type**: ``boolean`` **default**: ``true`` If this is set to ``true`` (the default), it'll use the HTML5 type (date, time diff --git a/reference/forms/types/options/inherit_data.rst.inc b/reference/forms/types/options/inherit_data.rst.inc index 716952bbecd..c65ff78c7e3 100644 --- a/reference/forms/types/options/inherit_data.rst.inc +++ b/reference/forms/types/options/inherit_data.rst.inc @@ -1,6 +1,10 @@ inherit_data ~~~~~~~~~~~~ +.. versionadded:: 2.3 + The ``inherit_data`` option was introduced in Symfony 2.3. Before, it + was known as ``virtual``. + **type**: ``boolean`` **default**: ``false`` This option determines if the form will inherit data from its parent form. diff --git a/reference/forms/types/options/invalid_message.rst.inc b/reference/forms/types/options/invalid_message.rst.inc index 07e0de74267..d96705bf7d2 100644 --- a/reference/forms/types/options/invalid_message.rst.inc +++ b/reference/forms/types/options/invalid_message.rst.inc @@ -7,7 +7,7 @@ This is the validation error message that's used if the data entered into this field doesn't make sense (i.e. fails validation). This might happen, for example, if the user enters a nonsense string into -a :doc:`TimeType ` field that cannot be converted +a :doc:`time` field that cannot be converted into a real time or if the user enters a string (e.g. ``apple``) into a number field. diff --git a/reference/forms/types/options/invalid_message_parameters.rst.inc b/reference/forms/types/options/invalid_message_parameters.rst.inc index b877f04bb72..72a327351a4 100644 --- a/reference/forms/types/options/invalid_message_parameters.rst.inc +++ b/reference/forms/types/options/invalid_message_parameters.rst.inc @@ -7,7 +7,7 @@ When setting the ``invalid_message`` option, you may need to include some variables in the string. This can be done by adding placeholders to that option and including the variables in this option:: - $builder->add('some_field', SomeFormType::class, array( + $builder->add('some_field', 'some_type', array( // ... 'invalid_message' => 'You entered an invalid value, it should include %num% letters', 'invalid_message_parameters' => array('%num%' => 6), diff --git a/reference/forms/types/options/max_length.rst.inc b/reference/forms/types/options/max_length.rst.inc new file mode 100644 index 00000000000..c108451bed0 --- /dev/null +++ b/reference/forms/types/options/max_length.rst.inc @@ -0,0 +1,17 @@ +max_length +~~~~~~~~~~ + +.. caution:: + + The ``max_length`` option was deprecated in Symfony 2.5 and will be removed + in Symfony 3.0. Use the ``attr`` option instead by setting it to an array + with a ``maxlength`` key. + +**type**: ``integer`` **default**: ``null`` + +If this option is not null, an attribute ``maxlength`` is added, which +is used by some browsers to limit the amount of text in a field. + +This is just a browser validation, so data must still be validated +server-side. + diff --git a/reference/forms/types/options/method.rst.inc b/reference/forms/types/options/method.rst.inc index b333fef8d6c..55cf3118775 100644 --- a/reference/forms/types/options/method.rst.inc +++ b/reference/forms/types/options/method.rst.inc @@ -1,6 +1,9 @@ method ~~~~~~ +.. versionadded:: 2.3 + The ``method`` option was introduced in Symfony 2.3. + **type**: ``string`` **default**: ``POST`` This option specifies the HTTP method used to submit the form's data. Its diff --git a/reference/forms/types/options/pattern.rst.inc b/reference/forms/types/options/pattern.rst.inc new file mode 100644 index 00000000000..0f8f0f237e8 --- /dev/null +++ b/reference/forms/types/options/pattern.rst.inc @@ -0,0 +1,24 @@ +pattern +~~~~~~~ + +.. caution:: + + The ``pattern`` option was deprecated in Symfony 2.5 and will be removed + in Symfony 3.0. Use the ``attr`` option instead by setting it to an array + with a ``pattern`` key. + +**type**: ``string`` **default**: ``null`` + +This adds an HTML5 ``pattern`` attribute to restrict the field input by +a given regular expression. + +.. caution:: + + The ``pattern`` attribute provides client-side validation for convenience + purposes only and must not be used as a replacement for reliable + server-side validation. + +.. note:: + + When using validation constraints, this option is set automatically + for some constraints to match the server-side validation. diff --git a/reference/forms/types/options/placeholder.rst.inc b/reference/forms/types/options/placeholder.rst.inc index a486db35639..ca065be6bbe 100644 --- a/reference/forms/types/options/placeholder.rst.inc +++ b/reference/forms/types/options/placeholder.rst.inc @@ -1,6 +1,14 @@ placeholder ~~~~~~~~~~~ +.. versionadded:: 2.6 + The ``placeholder`` option was introduced in Symfony 2.6 and replaces + ``empty_value``, which is available prior to 2.6. + +.. versionadded:: 2.3 + Since Symfony 2.3, empty values are also supported if the ``expanded`` + option is set to true. + **type**: ``string`` or ``boolean`` This option determines whether or not a special "empty" option (e.g. "Choose @@ -9,19 +17,13 @@ applies if the ``multiple`` option is set to false. * Add an empty value with "Choose an option" as the text:: - use Symfony\Component\Form\Extension\Core\Type\ChoiceType; - // ... - - $builder->add('states', ChoiceType::class, array( + $builder->add('states', 'choice', array( 'placeholder' => 'Choose an option', )); * Guarantee that no "empty" value option is displayed:: - use Symfony\Component\Form\Extension\Core\Type\ChoiceType; - // ... - - $builder->add('states', ChoiceType::class, array( + $builder->add('states', 'choice', array( 'placeholder' => false, )); @@ -29,10 +31,7 @@ If you leave the ``placeholder`` option unset, then a blank (with no text) option will automatically be added if and only if the ``required`` option is false:: - use Symfony\Component\Form\Extension\Core\Type\ChoiceType; - // ... - // a blank (with no text) option will be added - $builder->add('states', ChoiceType::class, array( + $builder->add('states', 'choice', array( 'required' => false, )); diff --git a/reference/forms/types/options/preferred_choices.rst.inc b/reference/forms/types/options/preferred_choices.rst.inc index 5b968d945a6..2d841a21b2a 100644 --- a/reference/forms/types/options/preferred_choices.rst.inc +++ b/reference/forms/types/options/preferred_choices.rst.inc @@ -7,10 +7,7 @@ This option allows you to move certain choices to the top of your list with a vi separator between them and the rest of the options. If you have a form of languages, you can list the most popular on top, like Bork Bork and Pirate:: - use Symfony\Component\Form\Extension\Core\Type\ChoiceType; - // ... - - $builder->add('language', ChoiceType::class, array( + $builder->add('language', 'choice', array( 'choices' => array( 'English' => 'en', 'Spanish' => 'es', @@ -21,13 +18,13 @@ you can list the most popular on top, like Bork Bork and Pirate:: 'preferred_choices' => array('muppets', 'arr') )); +.. versionadded:: 2.7 + Setting a callable or propery path was introduced in Symfony 2.7. + This options can also be a callback function to give you more flexibility. This might be especially useful if your values are objects:: - use Symfony\Component\Form\Extension\Core\Type\ChoiceType; - // ... - - $builder->add('publishAt', ChoiceType::class, array( + $builder->add('publishAt', 'choice', array( 'choices' => array( 'now' => new \DateTime('now'), 'tomorrow' => new \DateTime('+1 day'), diff --git a/reference/forms/types/options/read_only.rst.inc b/reference/forms/types/options/read_only.rst.inc new file mode 100644 index 00000000000..7988f0378c8 --- /dev/null +++ b/reference/forms/types/options/read_only.rst.inc @@ -0,0 +1,7 @@ +read_only +~~~~~~~~~ + +**type**: ``boolean`` **default**: ``false`` + +If this option is true, the field will be rendered with the ``readonly`` +attribute so that the field is not editable. diff --git a/reference/forms/types/options/scale.rst.inc b/reference/forms/types/options/scale.rst.inc index 49d038bc686..82df7d60d3c 100644 --- a/reference/forms/types/options/scale.rst.inc +++ b/reference/forms/types/options/scale.rst.inc @@ -1,6 +1,10 @@ scale ~~~~~ +.. versionadded:: 2.7 + The ``scale`` option was introduced in Symfony 2.7. Prior to Symfony 2.7, + it was known as ``precision``. + **type**: ``integer`` **default**: Locale-specific (usually around ``3``) This specifies how many decimals will be allowed until the field rounds diff --git a/reference/forms/types/password.rst b/reference/forms/types/password.rst index b2491a31015..4c2b4eb3bff 100644 --- a/reference/forms/types/password.rst +++ b/reference/forms/types/password.rst @@ -1,10 +1,10 @@ .. index:: - single: Forms; Fields; PasswordType + single: Forms; Fields; password -PasswordType Field -================== +password Field Type +=================== -The ``PasswordType`` field renders an input password text box. +The ``password`` field renders an input password text box. +-------------+------------------------------------------------------------------------+ | Rendered as | ``input`` ``password`` field | @@ -22,9 +22,11 @@ The ``PasswordType`` field renders an input password text box. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `max_length`_ (deprecated as of 2.5) | +| | - `read_only`_ | | | - `required`_ | +-------------+------------------------------------------------------------------------+ -| Parent type | :doc:`TextType ` | +| Parent type | :doc:`text ` | +-------------+------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\PasswordType` | +-------------+------------------------------------------------------------------------+ @@ -53,7 +55,7 @@ trim **type**: ``boolean`` **default**: ``false`` -Unlike the rest of form types, the ``PasswordType`` doesn't apply the +Unlike the rest of form types, the ``password`` type doesn't apply the :phpfunction:`trim` function to the value submitted by the user. This ensures that the password is merged back onto the underlying object exactly as it was typed by the user. @@ -61,7 +63,8 @@ by the user. Inherited Options ----------------- -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/disabled.rst.inc @@ -85,4 +88,8 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/max_length.rst.inc + +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc diff --git a/reference/forms/types/percent.rst b/reference/forms/types/percent.rst index a2156d63d13..a96cb1258eb 100644 --- a/reference/forms/types/percent.rst +++ b/reference/forms/types/percent.rst @@ -1,11 +1,11 @@ .. index:: - single: Forms; Fields; PercentType + single: Forms; Fields; percent -PercentType Field -================= +percent Field Type +================== -The ``PercentType`` renders an input text field and specializes in handling +The ``percent`` type renders an input text field and specializes in handling percentage data. If your percentage data is stored as a decimal (e.g. ``.95``), you can use this field out-of-the-box. If you store your data as a number (e.g. ``95``), you should set the ``type`` option to ``integer``. @@ -32,9 +32,10 @@ This field adds a percentage sign "``%``" after the input box. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `read_only`_ | | | - `required`_ | +-------------+-----------------------------------------------------------------------+ -| Parent type | :doc:`FormType ` | +| Parent type | :doc:`form ` | +-------------+-----------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\PercentType` | +-------------+-----------------------------------------------------------------------+ @@ -45,6 +46,10 @@ Field Options scale ~~~~~ +.. versionadded:: 2.7 + The ``scale`` option was introduced in Symfony 2.7. Prior to Symfony 2.7, + it was known as ``precision``. + **type**: ``integer`` **default**: ``0`` By default, the input numbers are rounded. To allow for more decimal places, @@ -78,7 +83,8 @@ Overridden Options Inherited Options ----------------- -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc @@ -108,4 +114,6 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc diff --git a/reference/forms/types/radio.rst b/reference/forms/types/radio.rst index 87cbbdfda5a..2f6f3926f22 100644 --- a/reference/forms/types/radio.rst +++ b/reference/forms/types/radio.rst @@ -1,26 +1,26 @@ .. index:: - single: Forms; Fields; RadioType + single: Forms; Fields; radio -RadioType Field -=============== +radio Field Type +================ Creates a single radio button. If the radio button is selected, the field will be set to the specified value. Radio buttons cannot be unchecked - the value only changes when another radio button with the same name gets checked. -The ``RadioType`` isn't usually used directly. More commonly it's used -internally by other types such as :doc:`ChoiceType `. -If you want to have a boolean field, use :doc:`CheckboxType `. +The ``radio`` type isn't usually used directly. More commonly it's used +internally by other types such as :doc:`choice `. +If you want to have a boolean field, use :doc:`checkbox `. +-------------+---------------------------------------------------------------------+ | Rendered as | ``input`` ``radio`` field | +-------------+---------------------------------------------------------------------+ -| Inherited | from the :doc:`CheckboxType `: | +| Inherited | from the :doc:`checkbox ` type: | | options | | | | - `value`_ | | | | -| | from the :doc:`FormType `: | +| | from the :doc:`form ` type: | | | | | | - `data`_ | | | - `disabled`_ | @@ -31,9 +31,10 @@ If you want to have a boolean field, use :doc:`CheckboxType ` | +| Parent type | :doc:`checkbox ` | +-------------+---------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\RadioType` | +-------------+---------------------------------------------------------------------+ @@ -41,11 +42,13 @@ If you want to have a boolean field, use :doc:`CheckboxType `: +These options inherit from the :doc:`checkbox ` +type: .. include:: /reference/forms/types/options/value.rst.inc -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc @@ -65,6 +68,8 @@ These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc Form Variables diff --git a/reference/forms/types/range.rst b/reference/forms/types/range.rst deleted file mode 100644 index a59082adb78..00000000000 --- a/reference/forms/types/range.rst +++ /dev/null @@ -1,76 +0,0 @@ -.. index:: - single: Forms; Fields; RangeType - -RangeType Field -=============== - -The ``RangeType`` field is a slider that is rendered using the HTML5 -```` tag. - -+-------------+---------------------------------------------------------------------+ -| Rendered as | ``input`` ``range`` field (slider in HTML5 supported browser) | -+-------------+---------------------------------------------------------------------+ -| Inherited | - `attr`_ | -| options | - `data`_ | -| | - `disabled`_ | -| | - `empty_data`_ | -| | - `error_bubbling`_ | -| | - `error_mapping`_ | -| | - `label`_ | -| | - `label_attr`_ | -| | - `mapped`_ | -| | - `required`_ | -| | - `trim`_ | -+-------------+---------------------------------------------------------------------+ -| Parent type | :doc:`TextType ` | -+-------------+---------------------------------------------------------------------+ -| Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\RangeType` | -+-------------+---------------------------------------------------------------------+ - -Basic Usage ------------ - -.. code-block:: php - - use Symfony\Component\Form\Extension\Core\Type\RangeType; - // ... - - $builder->add('name', RangeType::class, array( - 'attr' => array( - 'min' => 5, - 'max' => 50 - ) - )); - -Inherited Options ------------------ - -These options inherit from the :doc:`FormType `: - -.. include:: /reference/forms/types/options/attr.rst.inc - -.. include:: /reference/forms/types/options/data.rst.inc - -.. include:: /reference/forms/types/options/disabled.rst.inc - -.. include:: /reference/forms/types/options/empty_data.rst.inc - :end-before: DEFAULT_PLACEHOLDER - -The default value is ``''`` (the empty string). - -.. include:: /reference/forms/types/options/empty_data.rst.inc - :start-after: DEFAULT_PLACEHOLDER - -.. include:: /reference/forms/types/options/error_bubbling.rst.inc - -.. include:: /reference/forms/types/options/error_mapping.rst.inc - -.. include:: /reference/forms/types/options/label.rst.inc - -.. include:: /reference/forms/types/options/label_attr.rst.inc - -.. include:: /reference/forms/types/options/mapped.rst.inc - -.. include:: /reference/forms/types/options/required.rst.inc - -.. include:: /reference/forms/types/options/trim.rst.inc diff --git a/reference/forms/types/repeated.rst b/reference/forms/types/repeated.rst index 8c7bca02a87..fd38fe4d191 100644 --- a/reference/forms/types/repeated.rst +++ b/reference/forms/types/repeated.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; RepeatedType + single: Forms; Fields; repeated -RepeatedType Field -================== +repeated Field Type +=================== This is a special field "group", that creates two identical fields whose values must match (or a validation error is thrown). The most common use @@ -28,7 +28,7 @@ accuracy. | | - `invalid_message_parameters`_ | | | - `mapped`_ | +-------------+------------------------------------------------------------------------+ -| Parent type | :doc:`FormType ` | +| Parent type | :doc:`form ` | +-------------+------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\RepeatedType` | +-------------+------------------------------------------------------------------------+ @@ -38,12 +38,8 @@ Example Usage .. code-block:: php - use Symfony\Component\Form\Extension\Core\Type\RepeatedType; - use Symfony\Component\Form\Extension\Core\Type\PasswordType; - // ... - - $builder->add('password', RepeatedType::class, array( - 'type' => PasswordType::class, + $builder->add('password', 'repeated', array( + 'type' => 'password', 'invalid_message' => 'The password fields must match.', 'options' => array('attr' => array('class' => 'password-field')), 'required' => true, @@ -59,7 +55,7 @@ single value (usually a string) that you need. The most important option is ``type``, which can be any field type and determines the actual type of the two underlying fields. The ``options`` option is passed to each of those individual fields, meaning - in this example - any -option supported by the ``PasswordType`` can be passed in this array. +option supported by the ``password`` type can be passed in this array. Rendering ~~~~~~~~~ @@ -121,7 +117,7 @@ first_name This is the actual field name to be used for the first field. This is mostly meaningless, however, as the actual data entered into both of the fields -will be available under the key assigned to the ``RepeatedType`` field itself +will be available under the key assigned to the ``repeated`` field itself (e.g. ``password``). However, if you don't specify a label, this field name is used to "guess" the label for you. @@ -134,10 +130,7 @@ Additional options (will be merged into `options`_ below) that should be passed *only* to the first field. This is especially useful for customizing the label:: - use Symfony\Component\Form\Extension\Core\Type\RepeatedType; - // ... - - $builder->add('password', RepeatedType::class, array( + $builder->add('password', 'repeated', array( 'first_options' => array('label' => 'Password'), 'second_options' => array('label' => 'Repeat Password'), )); @@ -151,7 +144,7 @@ This options array will be passed to each of the two underlying fields. In other words, these are the options that customize the individual field types. For example, if the ``type`` option is set to ``password``, this array might contain the options ``always_empty`` or ``required`` - both -options that are supported by the ``PasswordType`` field. +options that are supported by the ``password`` field type. second_name ~~~~~~~~~~~ @@ -175,7 +168,7 @@ type **type**: ``string`` **default**: ``text`` The two underlying fields will be of this field type. For example, passing -``PasswordType::class`` will render two password fields. +a type of ``password`` will render two password fields. Overridden Options ------------------ @@ -188,7 +181,8 @@ error_bubbling Inherited Options ----------------- -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc diff --git a/reference/forms/types/reset.rst b/reference/forms/types/reset.rst index 60b7d365fac..efa1b4f99cf 100644 --- a/reference/forms/types/reset.rst +++ b/reference/forms/types/reset.rst @@ -1,8 +1,11 @@ .. index:: - single: Forms; Fields; ResetType + single: Forms; Fields; reset -ResetType Field -=============== +reset Field Type +================ + +.. versionadded:: 2.3 + The ``reset`` type was introduced in Symfony 2.3. A button that resets all fields to their original values. @@ -15,7 +18,7 @@ A button that resets all fields to their original values. | | - `label_attr`_ | | | - `translation_domain`_ | +----------------------+---------------------------------------------------------------------+ -| Parent type | :doc:`ButtonType ` | +| Parent type | :doc:`button` | +----------------------+---------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\ResetType` | +----------------------+---------------------------------------------------------------------+ diff --git a/reference/forms/types/search.rst b/reference/forms/types/search.rst index 37f7f69da44..c14021392b8 100644 --- a/reference/forms/types/search.rst +++ b/reference/forms/types/search.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; SearchType + single: Forms; Fields; search -SearchType Field -================ +search Field Type +================= This renders an ```` field, which is a text box with special functionality supported by some browsers. @@ -20,10 +20,12 @@ Read about the input search field at `DiveIntoHTML5.info`_ | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `max_length`_ (deprecated as of 2.5) | +| | - `read_only`_ | | | - `required`_ | | | - `trim`_ | +-------------+----------------------------------------------------------------------+ -| Parent type | :doc:`TextType ` | +| Parent type | :doc:`text ` | +-------------+----------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\SearchType` | +-------------+----------------------------------------------------------------------+ @@ -31,7 +33,8 @@ Read about the input search field at `DiveIntoHTML5.info`_ Inherited Options ----------------- -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/disabled.rst.inc @@ -55,6 +58,10 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/max_length.rst.inc + +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc .. include:: /reference/forms/types/options/trim.rst.inc diff --git a/reference/forms/types/submit.rst b/reference/forms/types/submit.rst index c87a2f472cf..0ea4defc3f6 100644 --- a/reference/forms/types/submit.rst +++ b/reference/forms/types/submit.rst @@ -1,8 +1,11 @@ .. index:: - single: Forms; Fields; SubmitType + single: Forms; Fields; submit -SubmitType Field -================ +submit Field Type +================= + +.. versionadded:: 2.3 + The ``submit`` type was introduced in Symfony 2.3. A submit button. @@ -17,7 +20,7 @@ A submit button. | | - `translation_domain`_ | | | - `validation_groups`_ | +----------------------+----------------------------------------------------------------------+ -| Parent type | :doc:`ButtonType` | +| Parent type | :doc:`button` | +----------------------+----------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\SubmitType` | +----------------------+----------------------------------------------------------------------+ @@ -56,14 +59,11 @@ When your form contains multiple submit buttons, you can change the validation group based on the button which was used to submit the form. Imagine a registration form wizard with buttons to go to the previous or the next step:: - use Symfony\Component\Form\Extension\Core\Type\SubmitType; - // ... - $form = $this->createFormBuilder($user) - ->add('previousStep', SubmitType::class, array( + ->add('previousStep', 'submit', array( 'validation_groups' => false, )) - ->add('nextStep', SubmitType::class, array( + ->add('nextStep', 'submit', array( 'validation_groups' => array('Registration'), )) ->getForm(); diff --git a/reference/forms/types/text.rst b/reference/forms/types/text.rst index fd61506659d..d8fe83822c3 100644 --- a/reference/forms/types/text.rst +++ b/reference/forms/types/text.rst @@ -1,10 +1,10 @@ .. index:: - single: Forms; Fields; TextType + single: Forms; Fields; text -TextType Field -============== +text Field Type +=============== -The TextType field represents the most basic input text field. +The text field represents the most basic input text field. +-------------+--------------------------------------------------------------------+ | Rendered as | ``input`` ``text`` field | @@ -18,13 +18,15 @@ The TextType field represents the most basic input text field. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `max_length`_ (deprecated as of 2.5) | +| | - `read_only`_ | | | - `required`_ | | | - `trim`_ | +-------------+--------------------------------------------------------------------+ | Overridden | - `compound`_ | | options | | +-------------+--------------------------------------------------------------------+ -| Parent type | :doc:`FormType ` | +| Parent type | :doc:`form ` | +-------------+--------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\TextType` | +-------------+--------------------------------------------------------------------+ @@ -32,7 +34,8 @@ The TextType field represents the most basic input text field. Inherited Options ----------------- -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc @@ -58,6 +61,10 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/max_length.rst.inc + +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc .. include:: /reference/forms/types/options/trim.rst.inc diff --git a/reference/forms/types/textarea.rst b/reference/forms/types/textarea.rst index 7a811a5f67d..68022990dbb 100644 --- a/reference/forms/types/textarea.rst +++ b/reference/forms/types/textarea.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; TextareaType + single: Forms; Fields; textarea -TextareaType Field -================== +textarea Field Type +=================== Renders a ``textarea`` HTML element. @@ -19,10 +19,12 @@ Renders a ``textarea`` HTML element. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `max_length`_ (deprecated as of 2.5) | +| | - `read_only`_ | | | - `required`_ | | | - `trim`_ | +-------------+------------------------------------------------------------------------+ -| Parent type | :doc:`TextType ` | +| Parent type | :doc:`text ` | +-------------+------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\TextareaType` | +-------------+------------------------------------------------------------------------+ @@ -36,7 +38,8 @@ Renders a ``textarea`` HTML element. Inherited Options ----------------- -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/attr.rst.inc @@ -64,6 +67,10 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/max_length.rst.inc + +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc .. include:: /reference/forms/types/options/trim.rst.inc diff --git a/reference/forms/types/time.rst b/reference/forms/types/time.rst index a4e54b75660..227cbd75ec5 100644 --- a/reference/forms/types/time.rst +++ b/reference/forms/types/time.rst @@ -1,8 +1,8 @@ .. index:: - single: Forms; Fields; TimeType + single: Forms; Fields; time -TimeType Field -============== +time Field Type +=============== A field to capture time input. @@ -39,8 +39,9 @@ stored as a ``DateTime`` object, a string, a timestamp or an array. | | - `invalid_message`_ | | | - `invalid_message_parameters`_ | | | - `mapped`_ | +| | - `read_only`_ | +----------------------+-----------------------------------------------------------------------------+ -| Parent type | FormType | +| Parent type | form | +----------------------+-----------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\TimeType` | +----------------------+-----------------------------------------------------------------------------+ @@ -52,13 +53,10 @@ This field type is highly configurable, but easy to use. The most important options are ``input`` and ``widget``. Suppose that you have a ``startTime`` field whose underlying time data is -a ``DateTime`` object. The following configures the ``TimeType`` for that +a ``DateTime`` object. The following configures the ``time`` type for that field as two different choice fields:: - use Symfony\Component\Form\Extension\Core\Type\TimeType; - // ... - - $builder->add('startTime', TimeType::class, array( + $builder->add('startTime', 'time', array( 'input' => 'datetime', 'widget' => 'choice', )); @@ -67,10 +65,7 @@ The ``input`` option *must* be changed to match the type of the underlying date data. For example, if the ``startTime`` field's data were a unix timestamp, you'd need to set ``input`` to ``timestamp``:: - use Symfony\Component\Form\Extension\Core\Type\TimeType; - // ... - - $builder->add('startTime', TimeType::class, array( + $builder->add('startTime', 'time', array( 'input' => 'timestamp', 'widget' => 'choice', )); @@ -185,7 +180,8 @@ error_bubbling Inherited Options ----------------- -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc @@ -201,6 +197,8 @@ These options inherit from the :doc:`FormType `: .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/read_only.rst.inc + Form Variables -------------- diff --git a/reference/forms/types/timezone.rst b/reference/forms/types/timezone.rst index e46aa9f4fe3..cf937bf80a8 100644 --- a/reference/forms/types/timezone.rst +++ b/reference/forms/types/timezone.rst @@ -1,18 +1,19 @@ .. index:: - single: Forms; Fields; TimezoneType + single: Forms; Fields; timezone -TimezoneType Field -================== +timezone Field Type +=================== -The ``TimezoneType`` is a subset of the ``ChoiceType`` that allows the +The ``timezone`` type is a subset of the ``ChoiceType`` that allows the user to select from all possible timezones. The "value" for each timezone is the full timezone name, such as ``America/Chicago`` or ``Europe/Istanbul``. -Unlike the ``ChoiceType``, you don't need to specify a ``choices`` option as the -field type automatically uses a large list of timezones. You *can* specify the option -manually, but then you should just use the ``ChoiceType`` directly. +Unlike the ``choice`` type, you don't need to specify a ``choices`` or +``choice_list`` option as the field type automatically uses a large list +of timezones. You *can* specify either of these options manually, but then +you should just use the ``choice`` type directly. +-------------+------------------------------------------------------------------------+ | Rendered as | can be various tags (see :ref:`forms-reference-choice-tags`) | @@ -20,14 +21,14 @@ manually, but then you should just use the ``ChoiceType`` directly. | Overridden | - `choices`_ | | options | | +-------------+------------------------------------------------------------------------+ -| Inherited | from the :doc:`ChoiceType ` | +| Inherited | from the :doc:`choice ` type | | options | | | | - `expanded`_ | | | - `multiple`_ | | | - `placeholder`_ | | | - `preferred_choices`_ | | | | -| | from the :doc:`FormType ` | +| | from the :doc:`form ` type | | | | | | - `data`_ | | | - `disabled`_ | @@ -38,9 +39,10 @@ manually, but then you should just use the ``ChoiceType`` directly. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `read_only`_ | | | - `required`_ | +-------------+------------------------------------------------------------------------+ -| Parent type | :doc:`ChoiceType ` | +| Parent type | :doc:`choice ` | +-------------+------------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\TimezoneType` | +-------------+------------------------------------------------------------------------+ @@ -51,7 +53,7 @@ Overridden Options choices ~~~~~~~ -**default**: An array of timezones. +**default**: :class:`Symfony\\Component\\Form\\Extension\\Core\\ChoiceList\\TimezoneChoiceList` The Timezone type defaults the choices to all timezones returned by :phpmethod:`DateTimeZone::listIdentifiers`, broken down by continent. @@ -59,7 +61,8 @@ The Timezone type defaults the choices to all timezones returned by Inherited Options ----------------- -These options inherit from the :doc:`ChoiceType `: +These options inherit from the :doc:`choice ` +type: .. include:: /reference/forms/types/options/expanded.rst.inc @@ -69,7 +72,8 @@ These options inherit from the :doc:`ChoiceType ` .. include:: /reference/forms/types/options/preferred_choices.rst.inc -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc @@ -99,4 +103,6 @@ The actual default value of this option depends on other field options: .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc diff --git a/reference/forms/types/url.rst b/reference/forms/types/url.rst index 8c58f007e1d..39bd1171535 100644 --- a/reference/forms/types/url.rst +++ b/reference/forms/types/url.rst @@ -1,10 +1,10 @@ .. index:: - single: Forms; Fields; UrlType + single: Forms; Fields; url -UrlType Field -============= +url Field Type +============== -The ``UrlType`` field is a text field that prepends the submitted value with +The ``url`` field is a text field that prepends the submitted value with a given protocol (e.g. ``http://``) if the submitted value doesn't already have a protocol. @@ -22,10 +22,12 @@ have a protocol. | | - `label_attr`_ | | | - `label_format`_ | | | - `mapped`_ | +| | - `max_length`_ (deprecated as of 2.5) | +| | - `read_only`_ | | | - `required`_ | | | - `trim`_ | +-------------+-------------------------------------------------------------------+ -| Parent type | :doc:`TextType ` | +| Parent type | :doc:`text ` | +-------------+-------------------------------------------------------------------+ | Class | :class:`Symfony\\Component\\Form\\Extension\\Core\\Type\\UrlType` | +-------------+-------------------------------------------------------------------+ @@ -45,7 +47,8 @@ the data is submitted to the form. Inherited Options ----------------- -These options inherit from the :doc:`FormType `: +These options inherit from the :doc:`form ` +type: .. include:: /reference/forms/types/options/data.rst.inc @@ -71,6 +74,10 @@ The default value is ``''`` (the empty string). .. include:: /reference/forms/types/options/mapped.rst.inc +.. include:: /reference/forms/types/options/max_length.rst.inc + +.. include:: /reference/forms/types/options/read_only.rst.inc + .. include:: /reference/forms/types/options/required.rst.inc .. include:: /reference/forms/types/options/trim.rst.inc diff --git a/reference/map.rst.inc b/reference/map.rst.inc index 8339192ab96..1d322527c61 100644 --- a/reference/map.rst.inc +++ b/reference/map.rst.inc @@ -13,7 +13,7 @@ * :doc:`twig ` * :doc:`monolog ` * :doc:`web_profiler ` - * :doc:`debug ` + * :doc:`debug ` (new in 2.6) * :doc:`Configuring the Kernel (e.g. AppKernel) ` diff --git a/reference/requirements.rst b/reference/requirements.rst index 269ade07489..b3765ac819f 100644 --- a/reference/requirements.rst +++ b/reference/requirements.rst @@ -14,18 +14,23 @@ your requirements from the command line via: .. code-block:: bash - $ php bin/symfony_requirements + $ php app/check.php Below is the list of required and optional requirements. Required -------- -* PHP needs to be a minimum version of PHP 5.5.9 +* PHP needs to be a minimum version of PHP 5.3.9 * JSON needs to be enabled * ctype needs to be enabled * Your ``php.ini`` needs to have the ``date.timezone`` setting +.. caution:: + + Be aware that Symfony has some known limitations when using PHP 5.3.16. + For more information see the `Requirements section of the README`_. + Optional -------- @@ -50,3 +55,5 @@ Doctrine If you want to use Doctrine, you will need to have PDO installed. Additionally, you need to have the PDO driver installed for the database server you want to use. + +.. _`Requirements section of the README`: https://github.com/symfony/symfony/blob/2.7/README.md#requirements diff --git a/reference/twig_reference.rst b/reference/twig_reference.rst index ed202594354..717d0dbf6e2 100644 --- a/reference/twig_reference.rst +++ b/reference/twig_reference.rst @@ -98,12 +98,16 @@ asset .. code-block:: twig - {{ asset(path, packageName = null) }} + {{ asset(path, packageName = null, absolute = false, version = null) }} ``path`` **type**: ``string`` ``packageName`` *(optional)* **type**: ``string`` | ``null`` **default**: ``null`` +``absolute`` (deprecated as of 2.7) + **type**: ``boolean`` **default**: ``false`` +``version`` (deprecated as of 2.7) + **type**: ``string`` **default** ``null`` Returns a public path to ``path``, which takes into account the base path set for the package and the URL path. More information in @@ -168,6 +172,20 @@ Renders the HTML end tag of a form together with all fields that have not been rendered yet, more information in :ref:`the Twig Form reference `. +form_enctype +~~~~~~~~~~~~ + +.. code-block:: twig + + {{ form_enctype(view) }} + +``view`` + **type**: ``FormView`` + +Renders the required ``enctype="multipart/form-data"`` attribute if the +form contains at least one file upload field, more information in +:ref:`the Twig Form reference `. + form_widget ~~~~~~~~~~~ @@ -344,6 +362,9 @@ information in :ref:`book-templating-pages`. absolute_url ~~~~~~~~~~~~ +.. versionadded:: 2.6 + The ``absolute_url`` function was introduced in Symfony 2.7 + .. code-block:: jinja {{ absolute_url(path) }} @@ -361,6 +382,9 @@ an existing path: relative_path ~~~~~~~~~~~~~ +.. versionadded:: 2.6 + The ``relative_path`` function was introduced in Symfony 2.7 + .. code-block:: jinja {{ relative_path(path) }} @@ -400,6 +424,10 @@ Makes a technical name human readable (i.e. replaces underscores by spaces or transforms camelCase text like ``helloWorld`` to ``hello world`` and then capitalizes the string). +.. versionadded:: 2.3 + Transforming camelCase text into human readable text was introduced in + Symfony 2.3. + trans ~~~~~ @@ -699,6 +727,12 @@ The available attributes are: * ``app.session`` * ``app.environment`` * ``app.debug`` +* ``app.security`` (deprecated as of 2.6) + +.. caution:: + + The ``app.security`` global is deprecated as of 2.6. The user is already + available as ``app.user`` and ``is_granted()`` is registered as function. Symfony Standard Edition Extensions ----------------------------------- @@ -708,7 +742,10 @@ Those bundles can have other Twig extensions: * **Twig Extensions** includes some interesting extensions that do not belong to the Twig core. You can read more in `the official Twig Extensions - documentation`_. + documentation`_; +* **Assetic** adds the ``{% stylesheets %}``, ``{% javascripts %}`` and + ``{% image %}`` tags. You can read more about them in + :doc:`the Assetic Documentation `. .. _`Twig Reference`: http://twig.sensiolabs.org/documentation#reference .. _`the official Twig Extensions documentation`: http://twig.sensiolabs.org/doc/extensions/index.html

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 literal 49788 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 LK-t}Rg9-Ccugad&rj4|dbuCbBFuuQJWU$ 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