4
from translation import _
4
from translation import _t
6
6
JPG = ['jpg','jpeg','jpe']
8
FILENAME = '<%s>'%_t('filename')
9
FOLDER = '<%s>'%_t('folder')
10
FOLDER_PHATCH = '<%s>_phatch'%_t('folder')
11
TYPE = '<%s>'%_t('type')
12
DPI = '<%s>'%_t('dpi')
8
14
class Action(models.Action):
9
15
"""Defined variables: <filename> <type> <folder> <width> <height>"""
13
19
email = 'spe.stani.be@gmail.com'
16
summary = 'Save an image'
22
summary = _t('Save an image')
19
25
def __init__(self):
20
26
fields = models.Fields()
21
fields['Filename'] = models.FileNameField('<%s>'\
23
fields['As'] = models.ImageWriteTypeField('<%s>'%_('type'))
24
fields['In'] = models.FilePathField('<%s>_phatch'%_('folder'))
25
fields['Quality'] = models.SliderField(60,1,100)
26
fields['Resolution'] = models.DpiField('<%s>'%_('dpi'))
27
fields[_t('Filename')] = models.FileNameField(FILENAME)
28
fields[_t('As')] = models.ImageWriteTypeField(TYPE)
29
fields[_t('In')] = models.FilePathField(FOLDER_PHATCH)
30
fields[_t('Quality')] = models.SliderField(60,1,100)
31
fields[_t('Resolution')] = models.DpiField(DPI)
27
32
super(Action,self).__init__(fields)
30
"""Strings to translate"""
31
_('Save'), _('Filename'), _('As'), _('In'), _('Quality'),
34
34
def do(self,photo,setting,cache):
36
36
info = photo.get_info()
43
43
if setting('create_missing_folders'):
44
44
models.ensure_path(folder)
46
fields = {'dpi' : (dpi,dpi)}
46
options = {'dpi' : (dpi,dpi)}
47
47
if typ.lower() in JPG or \
48
48
(typ.lower() == '<type>' and self.type in JPG):
49
49
quality = self.get_field_value('Quality',info)
50
fields['quality'] = quality
50
options['quality'] = quality
52
photo.save(filename, **fields)
52
photo.save(filename, **options)
55
55
def get_filename(self,info):
81
81
def is_overwrite_existing_images_forced(self):
82
return (self.get_field_string('In') == _('<folder>')) and\
83
(self.get_field_string('Filename') == _('<filename>')) and\
84
(self.get_field_string('As') == _('<type>'))
82
return (self.get_field_string('In') == FOLDER) and\
83
(self.get_field_string('Filename') == FILENAME) and\
84
(self.get_field_string('As') == TYPE)
90
90
'x\xda\x01\xd6\x08)\xf7\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x000\x00\