Merge pull request #44 from tmshv/fix/sync-document-update

Sync document update
This commit is contained in:
tmshv authored and GitHub committed 2020-03-19 14:49:23 +03:00
commit 9b99f6e360
3 files changed
+18 -35

No files matched your search

+15 -2
View File
@@ -1,4 +1,5 @@
from kazimir.Token import parse_file, is_document, Token
import math
class DocumentToken(Token):
@@ -10,7 +11,7 @@ class DocumentToken(Token):
super().__init__(name='file', data=data)
self.joinable = False
self.build = None
async def get_data(self):
data = parse_file(self.data)
document = await self.build(data)
@@ -23,6 +24,9 @@ class DocumentToken(Token):
def create_document(document):
file_size = get_size(document['file_size'], 1)
file_format = 'ПДФ'
return f'''
<div>
<div class="document-row">
@@ -38,9 +42,18 @@ def create_document(document):
<div class="document-row__file-info">
<a href="{document['file_url']}" target="_blank">
{document['file_format']} ({document['file_size']})
{file_format} ({file_size})
</a>
</div>
</div>
</div>
'''.strip()
def get_size(number_of_bytes, precision=1):
units = ['байт', 'КБ', 'МБ', 'ГБ', 'ТБ', 'ПБ']
number = math.floor(math.log(number_of_bytes) / math.log(1024))
size = (number_of_bytes / math.pow(1024, math.floor(number)))
size = round(size, precision)
return f'{size} {units[number]}'
+3 -4
View File
@@ -15,8 +15,6 @@ from sync.data import Provider
from sync.models import Model
from sync.models.Document import Document
from sync.models.Image import Image
from utils.text.file import get_size
from utils.text.file import get_ext
def create_date(date_str, date_formats=None):
@@ -90,11 +88,12 @@ async def create_post(provider: Provider, folder: str, md: str, sizes):
return {
'url': url,
'slug': document.id,
'image_url': image_url,
'file_url': document.url,
'title': document.title,
'file_size': get_size(document.file_size, 1),
'file_format': get_ext(data['file']),
'file_size': document.file_size,
'file_format': 'application/pdf',
}
async def build_image(data):
-29
View File
@@ -1,29 +0,0 @@
import os
import math
def default_ext(ext: str):
return ext.upper()
def get_ext(filename):
ext_s = ['.png', '.pdf', '.jpg', '.jpeg', '.gif', '.doc']
ext_d = ['ПНГ', 'ПДФ', 'ЖПГ', 'ЖПГ', 'ГИФ', 'ДОК']
_, ext = os.path.splitext(filename)
if ext in ext_s:
i = ext_s.index(ext)
return ext_d[i]
else:
default_ext(ext)
def get_size(number_of_bytes, precision=1):
units = ['байт', 'КБ', 'МБ', 'ГБ', 'ТБ', 'ПБ']
number = math.floor(math.log(number_of_bytes) / math.log(1024))
size = (number_of_bytes / math.pow(1024, math.floor(number)))
size = round(size, precision)
return f'{size} {units[number]}'