91 lines
1.9 KiB
Python
91 lines
1.9 KiB
Python
import os.path
|
|
from datetime import datetime
|
|
|
|
|
|
def message(category, text):
|
|
if message.level <= 0:
|
|
sep = " "
|
|
else:
|
|
sep = "--"
|
|
print("%s %s%s[%s]%s%s" % (
|
|
datetime.now().isoformat(),
|
|
max(0, message.level) * " |",
|
|
sep,
|
|
category,
|
|
max(1, (14 - len(category))) * " ",
|
|
text))
|
|
message.level = -1
|
|
|
|
|
|
def next_level():
|
|
message.level += 1
|
|
|
|
|
|
def back_level():
|
|
message.level -= 1
|
|
|
|
|
|
def set_cache_path_base(base):
|
|
trim_base.base = base
|
|
|
|
|
|
def untrim_base(path):
|
|
return os.path.join(trim_base.base, path)
|
|
|
|
|
|
def trim_base_custom(path, base):
|
|
if path.startswith(base):
|
|
path = path[len(base):]
|
|
if path.startswith('/'):
|
|
path = path[1:]
|
|
return path
|
|
|
|
|
|
def trim_base(path):
|
|
return trim_base_custom(path, trim_base.base)
|
|
|
|
|
|
def cache_base(path, filepath=False):
|
|
if len(path) == 0:
|
|
return "root"
|
|
elif filepath and len(path.split(os.sep)) < 2:
|
|
path = "root-" + path
|
|
path = trim_base(path).replace(
|
|
'/', '-').replace(
|
|
' ', '_').replace(
|
|
'(', '').replace(
|
|
'&', '').replace(
|
|
',', '').replace(
|
|
')', '').replace(
|
|
'#', '').replace(
|
|
'[', '').replace(
|
|
']', '').replace(
|
|
'"', '').replace(
|
|
"'", '').replace(
|
|
'_-_', '-').lower()
|
|
while path.find("--") != -1:
|
|
path = path.replace("--", "-")
|
|
while path.find("__") != -1:
|
|
path = path.replace("__", "_")
|
|
return path
|
|
|
|
|
|
def json_cache(path):
|
|
return cache_base(path) + ".json"
|
|
|
|
|
|
def image_cache(path, size, square=False):
|
|
if square:
|
|
suffix = str(size) + "s"
|
|
else:
|
|
suffix = str(size)
|
|
return cache_base(path, True) + "_" + suffix + ".jpg"
|
|
|
|
|
|
def video_cache(path):
|
|
return cache_base(path, True) + ".mp4"
|
|
|
|
|
|
def file_mtime(path):
|
|
return datetime.fromtimestamp(int(os.path.getmtime(path)))
|