src/pyams_content/component/paragraph/contact.py
changeset 586 28445044f6e3
parent 575 e61e7effa80a
child 1087 978a2b9123b9
equal deleted inserted replaced
585:9fa8e9776bda 586:28445044f6e3
    16 # import standard library
    16 # import standard library
    17 
    17 
    18 # import interfaces
    18 # import interfaces
    19 from pyams_content.component.paragraph.interfaces import IParagraphFactory
    19 from pyams_content.component.paragraph.interfaces import IParagraphFactory
    20 from pyams_content.component.paragraph.interfaces.contact import have_gis, IContactParagraph, CONTACT_PARAGRAPH_TYPE, \
    20 from pyams_content.component.paragraph.interfaces.contact import have_gis, IContactParagraph, CONTACT_PARAGRAPH_TYPE, \
    21     CONTACT_PARAGRAPH_RENDERERS
    21     CONTACT_PARAGRAPH_RENDERERS, CONTACT_PARAGRAPH_NAME
    22 from pyams_content.features.checker.interfaces import IContentChecker, MISSING_VALUE, MISSING_LANG_VALUE
    22 from pyams_content.features.checker.interfaces import IContentChecker, MISSING_VALUE, MISSING_LANG_VALUE
    23 from pyams_file.interfaces import IImage, IResponsiveImage
    23 from pyams_file.interfaces import IImage, IResponsiveImage
    24 from pyams_i18n.interfaces import II18n, II18nManager, INegotiator
    24 from pyams_i18n.interfaces import II18n, II18nManager, INegotiator
    25 
    25 
    26 # import packages
    26 # import packages
    33 from pyams_utils.traversing import get_parent
    33 from pyams_utils.traversing import get_parent
    34 from pyams_utils.vocabulary import vocabulary_config
    34 from pyams_utils.vocabulary import vocabulary_config
    35 from zope.interface import implementer, alsoProvides
    35 from zope.interface import implementer, alsoProvides
    36 from zope.schema.fieldproperty import FieldProperty
    36 from zope.schema.fieldproperty import FieldProperty
    37 
    37 
    38 from pyams_content import _
       
    39 
       
    40 
    38 
    41 @implementer(IContactParagraph)
    39 @implementer(IContactParagraph)
    42 @factory_config(provided=IContactParagraph)
    40 @factory_config(provided=IContactParagraph)
    43 class ContactParagraph(BaseParagraph):
    41 class ContactParagraph(BaseParagraph):
    44     """Contact paragraph"""
    42     """Contact paragraph"""
    45 
    43 
    46     icon_class = 'fa-id-card-o'
    44     icon_class = 'fa-id-card-o'
    47     icon_hint = _("Contact card")
    45     icon_hint = CONTACT_PARAGRAPH_NAME
    48 
    46 
    49     name = FieldProperty(IContactParagraph['name'])
    47     name = FieldProperty(IContactParagraph['name'])
    50     charge = FieldProperty(IContactParagraph['charge'])
    48     charge = FieldProperty(IContactParagraph['charge'])
    51     contact_email = FieldProperty(IContactParagraph['contact_email'])
    49     contact_email = FieldProperty(IContactParagraph['contact_email'])
    52     contact_form = FieldProperty(IContactParagraph['contact_form'])
    50     contact_form = FieldProperty(IContactParagraph['contact_form'])
    71 
    69 
    72 @utility_config(name=CONTACT_PARAGRAPH_TYPE, provides=IParagraphFactory)
    70 @utility_config(name=CONTACT_PARAGRAPH_TYPE, provides=IParagraphFactory)
    73 class ContactParagraphFactory(BaseParagraphFactory):
    71 class ContactParagraphFactory(BaseParagraphFactory):
    74     """Contact paragraph factory"""
    72     """Contact paragraph factory"""
    75 
    73 
    76     name = _("Contact card")
    74     name = CONTACT_PARAGRAPH_NAME
    77     content_type = ContactParagraph
    75     content_type = ContactParagraph
    78     secondary_menu = True
    76     secondary_menu = True
    79 
    77 
    80 
    78 
    81 @adapter_config(context=IContactParagraph, provides=IContentChecker)
    79 @adapter_config(context=IContactParagraph, provides=IContentChecker)