From 2ecc541e09c09e70332d665033e20e3b717c9d3a Mon Sep 17 00:00:00 2001 From: Tobias Schultze Date: Sun, 13 Dec 2015 17:43:15 +0100 Subject: [PATCH 1/3] Fix missing constant usage for generating urls --- book/routing.rst | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/book/routing.rst b/book/routing.rst index 6b95b545d61..b5054686975 100644 --- a/book/routing.rst +++ b/book/routing.rst @@ -1479,7 +1479,9 @@ By default, the router will generate relative URLs (e.g. ``/blog``). From a controller, simply pass ``true`` to the third argument of the ``generateUrl()`` method:: - $this->generateUrl('blog_show', array('slug' => 'my-blog-post'), true); + use Symfony\Component\Routing\Generator\UrlGeneratorInterface; + + $this->generateUrl('blog_show', array('slug' => 'my-blog-post'), UrlGeneratorInterface::ABSOLUTE_URL); // http://www.example.com/blog/my-blog-post From a template, in Twig, simply use the ``url()`` function (which generates an absolute URL) From ad577de27113d20837d03f58f709c085a6dd94b2 Mon Sep 17 00:00:00 2001 From: Javier Eguiluz Date: Mon, 14 Dec 2015 17:48:22 +0100 Subject: [PATCH 2/3] Use HTTPS for downloading the Symfony Installer --- best_practices/creating-the-project.rst | 8 ++++---- book/installation.rst | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/best_practices/creating-the-project.rst b/best_practices/creating-the-project.rst index 60e6db3be55..d5b3a48766a 100644 --- a/best_practices/creating-the-project.rst +++ b/best_practices/creating-the-project.rst @@ -33,7 +33,7 @@ to create files and execute the following commands: # Windows c:\> cd projects/ - c:\projects\> php symfony.phar new blog + c:\projects\> php symfony 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, @@ -110,10 +110,10 @@ Symfony documentation uses the AppBundle name. There is no need to prefix the AppBundle with your own vendor (e.g. AcmeAppBundle), because this application bundle is never going to be shared. - + .. note:: - - Another reason to create a new bundle is when you're overriding something + + Another reason to create a new bundle is when you're overriding something in a vendor's bundle (e.g. a controller). See :doc:`/cookbook/bundles/inheritance`. All in all, this is the typical directory structure of a Symfony application diff --git a/book/installation.rst b/book/installation.rst index 580425ed6fd..0c77443ea2f 100644 --- a/book/installation.rst +++ b/book/installation.rst @@ -32,7 +32,7 @@ Open your command console and execute the following commands: .. code-block:: bash - $ sudo curl -LsS http://symfony.com/installer -o /usr/local/bin/symfony + $ sudo curl -LsS https://symfony.com/installer -o /usr/local/bin/symfony $ sudo chmod a+x /usr/local/bin/symfony This will create a global ``symfony`` command in your system. @@ -44,7 +44,7 @@ Open your command console and execute the following command: .. code-block:: bash - c:\> php -r "readfile('http://symfony.com/installer');" > symfony + c:\> php -r "readfile('https://symfony.com/installer');" > symfony Then, move the downloaded ``symfony`` file to your project's directory and execute it as follows: From c7e78db5effed12dbd7cfb227c6a4defead2b5a5 Mon Sep 17 00:00:00 2001 From: Javier Eguiluz Date: Mon, 14 Dec 2015 11:58:21 +0100 Subject: [PATCH 3/3] Fixed formatting issues --- book/controller.rst | 2 +- cookbook/controller/service.rst | 3 +- cookbook/security/custom_provider.rst | 4 +- cookbook/upgrade/_update_dep_errors.rst.inc | 2 + reference/constraints/Callback.rst | 163 ++++++++++---------- 5 files changed, 87 insertions(+), 87 deletions(-) diff --git a/book/controller.rst b/book/controller.rst index 7ee61edc97f..d61691a368d 100644 --- a/book/controller.rst +++ b/book/controller.rst @@ -638,7 +638,7 @@ and then redirects. The message key (``notice`` in this example) can be anything you'll use this key to retrieve the message. In the template of the next page (or even better, in your base layout template), -read any flash messages from the session:: +read any flash messages from the session: .. configuration-block:: diff --git a/cookbook/controller/service.rst b/cookbook/controller/service.rst index f5daf236790..d4bb24c68d5 100644 --- a/cookbook/controller/service.rst +++ b/cookbook/controller/service.rst @@ -277,8 +277,7 @@ controller: in the :class:`Symfony\\Component\\Routing\\Generator\\UrlGeneratorInterface`. :method:`Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller::getDoctrine` (service: ``doctrine``) - - *Simply inject doctrine instead of fetching it from the container* + *Simply inject doctrine instead of fetching it from the container.* :method:`Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller::getUser` (service: ``security.context``) .. code-block:: php diff --git a/cookbook/security/custom_provider.rst b/cookbook/security/custom_provider.rst index 60a53517bbe..9531f46b24e 100644 --- a/cookbook/security/custom_provider.rst +++ b/cookbook/security/custom_provider.rst @@ -324,9 +324,9 @@ options, the password may be encoded multiple times and encoded to base64. before comparing it to your encoded password. If ``getSalt()`` returns nothing, then the submitted password is simply encoded using the algorithm you specify in ``security.yml``. If a salt *is* specified, then the following - value is created and *then* hashed via the algorithm: + value is created and *then* hashed via the algorithm:: - ``$password.'{'.$salt.'}';`` + $password.'{'.$salt.'}' If your external users have their passwords salted via a different method, then you'll need to do a bit more work so that Symfony properly encodes diff --git a/cookbook/upgrade/_update_dep_errors.rst.inc b/cookbook/upgrade/_update_dep_errors.rst.inc index 663c0091f58..7601a9b9eac 100644 --- a/cookbook/upgrade/_update_dep_errors.rst.inc +++ b/cookbook/upgrade/_update_dep_errors.rst.inc @@ -4,6 +4,8 @@ Dependency Errors If you get a dependency error, it may simply mean that you need to upgrade other Symfony dependencies too. In that case, try the following command: +.. code-block:: bash + $ composer update symfony/symfony --with-dependencies This updates ``symfony/symfony`` and *all* packages that it depends on, which will diff --git a/reference/constraints/Callback.rst b/reference/constraints/Callback.rst index a2bed55491b..7a58c65062f 100644 --- a/reference/constraints/Callback.rst +++ b/reference/constraints/Callback.rst @@ -132,112 +132,111 @@ methods This is an array of the methods that should be executed during the validation process. Each method can be one of the following formats: -1) **String method name** +1) String method name +..................... - If the name of a method is a simple string (e.g. ``isAuthorValid``), - that method will be called on the same object that's being validated - and the ``ExecutionContextInterface`` will be the only argument (see - the above example). +If the name of a method is a simple string (e.g. ``isAuthorValid``), that method +will be called on the same object that's being validated and the +``ExecutionContextInterface`` will be the only argument (see the above example). 2) **Static array callback** +............................ - Each method can also be specified as a standard array callback: +Each method can also be specified as a standard array callback: - .. configuration-block:: +.. configuration-block:: - .. code-block:: php-annotations + .. code-block:: php-annotations - // src/AppBundle/Entity/Author.php - use Symfony\Component\Validator\Constraints as Assert; + // src/AppBundle/Entity/Author.php + use Symfony\Component\Validator\Constraints as Assert; - /** - * @Assert\Callback(methods={ - * { "AppBundle\MyStaticValidatorClass", "isAuthorValid" } - * }) - */ - class Author - { - } + /** + * @Assert\Callback(methods={ + * { "AppBundle\MyStaticValidatorClass", "isAuthorValid" } + * }) + */ + class Author + { + } - .. code-block:: yaml + .. code-block:: yaml - # src/AppBundle/Resources/config/validation.yml - AppBundle\Entity\Author: - constraints: - - Callback: - methods: - - [AppBundle\MyStaticValidatorClass, isAuthorValid] + # src/AppBundle/Resources/config/validation.yml + AppBundle\Entity\Author: + constraints: + - Callback: + methods: + - [AppBundle\MyStaticValidatorClass, isAuthorValid] - .. code-block:: xml + .. code-block:: xml - - - + + + - - - - - - + + + + + + - .. code-block:: php + .. code-block:: php - // src/AppBundle/Entity/Author.php + // src/AppBundle/Entity/Author.php - use Symfony\Component\Validator\Mapping\ClassMetadata; - use Symfony\Component\Validator\Constraints\Callback; + use Symfony\Component\Validator\Mapping\ClassMetadata; + use Symfony\Component\Validator\Constraints\Callback; - class Author + class Author + { + public $name; + + public static function loadValidatorMetadata(ClassMetadata $metadata) { - public $name; - - public static function loadValidatorMetadata(ClassMetadata $metadata) - { - $metadata->addConstraint(new Callback(array( - 'methods' => array( - array( - 'AppBundle\MyStaticValidatorClass', - 'isAuthorValid', - ), + $metadata->addConstraint(new Callback(array( + 'methods' => array( + array( + 'AppBundle\MyStaticValidatorClass', + 'isAuthorValid', ), - ))); - } + ), + ))); } + } - In this case, the static method ``isAuthorValid`` will be called on - the ``AppBundle\MyStaticValidatorClass`` class. It's passed both - the original object being validated (e.g. ``Author``) as well as the - ``ExecutionContextInterface``:: +In this case, the static method ``isAuthorValid`` will be called on the +``AppBundle\MyStaticValidatorClass`` class. It's passed both the original object +being validated (e.g. ``Author``) as well as the ``ExecutionContextInterface``:: - namespace AppBundle; + namespace AppBundle; - use Symfony\Component\Validator\ExecutionContextInterface; - use AppBundle\Entity\Author; + use Symfony\Component\Validator\ExecutionContextInterface; + use AppBundle\Entity\Author; - class MyStaticValidatorClass - { - public static function isAuthorValid( - Author $author, - ExecutionContextInterface $context - ) { - // ... - } + class MyStaticValidatorClass + { + public static function isAuthorValid( + Author $author, + ExecutionContextInterface $context + ) { + // ... } + } - .. tip:: +.. tip:: - If you specify your ``Callback`` constraint via PHP, then you also - have the option to make your callback either a PHP closure or a - non-static callback. It is *not* currently possible, however, to - specify a :term:`service` as a constraint. To validate using a service, - you should :doc:`create a custom validation constraint - ` and add that new constraint - to your class. + If you specify your ``Callback`` constraint via PHP, then you also have the + option to make your callback either a PHP closure or a non-static callback. + It is *not* currently possible, however, to specify a :term:`service` as a + constraint. To validate using a service, you should :doc:`create a custom + validation constraint ` and add that + new constraint to your class.