Commit Graph

323 Commits

Author SHA1 Message Date
Fabien Potencier
7de4d28a05 Merge remote branch 'yethee/delegating_validator'
* yethee/delegating_validator:
  [Form] Fixed path mapping for DelegatingValidator
2011-06-10 13:54:44 +02:00
Fabien Potencier
852a4c9c6a [Form] removed the file upload temporary storage feature
The current implementation is not ready for inclusion in 2.0. It has several
known problems (security, not possible to disable it, not "cloud-compatible",
...) and it's not a must have feature anyway.

Some references:

 * Security issue in FileType: https://github.com/symfony/symfony/issues/1001
 * Validation fails on file, still stored in TemporaryStorage: https://github.com/symfony/symfony/issues/908
 * Add a size argument & ability to configure TemporaryStorage: https://github.com/symfony/symfony/pull/748

This feature should be reworked and discussed for inclusion in 2.1.
2011-06-09 12:44:36 +02:00
Fabien Potencier
88184394b5 [Form] tweaked the error message when a form with a file upload does not have the enctype attribute correctly configured 2011-06-09 08:36:40 +02:00
Kris Wallsmith
5ecb252ddf [Form] removed collection prototype from form tree 2011-06-08 08:34:20 -04:00
Fabien Potencier
1aabc5da64 fixed CS 2011-06-08 12:16:48 +02:00
Fabien Potencier
6881f01fd6 Merge remote branch 'CodeMeme/default-validator-improved-synchronized-error'
* CodeMeme/default-validator-improved-synchronized-error:
  FormError when not synchronized tells you the form name for easier debugging
2011-06-08 08:58:04 +02:00
Fabien Potencier
2573c8968f [Form] fixed choices when keys are integers
This fixes choices when all the keys are strings (but integers really).

That's because in PHP, if you have the following array:

array('1' => 'foo', '2' => 'bar');

PHP "converts" it automatically to the following array:

array(1 => 'foo', 2 => 'bar');
2011-06-07 21:53:59 +02:00
Fabien Potencier
462a8c79ad [Form] tweaked previous commit 2011-06-07 21:45:36 +02:00
Fabien Potencier
91aedf5995 Merge remote branch 'fivestar/single-choice-expanded'
* fivestar/single-choice-expanded:
  [Form] Fixed FixRadioInputListener to not ignore 0.
  [Form] Fixed single expanded choice type to set checked attribute when passed boolean value
2011-06-07 20:53:21 +02:00
Fabien Potencier
87fefcae62 [Form] removed obsolete comment 2011-06-05 08:49:06 +02:00
Fabien Potencier
dd5f088abb Merge remote branch 'jwage/master'
* jwage/master:
  Revert back to using gmmktime and use day 15 instead of 1 to avoid edge case
  Use mktime instead of gmmaketime. On the 1st of every month the following options are generated:
2011-06-05 08:47:49 +02:00
Matthieu Vachon
954bdb5813 [Form] Updated DateTimeType to accept a custom date pattern for the DateType child
* Added a test also about this change
2011-06-03 11:05:11 -04:00
Matthieu Vachon
e7e744f00a [Form] Synced changes in this branch with current Symfony master branch 2011-06-03 10:51:08 -04:00
Matthieu Vachon
436cb95223 [Form] Changed to a CreateException when the 'format' option is invalid
* Updated DateTypeTest also
2011-06-03 10:47:00 -04:00
Matthieu Vachon
a8152326fb [Form] The IntlDateFormatter pattern can now be passed via the format option
* Also changed the default value of the calendar paramter to \IntlDateFormatter:GREGORIAN
   in DateTimeToLocalizedStringTransformer which is the same as the default value in
   StubIntlDateFormatter
2011-06-03 10:46:58 -04:00
Amal Raghav
52a1e1d281 moved date_pattern to IntlDateFormatter
added code to use custom date_pattern
2011-06-03 10:46:55 -04:00
Amal Raghav
dd104bc8c0 added code to use custom date_pattern 2011-06-03 10:46:54 -04:00
stloyd
4e03db63d7 Remove all is_null alias calls. 2011-06-03 11:16:32 +02:00
Jonathan H. Wage
611dbf1bfe Revert back to using gmmktime and use day 15 instead of 1 to avoid edge case 2011-06-02 13:47:58 -07:00
Katsuhiro OGAWA
790284f2a8 [Form] Fixed FixRadioInputListener to not ignore 0. 2011-06-02 19:19:43 +09:00
Katsuhiro OGAWA
5893874ed5 [Form] Fixed single expanded choice type to set checked attribute when passed boolean value 2011-06-02 19:19:42 +09:00
Jonathan H. Wage
cd99d2a07d Use mktime instead of gmmaketime. On the 1st of every month the following options are generated:
<select id="filter_start_date_month" name="filter[start][date][month]">
<option value="1">Dec</option>
<option value="2">Jan</option>
<option value="3">Feb</option>
<option value="4">Mar</option>
<option value="5">Apr</option>
<option value="6" selected="selected">May</option>
<option value="7">Jun</option>
<option value="8">Jul</option>
<option value="9">Aug</option>
<option value="10">Sep</option>
<option value="11">Oct</option>
<option value="12">Nov</option>
</select>

I do not totally understand the problem but using mktime instead of gmmktime fixes the issue.
2011-06-01 12:09:28 -05:00
Fabien Potencier
c8034c04a8 Merge remote branch 'vicb/form-rendering'
* vicb/form-rendering:
  [Form] The variable stack should not persist between section rendering (fixes #1157)
  [Twig][Form] Tweak form extension phpDoc and code
  [Form] Tweak phpDoc
  [FormView] fix phpDoc
  [Form] Some tweaks
2011-06-01 10:32:40 +02:00
Fabien Potencier
79e709cdc9 removed the ON_ prefix for Form event names 2011-05-31 07:19:18 +02:00
Victor Berchet
99bf22c464 [Form] Some tweaks 2011-05-30 14:57:33 +02:00
Fabien Potencier
9b7e14dd10 [Form] converted code to the new event dispatcher 2011-05-30 09:37:42 +02:00
Pascal Borreli
46cdf02750 [Various] Fixed typo 2011-05-29 14:19:02 +00:00
Fabien Potencier
40b84320d6 [Form] tweaked comment 2011-05-28 18:06:11 +02:00
Fabien Potencier
3b0089967f Merge remote branch 'stloyd/patch-11'
* stloyd/patch-11:
  [Form] Force hidden fields to not have "required" attribute (#1091)
2011-05-28 18:05:27 +02:00
Miha Vrhovnik
b8144c62ad DateType single-text should be single_text 2011-05-27 16:23:59 +02:00
Joseph Bielawski
4b476ad267 [Form] Force hidden fields to not have "required" attribute (#1091) 2011-05-27 04:48:14 -07:00
Fabien Potencier
6507eeff3c Merge remote branch 'CodeMeme/1058-fix-radio-input-listener'
* CodeMeme/1058-fix-radio-input-listener:
  Fix for RadioInputListener's empty value erroneously becoming extra data Refs #1058
  Added test for RadioInputListener bug treating no data as extra data
2011-05-26 17:31:09 +02:00
Fabien Potencier
43817de633 Merge remote branch 'maoueh/date_type_dead_code'
* maoueh/date_type_dead_code:
  [Form] Removed dead code in the buildForm method of DateType.php  * With the introduction of the getAllowedOptionValues mechanics, the check    is performed prior to the buildForm call. There is no more needs to check    it again in DateType.
2011-05-26 14:57:54 +02:00
Eric Clemmons
c06a157759 Fix for RadioInputListener's empty value erroneously becoming extra data
Refs #1058
2011-05-25 22:24:49 -07:00
Eric Clemmons
c13cdd34c5 FormError when not synchronized tells you the form name for easier debugging 2011-05-25 12:50:34 -07:00
Fabien Potencier
179864414e [Form] fixed CS 2011-05-25 08:03:21 +02:00
hlecorche
400de9c541 IntegerToLocalizedStringTransformer must return "null" if input value is null 2011-05-24 10:52:28 +02:00
jdhoek
7e4419368e Add missing {} around @inheritDoc to fix this class in SF beta2. 2011-05-24 00:38:15 -07:00
Miha Vrhovnik
e8326aa650 Renamed attributes to attr to be consistent with templating. 2011-05-23 08:10:03 +02:00
Miha Vrhovnik
c7074672ba Added support for additional attributes in Form types that list field as their parent. 2011-05-22 22:59:00 +02:00
Matthieu Vachon
87176e39d1 [Form] Removed dead code in the buildForm method of DateType.php
* With the introduction of the getAllowedOptionValues mechanics, the check
   is performed prior to the buildForm call. There is no more needs to check
   it again in DateType.
2011-05-22 13:51:00 -04:00
Fabien Potencier
2d2de7e8b0 Merge remote branch 'vicb/form-field'
* vicb/form-field:
  [Form] Tweak the field type
2011-05-22 08:29:54 +02:00
Fabien Potencier
2c85a59599 Merge remote branch 'vicb/form-rendered'
* vicb/form-rendered:
  [Form] Fix for nested forms getting erroneously set as rendered
2011-05-22 08:16:24 +02:00
Amal Raghav
517f95d8a4 added missing single-text option 2011-05-20 19:19:23 +05:30
Victor Berchet
e117613550 [Form] Fix for nested forms getting erroneously set as rendered 2011-05-20 15:48:55 +02:00
Victor Berchet
e0ff7d2613 [Form] Tweak the field type 2011-05-20 11:08:48 +02:00
Michel Weimerskirch
fd92105fa0 Fix merge error (function "guess" was in there twice) 2011-05-19 05:45:29 -07:00
Bernhard Schussek
dcc61a9a98 Merge remote branch 'shieldo/search_field' into shieldo_merge 2011-05-19 01:41:59 +02:00
Bernhard Schussek
c3e8569f73 Merge remote branch 'vicb/form-csrf' into vicb_merge 2011-05-18 23:56:11 +02:00
Bernhard Schussek
af66beed76 [Form] Added test for 6c337d1cc0 2011-05-18 23:20:37 +02:00
Bernhard Schussek
a3d84bc681 Merge remote branch 'vicb/form-9731' into vicb_merge 2011-05-18 23:12:27 +02:00
Bernhard Schussek
216d7e415d Merge remote branch 'mweimerskirch/form_pattern_attribute' into mweimerskirch_merge
Conflicts:
	src/Symfony/Bundle/TwigBundle/Resources/views/Form/div_layout.html.twig
	src/Symfony/Component/Form/Extension/Core/Type/FieldType.php
	src/Symfony/Component/Form/Extension/Validator/ValidatorTypeGuesser.php
2011-05-18 22:49:27 +02:00
Bernhard Schussek
520e3761e9 [Form] Removed unused option "pattern" of date and time type 2011-05-18 22:34:34 +02:00
Bernhard Schussek
f467317bab [Form] Renamed view variable "name" to "full_name"
The variable "name" now contains the local, short name (equivalent to $form->getName()).
2011-05-18 22:16:16 +02:00
Bernhard Schussek
b39a21fbaf [Form] Renamed collection option "type_options" to "options" to be consistent with the repeated type 2011-05-18 21:52:59 +02:00
Bernhard Schussek
2711fbc418 Merge remote branch 'jaugustin/fix_form' into jaugustin_merge
Conflicts:
	src/Symfony/Component/Form/Extension/Core/EventListener/ResizeFormListener.php
	src/Symfony/Component/Form/Extension/Core/Type/CollectionType.php
2011-05-18 21:40:20 +02:00
Victor Berchet
ebb0e83a7e [Form] CSRF documentation and a few CS changes 2011-05-18 12:45:01 +02:00
Victor Berchet
ba31b5acc5 [Form] Move CSRF options from types to the CSRF extension 2011-05-18 10:37:31 +02:00
Fabien Potencier
eb202bb7b7 merged kriswallsmith/form/csrf-intention 2011-05-17 15:25:50 +02:00
Fabien Potencier
d118e32783 Merge remote branch 'vicb/924-cosmetic'
* vicb/924-cosmetic:
  [Form] CS related changes
2011-05-17 09:19:41 +02:00
Kris Wallsmith
914620f948 [Form] renamed CSRF page_id to intention 2011-05-16 14:16:29 -07:00
Victor Berchet
42698608cb [Form] CS related changes 2011-05-15 21:39:22 +02:00
Victor Berchet
39efc49da0 [Form] Implement a fluid interface FormView 2011-05-15 21:38:12 +02:00
Douglas Greenshields
bf2f9d2a02 [Form] Added a search form field type 2011-05-15 18:31:36 +01:00
Deni
e75edf205d [Form] Fixed path mapping for DelegatingValidator 2011-05-14 13:38:34 +04:00
Fabien Potencier
dbdb3da6bf Merge remote branch 'vicb/form-misc-fix-2'
* vicb/form-misc-fix-2:
  [Form] fix calling closures
  [Form] Add a missing property delcaration in the ResizeFormListener
2011-05-14 11:04:50 +02:00
Bernhard Schussek
e0ff61949e [Form] Renamed the value "text" of the "widget" option of the "date" type to "single-text" 2011-05-13 19:17:28 +02:00
Bernhard Schussek
7570e04589 [Form] Implemented getAllowedOptionValues() for core types 2011-05-13 18:58:19 +02:00
Victor Berchet
ae4bfbada4 [Form] fix calling closures 2011-05-13 11:01:31 +02:00
Victor Berchet
b2b3b190ef [Form] Add a missing property delcaration in the ResizeFormListener 2011-05-13 11:01:27 +02:00
Jeremie Augustin
0077963584 fix file permissions to 644 2011-05-11 11:19:21 +02:00
Jeremie Augustin
b5277752b7 [Form] add type_options for CollectionType to be abble to set options to type 2011-05-11 11:19:21 +02:00
Victor Berchet
2db53b5e28 [Form] Order method according to their visibility to respect the CS 2011-05-11 11:00:32 +02:00
Fabien Potencier
1ae5ef6849 Merge remote branch 'vicb/form-padded-choice-list'
* vicb/form-padded-choice-list:
  [Form] Allow for arbitrary keys in PaddedChoiceList
2011-05-11 10:18:30 +02:00
Fabien Potencier
b62cd109f0 Merge remote branch 'vicb/form-fixes'
* vicb/form-fixes:
  [Form] Make the PropertyPathMapper class use the UnexpectedTypeException
  [Form] Fix adding transformers in the FormBuilder
  [Form] Fix the ReversedTransform class
2011-05-11 10:13:24 +02:00
Fabien Potencier
9651175914 Merge remote branch 'vicb/form-transformers'
* vicb/form-transformers:
  [Form] Add argument type checking in BaseDateTimeTransformer
  [Form] Catch exceptions in DataTransformers
2011-05-11 10:12:23 +02:00
Fabien Potencier
723a8f2bf3 [Form] fixed CS 2011-05-11 10:09:27 +02:00
Victor Berchet
adef14f687 [Form] Make the PropertyPathMapper class use the UnexpectedTypeException 2011-05-10 20:25:46 +02:00
Victor Berchet
2e68801ff3 [Form] Add argument type checking in BaseDateTimeTransformer 2011-05-10 20:21:02 +02:00
Victor Berchet
dac798c791 [Form] Catch exceptions in DataTransformers 2011-05-10 20:21:02 +02:00
Victor Berchet
aa71d16812 [Form] Make TimezoneChoiceList implement ChoiceListInterface rather than extend ArrayChoiceList 2011-05-10 20:14:11 +02:00
Victor Berchet
2d62dfdf83 [Form] Fix some phpDoc 2011-05-10 16:55:05 +02:00
Victor Berchet
2a8f2d2bfa [Form] fix and add some phpDoc 2011-05-10 15:33:02 +02:00
Victor Berchet
6c337d1cc0 [Form] Do not set the value attribute for file inputs 2011-05-09 17:00:19 +02:00
Victor Berchet
e0f03471ae Merge branch 'master' into form-padded-choice-list 2011-05-09 15:30:04 +02:00
Kris Wallsmith
f3b077a0dd [Form] removed a bunch of unused use statements 2011-05-06 14:07:16 -07:00
Victor Berchet
68b3d0d5ac [Form] Allow for arbitrary keys in PaddedChoiceList 2011-05-06 10:31:51 +02:00
Michel Weimerskirch
476644a92c [Form] Support for the HTML5 "pattern" attribute, see http://www.whatwg.org/specs/web-apps/current-work/multipage/common-input-element-attributes.html#the-pattern-attribute
If you use the MinLength validator with your entities, the ValidatorTypeGuesser gets the value, stored as "minlength". Then, the FormFactory generates a "pattern" attribute out of minlength and maxlength.
Modern browsers such as Chrome use this attribute to validate the form before submitting.
a "pattern" attribute is generated that validates the
2011-05-04 23:16:41 +02:00
Bernhard Schussek
74cca63938 [Form] CSRF fields are not included in the children of a FormView anymore if the view is not the root 2011-05-04 18:27:20 +02:00
Bernhard Schussek
3cc5d9f4cd [Form] Split the option "modifiable" of the "collection" type into "allow_add" and "allow_delete" 2011-05-04 17:29:59 +02:00
Bernhard Schussek
bf1dfbbe99 [Form] Added test for last commit by kriswallsmith and improved dealing with original names
The form component should now guarantee to always pass an UploadedFile object to your model. There you can call getOriginalName() to retrieve the original name of the uploaded file. For security reasons, the real file name is a generated hash value.
2011-05-04 17:04:44 +02:00
Kris Wallsmith
4ea274244d [Form] updated listener to check that data is an array 2011-05-02 15:56:35 -07:00
Amal Raghav
26bfa43bfc fixed a typo 2011-04-28 23:37:40 +05:30
Fabien Potencier
05f1481c6a [Form] added the possibility to configure the CSRF field name and the disabling of the CSRF feature altogether 2011-04-28 11:28:44 +02:00
Fabien Potencier
751eaab326 Merge remote branch 'mweimerskirch/form_fixes'
* mweimerskirch/form_fixes:
  Fix DateTimeType by adding missing default options
2011-04-28 08:18:28 +02:00
Fabien Potencier
f865a79742 [Form] fixed DateTimeToTimestampTransformer to use the proper exception class 2011-04-28 08:07:19 +02:00
Fabien Potencier
0007702321 Merge remote branch 'Seldaek/datetime'
* Seldaek/datetime:
  [Form] Use proper transformation exception in case of failure
2011-04-28 08:05:08 +02:00
Jeremy Mikola
f59423626a [Form] Remove unnecessary use statements in EventListeners 2011-04-27 12:18:45 -04:00
Eriksen Costa
164ce5210d capitalized 'boolean' 2011-04-27 02:35:10 -03:00
Eriksen Costa
4db0752894 replaced 'bool' with 'Boolean' 2011-04-27 02:35:03 -03:00
Jordi Boggiano
d11b7baa7e [Form] Use proper transformation exception in case of failure 2011-04-26 16:02:01 +02:00
Michel Weimerskirch
87c609b4a4 Fix DateTimeType by adding missing default options 2011-04-26 14:21:00 +02:00
Victor Berchet
f83e92bf44 Make casting scalar to array consistent 2011-04-26 12:16:35 +02:00
Fabien Potencier
c0a160b5f9 partially reverted previous merge 2011-04-24 22:02:19 +02:00
Fabien Potencier
c6e0ccfdcd Merge remote branch 'pborreli/form-typo'
* pborreli/form-typo:
  [Form] Fixed typos
2011-04-24 21:56:47 +02:00
Fabien Potencier
2f3ddb88ef Merge remote branch 'bschussek/form'
* bschussek/form:
  [Form] Automatically setting "data_class" option if objects are passed at the creation of a form
  [Form] Improved the way passed data is handled in FormFactory
  [Form] Simplified FileType code
  [HttpFoundation] TemporaryStorage automatically creates the directory if it doesn't exist yet
  [Form] Changed FormBuilder::build() to FormBuilder::create(). You hvae to pass the resulting builder to FormBuilder::add() manually now
  [Form] Added FieldTypeValidatorExtension and fixed FQCN of DelegatingValidator
2011-04-24 21:53:24 +02:00
Pascal Borreli
06b3c386d9 [Form] Fixed typos 2011-04-24 14:05:16 +00:00
Fabien Potencier
08bf2af455 fixed email 2011-04-24 13:59:46 +02:00
Bernhard Schussek
e790587dc2 [Form] Automatically setting "data_class" option if objects are passed at the creation of a form
$form = $this->get('form.factory')->create(new PostType(), $post);
2011-04-24 13:38:12 +02:00
Bernhard Schussek
335f7e776a [Form] Simplified FileType code 2011-04-24 12:08:56 +02:00
Ryan Weaver
181ef3cc08 [Form] Removing an unused variable in TimeType 2011-04-23 20:52:26 -05:00
Ryan Weaver
af8aad9c34 [Form] Throwing exception for invalid "input" type of DateType
Also fixed typo in test of previous commit
2011-04-23 20:36:40 -05:00
Ryan Weaver
f435ed7e7e [Form] Removing unused private property and adding PHPDoc 2011-04-23 20:14:12 -05:00
Ryan Weaver
78b2062c5e [Form] Adding an exception for an invalid widget option in DateType 2011-04-23 19:42:40 -05:00
Pascal Borreli
8c0beea677 [Phpdoc] Cleaning/fixing 2011-04-23 15:18:47 +00:00
Fabien Potencier
50d3c92e22 tweaked TemporaryStorage directory creation 2011-04-23 15:19:30 +02:00
Fabien Potencier
b69c5956d3 [Form] added missing use statement 2011-04-23 09:27:47 +02:00
Bernhard Schussek
6f1bc356a8 [Form] Refactored code from CoreExtension to new ValidatorExtension
CoreExtension is now independent of the Symfony2 validator.
2011-04-22 19:38:21 +02:00
Bernhard Schussek
1ce2db87e2 [Form] Added FormTypeExtensionInterface
With implementations of this interface, existing types can be amended.
The Csrf extension, for example, now contains a class FormTypeCsrfExtension
that adds CSRF capabilities to the "form" type.

To register new type extensions in the DIC, tag them with "form.type_extension"
and the name of the extended type as alias.
2011-04-22 19:24:38 +02:00
Bernhard Schussek
54e66c518f [Form] Reorganized code into "form extensions"
The extension classes are now the only constructor argument of the FormFactory class. They replace the existing "type loader" classes.

    new FormFactory(array(
        new CoreExtension($validator, $storage),
        new CsrfExtension($csrfProvider),
        new DoctrineOrmExtension($em),
    ));

Together with a few upcoming commits this mechanism will make

 * extension of the form framework in bundles and
 * usage of the forms outside of Symfony2

much easier.
2011-04-22 17:41:21 +02:00
Bernhard Schussek
d152b5e265 [Form] Moved Doctrine2 specific files 2011-02-01 15:27:12 +01:00
Bernhard Schussek
3bf9f7782d [DoctrineBundle][Form] Implemented EntityFieldFactoryGuesser 2011-02-01 15:27:12 +01:00
Bernhard Schussek
347c069e8d [DoctrineBundle][Form] Implemented EntityChoiceField 2011-02-01 15:27:12 +01:00