mirror of https://gitlab.com/bashrc2/epicyon
Tidying
parent
d1b1e18af4
commit
e8553eb192
62
daemon.py
62
daemon.py
|
@ -208,6 +208,8 @@ from shares import addShare
|
|||
from shares import removeShare
|
||||
from shares import expireShares
|
||||
from categories import setHashtagCategory
|
||||
from utils import getImageExtensionFromMimeType
|
||||
from utils import getImageMimeType
|
||||
from utils import hasObjectDict
|
||||
from utils import userAgentDomain
|
||||
from utils import isLocalNetworkAddress
|
||||
|
@ -3234,18 +3236,9 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
return
|
||||
|
||||
mediaFilenameBase = accountsDir + '/upload'
|
||||
mediaFilename = mediaFilenameBase + '.png'
|
||||
imageMedia = {
|
||||
'jpeg': 'jpg',
|
||||
'gif': 'gif',
|
||||
'svg+xml': 'svg',
|
||||
'webp': 'webp',
|
||||
'avif': 'avif'
|
||||
}
|
||||
for mimeExt, ext in imageMedia.items():
|
||||
if self.headers['Content-type'].endswith(mimeExt):
|
||||
mediaFilename = mediaFilenameBase + '.' + ext
|
||||
break
|
||||
mediaFilename = \
|
||||
mediaFilenameBase + '.' + \
|
||||
getImageExtensionFromMimeType(self.headers['Content-type'])
|
||||
with open(mediaFilename, 'wb') as avFile:
|
||||
avFile.write(mediaBytes)
|
||||
if debug:
|
||||
|
@ -6004,23 +5997,11 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
self._304()
|
||||
return
|
||||
|
||||
mediaImageType = 'png'
|
||||
if emojiFilename.endswith('.png'):
|
||||
mediaImageType = 'png'
|
||||
elif emojiFilename.endswith('.jpg'):
|
||||
mediaImageType = 'jpeg'
|
||||
elif emojiFilename.endswith('.webp'):
|
||||
mediaImageType = 'webp'
|
||||
elif emojiFilename.endswith('.avif'):
|
||||
mediaImageType = 'avif'
|
||||
elif emojiFilename.endswith('.svg'):
|
||||
mediaImageType = 'svg+xml'
|
||||
else:
|
||||
mediaImageType = 'gif'
|
||||
mediaImageType = getImageMimeType(emojiFilename)
|
||||
with open(emojiFilename, 'rb') as avFile:
|
||||
mediaBinary = avFile.read()
|
||||
self._set_headers_etag(emojiFilename,
|
||||
'image/' + mediaImageType,
|
||||
mediaImageType,
|
||||
mediaBinary, None,
|
||||
self.server.domainFull)
|
||||
self._write(mediaBinary)
|
||||
|
@ -10059,23 +10040,11 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
self._304()
|
||||
return True
|
||||
|
||||
mediaFileType = 'png'
|
||||
if mediaFilename.endswith('.png'):
|
||||
mediaFileType = 'png'
|
||||
elif mediaFilename.endswith('.jpg'):
|
||||
mediaFileType = 'jpeg'
|
||||
elif mediaFilename.endswith('.webp'):
|
||||
mediaFileType = 'webp'
|
||||
elif mediaFilename.endswith('.avif'):
|
||||
mediaFileType = 'avif'
|
||||
elif mediaFilename.endswith('.svg'):
|
||||
mediaFileType = 'svg+xml'
|
||||
else:
|
||||
mediaFileType = 'gif'
|
||||
mediaFileType = getImageMimeType(mediaFilename)
|
||||
with open(mediaFilename, 'rb') as avFile:
|
||||
mediaBinary = avFile.read()
|
||||
self._set_headers_etag(mediaFilename,
|
||||
'image/' + mediaFileType,
|
||||
mediaFileType,
|
||||
mediaBinary, None,
|
||||
self.server.domainFull)
|
||||
self._write(mediaBinary)
|
||||
|
@ -10128,18 +10097,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
# The file has not changed
|
||||
self._304()
|
||||
return True
|
||||
mediaImageType = 'image/png'
|
||||
extensionsToMime = {
|
||||
'jpg': 'jpeg',
|
||||
'gif': 'gif',
|
||||
'avif': 'avif',
|
||||
'svg': 'svg+xml',
|
||||
'webp': 'webp'
|
||||
}
|
||||
for ext, mimeExt in extensionsToMime.items():
|
||||
if avatarFile.endswith('.' + ext):
|
||||
mediaImageType = 'image/' + mimeExt
|
||||
break
|
||||
mediaImageType = getImageMimeType(avatarFile)
|
||||
with open(avatarFilename, 'rb') as avFile:
|
||||
mediaBinary = avFile.read()
|
||||
self._set_headers_etag(avatarFilename,
|
||||
|
|
34
utils.py
34
utils.py
|
@ -238,6 +238,40 @@ def getImageExtensions() -> []:
|
|||
return ('png', 'jpg', 'jpeg', 'gif', 'webp', 'avif', 'svg')
|
||||
|
||||
|
||||
def getImageMimeType(imageFilename: str) -> str:
|
||||
"""Returns the mime type for the given image
|
||||
"""
|
||||
extensionsToMime = {
|
||||
'png': 'png',
|
||||
'jpg': 'jpeg',
|
||||
'gif': 'gif',
|
||||
'avif': 'avif',
|
||||
'svg': 'svg+xml',
|
||||
'webp': 'webp'
|
||||
}
|
||||
for ext, mimeExt in extensionsToMime.items():
|
||||
if imageFilename.endswith('.' + ext):
|
||||
return 'image/' + mimeExt
|
||||
return 'image/png'
|
||||
|
||||
|
||||
def getImageExtensionFromMimeType(contentType: str) -> str:
|
||||
"""Returns the image extension from a mime type, such as image/jpeg
|
||||
"""
|
||||
imageMedia = {
|
||||
'png': 'png',
|
||||
'jpeg': 'jpg',
|
||||
'gif': 'gif',
|
||||
'svg+xml': 'svg',
|
||||
'webp': 'webp',
|
||||
'avif': 'avif'
|
||||
}
|
||||
for mimeExt, ext in imageMedia.items():
|
||||
if contentType.endswith(mimeExt):
|
||||
return ext
|
||||
return 'png'
|
||||
|
||||
|
||||
def getVideoExtensions() -> []:
|
||||
"""Returns a list of the possible video file extensions
|
||||
"""
|
||||
|
|
Loading…
Reference in New Issue