Commit Graph

847 Commits

Author SHA1 Message Date
Bernhard Schussek
b21929423e [Form] Completely removed the fields variable in the renderer. The renderer itself supports ArrayAccess and Traversable 2011-03-27 13:48:36 +02:00
Bernhard Schussek
fae319e77a [Form] Renderers are now created explicitely using FormFactory::createRenderer(). This improves performance on requests where a form does not need to be rendered 2011-03-26 16:03:34 +01:00
Bernhard Schussek
d84d167b71 [Form] Fixed display of enctype for file fields in Twig theme 2011-03-25 00:16:30 +01:00
Benjamin Eberlei
8d6dd2b9af [Form] Add Arbitrary Attribute Support to Form Rendering. 2011-03-24 22:08:08 +01:00
Bernhard Schussek
9839aafb7d Merge remote branch 'symfony/master' into experimental 2011-03-23 19:18:38 +01:00
Fabien Potencier
82dec51b30 moved integration between the Yaml component and Twig to a Symfony Bridge 2011-03-23 15:50:55 +01:00
Fabien Potencier
e912b347f0 moved integration between the Translation component and Twig to a Symfony Bridge 2011-03-23 15:23:52 +01:00
Fabien Potencier
3e5bd67dac moved integration between Routing and Twig to a Symfony Bridge 2011-03-23 15:16:57 +01:00
Bernhard Schussek
1c5bbb5426 Merge remote branch 'johnwards/experimental' into johnwards-merge 2011-03-21 22:14:59 +01:00
John Wards
31647d3662 [TwigBundle] Changed twig variable from 'this' to 'renderer' 2011-03-21 20:46:19 +00:00
Bernhard Schussek
61804bbd8b Merge remote branch 'symfony/master' into experimental 2011-03-21 20:27:39 +01:00
Miha Vrhovnik
e57075ea60 removed unused and undefined namespace and use statement 2011-03-21 10:50:13 +01:00
Benjamin Eberlei
32e1a7c8f9 Merge bschussek/experimental into branch forms. 2011-03-19 15:18:52 +01:00
Bernhard Schussek
3e17b26105 [Form] Moved CSRF protection into separate field 2011-03-19 15:06:54 +01:00
Bernhard Schussek
89215d167d Merge remote branch 'symfony/master' into experimental 2011-03-19 13:25:41 +01:00
Benjamin Eberlei
bb8c2a9b9d Rename this to renderer to be able to use it in Php Templating 2011-03-19 11:54:46 +01:00
Fabien Potencier
2d9ae36119 Merge remote branch 'vicb/one_more_thing' 2011-03-18 16:32:35 +01:00
Fabien Potencier
0c8ff92ecd made the controller name in the WDT clickable 2011-03-18 16:09:21 +01:00
Victor Berchet
d959a3ed4b [TwigBundle] Rename the cache warmer service 2011-03-18 15:48:34 +01:00
Fabien Potencier
c5a6c8432f Merge remote branch 'vicb/templating' 2011-03-18 11:54:20 +01:00
Victor Berchet
f89a5ff3b8 [TwigBundle] Fix some typos 2011-03-18 11:30:23 +01:00
Victor Berchet
7f523466f4 [TwigBundle] Fix the cache warmer 2011-03-18 11:23:23 +01:00
Christophe Coevoet
2743abc35d [DoctrineBundle] Fix some typos 2011-03-17 23:14:18 +01:00
Victor Berchet
0e84757d94 Tweak PHPDocs in the extension configuration files 2011-03-17 16:29:03 +01:00
Victor Berchet
1e0ed22c55 [Config] Component refactoring
The Config component API have changed and the extension configuration files must be updated accordingly:

1. Array nodes must enclosed their children definition in ->children() ... ->end() calls:

Before:

    $treeBuilder->root('zend', 'array')
        ->arrayNode('logger')
            ->scalarNode('priority')->defaultValue('INFO')->end()
            ->booleanNode('log_errors')->defaultFalse()->end()
        ->end();

After:

    $treeBuilder->root('zend', 'array')
        ->children()
            ->arrayNode('logger')
                ->children()
                    ->scalarNode('priority')->defaultValue('INFO')->end()
                    ->booleanNode('log_errors')->defaultFalse()->end()
                ->end()
            ->end()
        ->end();

2. The 'builder' method (in NodeBuilder) has been dropped in favor of an 'append' method (in ArrayNodeDefinition)

Before:

    $treeBuilder->root('doctrine', 'array')
        ->arrayNode('dbal')
            ->builder($this->getDbalConnectionsNode())
        ->end();

After:

    $treeBuilder->root('doctrine', 'array')
        ->children()
            ->arrayNode('dbal')
                ->append($this->getDbalConnectionsNode())
            ->end()
        ->end();

3. The root of a TreeBuilder is now an NodeDefinition (and most probably an ArrayNodeDefinition):

Before:

    $root = $treeBuilder->root('doctrine', 'array');
    $this->addDbalSection($root);

    public function addDbalSection(NodeBuilder $node)
    {
        ...
    }

After:

    $root = $treeBuilder->root('doctrine', 'array');
    $this->addDbalSection($root);

    public function addDbalSection(ArrayNodeDefinition $node)
    {
        ...
    }

4. The NodeBuilder API has changed (this is seldom used):

Before:

    $node = new NodeBuilder('connections', 'array');

After:

The recommended way is to use a tree builder:

    $treeBuilder = new TreeBuilder();
    $node = $treeBuilder->root('connections', 'array');

An other way would be:

    $builder = new NodeBuilder();
    $node = $builder->node('connections', 'array');

Some notes:

- Tree root nodes should most always be array nodes, so this as been made the default:

    $treeBuilder->root('doctrine', 'array') is equivalent to $treeBuilder->root('doctrine')

- There could be more than one ->children() ... ->end() sections. This could help with the readability:

    $treeBuilder->root('doctrine')
        ->children()
            ->scalarNode('default_connection')->end()
        ->end()
        ->fixXmlConfig('type')
        ->children()
            ->arrayNode('types')
                ....
            ->end()
        ->end()
2011-03-17 16:26:15 +01:00
Bernhard Schussek
1c9a00733f Merge branch 'event-manager' into experimental
Conflicts:
	src/Symfony/Component/Security/Http/Firewall/AbstractAuthenticationListener.php
	src/Symfony/Component/Security/Http/Firewall/AbstractPreAuthenticatedListener.php
2011-03-17 13:38:24 +01:00
Fabien Potencier
005287ac88 Merge remote branch 'kriswallsmith/templating/asset-packages' 2011-03-16 16:18:45 +01:00
Bernhard Schussek
f64f55002b Merge remote branch 'symfony/master' into experimental
Conflicts:
	src/Symfony/Component/Security/Http/Firewall/AbstractAuthenticationListener.php
	src/Symfony/Component/Security/Http/Firewall/AbstractPreAuthenticatedListener.php
2011-03-16 16:00:54 +01:00
Christophe Coevoet
61abc3d01f Added the global variable in PHP templates too 2011-03-16 13:11:29 +01:00
Fabien Potencier
539e0e4870 Merge remote branch 'mweimerskirch/master' 2011-03-14 14:38:00 +01:00
Bernhard Schussek
0bf566310c Merge branch 'event-manager' into experimental
Conflicts:
	src/Symfony/Component/Form/BirthdayField.php
	src/Symfony/Component/Form/CheckboxField.php
	src/Symfony/Component/Form/ChoiceField.php
	src/Symfony/Component/Form/ChoiceList/TimeZoneChoiceList.php
	src/Symfony/Component/Form/CollectionField.php
	src/Symfony/Component/Form/DateField.php
	src/Symfony/Component/Form/DateTimeField.php
	src/Symfony/Component/Form/EntityChoiceField.php
	src/Symfony/Component/Form/Events.php
	src/Symfony/Component/Form/FieldFactory/FieldFactory.php
	src/Symfony/Component/Form/FieldFactory/FieldFactoryInterface.php
	src/Symfony/Component/Form/FileField.php
	src/Symfony/Component/Form/Filters.php
	src/Symfony/Component/Form/FormContext.php
	src/Symfony/Component/Form/FormContextInterface.php
	src/Symfony/Component/Form/FormFactoryInterface.php
	src/Symfony/Component/Form/HybridField.php
	src/Symfony/Component/Form/IntegerField.php
	src/Symfony/Component/Form/LanguageField.php
	src/Symfony/Component/Form/LocaleField.php
	src/Symfony/Component/Form/MoneyField.php
	src/Symfony/Component/Form/NumberField.php
	src/Symfony/Component/Form/PasswordField.php
	src/Symfony/Component/Form/PercentField.php
	src/Symfony/Component/Form/RepeatedField.php
	src/Symfony/Component/Form/TextField.php
	src/Symfony/Component/Form/TimeField.php
	src/Symfony/Component/Form/ToggleField.php
	src/Symfony/Component/Form/UrlField.php
	src/Symfony/Component/HttpFoundation/File/UploadedFile.php
	tests/Symfony/Tests/Component/Form/FileFieldTest.php
	tests/Symfony/Tests/Component/Form/FormContextTest.php
	tests/Symfony/Tests/Component/Form/HiddenFieldTest.php
2011-03-13 21:04:24 +01:00
Don Pinkster
f8493842d3 [TwigBundle] Fixed PHPDoc 2011-03-11 22:44:32 +01:00
Don Pinkster
c4923fc57e [TwigBundle] Fixed typo 2011-03-11 22:39:47 +01:00
Kris Wallsmith
7d9ddb546e [TwigBundle] updated to support asset packages 2011-03-08 09:24:43 -08:00
Fabien Potencier
8c423edfef replaced symfony-project.org by symfony.com 2011-03-06 12:40:06 +01:00
Bernhard Schussek
e53c688a6b [Form] Fixed RepeatedField, improved structure of the Twig templates 2011-03-02 16:00:31 +01:00
Bernhard Schussek
68013f4db2 Merge remote branch 'symfony/master' into experimental 2011-03-02 12:27:30 +01:00
Pascal Borreli
19f931a231 [TwigBundle] Fixed Typo 2011-03-01 18:58:07 +01:00
Bernhard Schussek
c1edf116f2 [Form] Removed notion of "hidden" fields
Instead, hidden fields now override the "row" template to not include a label or errors.

The "rest" (former "hidden") helper has been adapted to output any fields that were not
rendered manually. It should usually be called at the end of a form.
2011-02-28 17:01:11 +01:00
Bernhard Schussek
02d2121dcd [Form] Improved rendering
Fields are not available in the templates anymore. Instead, all required information can be
accessed through view variables.

Example usage of helpers and variables in a form theme:

// use the label helper
{{ this.label('my label') }}

// use the label variable
{{ this.vars.label }}
{{ label }}

Example usage of helpers and variables in a normal template:

// use the label helper
{{ field.label('my label') }}

// use the label variable
{{ field.vars.label }}
2011-02-28 16:50:23 +01:00
Christophe Coevoet
92bfbf575c Fixed CS 2011-02-27 20:56:29 +01:00
Pascal Borreli
0c9951f676 [TwigBundle] Fixed typo 2011-02-26 20:02:05 +01:00
Bernhard Schussek
c6e9fd97b6 [Form] Fixed various bugs 2011-02-25 00:09:10 +01:00
Bernhard Schussek
eca2b87313 Merge branch 'master' into experimental 2011-02-24 21:28:09 +01:00
Michel Weimerskirch
6998e593e0 Added line number to TransChoiceTokenParser exception message (TwigBundle). 2011-02-24 06:47:45 -08:00
Fabien Potencier
79bc233344 [TwigBundle] fixed typo 2011-02-24 09:46:59 +01:00
Bernhard Schussek
c8275c5b27 [Form] Refactored PercentField to FormFactory 2011-02-23 15:26:01 +01:00
Bernhard Schussek
68bb3ff606 [Form] Used ValuePlugin to pass displayed data to template. The order of added renderer plugins and set renderer variables is now respected 2011-02-23 14:11:18 +01:00
Bernhard Schussek
ce432e939d [Form] Changed notion of 'parameter' to 'var' in the renderer. Merged vars and attributes into single array 2011-02-23 14:11:18 +01:00
Bernhard Schussek
2b8ca25d01 [Form] Refactored NumberField, IntegerField, HiddenField and MoneyField to FormFactory 2011-02-23 14:11:18 +01:00
Bernhard Schussek
9394ffdea1 [Form] Started to refactor TimeField to FormFactory::getTimeField(). Validation logic is still missing. 2011-02-23 14:11:18 +01:00
Bernhard Schussek
975b8ebe9b [Form] Started to refactor DateField to FormFactory::getDateField(). Validation logic is still missing. 2011-02-23 14:11:18 +01:00
Bernhard Schussek
b148a2a7ed [Form] Refactored ChoiceField to FormFactory::getChoiceField() 2011-02-23 14:11:18 +01:00
Bernhard Schussek
7a48c0a5c5 [Form] Refactored logic from ChoiceField into ChoicePlugin and SelectMultipleNamePlugin 2011-02-23 14:11:18 +01:00
Bernhard Schussek
f7dc71ef59 [Form] Refactored id and name generation to renderer plugins 2011-02-23 14:11:17 +01:00
Bernhard Schussek
861ff957e7 [Form] Refactored DateField pattern, fixed maxlength in TextField 2011-02-23 14:11:17 +01:00
Bernhard Schussek
ed68fd66a9 [Form] Improved the renderer implementation, added concepts of plugins and themes 2011-02-23 14:11:17 +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
23e9386a0e changed all extensions to use the default Extension::getAlias() impl 2011-02-20 08:58:37 +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
Fabien Potencier
d6c277f5c4 Merge remote branch 'stof/escaping'
* stof/escaping:
  Fixed escaping for arguments
2011-02-19 18:50:32 +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
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
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
Jordi Boggiano
38813c122e [TwigBundle] Resolve some TODOs in form templates 2011-02-17 16:00:28 +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
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
Victor Berchet
af81bcabf0 [Templating] Refactor the component 2011-02-14 21:11:44 +01:00
Fabien Potencier
5c905beb13 moved common configuration classes to a new Config component 2011-02-13 22:31:50 +01:00
Johannes Schmitt
19bbafc441 [Security] Refactored security context, moved getUser() implementation to templating 2011-02-12 21:53:04 +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
a8ec9b27f0 moved duplicated files to a new Config component 2011-02-10 03:43:36 +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
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
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
Fabien Potencier
e5403490e7 removed the need to define getNamespace() and getPath() in bundles 2011-02-05 22:40:30 +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
195c971da6 removed load() from EngineInterface 2011-02-04 19:28:14 +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
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
Fabien Potencier
6b7e4ad2f9 [TwigBundle] fixed typo 2011-02-04 00:54:09 +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
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
Bernhard Schussek
c468db5c5b [Form] Merged classes FieldGroup and Form for simplicity 2011-02-01 15:27:12 +01:00
Christophe Coevoet
156a5dcb9f Fixed escaping for arguments 2011-01-29 20:29:49 +01:00
Lukas Kahwe Smith
26666a272d fixed array support in twig globals 2011-01-27 21:48:20 +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
Fabien Potencier
db2f2b1315 refactored template name parser to occur independently of the loaders 2011-01-26 14:53:12 +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
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
73ab687521 moved ControllerResolver methods to HttpKernel (makes more sense) 2011-01-23 10:23:33 +01:00
Fabien Potencier
59a974e8f6 added TemplateLocatorInterface 2011-01-22 08:31:08 +01:00
Fabien Potencier
72b7876c80 [TwigBundle] fiwed phpdoc 2011-01-21 18:04:56 +01:00
Fabien Potencier
fedb4b4f0d [TwigBundle] started to refactor TwigExtension 2011-01-21 17:45:04 +01:00
Fabien Potencier
69f0ec3b1a added a method to normalize config entries coming from YAML and XML 2011-01-21 17:44:30 +01:00
Johannes M. Schmitt
8d19136a55 refactors extensions to call XXXLoad only once with all config sections 2011-01-21 17:04:18 +01:00
Henrik Bjørnskov
5e9c9f4174 Template rename fix files 2011-01-21 15:06:10 +01:00
Henrik Bjørnskov
a5007febdd [FrameworkBundle] Renderer is once more the last of the templates 2011-01-21 15:06:10 +01:00
Fabien Potencier
0b0c15b7b6 made XSD less strict when possible 2011-01-21 10:53:13 +01:00
Ryan Weaver
17f9162b89 [Standards] Changing many instances of "boolean" to "Boolean". 2011-01-21 09:53:24 +01:00
Fabien Potencier
6d1e91a1fa refactored bundle management
Before I explain the changes, let's talk about the current state.

Before this patch, the registerBundleDirs() method returned an ordered (for
resource overloading) list of namespace prefixes and the path to their
location. Here are some problems with this approach:

 * The paths set by this method and the paths configured for the autoloader
   can be disconnected (leading to unexpected behaviors);

 * A bundle outside these paths worked, but unexpected behavior can occur;

 * Choosing a bundle namespace was limited to the registered namespace
   prefixes, and their number should stay low enough (for performance reasons)
   -- moreover the current Bundle\ and Application\ top namespaces does not
   respect the standard rules for namespaces (first segment should be the
   vendor name);

 * Developers must understand the concept of "namespace prefixes" to
   understand the overloading mechanism, which is one more thing to learn,
   which is Symfony specific;

 * Each time you want to get a resource that can be overloaded (a template for
   instance), Symfony would have tried all namespace prefixes one after the
   other until if finds a matching file. But that can be computed in advance
   to reduce the overhead.

Another topic which was not really well addressed is how you can reference a
file/resource from a bundle (and take into account the possibility of
overloading). For instance, in the routing, you can import a file from a
bundle like this:

  <import resource="FrameworkBundle/Resources/config/internal.xml" />

Again, this works only because we have a limited number of possible namespace
prefixes.

This patch addresses these problems and some more.

First, the registerBundleDirs() method has been removed. It means that you are
now free to use any namespace for your bundles. No need to have specific
prefixes anymore. You are also free to store them anywhere, in as many
directories as you want. You just need to be sure that they are autoloaded
correctly.

The bundle "name" is now always the short name of the bundle class (like
FrameworkBundle or SensioCasBundle). As the best practice is to prefix the
bundle name with the vendor name, it's up to the vendor to ensure that each
bundle name is unique. I insist that a bundle name must be unique. This was
the opposite before as two bundles with the same name was how Symfony2 found
inheritance.

A new getParent() method has been added to BundleInterface. It returns the
bundle name that the bundle overrides (this is optional of course). That way,
there is no ordering problem anymore as the inheritance tree is explicitely
defined by the bundle themselves.

So, with this system, we can easily have an inheritance tree like the
following:

FooBundle < MyFooBundle < MyCustomFooBundle

MyCustomFooBundle returns MyFooBundle for the getParent() method, and
MyFooBundle returns FooBundle.

If two bundles override the same bundle, an exception is thrown.

Based on the bundle name, you can now reference any resource with this
notation:

    @FooBundle/Resources/config/routing.xml
    @FooBundle/Controller/FooController.php

This notation is the input of the Kernel::locateResource() method, which
returns the location of the file (and of course it takes into account
overloading).

So, in the routing, you can now use the following:

    <import resource="@FrameworkBundle/Resources/config/internal.xml" />

The template loading mechanism also use this method under the hood.

As a bonus, all the code that converts from internal notations to file names
(controller names: ControllerNameParser, template names: TemplateNameParser,
resource paths, ...) is now contained in several well-defined classes. The
same goes for the code that look for templates (TemplateLocator), routing
files (FileLocator), ...

As a side note, it is really easy to also support multiple-inheritance for a
bundle (for instance if a bundle returns an array of bundle names it extends).
However, this is not implemented in this patch as I'm not sure we want to
support that.

How to upgrade:

 * Each bundle must now implement two new mandatory methods: getPath() and
   getNamespace(), and optionally the getParent() method if the bundle extends
   another one. Here is a common implementation for these methods:

    /**
     * {@inheritdoc}
     */
    public function getParent()
    {
        return 'MyFrameworkBundle';
    }

    /**
     * {@inheritdoc}
     */
    public function getNamespace()
    {
        return __NAMESPACE__;
    }

    /**
     * {@inheritdoc}
     */
    public function getPath()
    {
        return strtr(__DIR__, '\\', '/');
    }

 * The registerBundleDirs() can be removed from your Kernel class;

 * If your code relies on getBundleDirs() or the kernel.bundle_dirs parameter,
   it should be upgraded to use the new interface (see Doctrine commands for
   many example of such a change);

 * When referencing a bundle, you must now always use its name (no more \ or /
   in bundle names) -- this transition was already done for most things
   before, and now applies to the routing as well;

 * Imports in routing files must be changed:
    Before: <import resource="Sensio/CasBundle/Resources/config/internal.xml" />
    After:  <import resource="@SensioCasBundle/Resources/config/internal.xml" />
2011-01-20 18:42:47 +01:00
Jordi Boggiano
252918beb2 [TwigBundle] Fixed RenderTokenParser when with isn't used and options are provided 2011-01-20 16:47:54 +01:00
Ryan Weaver
ea2cb49696 [TwigBundle] Improving the PHPDoc on the FormExtension inside the TwigBundle. 2011-01-20 16:37:36 +01:00
Jordi Boggiano
de3f240ea4 [Form] Added required attribute on input field templates 2011-01-19 16:25:49 +01:00
Jordi Boggiano
ae40a5da53 [Form] Use HTML5 number and url input types for number and url fields 2011-01-19 16:25:49 +01:00
Fabien Potencier
40a70cd6f4 simplified TemplateNameParser::parse() return value 2011-01-18 19:13:37 +01:00
Dominique Bongiraud
64fb94c725 normalized license messages in PHP files 2011-01-18 08:07:46 +01:00
Sergey Linnik
22aba900d4 [TwigBundle] Normalize names of templates and enable cache found templates file names 2011-01-18 07:45:52 +01:00
Fabien Potencier
5b3e5e454b reverted a previous commit where translators were made optional 2011-01-17 22:58:55 +01:00
Fabien Potencier
00b19e234d fixed typos 2011-01-17 20:23:32 +01:00
Fabien Potencier
dba8c67941 [FrameworkBundle] disable translator if not explicitely enabled 2011-01-17 16:05:24 +01:00
Fabien Potencier
b7d2528384 added a way for any extension to add classes to the class cache 2011-01-16 11:32:17 +01:00
Johannes Schmitt
f1b7bc1fe9 some refactorings/improvements 2011-01-15 21:07:35 +01:00
Fabien Potencier
a365ab2884 changed the template name format
Before

bundle:section:template.format.renderer

After

bundle:section:template.renderer.format

Notice that both the renderer and the format are mandatory.
2011-01-15 12:33:27 +01:00
Fabien Potencier
055b6e4d6e made a big refactoring of the templating sub-framework
* better separation of concerns
 * made TwigBundle independant of the PHP Engine from FrameworkBundle (WIP)
 * removed one layer of abstraction in the Templating component (renderers)
 * made it easier to create a new Engine for any templating library
 * made engines lazy-loaded (PHP engine for instance is not started if you only use Twig)
 * reduces memory footprint (if you only use one engine)
 * reduces size of compiled classes.php cache file
2011-01-15 07:43:05 +01:00
Fabien Potencier
6b4ae4479a [TwigBundle] removed coupling between TemplatingExtension and Templating Engine 2011-01-14 08:57:04 +01:00
Fabien Potencier
c38c0c303e refactored Templating
* made the renderer argument of Storage ctor mandatory
 * refactored the Engine class to avoid code duplication
 * simplified the check for a template that extends another one but with a different renderer
2011-01-13 11:16:45 +01:00
Fabien Potencier
e975a09003 [TwigBundle] tweaked a comment 2011-01-13 07:55:58 +01:00
partugal
5ac67a23e7 [TwigBundle] addExtension calls must be first 2011-01-13 07:54:26 +01:00
Fabien Potencier
46f3da50d8 [TwigBundle] removed the cache for globals (does not work when working in functional tests) 2011-01-12 17:26:46 +01:00
Fabien Potencier
b056a6c3c1 [TwigBundle] fixed cache problem for some global variables 2011-01-12 17:25:39 +01:00
Victor Berchet
f2d32ccfde [Extensions] Type hints 2011-01-11 20:31:44 +01:00
Victor Berchet
9c51916503 [TwigBundle] Remove invalid options from the container 2011-01-11 20:29:05 +01:00
Fabien Potencier
450a6b39a2 [TwigBundle] moved global variables under the app. prefix
Before:

{{ session.flash('notice') }}

After:

{{ app.session.flash('notice') }}
2011-01-11 18:07:02 +01:00
Fabien Potencier
47b87e902e [TwigBundle] made global more powerful
A global can now be a service or a string:

<twig:config debug="%kernel.debug%" strict-variables="%kernel.debug%">
    <twig:global key="request" type="service" id="request" />
    <twig:global key="PI">3.14</twig:global>
</twig:config>
2011-01-11 15:55:31 +01:00
Fabien Potencier
50809d2ae0 [TwigBundle] added the security context and the user as global variables when they are defined 2011-01-07 17:49:43 +01:00
Fabien Potencier
1c3a01b25c removed duplicate code 2011-01-07 17:14:41 +01:00
Jeremy Mikola
0c50ca8775 [TwigBundle] Renderer::evaluate() should ensure the Request is both defined and non-empty
This addresses an oversight in my previous commit: 9553971d06
Author: Jeremy Mikola <jmikola@gmail.com>
Date:   Thu Jan 6 13:26:45 2011 -0500
2011-01-07 14:32:31 +01:00
Fabien Potencier
2ded40fb75 [TwigBundle] added a way to easily register extensions from the configuration
<twig:extension id="twig.extension.debug" />

    twig:
        extensions: [twig.extension.debug]

The Twig-Extensions repository extensions are already registered:

 * twig.extension.debug
 * twig.extension.text
2011-01-06 19:51:03 +01:00
Jeremy Mikola
9553971d06 [TwigBundle] Allow Renderer::evaluate() even when Request and Session are not available
This is helpful for using Twig outside of a request-serving context, such during a console command.  Added unit tests the original behavior and new behavior for this patch.
2011-01-06 19:31:27 +01:00
Fabien Potencier
911dbe9cc4 removed a circular reference in the definition of the templating and Twig services
* added a new TemplateNameConverter that parses a template name
 * removed the dependency between the Twig loader and the Templating engine
2011-01-06 14:52:43 +01:00
Fabien Potencier
e3944bf4e6 fixed escaping in CodeHelper::formatArgs() 2011-01-06 11:43:39 +01:00
Fabien Potencier
f946355f80 [TwigBundle] added a form_row() function 2011-01-05 19:37:50 +01:00
Johannes M. Schmitt
da5475ec42 service visibility changes 2011-01-05 16:01:48 +01:00
Johannes M. Schmitt
c5ef113b18 DI container optimization 2011-01-05 15:41:11 +01:00
Fabien Potencier
7fdc61f272 [TwigBundle] added a way to register Twig globals from configuration
<twig:config debug="%kernel.debug%" strict-variables="%kernel.debug%">
        <twig:global key="foo" id="request" />
    </twig:config>

    twig.config:
        globals:
          foo: request
2011-01-04 14:40:25 +01:00
Fabien Potencier
7b7e83f428 removed js and css helpers and Twig integration
These helpers have been removed as they do not work as expected.
Among other things, the order is not the right one when using PHP
templates, and adding assets from an included template is not
possible when using Twig templates.

This should be replaced by integrating a third-party library that
manages assets: minification, compilation, packaging, ...
2011-01-04 14:07:25 +01:00
Fabien Potencier
b60d254be2 [TwigBundle] added request and session as global variables
* removed the "_view" variable from templates
 * removed the "flash()" function (now available from the session directly {{ session.flash('notice') }})
2011-01-04 14:03:41 +01:00
Fabien Potencier
0e487cdda6 [TwigBundle] replaced current {{ foo }} syntax for translation placeholders to %foo% 2011-01-04 08:47:23 +01:00
Bernhard Schussek
114b2cf6c1 [FrameworkBundle] Attributes can now be passed when rendering form fields with the PHP renderer 2011-01-03 22:07:12 +01:00
Fabien Potencier
8b843e2662 [TwigBundle] fixed trans tag due to Twig changes 2011-01-03 20:09:48 +01:00
Fabien Potencier
8ca90d5233 fixed typo in phpdoc 2011-01-03 15:11:55 +01:00
Fabien Potencier
acbdbfca52 fixed typo 2011-01-03 14:59:27 +01:00
Fabien Potencier
5c6b594dae [TwigBundle] converted form filters to functions
|render_enctype -> form_enctype()
|render         -> form_field()
|render_hidden  -> form_hidden()
|render_errors  -> form_errors()
|render_label   -> form_label()
|render_data    -> form_data()
2011-01-03 14:45:16 +01:00
Fabien Potencier
e20a246eee [TwigBundle] fixed format_args configuration 2011-01-03 14:26:20 +01:00
Fabien Potencier
55b343b27c [TwigBundle] simplified code a bit 2011-01-03 12:34:14 +01:00
Fabien Potencier
2e9b8a4117 [TwigBundle] removed HelperTokenParser 2011-01-03 12:16:24 +01:00
Fabien Potencier
13bcf7cdac [TwigBundle] converted flash tag to a function 2011-01-03 12:14:54 +01:00
Fabien Potencier
3f492cae40 [TwigBundle] removed usage of HelperTokenParser for the js/css tags 2011-01-03 12:12:26 +01:00
Fabien Potencier
840bd8aacd [TwigBundle] removed usage of HelperTokenParser for the 'render' tag 2011-01-03 11:56:52 +01:00
Christophe Coevoet
da9d2e82f6 Added the Typehint needed by the type-hinting in Twig_Node 2011-01-02 16:25:18 +01:00
Bernhard Schussek
2daa6b5bfe [TwigBundle] Fixed display of DateFields in twig templates 2011-01-02 10:41:12 +01:00
Bernhard Schussek
d8b8ae0608 [FrameworkBundle][TwigBundle] Introduced field_row template for Form rendering 2011-01-02 10:41:00 +01:00
Fabien Potencier
62cd09e708 [TwigBundle] replaced the asset tag with an asset function (from {% asset css/foo.css %} to {{ asset('css/foo.css') }} 2010-12-31 16:59:44 +01:00
Johannes Schmitt
b4288459cc added ACL system to the Security Component 2010-12-31 09:25:53 +01:00
Fabien Potencier
8777a34234 [TwigBundle] updated templates for the latest version of Twig 2010-12-30 12:12:15 +01:00
Henrik Bjørnskov
59996bd8b9 [TwigBundle] Fixed form.twig calls to {% display %} 2010-12-30 12:06:52 +01:00
Fabien Potencier
77f5e7a5f3 [TwigBundle] updated functions to work with the latest version of Twig 2010-12-28 19:53:11 +01:00
Fabien Potencier
8e6a3849ee [TwigBundle] converted the special Twig Environment class to a DIC compiler class 2010-12-23 12:58:31 +01:00
Fabien Potencier
5d65f3edbd [TwigBundle] converted path and url tags to functions
{% url 'blog_post' with { 'id': post.id } %} -> {{ url('blog_post', { 'id': post.id }) }}
{% path 'blog_post' with { 'id': post.id } %} -> {{ path('blog_post', { 'id': post.id }) }}
2010-12-20 09:39:51 +01:00
Fabien Potencier
d935df036c [TwigBundle] removed unused tag and contenttag Twig tags 2010-12-20 09:05:16 +01:00
Fabien Potencier
bacb472e39 updated last commit to reflect Twig changes 2010-12-19 22:27:50 +01:00
Fabien Potencier
faac8e6ffd [TwigBundle] replaced the ifrole tag with a has_role function
Before:

{% ifrole "ROLE_ADMIN" %}
    Only show if you have the ROLE_ADMIN role...
{% endifrole %}

After:

{% if has_role("ROLE_ADMIN") %}
    Only show if you have the ROLE_ADMIN role...
{% endif %}
2010-12-19 22:07:15 +01:00
Fabien Potencier
6970a46b84 updated Twig templates for the new hash syntax 2010-12-14 09:46:24 +01:00
Fabien Potencier
02a92ec297 [TwigBundle] added autoescape option in Twig configuration 2010-12-12 14:41:00 +01:00
Lukas Kahwe Smith
30f231deaf moved default form template to the DIC config 2010-12-12 13:52:01 +01:00
Kris Wallsmith
3e02eafc70 Fixed visibility of PHPUnit setUp and tearDown methods. 2010-12-06 15:52:23 +01:00
Fabien Potencier
963cbdcee5 [TwigBundle] removed escaper and optimizer extension as they are now registered by default in Twig 2010-12-02 10:31:14 +01:00
Lukas Kahwe Smith
87846f1acd fixed typo in the translation for validations 2010-11-30 07:58:34 +01:00
Fabien Potencier
7ad3eca188 [TwigBundle] activated Twig Optimizer extension by default 2010-11-28 15:42:57 +01:00
Fabien Potencier
547eaa81f7 [TwigBundle] fixed option management for Twig_Environment 2010-11-27 11:36:11 +01:00
Fabien Potencier
07eceb7ade [TwigBundle] fixed ifrole tag when security context is not enabled 2010-11-26 18:06:04 +01:00
Francis Besset
5e150931c9 [TwigBundle] Fix call to a member function get() on a non-object 2010-11-23 22:04:51 +01:00
Fabien Potencier
a40d317f49 made a slight optimization 2010-11-23 18:44:04 +01:00
Bernhard Schussek
e0aa3f30a8 [Form] Improved FileField to store files in a temporary location in case validation fails 2010-11-23 06:51:30 +01:00
Fabien Potencier
67f6889287 [TwigBundle] added support for Twig_Template instances as argument to include tag 2010-11-21 09:33:35 +01:00
Fabien Potencier
e3551b5f87 [TwigBundle] renamed yaml filter to yaml_encode (to be coherent with json_encode) 2010-11-19 13:30:14 +01:00
Fabien Potencier
a323dd0e93 [TwigBundle] added filters from Code helpers 2010-11-19 10:14:45 +01:00
Fabien Potencier
c881329719 [TwigBundle] removed unneeded use statement 2010-11-19 09:54:52 +01:00
Fabien Potencier
84cf5698c5 [TwigBundle] fixed include tag to reflect the new syntax from Twig 2010-11-19 09:51:12 +01:00
Fabien Potencier
17c500e0f0 [TwigBundle] added a yaml filter 2010-11-19 09:50:32 +01:00
Bernhard Schussek
e0d6aad5f4 [Form][FrameworkBundle][TwigBundle] Introduced class FieldError to wrap form errors 2010-11-19 07:11:29 +01:00
Bernhard Schussek
6176063b30 [TwigBundle] Fixed variable reference in the errors block of the form.twig template 2010-11-19 07:11:20 +01:00
Bernhard Schussek
1bbdb5ec07 [Form][FrameworkBundle][TwigBundle] Refactored the PHP and Twig templating layer
Support for theming in PHP templates has been dropped.

True theming should support theme inheritance, e.g. mytheme <- table <- default.
Currently, the Templating component does not support such inheritance. As the
only purpose of the themes so far was to style field groups with tables or
divs, and because automatic rendering of field groups/forms through the render()
method is discouraged and only recommended for rapid prototyping, themes are
dropped for now.
2010-11-16 22:26:35 +01:00
Jordi Boggiano
aa1b2efb15 [TwigBundle] Base form templates now using div instead of tables 2010-11-15 15:04:56 +01:00
Jordi Boggiano
d45954af07 [Form][TwigBundle] Making sure all field types are rendered with the proper template 2010-11-15 14:54:11 +01:00
Jordi Boggiano
d94c581f42 [TwigBundle] fixed instanceof check to include all FieldGroup like classes 2010-11-12 17:55:30 +01:00
Fabien Potencier
d7d4880a90 [TwigBundle] updated filters for the latest version of Twig 2010-11-07 20:37:51 +01:00
jeff
52ec8752d8 When route_attributes is null an exception is raised. 2010-11-06 14:34:08 +01:00
Fabien Potencier
1e13ecb5f3 [TwigBundle] split the route tag to 2 tags: path and url 2010-11-03 18:15:54 +01:00
IamPersistent
ac8e35549e added initiating template in renderWidget 2010-11-03 15:07:26 +01:00
Fabien Potencier
7e6bddedf9 [TwigBundle] moved Form extension initialization as late as possible
Because

 * it's better for performance (no need to init form templates if there is no forms)
 * right now, it crashes for all renderer except HTML (because the form templates obviously only exist for the HTML renderer)

The only other possible fix would be to force those resources to always use the HTML renderer
2010-10-28 09:50:00 +02:00
Fabien Potencier
bf3659d5bb added an exception when trying to extend a template with a decorator that uses a different renderer (for instance when a Twig template tries to extend a PHP one) 2010-10-21 08:57:31 +02:00
Fabien Potencier
dd7e33af6b [TwigBundle] fixed the include tag to behave like the standard Twig include tag 2010-10-20 14:02:39 +02:00
henrikbjorn
f810723092 Removed the need for having the Security component enabled when using twig. 2010-10-19 21:04:40 +02:00
Fabien Potencier
f216f313e8 added the Security Component and its integration into the MVC framework
Happy birthday symfony!
2010-10-19 13:33:17 +02:00
Kris Wallsmith
f79e23ffb5 Removed all those spaces after @author that were bothering me so… 2010-10-18 16:55:41 +02:00
Fabien Potencier
c1e873d1b0 removed debug code 2010-10-13 07:34:10 +02:00
henrikbjorn
30cf086828 Overrides the default {% include %} token parser since it loads through the right template renderer 2010-10-13 07:24:06 +02:00
ornicar
f667b6928f [TwigBundle] Add a template block to render CollectionField fields 2010-10-09 14:23:19 +02:00
Jordi Boggiano
12479cdd24 [TwigBundle] Simplified some code 2010-10-08 09:56:59 +02:00
Fabien Potencier
2525998f6e replaced form field rendering with plain templates
Documentation available here:

http://docs.symfony-reloaded.org/master/guides/form/
2010-10-05 08:34:33 +02:00
Fabien Potencier
47bc809dc3 [TwigBundle] added tests for trans tag and filter 2010-10-02 09:39:48 +02:00
Fabien Potencier
77125288e7 [TwigBundle] updated nodes for the latest version of Twig 2010-10-02 09:39:29 +02:00
Fabien Potencier
8e654e8f9e [TwigBundle] added the trans filter 2010-10-01 22:20:03 +02:00
Fabien Potencier
68bff2d214 [TwigBundle] fixed trans tags 2010-10-01 22:19:59 +02:00
Fabien Potencier
3696066bfe [TwigBundle] fixed typo 2010-10-01 22:19:54 +02:00
Fabien Potencier
416bd7872e [TwigBundle] optimized calls to helpers 2010-10-01 20:50:31 +02:00
Fabien Potencier
3ce8ad1718 fixed HelpersExtension (removed usage of the magic _view context attribute -- helpers should now work from macros) 2010-10-01 20:30:12 +02:00
Fabien Potencier
eff1bdf50f [TwigBundle] made trans and transchoice tags more flexible
Both tags accept variables now:

    {% trans label %}

    {% transchoice %}
      {{ error }}
    {% endtranschoice %}

Optionally, the with keywords allows to pass the placeholder values:

    {% trans label with vars %}
2010-09-30 19:13:01 +02:00
Fabien Potencier
4297609156 [TwigBundle] moved translator helpers to their own extension (removed usage of the magic _view variable context) 2010-09-30 10:14:58 +02:00
Fabien Potencier
6dc6d4a7d3 [TwigBundle] fixed trans tag 2010-09-29 18:11:25 +02:00
Fabien Potencier
7b9a523a43 [TwigBundle] fixed trans tag 2010-09-29 15:26:39 +02:00
Fabien Potencier
8ad2fd2123 [TwigBundle] renamed Helpers to HelpersExtension 2010-09-29 11:39:23 +02:00
Fabien Potencier
a6dc10c31a changed templating name notation
Old notation: bundle:section:name.format:renderer (where both format and renderer are optional)
New notation: bundle:section:name.format.renderer (where only format is optional)

Valid new template names: Blog:Post:index.php, Blog:Post:index.xml.php

The new notation is more explicit and put all templating engines on the same level (there is no
more the concept of a "default" templating engine).

Even if the notation changed, the semantic has not. So, the logical template name for the above
examples is still 'index'. So, if you use a database loader for instance, the template
name is 'index' and everything else are options.

Upgrading current applications can be easily done by appending .php to each existing template
name reference (in both controllers and templates), and changing :twig to .twig for Twig templates
(for twig templates, you should also add .twig within templates themselves when referencing
another Twig templates).
2010-09-28 08:33:33 +02:00
Fabien Potencier
d6f55c31d1 [TwigBundle] added helpers for translations 2010-09-27 09:45:58 +02:00
Fabien Potencier
d657adbfa2 removed Symfony\Framework
Things have been moved to Symfony\Component\HttpKernel
and Symfony\Bundle\FrameworkBundle

The kernel configuration namespace was removed and merged
with the main web configuration namespace (kernel:config => web:config,
kernel:test => web:test, and kernel:session => web:session):

Before:
<kernel:config charset="UTF-8" error_handler="null" />

<web:config csrf-secret="xxxxxxxxxx">
    <web:router resource="%kernel.root_dir%/config/routing.xml" />
    <web:validation enabled="true" annotations="true" />
</web:config>

After:
<web:config csrf-secret="xxxxxxxxxx" charset="UTF-8" error-handler="null">
    <web:router resource="%kernel.root_dir%/config/routing.xml" />
    <web:validation enabled="true" annotations="true" />
</web:config>

Renamed classes:

Symfony\{Framework => Bundle\FrameworkBundle}\Cache\Cache
Symfony\{Framework => Bundle\FrameworkBundle}\Client
Symfony\{Framework => Bundle\FrameworkBundle}\Debug\EventDispatcher
Symfony\{Framework => Bundle\FrameworkBundle}\Debug\EventDispatcherTraceableInterface
Symfony\{Framework => Bundle\FrameworkBundle}\EventDispatcher
Symfony\{Framework => Component\HttpFoundation}\UniversalClassLoader
Symfony\{Framework => Component\HttpKernel}\Bundle\Bundle
Symfony\{Framework => Component\HttpKernel}\Bundle\BundleInterface
Symfony\{Framework => Component\HttpKernel}\ClassCollectionLoader
Symfony\{Framework => Component\HttpKernel}\Debug\ErrorException
Symfony\{Framework => Component\HttpKernel}\Debug\ErrorHandler
Symfony\{Bundle\FrameworkBundle => Component\HttpKernel}\Debug\ExceptionListener
Symfony\{Framework => Component\HttpKernel}\Kernel
2010-09-17 12:58:24 +02:00
fivestar
8367df1265 [TwigBundle] fixed grammar for render helper. 2010-08-31 07:39:50 +02:00
Fabien Potencier
994a6c36ac changed actions::render() helper method signature 2010-08-30 09:15:54 +02:00
Fabien Potencier
1687831cb7 [TwigBundle] made a small optimization 2010-08-22 15:36:09 +02:00
Fabien Potencier
0319838cdc [TwigBundle] added a flash tag 2010-08-22 15:32:15 +02:00
Fabien Potencier
bf82cf42dd renamed Symfony\Components to Symfony\Component 2010-08-20 23:09:55 +02:00
Fabien Potencier
17bc06a4d2 made some cleanup 2010-08-10 16:13:51 +02:00
Fabien Potencier
9e82497d5b removed BundleInterface::buildContainer() method (extensions are now automatically registered -- or override the getExtensions() method if you do not follow the conventions) 2010-08-10 16:07:44 +02:00
Fabien Potencier
355ed9b5f9 renamed annotation to tag in the DIC 2010-08-05 07:34:53 +02:00
Kris Wallsmith
fa3980f66f Removed some use statements that are no longer needed. 2010-08-04 07:37:12 +02:00
Fabien Potencier
ee2ff39eaf removed @package and @subpackage annotations 2010-08-01 23:06:28 +02:00
Fabien Potencier
1a9f2ca755 updated PHPDoc as the API tool knows about the current use statements 2010-07-27 15:33:28 +02:00
Fabien Potencier
c57cae7600 fixed test configuration and broken tests 2010-07-18 12:16:59 +02:00
fivestar
22f6eec0ef [TwigBundle] fixed class name in twig.xml 2010-07-17 07:55:09 +02:00
Fabien Potencier
2a051b5039 moved DI extensions classes to their own sub-namespace 2010-07-16 11:12:49 +02:00
Fabien Potencier
7796eb213c merged BuilderConfiguration and Builder classes into a new ContainerBuilder class 2010-07-15 15:20:41 +02:00
Fabien Potencier
f26abdfadd fixed phpdoc for DI extensions 2010-07-15 10:27:49 +02:00
Fabien Potencier
0163178f7b changed the BundleInterface::buildContainer() signature 2010-07-13 12:34:33 +02:00
Fabien Potencier
0fbb1b916b cleaned up the DI extension loading mechanism 2010-07-09 16:28:06 +02:00
Fabien Potencier
da9f36ca86 renamed Symfony\Foundation to Symfony\Framework
In existing applications, you need to updated the autoload.php file, the
XXXKernel file and all XXXBundle classes.
2010-07-09 10:25:54 +02:00
Fabien Potencier
6213fdefb9 renamed Symfony\Framework to Symfony\Bundle
For existing Symfony2 applications, references to Symfony\Framework are found
in the main Kernel class (registerBundles() and registerBundleDirs()), and in
all Controller classes. You also need to change the console script.
2010-07-09 10:25:15 +02:00