Merge pull request #220 from nephila/feature/catch_wizard_registration_errors
Catch wizard registration errors
This commit is contained in:
		
				commit
				
					
						37e6c96d5e
					
				
			
		
					 2 changed files with 14 additions and 5 deletions
				
			
		| 
						 | 
					@ -352,6 +352,10 @@ content types, such as blog posts.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
For each configured Apphook, a content type is added to the wizard.
 | 
					For each configured Apphook, a content type is added to the wizard.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Some issues with multiple registrations raising django CMS ``AlreadyRegisteredException``
 | 
				
			||||||
 | 
					hae been reported; to handle these cases gracefully, the exception is swallowed
 | 
				
			||||||
 | 
					when Django ``DEBUG == True`` avoiding breaking production websites. In these cases they
 | 
				
			||||||
 | 
					wizard may not show up, but the rest will work as intended.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.. _settings:
 | 
					.. _settings:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,13 +2,14 @@
 | 
				
			||||||
from __future__ import absolute_import, print_function, unicode_literals
 | 
					from __future__ import absolute_import, print_function, unicode_literals
 | 
				
			||||||
 | 
					
 | 
				
			||||||
from cms.utils.permissions import get_current_user
 | 
					from cms.utils.permissions import get_current_user
 | 
				
			||||||
 | 
					from django import forms
 | 
				
			||||||
 | 
					from django.conf import settings
 | 
				
			||||||
 | 
					from django.utils.text import slugify
 | 
				
			||||||
 | 
					from django.utils.translation import ugettext_lazy as _
 | 
				
			||||||
 | 
					
 | 
				
			||||||
try:
 | 
					try:
 | 
				
			||||||
    from cms.wizards.wizard_base import Wizard
 | 
					    from cms.wizards.wizard_base import Wizard
 | 
				
			||||||
    from cms.wizards.wizard_pool import wizard_pool
 | 
					    from cms.wizards.wizard_pool import wizard_pool, AlreadyRegisteredException
 | 
				
			||||||
    from django import forms
 | 
					 | 
				
			||||||
    from django.utils.text import slugify
 | 
					 | 
				
			||||||
    from django.utils.translation import ugettext_lazy as _
 | 
					 | 
				
			||||||
    from parler.forms import TranslatableModelForm
 | 
					    from parler.forms import TranslatableModelForm
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    from .cms_appconfig import BlogConfig
 | 
					    from .cms_appconfig import BlogConfig
 | 
				
			||||||
| 
						 | 
					@ -56,7 +57,11 @@ try:
 | 
				
			||||||
            model=Post,
 | 
					            model=Post,
 | 
				
			||||||
            description=_('Create a new {0} in {1}').format(config.object_name, config.app_title),
 | 
					            description=_('Create a new {0} in {1}').format(config.object_name, config.app_title),
 | 
				
			||||||
        )
 | 
					        )
 | 
				
			||||||
 | 
					        try:
 | 
				
			||||||
            wizard_pool.register(post_wizard)
 | 
					            wizard_pool.register(post_wizard)
 | 
				
			||||||
 | 
					        except AlreadyRegisteredException:  # pragma: no cover
 | 
				
			||||||
 | 
					            if settings.DEBUG:
 | 
				
			||||||
 | 
					                raise
 | 
				
			||||||
except ImportError:
 | 
					except ImportError:
 | 
				
			||||||
    # For django CMS version not supporting wizards just ignore this file
 | 
					    # For django CMS version not supporting wizards just ignore this file
 | 
				
			||||||
    pass
 | 
					    pass
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue