src/pyams_content/shared/blog/zmi/manager.py
changeset 297 4f385d0a5ce7
parent 292 c8704817db4a
child 334 6b2f75e60076
--- a/src/pyams_content/shared/blog/zmi/manager.py	Tue Nov 28 17:24:57 2017 +0100
+++ b/src/pyams_content/shared/blog/zmi/manager.py	Tue Nov 28 17:25:50 2017 +0100
@@ -30,7 +30,6 @@
 from z3c.form.interfaces import IDataExtractedEvent
 
 # import packages
-from pyams_content.shared.blog.manager import BlogManager
 from pyams_form.form import AJAXAddForm, AJAXEditForm
 from pyams_pagelet.pagelet import pagelet_config
 from pyams_skin.table import DefaultElementEditorAdapter
@@ -43,6 +42,7 @@
 from pyams_viewlet.viewlet import viewlet_config
 from pyams_zmi.form import AdminDialogAddForm, AdminDialogEditForm
 from pyramid.events import subscriber
+from pyramid.path import DottedNameResolver
 from pyramid.view import view_config
 from z3c.form import field
 from zope.interface import Invalid
@@ -90,7 +90,11 @@
     edit_permission = None
 
     def create(self, data):
-        return BlogManager()
+        factory = self.request.registry.settings.get('pyams_content.config.blog_factory')
+        if factory is None:
+            factory = 'pyams_content.shared.blog.manager.BlogManager'
+        factory = DottedNameResolver().resolve(factory)
+        return factory()
 
     def add(self, object):
         short_name = II18n(object).query_attribute('short_name', request=self.request)