Test coverage for collective.disqus.browser.configlet
1: from plone.app.controlpanel.form import ControlPanelForm
1: from zope.component import adapts
1: from zope.schema import TextLine, Bool
1: from zope.formlib.form import Fields
1: from zope.i18nmessageid import MessageFactory
1: from zope.interface import Interface, implements
1: from Products.CMFDefault.formlib.schema import ProxyFieldProperty
1: from Products.CMFDefault.formlib.schema import SchemaAdapterBase
1: from Products.CMFPlone.interfaces import IPloneSiteRoot
1: _ = MessageFactory('collective.disqus')
2: class IDisqusSettings(Interface):
"""
Defines configurable options of collective.disqus.
1: """
1: forum_id = TextLine(
1: title=_(u'Website short name'),
1: description=_(u'This short name is used to uniquely identify your '
u'website on DISQUS.'),
1: required=True)
1: dev_mode = Bool(
1: title=_(u'Developer mode'),
1: description=_(u'Enables developer mode, which allows testing to be '
u'done on local, protected, or otherwise inaccessible '
u'servers. '),
1: required=True)
2: class DisqusControlPanel(ControlPanelForm):
"""
Configlet for collective.disqus.
1: """
1: form_fields = Fields(IDisqusSettings)
1: label = _(u"DISQUS comment system")
1: description = _(u'Allow to configure options required to integrate DISQUS '
u'comment system with Plone.')
2: class DisqusControlPanelAdapter(SchemaAdapterBase):
"""
Store values of IDisqusConfiguration.
1: """
1: adapts(IPloneSiteRoot)
1: implements(IDisqusSettings)
1: forum_id = ProxyFieldProperty(IDisqusSettings['forum_id'])
1: dev_mode = ProxyFieldProperty(IDisqusSettings['dev_mode'])