Example #1
0
def apply_getPersonalPortrait_patch():
    LOGGER.info('Patching Products.PlonePAS.tools.membership.MembershipTool'
                '.getPersonalPortrait for generating a default portrait')
    from Products.PlonePAS.tools.membership import MembershipTool
    getPersonalPortrait = MembershipTool.getPersonalPortrait

    def getPersonalPortraitWrapper(self, id=None, verifyPermission=0):
        create_default_avatar(id or self.getAuthenticatedMember().getId())
        return getPersonalPortrait(self, id=id,
                                   verifyPermission=verifyPermission)

    MembershipTool.getPersonalPortrait = getPersonalPortraitWrapper
Example #2
0
from random import random
from zope.component.hooks import getSite
from zope.interface import implements
import os.path


from PIL.ImageFont import _imagingft_not_installed
from PIL.ImageFont import core
if core.__class__ is _imagingft_not_installed:
    FREETYPE_MISSING = (
        'The "_imagingft" C module is not installed, '
        ' which is part of "freetype".'
        ' Install the freetype library and reinstall Pillow with'
        ' freetype support.'
        ' The avatar generation is disabled now.')
    LOGGER.error(FREETYPE_MISSING)
else:
    FREETYPE_MISSING = False


class DefaultAvatarGenerator(object):
    implements(IAvatarGenerator)

    # The resulting image size (square_size * square_size)
    square_size = 220

    def generate(self, userid, output_stream):
        if FREETYPE_MISSING:
            return False
        image = Image.new('RGBA', (self.square_size, self.square_size),
                          self.background_color())
Example #3
0
def apply_member_image_scale_patch():
    LOGGER.info('Patching maximum member scale in Products.PlonePAS.config'
                ' to %s' % str(MEMBER_IMAGE_SCALE))
    from Products.PlonePAS import config
    config.MEMBER_IMAGE_SCALE = MEMBER_IMAGE_SCALE
    config.IMAGE_SCALE_PARAMS['scale'] = MEMBER_IMAGE_SCALE
Example #4
0
from Products.CMFCore.utils import getToolByName
from random import random
from zope.component.hooks import getSite
from zope.interface import implements
import os.path

from PIL.ImageFont import _imagingft_not_installed
from PIL.ImageFont import core
if core.__class__ is _imagingft_not_installed:
    FREETYPE_MISSING = (
        'The "_imagingft" C module is not installed, '
        ' which is part of "freetype".'
        ' Install the freetype library and reinstall Pillow with'
        ' freetype support.'
        ' The avatar generation is disabled now.')
    LOGGER.error(FREETYPE_MISSING)
else:
    FREETYPE_MISSING = False


class DefaultAvatarGenerator(object):
    implements(IAvatarGenerator)

    # The resulting image size (square_size * square_size)
    square_size = 220

    def generate(self, userid, output_stream):
        if FREETYPE_MISSING:
            return False
        image = Image.new('RGBA', (self.square_size, self.square_size),
                          self.background_color())