source: products/quintagroup.plonecaptchas/trunk/quintagroup/plonecaptchas/setuphandlers.py @ 3457

Last change on this file since 3457 was 3279, checked in by vmaksymiv, 13 years ago

pep8, pyflakes fixes

  • Property svn:eol-style set to native
File size: 1.4 KB
Line 
1import logging
2from zope.component import getSiteManager
3
4logger = logging.getLogger('quintagroup.plonecaptchas')
5
6
7def registerDiscussionLayer(context):
8    """ Register browser layer for extending discussion
9        with quintagroup captcha
10    """
11    from quintagroup.plonecaptchas.interfaces import IQGDiscussionCaptchas
12    from plone.browserlayer.utils import register_layer
13    name = "QGCaptchaDiscussionLayer"
14    site = getSiteManager(context)
15    register_layer(IQGDiscussionCaptchas, name, site_manager=site)
16
17
18def removeBrowserLayers(site):
19    """ Remove browser layers.
20    """
21    from plone.browserlayer.utils import unregister_layer
22    from plone.browserlayer.interfaces import ILocalBrowserLayerType
23
24    layers = ["quintagroup.plonecaptchas", "QGCapchaDiscussionLayer"]
25    site = getSiteManager(site)
26    registeredLayers = [r.name for r in site.registeredUtilities()
27                        if r.provided == ILocalBrowserLayerType]
28    for name in layers:
29        if name in registeredLayers:
30            unregister_layer(name, site_manager=site)
31            logger.log(logging.INFO,
32                       "Unregistered \"%s\" browser layer." % name)
33
34
35def uninstall(context):
36    """ Do customized uninstallation.
37    """
38    if context.readDataFile('qgplonecaptchas_uninstall.txt') is None:
39        return
40    site = context.getSite()
41    removeBrowserLayers(site)
Note: See TracBrowser for help on using the repository browser.