Sfoglia il codice sorgente

goback to version stable 2.1.7 and install bundles and bundles dependencies

Sevajol Bastien 12 anni fa
parent
commit
05bd6e081a
100 ha cambiato i file con 3468 aggiunte e 462 eliminazioni
  1. 1 0
      app/AppKernel.php
  2. 6 8
      app/bootstrap.php.cache
  3. 7 2
      composer.json
  4. 370 44
      composer.lock
  5. 1 1
      vendor/autoload.php
  6. 1 1
      vendor/cedriclombardot/admingenerator-generator-bundle/Admingenerator/GeneratorBundle
  7. 6 0
      vendor/composer/autoload_namespaces.php
  8. 3 3
      vendor/composer/autoload_real.php
  9. 729 396
      vendor/composer/installed.json
  10. 1 1
      vendor/knplabs/knp-menu
  11. 1 1
      vendor/knplabs/knp-menu-bundle/Knp/Bundle/MenuBundle
  12. 1 1
      vendor/kriswallsmith/assetic
  13. 1 0
      vendor/shtumi/useful-bundle/Shtumi/UsefulBundle
  14. 1 0
      vendor/sonata-project/admin-bundle/Sonata/AdminBundle
  15. 1 0
      vendor/sonata-project/block-bundle/Sonata/BlockBundle
  16. 1 0
      vendor/sonata-project/doctrine-orm-admin-bundle/Sonata/DoctrineORMAdminBundle
  17. 1 0
      vendor/sonata-project/exporter/.gitignore
  18. 7 0
      vendor/sonata-project/exporter/.travis.yml
  19. 32 0
      vendor/sonata-project/exporter/README.md
  20. 31 0
      vendor/sonata-project/exporter/composer.json
  21. 16 0
      vendor/sonata-project/exporter/lib/Exporter/Exception/InvalidDataFormatException.php
  22. 16 0
      vendor/sonata-project/exporter/lib/Exporter/Exception/InvalidMethodCallException.php
  23. 59 0
      vendor/sonata-project/exporter/lib/Exporter/Handler.php
  24. 25 0
      vendor/sonata-project/exporter/lib/Exporter/Source/ArraySourceIterator.php
  25. 91 0
      vendor/sonata-project/exporter/lib/Exporter/Source/ChainSourceIterator.php
  26. 94 0
      vendor/sonata-project/exporter/lib/Exporter/Source/DoctrineDBALConnectionSourceIterator.php
  27. 123 0
      vendor/sonata-project/exporter/lib/Exporter/Source/DoctrineODMQuerySourceIterator.php
  28. 124 0
      vendor/sonata-project/exporter/lib/Exporter/Source/DoctrineORMQuerySourceIterator.php
  29. 76 0
      vendor/sonata-project/exporter/lib/Exporter/Source/IteratorSourceIterator.php
  30. 81 0
      vendor/sonata-project/exporter/lib/Exporter/Source/PDOStatementSourceIterator.php
  31. 17 0
      vendor/sonata-project/exporter/lib/Exporter/Source/SourceIteratorInterface.php
  32. 86 0
      vendor/sonata-project/exporter/lib/Exporter/Source/SymfonySitemapSourceIterator.php
  33. 103 0
      vendor/sonata-project/exporter/lib/Exporter/Writer/CsvWriter.php
  34. 51 0
      vendor/sonata-project/exporter/lib/Exporter/Writer/InMemoryWriter.php
  35. 64 0
      vendor/sonata-project/exporter/lib/Exporter/Writer/JsonWriter.php
  36. 367 0
      vendor/sonata-project/exporter/lib/Exporter/Writer/SitemapWriter.php
  37. 32 0
      vendor/sonata-project/exporter/lib/Exporter/Writer/WriterInterface.php
  38. 97 0
      vendor/sonata-project/exporter/lib/Exporter/Writer/XlsWriter.php
  39. 96 0
      vendor/sonata-project/exporter/lib/Exporter/Writer/XmlWriter.php
  40. 15 0
      vendor/sonata-project/exporter/phpunit.xml.dist
  41. 20 0
      vendor/sonata-project/exporter/test/Exporter/Test/HandlerTest.php
  42. 26 0
      vendor/sonata-project/exporter/test/Exporter/Test/Source/ArraySourceIteratorTest.php
  43. 20 0
      vendor/sonata-project/exporter/test/Exporter/Test/Source/ChainSourceIteratorTest.php
  44. 76 0
      vendor/sonata-project/exporter/test/Exporter/Test/Source/IteratorSourceIteratorTest.php
  45. 53 0
      vendor/sonata-project/exporter/test/Exporter/Test/Source/PDOStatementSourceIteratorTest.php
  46. 77 0
      vendor/sonata-project/exporter/test/Exporter/Test/Writer/CsvWriterTest.php
  47. 47 0
      vendor/sonata-project/exporter/test/Exporter/Test/Writer/JsonWriterTest.php
  48. 185 0
      vendor/sonata-project/exporter/test/Exporter/Test/Writer/SitemapWriterTest.php
  49. 50 0
      vendor/sonata-project/exporter/test/Exporter/Test/Writer/XlsWriterTest.php
  50. 65 0
      vendor/sonata-project/exporter/test/Exporter/Test/Writer/XmlWriterTest.php
  51. 12 0
      vendor/sonata-project/exporter/test/bootstrap.php
  52. 1 0
      vendor/sonata-project/jquery-bundle/Sonata/jQueryBundle
  53. 1 1
      vendor/stof/doctrine-extensions-bundle/Stof/DoctrineExtensionsBundle
  54. 0 0
      vendor/symfony/symfony/.editorconfig
  55. 0 0
      vendor/symfony/symfony/.gitignore
  56. 0 0
      vendor/symfony/symfony/.travis.yml
  57. 0 0
      vendor/symfony/symfony/CHANGELOG-2.0.md
  58. 0 0
      vendor/symfony/symfony/CHANGELOG-2.1.md
  59. 0 0
      vendor/symfony/symfony/CONTRIBUTING.md
  60. 0 0
      vendor/symfony/symfony/CONTRIBUTORS.md
  61. 0 3
      vendor/symfony/symfony/README.md
  62. 0 0
      vendor/symfony/symfony/UPGRADE-2.1.md
  63. 0 0
      vendor/symfony/symfony/autoload.php.dist
  64. 0 0
      vendor/symfony/symfony/composer.json
  65. 0 0
      vendor/symfony/symfony/phpunit.xml.dist
  66. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/CHANGELOG.md
  67. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/CacheWarmer/ProxyCacheWarmer.php
  68. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/ContainerAwareEventManager.php
  69. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/DataCollector/DoctrineDataCollector.php
  70. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/DataFixtures/ContainerAwareLoader.php
  71. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/DependencyInjection/AbstractDoctrineExtension.php
  72. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/DependencyInjection/CompilerPass/DoctrineValidationPass.php
  73. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/DependencyInjection/CompilerPass/RegisterEventListenersAndSubscribersPass.php
  74. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/DependencyInjection/Security/UserProvider/EntityFactory.php
  75. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/ChoiceList/EntityChoiceList.php
  76. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/ChoiceList/EntityLoaderInterface.php
  77. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/ChoiceList/ORMQueryBuilderLoader.php
  78. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/DataTransformer/CollectionToArrayTransformer.php
  79. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/DoctrineOrmExtension.php
  80. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/DoctrineOrmTypeGuesser.php
  81. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/EventListener/MergeDoctrineCollectionListener.php
  82. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/Type/DoctrineType.php
  83. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/Type/EntityType.php
  84. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/HttpFoundation/DbalSessionHandler.php
  85. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/HttpFoundation/DbalSessionHandlerSchema.php
  86. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Logger/DbalLogger.php
  87. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/ManagerRegistry.php
  88. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/README.md
  89. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/RegistryInterface.php
  90. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Security/User/EntityUserProvider.php
  91. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/ContainerAwareEventManagerTest.php
  92. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/DataCollector/DoctrineDataCollectorTest.php
  93. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/DataFixtures/ContainerAwareLoaderTest.php
  94. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/DependencyInjection/CompilerPass/RegisterEventListenersAndSubscribersPassTest.php
  95. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/DoctrineOrmTestCase.php
  96. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/Fixtures/AssociationEntity.php
  97. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/Fixtures/CompositeIdentEntity.php
  98. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/Fixtures/CompositeStringIdentEntity.php
  99. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/Fixtures/ContainerAwareFixture.php
  100. 0 0
      vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/Fixtures/DoubleIdentEntity.php

+ 1 - 0
app/AppKernel.php Vedi File

@@ -31,6 +31,7 @@ class AppKernel extends Kernel
31 31
             new Admingenerator\GeneratorBundle\AdmingeneratorGeneratorBundle(),
32 32
             new Knp\Bundle\MenuBundle\KnpMenuBundle(),
33 33
             new WhiteOctober\PagerfantaBundle\WhiteOctoberPagerfantaBundle(),
34
+            new Shtumi\UsefulBundle\ShtumiUsefulBundle(),
34 35
             
35 36
             new Muzich\CoreBundle\MuzichCoreBundle(),
36 37
             new Muzich\UserBundle\MuzichUserBundle(),

+ 6 - 8
app/bootstrap.php.cache Vedi File

@@ -265,10 +265,8 @@ class Container implements IntrospectableContainerInterface
265 265
             unset($this->scopedServices[$name]);
266 266
 
267 267
             foreach ($this->scopeChildren[$name] as $child) {
268
-                if (isset($this->scopedServices[$child])) {
269
-                    $services[$child] = $this->scopedServices[$child];
270
-                    unset($this->scopedServices[$child]);
271
-                }
268
+                $services[$child] = $this->scopedServices[$child];
269
+                unset($this->scopedServices[$child]);
272 270
             }
273 271
 
274 272
                         $this->services = call_user_func_array('array_diff_key', $services);
@@ -511,12 +509,12 @@ abstract class Kernel implements KernelInterface, TerminableInterface
511 509
     protected $classes;
512 510
     protected $errorReportingLevel;
513 511
 
514
-    const VERSION         = '2.1.8-DEV';
515
-    const VERSION_ID      = '20108';
512
+    const VERSION         = '2.1.7';
513
+    const VERSION_ID      = '20107';
516 514
     const MAJOR_VERSION   = '2';
517 515
     const MINOR_VERSION   = '1';
518
-    const RELEASE_VERSION = '8';
519
-    const EXTRA_VERSION   = 'DEV';
516
+    const RELEASE_VERSION = '7';
517
+    const EXTRA_VERSION   = '';
520 518
 
521 519
     
522 520
     public function __construct($environment, $debug)

+ 7 - 2
composer.json Vedi File

@@ -1,5 +1,5 @@
1 1
 {
2
-    "minimum-stability": "dev",
2
+    "minimum-stability": "stable",
3 3
     "name": "symfony/framework-standard-edition",
4 4
     "description": "The \"Symfony Standard Edition\" distribution",
5 5
     "autoload": {
@@ -26,7 +26,12 @@
26 26
         "doctrine/doctrine-fixtures-bundle": "dev-master",
27 27
         "stof/doctrine-extensions-bundle": "dev-master",
28 28
         "gregwar/image-bundle": "dev-master",
29
-        "cedriclombardot/admingenerator-generator-bundle": "dev-master"
29
+        "cedriclombardot/admingenerator-generator-bundle": "dev-master",
30
+        "shtumi/useful-bundle": "dev-master",
31
+        "sonata-project/doctrine-orm-admin-bundle": "dev-master",
32
+        "sonata-project/admin-bundle": "dev-master",
33
+        "sonata-project/jquery-bundle": "dev-master",
34
+        "sonata-project/block-bundle": "dev-master"
30 35
     },
31 36
     "scripts": {
32 37
         "post-install-cmd": [

+ 370 - 44
composer.lock Vedi File

@@ -1,5 +1,5 @@
1 1
 {
2
-    "hash": "cfa67943fb19431c371d189811089b42",
2
+    "hash": "6d2b2527313408838da7e547a6a5bb91",
3 3
     "packages": [
4 4
         {
5 5
             "name": "cedriclombardot/admingenerator-generator-bundle",
@@ -8,12 +8,12 @@
8 8
             "source": {
9 9
                 "type": "git",
10 10
                 "url": "https://github.com/symfony2admingenerator/AdmingeneratorGeneratorBundle.git",
11
-                "reference": "d50c391562cae6560e8d8003d3bd3a855d467490"
11
+                "reference": "bc8c823b758c834c953cdfc50f023e82cebe2321"
12 12
             },
13 13
             "dist": {
14 14
                 "type": "zip",
15
-                "url": "https://api.github.com/repos/symfony2admingenerator/AdmingeneratorGeneratorBundle/zipball/d50c391562cae6560e8d8003d3bd3a855d467490",
16
-                "reference": "d50c391562cae6560e8d8003d3bd3a855d467490",
15
+                "url": "https://api.github.com/repos/symfony2admingenerator/AdmingeneratorGeneratorBundle/zipball/bc8c823b758c834c953cdfc50f023e82cebe2321",
16
+                "reference": "bc8c823b758c834c953cdfc50f023e82cebe2321",
17 17
                 "shasum": ""
18 18
             },
19 19
             "require": {
@@ -32,7 +32,7 @@
32 32
             "suggest": {
33 33
                 "cedriclombardot/admingenerator-user-bundle": "Help you to overwrite the base layout of FOSUserBundle or others giving a parameter key of the container"
34 34
             },
35
-            "time": "2013-02-17 18:17:44",
35
+            "time": "2013-02-22 20:40:09",
36 36
             "type": "symfony-bundle",
37 37
             "extra": {
38 38
                 "branch-alias": {
@@ -987,23 +987,23 @@
987 987
         },
988 988
         {
989 989
             "name": "knplabs/knp-menu",
990
-            "version": "dev-master",
990
+            "version": "v1.1.2",
991 991
             "source": {
992 992
                 "type": "git",
993
-                "url": "https://github.com/KnpLabs/KnpMenu.git",
994
-                "reference": "730bc37232f5f813822acf80edfbd89381ea5971"
993
+                "url": "http://github.com/KnpLabs/KnpMenu.git",
994
+                "reference": "v1.1.2"
995 995
             },
996 996
             "dist": {
997 997
                 "type": "zip",
998
-                "url": "https://api.github.com/repos/KnpLabs/KnpMenu/zipball/730bc37232f5f813822acf80edfbd89381ea5971",
999
-                "reference": "730bc37232f5f813822acf80edfbd89381ea5971",
998
+                "url": "https://github.com/KnpLabs/KnpMenu/zipball/v1.1.2",
999
+                "reference": "v1.1.2",
1000 1000
                 "shasum": ""
1001 1001
             },
1002 1002
             "require": {
1003 1003
                 "php": ">=5.3.0"
1004 1004
             },
1005 1005
             "require-dev": {
1006
-                "pimple/pimple": "1.0.*",
1006
+                "pimple/pimple": "*",
1007 1007
                 "silex/silex": "1.0.*",
1008 1008
                 "twig/twig": ">=1.2,<2.0-dev"
1009 1009
             },
@@ -1012,11 +1012,11 @@
1012 1012
                 "silex/silex": "for the integration with your silex application",
1013 1013
                 "twig/twig": "for the TwigRenderer and the integration with your templates"
1014 1014
             },
1015
-            "time": "2012-12-27 13:04:16",
1015
+            "time": "2012-06-10 09:20:40",
1016 1016
             "type": "library",
1017 1017
             "extra": {
1018 1018
                 "branch-alias": {
1019
-                    "dev-master": "2.0.x-dev"
1019
+                    "dev-master": "1.1.x-dev"
1020 1020
                 }
1021 1021
             },
1022 1022
             "autoload": {
@@ -1051,30 +1051,25 @@
1051 1051
         },
1052 1052
         {
1053 1053
             "name": "knplabs/knp-menu-bundle",
1054
-            "version": "dev-master",
1054
+            "version": "v1.1.0",
1055 1055
             "target-dir": "Knp/Bundle/MenuBundle",
1056 1056
             "source": {
1057 1057
                 "type": "git",
1058
-                "url": "https://github.com/KnpLabs/KnpMenuBundle.git",
1059
-                "reference": "bfaa9f1a74ee590c5e6460a3139b268fce1f1885"
1058
+                "url": "http://github.com/KnpLabs/KnpMenuBundle.git",
1059
+                "reference": "v1.1.0"
1060 1060
             },
1061 1061
             "dist": {
1062 1062
                 "type": "zip",
1063
-                "url": "https://api.github.com/repos/KnpLabs/KnpMenuBundle/zipball/bfaa9f1a74ee590c5e6460a3139b268fce1f1885",
1064
-                "reference": "bfaa9f1a74ee590c5e6460a3139b268fce1f1885",
1063
+                "url": "https://github.com/KnpLabs/KnpMenuBundle/zipball/v1.1.0",
1064
+                "reference": "v1.1.0",
1065 1065
                 "shasum": ""
1066 1066
             },
1067 1067
             "require": {
1068
-                "knplabs/knp-menu": "2.0.*",
1069
-                "symfony/framework-bundle": ">=2.0,<2.3-dev"
1068
+                "knplabs/knp-menu": "1.1.*",
1069
+                "symfony/framework-bundle": ">=2.0,<2.2-dev"
1070 1070
             },
1071
-            "time": "2012-12-29 08:47:58",
1071
+            "time": "2012-05-17 04:56:49",
1072 1072
             "type": "symfony-bundle",
1073
-            "extra": {
1074
-                "branch-alias": {
1075
-                    "dev-master": "2.0.x-dev"
1076
-                }
1077
-            },
1078 1073
             "autoload": {
1079 1074
                 "psr-0": {
1080 1075
                     "Knp\\Bundle\\MenuBundle": ""
@@ -1090,7 +1085,7 @@
1090 1085
                     "email": "stof@notk.org"
1091 1086
                 },
1092 1087
                 {
1093
-                    "name": "Knplabs",
1088
+                    "name": "KnpLabs",
1094 1089
                     "homepage": "http://knplabs.com"
1095 1090
                 },
1096 1091
                 {
@@ -1108,13 +1103,13 @@
1108 1103
             "version": "dev-master",
1109 1104
             "source": {
1110 1105
                 "type": "git",
1111
-                "url": "http://github.com/kriswallsmith/assetic.git",
1112
-                "reference": "504c9e8a6357583c20c9d9967ec2febea3157324"
1106
+                "url": "https://github.com/kriswallsmith/assetic.git",
1107
+                "reference": "v1.1.0-alpha3"
1113 1108
             },
1114 1109
             "dist": {
1115 1110
                 "type": "zip",
1116
-                "url": "https://api.github.com/repos/kriswallsmith/assetic/zipball/504c9e8a6357583c20c9d9967ec2febea3157324",
1117
-                "reference": "504c9e8a6357583c20c9d9967ec2febea3157324",
1111
+                "url": "https://api.github.com/repos/kriswallsmith/assetic/zipball/v1.1.0-alpha3",
1112
+                "reference": "v1.1.0-alpha3",
1118 1113
                 "shasum": ""
1119 1114
             },
1120 1115
             "require": {
@@ -1140,7 +1135,7 @@
1140 1135
                 "ptachoire/cssembed": "Assetic provides the integration with phpcssembed to embed data uris",
1141 1136
                 "twig/twig": "Assetic provides the integration with the Twig templating engine"
1142 1137
             },
1143
-            "time": "2013-02-11 18:18:06",
1138
+            "time": "2013-02-18 16:17:57",
1144 1139
             "type": "library",
1145 1140
             "extra": {
1146 1141
                 "branch-alias": {
@@ -1423,18 +1418,344 @@
1423 1418
             "description": "This bundle generates code for you"
1424 1419
         },
1425 1420
         {
1421
+            "name": "shtumi/useful-bundle",
1422
+            "version": "dev-master",
1423
+            "target-dir": "Shtumi/UsefulBundle",
1424
+            "source": {
1425
+                "type": "git",
1426
+                "url": "https://github.com/shtumi/ShtumiUsefulBundle.git",
1427
+                "reference": "8f3c99e5dfbcf8e5500779510d0ec2ebea3a2474"
1428
+            },
1429
+            "dist": {
1430
+                "type": "zip",
1431
+                "url": "https://api.github.com/repos/shtumi/ShtumiUsefulBundle/zipball/8f3c99e5dfbcf8e5500779510d0ec2ebea3a2474",
1432
+                "reference": "8f3c99e5dfbcf8e5500779510d0ec2ebea3a2474",
1433
+                "shasum": ""
1434
+            },
1435
+            "require": {
1436
+                "php": ">=5.3.2",
1437
+                "symfony/framework-bundle": ">=2.1.0,<2.1.x-dev"
1438
+            },
1439
+            "suggest": {
1440
+                "sonata-project/admin-bundle": "master-dev",
1441
+                "sonata-project/doctrine-orm-admin-bundle": "master-dev"
1442
+            },
1443
+            "time": "2013-02-06 08:13:55",
1444
+            "type": "symfony-bundle",
1445
+            "autoload": {
1446
+                "psr-0": {
1447
+                    "Shtumi\\UsefulBundle": ""
1448
+                }
1449
+            },
1450
+            "notification-url": "https://packagist.org/downloads/",
1451
+            "license": [
1452
+                "MIT"
1453
+            ],
1454
+            "authors": [
1455
+                {
1456
+                    "name": "Mikhail Shtukin",
1457
+                    "email": "shtumi@tut.by"
1458
+                }
1459
+            ],
1460
+            "description": "Symfony ShtumiUsefulBundle",
1461
+            "keywords": [
1462
+                "Ajax Autocomplete form type",
1463
+                "Dependent filtered form type",
1464
+                "daterange",
1465
+                "shtumi"
1466
+            ]
1467
+        },
1468
+        {
1469
+            "name": "sonata-project/admin-bundle",
1470
+            "version": "dev-master",
1471
+            "target-dir": "Sonata/AdminBundle",
1472
+            "source": {
1473
+                "type": "git",
1474
+                "url": "https://github.com/sonata-project/SonataAdminBundle.git",
1475
+                "reference": "785475567dad895f5ee7434570de0de3c06ea1b6"
1476
+            },
1477
+            "dist": {
1478
+                "type": "zip",
1479
+                "url": "https://api.github.com/repos/sonata-project/SonataAdminBundle/zipball/785475567dad895f5ee7434570de0de3c06ea1b6",
1480
+                "reference": "785475567dad895f5ee7434570de0de3c06ea1b6",
1481
+                "shasum": ""
1482
+            },
1483
+            "require": {
1484
+                "doctrine/common": ">=2.2,<3.0",
1485
+                "knplabs/knp-menu-bundle": ">=1.1.0,<2.0.x-dev",
1486
+                "sonata-project/block-bundle": "dev-master",
1487
+                "sonata-project/exporter": "1.1.*",
1488
+                "sonata-project/jquery-bundle": "dev-master",
1489
+                "symfony/config": ">=2.1,<2.3-dev",
1490
+                "symfony/console": ">=2.1,<2.3-dev",
1491
+                "symfony/form": ">=2.1,<2.3-dev",
1492
+                "symfony/http-foundation": ">=2.1,<2.3-dev",
1493
+                "symfony/routing": ">=2.1,<2.3-dev",
1494
+                "symfony/security-bundle": ">=2.1,<2.3-dev",
1495
+                "symfony/twig-bridge": ">=2.1,<2.3-dev",
1496
+                "symfony/validator": ">=2.1,<2.3-dev",
1497
+                "twig/twig": ">=1.10,<2.0-dev"
1498
+            },
1499
+            "require-dev": {
1500
+                "jms/translation-bundle": "*"
1501
+            },
1502
+            "suggest": {
1503
+                "sonata-project/doctrine-orm-admin-bundle": "dev-master",
1504
+                "sonata-project/intl-bundle": "dev-master"
1505
+            },
1506
+            "time": "2013-02-22 18:37:53",
1507
+            "type": "symfony-bundle",
1508
+            "autoload": {
1509
+                "psr-0": {
1510
+                    "Sonata\\AdminBundle": ""
1511
+                }
1512
+            },
1513
+            "notification-url": "https://packagist.org/downloads/",
1514
+            "license": [
1515
+                "MIT"
1516
+            ],
1517
+            "authors": [
1518
+                {
1519
+                    "name": "Thomas Rabaix",
1520
+                    "email": "thomas.rabaix@sonata-project.org",
1521
+                    "homepage": "http://sonata-project.org"
1522
+                },
1523
+                {
1524
+                    "name": "Sonata Community",
1525
+                    "homepage": "https://github.com/sonata-project/SonataAdminBundle/contributors"
1526
+                }
1527
+            ],
1528
+            "description": "Symfony SonataAdminBundle",
1529
+            "homepage": "http://sonata-project.org/bundles/admin",
1530
+            "keywords": [
1531
+                "Admin Generator",
1532
+                "admin",
1533
+                "bootstrap",
1534
+                "sonata"
1535
+            ]
1536
+        },
1537
+        {
1538
+            "name": "sonata-project/block-bundle",
1539
+            "version": "dev-master",
1540
+            "target-dir": "Sonata/BlockBundle",
1541
+            "source": {
1542
+                "type": "git",
1543
+                "url": "https://github.com/sonata-project/SonataBlockBundle.git",
1544
+                "reference": "23c04147b54ab93432a1ae2a044eca2edbdf27a5"
1545
+            },
1546
+            "dist": {
1547
+                "type": "zip",
1548
+                "url": "https://api.github.com/repos/sonata-project/SonataBlockBundle/zipball/23c04147b54ab93432a1ae2a044eca2edbdf27a5",
1549
+                "reference": "23c04147b54ab93432a1ae2a044eca2edbdf27a5",
1550
+                "shasum": ""
1551
+            },
1552
+            "require": {
1553
+                "symfony/form": ">=2.1,<2.3-dev",
1554
+                "symfony/http-foundation": ">=2.1,<2.3-dev"
1555
+            },
1556
+            "require-dev": {
1557
+                "sonata-project/admin-bundle": "dev-master",
1558
+                "sonata-project/cache-bundle": "dev-master"
1559
+            },
1560
+            "suggest": {
1561
+                "sonata-project/admin-bundle": "dev-master",
1562
+                "sonata-project/cache-bundle": "dev-master"
1563
+            },
1564
+            "time": "2013-02-16 14:05:06",
1565
+            "type": "symfony-bundle",
1566
+            "autoload": {
1567
+                "psr-0": {
1568
+                    "Sonata\\BlockBundle": ""
1569
+                }
1570
+            },
1571
+            "notification-url": "https://packagist.org/downloads/",
1572
+            "license": [
1573
+                "MIT"
1574
+            ],
1575
+            "authors": [
1576
+                {
1577
+                    "name": "Thomas Rabaix",
1578
+                    "email": "thomas.rabaix@sonata-project.org",
1579
+                    "homepage": "http://sonata-project.org"
1580
+                },
1581
+                {
1582
+                    "name": "Sonata Community",
1583
+                    "homepage": "https://github.com/sonata-project/SonataBlockBundle/contributors"
1584
+                }
1585
+            ],
1586
+            "description": "Symfony SonataBlockBundle",
1587
+            "homepage": "http://sonata-project.org/bundles/block",
1588
+            "keywords": [
1589
+                "block",
1590
+                "sonata"
1591
+            ]
1592
+        },
1593
+        {
1594
+            "name": "sonata-project/doctrine-orm-admin-bundle",
1595
+            "version": "dev-master",
1596
+            "target-dir": "Sonata/DoctrineORMAdminBundle",
1597
+            "source": {
1598
+                "type": "git",
1599
+                "url": "https://github.com/sonata-project/SonataDoctrineORMAdminBundle.git",
1600
+                "reference": "344ac471d779d198a858e0c6783990516eef0fe7"
1601
+            },
1602
+            "dist": {
1603
+                "type": "zip",
1604
+                "url": "https://api.github.com/repos/sonata-project/SonataDoctrineORMAdminBundle/zipball/344ac471d779d198a858e0c6783990516eef0fe7",
1605
+                "reference": "344ac471d779d198a858e0c6783990516eef0fe7",
1606
+                "shasum": ""
1607
+            },
1608
+            "require": {
1609
+                "doctrine/orm": ">=2.2,<2.4-dev",
1610
+                "sonata-project/admin-bundle": "dev-master",
1611
+                "symfony/symfony": ">=2.1,<2.3-dev"
1612
+            },
1613
+            "time": "2013-02-22 18:34:33",
1614
+            "type": "symfony-bundle",
1615
+            "autoload": {
1616
+                "psr-0": {
1617
+                    "Sonata\\DoctrineORMAdminBundle": ""
1618
+                }
1619
+            },
1620
+            "notification-url": "https://packagist.org/downloads/",
1621
+            "license": [
1622
+                "MIT"
1623
+            ],
1624
+            "authors": [
1625
+                {
1626
+                    "name": "Thomas Rabaix",
1627
+                    "email": "thomas.rabaix@sonata-project.org",
1628
+                    "homepage": "http://sonata-project.org"
1629
+                },
1630
+                {
1631
+                    "name": "Sonata Community",
1632
+                    "homepage": "https://github.com/sonata-project/SonataDoctrineORMAdminBundle/contributors"
1633
+                }
1634
+            ],
1635
+            "description": "Symfony Sonata / Integrate Doctrine ORM into the SonataAdminBundle",
1636
+            "homepage": "http://sonata-project.org/bundles/admin",
1637
+            "keywords": [
1638
+                "Admin Generator",
1639
+                "admin",
1640
+                "bootstrap",
1641
+                "generator",
1642
+                "sonata"
1643
+            ]
1644
+        },
1645
+        {
1646
+            "name": "sonata-project/exporter",
1647
+            "version": "1.1.0",
1648
+            "source": {
1649
+                "type": "git",
1650
+                "url": "https://github.com/sonata-project/exporter",
1651
+                "reference": "1.1.0"
1652
+            },
1653
+            "dist": {
1654
+                "type": "zip",
1655
+                "url": "https://api.github.com/repos/sonata-project/exporter/zipball/1.1.0",
1656
+                "reference": "1.1.0",
1657
+                "shasum": ""
1658
+            },
1659
+            "require": {
1660
+                "php": ">=5.3.0"
1661
+            },
1662
+            "require-dev": {
1663
+                "php": ">=5.3.0",
1664
+                "symfony/routing": "*"
1665
+            },
1666
+            "suggest": {
1667
+                "ext-curl": "*",
1668
+                "symfony/routing": "*"
1669
+            },
1670
+            "time": "2013-02-09 15:12:27",
1671
+            "type": "library",
1672
+            "autoload": {
1673
+                "psr-0": {
1674
+                    "Exporter": "lib/"
1675
+                }
1676
+            },
1677
+            "notification-url": "https://packagist.org/downloads/",
1678
+            "license": [
1679
+                "MIT"
1680
+            ],
1681
+            "authors": [
1682
+                {
1683
+                    "name": "Thomas Rabaix",
1684
+                    "email": "thomas.rabaix@gmail.com",
1685
+                    "homepage": "http://sonata-project.org/"
1686
+                }
1687
+            ],
1688
+            "description": "Lightweight Exporter library",
1689
+            "homepage": "https://github.com/sonata-project/Exporter",
1690
+            "keywords": [
1691
+                "client",
1692
+                "csv",
1693
+                "data",
1694
+                "export",
1695
+                "xls"
1696
+            ]
1697
+        },
1698
+        {
1699
+            "name": "sonata-project/jquery-bundle",
1700
+            "version": "dev-master",
1701
+            "target-dir": "Sonata/jQueryBundle",
1702
+            "source": {
1703
+                "type": "git",
1704
+                "url": "https://github.com/sonata-project/SonatajQueryBundle.git",
1705
+                "reference": "5f87a761302e6c78304e071416f75d41eb1fb3c2"
1706
+            },
1707
+            "dist": {
1708
+                "type": "zip",
1709
+                "url": "https://api.github.com/repos/sonata-project/SonatajQueryBundle/zipball/5f87a761302e6c78304e071416f75d41eb1fb3c2",
1710
+                "reference": "5f87a761302e6c78304e071416f75d41eb1fb3c2",
1711
+                "shasum": ""
1712
+            },
1713
+            "require": {
1714
+                "php": ">=5.3.2",
1715
+                "symfony/framework-bundle": "2.*"
1716
+            },
1717
+            "time": "2012-08-29 23:34:42",
1718
+            "type": "symfony-bundle",
1719
+            "autoload": {
1720
+                "psr-0": {
1721
+                    "Sonata\\jQueryBundle": ""
1722
+                }
1723
+            },
1724
+            "notification-url": "https://packagist.org/downloads/",
1725
+            "license": [
1726
+                "MIT"
1727
+            ],
1728
+            "authors": [
1729
+                {
1730
+                    "name": "Thomas Rabaix",
1731
+                    "email": "thomas.rabaix@sonata-project.org",
1732
+                    "homepage": "http://sonata-project.org"
1733
+                },
1734
+                {
1735
+                    "name": "Sonata Community",
1736
+                    "homepage": "https://github.com/sonata-project/SonatajQueryBundle/contributors"
1737
+                }
1738
+            ],
1739
+            "description": "Symfony SonatajQueryBundle",
1740
+            "homepage": "http://sonata-project.org/bundles/jquery",
1741
+            "keywords": [
1742
+                "jquery",
1743
+                "sonata"
1744
+            ]
1745
+        },
1746
+        {
1426 1747
             "name": "stof/doctrine-extensions-bundle",
1427 1748
             "version": "dev-master",
1428 1749
             "target-dir": "Stof/DoctrineExtensionsBundle",
1429 1750
             "source": {
1430 1751
                 "type": "git",
1431 1752
                 "url": "https://github.com/stof/StofDoctrineExtensionsBundle.git",
1432
-                "reference": "4a17550d8b101c5aafc56c9950149aa189b8402d"
1753
+                "reference": "ba84426a47e555fdf346fc9f8434c2a25b3cee9d"
1433 1754
             },
1434 1755
             "dist": {
1435 1756
                 "type": "zip",
1436
-                "url": "https://api.github.com/repos/stof/StofDoctrineExtensionsBundle/zipball/4a17550d8b101c5aafc56c9950149aa189b8402d",
1437
-                "reference": "4a17550d8b101c5aafc56c9950149aa189b8402d",
1757
+                "url": "https://api.github.com/repos/stof/StofDoctrineExtensionsBundle/zipball/ba84426a47e555fdf346fc9f8434c2a25b3cee9d",
1758
+                "reference": "ba84426a47e555fdf346fc9f8434c2a25b3cee9d",
1438 1759
                 "shasum": ""
1439 1760
             },
1440 1761
             "require": {
@@ -1446,7 +1767,7 @@
1446 1767
                 "doctrine/doctrine-bundle": "*",
1447 1768
                 "doctrine/mongodb-odm-bundle": "2.1.*"
1448 1769
             },
1449
-            "time": "2012-12-13 17:58:07",
1770
+            "time": "2013-02-19 23:30:04",
1450 1771
             "type": "symfony-bundle",
1451 1772
             "extra": {
1452 1773
                 "branch-alias": {
@@ -1712,16 +2033,16 @@
1712 2033
         },
1713 2034
         {
1714 2035
             "name": "symfony/symfony",
1715
-            "version": "2.1.x-dev",
2036
+            "version": "v2.1.7",
1716 2037
             "source": {
1717 2038
                 "type": "git",
1718
-                "url": "https://github.com/symfony/symfony.git",
1719
-                "reference": "75c61944a3e43b9efb5a195fd79416ff43ca09e7"
2039
+                "url": "git://github.com/symfony/symfony.git",
2040
+                "reference": "v2.1.7"
1720 2041
             },
1721 2042
             "dist": {
1722 2043
                 "type": "zip",
1723
-                "url": "https://api.github.com/repos/symfony/symfony/zipball/75c61944a3e43b9efb5a195fd79416ff43ca09e7",
1724
-                "reference": "75c61944a3e43b9efb5a195fd79416ff43ca09e7",
2044
+                "url": "https://github.com/symfony/symfony/archive/v2.1.7.zip",
2045
+                "reference": "v2.1.7",
1725 2046
                 "shasum": ""
1726 2047
             },
1727 2048
             "require": {
@@ -1770,7 +2091,7 @@
1770 2091
                 "monolog/monolog": ">=1.0,<1.3-dev",
1771 2092
                 "propel/propel1": "dev-master"
1772 2093
             },
1773
-            "time": "2013-02-17 12:59:26",
2094
+            "time": "2013-01-17 21:21:51",
1774 2095
             "type": "library",
1775 2096
             "autoload": {
1776 2097
                 "psr-0": {
@@ -1942,7 +2263,7 @@
1942 2263
     "aliases": [
1943 2264
 
1944 2265
     ],
1945
-    "minimum-stability": "dev",
2266
+    "minimum-stability": "stable",
1946 2267
     "stability-flags": {
1947 2268
         "twig/extensions": 20,
1948 2269
         "kriswallsmith/assetic": 20,
@@ -1950,6 +2271,11 @@
1950 2271
         "doctrine/doctrine-fixtures-bundle": 20,
1951 2272
         "stof/doctrine-extensions-bundle": 20,
1952 2273
         "gregwar/image-bundle": 20,
1953
-        "cedriclombardot/admingenerator-generator-bundle": 20
2274
+        "cedriclombardot/admingenerator-generator-bundle": 20,
2275
+        "shtumi/useful-bundle": 20,
2276
+        "sonata-project/doctrine-orm-admin-bundle": 20,
2277
+        "sonata-project/admin-bundle": 20,
2278
+        "sonata-project/jquery-bundle": 20,
2279
+        "sonata-project/block-bundle": 20
1954 2280
     }
1955 2281
 }

+ 1 - 1
vendor/autoload.php Vedi File

@@ -4,4 +4,4 @@
4 4
 
5 5
 require_once __DIR__ . '/composer' . '/autoload_real.php';
6 6
 
7
-return ComposerAutoloaderInit518f1eb7577bcf5e84791f76034137cd::getLoader();
7
+return ComposerAutoloaderInit6c3b313faf78baf847838c5239806fa1::getLoader();

+ 1 - 1
vendor/cedriclombardot/admingenerator-generator-bundle/Admingenerator/GeneratorBundle

@@ -1 +1 @@
1
-Subproject commit d3c6d81a4ef44d77b4f51ee7d3ba1d3d3a8b50b7
1
+Subproject commit bc8c823b758c834c953cdfc50f023e82cebe2321

+ 6 - 0
vendor/composer/autoload_namespaces.php Vedi File

@@ -15,6 +15,11 @@ return array(
15 15
     'Symfony\\Bundle\\AsseticBundle' => $vendorDir . '/symfony/assetic-bundle/',
16 16
     'Symfony' => $vendorDir . '/symfony/symfony/src/',
17 17
     'Stof\\DoctrineExtensionsBundle' => $vendorDir . '/stof/doctrine-extensions-bundle/',
18
+    'Sonata\\jQueryBundle' => $vendorDir . '/sonata-project/jquery-bundle/',
19
+    'Sonata\\DoctrineORMAdminBundle' => $vendorDir . '/sonata-project/doctrine-orm-admin-bundle/',
20
+    'Sonata\\BlockBundle' => $vendorDir . '/sonata-project/block-bundle/',
21
+    'Sonata\\AdminBundle' => $vendorDir . '/sonata-project/admin-bundle/',
22
+    'Shtumi\\UsefulBundle' => $vendorDir . '/shtumi/useful-bundle/',
18 23
     'SessionHandlerInterface' => $vendorDir . '/symfony/symfony/src/Symfony/Component/HttpFoundation/Resources/stubs',
19 24
     'Sensio\\Bundle\\GeneratorBundle' => $vendorDir . '/sensio/generator-bundle/',
20 25
     'Sensio\\Bundle\\FrameworkExtraBundle' => $vendorDir . '/sensio/framework-extra-bundle/',
@@ -30,6 +35,7 @@ return array(
30 35
     'Gregwar\\ImageBundle' => $vendorDir . '/gregwar/image-bundle/',
31 36
     'Gedmo' => $vendorDir . '/gedmo/doctrine-extensions/lib/',
32 37
     'FOS\\UserBundle' => $vendorDir . '/friendsofsymfony/user-bundle/',
38
+    'Exporter' => $vendorDir . '/sonata-project/exporter/lib/',
33 39
     'Doctrine\\ORM' => $vendorDir . '/doctrine/orm/lib/',
34 40
     'Doctrine\\DBAL' => $vendorDir . '/doctrine/dbal/lib/',
35 41
     'Doctrine\\Common\\DataFixtures' => $vendorDir . '/doctrine/data-fixtures/lib/',

+ 3 - 3
vendor/composer/autoload_real.php Vedi File

@@ -2,7 +2,7 @@
2 2
 
3 3
 // autoload_real.php generated by Composer
4 4
 
5
-class ComposerAutoloaderInit518f1eb7577bcf5e84791f76034137cd
5
+class ComposerAutoloaderInit6c3b313faf78baf847838c5239806fa1
6 6
 {
7 7
     private static $loader;
8 8
 
@@ -19,9 +19,9 @@ class ComposerAutoloaderInit518f1eb7577bcf5e84791f76034137cd
19 19
             return self::$loader;
20 20
         }
21 21
 
22
-        spl_autoload_register(array('ComposerAutoloaderInit518f1eb7577bcf5e84791f76034137cd', 'loadClassLoader'));
22
+        spl_autoload_register(array('ComposerAutoloaderInit6c3b313faf78baf847838c5239806fa1', 'loadClassLoader'));
23 23
         self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
-        spl_autoload_unregister(array('ComposerAutoloaderInit518f1eb7577bcf5e84791f76034137cd', 'loadClassLoader'));
24
+        spl_autoload_unregister(array('ComposerAutoloaderInit6c3b313faf78baf847838c5239806fa1', 'loadClassLoader'));
25 25
 
26 26
         $vendorDir = dirname(__DIR__);
27 27
         $baseDir = dirname($vendorDir);

File diff suppressed because it is too large
+ 729 - 396
vendor/composer/installed.json


+ 1 - 1
vendor/knplabs/knp-menu

@@ -1 +1 @@
1
-Subproject commit a93c82d6be653d7a5bb861a0c8a53a2f58695d71
1
+Subproject commit f8e867268f63f561c1adadd6cbb5d8524f921873

+ 1 - 1
vendor/knplabs/knp-menu-bundle/Knp/Bundle/MenuBundle

@@ -1 +1 @@
1
-Subproject commit 5cadbc8958eb3e15aff6e2bec21bcbeec37d7409
1
+Subproject commit f77e97924164b5500a15a209243e4c71fe466306

+ 1 - 1
vendor/kriswallsmith/assetic

@@ -1 +1 @@
1
-Subproject commit 3e49bc05c747d70f6e6e118061608dab13a0e132
1
+Subproject commit 6f580dd1cf03d6d80a3885921ca068b774224161

+ 1 - 0
vendor/shtumi/useful-bundle/Shtumi/UsefulBundle

@@ -0,0 +1 @@
1
+Subproject commit 8f3c99e5dfbcf8e5500779510d0ec2ebea3a2474

+ 1 - 0
vendor/sonata-project/admin-bundle/Sonata/AdminBundle

@@ -0,0 +1 @@
1
+Subproject commit 785475567dad895f5ee7434570de0de3c06ea1b6

+ 1 - 0
vendor/sonata-project/block-bundle/Sonata/BlockBundle

@@ -0,0 +1 @@
1
+Subproject commit 23c04147b54ab93432a1ae2a044eca2edbdf27a5

+ 1 - 0
vendor/sonata-project/doctrine-orm-admin-bundle/Sonata/DoctrineORMAdminBundle

@@ -0,0 +1 @@
1
+Subproject commit 344ac471d779d198a858e0c6783990516eef0fe7

+ 1 - 0
vendor/sonata-project/exporter/.gitignore Vedi File

@@ -0,0 +1 @@
1
+phpunit.xml

+ 7 - 0
vendor/sonata-project/exporter/.travis.yml Vedi File

@@ -0,0 +1,7 @@
1
+language: php
2
+
3
+php:
4
+  - 5.3
5
+  - 5.4
6
+
7
+script: phpunit --coverage-text

+ 32 - 0
vendor/sonata-project/exporter/README.md Vedi File

@@ -0,0 +1,32 @@
1
+Data Exporter
2
+=============
3
+
4
+[![Build Status](https://secure.travis-ci.org/sonata-project/exporter.png)](https://secure.travis-ci.org/#!/sonata-project/exporter)
5
+
6
+
7
+Data Exporter is a lightweight library to export data into different formats.
8
+
9
+
10
+```php
11
+
12
+<?php
13
+// Prepare the data source
14
+$dbh = new \PDO('sqlite:foo.db');
15
+$stm = $dbh->prepare('SELECT id, username, email FROM user');
16
+$stm->execute();
17
+
18
+$source = new PDOStatementSource($stm);
19
+
20
+// Prepare the writer
21
+$writer = new CsvWriter('data.csv');
22
+
23
+// Export the data
24
+Handler::create($source, $writer)->export();
25
+
26
+```
27
+
28
+
29
+**Google Groups**: For questions and proposals you can post on this google groups
30
+
31
+* [Sonata Users](https://groups.google.com/group/sonata-users): Only for user questions
32
+* [Sonata Devs](https://groups.google.com/group/sonata-devs): Only for devs

+ 31 - 0
vendor/sonata-project/exporter/composer.json Vedi File

@@ -0,0 +1,31 @@
1
+{
2
+    "name": "sonata-project/exporter",
3
+    "description": "Lightweight Exporter library",
4
+    "keywords": ["export", "csv", "xls", "data", "client"],
5
+    "homepage": "https://github.com/sonata-project/Exporter",
6
+    "type": "library",
7
+    "license": "MIT",
8
+    "authors": [
9
+        {
10
+            "name": "Thomas Rabaix",
11
+            "email": "thomas.rabaix@gmail.com",
12
+            "homepage": "http://sonata-project.org/"
13
+        }
14
+    ],
15
+    "require": {
16
+        "php": ">=5.3.0"
17
+    },
18
+    "require-dev": {
19
+        "php": ">=5.3.0",
20
+        "symfony/routing": "*"
21
+    },
22
+    "suggest": {
23
+        "ext-curl": "*",
24
+        "symfony/routing": "*"
25
+    },
26
+    "autoload": {
27
+        "psr-0": {
28
+            "Exporter": "lib/"
29
+        }
30
+    }
31
+}

+ 16 - 0
vendor/sonata-project/exporter/lib/Exporter/Exception/InvalidDataFormatException.php Vedi File

@@ -0,0 +1,16 @@
1
+<?php
2
+
3
+/*
4
+ * This file is part of the Sonata package.
5
+ *
6
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
7
+ *
8
+ * For the full copyright and license information, please view the LICENSE
9
+ * file that was distributed with this source code.
10
+ */
11
+
12
+namespace Exporter\Exception;
13
+
14
+class InvalidDataFormatException extends \RuntimeException
15
+{
16
+}

+ 16 - 0
vendor/sonata-project/exporter/lib/Exporter/Exception/InvalidMethodCallException.php Vedi File

@@ -0,0 +1,16 @@
1
+<?php
2
+
3
+/*
4
+ * This file is part of the Sonata package.
5
+ *
6
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
7
+ *
8
+ * For the full copyright and license information, please view the LICENSE
9
+ * file that was distributed with this source code.
10
+ */
11
+
12
+namespace Exporter\Exception;
13
+
14
+class InvalidMethodCallException extends \RuntimeException
15
+{
16
+}

+ 59 - 0
vendor/sonata-project/exporter/lib/Exporter/Handler.php Vedi File

@@ -0,0 +1,59 @@
1
+<?php
2
+
3
+/*
4
+ * This file is part of the Sonata package.
5
+ *
6
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
7
+ *
8
+ * For the full copyright and license information, please view the LICENSE
9
+ * file that was distributed with this source code.
10
+ */
11
+
12
+namespace Exporter;
13
+
14
+use Exporter\Source\SourceIteratorInterface;
15
+use Exporter\Writer\WriterInterface;
16
+
17
+class Handler
18
+{
19
+    protected $source;
20
+
21
+    protected $writer;
22
+
23
+    /**
24
+     * @param Source\SourceIteratorInterface $source
25
+     * @param Writer\WriterInterface         $writer
26
+     */
27
+    public function __construct(SourceIteratorInterface $source, WriterInterface $writer)
28
+    {
29
+        $this->source = $source;
30
+        $this->writer = $writer;
31
+    }
32
+
33
+    /**
34
+     * @return void
35
+     */
36
+    public function export()
37
+    {
38
+        $this->writer->open();
39
+
40
+        foreach ($this->source as $data) {
41
+            $this->writer->write($data);
42
+        }
43
+
44
+        $this->writer->close();
45
+    }
46
+
47
+    /**
48
+     * @static
49
+     *
50
+     * @param Source\SourceIteratorInterface $source
51
+     * @param Writer\WriterInterface         $writer
52
+     *
53
+     * @return Handler
54
+     */
55
+    public static function create(SourceIteratorInterface $source, WriterInterface $writer)
56
+    {
57
+        return new self($source, $writer);
58
+    }
59
+}

+ 25 - 0
vendor/sonata-project/exporter/lib/Exporter/Source/ArraySourceIterator.php Vedi File

@@ -0,0 +1,25 @@
1
+<?php
2
+
3
+/*
4
+ * This file is part of the Sonata package.
5
+ *
6
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
7
+ *
8
+ * For the full copyright and license information, please view the LICENSE
9
+ * file that was distributed with this source code.
10
+ */
11
+
12
+namespace Exporter\Source;
13
+
14
+class ArraySourceIterator extends IteratorSourceIterator
15
+{
16
+    protected $iterator;
17
+
18
+    /**
19
+     * @param array $data
20
+     */
21
+    public function __construct(array $data)
22
+    {
23
+        parent::__construct(new \ArrayIterator($data));
24
+    }
25
+}

+ 91 - 0
vendor/sonata-project/exporter/lib/Exporter/Source/ChainSourceIterator.php Vedi File

@@ -0,0 +1,91 @@
1
+<?php
2
+
3
+/*
4
+ * This file is part of the Sonata package.
5
+ *
6
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
7
+ *
8
+ * For the full copyright and license information, please view the LICENSE
9
+ * file that was distributed with this source code.
10
+ */
11
+
12
+namespace Exporter\Source;
13
+
14
+use ArrayIterator;
15
+
16
+class ChainSourceIterator implements SourceIteratorInterface
17
+{
18
+    protected $sources;
19
+
20
+    /**
21
+     * @param array $sources
22
+     */
23
+    public function __construct(array $sources = array())
24
+    {
25
+        $this->sources = new ArrayIterator();
26
+
27
+        foreach ($sources as $source) {
28
+            $this->addSource($source);
29
+        }
30
+    }
31
+
32
+    /**
33
+     * @param SourceIteratorInterface $source
34
+     */
35
+    public function addSource(SourceIteratorInterface $source)
36
+    {
37
+        $this->sources->append($source);
38
+    }
39
+
40
+    /**
41
+     * {@inheritdoc}
42
+     */
43
+    public function current()
44
+    {
45
+        return $this->sources->current()->current();
46
+    }
47
+
48
+    /**
49
+     * {@inheritdoc}
50
+     */
51
+    public function next()
52
+    {
53
+        $this->sources->current()->next();
54
+    }
55
+
56
+    /**
57
+     * {@inheritdoc}
58
+     */
59
+    public function key()
60
+    {
61
+        return $this->sources->current()->key();
62
+    }
63
+
64
+    /**
65
+     * {@inheritdoc}
66
+     */
67
+    public function valid()
68
+    {
69
+        if (!$this->sources->current()->valid()) {
70
+            $this->sources->next();
71
+
72
+            if (!$this->sources->valid()) {
73
+                return false;
74
+            }
75
+
76
+            $this->sources->current()->rewind();
77
+        }
78
+
79
+        return true;
80
+    }
81
+
82
+    /**
83
+     * {@inheritdoc}
84
+     */
85
+    public function rewind()
86
+    {
87
+        if ($this->sources->current()) {
88
+            $this->sources->current()->rewind();
89
+        }
90
+    }
91
+}

+ 94 - 0
vendor/sonata-project/exporter/lib/Exporter/Source/DoctrineDBALConnectionSourceIterator.php Vedi File

@@ -0,0 +1,94 @@
1
+<?php
2
+
3
+/*
4
+ * This file is part of the Sonata package.
5
+ *
6
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
7
+ *
8
+ * For the full copyright and license information, please view the LICENSE
9
+ * file that was distributed with this source code.
10
+ */
11
+
12
+namespace Exporter\Source;
13
+
14
+use Exporter\Exception\InvalidMethodCallException;
15
+use Doctrine\DBAL\Driver\Connection;
16
+use Doctrine\DBAL\Driver\Statement;
17
+
18
+class DoctrineDBALConnectionSourceIterator implements SourceIteratorInterface
19
+{
20
+    protected $connection;
21
+
22
+    protected $query;
23
+
24
+    protected $parameters;
25
+
26
+    protected $current;
27
+
28
+    protected $position;
29
+
30
+    /**
31
+     * @var Statement
32
+     */
33
+    protected $statement;
34
+
35
+    /**
36
+     * @param Connection $statement
37
+     */
38
+    public function __construct(Connection $connection, $query, array $parameters = array())
39
+    {
40
+        $this->connection = $connection;
41
+        $this->query      = $query;
42
+        $this->parameters = $parameters;
43
+
44
+        $this->position   = 0;
45
+    }
46
+
47
+    /**
48
+     * {@inheritdoc}
49
+     */
50
+    public function current()
51
+    {
52
+        return $this->current;
53
+    }
54
+
55
+    /**
56
+     * {@inheritdoc}
57
+     */
58
+    public function next()
59
+    {
60
+        $this->current = $this->statement->fetch(\PDO::FETCH_ASSOC);
61
+        $this->position++;
62
+    }
63
+
64
+    /**
65
+     * {@inheritdoc}
66
+     */
67
+    public function key()
68
+    {
69
+        return $this->position;
70
+    }
71
+
72
+    /**
73
+     * {@inheritdoc}
74
+     */
75
+    public function valid()
76
+    {
77
+        return is_array($this->current);
78
+    }
79
+
80
+    /**
81
+     * {@inheritdoc}
82
+     */
83
+    public function rewind()
84
+    {
85
+        if ($this->statement) {
86
+            throw new InvalidMethodCallException('Cannot rewind a PDOStatement');
87
+        }
88
+
89
+        $this->statement = $this->connection->prepare($this->query);
90
+        $this->statement->execute($this->parameters);
91
+
92
+        $this->next();
93
+    }
94
+}

+ 123 - 0
vendor/sonata-project/exporter/lib/Exporter/Source/DoctrineODMQuerySourceIterator.php Vedi File

@@ -0,0 +1,123 @@
1
+<?php
2
+
3
+/*
4
+ * This file is part of the Sonata package.
5
+ *
6
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
7
+ *
8
+ * For the full copyright and license information, please view the LICENSE
9
+ * file that was distributed with this source code.
10
+ */
11
+
12
+namespace Exporter\Source;
13
+
14
+use Exporter\Exception\InvalidMethodCallException;
15
+use Doctrine\ODM\MongoDB\Query\Query;
16
+use Exporter\Source\SourceIteratorInterface;
17
+use Symfony\Component\Form\Util\PropertyPath;
18
+
19
+class DoctrineODMQuerySourceIterator implements SourceIteratorInterface
20
+{
21
+    /**
22
+     * @var \Doctrine\ORM\Query
23
+     */
24
+    protected $query;
25
+
26
+    /**
27
+     * @var \Doctrine\ORM\Internal\Hydration\IterableResult
28
+     */
29
+    protected $iterator;
30
+
31
+    protected $propertyPaths;
32
+
33
+    /**
34
+     * @param \Doctrine\ODM\MongoDB\Query\Query $query  The Doctrine Query
35
+     * @param array               $fields Fields to export
36
+     */
37
+    public function __construct(Query $query, array $fields)
38
+    {
39
+        $this->query = clone $query;
40
+
41
+        $this->propertyPaths = array();
42
+        foreach ($fields as $name => $field) {
43
+            if (is_string($name) && is_string($field)) {
44
+                $this->propertyPaths[$name] = new PropertyPath($field);
45
+            } else {
46
+                $this->propertyPaths[$field] = new PropertyPath($field);
47
+            }
48
+        }
49
+    }
50
+
51
+    /**
52
+     * {@inheritdoc}
53
+     */
54
+    public function current()
55
+    {
56
+        $current = $this->iterator->current();
57
+
58
+        $data = array();
59
+
60
+        foreach ($this->propertyPaths as $name => $propertyPath) {
61
+            $data[$name] = $this->getValue($propertyPath->getValue($current));
62
+        }
63
+
64
+        $this->query->getDocumentManager()->getUnitOfWork()->detach($current);
65
+
66
+        return $data;
67
+    }
68
+
69
+    /**
70
+     * @param $value
71
+     *
72
+     * @return null|string
73
+     */
74
+    protected function getValue($value)
75
+    {
76
+        if (is_array($value) or $value instanceof \Traversable) {
77
+            $value = null;
78
+        } elseif ($value instanceof \DateTime) {
79
+            $value = $value->format('r');
80
+        } elseif (is_object($value)) {
81
+            $value = (string) $value;
82
+        }
83
+
84
+        return $value;
85
+    }
86
+
87
+    /**
88
+     * {@inheritdoc}
89
+     */
90
+    public function next()
91
+    {
92
+        $this->iterator->next();
93
+    }
94
+
95
+    /**
96
+     * {@inheritdoc}
97
+     */
98
+    public function key()
99
+    {
100
+        return $this->iterator->key();
101
+    }
102
+
103
+    /**
104
+     * {@inheritdoc}
105
+     */
106
+    public function valid()
107
+    {
108
+        return $this->iterator->valid();
109
+    }
110
+
111
+    /**
112
+     * {@inheritdoc}
113
+     */
114
+    public function rewind()
115
+    {
116
+        if ($this->iterator) {
117
+            throw new InvalidMethodCallException('Cannot rewind a Doctrine\ODM\Query');
118
+        }
119
+
120
+        $this->iterator = $this->query->iterate();
121
+        $this->iterator->rewind();
122
+    }
123
+}

+ 124 - 0
vendor/sonata-project/exporter/lib/Exporter/Source/DoctrineORMQuerySourceIterator.php Vedi File

@@ -0,0 +1,124 @@
1
+<?php
2
+
3
+/*
4
+ * This file is part of the Sonata package.
5
+ *
6
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
7
+ *
8
+ * For the full copyright and license information, please view the LICENSE
9
+ * file that was distributed with this source code.
10
+ */
11
+
12
+namespace Exporter\Source;
13
+
14
+use Exporter\Exception\InvalidMethodCallException;
15
+use Doctrine\ORM\Query;
16
+use Exporter\Source\SourceIteratorInterface;
17
+use Symfony\Component\Form\Util\PropertyPath;
18
+
19
+class DoctrineORMQuerySourceIterator implements SourceIteratorInterface
20
+{
21
+    /**
22
+     * @var \Doctrine\ORM\Query
23
+     */
24
+    protected $query;
25
+
26
+    /**
27
+     * @var \Doctrine\ORM\Internal\Hydration\IterableResult
28
+     */
29
+    protected $iterator;
30
+
31
+    protected $propertyPaths;
32
+
33
+    /**
34
+     * @param \Doctrine\ORM\Query $query  The Doctrine Query
35
+     * @param array               $fields Fields to export
36
+     */
37
+    public function __construct(Query $query, array $fields)
38
+    {
39
+        $this->query = clone $query;
40
+        $this->query->setParameters($query->getParameters());
41
+
42
+        $this->propertyPaths = array();
43
+        foreach ($fields as $name => $field) {
44
+            if (is_string($name) && is_string($field)) {
45
+                $this->propertyPaths[$name] = new PropertyPath($field);
46
+            } else {
47
+                $this->propertyPaths[$field] = new PropertyPath($field);
48
+            }
49
+        }
50
+    }
51
+
52
+    /**
53
+     * {@inheritdoc}
54
+     */
55
+    public function current()
56
+    {
57
+        $current = $this->iterator->current();
58
+
59
+        $data = array();
60
+
61
+        foreach ($this->propertyPaths as $name => $propertyPath) {
62
+            $data[$name] = $this->getValue($propertyPath->getValue($current[0]));
63
+        }
64
+
65
+        $this->query->getEntityManager()->getUnitOfWork()->detach($current[0]);
66
+
67
+        return $data;
68
+    }
69
+
70
+    /**
71
+     * @param $value
72
+     *
73
+     * @return null|string
74
+     */
75
+    protected function getValue($value)
76
+    {
77
+        if (is_array($value) or $value instanceof \Traversable) {
78
+            $value = null;
79
+        } elseif ($value instanceof \DateTime) {
80
+            $value = $value->format('r');
81
+        } elseif (is_object($value)) {
82
+            $value = (string) $value;
83
+        }
84
+
85
+        return $value;
86
+    }
87
+
88
+    /**
89
+     * {@inheritdoc}
90
+     */
91
+    public function next()
92
+    {
93
+        $this->iterator->next();
94
+    }
95
+
96
+    /**
97
+     * {@inheritdoc}
98
+     */
99
+    public function key()
100
+    {
101
+        return $this->iterator->key();
102
+    }
103
+
104
+    /**
105
+     * {@inheritdoc}
106
+     */
107
+    public function valid()
108
+    {
109
+        return $this->iterator->valid();
110
+    }
111
+
112
+    /**
113
+     * {@inheritdoc}
114
+     */
115
+    public function rewind()
116
+    {
117
+        if ($this->iterator) {
118
+            throw new InvalidMethodCallException('Cannot rewind a Doctrine\ORM\Query');
119
+        }
120
+
121
+        $this->iterator = $this->query->iterate();
122
+        $this->iterator->rewind();
123
+    }
124
+}

+ 76 - 0
vendor/sonata-project/exporter/lib/Exporter/Source/IteratorSourceIterator.php Vedi File

@@ -0,0 +1,76 @@
1
+<?php
2
+
3
+/*
4
+ * This file is part of the Sonata package.
5
+ *
6
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
7
+ *
8
+ * For the full copyright and license information, please view the LICENSE
9
+ * file that was distributed with this source code.
10
+ */
11
+
12
+namespace Exporter\Source;
13
+
14
+/**
15
+ * SourceIterator implementation based on Iterator
16
+ */
17
+class IteratorSourceIterator implements SourceIteratorInterface
18
+{
19
+    protected $iterator;
20
+
21
+    /**
22
+     * @param \Iterator $iterator Iterator with string array elements
23
+     */
24
+    public function __construct(\Iterator $iterator)
25
+    {
26
+        $this->iterator = $iterator;
27
+    }
28
+
29
+    /**
30
+     * @return \Iterator
31
+     */
32
+    public function getIterator()
33
+    {
34
+        return $this->iterator;
35
+    }
36
+
37
+    /**
38
+     * {@inheritdoc}
39
+     */
40
+    public function current()
41
+    {
42
+        return $this->iterator->current();
43
+    }
44
+
45
+    /**
46
+     * {@inheritdoc}
47
+     */
48
+    public function next()
49
+    {
50
+        $this->iterator->next();
51
+    }
52
+
53
+    /**
54
+     * {@inheritdoc}
55
+     */
56
+    public function key()
57
+    {
58
+        return $this->iterator->key();
59
+    }
60
+
61
+    /**
62
+     * {@inheritdoc}
63
+     */
64
+    public function valid()
65
+    {
66
+        return $this->iterator->valid();
67
+    }
68
+
69
+    /**
70
+     * {@inheritdoc}
71
+     */
72
+    public function rewind()
73
+    {
74
+        $this->iterator->rewind();
75
+    }
76
+}

+ 81 - 0
vendor/sonata-project/exporter/lib/Exporter/Source/PDOStatementSourceIterator.php Vedi File

@@ -0,0 +1,81 @@
1
+<?php
2
+
3
+/*
4
+ * This file is part of the Sonata package.
5
+ *
6
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
7
+ *
8
+ * For the full copyright and license information, please view the LICENSE
9
+ * file that was distributed with this source code.
10
+ */
11
+
12
+namespace Exporter\Source;
13
+
14
+use Exporter\Exception\InvalidMethodCallException;
15
+
16
+class PDOStatementSourceIterator implements SourceIteratorInterface
17
+{
18
+    protected $statement;
19
+
20
+    protected $current;
21
+
22
+    protected $position;
23
+
24
+    protected $rewinded;
25
+
26
+    /**
27
+     * @param \PDOStatement $statement
28
+     */
29
+    public function __construct(\PDOStatement $statement)
30
+    {
31
+        $this->statement = $statement;
32
+        $this->position  = 0;
33
+        $this->rewinded  = false;
34
+    }
35
+
36
+    /**
37
+     * {@inheritdoc}
38
+     */
39
+    public function current()
40
+    {
41
+        return $this->current;
42
+    }
43
+
44
+    /**
45
+     * {@inheritdoc}
46
+     */
47
+    public function next()
48
+    {
49
+        $this->current = $this->statement->fetch(\PDO::FETCH_ASSOC);
50
+        $this->position++;
51
+    }
52
+
53
+    /**
54
+     * {@inheritdoc}
55
+     */
56
+    public function key()
57
+    {
58
+        return $this->position;
59
+    }
60
+
61
+    /**
62
+     * {@inheritdoc}
63
+     */
64
+    public function valid()
65
+    {
66
+        return is_array($this->current);
67
+    }
68
+
69
+    /**
70
+     * {@inheritdoc}
71
+     */
72
+    public function rewind()
73
+    {
74
+        if ($this->rewinded) {
75
+            throw new InvalidMethodCallException('Cannot rewind a PDOStatement');
76
+        }
77
+
78
+        $this->current  = $this->statement->fetch(\PDO::FETCH_ASSOC);
79
+        $this->rewinded = true;
80
+    }
81
+}

+ 17 - 0
vendor/sonata-project/exporter/lib/Exporter/Source/SourceIteratorInterface.php Vedi File

@@ -0,0 +1,17 @@
1
+<?php
2
+
3
+/*
4
+ * This file is part of the Sonata package.
5
+ *
6
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
7
+ *
8
+ * For the full copyright and license information, please view the LICENSE
9
+ * file that was distributed with this source code.
10
+ */
11
+
12
+namespace Exporter\Source;
13
+
14
+interface SourceIteratorInterface extends \Iterator
15
+{
16
+
17
+}

+ 86 - 0
vendor/sonata-project/exporter/lib/Exporter/Source/SymfonySitemapSourceIterator.php Vedi File

@@ -0,0 +1,86 @@
1
+<?php
2
+/*
3
+ * This file is part of the Sonata project.
4
+ *
5
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
6
+ *
7
+ * For the full copyright and license information, please view the LICENSE
8
+ * file that was distributed with this source code.
9
+ */
10
+
11
+namespace Exporter\Source;
12
+
13
+use Symfony\Component\Routing\RouterInterface;
14
+
15
+class SymfonySitemapSourceIterator implements SourceIteratorInterface
16
+{
17
+    protected $router;
18
+
19
+    protected $source;
20
+
21
+    protected $routeName;
22
+
23
+    protected $parameters;
24
+
25
+    /**
26
+     * @param SourceIteratorInterface $source
27
+     * @param RouterInterface         $router
28
+     * @param string                  $routeName
29
+     * @param array                   $parameters
30
+     */
31
+    public function __construct(SourceIteratorInterface $source, RouterInterface $router, $routeName, array $parameters = array())
32
+    {
33
+        $this->source = $source;
34
+        $this->router = $router;
35
+        $this->routeName = $routeName;
36
+        $this->parameters = $parameters;
37
+    }
38
+
39
+    /**
40
+     * {@inheritdoc}
41
+     */
42
+    public function current()
43
+    {
44
+        $data = $this->source->current();
45
+
46
+        $parameters = array_merge($this->parameters, array_intersect_key($data, $this->parameters));
47
+
48
+        if (!isset($data['url'])) {
49
+            $data['url'] = $this->router->generate($this->routeName, $parameters, true);
50
+        }
51
+
52
+        return $data;
53
+    }
54
+
55
+    /**
56
+     * {@inheritdoc}
57
+     */
58
+    public function next()
59
+    {
60
+        $this->source->next();
61
+    }
62
+
63
+    /**
64
+     * {@inheritdoc}
65
+     */
66
+    public function key()
67
+    {
68
+        return $this->source->key();
69
+    }
70
+
71
+    /**
72
+     * {@inheritdoc}
73
+     */
74
+    public function valid()
75
+    {
76
+        return $this->source->valid();
77
+    }
78
+
79
+    /**
80
+     * {@inheritdoc}
81
+     */
82
+    public function rewind()
83
+    {
84
+        $this->source->rewind();
85
+    }
86
+}

+ 103 - 0
vendor/sonata-project/exporter/lib/Exporter/Writer/CsvWriter.php Vedi File

@@ -0,0 +1,103 @@
1
+<?php
2
+
3
+/*
4
+ * This file is part of the Sonata package.
5
+ *
6
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
7
+ *
8
+ * For the full copyright and license information, please view the LICENSE
9
+ * file that was distributed with this source code.
10
+ */
11
+
12
+namespace Exporter\Writer;
13
+
14
+use Exporter\Exception\InvalidDataFormatException;
15
+
16
+class CsvWriter implements WriterInterface
17
+{
18
+    protected $filename;
19
+
20
+    protected $delimiter;
21
+
22
+    protected $enclosure;
23
+
24
+    protected $escape;
25
+
26
+    protected $file;
27
+
28
+    protected $showHeaders;
29
+
30
+    protected $position;
31
+
32
+    /**
33
+     * @param string $filename
34
+     * @param string $delimiter
35
+     * @param string $enclosure
36
+     * @param string $escape
37
+     * @param bool   $showHeaders
38
+     */
39
+    public function __construct($filename, $delimiter = ",", $enclosure = "\"", $escape = "\\", $showHeaders = true)
40
+    {
41
+        $this->filename    = $filename;
42
+        $this->delimiter   = $delimiter;
43
+        $this->enclosure   = $enclosure;
44
+        $this->escape      = $escape;
45
+        $this->showHeaders = $showHeaders;
46
+        $this->position    = 0;
47
+
48
+        if (is_file($filename)) {
49
+            throw new \RuntimeException(sprintf('The file %s already exist', $filename));
50
+        }
51
+    }
52
+
53
+    /**
54
+     * {@inheritdoc}
55
+     */
56
+    public function open()
57
+    {
58
+        $this->file = fopen($this->filename, 'w', false);
59
+    }
60
+
61
+    /**
62
+     * {@inheritdoc}
63
+     */
64
+    public function close()
65
+    {
66
+        fclose($this->file);
67
+    }
68
+
69
+    /**
70
+     * {@inheritdoc}
71
+     */
72
+    public function write(array $data)
73
+    {
74
+        if ($this->position == 0 && $this->showHeaders) {
75
+            $this->addHeaders($data);
76
+
77
+            $this->position++;
78
+        }
79
+
80
+        $result = @fputcsv($this->file, $data, $this->delimiter, $this->enclosure);
81
+
82
+        if (!$result) {
83
+            throw new InvalidDataFormatException();
84
+        }
85
+
86
+        $this->position++;
87
+    }
88
+
89
+    /**
90
+     * @param array $data
91
+     *
92
+     * @return void
93
+     */
94
+    protected function addHeaders(array $data)
95
+    {
96
+        $headers = array();
97
+        foreach ($data as $header => $value) {
98
+            $headers[] = $header;
99
+        }
100
+
101
+        fputcsv($this->file, $headers, $this->delimiter, $this->enclosure);
102
+    }
103
+}

+ 51 - 0
vendor/sonata-project/exporter/lib/Exporter/Writer/InMemoryWriter.php Vedi File

@@ -0,0 +1,51 @@
1
+<?php
2
+
3
+/*
4
+ * This file is part of the Sonata package.
5
+ *
6
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
7
+ *
8
+ * For the full copyright and license information, please view the LICENSE
9
+ * file that was distributed with this source code.
10
+ */
11
+
12
+namespace Exporter\Writer;
13
+
14
+use Exporter\Exception\InvalidDataFormatException;
15
+
16
+class InMemoryWriter implements WriterInterface
17
+{
18
+    protected $elements;
19
+
20
+    /**
21
+     * {@inheritdoc}
22
+     */
23
+    public function open()
24
+    {
25
+        $this->elements = array();
26
+    }
27
+
28
+    /**
29
+     * {@inheritdoc}
30
+     */
31
+    public function close()
32
+    {
33
+        return $this->elements;
34
+    }
35
+
36
+    /**
37
+     * {@inheritdoc}
38
+     */
39
+    public function write(array $data)
40
+    {
41
+        $this->elements[] = $data;
42
+    }
43
+
44
+    /**
45
+     * @return array
46
+     */
47
+    public function getElements()
48
+    {
49
+        return $this->elements;
50
+    }
51
+}

+ 64 - 0
vendor/sonata-project/exporter/lib/Exporter/Writer/JsonWriter.php Vedi File

@@ -0,0 +1,64 @@
1
+<?php
2
+
3
+/*
4
+ * This file is part of the Sonata package.
5
+ *
6
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
7
+ *
8
+ * For the full copyright and license information, please view the LICENSE
9
+ * file that was distributed with this source code.
10
+ */
11
+
12
+namespace Exporter\Writer;
13
+
14
+class JsonWriter implements WriterInterface
15
+{
16
+    protected $filename;
17
+
18
+    protected $file;
19
+
20
+    protected $position;
21
+
22
+    /**
23
+     * @param string $filename
24
+     */
25
+    public function __construct($filename)
26
+    {
27
+        $this->filename = $filename;
28
+        $this->position = 0;
29
+
30
+        if (is_file($filename)) {
31
+            throw new \RuntimeException(sprintf('The file %s already exist', $filename));
32
+        }
33
+    }
34
+
35
+    /**
36
+     * {@inheritdoc}
37
+     */
38
+    public function open()
39
+    {
40
+        $this->file = fopen($this->filename, 'w', false);
41
+
42
+        fwrite($this->file, '[');
43
+    }
44
+
45
+    /**
46
+     * {@inheritdoc}
47
+     */
48
+    public function close()
49
+    {
50
+        fwrite($this->file, ']');
51
+
52
+        fclose($this->file);
53
+    }
54
+
55
+    /**
56
+     * {@inheritdoc}
57
+     */
58
+    public function write(array $data)
59
+    {
60
+        fwrite($this->file, ($this->position > 0 ? ',' : '') . json_encode($data));
61
+
62
+        $this->position++;
63
+    }
64
+}

+ 367 - 0
vendor/sonata-project/exporter/lib/Exporter/Writer/SitemapWriter.php Vedi File

@@ -0,0 +1,367 @@
1
+<?php
2
+
3
+/*
4
+ * This file is part of the Sonata package.
5
+ *
6
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
7
+ *
8
+ * For the full copyright and license information, please view the LICENSE
9
+ * file that was distributed with this source code.
10
+ */
11
+
12
+namespace Exporter\Writer;
13
+
14
+/**
15
+ * Generates a sitemap site from
16
+ */
17
+class SitemapWriter implements WriterInterface
18
+{
19
+    const LIMIT_SIZE = 10485760;
20
+    const LIMIT_URL  = 50000;
21
+
22
+    /**
23
+     * @var string
24
+     */
25
+    protected $folder;
26
+
27
+    /**
28
+     * @var string
29
+     */
30
+    protected $pattern;
31
+
32
+    /**
33
+     * @var string
34
+     */
35
+    protected $groupName;
36
+
37
+    /**
38
+     * @var boolean
39
+     */
40
+    protected $autoIndex;
41
+
42
+    /**
43
+     * @var resource
44
+     */
45
+    protected $buffer;
46
+
47
+    /**
48
+     * @var array
49
+     */
50
+    protected $headers;
51
+
52
+    /**
53
+     * @var integer
54
+     */
55
+    protected $bufferSize = 0;
56
+
57
+    /**
58
+     * @var integer
59
+     */
60
+    protected $bufferUrlCount = 0;
61
+
62
+    /**
63
+     * @var integer
64
+     */
65
+    protected $bufferPart = 0;
66
+
67
+    /**
68
+     * Constructor.
69
+     *
70
+     * @param string  $folder    The folder to store the sitemap.xml file
71
+     * @param mixed   $groupName Name of sub-sitemap (optional)
72
+     * @param array   $headers   Indicate the need for namespace in the header sitemap
73
+     * @param boolean $autoIndex If you want to generate index of sitemap (optional)
74
+     */
75
+    public function __construct($folder, $groupName = false, array $headers = array(), $autoIndex = true)
76
+    {
77
+        $this->folder    = $folder;
78
+        $this->groupName = is_string($groupName) ? $groupName : '';
79
+        $this->headers   = $headers;
80
+        $this->autoIndex = $autoIndex;
81
+
82
+        $this->pattern = 'sitemap_' . ($this->groupName? $this->groupName . '_' : '') . '%05d.xml';
83
+    }
84
+
85
+    /**
86
+     * Returns the status of auto generation of index site map
87
+     *
88
+     * @return boolean
89
+     */
90
+    public function isAutoIndex()
91
+    {
92
+        return $this->autoIndex;
93
+    }
94
+
95
+    /**
96
+     * Returns folder to store the sitemap.xml file
97
+     *
98
+     * @return string
99
+     */
100
+    public function getFolder()
101
+    {
102
+        return $this->folder;
103
+    }
104
+
105
+    /**
106
+     * {@inheritdoc}
107
+     */
108
+    public function open()
109
+    {
110
+        $this->bufferPart = 0;
111
+        $this->generateNewPart();
112
+    }
113
+
114
+    /**
115
+     * {@inheritdoc}
116
+     */
117
+    public function write(array $data)
118
+    {
119
+        $data = $this->buildData($data);
120
+
121
+        switch ($data['type']) {
122
+            case 'video':
123
+                $line = $this->generateVideoLine($data);
124
+                break;
125
+
126
+            case 'image':
127
+                $line = $this->generateImageLine($data);
128
+                break;
129
+
130
+            case 'default':
131
+            default:
132
+                $line = $this->generateDefaultLine($data);
133
+        }
134
+
135
+        $this->addSitemapLine($line);
136
+    }
137
+
138
+    /**
139
+     * {@inheritdoc}
140
+     */
141
+    public function close()
142
+    {
143
+        if ($this->buffer) {
144
+            $this->closeSitemap();
145
+        }
146
+
147
+        if ($this->autoIndex) {
148
+            self::generateSitemapIndex(
149
+                $this->folder,
150
+                'sitemap_' . ($this->groupName ? $this->groupName . '_' : '') . '*.xml',
151
+                'sitemap' . ($this->groupName ? '_' . $this->groupName : '') . '.xml'
152
+            );
153
+        }
154
+    }
155
+
156
+    /**
157
+     * Generates the sitemap index from the sitemap part avaible in the folder
158
+     *
159
+     * @param string  $folder
160
+     * @param string  $pattern
161
+     * @param string  $filename
162
+     */
163
+    public static function generateSitemapIndex($folder, $pattern = 'sitemap*.xml', $filename = 'sitemap.xml')
164
+    {
165
+        $content = "<?xml version='1.0' encoding='UTF-8'?" . ">\n<sitemapindex xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.sitemaps.org/schemas/sitemap/1.0 http://www.sitemaps.org/schemas/sitemap/0.9/siteindex.xsd' xmlns='http://www.sitemaps.org/schemas/sitemap/0.9'>\n";
166
+        foreach (glob(sprintf('%s/%s', $folder, $pattern)) as $file) {
167
+            $stat = stat($file);
168
+            $content .= sprintf("\t" . '<sitemap><loc>%s</loc><lastmod>%s</lastmod></sitemap>' . "\n",
169
+                basename($file),
170
+                date('Y-m-d', $stat['mtime'])
171
+            );
172
+        }
173
+
174
+        $content .= '</sitemapindex>';
175
+
176
+        file_put_contents(sprintf('%s/%s', $folder, $filename), $content);
177
+    }
178
+
179
+    /**
180
+     * Generate a new sitemap part
181
+     *
182
+     * @throws \RuntimeException
183
+     */
184
+    protected function generateNewPart()
185
+    {
186
+        if ($this->buffer) {
187
+            $this->closeSitemap();
188
+        }
189
+
190
+        $this->bufferUrlCount = 0;
191
+        $this->bufferSize     = 0;
192
+        $this->bufferPart++;
193
+
194
+        if (!is_writable($this->folder)) {
195
+            throw new \RuntimeException(sprintf('Unable to write to folder: %s', $this->folder));
196
+        }
197
+
198
+        $filename = sprintf($this->pattern, $this->bufferPart);
199
+
200
+        $this->buffer = fopen($this->folder . '/' . $filename, 'w');
201
+
202
+        $this->bufferSize += fwrite($this->buffer, '<?xml version="1.0" encoding="UTF-8"?>'."\n".'<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"' . $this->getHeaderByFlag() . '>'."\n");
203
+    }
204
+
205
+    /**
206
+     * Add a new line into the sitemap part
207
+     *
208
+     * @param string $line
209
+     */
210
+    protected function addSitemapLine($line)
211
+    {
212
+        if ($this->bufferUrlCount >= self::LIMIT_URL) {
213
+            $this->generateNewPart();
214
+        }
215
+
216
+        if (($this->bufferSize + strlen($line) + 9) > self::LIMIT_SIZE) {
217
+            $this->generateNewPart();
218
+        }
219
+
220
+        $this->bufferUrlCount++;
221
+
222
+        $this->bufferSize += fwrite($this->buffer, $line);
223
+    }
224
+
225
+    /**
226
+     * Build data with default parameters
227
+     *
228
+     * @param array $data List of parameters
229
+     *
230
+     * @return array
231
+     */
232
+    protected function buildData(array $data)
233
+    {
234
+        $default = array(
235
+            'url'        => null,
236
+            'lastmod'    => 'now',
237
+            'changefreq' => 'weekly',
238
+            'priority'   => 0.5,
239
+            'type'       => 'default'
240
+        );
241
+
242
+        $data = array_merge($default, $data);
243
+
244
+        $this->fixDataType($data);
245
+
246
+        return $data;
247
+    }
248
+
249
+    /**
250
+     * Fix type of data, if data type is specific,
251
+     * he must to be defined in data and he must to be a array
252
+     *
253
+     * @param array &$data List of parameters
254
+     *
255
+     * @return void
256
+     */
257
+    protected function fixDataType(array &$data)
258
+    {
259
+        if ('default' === $data['type']) {
260
+            return;
261
+        }
262
+
263
+        $valid_var_name = array(
264
+            'image' => 'images',
265
+            'video' => 'video'
266
+        );
267
+
268
+        if (!isset($valid_var_name[$data['type']], $data[$valid_var_name[$data['type']]]) || !is_array($data[$valid_var_name[$data['type']]])) {
269
+            $data['type'] = 'default';
270
+        }
271
+    }
272
+
273
+    /**
274
+     * Generate standard line of sitemap
275
+     *
276
+     * @param array $data List of parameters
277
+     *
278
+     * @return string
279
+     */
280
+    protected function generateDefaultLine(array $data)
281
+    {
282
+        return sprintf("\t".'<url><loc>%s</loc><lastmod>%s</lastmod><changefreq>%s</changefreq><priority>%s</priority></url>'."\n", $data['url'], date('Y-m-d', strtotime($data['lastmod'])), $data['changefreq'], $data['priority']);
283
+    }
284
+
285
+    /**
286
+     * Generate image line of sitemap
287
+     *
288
+     * @param array $data List of parameters
289
+     *
290
+     * @return string
291
+     */
292
+    protected function generateImageLine(array $data)
293
+    {
294
+        $images = '';
295
+
296
+        if (count($data['images']) > 1000) {
297
+            $data['images'] = array_splice($data['images'], 1000);
298
+        }
299
+
300
+        $builder = array(
301
+            'url'      => 'loc',
302
+            'location' => 'geo_location',
303
+        );
304
+
305
+        foreach ($data['images'] as $image) {
306
+            $images .= '<image:image>';
307
+
308
+            foreach ($image as $key => $element) {
309
+                $images .= sprintf('<image:%1$s>%2$s</image:%1$s>', (isset($builder[$key]) ? $builder[$key] : $key), $element);
310
+            }
311
+
312
+            $images .= '</image:image>';
313
+        }
314
+
315
+        return sprintf("\t".'<url><loc>%s</loc>%s</url>'."\n", $data['url'], $images);
316
+    }
317
+
318
+    /**
319
+     * Generate video line of sitemap
320
+     *
321
+     * @param array $data List of parameters
322
+     *
323
+     * @return string
324
+     */
325
+    protected function generateVideoLine(array $data)
326
+    {
327
+        $videos  = '';
328
+        $builder = array(
329
+            'thumbnail' => 'thumbnail_loc'
330
+        );
331
+
332
+        foreach ($data['video'] as $key => $video) {
333
+            $videos .= sprintf('<video:%1$s>%2$s</video:%1$s>', (isset($builder[$key]) ? $builder[$key] : $key), $video);
334
+        }
335
+
336
+        return sprintf("\t".'<url><loc>%s</loc><video:video>%s</video:video></url>'."\n", $data['url'], $videos);
337
+    }
338
+
339
+    /**
340
+     * Generate additional header with namespace adapted to the content
341
+     *
342
+     * @return string
343
+     */
344
+    protected function getHeaderByFlag()
345
+    {
346
+        $namespaces = array(
347
+            'video' => 'xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"',
348
+            'image' => 'xmlns:image="http://www.google.com/schemas/sitemap-image/1.1"'
349
+        );
350
+
351
+        $result = '';
352
+        foreach ($this->headers as $flag) {
353
+            $result .= ' ' . $namespaces[$flag];
354
+        }
355
+
356
+        return $result;
357
+    }
358
+
359
+    /**
360
+     * Close the sitemap part
361
+     */
362
+    protected function closeSitemap()
363
+    {
364
+        fwrite($this->buffer, '</urlset>');
365
+        fclose($this->buffer);
366
+    }
367
+}

+ 32 - 0
vendor/sonata-project/exporter/lib/Exporter/Writer/WriterInterface.php Vedi File

@@ -0,0 +1,32 @@
1
+<?php
2
+
3
+/*
4
+ * This file is part of the Sonata package.
5
+ *
6
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
7
+ *
8
+ * For the full copyright and license information, please view the LICENSE
9
+ * file that was distributed with this source code.
10
+ */
11
+
12
+namespace Exporter\Writer;
13
+
14
+interface WriterInterface
15
+{
16
+    /**
17
+     * @return void
18
+     */
19
+    function open();
20
+
21
+    /**
22
+     * @param array $data
23
+     *
24
+     * @return void
25
+     */
26
+    function write(array $data);
27
+
28
+    /**
29
+     * @return void
30
+     */
31
+    function close();
32
+}

+ 97 - 0
vendor/sonata-project/exporter/lib/Exporter/Writer/XlsWriter.php Vedi File

@@ -0,0 +1,97 @@
1
+<?php
2
+
3
+/*
4
+ * This file is part of the Sonata package.
5
+ *
6
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
7
+ *
8
+ * For the full copyright and license information, please view the LICENSE
9
+ * file that was distributed with this source code.
10
+ */
11
+
12
+namespace Exporter\Writer;
13
+
14
+use Exporter\Exception\InvalidDataFormatException;
15
+
16
+class XlsWriter implements WriterInterface
17
+{
18
+    protected $filename;
19
+
20
+    protected $file;
21
+
22
+    protected $showHeaders;
23
+
24
+    protected $position;
25
+
26
+    /**
27
+     * @throws \RuntimeException
28
+     *
29
+     * @param      $filename
30
+     * @param bool $showHeaders
31
+     */
32
+    public function __construct($filename, $showHeaders = true)
33
+    {
34
+        $this->filename    = $filename;
35
+        $this->showHeaders = $showHeaders;
36
+        $this->position    = 0;
37
+
38
+        if (is_file($filename)) {
39
+            throw new \RuntimeException(sprintf('The file %s already exist', $filename));
40
+        }
41
+    }
42
+
43
+    /**
44
+     * {@inheritdoc}
45
+     */
46
+    public function open()
47
+    {
48
+        $this->file = fopen($this->filename, 'w', false);
49
+        fwrite($this->file, "<html><head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" /><meta name=ProgId content=Excel.Sheet><meta name=Generator content=\"https://github.com/sonata-project/exporter\"></head><body><table>");
50
+    }
51
+
52
+    /**
53
+     * {@inheritdoc}
54
+     */
55
+    public function close()
56
+    {
57
+        fwrite($this->file, "</table></body></html>");
58
+        fclose($this->file);
59
+    }
60
+
61
+    /**
62
+     * {@inheritdoc}
63
+     */
64
+    public function write(array $data)
65
+    {
66
+        $this->init($data);
67
+
68
+        fwrite($this->file, '<tr>');
69
+        foreach ($data as $value) {
70
+            fwrite($this->file, sprintf('<td>%s</td>', $value));
71
+        }
72
+        fwrite($this->file, '</tr>');
73
+
74
+        $this->position++;
75
+    }
76
+
77
+    /**
78
+     * @param $data
79
+     *
80
+     * @return array mixed
81
+     */
82
+    protected function init($data)
83
+    {
84
+        if ($this->position > 0) {
85
+            return;
86
+        }
87
+
88
+        if ($this->showHeaders) {
89
+            fwrite($this->file, '<tr>');
90
+            foreach ($data as $header => $value) {
91
+                fwrite($this->file, sprintf('<th>%s</th>', $header));
92
+            }
93
+            fwrite($this->file, '</tr>');
94
+            $this->position++;
95
+        }
96
+    }
97
+}

+ 96 - 0
vendor/sonata-project/exporter/lib/Exporter/Writer/XmlWriter.php Vedi File

@@ -0,0 +1,96 @@
1
+<?php
2
+
3
+/*
4
+ * This file is part of the Sonata package.
5
+ *
6
+ * (c) Thomas Rabaix <thomas.rabaix@sonata-project.org>
7
+ *
8
+ * For the full copyright and license information, please view the LICENSE
9
+ * file that was distributed with this source code.
10
+ */
11
+
12
+namespace Exporter\Writer;
13
+
14
+use Exporter\Exception\InvalidDataFormatException;
15
+use \SimpleXMLElement as SimpleXMLElement;
16
+
17
+class XmlWriter implements WriterInterface
18
+{
19
+    protected $filename;
20
+
21
+    protected $file;
22
+
23
+    protected $position;
24
+
25
+    protected $mainElement;
26
+
27
+    protected $childElement;
28
+
29
+    /**
30
+     * @param string $filename
31
+     * @param string $mainElement
32
+     * @param string $childElement
33
+     */
34
+    public function __construct($filename, $mainElement = 'datas', $childElement = 'data')
35
+    {
36
+        $this->filename     = $filename;
37
+        $this->position     = 0;
38
+        $this->mainElement  = $mainElement;
39
+        $this->childElement = $childElement;
40
+
41
+        if (is_file($filename)) {
42
+            throw new \RuntimeException(sprintf('The file %s already exist', $filename));
43
+        }
44
+    }
45
+
46
+    /**
47
+     * {@inheritdoc}
48
+     */
49
+    public function open()
50
+    {
51
+        $this->file = fopen($this->filename, 'w', false);
52
+
53
+        fwrite($this->file, sprintf("<?xml version=\"1.0\" ?>\n<%s>\n", $this->mainElement));
54
+    }
55
+
56
+    /**
57
+     * {@inheritdoc}
58
+     */
59
+    public function close()
60
+    {
61
+        fwrite($this->file, sprintf("</%s>", $this->mainElement));
62
+
63
+        fclose($this->file);
64
+    }
65
+
66
+    /**
67
+     * {@inheritdoc}
68
+     */
69
+    public function write(array $data)
70
+    {
71
+        fwrite($this->file, sprintf("<%s>\n", $this->childElement));
72
+
73
+        foreach ($data as $k => $v) {
74
+            $this->generateNode($k, $v);
75
+        }
76
+
77
+        fwrite($this->file, sprintf("</%s>\n", $this->childElement));
78
+    }
79
+
80
+    /**
81
+     * @param string $name
82
+     * @param string $value
83
+     *
84
+     * @return void
85
+     */
86
+    protected function generateNode($name, $value)
87
+    {
88
+        if (is_array($value)) {
89
+            throw new \RuntimeException('Not implemented');
90
+        } else if (is_scalar($value) || is_null($value)) {
91
+            fwrite($this->file, sprintf("<%s><![CDATA[%s]]></%s>\n", $name, $value, $name));
92
+        } else {
93
+            throw new InvalidDataFormatException('Invalid data');
94
+        }
95
+    }
96
+}

+ 15 - 0
vendor/sonata-project/exporter/phpunit.xml.dist Vedi File

@@ -0,0 +1,15 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+
3
+<phpunit bootstrap="./test/bootstrap.php" colors="true">
4
+    <testsuites>
5
+        <testsuite name="Exporter Test Suite">
6
+            <directory suffix="Test.php">./test/Exporter/</directory>
7
+        </testsuite>
8
+    </testsuites>
9
+
10
+    <filter>
11
+        <whitelist>
12
+            <directory suffix=".php">./lib/Exporter/</directory>
13
+        </whitelist>
14
+    </filter>
15
+</phpunit>

+ 20 - 0
vendor/sonata-project/exporter/test/Exporter/Test/HandlerTest.php Vedi File

@@ -0,0 +1,20 @@
1
+<?php
2
+
3
+namespace Exporter\Test;
4
+
5
+use Exporter\Handler;
6
+
7
+class HandlerTest extends \PHPUnit_Framework_TestCase
8
+{
9
+
10
+    public function testHandler()
11
+    {
12
+        $source = $this->getMock('Exporter\Source\SourceIteratorInterface');
13
+        $writer = $this->getMock('Exporter\Writer\WriterInterface');
14
+        $writer->expects($this->once())->method('open');
15
+        $writer->expects($this->once())->method('close');
16
+
17
+        $exporter = new Handler($source, $writer);
18
+        $exporter->export();
19
+    }
20
+}

+ 26 - 0
vendor/sonata-project/exporter/test/Exporter/Test/Source/ArraySourceIteratorTest.php Vedi File

@@ -0,0 +1,26 @@
1
+<?php
2
+
3
+namespace Exporter\Test\Source;
4
+
5
+use Exporter\Source\ArraySourceIterator;
6
+
7
+class ArraySourceIteratorTest extends \PHPUnit_Framework_TestCase
8
+{
9
+
10
+    public function testHandler()
11
+    {
12
+        $data = array(
13
+            array('john 1', 'doe', '1'),
14
+            array('john 2', 'doe', '1'),
15
+            array('john 3', 'doe', '1'),
16
+            array('john 4', 'doe', '1'),
17
+        );
18
+
19
+        $iterator = new ArraySourceIterator($data);
20
+
21
+        foreach ($iterator as $value) {
22
+            $this->assertTrue(is_array($value));
23
+            $this->assertEquals(3, count($value));
24
+        }
25
+    }
26
+}

+ 20 - 0
vendor/sonata-project/exporter/test/Exporter/Test/Source/ChainSourceIteratorTest.php Vedi File

@@ -0,0 +1,20 @@
1
+<?php
2
+
3
+namespace Exporter\Test\Source;
4
+
5
+use Exporter\Source\ChainSourceIterator;
6
+
7
+class ChainSourceIteratorTest extends \PHPUnit_Framework_TestCase
8
+{
9
+
10
+    public function testIterator()
11
+    {
12
+        $source = $this->getMock('Exporter\Source\SourceIteratorInterface');
13
+
14
+        $iterator = new ChainSourceIterator(array($source));
15
+
16
+        foreach ($iterator as $data) {
17
+
18
+        }
19
+    }
20
+}

+ 76 - 0
vendor/sonata-project/exporter/test/Exporter/Test/Source/IteratorSourceIteratorTest.php Vedi File

@@ -0,0 +1,76 @@
1
+<?php
2
+
3
+namespace Exporter\Test\Source;
4
+
5
+use Exporter\Source\IteratorSourceIterator;
6
+
7
+class IteratorSourceIteratorTest extends \PHPUnit_Framework_TestCase
8
+{
9
+    /**
10
+     * @var IteratorSourceIterator
11
+     */
12
+    protected $sourceIterator;
13
+    /**
14
+     * @var \Iterator|\PHPUnit_Framework_MockObject_MockObject
15
+     */
16
+    protected $iterator;
17
+
18
+    protected function setUp()
19
+    {
20
+        $this->iterator = $this->getMock('Iterator');
21
+        $this->sourceIterator = new IteratorSourceIterator($this->iterator);
22
+    }
23
+
24
+    public function testGetIterator()
25
+    {
26
+        self::assertSame($this->iterator, $this->sourceIterator->getIterator());
27
+    }
28
+
29
+    public function testCurrent()
30
+    {
31
+        $this->iterator
32
+            ->expects(self::once())
33
+            ->method('current')
34
+            ->will($this->returnValue(array('current')));
35
+
36
+        self::assertEquals(array('current'), $this->sourceIterator->current());
37
+    }
38
+
39
+    public function testNext()
40
+    {
41
+        $this->iterator
42
+            ->expects(self::once())
43
+            ->method('next');
44
+
45
+        $this->sourceIterator->next();
46
+    }
47
+
48
+    public function testKey()
49
+    {
50
+        $this->iterator
51
+            ->expects(self::once())
52
+            ->method('key')
53
+            ->will($this->returnValue('key'));
54
+
55
+        self::assertEquals('key', $this->sourceIterator->key());
56
+    }
57
+
58
+    public function testValid()
59
+    {
60
+        $this->iterator
61
+            ->expects(self::once())
62
+            ->method('valid')
63
+            ->will($this->returnValue(true));
64
+
65
+        self::assertTrue($this->sourceIterator->valid());
66
+    }
67
+
68
+    public function testRewind()
69
+    {
70
+        $this->iterator
71
+            ->expects(self::once())
72
+            ->method('rewind');
73
+
74
+        $this->sourceIterator->rewind();
75
+    }
76
+}

+ 53 - 0
vendor/sonata-project/exporter/test/Exporter/Test/Source/PDOStatementSourceIteratorTest.php Vedi File

@@ -0,0 +1,53 @@
1
+<?php
2
+
3
+namespace Exporter\Test\Source;
4
+
5
+use Exporter\Source\PDOStatementSourceIterator;
6
+
7
+class PDOStatementSourceIteratorTest extends \PHPUnit_Framework_TestCase
8
+{
9
+
10
+    protected $dbh;
11
+
12
+    public function setUp()
13
+    {
14
+        if (is_file('foo.db')) {
15
+            unlink('foo.db');
16
+        }
17
+
18
+        $this->dbh = new \PDO('sqlite:foo.db');
19
+        $this->dbh->exec('CREATE TABLE `user` (`id` int(11), `username` varchar(255) NOT NULL, `email` varchar(255) NOT NULL )');
20
+
21
+        $data = array(
22
+            array(1, 'john', 'john@foo.bar'),
23
+            array(2, 'john 2', 'john@foo.bar'),
24
+            array(3, 'john 3', 'john@foo.bar'),
25
+        );
26
+
27
+        foreach ($data as $user) {
28
+            $query = $this->dbh->prepare('INSERT INTO user (id, username, email) VALUES(?, ?, ?)');
29
+
30
+            $query->execute($user);
31
+        }
32
+    }
33
+
34
+    public function tearDown()
35
+    {
36
+        unlink('foo.db');
37
+    }
38
+
39
+    public function testHandler()
40
+    {
41
+        $stm = $this->dbh->prepare('SELECT id, username, email FROM user');
42
+        $stm->execute();
43
+
44
+        $iterator = new PDOStatementSourceIterator($stm);
45
+
46
+        $data = array();
47
+        foreach ($iterator as $user) {
48
+            $data[] = $user;
49
+        }
50
+
51
+        $this->assertEquals(3, count($data));
52
+    }
53
+}

+ 77 - 0
vendor/sonata-project/exporter/test/Exporter/Test/Writer/CsvWriterTest.php Vedi File

@@ -0,0 +1,77 @@
1
+<?php
2
+
3
+namespace Exporter\Test\Source;
4
+
5
+use Exporter\Writer\CsvWriter;
6
+
7
+class CsvWriterTest extends \PHPUnit_Framework_TestCase
8
+{
9
+    protected $filename;
10
+
11
+    public function setUp()
12
+    {
13
+        $this->filename = 'foobar.csv';
14
+
15
+        if (is_file($this->filename)) {
16
+            unlink($this->filename);
17
+        }
18
+    }
19
+
20
+    /**
21
+     * @expectedException \Exporter\Exception\InvalidDataFormatException
22
+     */
23
+    public function testInvalidDataFormat()
24
+    {
25
+        $writer = new CsvWriter($this->filename, ',', '', "\\", false);
26
+        $writer->open();
27
+
28
+        $writer->write(array('john "2', 'doe', '1'));
29
+    }
30
+
31
+    public function testEnclosureFormating()
32
+    {
33
+        $writer = new CsvWriter($this->filename, ',', '"', "\\", false);
34
+        $writer->open();
35
+
36
+        $writer->write(array(' john , ""2"', 'doe', '1'));
37
+
38
+        $writer->close();
39
+
40
+        $expected = '" john , """"2""",doe,1';
41
+
42
+        $this->assertEquals($expected, trim(file_get_contents($this->filename)));
43
+    }
44
+
45
+    public function testEnclosureFormatingWithExcel()
46
+    {
47
+        $writer = new CsvWriter($this->filename, ',', '"', "", false);
48
+        $writer->open();
49
+
50
+        $writer->write(array('john , ""2"', 'doe ', '1'));
51
+
52
+        $writer->close();
53
+
54
+        $expected = '"john , """"2""","doe ",1';
55
+
56
+        $this->assertEquals($expected, trim(file_get_contents($this->filename)));
57
+    }
58
+
59
+    public function testWithHeaders()
60
+    {
61
+        $writer = new CsvWriter($this->filename, ',', '"', "", true);
62
+        $writer->open();
63
+
64
+        $writer->write(array('name' => 'john , ""2"', 'surname' => 'doe ', 'year' => '2001'));
65
+
66
+        $writer->close();
67
+
68
+        $expected = 'name,surname,year'."\n".'"john , """"2""","doe ",2001';
69
+
70
+        $this->assertEquals($expected, trim(file_get_contents($this->filename)));
71
+    }
72
+
73
+    public function tearDown()
74
+    {
75
+        unlink($this->filename);
76
+    }
77
+}

+ 47 - 0
vendor/sonata-project/exporter/test/Exporter/Test/Writer/JsonWriterTest.php Vedi File

@@ -0,0 +1,47 @@
1
+<?php
2
+
3
+namespace Exporter\Test\Source;
4
+
5
+use Exporter\Writer\JsonWriter;
6
+
7
+class JsonWriterTest extends \PHPUnit_Framework_TestCase
8
+{
9
+    protected $filename;
10
+
11
+    public function setUp()
12
+    {
13
+        $this->filename = 'foobar.json';
14
+
15
+        if (is_file($this->filename)) {
16
+            unlink($this->filename);
17
+        }
18
+    }
19
+
20
+    public function testWrite()
21
+    {
22
+        $writer = new JsonWriter($this->filename, ',', '');
23
+        $writer->open();
24
+
25
+        $writer->write(array('john "2', 'doe', '1'));
26
+        $writer->write(array('john 3', 'doe', '1'));
27
+
28
+        $writer->close();
29
+
30
+        $expected = '[["john \"2","doe","1"],["john 3","doe","1"]]';
31
+        $content = file_get_contents($this->filename);
32
+
33
+        $this->assertEquals($expected, $content);
34
+
35
+        $expected = array(
36
+            array('john "2', 'doe', '1'),
37
+            array('john 3', 'doe', '1')
38
+        );
39
+
40
+        $this->assertEquals($expected, json_decode($content, false));
41
+    }
42
+
43
+    public function tearDown()
44
+    {
45
+        unlink($this->filename);
46
+    }
47
+}

+ 185 - 0
vendor/sonata-project/exporter/test/Exporter/Test/Writer/SitemapWriterTest.php Vedi File

@@ -0,0 +1,185 @@
1
+<?php
2
+
3
+namespace Exporter\Test\Source;
4
+
5
+use Exporter\Writer\SitemapWriter;
6
+use SimpleXMLElement;
7
+
8
+class SitemapWriterTest extends \PHPUnit_Framework_TestCase
9
+{
10
+    protected $folder;
11
+
12
+    public function setUp()
13
+    {
14
+        $this->folder = sys_get_temp_dir().'/sonata_exporter_test';
15
+
16
+        $this->tearDown();
17
+
18
+        mkdir($this->folder);
19
+    }
20
+
21
+    /**
22
+     * @expectedException RuntimeException
23
+     */
24
+    public function testNonExistentFolder()
25
+    {
26
+        $writer = new SitemapWriter('booo');
27
+        $writer->open();
28
+    }
29
+
30
+    public function testSimpleWrite()
31
+    {
32
+        $writer = new SitemapWriter($this->folder);
33
+        $writer->open();
34
+        $writer->write(array(
35
+            'url'     => 'http://sonata-project.org/bundle/',
36
+            'lastmod' => '2012-12-26',
37
+            'change'  => 'daily',
38
+        ));
39
+        $writer->close();
40
+
41
+        $generatedFiles = $this->getFiles();
42
+
43
+        $this->assertEquals(2, count($generatedFiles));
44
+
45
+        // this will throw an exception if the xml is invalid
46
+        new SimpleXMLElement(file_get_contents($generatedFiles[1]));
47
+
48
+        $expected =<<<XML
49
+<?xml version="1.0" encoding="UTF-8"?>
50
+<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
51
+	<url><loc>http://sonata-project.org/bundle/</loc><lastmod>2012-12-26</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url>
52
+</urlset>
53
+XML;
54
+
55
+        $this->assertEquals(trim($expected), file_get_contents($generatedFiles[1]));
56
+    }
57
+
58
+    public function testSimpleWriteAdvanced()
59
+    {
60
+        $writer = new SitemapWriter($this->folder, 'test', array('image'), false);
61
+        $writer->open();
62
+        $writer->write(array(
63
+            'url'     => 'http://sonata-project.org/bundle/',
64
+            'lastmod' => '2012-12-26',
65
+            'change'  => 'daily',
66
+            'type'    => 'default',
67
+        ));
68
+        $writer->write(array(
69
+            'url'     => 'http://sonata-project.org/bundle/',
70
+            'lastmod' => '2012-12-26',
71
+            'change'  => 'weekly',
72
+            'type'    => 'image',
73
+            'images'  => array(
74
+                array(
75
+                    'url'     => 'http://sonata-project.org/uploads/media/default/0001/01/thumb_1_default_small.jpg',
76
+                    'caption' => 'sonata img'
77
+                )
78
+            )
79
+        ));
80
+        $writer->close();
81
+
82
+        $generatedFiles = $this->getFiles();
83
+
84
+        $this->assertEquals(1, count($generatedFiles));
85
+        $this->assertEquals($this->folder . '/sitemap_test_00001.xml', $generatedFiles[0]);
86
+
87
+        SitemapWriter::generateSitemapIndex($this->folder);
88
+
89
+        $generatedFiles = $this->getFiles();
90
+
91
+        $this->assertEquals(2, count($generatedFiles));
92
+
93
+        // this will throw an exception if the xml is invalid
94
+        new SimpleXMLElement(file_get_contents($generatedFiles[1]));
95
+
96
+        $expected =<<<XML
97
+<?xml version="1.0" encoding="UTF-8"?>
98
+<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
99
+	<url><loc>http://sonata-project.org/bundle/</loc><lastmod>2012-12-26</lastmod><changefreq>weekly</changefreq><priority>0.5</priority></url>
100
+	<url><loc>http://sonata-project.org/bundle/</loc><image:image><image:loc>http://sonata-project.org/uploads/media/default/0001/01/thumb_1_default_small.jpg</image:loc><image:caption>sonata img</image:caption></image:image></url>
101
+</urlset>
102
+XML;
103
+
104
+        $this->assertEquals(trim($expected), file_get_contents($generatedFiles[1]));
105
+    }
106
+
107
+    public function testLimitSize()
108
+    {
109
+        $writer = new SitemapWriter($this->folder);
110
+        $writer->open();
111
+
112
+        foreach (range(0, SitemapWriter::LIMIT_SIZE / 8196) as $i) {
113
+            $writer->write(array(
114
+                'url'     => str_repeat('x', 8196),
115
+                'lastmod' => 'now',
116
+                'change'  => 'daily'
117
+            ));
118
+        }
119
+        $writer->close();
120
+
121
+        $generatedFiles = $this->getFiles();
122
+
123
+        $this->assertEquals(3, count($generatedFiles));
124
+
125
+        // this will throw an exception if the xml is invalid
126
+        new SimpleXMLElement(file_get_contents($generatedFiles[1]));
127
+        new SimpleXMLElement(file_get_contents($generatedFiles[2]));
128
+
129
+        $info = stat($generatedFiles[1]);
130
+
131
+        $this->assertLessThan(SitemapWriter::LIMIT_SIZE, $info['size']);
132
+    }
133
+
134
+    public function testLimitUrl()
135
+    {
136
+        $writer = new SitemapWriter($this->folder);
137
+        $writer->open();
138
+
139
+        foreach (range(1, SitemapWriter::LIMIT_URL + 1) as $i) {
140
+            $writer->write(array(
141
+                'url'     => str_repeat('x', 40),
142
+                'lastmod' => 'now',
143
+                'change'  => 'daily'
144
+            ));
145
+        }
146
+        $writer->close();
147
+
148
+        $generatedFiles = $this->getFiles();
149
+
150
+        $this->assertEquals(3, count($generatedFiles));
151
+
152
+        // this will throw an exception if the xml is invalid
153
+        $file1 = new SimpleXMLElement(file_get_contents($generatedFiles[1]));
154
+        $file2 = new SimpleXMLElement(file_get_contents($generatedFiles[2]));
155
+
156
+        $info = stat($generatedFiles[0]);
157
+
158
+        $this->assertLessThan(SitemapWriter::LIMIT_SIZE, $info['size']);
159
+        $this->assertEquals(SitemapWriter::LIMIT_URL, count($file1->children()));
160
+        $this->assertEquals(1, count($file2->children()));
161
+    }
162
+
163
+    /**
164
+     * @return array
165
+     */
166
+    public function getFiles()
167
+    {
168
+        $files = glob($this->folder.'/*.xml');
169
+
170
+        sort($files);
171
+
172
+        return $files;
173
+    }
174
+
175
+    public function tearDown()
176
+    {
177
+        foreach($this->getFiles() as $file) {
178
+            unlink($file);
179
+        }
180
+
181
+        if (is_dir($this->folder)) {
182
+            rmdir($this->folder);
183
+        }
184
+    }
185
+}

+ 50 - 0
vendor/sonata-project/exporter/test/Exporter/Test/Writer/XlsWriterTest.php Vedi File

@@ -0,0 +1,50 @@
1
+<?php
2
+
3
+namespace Exporter\Test\Source;
4
+
5
+use Exporter\Writer\XlsWriter;
6
+
7
+class XlsWriterTest extends \PHPUnit_Framework_TestCase
8
+{
9
+    protected $filename;
10
+
11
+    public function setUp()
12
+    {
13
+        $this->filename = 'foobar.xls';
14
+
15
+        if (is_file($this->filename)) {
16
+            unlink($this->filename);
17
+        }
18
+    }
19
+
20
+    public function testValidDataFormat()
21
+    {
22
+        $writer = new XlsWriter($this->filename, false);
23
+        $writer->open();
24
+
25
+        $writer->write(array('john "2', 'doe', '1'));
26
+        $writer->close();
27
+
28
+        $expected = '<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta name=ProgId content=Excel.Sheet><meta name=Generator content="https://github.com/sonata-project/exporter"></head><body><table><tr><td>john "2</td><td>doe</td><td>1</td></tr></table></body></html>';
29
+
30
+        $this->assertEquals($expected, trim(file_get_contents($this->filename)));
31
+    }
32
+
33
+    public function testWithHeaders()
34
+    {
35
+        $writer = new XlsWriter($this->filename);
36
+        $writer->open();
37
+
38
+        $writer->write(array('firtname' => 'john "2', 'surname' => 'doe', 'year' => '1'));
39
+        $writer->close();
40
+
41
+        $expected = '<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta name=ProgId content=Excel.Sheet><meta name=Generator content="https://github.com/sonata-project/exporter"></head><body><table><tr><th>firtname</th><th>surname</th><th>year</th></tr><tr><td>john "2</td><td>doe</td><td>1</td></tr></table></body></html>';
42
+
43
+        $this->assertEquals($expected, trim(file_get_contents($this->filename)));
44
+    }
45
+
46
+    public function tearDown()
47
+    {
48
+        unlink($this->filename);
49
+    }
50
+}

+ 65 - 0
vendor/sonata-project/exporter/test/Exporter/Test/Writer/XmlWriterTest.php Vedi File

@@ -0,0 +1,65 @@
1
+<?php
2
+
3
+namespace Exporter\Test\Source;
4
+
5
+use Exporter\Writer\XmlWriter;
6
+
7
+class XmlWriterTest extends \PHPUnit_Framework_TestCase
8
+{
9
+    protected $filename;
10
+
11
+    public function setUp()
12
+    {
13
+        $this->filename = 'foobar.xml';
14
+
15
+        if (is_file($this->filename)) {
16
+            unlink($this->filename);
17
+        }
18
+    }
19
+
20
+    /**
21
+     * @expectedException \RuntimeException
22
+     */
23
+    public function testArrayDataFormat()
24
+    {
25
+        $writer = new XmlWriter($this->filename);
26
+        $writer->open();
27
+
28
+        $writer->write(array('firstname' => 'john "2', 'lastname' => 'doe', 'id' => '1', 'tags' => array('foo', 'bar')));
29
+        $writer->close();
30
+    }
31
+
32
+    public function testInvalidDataFormat()
33
+    {
34
+        $writer = new XmlWriter($this->filename);
35
+        $writer->open();
36
+
37
+        $writer->write(array('firstname' => 'john 1', 'lastname' => 'doe', 'id' => '1'));
38
+        $writer->write(array('firstname' => 'john 3', 'lastname' => 'doe', 'id' => '1'));
39
+        $writer->close();
40
+
41
+        $expected =<<<XML
42
+<?xml version="1.0" ?>
43
+<datas>
44
+<data>
45
+<firstname><![CDATA[john 1]]></firstname>
46
+<lastname><![CDATA[doe]]></lastname>
47
+<id><![CDATA[1]]></id>
48
+</data>
49
+<data>
50
+<firstname><![CDATA[john 3]]></firstname>
51
+<lastname><![CDATA[doe]]></lastname>
52
+<id><![CDATA[1]]></id>
53
+</data>
54
+</datas>
55
+XML;
56
+
57
+        $this->assertEquals($expected, file_get_contents($this->filename));
58
+
59
+    }
60
+
61
+    public function tearDown()
62
+    {
63
+        unlink($this->filename);
64
+    }
65
+}

+ 12 - 0
vendor/sonata-project/exporter/test/bootstrap.php Vedi File

@@ -0,0 +1,12 @@
1
+<?php
2
+
3
+spl_autoload_register(function($class)
4
+{
5
+    if (0 === strpos($class, 'Exporter\\')) {
6
+        $file = __DIR__ . '/../lib/' . str_replace('\\', '/', $class) . '.php';
7
+        if (file_exists($file)) {
8
+            require_once $file;
9
+            return true;
10
+        }
11
+    }
12
+});

+ 1 - 0
vendor/sonata-project/jquery-bundle/Sonata/jQueryBundle

@@ -0,0 +1 @@
1
+Subproject commit 5f87a761302e6c78304e071416f75d41eb1fb3c2

+ 1 - 1
vendor/stof/doctrine-extensions-bundle/Stof/DoctrineExtensionsBundle

@@ -1 +1 @@
1
-Subproject commit 6b746653afcc6c1748008f374a18f93e870e85f3
1
+Subproject commit ba84426a47e555fdf346fc9f8434c2a25b3cee9d

+ 0 - 0
vendor/symfony/symfony/.editorconfig Vedi File


+ 0 - 0
vendor/symfony/symfony/.gitignore Vedi File


+ 0 - 0
vendor/symfony/symfony/.travis.yml Vedi File


+ 0 - 0
vendor/symfony/symfony/CHANGELOG-2.0.md Vedi File


+ 0 - 0
vendor/symfony/symfony/CHANGELOG-2.1.md Vedi File


+ 0 - 0
vendor/symfony/symfony/CONTRIBUTING.md Vedi File


+ 0 - 0
vendor/symfony/symfony/CONTRIBUTORS.md Vedi File


+ 0 - 3
vendor/symfony/symfony/README.md Vedi File

@@ -27,9 +27,6 @@ work for you:
27 27
  * before PHP 5.3.8, if you get an error involving annotations, you've hit a
28 28
    known PHP bug (see https://bugs.php.net/bug.php?id=55156).
29 29
 
30
- * PHP 5.3.16 has a major bug in the Reflection subsystem and is not suitable to
31
-   run Symfony2 (https://bugs.php.net/bug.php?id=62715)
32
-
33 30
 Installation
34 31
 ------------
35 32
 

+ 0 - 0
vendor/symfony/symfony/UPGRADE-2.1.md Vedi File


+ 0 - 0
vendor/symfony/symfony/autoload.php.dist Vedi File


+ 0 - 0
vendor/symfony/symfony/composer.json Vedi File


+ 0 - 0
vendor/symfony/symfony/phpunit.xml.dist Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/CHANGELOG.md Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/CacheWarmer/ProxyCacheWarmer.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/ContainerAwareEventManager.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/DataCollector/DoctrineDataCollector.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/DataFixtures/ContainerAwareLoader.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/DependencyInjection/AbstractDoctrineExtension.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/DependencyInjection/CompilerPass/DoctrineValidationPass.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/DependencyInjection/CompilerPass/RegisterEventListenersAndSubscribersPass.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/DependencyInjection/Security/UserProvider/EntityFactory.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/ChoiceList/EntityChoiceList.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/ChoiceList/EntityLoaderInterface.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/ChoiceList/ORMQueryBuilderLoader.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/DataTransformer/CollectionToArrayTransformer.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/DoctrineOrmExtension.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/DoctrineOrmTypeGuesser.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/EventListener/MergeDoctrineCollectionListener.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/Type/DoctrineType.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Form/Type/EntityType.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/HttpFoundation/DbalSessionHandler.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/HttpFoundation/DbalSessionHandlerSchema.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Logger/DbalLogger.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/ManagerRegistry.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/README.md Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/RegistryInterface.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Security/User/EntityUserProvider.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/ContainerAwareEventManagerTest.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/DataCollector/DoctrineDataCollectorTest.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/DataFixtures/ContainerAwareLoaderTest.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/DependencyInjection/CompilerPass/RegisterEventListenersAndSubscribersPassTest.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/DoctrineOrmTestCase.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/Fixtures/AssociationEntity.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/Fixtures/CompositeIdentEntity.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/Fixtures/CompositeStringIdentEntity.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/Fixtures/ContainerAwareFixture.php Vedi File


+ 0 - 0
vendor/symfony/symfony/src/Symfony/Bridge/Doctrine/Tests/Fixtures/DoubleIdentEntity.php Vedi File


Some files were not shown because too many files changed in this diff