src/pyams_thesaurus/zmi/term.py
changeset 5 86ddb444d0a9
parent 0 47700a43ef3f
child 19 6cb6acc05cc3
--- a/src/pyams_thesaurus/zmi/term.py	Wed May 20 12:37:53 2015 +0200
+++ b/src/pyams_thesaurus/zmi/term.py	Wed Jun 17 10:01:07 2015 +0200
@@ -16,7 +16,7 @@
 # import standard library
 
 # import interfaces
-from pyams_skin.interfaces.viewlet import IToolbarViewletManager
+from pyams_skin.interfaces.viewlet import IWidgetTitleViewletManager
 from pyams_skin.layer import IPyAMSLayer
 from pyams_thesaurus.interfaces.term import IThesaurusTerm
 from pyams_thesaurus.interfaces.thesaurus import IThesaurus
@@ -42,7 +42,7 @@
 
 
 @viewlet_config(name='thesaurus.term.adding', context=IThesaurus, view=ThesaurusTermsView,
-                layer=IAdminLayer, manager=IToolbarViewletManager, permission='thesaurus.manage')
+                layer=IAdminLayer, manager=IWidgetTitleViewletManager, permission='thesaurus.manage')
 class ThesaurusTermAddAction(ToolbarAction):
     """Thesaurus term add action"""
 
@@ -76,7 +76,7 @@
             self.widgets[name].thesaurus_name = self.context.name
 
     def create(self, data):
-        return ThesaurusTerm()
+        return ThesaurusTerm(data.get('label'))
 
     def update_content(self, content, data):
         super(ThesaurusTermAddForm, self).update_content(content, data)
@@ -111,11 +111,12 @@
     """Thesaurus term add form, AJAX view"""
 
     def get_ajax_output(self, changes):
-        if changes.generic is not None:
+        if changes.generic is None:
             return super(ThesaurusTermAJAXAddForm, self).get_ajax_output(changes)
         else:
             label = changes.label.replace("'", "'")
-            return {'callback': 'PyAMS_thesaurus.tree.findTerm',
+            return {'status': 'callback',
+                    'callback': 'PyAMS_thesaurus.tree.findTerm',
                     'options': {'term': label}}