* bschussek/form: (22 commits)
Fix merge error (function "guess" was in there twice)
[Form] Added test case for bf2f9d2a02
[Form] Form::isBound() and Form::isValid() work correctly now for read-only forms
[Locale] Improved error reporting and added stubs for intl_is_failure(), intl_get_error_code() and intl_get_error_message()
[Form] Implemented fix for 361c67f54f
[Form] Add test for the handling of array values in the constraint violation
[Form] Further simplified PropertyPath code
[Form] Added test for 6c337d1cc0
[Form] Removed unused option "pattern" of date and time type
[Form] Renamed view variable "name" to "full_name"
[Form] Renamed collection option "type_options" to "options" to be consistent with the repeated type
[Form] CSRF documentation and a few CS changes
[Form] Move CSRF options from types to the CSRF extension
[Form] Added a search form field type
[Form] Optimization of PropertyPath
[Form] replace assertEquals by assertFalse, assertTrue, assertNull
[Form] fix file permissions to 644 again ;)
[Form] add tests for type_options in collectionType
fix file permissions to 644
[Form] add type_options for CollectionType to be abble to set options to type
...
* kriswallsmith/assetic/combine:
[AsseticBundle] added missing filter to test
[AsseticBundle] added config for cssimport filter
[AsseticBundle] added config for packager filter
[AsseticBundle] removed problematic test
[AsseticBundle] fixed various bugs in PHP templating, added new "combine" option
* beberlei/DoctrineUniqueValidator:
[Doctrine] Fix default value to null for entity manager to make fluent integration with Doctrine Registry work
[Doctrine] Add fields as default option and allow strings to be passed.
[Doctrine] Add DoctrineBundle integration (DI Container registration) for the UniqueEntityValidator
[Doctrine] Implement suggested changes by Stof, added functional test to verify unique validator works.
[Doctrine] Add Unique Validator
* kriswallsmith/assetic/dump-fixes:
[AsseticBundle] fixed command unit test
[AsseticBundle] added env and debug mode to assetic:dump output
[AsseticBundle] made --watch sleep period a command option
[AsseticBundle] added a --force option to assetic:dump --watch
[AsseticBundle] fixed typo in dump --watch
* danielholmes/widget_templates:
[TwigBundle] fixed form templates so divs won't have all the input attributes, some of which are invalid (such as required, maxlength, name, etc)
I found the language to be a bit technical, and therefore not totally obvious what these tasks do to the layman.
The language here tries to talk more about "generating/executing SQL" so that people know that these are the commands that handle DB table changes.
* kriswallsmith/assetic/auto-filters:
[AsseticBundle] parameter cleanup
[AsseticBundle] updated apply_to configuration to accept an array of patterns
[AsseticBundle] added configuration for automatically apply filters to assets based on target path
* kriswallsmith/assetic/asset-config:
Revert "[AsseticBundle] updated configuration to assume values with integer keys are inputs"
[AsseticBundle] updated configuration to assume values with integer keys are inputs
[AsseticBundle] made test of route loader less brittle
[AsseticBundle] added the ability to define assets outside of the view layer
[AsseticBundle] injected container into factory for better stability
* bschussek/form_validator:
[Form] Renamed the value "text" of the "widget" option of the "date" type to "single-text"
[Form] Implemented getAllowedOptionValues() for core types
[Form] Removed unused option
[Form] Added FormTypeInterface::getAllowedOptionValues() to better validate passed options
[Form] Improved test coverage of FormFactory and improved error handling
[Form] Added getType() to FormFactoryInterface
[Validator] Refactoring DateTimeValidator and DateValidator
[Validator] Date: check if the value is a DateTime instance
* danielholmes/functional_test_changes:
[FrameworkBundle] fixed CS
[FrameworkBundle][HttpKernel] added a default tearDown on the WebTestCase which will shut down the currently used kernel (if there is one) in Web functional tests
* schmittjoh/security:
[HttpFoundation] added unit test
[Security][HttpFoundation] splits Request::hasSession() into hasSession(), and hasPreviousSession()
[SecurityBundle] added some tests
add provider to configuration
update DI to handle change in config and another provider
separate dbal specific acl config
add provider to configuration
update DI to handle change in config and another provider
separate dbal specific acl config
As it has recently been discussed [on the mailing-list][1], windows doesn't
support symlinks for the assets:install command. In order to avoid a 'call to
undefined-function'-message in this case, this patch adds an exception which
will be thrown when the symlink-funktion isn't present and the
`--symlink`-Option was specified.
[1]: https://groups.google.com/group/symfony-devs/browse_thread/thread/4b8ad9634bdab155
* kriswallsmith/assetic/dump-fix:
[AsseticBundle] made some methods private
[AsseticBundle] added a test of dumping in debug mode
[AsseticBundle] added test of dumping one asset
[AsseticBundle] added the beginnings of a test class for the assetic:dump command
[AsseticBundle] updated dump command to dump leaf assets per debug mode
[AsseticBundle] rearranged execute() method
[AsseticBundle] moved debug flag to object property
[AsseticBundle] moved asset manager to object property
[AsseticBundle] moved base path to object property
Running it before other onCoreResponse listeners avoids seeing them
as called listeners in the event panel. The priority is set to -100
because it has to be called before the WebProfilerListener (-128) so
that the token is set.
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
* bschussek/form:
[Form] CSRF fields are not included in the children of a FormView anymore if the view is not the root
[Form] FormView::offsetUnset() is now supported. It was possible anyway using getChildren() and setChildren().
[Form] Split the option "modifiable" of the "collection" type into "allow_add" and "allow_delete"
[Form] Added test for last commit by kriswallsmith and improved dealing with original names
[Form] Fixed variable scope when entering nested form helpers
[Form] Added tests for blocks/templates in the format _<ID>_(widget|row|label|...)
[Form] updated listener to check that data is an array
You can now configure your Doctrine metadata in one single file named 'doctrine':
Resources/config/doctrine.orm.dcm.yml
Resources/config/doctirne.orm.dcm.xml
You can still use one file per entity, but the directory has changed (see the UPDATE file)
* Bart00/patch-1:
Change "zou moeten" to "moet", ("zou moeten" implies that the problem is not so severe and was translated from english too literally) Also fixes some typo's
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.
Resetting an entity manager has a lot of consequences and the developer should
be aware of that. So, instead of implicitly reset an entity manager when it is
closed, the developer should reset it by hand if he thinks that this is
possible:
$em = $this->get('registry')->getEntityManager();
$em->getConnection()->beginTransaction(); // suspend auto-commit
try {
//... do some work
} catch (Exception $e) {
$em->getConnection()->rollback();
$em->close();
$this->get('registry')->resetEntityManager();
}
// you will get a new one
$em = $this->get('registry')->getEntityManager();
The consequence of this commit is that variables are accessible that have been passed to a surrounding form helper.
Example template:
{% block my_widget_label %}
<label>{{ label }}
{% endblock %}
{% block my_widget_row %}
{# It is not necessary to explicitely pass through the label variable #}
{{ form_label(form) }}
{{ form_widget(form) }}
{% endblock %}
Example usage:
{{ form_row(form.mywidget, { 'label': 'My Widget' }) }}
The doctrine:generate:entities is now able to generate classes
based on a bundle name, a class name, or a namespace.
The command has still some limitations which will be hopefully
be fixed later on.
If also generates the repository class when possible
(replaces the doctrine:generate:repositories command).
$em = $this->get('doctrine')->getEntityManager();
$em->getConnection()->beginTransaction(); // suspend auto-commit
try {
//... do some work
} catch (Exception $e) {
$em->getConnection()->rollback();
$em->close();
// get a new EM
$em = $this->get('doctrine')->getEntityManager();
}
The Registry knows all connections and entity managers declared into a service
container. The Registry is available via the 'doctrine' service.
If can be used to get connections and entity managers by name:
Before:
$em = $this->get('doctrine.orm.entity_manager');
$em = $this->get('doctrine.orm.foobar_entity_manager');
After:
$em = $this->get('doctrine')->getEntityManager();
$em = $this->get('doctrine')->getEntityManager('foobar');
It is better for several reasons:
* we rely less on naming conventions
* IDEs will be able to auto-complete methods