src/pyams_content/shared/site/zmi/manager.py
changeset 591 b694d5667d17
parent 579 5e4875a9f692
child 714 dd257ef7fcaa
--- a/src/pyams_content/shared/site/zmi/manager.py	Wed Jun 06 13:32:14 2018 +0200
+++ b/src/pyams_content/shared/site/zmi/manager.py	Fri Jun 08 10:33:23 2018 +0200
@@ -31,7 +31,7 @@
 # import packages
 from pyams_content.shared.site import WfTopic
 from pyams_content.shared.site.manager import SiteManager
-from pyams_form.form import AJAXAddForm
+from pyams_form.form import AJAXAddForm, ajax_config
 from pyams_pagelet.pagelet import pagelet_config
 from pyams_skin.table import DefaultElementEditorAdapter
 from pyams_skin.viewlet.breadcrumb import BreadcrumbItem
@@ -44,7 +44,6 @@
 from pyams_zmi.form import AdminDialogAddForm
 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
 
@@ -93,6 +92,8 @@
 
 @pagelet_config(name='add-site-manager.html', context=ISiteRoot, layer=IPyAMSLayer,
                 permission=MANAGE_SITE_ROOT_PERMISSION)
+@ajax_config(name='add-site-manager.json', context=ISiteRoot, layer=IPyAMSLayer,
+             permission=MANAGE_SITE_ROOT_PERMISSION, base=AJAXAddForm)
 class SiteManagerAddForm(AdminDialogAddForm):
     """Site manager add form"""
 
@@ -101,7 +102,6 @@
     icon_css_class = 'fa fa-fw fa-sitemap'
 
     fields = field.Fields(ISiteManager).select('title', 'short_name')
-    ajax_handler = 'add-site-manager.json'
     edit_permission = None
 
     def create(self, data):
@@ -139,12 +139,6 @@
         event.form.widgets.errors += (Invalid(_("A site manager is already registered with this name!!")),)
 
 
-@view_config(name='add-site-manager.json', context=ISiteRoot, request_type=IPyAMSLayer,
-             permission=MANAGE_SITE_ROOT_PERMISSION, renderer='json', xhr=True)
-class SiteManagerAJAXAddForm(AJAXAddForm, SiteManagerAddForm):
-    """Site manager add form, JSOn renderer"""
-
-
 @adapter_config(context=(ISiteManager, IAdminLayer, ISiteTreeTable), provides=ITableElementEditor)
 class SiteManagerTableElementEditor(DefaultElementEditorAdapter):
     """Site tree table element editor"""