def __call__(self, context):

        terms = [
            SimpleTerm(u"custom_image", title=_(u"Custom image (select one below)")),
            SimpleTerm(u"site_logo", title=_(u"Use site logo")),
        ]
        return SimpleVocabulary(terms)
예제 #2
0
class FbSharingSettingsControlPanelEditForm(controlpanel.RegistryEditForm):
    """Open graph settings form.
    """
    schema = IFbShareSettings
    id = "FbSharingSettingsEditForm"
    label = _(u"Open Graph sharing settings")
    description = _(
        u"help_fbsharing_settings_editform",
        default=u"Manage general site configuration for Open Graph")

    @button.buttonAndHandler(_('Save'), name='save')
    def handleSave(self, action):
        data, errors = self.extractData()
        if errors:
            self.status = self.formErrorsMessage
            return
        self.applyChanges(data)
        IStatusMessage(self.request).addStatusMessage(_(u"Changes saved"),
                                                      "info")
        self.context.REQUEST.RESPONSE.redirect("@@opengraph-sharing-settings")

    @button.buttonAndHandler(_('Cancel'), name='cancel')
    def handleCancel(self, action):
        IStatusMessage(self.request).addStatusMessage(_(u"Edit cancelled"),
                                                      "info")
        self.request.response.redirect(
            "%s/%s" % (self.context.absolute_url(), self.control_panel_view))
예제 #3
0
    def __call__(self, context):

        terms = [
            SimpleTerm(u'custom_image',
                       title=_(u'Custom image (select one below)')),
            SimpleTerm(u'site_logo', title=_(u'Use site logo')),
        ]
        return SimpleVocabulary(terms)
 def handleSave(self, action):
     data, errors = self.extractData()
     if errors:
         self.status = self.formErrorsMessage
         return
     self.applyChanges(data)
     IStatusMessage(self.request).addStatusMessage(_(u"Changes saved"),
                                                   "info")
     self.context.REQUEST.RESPONSE.redirect("@@opengraph-sharing-settings")
예제 #5
0
 def handleSave(self, action):
     data, errors = self.extractData()
     if errors:
         self.status = self.formErrorsMessage
         return
     self.applyChanges(data)
     IStatusMessage(self.request).addStatusMessage(_(u"Changes saved"),
                                                   "info")
     self.context.REQUEST.RESPONSE.redirect("@@opengraph-sharing-settings")
    def __call__(self, context):

        terms = [SimpleTerm(u"", title=_(u"Dont' resize images"))]

        imaging_properties = getattr(getToolByName(context, "portal_properties"), "imaging_properties", None)
        if imaging_properties:
            allowed_sizes = imaging_properties.allowed_sizes
            terms.extend([SimpleTerm(x.split(" ")[0], title=x) for x in allowed_sizes])

        return SimpleVocabulary(terms)
예제 #7
0
    def __call__(self, context):

        terms = [
            SimpleTerm(u'', title=_(u"Dont' resize images")),
        ]

        imaging_properties = getattr(
            getToolByName(context, 'portal_properties'), 'imaging_properties',
            None)
        if imaging_properties:
            allowed_sizes = imaging_properties.allowed_sizes
            terms.extend(
                [SimpleTerm(x.split(' ')[0], title=x) for x in allowed_sizes])

        return SimpleVocabulary(terms)
예제 #8
0
class IFbShareSettings(Interface):
    """
    Settings used in the control panel for Facebook (opengraph) share
    """
    
    image_to_share = schema.Choice(
        title=_(u"Default site image to share"),
        description=_('help_image_to_share',
                      default=u"You can choose to provide a custom image or use the site logo.\n"
                              u"If you choose a custom image without providing it, it will not provide any og:image meta content."),
        required=True,
        default=u'custom_image',
        vocabulary='collective.fbshare.imageChoiceVocabulary',
    )
    
    default_image = schema.Bytes(
            title=_(u"Custom image for Open Graph sharing"),
            description=_('help_default_image',
                          default=u"Images for Facebook must be at least 50px by 50px (though minimum 200px by 200px is preferred) "
                                  u"and have a maximum aspect ratio of 3:1. Supported format are PNG, JPEG and GIF formats."),
            default=None,
            required=False,
    )

    content_use_own_image = schema.Bool(
            title=_(u"Contents use own image"),
            description=_('help_content_use_own_image',
                          default=u"If checked, content types that behave an image field will provide the image in the og:image attribute.\n"
                                  u"The product contentleadimage is also supported."),
            default=True,
            required=False,
    )

    content_image_size = schema.Choice(
        title=_(u"Content image size to be used"),
        description=_('help_content_image_size',
                      default=u"Resized version of contents images to be used."),
        required=True,
        default=u'mini',
        vocabulary='collective.fbshare.imageSizeVocabulary',
    )
 def handleCancel(self, action):
     IStatusMessage(self.request).addStatusMessage(_(u"Edit cancelled"),
                                                   "info")
     self.request.response.redirect("%s/%s" % (self.context.absolute_url(),
                                               self.control_panel_view))
예제 #10
0
 def handleCancel(self, action):
     IStatusMessage(self.request).addStatusMessage(_(u"Edit cancelled"),
                                                   "info")
     self.request.response.redirect(
         "%s/%s" % (self.context.absolute_url(), self.control_panel_view))