Ejemplo n.º 1
0
 def setUp(self):
     self.s = PhotoSize(name='test', width=100, height=100)
     self.s.save()
     self.pl = TestPhoto(name='landscape')
     self.pl.image.save(
         os.path.basename(LANDSCAPE_IMAGE_PATH),
         ContentFile(open(LANDSCAPE_IMAGE_PATH, 'rb').read()))
     self.pl.save()
Ejemplo n.º 2
0
class PhotologueBaseTest(TestCase):
    def setUp(self):
        self.s = PhotoSize(name='testPhotoSize', width=100, height=100)
        self.s.save()
        self.pl = _create_new_photo(name='Landscape', slug='landscape')

    def tearDown(self):
        self.pl.delete()
        self.s.delete()
Ejemplo n.º 3
0
class PhotologueBaseTest(TestCase):

    def setUp(self):
        self.s = PhotoSize(name='testPhotoSize', width=100, height=100)
        self.s.save()
        self.pl = _create_new_photo(name='Landscape', slug='landscape')

    def tearDown(self):
        self.pl.delete()
        self.s.delete()
Ejemplo n.º 4
0
def create_photosize(name,
                     width=0,
                     height=0,
                     crop=False,
                     pre_cache=False,
                     increment_count=False):
    try:
        size = PhotoSize.objects.get(name=name)
        exists = True
    except PhotoSize.DoesNotExist:
        size = PhotoSize(name=name)
        exists = False
    if exists:
        msg = 'A "%s" photo size already exists. Do you want to replace it? (yes, no):' % name
        if not get_response(msg, lambda inp: inp == 'yes', False):
            return
    print '\nWe will now define the "%s" photo size:\n' % size
    w = get_response('Width (in pixels):', lambda inp: int(inp), width)
    h = get_response('Height (in pixels):', lambda inp: int(inp), height)
    c = get_response('Crop to fit? (yes, no):', lambda inp: inp == 'yes', crop)
    p = get_response('Pre-cache? (yes, no):', lambda inp: inp == 'yes',
                     pre_cache)
    i = get_response('Increment count? (yes, no):', lambda inp: inp == 'yes',
                     increment_count)
    size.width = w
    size.height = h
    size.crop = c
    size.pre_cache = p
    size.increment_count = i
    size.save()
    print '\nA "%s" photo size has been created.\n' % name
    return size
Ejemplo n.º 5
0
class PhotologueBaseTest(TestCase):

    def setUp(self):
        self.s = PhotoSize(name='test', width=100, height=100)
        self.s.save()
        self.pl = _create_new_photo(name='Landscape', slug='landscape')

    def tearDown(self):
        path = self.pl.image.path
        self.pl.delete()
        os.remove(path)
        self.failIf(os.path.isfile(path))
        self.s.delete()
def create_photosize(name, width=0, height=0, crop=False, pre_cache=False, increment_count=False):
    try:
        size = PhotoSize.objects.get(name=name)
        exists = True
    except PhotoSize.DoesNotExist:
        size = PhotoSize(name=name)
        exists = False
    if exists:
        msg = 'A "%s" photo size already exists. Do you want to replace it? (yes, no):' % name
        if not get_response(msg, lambda inp: inp == 'yes', False):
            return
    print '\nWe will now define the "%s" photo size:\n' % size
    w = get_response('Width (in pixels):', lambda inp: int(inp), width)
    h = get_response('Height (in pixels):', lambda inp: int(inp), height)
    c = get_response('Crop to fit? (yes, no):', lambda inp: inp == 'yes', crop)
    p = get_response('Pre-cache? (yes, no):', lambda inp: inp == 'yes', pre_cache)
    i = get_response('Increment count? (yes, no):', lambda inp: inp == 'yes', increment_count)
    size.width = w
    size.height = h
    size.crop = c
    size.pre_cache = p
    size.increment_count = i
    size.save()
    print '\nA "%s" photo size has been created.\n' % name
    return size
Ejemplo n.º 7
0
class PLTest(TestCase):
    """ Base TestCase class """
    def setUp(self):
        self.s = PhotoSize(name='test', width=100, height=100)
        self.s.save()
        self.pl = TestPhoto(name='landscape')
        self.pl.image.save(os.path.basename(LANDSCAPE_IMAGE_PATH),
                           ContentFile(open(LANDSCAPE_IMAGE_PATH, 'rb').read()))
        self.pl.save()

    def tearDown(self):
        path = self.pl.image.path
        self.pl.delete()
        self.failIf(os.path.isfile(path))
        self.s.delete()
Ejemplo n.º 8
0
class PLTest(TestCase):
    """ Base TestCase class """
    def setUp(self):
        self.s = PhotoSize(name='test', width=100, height=100)
        self.s.save()
        self.pl = TestPhoto(name='landscape')
        self.pl.image.save(
            os.path.basename(LANDSCAPE_IMAGE_PATH),
            ContentFile(open(LANDSCAPE_IMAGE_PATH, 'rb').read()))
        self.pl.save()

    def tearDown(self):
        path = self.pl.image.path
        self.pl.delete()
        self.failIf(os.path.isfile(path))
        self.s.delete()
Ejemplo n.º 9
0
 def setUp(self):
     self.s = PhotoSize(name='test', width=100, height=100)
     self.s.save()
     self.pl = TestPhoto(name='landscape')
     self.pl.image.save(os.path.basename(LANDSCAPE_IMAGE_PATH),
                        ContentFile(open(LANDSCAPE_IMAGE_PATH, 'rb').read()))
     self.pl.save()
Ejemplo n.º 10
0
    def save(self, *args, **kwargs):
        # if square box given then generate the square version, else remove it
        if all([
                getattr(self, attr) is not None
                for attr in ('focuspoint_x', 'focuspoint_y', 'radius_length')
        ]):
            try:
                im = Image.open(self.image.image.path)

                # TODO: explain this commented line or remove it if it does not make any sense
                # box = (left, up, x, y)is_portrait

                square_box = (int(self.focuspoint_x) - self.radius_length,
                              int(self.focuspoint_y) - self.radius_length,
                              int(self.focuspoint_x) + self.radius_length,
                              int(self.focuspoint_y) + self.radius_length)

                self.square_version = os.path.join(
                    os.path.dirname(self.image.image.path),
                    self.image._get_filename_for_size(
                        PhotoSize(name='square')))
                im.crop(square_box).save(self.square_version.path)
            except IOError:
                pass
        else:
            self.square_version = None
        super(PhotoExtended, self).save(*args, **kwargs)
Ejemplo n.º 11
0
def main():
    from photologue.models import PhotoSize
    sizes = (
        PhotoSize(name='gallery_display', width=1024, height=768),
        PhotoSize(name='gallery_thumbnail', width=300, height=225, upscale=True, crop=True),
        PhotoSize(name='event_thumbnail', width=300),
        PhotoSize(name='book_thumbnail', width=300, height=300),
    )
    counter = 0
    for size in sizes:
        if not PhotoSize.objects.filter(name=size.name).exists():
            size.save()
            print 'Created: %s' % size.name
            counter += 1
        else:
            print 'Not created: %s' % size.name
    print 'Created %d photo sizes.' % counter
Ejemplo n.º 12
0
def create_photosize_by_set(name, width=0, height=0, crop=False, pre_cache=False, increment_count=False):
	try:
		size = PhotoSize.objects.get(name=name)
		print 'photo size "%s" is already exist.' % name
	except PhotoSize.DoesNotExist:
		size = PhotoSize(name=name)
	print 'We will now define the "%s" photo size:' % size
	size.width = width
	size.height = height
	size.crop = crop
	size.pre_cache = pre_cache
	size.increment_count = increment_count
	size.save()
	print 'A "%s" photo size has been created.\n' % name
	return size
Ejemplo n.º 13
0
from django.conf import settings
from whoosh import store, fields
from whoosh.filedb.filestore import FileStorage
from whoosh import index
from os import environ
import os

environ["DJANGO_SETTINGS_MODULE"] = "settings"

from settings import *
from photologue.models import PhotoSize

userSmallThumb = PhotoSize(name="userthumb", width=77, height=77, crop=True, pre_cache=False)
userSmallThumb.save()

slide = PhotoSize(name="slide", width=500, height=250, crop=True, pre_cache=False)
slide.save()

thumbnail = PhotoSize(name="thumbnail", width=75, height=75, pre_cache=True)
thumbnail.save()

display = PhotoSize(name="display", width=500, height=240, pre_cache=False)
display.save()
Ejemplo n.º 14
0
 def test_clean_wont_allow_zero_dimension_and_crop(self):
     """Tests if ValidationError is raised by clean method if with or height
     is set to 0 and crop is set to true"""
     s = PhotoSize(name='test', width=400, crop=True)
     self.assertRaises(ValidationError, s.clean)
Ejemplo n.º 15
0
                                     },
                          'settingsthumb' : { 'width': 50,
                                    'height': 50,
                                    'crop': True
                                     },
                          'housesidebar' : {
                                    'width': 160,
                                    'height': 160,
                                    'crop': True
                                           }
                        }
# now build 'em

print "Setting up thumbnail sizes..."
for ps, psettings in LIVEWITH_PHOTO_SIZES.iteritems():
    thisps = LIVEWITH_PHOTO_SIZES[ps]
    try:
        t = PhotoSize.objects.get(name=ps)
        print "Image crop size %s already exists, skipping." % ps
    except PhotoSize.DoesNotExist: # create chat_sized_thumbnail
        p = PhotoSize(name=ps,
                      width = psettings['width'],
                      height = psettings['height'],
                      crop = psettings['crop']
                      )
        p.save()

print "Setting up Utility settings..."

print "Setup complete."
Ejemplo n.º 16
0
 def setUp(self):
     self.s = PhotoSize(name='testPhotoSize', width=100, height=100)
     self.s.save()
     self.pl = _create_new_photo(name='Landscape', slug='landscape')
Ejemplo n.º 17
0
 def setUp(self):
     self.s = PhotoSize(name='test', width=100, height=100)
     self.s.save()
     self.pl = _create_new_photo(name='Landscape', slug='landscape')