diff --git a/cms/contents/article/admin/list.html.twig b/cms/contents/article/admin/list.html.twig
index 8f655e4..99053af 100644
--- a/cms/contents/article/admin/list.html.twig
+++ b/cms/contents/article/admin/list.html.twig
@@ -17,8 +17,11 @@
{{ ('admin_'~content_type~'.list.actions.create.link')|trans }}
{% endif %}
- {% if not content_config.admin.import.is_granted or is_granted(content_config.admin.import.is_granted) %}
- {{ ('admin_'~content_type~'.list.actions.import.link')|trans }}
+ {% if route_defined('sfs_cms_admin_content_'~content_type~'_import') %}
+ {# TODO make this configurable and extensible for plugins #}
+ {% if not content_config.admin.import.is_granted or is_granted(content_config.admin.import.is_granted) %}
+ {{ ('admin_'~content_type~'.list.actions.import.link')|trans }}
+ {% endif %}
{% endif %}
diff --git a/composer.json b/composer.json
index 4586dbe..e09ab4d 100644
--- a/composer.json
+++ b/composer.json
@@ -11,6 +11,7 @@
"symfony/translation": "^6.4 || ^7.4 || ^8.0"
},
"require-dev": {
+ "softspring/cms-data-plugin": "^6.0@dev",
"ergebnis/composer-normalize": "^2.50",
"friendsofphp/php-cs-fixer": "^3.94",
"guzzlehttp/guzzle": "^7.8.2",
diff --git a/config/services/data_plugin_services.yaml b/config/services/data_plugin_services.yaml
new file mode 100644
index 0000000..27c8592
--- /dev/null
+++ b/config/services/data_plugin_services.yaml
@@ -0,0 +1,8 @@
+services:
+ _defaults:
+ autowire: true
+ autoconfigure: true
+ public: false
+
+ Softspring\CmsBlogPlugin\Data\:
+ resource: '../../src/Data/*'
diff --git a/config/services/services.yaml b/config/services/services.yaml
index a7f9c85..ffdc333 100644
--- a/config/services/services.yaml
+++ b/config/services/services.yaml
@@ -16,9 +16,6 @@ services:
resource: '../../src/Form/*'
tags: ['form.type']
- Softspring\CmsBlogPlugin\Data\:
- resource: '../../src/Data/*'
-
Softspring\CmsBlogPlugin\Manager\:
resource: '../../src/Manager/*'
@@ -26,4 +23,4 @@ services:
arguments:
$superclassList: '%sfs_cms_blog.convert_superclass_list%'
tags:
- - { name: doctrine.event_listener, event: loadClassMetadata, priority: 500 }
\ No newline at end of file
+ - { name: doctrine.event_listener, event: loadClassMetadata, priority: 500 }
diff --git a/src/Data/EntityTransformer/ArticleEntityTransformer.php b/src/Data/EntityTransformer/ArticleEntityTransformer.php
index 5cd7e56..98d97dd 100644
--- a/src/Data/EntityTransformer/ArticleEntityTransformer.php
+++ b/src/Data/EntityTransformer/ArticleEntityTransformer.php
@@ -4,9 +4,9 @@
use DateTime;
use Softspring\CmsBlogPlugin\Model\ArticleContentInterface;
-use Softspring\CmsBundle\Data\EntityTransformer\ContentEntityTransformer;
-use Softspring\CmsBundle\Data\Exception\InvalidElementException;
-use Softspring\CmsBundle\Data\ReferencesRepository;
+use Softspring\CmsDataPlugin\Data\EntityTransformer\ContentEntityTransformer;
+use Softspring\CmsDataPlugin\Data\Exception\InvalidElementException;
+use Softspring\CmsDataPlugin\Data\ReferencesRepository;
use Softspring\CmsBundle\Model\ContentInterface;
class ArticleEntityTransformer extends ContentEntityTransformer
diff --git a/src/DependencyInjection/SfsCmsBlogExtension.php b/src/DependencyInjection/SfsCmsBlogExtension.php
index fad1373..4fa20e5 100644
--- a/src/DependencyInjection/SfsCmsBlogExtension.php
+++ b/src/DependencyInjection/SfsCmsBlogExtension.php
@@ -7,6 +7,7 @@
use Scienta\DoctrineJsonFunctions\Query\AST\Functions\Mysql\JsonSearch;
use Softspring\CmsBlogPlugin\Entity\ArticleContent;
use Softspring\CmsBlogPlugin\Model\ArticleContentInterface;
+use Softspring\CmsDataPlugin\SfsCmsDataPlugin;
use Symfony\Component\Config\Definition\Processor;
use Symfony\Component\Config\FileLocator;
use Symfony\Component\DependencyInjection\ContainerBuilder;
@@ -31,6 +32,10 @@ public function load(array $configs, ContainerBuilder $container): void
// load services
$loader->load('services.yaml');
+
+ if (class_exists(SfsCmsDataPlugin::class)) {
+ $loader->load('data_plugin_services.yaml');
+ }
}
protected function processDataClasses(ContainerBuilder $container): void