Skip to content
This repository was archived by the owner on Sep 16, 2021. It is now read-only.

Commit 053acda

Browse files
New testing folder structure for implementing better kernel, firt points on way to SF4 compatiblility
* Fix menu elements root (#127) Improvements to run the tests use new testing version remove deprecated method DevKit updates DevKit updates DevKit updates DevKit updates DevKit updates move files to new test app structure DevKit updates new test app structure fixes due to StyleCI fix phpcr-odm version make all admin services public make a block admin public too add admin bundles to own bundles.php DevKit updates DevKit updates DevKit updates DevKit updates DevKit updates DevKit updates DevKit updates DevKit updates DevKit updates DevKit updates DevKit updates DevKit updates DevKit updates do not require non existing bundle set anymore remove fos jsrouting-bundle decleration * remove use stmt. * use newer menu-bundle version * use a fork for symfony compat of the ckeditor bundle * fix composer.json * use own branch * avoid private service deprecation by using new compile pass in testing component * fix repository * use other repository url * revert ckeditor change * remove symfony dependency
1 parent 6dc1584 commit 053acda

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

59 files changed

+222
-182
lines changed

.gitignore

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
tests/Resources/app/cache
2-
tests/Resources/app/logs
1+
tests/Fixtures/App/var/cache
2+
tests/Fixtures/App/var/logs
3+
!tests/Fixtures/App/var/.gitempty
34
composer.lock
45
vendor

.travis.yml

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -26,39 +26,33 @@ cache:
2626
- $HOME/.composer/cache/files
2727

2828
env:
29-
matrix: SYMFONY_VERSION=3.4
29+
matrix: SYMFONY_VERSION=4.0.*
3030
global:
31-
- SYMFONY_DEPRECATIONS_HELPER=48
31+
- SYMFONY_DEPRECATIONS_HELPER=0
3232
- SYMFONY_PHPUNIT_DIR=.phpunit SYMFONY_PHPUNIT_REMOVE="symfony/yaml"
33+
- KERNEL_CLASS=Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Tests\Fixtures\App\Kernel
3334
- SYMFONY_PHPUNIT_VERSION=5.7
3435
- TEST_INSTALLATION=false
3536

3637
matrix:
3738
include:
3839
- php: 7.1
39-
env: SYMFONY_VERSION=3.4.*
40+
env: STABILITY=dev SYMFONY_VERSION=4.0.*
4041
- php: 7.1
41-
env: DEPS=dev SYMFONY_VERSION=3.3.*
42-
- php: 7.0
43-
env: COMPOSER_FLAGS="--prefer-lowest" SYMFONY_VERSION=2.8.* SYMFONY_DEPRECATIONS_HELPER=weak
42+
env: STABILITY=dev COMPOSER_FLAGS="--prefer-lowest" SYMFONY_VERSION=2.8.* SYMFONY_DEPRECATIONS_HELPER=weak
4443
- php: 7.1
45-
env: SYMFONY_VERSION=3.1.*
44+
env: STABILITY=dev SYMFONY_VERSION=3.3.*
4645
- php: 7.1
47-
env: SYMFONY_VERSION=3.2.*
46+
env: STABILITY=dev SYMFONY_VERSION=3.4.*
4847
- env: TEST_INSTALLATION=true
49-
5048
fast_finish: true
5149
allow_failures:
52-
- php: 7.1
53-
env: SYMFONY_VERSION=3.4.*
5450
- env: TEST_INSTALLATION=true
5551

56-
5752
before_install:
58-
- if [[ "$TRAVIS_PHP_VERSION" != "hhvm" ]]; then echo "memory_limit = -1" >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini; fi
5953
- phpenv config-rm xdebug.ini || true
6054
- composer self-update
61-
- if [ "$DEPS" = "dev" ]; then perl -pi -e 's/^}$/,"minimum-stability":"dev"}/' composer.json; fi
55+
- if ! [ -z "$STABILITY" ]; then composer config minimum-stability ${STABILITY}; composer config prefer-stable true; fi;
6256
- if [ "$SYMFONY_VERSION" != "" ]; then composer require symfony/symfony:${SYMFONY_VERSION} --no-update; fi
6357
- export BRANCH=$(if [ "$TRAVIS_PULL_REQUEST" == "false" ]; then echo $TRAVIS_BRANCH; else echo $TRAVIS_PULL_REQUEST_BRANCH; fi)
6458

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ ifdef BRANCH
2020
VERSION=dev-${BRANCH}
2121
endif
2222
PACKAGE=symfony-cmf/sonata-phpcr-admin-integration-bundle
23-
23+
export KERNEL_CLASS=Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Tests\Fixtures\App\Kernel
2424
list:
2525
@echo 'test: will run all tests'
2626
@echo 'unit_tests: will run unit tests only'

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ under the [MIT License](LICENSE).
1919

2020
## Requirements
2121

22-
* PHP 7.0 / 7.1
23-
* Symfony 2.8 / 3.1 / 3.2 / 3.3
22+
* PHP 7.1
23+
* Symfony 2.8 / 3.3 / 3.4 / 4.0
2424
* See also the `require` section of [composer.json](composer.json)
2525

2626
## Documentation
@@ -41,7 +41,7 @@ For general support and questions, please use [StackOverflow](http://stackoverfl
4141
## Contributing
4242

4343
Pull requests are welcome. Please see our
44-
[CONTRIBUTING](https://github.com/symfony-cmf/symfony-cmf/blob/master/CONTRIBUTING.md)
44+
[CONTRIBUTING](https://github.com/symfony-cmf/blob/master/CONTRIBUTING.md)
4545
guide.
4646

4747
Unit and/or functional tests exist for this package. See the

composer.json

Lines changed: 35 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,11 @@
22
"name": "symfony-cmf/sonata-phpcr-admin-integration-bundle",
33
"type": "symfony-bundle",
44
"description": "Symfony CMF sonata admin implementations",
5-
"keywords": ["Symfony CMF", "Sonata", "Admin"],
5+
"keywords": [
6+
"Symfony CMF",
7+
"Sonata",
8+
"Admin"
9+
],
610
"homepage": "http://cmf.symfony.com",
711
"license": "MIT",
812
"authors": [
@@ -12,31 +16,32 @@
1216
}
1317
],
1418
"require": {
15-
"php": "^5.6|^7.0",
16-
"symfony/framework-bundle": "^2.8|^3.0",
17-
"sonata-project/doctrine-phpcr-admin-bundle": "^2.0.0-RC4",
19+
"php": "^7.1",
20+
"symfony/framework-bundle": "^2.8 || ^3.3 || ^4.0",
21+
"sonata-project/doctrine-phpcr-admin-bundle": "^2.1",
1822
"sonata-project/admin-bundle": "^3.6.0",
1923
"symfony-cmf/tree-browser-bundle": "^2.0"
2024
},
2125
"require-dev": {
22-
"symfony-cmf/testing": "^2.1@dev",
23-
"symfony-cmf/core-bundle": "^2.0",
24-
"symfony-cmf/routing-bundle": "^2.0",
25-
"symfony-cmf/seo-bundle": "^2.0",
26-
"symfony-cmf/menu-bundle": "^2.0",
27-
"symfony-cmf/block-bundle": "^2.0",
28-
"symfony-cmf/content-bundle": "^2.0",
26+
"symfony-cmf/testing": "^2.1",
27+
"symfony-cmf/core-bundle": "^2.1",
28+
"symfony-cmf/routing-bundle": "^2.1",
29+
"symfony-cmf/seo-bundle": "^2.1",
30+
"symfony-cmf/menu-bundle": "^2.2",
31+
"symfony-cmf/block-bundle": "^2.1",
32+
"symfony-cmf/content-bundle": "^2.1",
2933
"doctrine/orm": "^2.4",
30-
"doctrine/phpcr-odm": "^2.0",
34+
"doctrine/phpcr-odm": "^1.4|^2.0",
3135
"doctrine/doctrine-bundle": "^1.3",
32-
"symfony/phpunit-bridge": "^3.2",
33-
"matthiasnoback/symfony-dependency-injection-test": "~0.6",
34-
"matthiasnoback/symfony-config-test": "^1.3.1",
36+
"symfony/phpunit-bridge": "^3.3 || ^4.0",
37+
"matthiasnoback/symfony-dependency-injection-test": "^1.1",
38+
"matthiasnoback/symfony-config-test": "^2.1",
3539
"burgov/key-value-form-bundle": "^1.0",
36-
"egeloen/ckeditor-bundle": "^4.0"
40+
"egeloen/ckeditor-bundle": "^4.0",
41+
"symfony/asset": "^2.8 || ^3.3 || ^4.0",
42+
"symfony/browser-kit": "^2.8 || ^3.3 || ^4.0",
43+
"symfony/css-selector": "^2.8 || ^3.3 || ^4.0"
3744
},
38-
"minimum-stability": "dev",
39-
"prefer-stable": true,
4045
"suggest": {
4146
"symfony-cmf/routing-bundle": "To make use of the alternate locale provider.",
4247
"doctrine/phpcr-bundle": "To persist the metadata in PHPCR ODM documents",
@@ -46,13 +51,23 @@
4651
},
4752
"autoload": {
4853
"psr-4": {
49-
"Symfony\\Cmf\\Bundle\\SonataPhpcrAdminIntegrationBundle\\": "src/",
54+
"Symfony\\Cmf\\Bundle\\SonataPhpcrAdminIntegrationBundle\\": "src/"
55+
}
56+
},
57+
"autoload-dev": {
58+
"psr-4": {
5059
"Symfony\\Cmf\\Bundle\\SonataPhpcrAdminIntegrationBundle\\Tests\\": "tests/"
5160
}
5261
},
5362
"extra": {
5463
"branch-alias": {
5564
"dev-master": "1.1-dev"
5665
}
57-
}
66+
},
67+
"conflict": {
68+
"sebastian/environment": "<1.3.4",
69+
"sebastian/exporter": "<2.0.0"
70+
},
71+
"minimum-stability": "dev",
72+
"prefer-stable": true
5873
}

src/Description/SonataEnhancer.php

Lines changed: 12 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,14 @@ class SonataEnhancer implements DescriptionEnhancerInterface
4141

4242
private $adminMap = [];
4343

44+
private static $linkKeyMapping = [
45+
'list' => Descriptor::LINK_LIST_HTML,
46+
'create' => Descriptor::LINK_CREATE_HTML,
47+
'edit' => Descriptor::LINK_EDIT_HTML,
48+
'delete' => Descriptor::LINK_REMOVE_HTML,
49+
'show' => Descriptor::LINK_SHOW_HTML,
50+
];
51+
4452
/**
4553
* @param Pool $pool
4654
* @param UrlGeneratorInterface $urlGenerator
@@ -62,8 +70,6 @@ public function enhance(Description $description)
6270
$class = ClassUtils::getClass($object);
6371
$admin = $this->getAdminByClass($class);
6472

65-
$links = [];
66-
6773
$routeCollection = $admin->getRoutes();
6874

6975
foreach ($routeCollection->getElements() as $code => $route) {
@@ -72,34 +78,10 @@ public function enhance(Description $description)
7278
$admin->getIdParameter() => $admin->getUrlsafeIdentifier($object),
7379
], true);
7480

75-
$routeRole = substr($code, strlen($admin->getCode()) + 1);
76-
77-
$links[$routeRole] = $url;
78-
}
79-
80-
if (isset($links['list'])) {
81-
$description->set('list', $links['list']);
82-
unset($links['list']);
83-
}
84-
85-
if (isset($links['create'])) {
86-
$description->set(Descriptor::LINK_CREATE_HTML, $links['create']);
87-
unset($links['create']);
88-
}
89-
90-
if (isset($links['edit'])) {
91-
$description->set(Descriptor::LINK_EDIT_HTML, $links['edit']);
92-
unset($links['edit']);
93-
}
94-
95-
if (isset($links['delete'])) {
96-
$description->set(Descriptor::LINK_REMOVE_HTML, $links['delete']);
97-
unset($links['delete']);
98-
}
99-
100-
if (isset($links['show'])) {
101-
$description->set(Descriptor::LINK_SHOW_HTML, $links['show']);
102-
unset($links['show']);
81+
$linkKey = trim($code, '.)');
82+
if (array_key_exists($linkKey, self::$linkKeyMapping)) {
83+
$description->set(self::$linkKeyMapping[$linkKey], $url);
84+
}
10385
}
10486

10587
$description->set(Descriptor::PAYLOAD_TITLE, $admin->toString($object));

src/Resources/config/block-menu.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@
88
<service
99
id="cmf_sonata_phpcr_admin_integration.block.menu_admin"
1010
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Block\MenuBlockAdmin"
11-
parent="cmf_sonata_phpcr_admin_integration.abstract_admin">
11+
parent="cmf_sonata_phpcr_admin_integration.abstract_admin"
12+
public="true">
1213
<tag
1314
name="sonata.admin"
1415
manager_type="doctrine_phpcr"

src/Resources/config/block.xml

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@
88

99
<service
1010
id="cmf_sonata_phpcr_admin_integration.block.admin_extension.cache"
11-
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Block\Extension\BlockCacheExtension">
11+
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Block\Extension\BlockCacheExtension"
12+
public="true">
1213
<argument>%cmf_sonata_phpcr_admin_integration.block.extension.block_cache.form_group%</argument>
1314
<argument>%cmf_sonata_phpcr_admin_integration.block.extension.block_cache.form_tab%</argument>
1415
<tag name="sonata.admin.extension"/>
@@ -17,7 +18,8 @@
1718
<service
1819
id="cmf_sonata_phpcr_admin_integration.block.simple_admin"
1920
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Block\SimpleBlockAdmin"
20-
parent="cmf_sonata_phpcr_admin_integration.abstract_admin">
21+
parent="cmf_sonata_phpcr_admin_integration.abstract_admin"
22+
public="true">
2123
<tag
2224
name="sonata.admin"
2325
manager_type="doctrine_phpcr"
@@ -41,7 +43,8 @@
4143
<service
4244
id="cmf_sonata_phpcr_admin_integration.block.action_admin"
4345
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Block\ActionBlockAdmin"
44-
parent="cmf_sonata_phpcr_admin_integration.abstract_admin">
46+
parent="cmf_sonata_phpcr_admin_integration.abstract_admin"
47+
public="true">
4548
<tag
4649
name="sonata.admin"
4750
manager_type="doctrine_phpcr"
@@ -65,7 +68,8 @@
6568
<service
6669
id="cmf_sonata_phpcr_admin_integration.block.container_admin"
6770
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Block\ContainerBlockAdmin"
68-
parent="cmf_sonata_phpcr_admin_integration.abstract_admin">
71+
parent="cmf_sonata_phpcr_admin_integration.abstract_admin"
72+
public="true">
6973
<tag
7074
name="sonata.admin"
7175
manager_type="doctrine_phpcr"
@@ -89,7 +93,8 @@
8993
<service
9094
id="cmf_sonata_phpcr_admin_integration.block.reference_admin"
9195
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Block\ReferenceBlockAdmin"
92-
parent="cmf_sonata_phpcr_admin_integration.abstract_admin">
96+
parent="cmf_sonata_phpcr_admin_integration.abstract_admin"
97+
public="true">
9398
<tag
9499
name="sonata.admin"
95100
manager_type="doctrine_phpcr"
@@ -113,7 +118,8 @@
113118
<service
114119
id="cmf_sonata_phpcr_admin_integration.block.string_admin"
115120
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Block\StringBlockAdmin"
116-
parent="cmf_sonata_phpcr_admin_integration.abstract_admin">
121+
parent="cmf_sonata_phpcr_admin_integration.abstract_admin"
122+
public="true">
117123
<tag
118124
name="sonata.admin"
119125
manager_type="doctrine_phpcr"
@@ -137,7 +143,8 @@
137143
<service
138144
id="cmf_sonata_phpcr_admin_integration.block.slideshow_admin"
139145
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Block\SlideshowBlockAdmin"
140-
parent="cmf_sonata_phpcr_admin_integration.abstract_admin">
146+
parent="cmf_sonata_phpcr_admin_integration.abstract_admin"
147+
public="true">
141148
<tag
142149
name="sonata.admin"
143150
manager_type="doctrine_phpcr"

src/Resources/config/content.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@
77
<service
88
id="cmf_sonata_phpcr_admin_integration.content.admin"
99
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Content\StaticContentAdmin"
10-
parent="cmf_sonata_phpcr_admin_integration.abstract_admin">
10+
parent="cmf_sonata_phpcr_admin_integration.abstract_admin"
11+
public="true">
1112
<tag
1213
name="sonata.admin"
1314
manager_type="doctrine_phpcr"

src/Resources/config/core.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,14 @@
99
<service
1010
id="cmf_sonata_phpcr_admin_integration.core.extension.child"
1111
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Core\Extension\ChildExtension"
12-
public="false">
12+
public="true">
1313
<tag name="sonata.admin.extension"/>
1414
</service>
1515

1616
<service
1717
id="cmf_sonata_phpcr_admin_integration.core.extension.publish_workflow.publishable"
1818
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Core\Extension\PublishableExtension"
19-
public="false">
19+
public="true">
2020
<argument>%cmf_sonata_phpcr_admin_integration.core.extension.publishable.form_group%</argument>
2121
<argument>%cmf_sonata_phpcr_admin_integration.core.extension.publishable.form_tab%</argument>
2222
<tag name="sonata.admin.extension"/>
@@ -25,7 +25,7 @@
2525
<service
2626
id="cmf_sonata_phpcr_admin_integration.core.extension.publish_workflow.time_period"
2727
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Core\Extension\PublishTimePeriodExtension"
28-
public="false">
28+
public="true">
2929
<argument>%cmf_sonata_phpcr_admin_integration.core.extension.publish_time.form_group%</argument>
3030
<argument>%cmf_sonata_phpcr_admin_integration.core.extension.publish_time.form_tab%</argument>
3131
<tag name="sonata.admin.extension"/>

src/Resources/config/menu.xml

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@
99
<service
1010
id="cmf_sonata_phpcr_admin_integration.menu.menu_admin"
1111
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Menu\MenuAdmin"
12-
parent="cmf_sonata_phpcr_admin_integration.abstract_admin">
12+
parent="cmf_sonata_phpcr_admin_integration.abstract_admin"
13+
public="true">
1314
<tag
1415
name="sonata.admin"
1516
manager_type="doctrine_phpcr"
@@ -39,7 +40,8 @@
3940
<service
4041
id="cmf_sonata_phpcr_admin_integration.menu.node_admin"
4142
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Menu\MenuNodeAdmin"
42-
parent="cmf_sonata_phpcr_admin_integration.abstract_admin">
43+
parent="cmf_sonata_phpcr_admin_integration.abstract_admin"
44+
public="true">
4345
<tag
4446
name="sonata.admin"
4547
manager_type="doctrine_phpcr"
@@ -72,15 +74,17 @@
7274

7375
<service
7476
id="cmf_sonata_phpcr_admin_integration.menu.extension.menu_node_referrers"
75-
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Menu\Extension\MenuNodeReferrersExtension">
77+
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Menu\Extension\MenuNodeReferrersExtension"
78+
public="true">
7679
<argument>%cmf_sonata_phpcr_admin_integration.menu.extension.menu_node_referrers.form_group%</argument>
7780
<argument>%cmf_sonata_phpcr_admin_integration.menu.extension.menu_node_referrers.form_tab%</argument>
7881
<tag name="sonata.admin.extension"/>
7982
</service>
8083

8184
<service
8285
id="cmf_sonata_phpcr_admin_integration.menu.extension.menu_options"
83-
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Menu\Extension\MenuOptionsExtension">
86+
class="Symfony\Cmf\Bundle\SonataPhpcrAdminIntegrationBundle\Admin\Menu\Extension\MenuOptionsExtension"
87+
public="true">
8488
<argument>%cmf_sonata_phpcr_admin_integration.menu.extension.menu_options.form_group%</argument>
8589
<argument>%cmf_sonata_phpcr_admin_integration.menu.extension.menu_options.form_tab%</argument>
8690
<argument>%cmf_sonata_phpcr_admin_integration.menu.extension.menu_options.advanced%</argument>

0 commit comments

Comments
 (0)