Pārlūkot izejas kodu

update code to the last symfony changes

Thomas 14 gadi atpakaļ
vecāks
revīzija
e00f6410a8

+ 18 - 16
DependencyInjection/BaseApplicationExtension.php

@@ -28,7 +28,7 @@ use Symfony\Component\Finder\Finder;
  *
  * @author     Thomas Rabaix <thomas.rabaix@sonata-project.org>
  */
-class BaseApplicationExtension extends Extension
+class SonataBaseApplicationExtension extends Extension
 {
     protected $configNamespaces = array(
         'templates' => array(
@@ -43,14 +43,16 @@ class BaseApplicationExtension extends Extension
      * @param array            $config    An array of configuration settings
      * @param ContainerBuilder $container A ContainerBuilder instance
      */
-    public function configLoad($configs, ContainerBuilder $container)
+    public function load(array $config, ContainerBuilder $container)
     {
 
+        $config = call_user_func_array('array_merge_recursive', $config);
+        
         // loads config from external files
         $this->configLoadFiles($container);
         
         // setups parameters with values in config.yml, default values from external files used if not
-        $this->configSetup($configs, $container);
+        $this->configSetup($config, $container);
 
         // register the twig extension
         $container
@@ -72,24 +74,24 @@ class BaseApplicationExtension extends Extension
         // registers crud action
         $definition = new Definition('Sonata\BaseApplicationBundle\Admin\Pool');
         $definition->addMethodCall('setContainer', array(new Reference('service_container')));
-        foreach ($configs as $config) {
-            foreach ($config['entities'] as $code => $configuration) {
-                if (!isset($configuration['group'])) {
-                    $configuration['group'] = 'default';
-                }
 
-                if (!isset($configuration['label'])) {
-                    $configuration['label'] = $code;
-                }
+        foreach ($config['entities'] as $code => $configuration) {
+            if (!isset($configuration['group'])) {
+                $configuration['group'] = 'default';
+            }
 
-                if (!isset($configuration['children'])) {
-                    $configuration['children'] = array();
-                }
+            if (!isset($configuration['label'])) {
+                $configuration['label'] = $code;
+            }
 
-                $definition->addMethodCall('addConfiguration', array($code, $configuration));
+            if (!isset($configuration['children'])) {
+                $configuration['children'] = array();
             }
+
+            $definition->addMethodCall('addConfiguration', array($code, $configuration));
         }
 
+
         $container->setDefinition('base_application.admin.pool', $definition);
 
         $definition = new Definition('Sonata\BaseApplicationBundle\Route\AdminPoolLoader', array(new Reference('base_application.admin.pool')));
@@ -148,6 +150,6 @@ class BaseApplicationExtension extends Extension
     public function getAlias()
     {
 
-        return "base_application";
+        return "sonata_base_application";
     }
 }

+ 2 - 2
Resources/doc/reference/installation.rst

@@ -40,7 +40,7 @@ configuration file.
 .. code-block:: yaml
 
     # app/config/config.yml
-    base_application.config: ~
+    sonata_base_application: ~
 
     menu.twig:   ~
 
@@ -77,7 +77,7 @@ Once you have created an admin class, you must declare the class to use it. Like
 .. code-block:: yaml
 
     # app/config/config.yml
-    base_application.config:
+    sonata_base_application:
         entities:
             post:
                 label:      Post

+ 2 - 16
SonataBaseApplicationBundle.php

@@ -12,21 +12,7 @@ namespace Sonata\BaseApplicationBundle;
 
 use Symfony\Component\HttpKernel\Bundle\Bundle;
 
-class SonataBaseApplicationBundle extends Bundle {
+class SonataBaseApplicationBundle extends Bundle
+{
 
-    /**
-     * {@inheritdoc}
-     */
-    public function getNamespace()
-    {
-        return __NAMESPACE__;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getPath()
-    {
-        return strtr(__DIR__, '\\', '/');
-    }
 }