Commit Graph

720 Commits

Author SHA1 Message Date
Disquedur
51312d31cc Remove aligned '=>' and '=' 2014-10-26 08:30:58 +01:00
Tobias Schultze
7aea1c9808 [Form] no need to add the url listener when it does not do anything 2014-10-17 01:39:03 +02:00
Stepan Anchugov
0af6467757 [Form] Fix #11694 - Enforce options value type check in some form types 2014-10-16 11:06:53 +02:00
Eric GELOEN
ea4ae74011 [Form][DateTime] Propagate invalid_message & invalid_message parameters to date & time sub widgets 2014-09-25 15:00:50 +02:00
Bernhard Schussek
6cbc862e19 [Form] Removed constructor argument from FormTypeHttpFoundationExtension for forward compatibility with 2.5 2014-09-25 11:29:33 +02:00
Fabien Potencier
bc8ee6f497 bug #12004 [Form] Fixed ValidatorTypeGuesser to guess properties without constraints not to be required (webmozart)
This PR was merged into the 2.3 branch.

Discussion
----------

[Form] Fixed ValidatorTypeGuesser to guess properties without constraints not to be required

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #6645
| License       | MIT
| Doc PR        | -

Consider the following entity:

```php
class Author
{
    /**
     * @Assert\NotBlank
     */
    private $name;

    private $age;
}
```

Right now, the "required" HTML attribute is set for both fields (since the default value of the "required" option is true). IMO this is wrong.

With this fix, the ValidatorTypeGuesser guesses `false` for the "required" option unless a NotNull/NotBlank constraint is present.

Commits
-------

fd77b09 [Form] Fixed ValidatorTypeGuesser to guess properties without constraints not to be required
2014-09-24 14:19:03 +02:00
Bernhard Schussek
fd77b09fba [Form] Fixed ValidatorTypeGuesser to guess properties without constraints not to be required 2014-09-24 14:11:43 +02:00
Bernhard Schussek
759ae1a7a1 [Form] Moved POST_MAX_SIZE validation from FormValidator to request handler 2014-09-23 14:27:03 +02:00
rpg600
47802105d3 [Form] Add a form error if post_max_size has been reached. 2014-09-23 12:20:25 +02:00
Fabien Potencier
369aebf431 fixed CS 2014-09-22 10:32:35 +02:00
Bernhard Schussek
ba218540b1 bug #11459 [Form][Validator] All index items after children are to be considered grand-children when resolving ViolationPath (Andrew Moore)
This PR was merged into the 2.3 branch.

Discussion
----------

[Form][Validator] All index items after children are to be considered grand-children when resolving ViolationPath

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | unsure, see note below
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #11458
| License       | MIT
| Doc PR        | -

#### Possible BC Break
The old behavior had unit test cases specifically testing the case of a grand-children form. However, this behavior is not documented anywhere and the fix seems to have no adverse effects on form validation. `Symfony\Component\Form\FormInterface` implements `ArrayAccess`, therefore, semantically speaking, `children[direct_child].children[grand_children]` and `children[direct_child][grand_children]` are equivalent. `offsetGet` is expected to fetch an element from `children`. I do not see why both were not considered equivalent when resolving the ViolationPath.

This commit will indeed change how some errors are mapped. However since the old mapping is (in my opinion) a bug...

Commits
-------

c64a75f [Form][Validator] All index items after children are to be considered grand-children when resolving ViolationPath (fixes #11458)
2014-09-15 19:17:27 +02:00
Nek (Maxime Veber)
31d48ab91f Fixed #11675 ValueToDuplicatesTransformer accept "0" value
Fixed wrong return null syntax

Added transformation to null on empty arrays

Removed useless statement in condition and switched to yoda condition
2014-08-19 11:05:04 +02:00
Christian Flothmann
9cd059ee1f remove unused imports 2014-07-26 20:24:56 +02:00
Andrew Moore
c64a75f7bb [Form][Validator] All index items after children are to be considered grand-children when resolving ViolationPath (fixes #11458) 2014-07-23 23:04:43 -04:00
Fabien Potencier
797d8141e3 bug #11342 [2.3][Form] Check if IntlDateFormatter constructor returned a valid object before using it (romainneutron)
This PR was merged into the 2.3 branch.

Discussion
----------

[2.3][Form] Check if IntlDateFormatter constructor returned a valid object before using it

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT

`IntlDateFormatter` constructor [may return false](http://www.php.net/manual/en/intldateformatter.create.php#refsect1-intldateformatter.create-returnvalues). This patches avoids fatal errors in these cases

This PR replaces #11334

Commits
-------

ebf967d [Form] Check if IntlDateFormatter constructor returned a valid object before using it
2014-07-23 16:33:41 +02:00
Joseph Bielawski
a67bc7612e [2.3][Form] Cleanup & fix phpdocs 2014-07-09 12:39:32 +02:00
Romain Neutron
ebf967de8f [Form] Check if IntlDateFormatter constructor returned a valid object before using it 2014-07-07 23:17:57 +02:00
Fabien Potencier
0762bae059 bug #10777 [Form] Automatically add step attribute to HTML5 time widgets to display seconds if needed (tucksaun)
This PR was squashed before being merged into the 2.3 branch (closes #10777).

Discussion
----------

[Form] Automatically add step attribute to HTML5 time widgets to display seconds if needed

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #9976, #10203
| License       | MIT
| Doc PR        | none

Same issue as #9976 and #10203: when you add a `time` field to a form with options `single_text` (so HTML5) and `with_seconds`, the generated input does not contain the `step` attribute, therefore the browser does not show them, leading to an error at the submit because of an invalid format.

Compared to #9976/#10203:
* Unit testable
* Available directly in the component
* Available in other templating format than twig
* Still able to customise the step attribute by hand

Commits
-------

a379298 [Form] Automatically add step attribute to HTML5 time widgets to display seconds if needed
2014-05-16 13:54:17 +02:00
Tugdual Saunier
a379298db9 [Form] Automatically add step attribute to HTML5 time widgets to display seconds if needed 2014-05-16 13:54:15 +02:00
Nicolas Grekas
a4b805dbf2 Lower mbstring dep, remove it for Yaml and CssSelector components 2014-05-12 11:13:35 +02:00
Fabien Potencier
5b72e5ab04 minor #10717 unified return null usages (fabpot)
This PR was merged into the 2.3 branch.

Discussion
----------

unified return null usages

| Q             | A
| ------------- | ---
| License       | MIT

This PR unifies the way we return `null` from a function or method:

 * always use `return;` instead of `return null;` (the current code base uses both);
 * never use `return;` at the end of a function/method.

Commits
-------

d1d569b unified return null usages
2014-04-18 22:35:25 +02:00
Fabien Potencier
e96b018805 fixed types in phpdocs 2014-04-16 12:30:19 +02:00
Fabien Potencier
d1d569bf7b unified return null usages 2014-04-16 09:43:51 +02:00
Fabien Potencier
d56ea768cc minor #10713 made {@inheritdoc} annotations consistent across the board (fabpot)
This PR was merged into the 2.3 branch.

Discussion
----------

made {@inheritdoc} annotations consistent across the board

| Q             | A
| ------------- | ---
| License       | MIT

Commits
-------

810b9ed made {@inheritdoc} annotations consistent across the board
2014-04-16 09:04:52 +02:00
Fabien Potencier
810b9ed107 made {@inheritdoc} annotations consistent across the board 2014-04-16 09:04:20 +02:00
Fabien Potencier
a693545324 fixed types in phpdocs 2014-04-16 08:51:57 +02:00
Fabien Potencier
3c9c10f3a0 made phpdoc types consistent with those defined in Hack 2014-04-15 07:41:45 +02:00
Fabien Potencier
0555b7f2ab made types consistent with those defined in Hack 2014-04-13 20:00:14 +02:00
Koen Kuipers
73d56f7a1a Fixed bug in ChoiceType triggering a warning when not using utf-8
This fixes issue #10409 by not using json_encode anymore, but serialize
instead.
2014-03-28 11:31:34 +01:00
Luiz “Felds” Liscia
d685d7d08b Cast the group name as a string
This allows the options to be grouped by association fields.
2014-03-21 12:48:42 +01:00
Chekote
aa63faea06 [Form] Fix "Array was modified outside object" in ResizeFormListener. 2014-03-19 17:44:48 +01:00
Norbert Orzechowicz
f62e30db30 Revert "Fix "Array was modified outside object" in ResizeFormListener." 2014-02-15 12:03:01 +01:00
Chekote
e62c0b5a2d Fix "Array was modified outside object" in ResizeFormListener.
The onSubmit() method of the ResizeFormListener class is assuming the data is an array, and calling unset directly inside a foreach. This works fine in most scenarios, but if data is an instance of IteratorAggregate, it breaks with the following error:

Symfony\Component\Form\Extension\Core\EventListener\ResizeFormListener::onSubmit(): ArrayIterator::next(): Array was modified outside object and internal position is no longer valid in ./vendor/symfony/symfony/src/Symfony/Component/Form/Extension/Core/EventListener/ResizeFormListener.php line 142

This is because the foreach loop is using an Iterator in the background, but the ResizeFormListener has unset the underlying data directly, causing the Iterator and data to be out of sync. When the data is an instance of IteratorAggregate, the loop should use the iterator directly and not rely on foreach.

The onSubmit method has been updated accordingly.
2014-02-11 15:26:59 +01:00
Fabien Potencier
eb3f6c6efb fixed various inconsistencies 2014-02-11 11:29:24 +01:00
Peter Rehm
1f22d3a564 [Form] Update DateTime objects only if the actual value has changed 2014-01-29 07:46:08 +01:00
Fabien Potencier
7f9a366529 removed unneeded use statements 2014-01-01 08:52:14 +01:00
Fabien Potencier
fac711c5f9 minor #9353 [2.3] Removed deprecated calls (WouterJ)
This PR was merged into the 2.3 branch.

Discussion
----------

[2.3] Removed deprecated calls

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Commits
-------

a6562b3 Fixed deprecated method calls
2013-12-28 17:31:57 +01:00
Wouter J
a6562b36c4 Fixed deprecated method calls 2013-12-28 17:01:14 +01:00
Eric GELOEN
d0555f4498 Check for hour, minute & second validity 2013-12-27 22:48:33 +01:00
artem kolesnikov
0bbde05d8d Fixed issue in BaseDateTimeTransformer when invalid timezone cause Transformation filed exception (closes #9403). 2013-12-17 08:19:11 +01:00
Fabien Potencier
c05232fcfd bug #9135 [Form] [Validator] fix maxLength guesser (franek)
This PR was merged into the 2.3 branch.

Discussion
----------

[Form] [Validator] fix maxLength guesser

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #9132
| License       | MIT
| Doc PR        |

- [ ] need to add unit tests on ValidatorTypeGuesser.php

Commits
-------

f232550 remove deprecated constraints calls (Min, Max, MaxLength, MinLength)
2013-12-16 17:00:48 +01:00
Fabien Potencier
3062681110 fixed CS 2013-12-12 17:08:59 +01:00
Fabien Potencier
ad9008e452 Merge branch '2.2' into 2.3
* 2.2:
  Teardown used wrong property
  Modified guessDefaultEscapingStrategy to not escape txt templates
  Fix DateType for 32bits computers.
  Fixed the registration of validation.xml file when the form is disabled
  When getting the session's id, check if the session is not closed
2013-11-28 11:26:47 +01:00
WedgeSama
2f9bb75174 Fix DateType for 32bits computers. 2013-11-28 08:06:13 +01:00
Fabien Potencier
6316de572a bug #9211 [Form] Fixed memory leak in FormValidator (bschussek)
This PR was merged into the 2.3 branch.

Discussion
----------

[Form] Fixed memory leak in FormValidator

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #9187
| License       | MIT
| Doc PR        | -

Commits
-------

1bb7e4d [Form] Added method Form::getClickedButton() to remove memory leak in FormValidator
5329ab5 [Form] Fixed memory leak in FormValidator
2013-11-14 21:58:12 +01:00
Bernhard Schussek
1bb7e4dc7b [Form] Added method Form::getClickedButton() to remove memory leak in FormValidator 2013-11-09 16:25:41 +01:00
Fabien Potencier
81ceee5f9a minor #9425 [Form] fix and unify phpdoc (Tobion)
This PR was merged into the 2.3 branch.

Discussion
----------

[Form] fix and unify phpdoc

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| license?      | MIT

- Fixes FormTypeGuesserInterface that must return ValueGuess for guessRequired etc. instead of abstract Guess because its excepted for example by FormFactory.
- Unify array typehints that was not done consistently.

Commits
-------

7a754c3 [Form] fix and unify phpdoc
2013-10-31 16:57:44 +01:00
Tobias Schultze
7a754c36a4 [Form] fix and unify phpdoc 2013-10-31 15:15:49 +01:00
Fabien Potencier
43f749e507 Merge branch '2.2' into 2.3
* 2.2:
  fixed CS
  Fixed the error handling when decoding invalid XML to avoid a Warning
  [Form] Fixed: The "data" option is taken into account even if it is NULL
  [DomCrawler] [HttpFoundation] Make `Content-Type` attributes identification case-insensitive

Conflicts:
	src/Symfony/Component/Form/Extension/Core/Type/FormType.php
2013-10-30 09:28:22 +01:00
Bernhard Schussek
c1a3eb3f2e [Form] Fixed: The "data" option is taken into account even if it is NULL 2013-10-28 10:50:26 +01:00