You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
stashr_image_thumbnailer/config.py

61 lines
1.8 KiB

#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""-------------------------------------------------------------------------------------------
-- IMPORTS
-------------------------------------------------------------------------------------------"""
""" --- PYTHON IMPORTS --- """
import os, io, shutil
from os.path import dirname, abspath
from configobj import ConfigObj
from validate import Validator
"""-------------------------------------------------------------------------------------------
-- THUMBNAILER CONFIG
-------------------------------------------------------------------------------------------"""
class ThumbConfig(ConfigObj):
configspec = u"""
[THUMBNAILER]
max_width = integer(default=160)
quality = integer(default=50)
save_original_file = boolean(default=False)
"""
def __init__(self):
super(ThumbConfig, self).__init__()
configspecfile = os.path.join(
dirname(abspath(__file__)),
'configspec.ini'
)
if not os.path.exists(configspecfile):
with open(configspecfile, 'w') as fd:
shutil.copyfileobj(io.StringIO(ThumbConfig.configspec), fd)
self.filename = os.path.join(
dirname(abspath(__file__)),
'config.ini'
)
self.configspec = configspecfile
self.encoding = "UTF8"
tmp = ConfigObj(self.filename, configspec=self.configspec, encoding=self.encoding)
validator = Validator()
tmp.validate(validator, copy=True)
self.merge(tmp)
if not os.path.exists(self.filename):
self.write()
"""-------------------------------------------------------------------------------------------
-- CONFIGURATION DEFINITION
-------------------------------------------------------------------------------------------"""
thumbconfig = ThumbConfig()