Commit Graph

2794 Commits

Author SHA1 Message Date
Victor Berchet
3bfb599074 [Config] Simplify ScalarNode by inheriting from VariableNode 2011-02-24 16:31:00 +01:00
Fabien Potencier
691c9f5950 Merge remote branch 'marphi/fix_assetic'
* marphi/fix_assetic:
  [AsseticBundle] fix fatal error - missing argument assetic.asset_manager in definition assetic.asset_manager_cache_warmer serivce
2011-02-24 15:52:13 +01:00
Fabien Potencier
2ad21ed41f Merge remote branch 'lsmith77/fixture_2_migration'
* lsmith77/fixture_2_migration:
  cosmetic tweak
  initial steps to handling objects
  A command to generate a migration from the sql queries executed when you load some data fixtures.
2011-02-24 15:50:59 +01:00
Fabien Potencier
71a06f0174 Merge remote branch 'kriswallsmith/assetic/stylus-filter'
* kriswallsmith/assetic/stylus-filter:
  [AsseticBundle] added stylus filter
2011-02-24 15:49:23 +01:00
Michel Weimerskirch
6998e593e0 Added line number to TransChoiceTokenParser exception message (TwigBundle). 2011-02-24 06:47:45 -08:00
Kris Wallsmith
2b2a7f0a1d added nowrap style to WDT toolbar so image and text stays together when the toolbar wraps 2011-02-24 06:14:08 -08:00
Kris Wallsmith
9f2d59c489 [AsseticBundle] added stylus filter 2011-02-24 05:48:15 -08:00
Victor Berchet
38da529997 [Kernel] Get rid of Kernel::registerRootDir() 2011-02-24 14:02:28 +01:00
Michel Weimerskirch
5f0d83662c Simplified EmailValidator using native PHP validation function. 2011-02-24 04:30:23 -08:00
Victor Berchet
788f63d460 [FrameworkBundle] Simplify the over-complicated template cache warmer 2011-02-24 13:02:35 +01:00
Lukas Kahwe Smith
e356c2a902 cosmetic tweak 2011-02-24 11:57:32 +01:00
Lukas Kahwe Smith
988b8f3736 initial steps to handling objects 2011-02-24 10:44:47 +01:00
Fabien Potencier
79bc233344 [TwigBundle] fixed typo 2011-02-24 09:46:59 +01:00
Jeremy Mikola
5113886f34 [Security] Copy token attributes when auth providers create a new token from another
PreAuthenticatedAuthenticationProvider and UserAuthenticationProvider tend to copy a token instead of modifying it during their authenticate() methods, which is probably a good idea if the token might be immutable. Ensure that the token's attributes get copied along with everything else.
2011-02-23 16:03:01 -05:00
Igor Wiedler
bcca989c41 [Locale] refactor and simplify some parts of StubIntlDateFormatter 2011-02-23 19:09:48 +01:00
Bernhard Schussek
4af27bd590 [Locale] Added stubs for \Collator and \IntlDateFormatter 2011-02-23 14:46:27 +01:00
Igor Wiedler
ee5bc36c55 [Locale] add docblocks to StubIntlDateFormatter and adjust some things to be more like StubNumberFormatter 2011-02-23 14:20:47 +01:00
Igor Wiedler
7b2b025ebd [Locale] add @author tag to StubCollator 2011-02-23 14:20:46 +01:00
Igor Wiedler
30ea2bae32 [Locale] add @author tag to StubIntlDateFormatter 2011-02-23 14:20:46 +01:00
Igor Wiedler
96b7c8ff73 [Locale] initial stub of StubCollator with class constants 2011-02-23 14:20:45 +01:00
Igor Wiedler
3cc60f7cb4 [Locale] throw NotImplementedException on unimplemented chars 2011-02-23 14:20:45 +01:00
Igor Wiedler
577dd30927 [Locale] remove setLocale from StubIntlDateFormatter 2011-02-23 14:20:45 +01:00
Igor Wiedler
53839f9235 [Locale] refactor tests, make use of specialized exception 2011-02-23 14:20:45 +01:00
Igor Wiedler
77258223f1 [Locale] re-order StubIntlDateFormatter methods, rename timezoneId to timeZoneId, add setLenient method 2011-02-23 14:20:44 +01:00
Igor Wiedler
1191ab4b56 [Locale] add remaining IntlDateFormatter methods with tests 2011-02-23 14:20:44 +01:00
Igor Wiedler
69b38faff7 [Locale] refactoring and some more tests 2011-02-23 14:20:44 +01:00
Igor Wiedler
1f248652cc [Locale] minor naming change 2011-02-23 14:20:43 +01:00
Jordi Boggiano
bfbc8f63fa [Locale] Fixed implementation of quote parsing and replacement 2011-02-23 14:20:43 +01:00
Igor Wiedler
c7380fbb4c [Locale] support standard date and time types if no format is set, refactoring and more tests 2011-02-23 14:20:42 +01:00
Igor Wiedler
d3a63d35d4 [Locale] slightly adjust regex for matching quotes 2011-02-23 14:20:42 +01:00
Igor Wiedler
632ded5c96 [Locale] use UTC if timezone is unsupported 2011-02-23 14:20:42 +01:00
Igor Wiedler
a883a3f62a [Locale] adjust to new quoting format, some tests failing 2011-02-23 14:20:42 +01:00
Igor Wiedler
cc6f996334 [Locale] add a list of unimplemented date format keywords 2011-02-23 14:20:41 +01:00
Igor Wiedler
cbfaaef76e [Locale] support for z (timezone offset from GMT) 2011-02-23 14:20:41 +01:00
Igor Wiedler
d68c5fa7fd [Locale] refactor to use DateTime and DateTimeZone, adding timezone support 2011-02-23 14:20:41 +01:00
Igor Wiedler
7efe476693 [Locale] support for s (second) 2011-02-23 14:20:41 +01:00
Igor Wiedler
87d3547679 [Locale] support for m (minute of hour) 2011-02-23 14:20:40 +01:00
Igor Wiedler
6b26f8296d [Locale] support for K (12-hour (0-11)) 2011-02-23 14:20:40 +01:00
Igor Wiedler
5a767045b6 [Locale] implement k (24-hour (1-24) 2011-02-23 14:20:40 +01:00
Igor Wiedler
42a652ce3d [Locale] refactor IntlDateFormatter::format to build regExp dynamically 2011-02-23 14:20:40 +01:00
Igor Wiedler
bfc7e55692 [Locale] support for H (24 hour) 2011-02-23 14:20:39 +01:00
Igor Wiedler
71e3c97358 [Locale] support for a (AM/PM) 2011-02-23 14:20:39 +01:00
Igor Wiedler
49752f104b [Locale] support for E (day of week) 2011-02-23 14:20:39 +01:00
Igor Wiedler
d4c1357f11 [Locale] support for D (day of year) 2011-02-23 14:20:39 +01:00
Igor Wiedler
5ffce2d6a2 [Locale] add support for h 2011-02-23 14:20:39 +01:00
Igor Wiedler
ae3ee5d896 [Locale] add support for L, which is the same as M 2011-02-23 14:20:38 +01:00
Igor Wiedler
b702ce86b5 [Locale] support for G and Q placeholders in StubIntlDateFormatter::format 2011-02-23 14:20:38 +01:00
Igor Wiedler
8c1146974f [Locale] add support for escaping, give specifics on implementation used in tests 2011-02-23 14:20:38 +01:00
Igor Wiedler
55ac407458 [Locale] first implementation of StubIntlDateFormatter 2011-02-23 14:20:37 +01:00
Bernhard Schussek
404f83ccc3 [Locale] Added stubs as a replacement for the intl extension
You can enable the stubs by including the following code in app/autoload.php:

$loader->registerPrefixFallback(array(
    __DIR__.'/../vendor/symfony/src/Symfony/Component/Locale/Resources/stubs',
));

If the intl extension is not loaded, the stub classes for the "en" locale
will be created automatically.
2011-02-23 13:26:05 +01:00
Eriksen Costa
b649843e00 [Locale] added implementation to StubNumberFormatter::getLocale(), matching StubIntlDateFormatter::getLocale() 2011-02-23 13:26:05 +01:00
Eriksen Costa
b58e25cc83 [Locale] added static constructor 2011-02-23 13:26:05 +01:00
Eriksen Costa
69b0e09d6a [Locale] added stub implementations of Locale and NumberFormatter classes
Updated update-data.php script to extract locales, countries names, languages and currencies
from ICU to be used by the stub implementations
2011-02-23 13:26:05 +01:00
Marcin Sikon
491ee20392 [AsseticBundle] fix fatal error - missing argument assetic.asset_manager in definition assetic.asset_manager_cache_warmer serivce 2011-02-23 11:46:32 +01:00
Kris Wallsmith
3fb935de35 [AsseticBundle] removed PHP_CodeSniffer dependency 2011-02-23 00:21:17 -08:00
Fabien Potencier
d2840aaad3 [AsseticBundle] fixed unit tests 2011-02-23 07:19:00 +01:00
Kris Wallsmith
b622e6a9e6 [AsseticBundle] added skip if PHP_CodeSniffer is not installed (closes #14) 2011-02-22 21:16:48 -08:00
Jonathan H. Wage
0f353c1411 A command to generate a migration from the sql queries executed when you load some data fixtures. 2011-02-22 20:54:40 -06:00
Matthew Lewinski
4f54aacfc7 [Form] Fix infinite recursion in RadioField->getName() 2011-02-22 20:38:29 -06:00
Kris Wallsmith
d7ea92a0f6 [AsseticBundle] updated for latest assetic development 2011-02-22 16:58:10 -08:00
Fabien Potencier
f54cedfe5e added LICENSE files for the subtree repositories 2011-02-22 18:58:15 +01:00
Kris Wallsmith
7c794b349d [HttpKernel] fixed typo 2011-02-22 07:38:03 -08:00
Marcin Sikon
efb561767b [AsseticBundle] fix AsseticController - removed response service dependency 2011-02-22 16:12:12 +01:00
Fabien Potencier
c63e1ace81 Merge remote branch 'kriswallsmith/assetic-renames'
* kriswallsmith/assetic-renames:
  [AsseticBundle] renamed some classes
2011-02-22 14:14:09 +01:00
Fabien Potencier
cef86a3771 [HttpKernel] added a way to change the ESI cache strategy 2011-02-22 13:50:26 +01:00
Kris Wallsmith
bd32e3eea8 [AsseticBundle] renamed some classes 2011-02-21 22:18:50 -08:00
Kris Wallsmith
a0bae94f88 [HttpFoundation] updated ResponseHeaderBag to compute Cache-Control whenever any of the headers it considers changes 2011-02-21 19:57:05 -08:00
Fabien Potencier
e8144e473e [Templating] added getPath() to TemplateReferenceInterface as it's used in the child class in FrameworkBundle 2011-02-21 19:24:27 +01:00
Fabien Potencier
72cdb480ab [FrameworkBundle] made CachedTemplateLocator fallback to the regular TemplateLocator if the template is not in the cache (to be able to use an absolute template) 2011-02-21 19:23:57 +01:00
Fabien Potencier
fc372bc217 [HttpKernel] changed core.view event to use notifyUntil() instead of filter() -- as soon as a listener returns a Response, we are done 2011-02-21 18:24:55 +01:00
Fabien Potencier
353177d1d6 replaced Response::createRedirect by a new RedirectResponse class 2011-02-21 18:10:53 +01:00
Fabien Potencier
d94acd85f9 remove response as a service
The Response is not available in the DIC anymore.

When you need to create a response, create an instance of
Symfony\Component\HttpFoundation\Response instead.

As a side effect, the Controller::createResponse() and Controller::redirect()
methods have been removed and can easily be replaced as follows:

  return $this->createResponse('content', 200, array('foo' => 'bar'));
  return new Response('content', 200, array('foo' => 'bar'));

  return $this->redirect($url);
  return Response::createRedirect($url);
2011-02-21 17:36:04 +01:00
Fabien Potencier
bf20238178 fixed a bug in Response content-type auto-detection
Without this patch, if you call __toString() on a Response,
the content-type auto-detection would never be trigerred
as __toString() changes the default content-type.
2011-02-21 16:57:25 +01:00
Johannes M. Schmitt
f21578e819 [Security] adds abstract user provider definition 2011-02-21 12:15:29 +01:00
Fabien Potencier
7c9528be7b [FrameworkBundle] tweaked init:bundle skeleton 2011-02-21 11:52:48 +01:00
Fabien Potencier
7a614cb1ea [Swiftmailer] fixed the determination of the default port 2011-02-21 11:35:47 +01:00
Fabien Potencier
0dfd5960f1 Merge remote branch 'stof/swiftmailer'
* stof/swiftmailer:
  Splitted swiftmailer configuration to avoid issues when not using smtp
2011-02-21 11:28:40 +01:00
Fabien Potencier
d4fc3c98b1 [FrameworkBundle] updated the init:bundle skeleton files 2011-02-21 11:26:58 +01:00
Fabien Potencier
b9168bb652 Merge remote branch 'fabriceb/initbundleformat'
* fabriceb/initbundleformat:
  [FrameworkBundle] added --format=xml,php,yml optional parameter to the init:bundle command
2011-02-21 11:20:04 +01:00
Wojciech Sznapka
6e1202961d translated validator resources into Polish 2011-02-21 11:12:13 +01:00
Christophe Coevoet
e729589b10 Splitted swiftmailer configuration to avoid issues when not using smtp 2011-02-21 10:41:15 +01:00
Fabien Potencier
9619c7dade [Routing] removing the routing hack where we add a / at the beginning if it does not exist 2011-02-21 10:25:22 +01:00
Fabien Potencier
8a8c733369 [HttpKernel] added the possibility to define a parent token for a token in the profiler
Note that this is not used yet. I make this change now because the interface needs to be changed.
2011-02-20 21:29:04 +01:00
Lukas Kahwe Smith
c518074306 added a DI extension for DoctrineMigrations, removed --bundle option in favor of application level settings 2011-02-20 18:38:02 +01:00
Fabien Potencier
eb5877c16a fixed case problem 2011-02-20 10:11:55 +01:00
Fabien Potencier
23e9386a0e changed all extensions to use the default Extension::getAlias() impl 2011-02-20 08:58:37 +01:00
Ray
8e2d7edb8c Attempt to create a reasonable default based on the rules enforced in
src/Symfony/Component/HttpKernel/bootstrap.php
  from commit: 14aa95ba21
2011-02-20 08:53:53 +01:00
Jeremy Mikola
f4c0af76e7 [TwigBundle] Allow arbitrary variables to be accepted as values for globals
This fixes a regression introduced when TwigExtension was refactored to utilize the Config component.
2011-02-20 00:59:18 -05:00
Jeremy Mikola
608e443c97 [Config] Create VariableNode, which mimics ScalarNode but omits type-checking
This allows for configuration options that must accept arbitrary variables. Even if the node's value is an array, VariableNode will not perform any special processing/merging as is done for ArrayNode. It functionally behaves like a ScalarNode.
2011-02-20 00:59:18 -05:00
Fabien Potencier
28bf834c0c [WebProfilerBundle] made the WDT less intruisive by moving it to its own Ajax request 2011-02-19 23:05:22 +01:00
Fabien Potencier
eda74755ba [ZendBundle] only load the logger if there is a config 2011-02-19 19:21:09 +01:00
Fabien Potencier
9a25878109 [FrameworkBundle] removed the Welcome page and moved it to the sandbox/standard distrib 2011-02-19 18:55:33 +01:00
Fabien Potencier
678e2f65ad Merge remote branch 'stof/default_template'
* stof/default_template:
  Use well-formed HTML in the default page
2011-02-19 18:51:49 +01:00
Fabien Potencier
d6c277f5c4 Merge remote branch 'stof/escaping'
* stof/escaping:
  Fixed escaping for arguments
2011-02-19 18:50:32 +01:00
Christophe Coevoet
e9c7188fc1 Use well-formed HTML in the default page 2011-02-19 18:21:12 +01:00
Fabien Potencier
67ec6e5d94 Merge remote branch 'hidenorigoto/fix-profiler-header'
* hidenorigoto/fix-profiler-header:
  [WebProfilerBundle]link to the original url to go back to the application easily
2011-02-19 17:32:19 +01:00
Fabien Potencier
b44d044b0a [HttpKernel] removed the bootstrap files as they do not belong to the component
As these files are just about optimizing the performance,
they are now part of the sandbox and the upcoming standard
Symfony distribution.

It should also make your IDE happier!
2011-02-19 17:17:38 +01:00
hidenorigoto
bbdbd81877 [WebProfilerBundle]link to the original url to go back to the application easily 2011-02-20 01:05:31 +09:00
Christophe Coevoet
857a9f3b8b [WebProfilerBundle] Fixed template to work with the new behavior of {% set %} 2011-02-19 16:54:34 +01:00
Fabien Potencier
418655e571 Merge remote branch 'stof/config_path'
* stof/config_path:
  Fixed path for finalization errors when using a prototype
2011-02-19 16:15:13 +01:00
Fabien Potencier
a3207e939f removed CompatAssetsBundle, use AsseticBundle instead 2011-02-19 16:13:53 +01:00
Christophe Coevoet
fc9ff68052 Fixed path for finalization errors when using a prototype 2011-02-19 16:04:53 +01:00
Fabien Potencier
3cbbd66d33 Merge remote branch 'dator/send_email_command'
* dator/send_email_command:
  Fix description
  Add an example using the options in the help message
  Fix CS
  [SwiftMailer] Add the SendEmail Command (for the spool)
2011-02-19 15:40:45 +01:00
Fabien Potencier
f6e624b1e2 [TwigBundle] changed all Boolean to string in XSD as you might want to use a parameter %...% 2011-02-19 15:36:41 +01:00
Fabien Potencier
4833acf301 Merge remote branch 'opensky/TwigExtension-configuration'
* opensky/TwigExtension-configuration:
  [TwigBundle] Refactored TwigExtension class and implemented configuration tree
2011-02-19 15:35:09 +01:00
Fabien Potencier
f849353118 Merge remote branch 'weaverryan/config_definition_changes'
* weaverryan/config_definition_changes:
  [SecurityBundle] Allowing the main Configuration tree to allow "factories" without a validation exception.
  [SecurityBundle] Removing an old configuration key in a test - caught by the Configuration validation.
  [SecurityBundle] Adding the ignoreExtraFields option to the factories tree so that there aren't validation errors on all the other unknown fields.
  [Config] Adding an ignoreExtraKeys options, which allows you to let options simply be ignore without throwing a validation exception.
  [Config] Reverting some meaningless changes that are no longer needed to minimize the true diff of the changes. Increasing the test precision.
  [Config] Reverting the preventExtraKeys option. This is a revert of functionality that would have allowed "unnamed" children to be added to an array node.
  [Config] Moving the removal of the key attribute on ArrayNode onto the setKeyAttribute() method per Johannes.
  [Config] Renaming the key attribute removal property for consistency per Johannes' recommendation. Also fixing a PHPDoc typo per Stof.
  [SwiftmailerBundle] Removing unnecessary "enabled" key in a test.
  [FrameworkBundle] Removing the "namespace" key when it's defined in its own weird location in XML. This prevents that key, which we move in this same location, from looking like an invalid option during validation.
  [Config] Renaming NodeBuilder::nodeBuilder() to NodeBuilder::builder() due to the fact that PHP can get confused when you have a __construct() method *and* a method that has the same name as the class (looks like two constructors to PHP).
  [Config] Making the option to remove a key attribute optional.
  [Config] Renaming the NodeBuilder::addNodeBuilder() to simply NodeBuilder::nodeBuilder() to be consistent with the other names: node(), arrayNode().
  [Config] Making changes per the recent movement of the Config builder into the Config component.
  [DependencyInjection] Renaming allowUnnamedChildren to preventExtraKeys. Also moved the place where validation of extra configs occurs.
  [DependencyInjection] Being sure to remove XML-remapped singular options and key attribute options after processing.
  [DependencyInjection] Adding a NodeBuilder::addNodeBuilder() method that helps achieve a fluid interface when a pre-built NodeBuilder needs to be added.
  [DependencyInjection] Initial implementation of an allowUnnamedChildren method on NodeBuilder. Also added an "extra field" exception.
2011-02-19 15:32:41 +01:00
Fabien Potencier
0834bf47dc [WebProfilerBundle] removed the WDT on malformed HTML content 2011-02-19 14:41:22 +01:00
Fabien Potencier
2c45611f4e fixed WDT link to the profiler 2011-02-19 14:11:18 +01:00
Fabien Potencier
946d3d9302 fixed previous commit 2011-02-19 13:02:23 +01:00
benjamindulau
f1dd3f22e3 [TwigBundle] adding two global variables : environment & debug + some doc blocks
Use case :
    {% if app.environment == 'prod' %}
        {# e.g google analytics scripts #}
    {% endif %}
2011-02-19 13:00:51 +01:00
Lukas Kahwe Smith
36132ccdf6 small fix for recent refactoring in Doctrine Migrations 2011-02-19 12:34:42 +01:00
Jeremy Mikola
9b15b6950c [AsseticBundle] Sort Twig assets by name before loading for filesystem-independent results
Previously, the unit test was breaking in Ubuntu with an ext4 filesystem, while passing in OSX.
2011-02-19 12:33:20 +01:00
Kris Wallsmith
4ba0e0d5cf [AsseticBundle] fixed bundle notation of inputs 2011-02-19 12:32:56 +01:00
Kris Wallsmith
c01be42933 [AsseticBundle] made the filter manager lazy 2011-02-19 12:31:51 +01:00
Kris Wallsmith
a9fb0f3a4b [AsseticBundle] moved test 2011-02-19 12:31:51 +01:00
Christophe Coevoet
d2684f3f73 [AsseticBundle] Converted to use a Configuration class 2011-02-19 12:30:52 +01:00
Fabien Potencier
dff3585162 fixed profiler when using ESI in dev env 2011-02-19 12:18:49 +01:00
Ryan Weaver
c9406b62b2 [SecurityBundle] Allowing the main Configuration tree to allow "factories" without a validation exception.
The main tree doesn't actually process the factories (that's done in an earlier step), so it doesn't actually need their real value. It does, however, need to *not* throw an exception when they're present. An alternative to this approach would be to call ignoreExtraKeys() on the root node of the main tree, but this would allow extra keys to be passed in at the root level, which I thought was a less-desirable solution.
2011-02-18 16:12:12 -06:00
Ryan Weaver
b20ee0fb71 [SecurityBundle] Removing an old configuration key in a test - caught by the Configuration validation. 2011-02-18 13:36:10 -06:00
Ryan Weaver
a334a576cf [SecurityBundle] Adding the ignoreExtraFields option to the factories tree so that there aren't validation errors on all the other unknown fields. 2011-02-18 13:35:19 -06:00
Ryan Weaver
026ab6c6ce [Config] Adding an ignoreExtraKeys options, which allows you to let options simply be ignore without throwing a validation exception.
I had thought that this was unnecessary - when would you ever want to just let "extra" options fail silently?

But, the SecurityExtension takes advantage of this by creating two separate config trees. The first tree looks for just one particular value on the configuration array and ignores the rest. So, there *is* a use-case for allowing all extra fields to simply be ignored, though this should not be the norm.
2011-02-18 13:31:14 -06:00
Ryan Weaver
d2971e0f5f [Config] Reverting some meaningless changes that are no longer needed to minimize the true diff of the changes. Increasing the test precision. 2011-02-18 13:08:53 -06:00
Ryan Weaver
6f17b6d58e [Config] Reverting the preventExtraKeys option. This is a revert of functionality that would have allowed "unnamed" children to be added to an array node.
We decided that this is not necessary and that it's leaving too many things wide open. Instead, in these cases where we have an array with unknown items, a prototype should be used.

Further functionality will need to be added later to allow you to specify a few nodes that you *do* know about under an array and then also specify a prototype to catch everything else.
2011-02-18 12:59:27 -06:00
Jeremy Mikola
f0d2ce7f32 [TwigBundle] Refactored TwigExtension class and implemented configuration tree
Added config fixtures in each format to demonstrate the possible styles of all of the extension options. These should all be covered by the updated tests. Made XSD slightly more restrictive, with regards to the "type" attribute on globals. This is coupled with validation in the configuration class.
2011-02-18 12:58:04 -05:00
Ryan Weaver
6d24d37b16 [Config] Moving the removal of the key attribute on ArrayNode onto the setKeyAttribute() method per Johannes.
This is more consistent with how this was handled elsewhere, and it really is an "option" on the keyAttribute idea.
2011-02-18 08:41:30 -06:00
Ryan Weaver
48459e9082 [Config] Renaming the key attribute removal property for consistency per Johannes' recommendation. Also fixing a PHPDoc typo per Stof. 2011-02-18 08:38:09 -06:00
Ryan Weaver
663dcbcb32 [SwiftmailerBundle] Removing unnecessary "enabled" key in a test.
I double-checked with Stof - this is obviously unnecessary and there was no meaning behind including it. This caused the test to fail with the new validation.
2011-02-18 07:55:39 -06:00
Ryan Weaver
2d94f2d8d0 [FrameworkBundle] Removing the "namespace" key when it's defined in its own weird location in XML. This prevents that key, which we move in this same location, from looking like an invalid option during validation. 2011-02-18 07:43:36 -06:00
Ryan Weaver
d6617f6fba [Config] Renaming NodeBuilder::nodeBuilder() to NodeBuilder::builder() due to the fact that PHP can get confused when you have a __construct() method *and* a method that has the same name as the class (looks like two constructors to PHP). 2011-02-18 07:31:00 -06:00
Ryan Weaver
ea768fe6fc [Config] Making the option to remove a key attribute optional.
This is *usually* what you want (and is defaulted this way). If you have an entry in an array *just* so it can become the key to that entry later, then you shouldn't normally still need it in the resulting array.

The importance of this comes in with validation. Since we're throwing an exception if you have any unrecognized options, the presence of the "key" field in the resulting array will cause issues when it's not needed.
2011-02-18 07:15:59 -06:00
Ryan Weaver
554628cf5b [Config] Renaming the NodeBuilder::addNodeBuilder() to simply NodeBuilder::nodeBuilder() to be consistent with the other names: node(), arrayNode(). 2011-02-18 07:00:03 -06:00
Ryan Weaver
e7c098e8a2 [DependencyInjection] Renaming allowUnnamedChildren to preventExtraKeys. Also moved the place where validation of extra configs occurs. 2011-02-18 06:52:44 -06:00
Ryan Weaver
fd5cdfc18f [DependencyInjection] Being sure to remove XML-remapped singular options and key attribute options after processing.
This prevents these keys from being validated as extra fields.
2011-02-18 06:52:44 -06:00
Ryan Weaver
bd15ddda96 [DependencyInjection] Adding a NodeBuilder::addNodeBuilder() method that helps achieve a fluid interface when a pre-built NodeBuilder needs to be added. 2011-02-18 06:51:56 -06:00
Ryan Weaver
f5b1cb18e1 [DependencyInjection] Initial implementation of an allowUnnamedChildren method on NodeBuilder. Also added an "extra field" exception.
This allows for an array node, which has any number of child values not represented by nodes.
2011-02-18 06:51:56 -06:00
Miha Vrhovnik
9b602626eb Added missing use statement 2011-02-18 13:48:22 +01:00
hhamon
f985da5a9c [HttpFoundation] fix Cache-Control header when forcing the Response to have an Expires header field. The RFC2616 Bis indicates that if the Response has both max-age (or s-maxage) and Expires header field, the Cache-Control maxage wins over Expires. The previous code in ResponseHeaderBag always returned "private, max-age=0, must-revalidate" even if the Expires header field was forced.
This commit breaks functional tests in Symfony\Component\HttpKernel\HttpCache\HttpCacheTest.php. I tried to fix functional tests but I didn\'t manage to. For your information, the "try { } catch" block in the HttpKernel\HttpCache::lookup() method seems strange because I suspect line 274 to never leverage any exception...
2011-02-18 12:34:33 +01:00
Juan Ases García
2ba9ebfee9 Fixed typo in json error template 2011-02-18 12:10:07 +01:00
Jordi Boggiano
3fbe366df2 [Yaml] Fix warning 2011-02-18 12:08:05 +01:00
Fabien Potencier
75238c6817 added the LICENSE file for the YAML component 2011-02-18 11:52:11 +01:00
Clément Jobeili
e8d39d6d32 Fix description 2011-02-18 10:43:34 +01:00
Clément Jobeili
aef85dde27 Add an example using the options in the help message 2011-02-18 10:41:34 +01:00
Clément Jobeili
438ccbdf8a Fix CS 2011-02-18 10:34:44 +01:00
Clément Jobeili
9b16f1a614 [SwiftMailer] Add the SendEmail Command (for the spool) 2011-02-18 10:22:14 +01:00
Christophe Coevoet
76262b2ccc Fixed spool handling 2011-02-18 08:32:43 +01:00
Christophe Coevoet
b3460653bc Revert "fix spooler handling"
This reverts commit 3607f1d334.
2011-02-18 08:32:43 +01:00
Justin Hileman
b8c531e1fc Add a namespace separator for console commands in Command sub-directories.
Fixes a bug in `Bundle::registerCommands` with console commands in sub-directories of `Command`. `MyBundle\Command\FooCommand` worked great, but with `MyBundle\Command\Bar\BazCommand` Bundle would try to register `MyBundle\CommandBar\BazCommand` instead.
2011-02-17 19:39:21 +01:00
hhamon
b61e288e0b [BrowserKit] fix phpdoc for Client::followRedirect() 2011-02-17 19:38:06 +01:00
hhamon
b687e52835 [DomCrawler] fix Form::getUri() when the form action attribute contains only a sharp (#) character. 2011-02-17 19:37:25 +01:00
Fabien Potencier
6b12c21261 moved DependencyInjection\Configuration to Config\Definition 2011-02-17 16:03:48 +01:00
Jordi Boggiano
38813c122e [TwigBundle] Resolve some TODOs in form templates 2011-02-17 16:00:28 +01:00
Ryan Weaver
c5e4dfb5a6 [DependencyInjection] Adding to InvalidArgumentException messages to clarify when a service is given an invalid "tags" value. 2011-02-17 15:59:39 +01:00
Ryan Weaver
a0fc4240f9 [HttpKernel] Adding a line break to the end of the Kernel die() statements so that the output is more natural when receiving this message from the terminal. 2011-02-17 15:58:45 +01:00
Fabien Potencier
d64277d101 fixed typo 2011-02-17 13:33:15 +01:00
Victor Berchet
0a33cbb403 [Finder] Add support for relative path 2011-02-17 07:23:55 +01:00
Jeremy Mikola
92f50bbe4d [SwiftmailerBundle] Fix expected default value in SwiftmailerExtension unit test 2011-02-17 06:49:28 +01:00
Lukas Kahwe Smith
3607f1d334 fix spooler handling 2011-02-17 06:49:05 +01:00
Christophe Coevoet
9d2a9dd65d Updated the root node to match the new syntax 2011-02-16 23:07:12 +01:00
Christophe Coevoet
990910d601 Converted SwiftmailerBundle to use a Configuration class 2011-02-16 23:07:11 +01:00
Christophe Coevoet
ee8ad0c4e9 Fixed previous commit to handle the case of arrays 2011-02-16 23:07:11 +01:00
Christophe Coevoet
27e2ec139d Added the possibility to add the value in the exception message 2011-02-16 23:07:11 +01:00
Christophe Coevoet
6b4538a1c4 Added the test ifNotInArray 2011-02-16 23:07:11 +01:00
Christophe Coevoet
ef045a9433 Added missing license header in the DependenciInjection\Configuration classes 2011-02-16 23:07:11 +01:00
Christophe Coevoet
077d1921b3 Added the support of the validation in the Builder 2011-02-16 23:07:10 +01:00
Bernhard Schussek
89dbb04c63 [Validator] Made method name shorter 2011-02-16 23:05:22 +01:00
Bernhard Schussek
9569262635 [Form] Fixed date handling classes to use server timezone by default 2011-02-16 23:05:22 +01:00
Bernhard Schussek
0a260b96fb [Form] Fixed error handling in DateTimeToArrayTransformer 2011-02-16 23:05:22 +01:00
Bernhard Schussek
df011ed1ef [Form] Fixed isXXXWithinRange() methods in TimeField and DateField to ignore empty dropdowns 2011-02-16 23:05:22 +01:00
Bernhard Schussek
14c3518c6e [Form] Fixed: If a DateField or TimeField is displayed with select boxes, either all or no select box must have a value selected 2011-02-16 23:05:22 +01:00
Bernhard Schussek
40acc6ac79 [Form] Fixed ChoiceField::isChoiceSelected() to differentiate between zero and empty 2011-02-16 23:05:21 +01:00
Bernhard Schussek
1593d6f75d [Form] Added method FieldInterface::isEmpty() 2011-02-16 23:05:21 +01:00
Bernhard Schussek
f589304fe3 [Form] Added clearer error message for CSRF errors 2011-02-16 23:05:21 +01:00
Jonathan H. Wage
34859999b2 Revert "[DoctrineMongoDBBundle] updated tests to reflect extension changes"
This reverts commit 8c3923e5f59fda3221776c6fc747ca9bd603f9af.
2011-02-16 23:01:37 +01:00
Jonathan H. Wage
20cf9f8a1a Revert "[DoctrineMongoDBBundle] updated DocumentManager definition to reflect latest ODM changes"
This reverts commit 6555013ac4c39e4a39b8d595c834eadc21e4a684.
2011-02-16 23:01:36 +01:00
Johannes M. Schmitt
1a0742003f [Security] use 'database_connection' as default connection for ACL 2011-02-16 23:00:27 +01:00
Johannes M. Schmitt
22947da18d [Security] added some classes to the compilation map 2011-02-16 23:00:27 +01:00
Johannes M. Schmitt
53f3ff8258 [Security] adds a chain user provider 2011-02-16 23:00:27 +01:00
Johannes Schmitt
82c6844147 [Security] moved Security classes out of DoctrineBundle, cleaned-up SecurityExtension accordingly
Note that this commit removes the built-in support for MongoDB user providers.
This code can be moved back in once there is a stable release for MongoDB, but
for now you have to set-up that user provider just like you would set-up any
custom user provider:

    security:
         providers:
             document_provider:
                 id: my.mongo.provider
2011-02-16 23:00:27 +01:00
Johannes Schmitt
dfd921822a [Security/Http] Adds CSRF protection to the form-login 2011-02-16 23:00:27 +01:00
Johannes M. Schmitt
d22743cf3a [Security] removed defaults from boolean columns 2011-02-16 23:00:27 +01:00
Kris Wallsmith
e62031a54e [AsseticBundle] fixed closure .jar configuration 2011-02-16 22:55:52 +01:00
Kris Wallsmith
cd5b60359d [AsseticBundle] added local caching to the controller 2011-02-16 22:55:10 +01:00
Kris Wallsmith
42a68d9ca4 [AsseticBundle] renamed controller class 2011-02-16 22:55:10 +01:00
Kris Wallsmith
181165f592 [AsseticBundle] added injection of node path to coffee filter 2011-02-16 22:54:18 +01:00
Kris Wallsmith
1230bc6441 [AsseticBundle] updated config for new LESS filter 2011-02-16 22:54:18 +01:00
Victor Berchet
1d7f8120e0 Update code with latest Finder changes 2011-02-16 22:53:11 +01:00
Victor Berchet
bad3a97ad6 [Finder] tweak code 2011-02-16 22:51:06 +01:00
Christophe Coevoet
a5bac4b5a3 Fixed xmlloader 2011-02-15 22:41:29 +01:00
Fabien Potencier
a29a413c48 made DIC extensions members of the Container instead of static members 2011-02-15 22:22:32 +01:00
Fabien Potencier
62e3053769 refactored previous commit, fixed tests
How to upgrade?

For XML configuration files:

 * All extensions should now use the config tag (this is just a convention as
   the YAML configurations files do not use it anymore):

 * The previous change means that the doctrine and security bundles now are
   wrapped under a main "config" tag:

        <doctrine:config>
            <doctrine:orm />
            <doctrine:dbal />
        </doctrine:config>

        <security:config>
            <security:acl />
            ...
        </security:config>

For YAML configuration files:

 * The main keys have been renamed as follows:

        * assetic:config -> assetic
        * app:config -> framework
        * webprofiler:config -> web_profiler
        * doctrine_odm.mongodb -> doctrine_mongo_db
        * doctrine:orm -> doctrine: { orm: ... }
        * doctrine:dbal -> doctrine: { dbal: ... }
        * security:config -> security
        * security:acl -> security: { acl: ... }
        * twig.config -> twig
        * zend.config -> zend
2011-02-15 22:22:28 +01:00
Lukas Kahwe Smith
7f182bd877 implicitly load all registered bundles, all loading is now handled by load(), disable loading of an extension explcitly via setting the extension config to false (for now only Yaml is implemented) 2011-02-15 22:11:08 +01:00
Fabien Potencier
14aa95ba21 added the concept of a main DIC extension for bundles
This allows for better conventions and better error messages if you
use the wrong configuration alias in a config file.

This is also the first step for a bigger refactoring of how the configuration
works (see next commits).

 * Bundle::registerExtensions() method has been renamed to Bundle::build()

 * The "main" DIC extension must be renamed to the new convention to be
   automatically registered:

      SensioBlogBundle -> DependencyInjection\SensioBlogExtension

 * The main DIC extension alias must follow the convention:

      sensio_blog for SensioBlogBundle

 * If you have more than one extension for a bundle (which should really
   never be the case), they must be registered manually by overriding the
   build() method

 * If you use YAML or PHP for your configuration, renamed the following
   configuration entry points in your configs:

      app -> framework
      webprofiler -> web_profiler
      doctrine_odm -> doctrine_mongo_db
2011-02-15 22:11:07 +01:00
Fabien Potencier
391e00c1de [DependencyInjection] fixed a bug when xpath() returns false 2011-02-15 22:06:52 +01:00
Pablo Godel
f6a1c2d195 renamed SQLiteProfilerStorage to SqliteProfilerStorage 2011-02-15 21:57:09 +01:00
Pablo Godel
fa66bf4a85 rename file 2011-02-15 21:57:09 +01:00
Pablo Godel
bf09fc1065 rename file 2011-02-15 21:57:08 +01:00
Jeremy Mikola
cc4eb6b40f [Security] Add providerKey to PreAuthenticatedToken tokens constructed by PreAuthenticatedAuthenticationProvider 2011-02-15 21:55:24 +01:00
Kris Wallsmith
c67a9a9643 [HttpFoundation] cleaned up some constructors 2011-02-15 21:51:44 +01:00
Jeremy Mikola
b8d574087f [Security] Allow authentication tokens to hold attributes 2011-02-15 21:50:02 +01:00
Bertrand Zuchuat
462976d0d9 [DoctrineBundle] Typo 2011-02-15 21:46:56 +01:00
Bernhard Schussek
7dbc09ed8b [Form] Fixed reference handling in forms. Sometimes data wasn't written into the domain object, resulting in failed validation. 2011-02-15 21:39:32 +01:00
Fabien Potencier
81765f8b6a [DependencyInjection] fixed XML loader 2011-02-15 10:09:58 +01:00
Fabien Potencier
7c8e6669f4 updated bootstrap files 2011-02-15 04:27:46 +01:00
Fabien Potencier
4972bf6350 [DependencyInjection] made getXsdValidationBasePath() and getNamespace() methods from DIC Extension class optional
This has been changed so that people that do not use XML for their own extensions do
not need to bother implementing these two methods.
2011-02-15 04:14:48 +01:00
Victor Berchet
5eee0db18e [FrameworkBundle] tweak Templating 2011-02-15 04:02:31 +01:00
Fabien Potencier
7a2522b6ed [HttpFoundation] fixed unit tests 2011-02-15 03:42:24 +01:00
ornicar
189b82da0e [FrameworkBundle] Ensure test session listener is called late 2011-02-15 03:35:25 +01:00
ornicar
69393b0762 Simplify and fix the session listener 2011-02-15 03:35:25 +01:00
John Wards
73cd26e2ca [Serializer] added the ability to add attributes to nodes using an array key begining with @
Example:

array(
	'foo-bar' => array(
		'@id' => 1,
		'@name' => 'Bar'
	),
	Foo' => array(
		'Bar' => "Test",
		'@Type' => 'test'
	)
)

Parse XML now creates @ attribites for the array.

$rss = array(
   "channel" => array(
     "title" => "Test RSS",
     "description" => "Test description",
     "item" => array(
       0 => array(
         "title" => "Test Title 1",
         "link" => "http://foo.com"
       ),
       1 => array(
         "title" => "Test Title 2",
         "link" => "http://bar.com"
       )
     )
   )
);

<channel>
    <title>Test RSS</title>
    <description>Test description</description>
    <item>
        <title>Test Title 1</title>
        <link>http://foo.com</link>
    </item>
    <item>
        <title>Test Title 2</title>
        <link>http://bar.com</title>
    </item>
</channel>
2011-02-14 22:20:03 +01:00
Victor Berchet
8588d55c11 [Config] Improve the component 2011-02-14 22:05:56 +01:00
Johannes Schmitt
32b0b64d2d [Security] fixed AbstractFactory test 2011-02-14 21:58:59 +01:00
Victor Berchet
af81bcabf0 [Templating] Refactor the component 2011-02-14 21:11:44 +01:00
Fabien Potencier
12f99dd066 fixed typo 2011-02-14 20:56:03 +01:00
Johannes M. Schmitt
bc05bef2b9 [Security] fixes a bug in DigestAuthenticationListener 2011-02-14 20:55:07 +01:00
Johannes M. Schmitt
44b89e5ac3 [Security] fixes a bug when clearing cookies on logout 2011-02-14 20:55:07 +01:00
Johannes Schmitt
b685b3ab4d [Security] adds logout success handler 2011-02-14 20:55:07 +01:00
Johannes Schmitt
bc283f1a66 [Security] removed 'security.authentication_provider' tag 2011-02-14 20:55:06 +01:00
Johannes Schmitt
9e6fc0a11e [Security] fixes a bug where authentication errors might have leaked confidential information 2011-02-14 20:55:06 +01:00
Johannes Schmitt
5c7fe8f866 [Security] simplified encoder factory implementation 2011-02-14 20:55:06 +01:00
Johannes M. Schmitt
0643dc44fd [Security] adds a priority attribute to security voters 2011-02-14 20:55:06 +01:00
Johannes M. Schmitt
b9f4eab5c2 [Security/Acl] added pre-generated schemas 2011-02-14 20:55:06 +01:00
Fabrice Bernhard
20e31cd3f2 [HttpKernel] Added some details for two commonly encountered errors in Kernel.php and HttpKernel.php
I used https://github.com/fabpot/symfony/blob/master/src/Symfony/Component/Form/PropertyPath.php#L324 as a model for the wording
2011-02-14 20:51:55 +01:00
hhamon
9a89b4628f [CssSelector] fix phpdoc to match coding standards (int -> integer, bool -> Boolean). 2011-02-14 20:50:52 +01:00
Bulat Shakirzyanov
31b923ff55 [DoctrineMongoDBBundle] updated tests to reflect extension changes 2011-02-14 20:44:54 +01:00
Bulat Shakirzyanov
3623753c27 [DoctrineMongoDBBundle] updated DocumentManager definition to reflect latest ODM changes 2011-02-14 20:44:54 +01:00
Fabrice Bernhard
13469a2d82 [FrameworkBundle] added --format=xml,php,yml optional parameter to the init:bundle command
* Added the --format parameter to the InitBundleCommand.php file
* Moved all the non-format-dependent files from Resources/skeleton/bundle to Resources/skeleton/bundle/generic
* Created Resources/skeleton/bundle/[php,yml,xml] subfolders containing the files config/routing.[xml,yml,php]
2011-02-14 19:31:21 +01:00
Tim Nagel
7173764dc1 [Dependency Injection] PHPDoc 2011-02-14 11:16:04 +01:00
Jordi Boggiano
6311960511 [HttpFoundation] Minor clearCookie optimization 2011-02-14 11:15:22 +01:00
Bertrand Zuchuat
f659396b7c Changed getTaggedServiceIds with findTaggedServiceIds 2011-02-14 11:14:47 +01:00
Fabien Potencier
2a1005efa7 [Translation] fixed typo 2011-02-14 11:14:04 +01:00
Fabien Potencier
5c905beb13 moved common configuration classes to a new Config component 2011-02-13 22:31:50 +01:00
Deni
657f90a931 [Security] Fixed missed argument in call custom handler when authentication is successful. 2011-02-13 22:27:28 +01:00
Kris Wallsmith
1292925702 [AsseticBundle] initial entry of assetic integration 2011-02-13 22:21:30 +01:00
Hugo Hamon
b5972f3447 [Yaml] fix some php documentation 2011-02-13 17:48:48 +01:00
Jordi Boggiano
f5f41696ec [Serializer] Allow for more flexible element names 2011-02-13 17:47:22 +01:00
Jordi Boggiano
8216a6ef3d [Serializer] Added XmlEncoder::setRootNodeName 2011-02-13 17:47:22 +01:00
Fabien Potencier
cf5cfb0b51 updated bootstrap files 2011-02-13 11:24:47 +01:00
Jonathan H. Wage
b716b707ba General work on DoctrineMongoDBBundle to bring it more up to speed with DoctrineBundle. Added missing console commands, proxy cache warmer and hydrator cache warmer. 2011-02-13 10:43:21 +01:00
Johannes M. Schmitt
d4d2d60f7b [DependencyInjection] minor interface change 2011-02-13 10:38:10 +01:00
dordille
205621dee8 Changed namepace use of SecurityContext to SecurityContextInterface so that constant SecurityContextInterface::LAST_USERNAME would resolve properly
Also changed method signature of __construct to take and instance of SecurityContextInterface instead of SecurityContext
2011-02-13 10:36:15 +01:00
Johannes M. Schmitt
3dfc09cd8d [Security] fixes some regressions 2011-02-13 00:15:57 +01:00
ornicar
b043bfde0b Do not catch subrequest exceptions, because it makes debugging hard. 2011-02-12 22:48:54 +01:00
Jordi Boggiano
9bcd1b3e5f [Security] Fixed indenting 2011-02-12 22:14:16 +01:00
Christophe Coevoet
556305b4ac Fixed the default value of the access denied url
The custom error page is now disabled by default as this would throw an
exception if the /access_denied url does not match a route.
This commit also remove the old parameter for this url which is not used
anymore in the code.

Moved the default value to the Configuration class
2011-02-12 22:11:11 +01:00
Johannes Schmitt
a5cfc2207c [Security/DependencyInjection] updated SecurityBundle's configuration, some bug fixes in DIC config classes 2011-02-12 22:05:54 +01:00
Jeremy Mikola
fc3f56d17c [FrameworkBundle] Small fixes to FrameworkExtension and its configuration
* Remove redundant null/true equivalent array() values for array nodes
 * Profiler matcher should not be deep merged; subsequent configs can simply overwrite its array
 * Per lsmith's suggestion, change "isset(x) && x" to "!empty(x)"
 * Templating engines node should be required, which is necessary to ensure requiresAtLeastOneElement() applies to its prototype children
2011-02-12 21:59:25 +01:00
Jordi Boggiano
98e035b963 [DepdenencyInjection] Prevent self-referencing aliases 2011-02-12 21:58:00 +01:00
Jeremy Mikola
b3cb02adf2 [FrameworkBundle/Routing] Add "type" option for main Router resource (and expose this in FrameworkExtension config)
In routing files, import statements allow an optional "type" option to hint the resources' type (e.g. for ambiguous file extensions). This adds the same type option to the FrameworkExtension config, which defines the main routing resource.
2011-02-12 21:57:27 +01:00
Christophe Coevoet
ccd630981f Moved the exception to setDefaultValue 2011-02-12 21:56:21 +01:00
Christophe Coevoet
142212e2ba Added a way to define the default value of a prototype for array nodes 2011-02-12 21:56:21 +01:00
Fabian Vogler
9caa17823a Fix for SimpleXML in XmlEncoder
Check first for special objects like SimpleXMLElement and Traversable and the check for is_object.
2011-02-12 21:54:27 +01:00
Johannes Schmitt
9749da6e52 [Security] performance improvements of PermissionGrantingStrategy 2011-02-12 21:53:04 +01:00
Johannes Schmitt
19bbafc441 [Security] Refactored security context, moved getUser() implementation to templating 2011-02-12 21:53:04 +01:00
Johannes Schmitt
66fbbd6b17 [Security] removed __toString() from AccountInterface 2011-02-12 21:53:04 +01:00
hhamon
bd79e85928 [BrowserKit] fix phpdoc 2011-02-12 21:52:34 +01:00
hhamon
beaaa6d457 [BrowserKit] fix Response::__toString() method to take care of multiple headers, for example when setting more than one cookie. 2011-02-12 21:52:33 +01:00
Jeremy Mikola
8525ff83cd [Routing] XmlFileLoader should treat a missing "type" attribute as null when calling FileLoader::import() 2011-02-12 21:52:16 +01:00
Kris Wallsmith
36ff9abe67 [Console] fixed new ArgvInput method 2011-02-12 21:51:34 +01:00
hhamon
c2e4ec44a8 [HttpFoundation] fixed phpdoc 2011-02-12 21:51:10 +01:00
Fabien Potencier
5ee8eca0ee [Routing] fixed previous commit 2011-02-11 01:54:25 +01:00
Fabien Potencier
b588caf467 [DependencyInjection] made a small change to mimic a similar change in Routing 2011-02-11 00:13:02 +01:00
Jeremy Mikola
d85a839997 [Routing] Avoid locating imported resources as files unless they resolve to a FileLoader
XML/YAML loaders assume imported resources are files before attempting to resolve their loader. This is problematic for loaders such as Assetic, which does not use a file as its resource. Furthermore, the previous consecutive calls to both locate() and getAbsolutePath() were redundant. File location can safely be delayed until FileLoader::import(), and we can let that throw an exception if the file is not found.
2011-02-11 00:08:43 +01:00
Igor Wiedler
e929bc5d1b [HttpKernel] Allow any 2xx response code in a subrequest 2011-02-11 00:06:41 +01:00
Igor Wiedler
8cb3a237cc [FrameworkBundle] Allow any 2xx response code in a subrequest 2011-02-11 00:06:41 +01:00
Jordi Boggiano
5bf593353f [Routing] Added optional trailing slash support to ApacheMatcherDumper 2011-02-10 23:46:23 +01:00
Jordi Boggiano
fe694de746 [Routing] Make trailing slashes in urls optional 2011-02-10 23:46:23 +01:00
Fabien Potencier
b91f082be5 Revert "moved Resource to the Config component"
This reverts commit f53080860a.

Revert "[Router] config fixes"

This reverts commit 51beecc6f2.

Revert "moved duplicated files to a new Config component"

This reverts commit a8ec9b27f0.
2011-02-10 16:14:12 +01:00
Fabien Potencier
f53080860a moved Resource to the Config component 2011-02-10 16:07:42 +01:00
Kris Wallsmith
51beecc6f2 [Router] config fixes 2011-02-10 15:54:00 +01:00
Christophe Coevoet
1305728502 Fixed ExprBuilder to really use the parameter when replacing a key with an attribute 2011-02-10 15:33:14 +01:00
Christophe Coevoet
fa32adb9a3 Added phpdoc for the configuration builder 2011-02-10 15:33:14 +01:00
Christophe Coevoet
74b87294c2 Fixed access denied handling 2011-02-10 15:32:59 +01:00
hidenorigoto
82a8a3fb42 [WebProfilerBundle][FrameworkBundle]Fixed events panel to handle closures correctly 2011-02-10 15:32:04 +01:00
Fabien Potencier
a8ec9b27f0 moved duplicated files to a new Config component 2011-02-10 03:43:36 +01:00
Jeremy Mikola
a72145bf5f [HttpFoundation] Add array type-hint to Session::setAttributes() param 2011-02-10 00:50:07 +01:00
Fabien Potencier
e58a84eb09 added a FileLocator to DIC so that we can load resources like @BundleName/Resources/... 2011-02-10 00:44:02 +01:00
Victor Berchet
24b1b6e898 [FrameworkBundle] Tweak the template cache warmer 2011-02-09 18:44:07 +01:00
Victor Berchet
717efd14fd [Kernel] some tweaks 2011-02-09 18:43:01 +01:00
Jordi Boggiano
6a7d6843ae [Form] Removed unnecessary code 2011-02-09 15:49:05 +01:00
hhamon
d076ee4f3a [DoctrineMongoDBBundle] use namespace in MongoDB data fixtures command 2011-02-09 07:09:34 +01:00
hhamon
56dc1281d0 [DoctrineBundle] use namespace and fix double variable declaration 2011-02-09 07:09:34 +01:00
Sven Paulus
5d87d83a10 optimize duplication of Request objects 2011-02-09 06:59:36 +01:00
Tim Nagel
06e2c01e76 [CssSelector] PHPDoc additions 2011-02-09 06:55:44 +01:00
Tim Nagel
76e9b6ec97 [Console] PHPDoc fixes 2011-02-09 06:55:12 +01:00
Jeremy Mikola
9f77cabd2f [TwigBundle] Cast non-array resources argument to array in form_field() twig function
Methods within FormExtension later type-hint this parameter as an array, but it's convenient to allow a single string to be passed from Twig if we ensure it's wrapped in an array.
2011-02-09 06:53:10 +01:00
Fabien Potencier
fae8a557f9 [Console] fixed typo 2011-02-08 22:37:21 +01:00
Fabien Potencier
7e0ed2759b [HttpKernel] fixed phpdoc 2011-02-08 22:36:58 +01:00
Fabien Potencier
f35f1e1f3c [FrameworkBundle] fixed init:bundle command 2011-02-08 22:36:36 +01:00
Marc Weistroff
9f52333bf6 [HttpKernel] Fixed DataCollector Request attributes when attributes have objects 2011-02-08 19:18:38 +01:00
Bernhard Schussek
f51dafca3f [Form] Fixed: "data_constructor" option is used even if "data_class" option is not set 2011-02-08 04:14:56 +01:00
Bernhard Schussek
5b95805340 [Form] Added option "data_constructor" to Form. When a Form is initialized with NULL, an object is automatically created using this constructor. If no constructor is given but the option "data_class" is set, an object of that class is created with the default constructor instead. 2011-02-08 04:14:56 +01:00
Bernhard Schussek
09a50c3c55 [Form] Fixed: "by_reference" option is ignored if reading from/writing to an array 2011-02-08 04:14:55 +01:00
Bernhard Schussek
59bf50bf41 [Form] Disabled by reference handling for arrays 2011-02-08 04:14:55 +01:00
Bulat Shakirzyanov
97679e5bda [DoctrineAbstractBundle] added test for new Loader 2011-02-08 04:11:47 +01:00
Bulat Shakirzyanov
d447d22809 [DoctrineBundle, DoctrineAbstractBundle, DoctrineMongoDBBundle] added container aware fixture loader
Updated load data fixtures command in DoctrineMongoDBBundle to be identical to the one in DoctrineBundle
Created custom loader, that passes $container to all ContainerAware DataFixtures
2011-02-08 04:11:47 +01:00
Bulat Shakirzyanov
734be8107c [DoctrineMongoDBBundle] fixed UniqueValidatorTest to mark skipped if Doctrine\ODM classes not found 2011-02-08 04:11:47 +01:00
Xavier Perez
2f9b9f5521 [Templating] Added some missing PHPDoc 2011-02-07 16:25:20 +01:00
Xavier Perez
4c65161953 [Yaml] Added PHPDoc on getTimestampRegex() 2011-02-07 16:25:19 +01:00
Fabien Potencier
9f30e42c16 added --debug/-d and --env/-d to console 2011-02-07 03:03:02 +01:00
Tim Nagel
f3b6e1a30c PHPDoc for Console 2011-02-07 01:54:10 +01:00
ornicar
4252680ccf [HttpKernel] Catch exception when SQLite profiler storage fails to cleanup 2011-02-07 01:52:10 +01:00
Marc Weistroff
ea4ab77b6d [HttpKernel] HttpCache now sends maxage=0 cache-control directive in case of Esi presence. 2011-02-07 01:43:19 +01:00
Marc Weistroff
bebdcb242d [HttpKernel] Added response cache-control modification if page is composed of ESIs.
Rules are :
- If one of the ESI has validation cache strategy, the whole page will be
forced to validate.
- In none of the ESI has validation, the response will feature a Cache-Control
directive with s-maxage value equals to the smallest TTL of ESIs.
2011-02-07 01:34:14 +01:00
ornicar
2201382fa1 [HttpKernel] Fix issue in SQLite profiler storage when PDO fails to prepare a statement 2011-02-07 01:25:34 +01:00
Tim Nagel
93fd935b70 PHPDoc style fix 2011-02-07 01:02:56 +01:00
ornicar
803cc91b8b [FrameworkBundle] Fix TemplateNameParser template name exception message 2011-02-07 00:45:46 +01:00
Tim Nagel
0d6a6b79f0 PHPDoc fixes 2011-02-07 00:44:48 +01:00
Tim Nagel
108efc6ec9 Classloader PHPDoc 2011-02-07 00:44:48 +01:00
Tim Nagel
69672bad59 Added phpdoc to BrowserKit 2011-02-07 00:44:48 +01:00
Marcin Sikon
b9ed739d75 fixed RedirectController - removed parmanent attribute before generate new url, added tests 2011-02-07 00:15:22 +01:00
pborreli
7ad4f99153 [HttpFoundation] File/UploadedFile, MimeTest, Exception full coverage 2011-02-06 21:53:36 +01:00
Fabien Potencier
33c8d12b9a [FrameworkBundle] fixed XSD for the new exception-controller option 2011-02-06 21:44:04 +01:00
Lukas Kahwe Smith
44e6a5d45f added exception_controller config option 2011-02-06 21:42:51 +01:00
ornicar
afad113297 [HttpKernel] Fix notice in Kernel 2011-02-06 21:42:17 +01:00
Fabien Potencier
86631a9fee [FrameworkBundle] fixed template loaders in configuration 2011-02-06 21:39:30 +01:00
Fabien Potencier
7cb42d2a68 Revert "[TwigBundle] fixed error messages when an error occurs during template compilation"
This reverts commit c68b326665.
2011-02-06 21:05:37 +01:00
Jeremy Mikola
099b9dee1f [FrameworkBundle] Integrate Configuration\Builder class for config merging and normalization
This fixes some BC problems introduced in f9138d313b. Some top-level can now be simply enabled by providing true/null in PHP/YAML. Additionally, the Configuration\Builder allows options to be unset by providing "false" (helpful for overriding activation in a previous config file). All options supporting these behaviors can be found in the Configuration.php file (look for canBeUnset() and treatNull/TrueLike()).

Major changes:

 * Removed "enabled" option for profiler config. Profiler is now enabled if its config is true, null or a map.
 * Restore original config structure for validation namespaces. In PHP/YAML, namespaces are defined under annotations as an alternative to false (disabled) and true/null (enabled). For XML, annotation remains a boolean attribute for validation and a one or more optional namespace tags may appear within <app:validation />. During config normalization, namespace tags under validation will be moved to annotations to conform to the PHP/YAML structure (this occurs transparently to the user).
 * Restore behavior for router/templating config sections being optional (as shown in changes to session/validation test fixtures). If either top-level section is unset in the configuration, neither feature will be enabled and the user will no longer receive exceptions due to missing a resource option (router) or engines (templating). Resource/engines will still be properly required if the respective feature is enabled.
 * Remove unused router type option from XML config XSD. Type is only relevant for import statements, so this option is likely useless.

Additional small changes:

 * Added isset()'s, since config options may be unset
 * Wrap registerXxxConfiguration() calls in isset() checks
 * Load translation.xml in configLoad(), since it's always required
 * Default cache_warmer value (!kernel.debug) is determined via Configuration class

Things to be fixed:

 * Configuration\Builder doesn't seem to respect isRequired() and requiresAtLeastOneElement() (or I haven't set it properly); this should replace the need for FrameworkExtension to throw exceptions for bad router/templating configs
 * The config nodes for session options don't have the "pdo." prefix, as dots are not allowed in node names. To preserve BC for now, the "pdo." prefix is still allowed (and mandated by XSD) in configuration files. In the future, we may just want to do away with the "pdo." prefix.
 * Translator has an "enabled" option. If there's no use case for setting "fallback" independently (when "enabled" is false), perhaps "enabled" should be removed entirely and translator should function like profiler currently does.
 * Profiler matcher merging might need to be adjusted so multiple configs simply overwrite matcher instead of merging its array keys.
2011-02-06 20:50:12 +01:00
Johannes M. Schmitt
2b256a0804 [DependencyInjection] allow null for scalar nodes 2011-02-06 20:50:03 +01:00
Fabien Potencier
cdff8b2bf8 [FrameworkBundle] fixed error message for template as an array 2011-02-06 20:22:57 +01:00
Johannes Schmitt
2316c90ec2 [Security] fixes a regression 2011-02-06 20:11:08 +01:00
Johannes M. Schmitt
c7ef8d98d6 [DependencyInjection] append new elements for prototype nodes without a key attribute 2011-02-06 20:11:08 +01:00
Johannes Schmitt
0b8fef2347 [Security/DependencyInjection] adds support for merging security configurations
The merging is done in three steps:

    1. Normalization:
    =================
    All passed config arrays will be transformed into the same structure
    regardless of what format they come from.

    2. Merging:
    ===========
    This is the step when the actual merging is performed. Starting at the root
    the configs will be passed along the tree until a node has no children, or
    the merging of sub-paths of the current node has been specifically disabled.

       Left-Side       Right-Side      Merge Result
       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       -nothing-       array           Right-Side will be taken.
       scalar          scalar          Right-Side will be taken.
       array           false           Right-Side will be taken if ->canBeUnset()
                                       was called on the array node.
       false           array           Right-Side will be taken.
       array           array           Each value in the array will be passed to
                                       the specific child node, or the prototype
                                       node (whatever is present).

    3. Finalization:
    ================
    The normalized, and merged config will be passed through the config tree to
    perform final validation on the submitted values, and set default values
    where this has been requested.

You can influence this process in various ways, here is a list with some examples.
All of these methods must be called on the node on which they should be applied.

  * isRequired(): Node must be present in at least one config file.
  * requiresAtLeastOneElement(): PrototypeNode must have at least one element.
  * treatNullLike($value): Replaces null with $value during normalization.
  * treatTrueLike($value): Same as above just for true
  * treatFalseLike($value): Same as above just for false
  * defaultValue($value): Sets a default value for this node (only for scalars)
  * addDefaultsIfNotSet(): Whether to add default values of an array which has not
                           been defined in any configuration file.
  * disallowNewKeysInSubsequentConfigs(): All keys for this array must be defined
                                          in one configuration file, subsequent
                                          configurations may only overwrite these.
  * fixXmlConfig($key, $plural = null): Transforms XML config into same structure
                                        as YAML, and PHP configurations.
  * useAttributeAsKey($name): Defines which XML attribute to use as array key.
  * cannotBeOverwritten(): Declares a certain sub-path as non-overwritable. All
                           configuration for this path must be defined in the same
                           configuration file.
  * cannotBeEmpty(): If value is set, it must be non-empty.
  * canBeUnset(): If array values should be unset if false is specified.

Architecture:
=============
The configuration consists basically out of two different sets of classes.

  1. Builder classes: These classes provide the fluent interface and
                      are used to construct the config tree.

  2. Node classes: These classes contain the actual logic for normalization,
                   merging, and finalizing configurations.

After you have added all the metadata to your builders, the call to
->buildTree() will convert this metadata to actual node classes. Most of the
time, you will not have to interact with the config nodes directly, but will
delegate this to the Processor class which will call the respective methods
on the config node classes.
2011-02-06 20:11:08 +01:00
ornicar
c5fb96b86b [HttpKernel] Add more unit tests for Kernel 2011-02-06 20:05:49 +01:00
Bernhard Schussek
74d0ac82f7 [Form] Cleaned up ValueTransformerInterface
This commit removes CollectionToStringTransformer. Transformers should never change the state of the outside world, otherwise hard-to-track bugs might creap in.

This functionality needs to be implemented as a custom FieldType (see EntityChoiceField).
2011-02-06 19:46:29 +01:00
Bernhard Schussek
bd3e6c6b49 [Form] Fixed: Form::bind() throws an exception if form is anonymous 2011-02-06 19:46:28 +01:00
Bernhard Schussek
6ff4120784 [Form] Added Form option "by_reference" so that objects received from parent forms are modified by reference when this option is true (the default)
The implication is that set<Reference>() in the object of the parent form will not be called (and thus not has to be implemented/public).

If you want to suppress this behaviour, manually set "by_reference" to false.
2011-02-06 19:46:28 +01:00
Javier Eguíluz
42a3e404b2 translated validators resources into Spanish 2011-02-06 19:40:21 +01:00
hidenorigoto
39ed62de46 translated validators resources into Japanese 2011-02-06 17:11:14 +01:00
José Nahuel Cuesta Luengo
f08c9480ee [CssSelector] Fixed PHPDoc blocks. 2011-02-06 16:18:25 +01:00
ornicar
9ba2943aff [HttpKernel] Add unit tests for Kernel. Also slightly modify Kernel to make it more testable. 2011-02-06 16:17:35 +01:00
Kris Wallsmith
4f6256b713 [FrameworkBundle] fixed invalid template filename 2011-02-06 16:14:37 +01:00
José Nahuel Cuesta Luengo
562ebd5608 [CssSelector] Added PHPDoc blocks to first-level classes. 2011-02-05 23:28:22 +01:00
pborreli
f56a6efbf5 [HttpFoundation] File/File full coverage 2011-02-05 23:24:00 +01:00
Fabien Potencier
e5403490e7 removed the need to define getNamespace() and getPath() in bundles 2011-02-05 22:40:30 +01:00
Fabien Potencier
523e652d9d [FrameworkBundle] fixed the way profiler configuration works 2011-02-05 22:19:14 +01:00
ornicar
80b03f92b3 [HttpKernel] Throw exception when SQLite statement execution failed
This fixes SQLiteProfilerStorageTest, that was failing using PDO.
2011-02-05 20:44:51 +01:00
Jeremy Mikola
743f25a287 [DependencyInjection] Create explicit factoryClass property for Definitions
Previously, the Definition class was used both for type inference and factory construction (if factoryService was absent). This is fine for cases where classes create instances of themselves (e.g. getInstance() or create()), but leads to ambiguity when we have a separate factory class.
2011-02-05 20:39:42 +01:00
Jeremy Mikola
f9138d313b [FrameworkBundle] Implemented single-pass config loading with intelligent option merging for FrameworkExtension
Restructured config format to make processing more straightforward. Important changes that might break existing configs:

 * Added "enabled" option for translator (improves multi-format compat)
 * Removed hash variation of validation annotations option (only boolean)
 * Moved namespace option directly under validation (improves multi-format compat)

The new merge process depends on an internal array of all supported options and their default values, which is used for both validating the config schema and inferring how to merge options (as an added benefit, it helps make the extension self-documenting). Exceptions will now be thrown for merge errors resulting from unrecognized options or invalid types. Since incoming configurations are all merged atop the defaults, many isset() checks were removed. As a rule of thumb, we probably only want to ignore null values when an option would be used to set a parameter.

Also:

 * Added missing attributes to symfony-1.0.xsd
   * profiler: added only-exceptions attribute
   * session: fix types and add pdo attributes
 * Create FrameworkExtension tests with PHP/XML/YAML fixtures
 * Use "%" syntax instead of calling getParameter() within FrameworkExtension
 * Normalize config keys and arrays with helper methods for PHP/XML/YAML compatibility

Earlier changes:

 * Remove nonexistent "DependencyInjection/Resources/" path from XmlFileLoaders
 * Remove hasDefinition() checks, as register methods should only execute once
 * Remove first-run logic from registerTranslatorConfiguration(), as it is only run once
 * Removed apparently obsolete clearTags() calls on definitions for non-enabled features
2011-02-05 20:01:15 +01:00
Fabien Potencier
2ae542748a [TwigBundle] made error message more explicit 2011-02-05 01:17:59 +01:00
Fabien Potencier
e2ea634df4 [TwigBundle] fixed inheritance problem 2011-02-04 22:14:25 +01:00
Fabien Potencier
67c9fdf412 [TwigBundle] fixed theme for forms 2011-02-04 21:19:38 +01:00
Fabien Potencier
7f6fc6f0fb [TwigBundle] fixed form template inheritance 2011-02-04 20:41:31 +01:00
Fabien Potencier
37537e3e8c fixed previous commit 2011-02-04 19:38:42 +01:00
Lukas Kahwe Smith
dd71501f54 some fixes by just "blindly" trying to make phpStorm code analysis happier 2011-02-04 19:30:28 +01:00
Fabien Potencier
195c971da6 removed load() from EngineInterface 2011-02-04 19:28:14 +01:00
Martijn Evers
1e3dc1479c [Testing][HttpKernel] Added possibility to functional test raw body data 2011-02-04 13:07:13 +01:00
Fabien Potencier
710a1e56b0 [TwigBundle] added support for template as Twig_Template instances 2011-02-04 13:04:02 +01:00
Fabien Potencier
c68b326665 [TwigBundle] fixed error messages when an error occurs during template compilation 2011-02-04 12:54:53 +01:00
Fabien Potencier
2dfac2a881 fixed typo 2011-02-04 12:20:47 +01:00
Fabien Potencier
f455700b88 fixed previous commit 2011-02-04 12:18:26 +01:00
Victor Berchet
3ed47114d6 [Bundle] Make getPath() less error prone by allowing both backward and forward slashes 2011-02-04 12:12:19 +01:00
Victor Berchet
2a97f89897 [Bundle] Small optimization 2011-02-04 12:10:16 +01:00
Victor Berchet
84bbb945d7 [UniversalClassLoader] Small optimization 2011-02-04 12:10:16 +01:00
marc.weistroff
1316fb547e Reverted e557500c97 and edf57fc392 which deleted the getRequest() method in HttpCache as this methods is needed in the Esi class. 2011-02-04 11:37:09 +01:00
Bernhard Schussek
2276b98fc1 [Form] Fixed: ChoiceFields never validated 2011-02-04 11:30:49 +01:00
Fabien Potencier
6ed7dc1e5a made a small optimization 2011-02-04 05:45:07 +01:00
Kris Wallsmith
ea536b0d9e [FrameworkBundle] added cache warmer priority 2011-02-04 00:59:44 +01:00
Fabien Potencier
6b7e4ad2f9 [TwigBundle] fixed typo 2011-02-04 00:54:09 +01:00
Justin Hileman
5516ac21a2 Fix Doctrine Migrations commands to work with new bundles. 2011-02-04 00:37:02 +01:00
Lukas Kahwe Smith
661d5d236c fixed method call, cosmetic variable rename 2011-02-04 00:32:15 +01:00
Fabien Potencier
93fc26d869 [EventDispatcher] simplified code (thanks Kris Wallsmith for the tip) 2011-02-04 00:29:28 +01:00
Daniel Holmes
b01805a5c4 [FrameworkBundle] added port number to the context passed in to the router 2011-02-04 00:26:18 +01:00
Daniel Holmes
f4282eea98 [Routing] added support for non-standard port numbers in absolute urls 2011-02-04 00:25:25 +01:00
Fabien Potencier
b6f400a2bc [DependencyInjection] made an optimization on dumped DIC
When dumping a Container, and if it is frozen, we use a plain
PHP array for parameters instead of a ParameterBag.
2011-02-04 00:17:51 +01:00
Fabien Potencier
2d69369c69 [ClassLoader] added the possibility to define more than one directory for a namespace or a prefix 2011-02-03 22:44:22 +01:00
Fabien Potencier
c05fb03c7d [HttpKernel] changed the core.view event to only be notified when the controller does not return a Response 2011-02-03 19:39:28 +01:00
Bernhard Schussek
a725415440 [Form] Fixed RepeatedField not to trigger NotNull/NotBlank errors if any of the fields was filled in 2011-02-03 13:28:29 +01:00
Bernhard Schussek
39c148197f [Form] Fixed form validation
Separated validation of data and form had serious drawbacks. When a form had nested form whose data was not connected to the data of the root form, this data would not be validated.

The new implementation validates the whole object graph at once. Class Form has a new method validateData(), that manually passes the data to the GraphWalker of the Validator and overrides the Default group with the groups set in the form.
2011-02-03 13:21:44 +01:00
Bernhard Schussek
1a34743990 [Validator] Fixed: Collections annotated with @Valid may contain scalar values. These values are ignored by the GraphWalker 2011-02-03 13:21:37 +01:00
Bernhard Schussek
50955a3919 [Validator] Fixed PropertyPath to read array indices with special characters 2011-02-03 11:28:51 +01:00
Bernhard Schussek
55a97ec78e [Validator] Made GraphWalker::validateReference() method public 2011-02-03 11:00:03 +01:00
Bernhard Schussek
5ed4d91bb8 [Validator] Implemented Execute constraint 2011-02-03 11:00:03 +01:00
Benjamin Eberlei
d8e03ac782 [DoctrineBundle] Add support to setting the Annotations prefix to @orm: for EntityGeneration beginning with Doctrine ORM 2.0.2-DEV. 2011-02-03 05:38:58 +01:00
Bernhard Schussek
eb918ac86d [Form] Fixed prototype option in CollectionField 2011-02-02 17:52:58 +01:00
Bernhard Schussek
7c9c7af863 [Form] Fixed arrays not to be passed to the validator 2011-02-02 17:32:24 +01:00
Penny Leach
1c3e3f7744 [Form] Removed required="required" from hidden fields to make them HTML5 compliant 2011-02-02 15:51:17 +01:00
Bernhard Schussek
5e3fab214e [Form] The form is now validated seperatedly from its data. The form is validated in group "Default", the data in the group set in option "validation_groups" 2011-02-02 15:25:05 +01:00
Bernhard Schussek
c923af2879 [Form] Adapted constructor of CollectionField to match the constructors of the other fields. The field prototype is now optional. 2011-02-02 14:46:33 +01:00
Bernhard Schussek
265cdd148f [Form] Removed unused property from Field 2011-02-02 14:46:33 +01:00
Bernhard Schussek
4f0283a508 [Form] Removed Form::isBound(). Form::bind() is only a shortcut method now, use Form::isSubmitted() if you want to find out whether a form was submitted. 2011-02-02 14:46:33 +01:00
Bernhard Schussek
628a4d1fd8 [Form] Refactored validation logic into validate() method. Removed bindGlobals() to reduce API clutter 2011-02-02 14:46:33 +01:00
Fabien Potencier
a204e0df7f [TwigBundle] added previous exception when possible 2011-02-02 14:41:03 +01:00
Daniel Holmes
f217022ad5 [TwigBundle] fixed Twig template throwing InvalidArgumentException rather than returning false 2011-02-02 14:38:43 +01:00
Fabien Potencier
5288381f61 Revert "[Security] Missing Event namespace in SwitchUserListener"
This reverts commit 0169892dcd.
2011-02-02 14:35:29 +01:00
Thomas
e6dc155e89 fix validator class metadata warning 2011-02-02 11:37:41 +01:00
Christophe Coevoet
de401fd94c [DoctrineBundle] Fixed doctrine:generate:entities help message 2011-02-02 11:34:47 +01:00
Jeremy Mikola
4e0db56810 [Form] Fix getValidator() to reference the "validator" option instead of property 2011-02-02 11:34:18 +01:00
Fabien Potencier
209dcfefce [From] fixed phpdoc 2011-02-02 11:34:10 +01:00
Jeremy Mikola
0169892dcd [Security] Missing Event namespace in SwitchUserListener 2011-02-02 11:32:56 +01:00
Johannes M. Schmitt
2b697423b4 [Security] bug fix in FormAuthenticationEntryPoint 2011-02-02 11:31:28 +01:00
Sebastian Utz
4d5853866a [Security] fixed a Token serialization bug 2011-02-02 11:31:28 +01:00
Johannes M. Schmitt
fbc21fedf7 [Security] some bug fixes 2011-02-02 11:31:28 +01:00
Thomas
7b9b90809a fix variable name 2011-02-02 11:30:30 +01:00
Fabien Potencier
1893e4e250 [DoctrineMongoDBBundle] fixed merge problem 2011-02-01 16:51:54 +01:00
Johannes Schmitt
b484763a7a [DependencyInjection] added first version of the config normalizer
This is mainly intended for complex configurations to ease the work you
have with normalizing different configuration formats (YAML, XML, and PHP).

First, you have to set-up a config tree:

    $treeBuilder = new TreeBuilder();
    $tree = $treeBuilder
        ->root('security_config', 'array')
            ->node('access_denied_url', 'scalar')->end()
            ->normalize('encoder')
            ->node('encoders', 'array')
                ->key('class')
                ->prototype('array')
                    ->before()->ifString()->then(function($v) { return array('algorithm' => $v); })->end()
                    ->node('algorithm', 'scalar')->end()
                    ->node('encode_as_base64', 'scalar')->end()
                    ->node('iterations', 'scalar')->end()
                ->end()
            ->end()
        ->end()
        ->buildTree()
    ;

This tree and the metadata attached to the different nodes is then used
to intelligently transform the passed config array:

    $normalizedConfig = $tree->normalize($config);
2011-02-01 16:07:04 +01:00
Bernhard Schussek
a28151a8af [Form] Removed FormFactory and improved the form instantiation process
With the form factory there was no reasonable way to implement instantiation of custom form classes. So the implementation was changed to let the classes instantiate themselves. A FormContext instance with default settings has to be passed to the creation method. This context is by default configured in the DI container.

	$context = $this->get('form.context');
	// or
	$context = FormContext::buildDefault();
	$form = MyFormClass::create($context, 'author');

If you want to circumvent this process, you can also create a form manually. Remember that the services stored in the default context won't be available then unless you pass them explicitely.

	$form = new MyFormClass('author');
2011-02-01 15:27:12 +01:00
Bernhard Schussek
fb1f99137d [Form] Changed semantics of a "bound" form
A form now always has to be bound, independent of whether the request is a POST request or not. The bind() method detects itself whether the request was a post request or not and reads its data accordingly. The "old" bind()/isBound() methods were renamed to submit()/isSubmitted().

	$form = new Form('author');
	$form->bind($request, $author);

	if ($form->isValid()) {
		// isValid() implies isSubmitted(), non-submitted forms can
		// never be valid
		// do something with author now
	}

Alternatively, you can only bind global variables, if you don't have a request object.

	$form->bindGlobals($author);

Note that the $author object is in both cases optional. You can also pass no object at all and read the data using $form->getData(), but then no validation will occur. You can also prefill the form with an object during instantiation.

	$form = new Form('author', array('data' => $author));
	$form->bind($request);

	// etc.
2011-02-01 15:27:12 +01:00
Bernhard Schussek
e5ed98c324 [Form] Added option 'data' to Field for populating a field with a fixed value 2011-02-01 15:27:12 +01:00
Bernhard Schussek
fdbc064f06 [Form] Removed automatic distribution of the locale in the Form component. This leads to more problems than it solves. 2011-02-01 15:27:12 +01:00
Bernhard Schussek
c468db5c5b [Form] Merged classes FieldGroup and Form for simplicity 2011-02-01 15:27:12 +01:00
Bernhard Schussek
7680657944 [Form] Form::isPostMaxSizeReached() only triggers for root forms 2011-02-01 15:27:12 +01:00
Bernhard Schussek
4fcb98547c [Form] Simplified Form::bind(), added convenience methods Form::bindRequest() and Form::bindGlobals() 2011-02-01 15:27:12 +01:00
Bernhard Schussek
57cbd57265 [Form] Fields may now be anonymous, but anonymous fields must not be added to groups. They can only be used as prototypes 2011-02-01 15:27:12 +01:00
Bernhard Schussek
916e599937 [Form] Fixed broken namespace paths 2011-02-01 15:27:12 +01: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
Lukas Kahwe Smith
46d900682f is_scalar(null) !== true 2011-02-01 13:55:10 +01:00
Fabien Potencier
2889e91c27 [DoctrineMongoDBBundle] fixed unit tests 2011-02-01 13:35:39 +01:00
Victor Berchet
cb445b9ca0 [Container] Tweak code 2011-02-01 13:21:10 +01:00
Bulat Shakirzyanov
132e5805b3 [DoctrineMongoDBBundle] fixed annotations ns conflict, switched to @mongodb:Unique annotation 2011-02-01 13:19:37 +01:00
Bernhard Schussek
22c12e2c8f [HttpFoundation] Fixed failing tests introduced in 8dd0c5641a 2011-01-31 15:38:13 +01:00
Fabien Potencier
2c4355460e [HttpKernel] added a StoreInterface 2011-01-31 14:15:12 +01:00
Fabien Potencier
1babf3c7a1 [FrameworkBundle] added a safeguard for infinite loops on some Windows configurations 2011-01-31 08:54:05 +01:00
Fabien Potencier
839cb027a6 [HttpKernel] added a bootstrap file for HTTP cache front controllers 2011-01-31 08:30:32 +01:00
Fabien Potencier
b52e28243d [HttpFoundation] added ApacheRequest 2011-01-31 08:28:55 +01:00
Fabien Potencier
8dd0c5641a [HttpFoundation] made small optimizations 2011-01-31 08:26:40 +01:00
Damien Alexandre
56483dc14f The ControlerResolver service as been moved in http_kernel 2011-01-30 20:17:31 +01:00
Victor Berchet
f470c5605e [Request] Fix getting mime type 2011-01-30 20:14:40 +01:00
Bulat Shakirzyanov
d1cd442361 [FrameworkBundle] added session listener for test environment 2011-01-30 20:13:29 +01:00
Fabien Potencier
b1448ecdc7 [HttpFoundation] fixed typo 2011-01-30 20:13:00 +01:00
Fabien Potencier
b7a0f71b87 [FrameworkBundle] added more file to the class cache when using the PHP templating engine 2011-01-30 14:37:22 +01:00
Fabien Potencier
4e877a84ad [FrameworkBundle] fixed router:apache-dump command 2011-01-30 11:37:38 +01:00
Fabien Potencier
0c439e2c64 updated bootstrap.php 2011-01-30 11:07:12 +01:00
Fabien Potencier
3686edf769 [ClassLoader] made a small optimization 2011-01-30 10:53:57 +01:00
Fabien Potencier
ee3d03ee8a [HttpFoundation] made Request::create() overridable 2011-01-30 10:53:45 +01:00
Christophe Coevoet
156a5dcb9f Fixed escaping for arguments 2011-01-29 20:29:49 +01:00
Fabien Potencier
e081e5919e reverted changes to the adaptive cache loader cache 2011-01-29 17:58:40 +01:00
Victor Berchet
5e5b6f0cf8 [HttpKernel] made sure that parent bundles are registered before their descendants 2011-01-29 16:38:06 +01:00
Dominique Bongiraud
996c2b0914 [HttpFoundation] Moved licence 2011-01-29 16:12:10 +01:00
Fabien Potencier
55f38e10af [HttpKernel] simplified code 2011-01-29 15:36:57 +01:00
Fabien Potencier
5f11e49d0b [HttpKernel] made exceptions more robust (avoid too deep nested arrays PHP errors) 2011-01-29 15:31:46 +01:00
Fabien Potencier
dacb25f13a updated bootstrap.php 2011-01-29 15:20:21 +01:00
Fabien Potencier
025e142dd4 removed parameter converters as decided during IRC meeting (supported is still provided by FrameworkExtraBundle)
You must remove the configuration element if you had enabled the feature:

         <app:param-converter />
2011-01-29 15:04:28 +01:00
Johannes Schmitt
36e30e21cd [Security] some tests 2011-01-29 14:51:13 +01:00
Fabien Potencier
faf871990e fixed CS 2011-01-29 12:21:55 +01:00
Miha Vrhovnik
6ee13a6b8d Added optional parameter bundleName,
added namespace validation,
fixed dir trailing / handling
2011-01-29 12:18:44 +01:00
Fabien Potencier
8ac1a189bf [HttpKernel] removed unnecessary code 2011-01-29 12:18:16 +01:00
Johannes M. Schmitt
f2a3135bd0 [Security] made a unique name required for each firewall 2011-01-29 10:22:27 +01:00
Lukas Kahwe Smith
2539da5e6a [Security] added AbstractFactory 2011-01-29 10:22:27 +01:00
Johannes M. Schmitt
3ac4994507 [Security] added missing argument to SwitchUserListener 2011-01-29 10:22:27 +01:00
Johannes M. Schmitt
8a879531bd [Security] added key normalization, and removed some conditionals 2011-01-29 10:22:27 +01:00
Johannes M. Schmitt
af696f6a65 [Security] allow custom logout handlers to be configured 2011-01-29 10:22:26 +01:00
Johannes M. Schmitt
e23f39c42f [Security] config refactoring 2011-01-29 10:22:26 +01:00
Victor Berchet
65eb70d3b6 [Kernel] Tweak bundle management 2011-01-29 10:15:25 +01:00
Christophe Coevoet
96a0a7e7d1 Fixed SecurityDataCollector 2011-01-29 10:12:07 +01:00
Benjamin Eberlei
c4a2fb41ec [DoctrineBundle] Shortened Dependency Injection Fixture namespace to avoid Windows filepath length error. 2011-01-29 10:11:21 +01:00
Benjamin Eberlei
6d6c9a5c9d [DoctrineBundle] Small cleanup of Import Mapping. 2011-01-29 10:10:09 +01:00
Benjamin Eberlei
5014ee9739 [DoctrineBundle] More cleanups of doctrine commands. 2011-01-29 10:09:55 +01:00
Benjamin Eberlei
bdbfb44a96 [DoctrineBundle] First round of cleanup the Command namespace in DoctrineBundle 2011-01-29 10:09:42 +01:00
Benjamin Eberlei
394a60b4be [DoctrineBundle] Fix getBundleMetadata helper function in DoctrineCommand 2011-01-29 10:09:25 +01:00
Sergey Linnik
92ddaa11cd Fixed typo 2011-01-28 18:46:27 +01:00
Fabien Potencier
4e89fede54 [HttpKernel] removed a stupid line of code 2011-01-28 18:42:34 +01:00
Fabien Potencier
8df5d42009 [HttpKernel] fixed typo 2011-01-28 18:31:55 +01:00
Benjamin Eberlei
6ac5c298bd [Console] Add missing method isInteractive() to InputInterface and added some docblock comments to all interface methods. 2011-01-28 18:28:17 +01:00
Jeremy Mikola
7b287550ff [SecurityBundle] Remove obsolete "path" option from HttpBasicFactory 2011-01-28 18:26:49 +01:00
Bulat Shakirzyanov
5252d3aef0 [Serializer] switched to setEncoder, to be consistent with getEncoder 2011-01-28 18:24:34 +01:00
Johannes M. Schmitt
62d52d8015 enables normalizeConfig() to handle irregular plural forms, e.g. factory -> factories 2011-01-28 18:22:17 +01:00
Bulat Shakirzyanov
81219bba15 [Security] fixed typo 2011-01-28 18:20:59 +01:00
Bulat Shakirzyanov
799375dfd6 [EventDispatcher] removed unused class variable 2011-01-28 16:36:43 +01:00
Fabien Potencier
01439d5f14 updated bootstrap file 2011-01-28 10:11:09 +01:00
Bernhard Schussek
ebd2ca6cfe [Form] Moved option 'empty_value' to ChoiceField. An empty value is displayed if the field is not required. 2011-01-28 09:22:06 +01:00
Bernhard Schussek
34865a3533 [Form] Added a field guess for AssertType('\DateTime') constraint 2011-01-28 09:20:58 +01:00
Bernhard Schussek
ce61baf717 [Form] ChoiceField now accepts closures in the 'choices' option 2011-01-28 09:20:41 +01:00
Bernhard Schussek
9e6e95d7e4 [Form] Fixed: required setting in FieldFactory is now properly overridable 2011-01-28 09:20:27 +01:00
Bernhard Schussek
0c3ca26e6e [Validator] Implemented traversing of \Traversable objects using the @Valid constraint. Can be disabled by setting the @Valid option 'traverse' to false 2011-01-28 09:19:32 +01:00
Johannes Schmitt
803dd58002 add definition inheritance support 2011-01-28 09:12:29 +01:00
Lukas Kahwe Smith
26666a272d fixed array support in twig globals 2011-01-27 21:48:20 +01:00
Fabien Potencier
98c1056fbf renamed Request::fromGlobals() to Request::createFromGlobals() (for consistency with the existing create() method) 2011-01-27 21:20:08 +01:00
Kris Wallsmith
224e66f77b [HttpFoundation] added static Request::fromGlobals()
The Request constructor no longer uses values from PHP's super globals. If you want a Request populated with these values you must use the new static method Request::fromGlobals().

Your front controllers (i.e. web/app.php, web/app_dev.php ...) will need to be updated:

    // old
    $kernel->handle(new Request())->send();

    // new
    $kernel->handle(Request::fromGlobals())->send();
2011-01-27 21:12:55 +01:00
Johannes M. Schmitt
f3c2e98b25 lazy-load the compiler, and related objects 2011-01-27 21:06:49 +01:00
Benjamin Eberlei
63375060e8 [DoctrineBundle] Refactor doctrine-1.0.xsd 2011-01-27 16:38:33 +01:00
Benjamin Eberlei
3c9c43d592 [DoctrineBundle] Add support to configure DBAL Types through the dbal configuration section. 2011-01-27 16:38:32 +01:00
Victor Berchet
cd96c91447 json_encode() syntax (fix commit fb889a2eee) 2011-01-27 16:37:25 +01:00
Fabien Potencier
4ecafd883e [FrameworkBundle] moved class cache loader earlier 2011-01-27 16:34:54 +01:00
Fabien Potencier
2509c9da4b added an autoloader that uses a class map
A class in Symfony2 can be loaded by four different mechanisms:

 * bootstrap.php: This file contains classes that are always required and
   needed very early in the request handling;

 * classes.php: This file contains classes that are always required and
   managed by extensions via addClassesToCompile();

 * MapFileClassLoader: This autoloader uses a map of class/file to load
   classes (classes are managed by extensions via addClassesToAutoloadMap(),
   and should contain often used classes);

 * UniversalAutolaoder: This autoloader loads all other classes (it's the
   slowest one).
2011-01-27 16:30:58 +01:00
Fabien Potencier
02820a5a56 [HttpKernel] fixed phpdoc 2011-01-27 16:30:58 +01:00
Fabien Potencier
532bbbde30 [SecurityBundle] fixed typo 2011-01-27 14:50:10 +01:00
Fabien Potencier
d5b540a4fe [FrameworkBundle] made a small optimization 2011-01-27 14:32:30 +01:00
Fabien Potencier
249ed63373 [FrameworkBundle] made a small change 2011-01-27 14:14:15 +01:00
Fabien Potencier
95e10b3ed9 moved ClassLoaderCollection class to the ClassLoader component 2011-01-27 14:11:54 +01:00
Fabien Potencier
db818284af moved class compiled in cache to the FrameworkBundle 2011-01-27 14:07:30 +01:00
Fabien Potencier
6997fbac0d fixed previous commit 2011-01-27 13:58:21 +01:00
Johannes M. Schmitt
8ccb8eb8c2 added two events "security.interactive_login", and "security.switch_user" 2011-01-27 13:49:01 +01:00
Johannes M. Schmitt
00d3d8c3bc renamed PreAuthenticatedListener to AbstractPreAuthenticatedListener to be consistent 2011-01-27 13:49:01 +01:00
Johannes Schmitt
139510a78e added some doc comments 2011-01-27 13:49:00 +01:00
Fabien Potencier
42f9c556a3 moved the class loader to its own component 2011-01-27 13:04:16 +01:00
Fabien Potencier
7bd30398c6 [FrameworkBundle] moved some cache warmers 2011-01-27 12:22:32 +01:00
Fabien Potencier
0219ec3dbc [DependencyInjection] added missing methods in ContainerInterface 2011-01-27 08:42:22 +01:00
Bulat Shakirzyanov
ff34f7d281 [DoctrineMongoDBBundle] added support for multiple document managers 2011-01-26 22:25:21 +01:00
Johannes M. Schmitt
cf64d2cfe7 namespace changes
Symfony\Component\Security -> Symfony\Component\Security\Core
Symfony\Component\Security\Acl remains unchanged
Symfony\Component\HttpKernel\Security -> Symfony\Component\Security\Http
2011-01-26 22:23:20 +01:00
Fabien Potencier
e557500c97 [HttpKernel] removed obsolete code 2011-01-26 21:51:35 +01:00
Fabien Potencier
edf57fc392 [HttpKernel] removed obsolete code 2011-01-26 21:48:48 +01:00
Fabien Potencier
75404e6bd6 renamed HttpKernel/Cache/ namespace to HttpKernel/HttpCache/ 2011-01-26 21:44:54 +01:00
Lukas Kahwe Smith
d10f631c3d fixed security engine loading 2011-01-26 21:15:00 +01:00
Fabien Potencier
b154643b65 Revert "[DoctrineBundle][DoctrineMongoDBBundle] Create DIC params for security user provider EM/DM aliases"
This reverts commit 24c7715029.
2011-01-26 20:33:08 +01:00
Jeremy Mikola
24c7715029 [DoctrineBundle][DoctrineMongoDBBundle] Create DIC params for security user provider EM/DM aliases
Also changed the default alias to Doctrine's own canonical aliases for the default EM/DM.
2011-01-26 19:37:12 +01:00
Fabien Potencier
e645090423 moved security related things to a new SecurityBundle (the Security component is left unchanged) 2011-01-26 19:10:54 +01:00
Johannes M. Schmitt
a367dfc3ec fixes a bug where RememberMeServices were not called consistently 2011-01-26 16:38:54 +01:00
Johannes Schmitt
e0fe42d050 removed isAuthenticated() from SecurityContext 2011-01-26 16:38:54 +01:00
Johannes Schmitt
57ae50e894 [Security] many improvements, and fixes 2011-01-26 16:38:54 +01:00
Fabien Potencier
fb889a2eee replaced some var_export() with json_encode() for better readability 2011-01-26 15:55:28 +01:00
Fabien Potencier
5d963f5460 [Templating] fixed PhpEngine::render() when the name passed to it is already an array 2011-01-26 15:34:10 +01:00
Fabien Potencier
db2f2b1315 refactored template name parser to occur independently of the loaders 2011-01-26 14:53:12 +01:00
Fabien Pennequin
956857119b [Form] Fixed typo in phpdoc 2011-01-26 10:36:10 +01:00
Fabien Pennequin
c392f2518d [Form][Validator] Fixed indentation 2011-01-26 10:36:10 +01:00
Fabien Potencier
136647c753 [FrameworkBundle] refactored router cache class parameters 2011-01-26 08:50:16 +01:00
Fabien Potencier
8b62df7247 changed the EventDispatcher and Event interfaces
The three notification methods do not return the Event instance anymore.

notify() does not return anything
notifyUntil() returns the returned value of the event that has processed the event
filter() returns the filtered value

Upgrading your listeners:
Listeners for notify() and filter() events: nothing to change
Listeners for notifyUntil() events:

Before:

    $event->setReturnValue('foo');
    return true;

After:

    $event->setProcessed();
    return 'foo';

If you notify events, the processing also need to be changed:

For filter() notifications: the filtered value is now available as
the returned value of the filter() method.

For notifyUntil() notifications:

Before:

    $event = $dispatcher->notifyUntil($event);
    if ($event->isProcessed()) {
        $ret = $event->getReturnValue();

        // do something with $ret
    }

After:

    $ret = $dispatcher->notifyUntil($event);
    if ($event->isProcessed()) {
        // do something with $ret
    }
2011-01-26 08:41:59 +01:00
Fabien Potencier
a66d050bdb removed KernelInterface::reboot() method 2011-01-26 08:41:59 +01:00
Benjamin Eberlei
3eadf73cbd [DoctrineBundle] Stop the cache warmer if proxies are auto-generated anyways. 2011-01-26 06:55:29 +01:00
Benjamin Eberlei
5700be7ac4 [DoctrineBundle] Remove ProxyDirectoryCachePass from DoctrineBundle 2011-01-26 06:55:29 +01:00
Benjamin Eberlei
18c611a29e [DoctrineBundle] Remove the CreateProxyDirectoryPass and let the cache directory generation be done by the cache warmer. 2011-01-26 06:55:29 +01:00
Fabien Potencier
8cfa246887 [DoctrineBundle] modified XSD to allow expression for Booleans (like %kernel.debug%) 2011-01-25 20:00:38 +01:00
Fabien Potencier
36dcce40eb changed method signature to use the new KernelInterface 2011-01-25 17:20:20 +01:00
Fabien Potencier
a1945ca9bc fixed XML definitions 2011-01-25 17:13:34 +01:00
Fabien Potencier
fb4e7fb5c5 added KernelInterface 2011-01-25 17:10:47 +01:00
Fabien Potencier
935c82e1f9 [FrameworkBundle] simplified some code 2011-01-25 16:42:50 +01:00
Johannes Schmitt
40dec8831f adds helper method to normalize keys 2011-01-25 15:59:51 +01:00
Johannes M. Schmitt
6bbfffb981 added path, and domain to clearCookie() in accordance with RFC 2109, and RFC 2965 2011-01-25 15:58:01 +01:00
marc.weistroff
90c16c7350 [HttpKernel] Changed the directory name in which Store stores data.
Previously, it used this pattern:

md/abcd/123456789

now it uses this one :

md/ab/cd/123456789
2011-01-25 15:55:18 +01:00
Fabien Potencier
0e66e388ec added two interfaces: EventInterface and EventDispatcherInterface 2011-01-25 14:23:32 +01:00
jeromemacias
b325487388 [HttpKernel] Removed calls to undefined variable + added check on mkdir in save method 2011-01-25 12:17:26 +01:00
Johannes Schmitt
a4de7dab10 make normalizeConfig public and static 2011-01-25 11:40:02 +01:00
Fabien Potencier
97897f532a [Form] removed obsolete method 2011-01-25 11:37:48 +01:00
Bernhard Schussek
d017970867 [Form] Implemented FormFactory::buildDefault() to ease the use of the new CSRF implementation without the DIC 2011-01-25 11:31:04 +01:00
Bernhard Schussek
0239d62619 [Form] Made the CSRF provider service public so that it can be used without forms 2011-01-25 11:31:04 +01:00
Bernhard Schussek
7848a7ca63 [Form] Refactored CSRF implementation to be reusable and to work correctly with the session service 2011-01-25 11:31:04 +01:00
Ryan Weaver
d341e8bccb [Form] Adding PHPDoc to many Field objects and making other small changes:
* Added empty_value option on CountryField, LanguageField, LocaleField, TimezoneField
 * Added missing date_pattern to DateTimeField
 * Made the currency option on MoneyField required.
2011-01-25 11:10:25 +01:00
Eriksen Costa
b38519bb23 [FrameworkBundle] fixed call to \Locale::getDefault() 2011-01-25 11:10:25 +01:00
Jordi Boggiano
08f8b223ff [Serializer] Added hasEncoder and getEncoder to the SerializerInterface 2011-01-25 11:06:18 +01:00
Jordi Boggiano
6f5c2e2d8b [Serializer] Abstract classes now implement their respective interfaces 2011-01-25 11:06:18 +01:00
Jordi Boggiano
cbd4fdd398 [Serializer] JsonEncoder must return arrays only 2011-01-25 11:06:18 +01:00
Benjamin Eberlei
4d4eec618c [DoctrineBundle] Implement Proxy CacheWarmer 2011-01-25 10:06:35 +01:00
Andy Stanberry
0ef67112b2 [Console] added writeln to the OutputInterface 2011-01-25 10:05:07 +01:00
Stepan Tanasiychuk
8ec6878a2a fix bug in Symfony\Bundle\FrameworkBundle\Templating\Helper\FormHelper 2011-01-25 10:03:50 +01:00
Bernhard Schussek
e4eb7f720b [DoctrineBundle] Fixed: CollectionToChoiceTransformer should accept null values 2011-01-25 10:02:12 +01:00
Henrik Bjørnskov
3564b86ee9 [DoctrineBundle] Fixed loggin in DoctrineExtension not being taken into account 2011-01-25 09:57:47 +01:00
Fabien Potencier
03e51cc1e2 [FrameworkBundle] fixed template paths cache warmer (it should index all templates, not just the Twig ondes) 2011-01-25 09:55:03 +01:00
Fabien Potencier
561a3e47b3 [HttpKernel] made another speed optimization 2011-01-25 09:33:07 +01:00
Fabien Potencier
79dce161dd made a performance optimization
To benefit from the optimization, you need to change this line from your
autoload.php:

require_once $vendorDir.'/symfony/src/Symfony/Component/HttpFoundation/UniversalClassLoader.php';

to this one:

require_once $vendorDir.'/symfony/src/Symfony/Component/HttpKernel/bootstrap.php';

Notice that if you don't do this change, your app will in fact be slower than before.
2011-01-25 09:06:12 +01:00
Fabien Potencier
3e71c2c76e [DependencyInjection] made a small speed optimization 2011-01-25 08:41:58 +01:00
Fabien Potencier
2499ac4d21 [FrameworkBundle] fixed cache warmer when global view directory does not exist 2011-01-25 08:29:11 +01:00
Bulat Shakirzyanov
558268331b [DoctrineMongoDBBundle] added a check that fixture dir exists 2011-01-24 22:22:16 +01:00
Fabien Potencier
2860c2651c [FrameworkBundle] fixed template paths cache warmer 2011-01-24 22:05:48 +01:00
beberlei
2bc6197859 [DoctrineBundle] Fix bug in Auto Proxy Generation introduced with config merge refactoring 2011-01-24 21:49:19 +01:00
Fabien Potencier
69fb235160 Revert "[DoctrineBundle] Fix bug in Auto Proxy Generation introduced with config merge refactoring. Use array_reverse() for $configs to fix incremental merge algorithm assumptions."
This reverts commit 1bc0b54411.
2011-01-24 21:36:12 +01:00
Johannes Schmitt
f29a5f74a1 made the DI config validation more strict to catch errors early 2011-01-24 21:15:48 +01:00
Stepan Tanasiychuk
4408cbc9fa fix bug in Symfony\Bundle\DoctrineMigrationsBundle\Command\DoctrineCommand 2011-01-24 20:36:01 +01:00
beberlei
1bc0b54411 [DoctrineBundle] Fix bug in Auto Proxy Generation introduced with config merge refactoring. Use array_reverse() for $configs to fix incremental merge algorithm assumptions. 2011-01-24 20:34:57 +01:00
Bulat Shakirzyanov
571448b047 [FrameworkBundle] mode include tag filenames fixes 2011-01-24 19:33:43 +01:00
Fabien Potencier
9607e61d86 [Console] fixed typo 2011-01-24 19:05:36 +01:00
Bulat Shakirzyanov
14e4b9733d [HttpFoundation] fixed FileBag to handle sub-requests 2011-01-24 18:22:48 +01:00
Fabien Potencier
edb11ad5cb [FrameworkBundle] added a cache warmer for the router
To enable this cache warmer, you must add a "cache-warner" option
to app:router:

        <app:config>
            <app:router cache-warmer="true" />
2011-01-24 18:13:43 +01:00
Fabien Potencier
8f6e8a4691 [TwigBundle] added a cache warmer to generate all Twig templates cache
To enable this cache warmer, you must add a "cache-warner" option
to twig:config:

        <twig:config cache-warmer="true">
2011-01-24 18:13:42 +01:00
Fabien Potencier
206b49a22f [FrameworkBundle] added a cache warmer to pre-compute template paths
To enable this cache warmer, you must add a "cache-warner" option
to app:templating:

        <app:templating cache-warmer="true">
2011-01-24 18:13:39 +01:00
Fabien Potencier
d0b4bfc8f6 added a cache warmer sub-framework
Cache warmer will come in the next commits.

To warm up the cache on a production server, you can use
the cache:warmup command:

./app/console_prod cache:warmup
2011-01-24 18:08:51 +01:00
Bulat Shakirzyanov
04e16e433d [DependencyInjection] fixed ResolveInterfaceInjectorsPass, as services might not have a class defined due to a scope (e.g. 'request') 2011-01-24 17:55:09 +01:00
Johannes M. Schmitt
e55f150fb7 adds hasTag() to Definition 2011-01-24 17:46:22 +01:00
Jeremy Mikola
b3d55850df [FrameworkBundle] Controller::forward() should invoke HttpKernel instead of ControllerResolver 2011-01-24 17:45:19 +01:00
Fabien Potencier
ca8c7907e2 [Routing] added setContext() method to both matchers and generators 2011-01-24 16:59:32 +01:00
Fabien Potencier
49793c22d4 fixed event dispatcher 2011-01-24 16:46:04 +01:00
Daniel Holmes
fd98c8f0f2 Removed assumption that phpunit.xml is relative 2011-01-24 07:35:45 +01:00
Fabien Potencier
e1a3cd0446 removed output() methods, which are only shortcut for 'echo render' 2011-01-23 22:09:12 +01:00
Johannes Schmitt
6432dea07c adds migrate() to Session
This migrates the session to a new session id while not deleting the
actual session attributes.
2011-01-23 21:52:31 +01:00
Johannes M. Schmitt
0144dd86da adds synthetic attribute to definitions
This attribute can be used to hint that the service is being injected
dynamically at runtime, and not constructed by the DIC.
2011-01-23 21:11:50 +01:00
Ryan Weaver
7e2331fabd [DoctrineBundle] Removing the "doctrine.orm.metadata.annotation_default_namespace" parameter which is unused. Beberlei agreed that this is outdated and can probably go (and it matches the corresponding parameter I've removed in the ODM). 2011-01-23 20:23:41 +01:00
Ryan Weaver
bcd0afdab1 [DoctrineMongoDBBundle] Fixing bad hydrator namespace. 2011-01-23 20:23:41 +01:00
Ryan Weaver
05dc63c19e [DoctrineMongoDBBundle] Removing unused option. 2011-01-23 20:23:41 +01:00
Ryan Weaver
65d2e92902 [DoctrineMongoDBBundle] Removing duplicate test (this same line is about ten lines up). 2011-01-23 20:23:41 +01:00
Ryan Weaver
7bd5171fa1 [DoctrineMongoDBBundle] This parameter may be necessary, but it was not currently implemented (and it's set to the default that's set internally). So, I've removed it. 2011-01-23 20:23:41 +01:00
Fabien Potencier
67790c129b updated bootstrap file 2011-01-23 18:10:25 +01:00
Fabien Potencier
1c11d81611 made all event listeners lazy loaded
* The register() method on all listeners has been removed
 * Instead, the information is now put directly in the DIC tag

For instance, a listener on core.request had this method:

   public function register(EventDispatcher $dispatcher, $priority = 0)
   {
       $dispatcher->connect('core.response', array($this, 'filter'), $priority);
   }

And this tag in the DIC configuration:

  <tag name="kernel.listener" />

Now, it only has the following configuration:

  <tag name="kernel.listener" event="core.response" method="filter" priority="0" />

The event and method attributes are now mandatory.
2011-01-23 18:07:05 +01:00
Fabien Potencier
9310eea57a optimized templating layer
You must now explicitly register the templating engine you want to use:

  <app:templating>
      <app:engine id="twig" />
  </app:templating>

  app.templating:
      engines: ['twig']

Symfony2 comes with two such engines: 'twig', and 'php'.
2011-01-23 15:43:08 +01:00
Fabien Potencier
5e625d1f52 [FrameworkBundle] simplified code 2011-01-23 14:38:09 +01:00
Fabien Potencier
43c61754ab [FrameworkBundle] removed obsolete parameter 2011-01-23 14:33:19 +01:00
Fabien Potencier
ad0e94468d [FrameworkBundle] removed obsolete option 2011-01-23 14:17:15 +01:00
Fabien Potencier
622d228090 [HttpKernel] fixed typo 2011-01-23 14:10:12 +01:00
Fabien Potencier
09aeb78634 removed Kernel::isBooted() method 2011-01-23 13:17:50 +01:00
Jordi Boggiano
005c1d9df8 [Serializer] Added initial version of the Serializer component 2011-01-23 12:34:47 +01:00
Fabien Potencier
e5c8d7aa4f [HttpKernel] fixed typo in phpdoc 2011-01-23 12:10:45 +01:00
Fabien Potencier
e151580212 [HttpKernel] removed getRequest as it's not part of the interface anymore 2011-01-23 11:23:30 +01:00
Fabien Potencier
8c0d46365d [FrameworkBundle] added a comment for the request service
This reverts commit c68501cca4.
2011-01-23 11:22:33 +01:00
Fabien Potencier
73ab687521 moved ControllerResolver methods to HttpKernel (makes more sense) 2011-01-23 10:23:33 +01:00
Fabien Potencier
c68501cca4 [FrameworkBundle] removed the request service from configuration 2011-01-23 10:05:22 +01:00
Fabien Potencier
b577ce665a [HttpKernel] fixed scope management in HttpKernel
We should always leave the request scope at the end of the request processing.
If not, the HttpKernel leaves the container in a different state.
2011-01-23 08:47:00 +01:00
Fabien Potencier
86b357d70b [FrameworkBundle] fixed ESI configuration 2011-01-23 08:43:29 +01:00
Fabien Potencier
a8685614e0 [FrameworkBundle] fixed session auto-start option 2011-01-23 08:36:19 +01:00
Fabien Potencier
0b05fe1b1f [HttpKernel] fixed HTTP headers when requesting a HEAD on a cached response 2011-01-23 08:16:18 +01:00
Bulat Shakirzyanov
271e757f27 [HttFoundation] extracted FileBag, ServerBag, fixed HeaderBag::add(), updated Request test 2011-01-23 07:40:31 +01:00
Fabien Potencier
183c8c6f6c fixed CS 2011-01-23 07:37:01 +01:00
Jordi Boggiano
74272e02da [HttpKernel] Added path to controller not found exception 2011-01-23 07:35:41 +01:00
Fabien Potencier
eb8b3d9c21 [FrameworkBundle] added support for both csrf-protection and csrf_protection 2011-01-22 20:12:45 +01:00
Fabien Potencier
bd125fc05e [FrameworkBundle] fixed typo 2011-01-22 20:09:36 +01:00
Ryan Weaver
35ce9a37d1 [Form] Adding PHPDoc to ChoiceField and removing two unused options.
I believe the empty_value option is just a leftover Django-style option for what value the field should have if left blank. I don't see this doing anything and find no reference to anything like it anywhere else.

The separator option functionality is currently handled as a parameter in the field render functions. I think this should be moved to an option on the field, but this reflects teh current functionality (i.e. this option is not used).
2011-01-22 20:05:10 +01:00
Ryan Weaver
f73107cb9d [FrameworkBundle] Updting XSD file for new csrf_protection configuration format. 2011-01-22 20:04:36 +01:00
Benjamin Eberlei
682e83585b [DoctrineBundle] Add new Command doctrine:mapping:info that allows to check what entities are mapped and if their metadata is specified correctly. Added exception when a mapping/bundle directory does not exist. 2011-01-22 19:48:10 +01:00
Benjamin Eberlei
a50f56a7e9 [DoctrineBundle] Revert removal of dic parameter doctrine.orm.auto_generate_proxy_classes. 2011-01-22 17:53:44 +01:00
Benjamin Eberlei
8d938c54d1 [DoctrineBundle] Fix CS 2011-01-22 17:53:43 +01:00
Benjamin Eberlei
8930048ff8 [DoctrineBundle] Use doctrine.dbal.logging parameter. 2011-01-22 16:11:20 +01:00
Benjamin Eberlei
22f6307053 [DoctrineBundle] Changed and simplified dbalLoad() slightly. Made logging explicit with a configuration variable to avoid tons of unnecessary method calls in prod. environment. 2011-01-22 16:11:20 +01:00