Added primitive doc type checking
This commit is contained in:
@@ -23,6 +23,8 @@ from library.music_tags import MUSIC_TAGS, MUSIC_TAG_BY_NAME
|
||||
from library import forms, models
|
||||
from library.pdf_utils import extract_pages, extract_and_concat
|
||||
|
||||
import logging
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
class ProjectItemListView(ProjectMixin, ListView):
|
||||
template_name = "library/item_list.html"
|
||||
@@ -321,14 +323,18 @@ class WorkAddDocumentView(CollectionMixin, CreateView):
|
||||
return super().form_invalid(form)
|
||||
|
||||
def form_valid(self, form):
|
||||
orig_name, ext = os.path.splitext(form.cleaned_data['upload'].name)
|
||||
logger.info("Uploaded: %s", orig_name)
|
||||
|
||||
doc = form.save(commit=False)
|
||||
doc.doctype = models.Document.DOCTYPE_MAP.get(ext.lower(), models.Document.DOCTYPE_MISC)
|
||||
doc.work_id = self.kwargs['pk']
|
||||
doc.save()
|
||||
|
||||
# auto tag the document
|
||||
|
||||
name, _ = os.path.splitext(os.path.basename(doc.upload.name))
|
||||
parts = re.split(r'[^A-Za-z]+', name)
|
||||
#name, ext = os.path.splitext(os.path.basename(doc.upload.name))
|
||||
parts = re.split(r'[^A-Za-z]+', orig_name)
|
||||
parts.reverse()
|
||||
for word in parts:
|
||||
try:
|
||||
@@ -339,6 +345,7 @@ class WorkAddDocumentView(CollectionMixin, CreateView):
|
||||
pass
|
||||
|
||||
|
||||
|
||||
if self.request.headers['Accept'] == 'application/json':
|
||||
filename = os.path.basename(doc.upload.name)
|
||||
return JsonResponse({
|
||||
|
||||
Reference in New Issue
Block a user