mirror of
https://github.com/paperless-ngx/paperless-ngx.git
synced 2025-07-30 18:27:45 -05:00
Accounted for .sender in a few places
This commit is contained in:
@@ -23,7 +23,7 @@ class UploadForm(forms.Form):
|
||||
"image/tiff": Document.TYPE_TIF,
|
||||
}
|
||||
|
||||
sender = forms.CharField(
|
||||
correspondent = forms.CharField(
|
||||
max_length=Correspondent._meta.get_field("name").max_length,
|
||||
required=False
|
||||
)
|
||||
@@ -34,18 +34,19 @@ class UploadForm(forms.Form):
|
||||
document = forms.FileField()
|
||||
signature = forms.CharField(max_length=256)
|
||||
|
||||
def clean_sender(self):
|
||||
def clean_correspondent(self):
|
||||
"""
|
||||
I suppose it might look cleaner to use .get_or_create() here, but that
|
||||
would also allow someone to fill up the db with bogus senders before
|
||||
all validation was met.
|
||||
would also allow someone to fill up the db with bogus correspondents
|
||||
before all validation was met.
|
||||
"""
|
||||
sender = self.cleaned_data.get("sender")
|
||||
if not sender:
|
||||
corresp = self.cleaned_data.get("correspondent")
|
||||
if not corresp:
|
||||
return None
|
||||
if not Correspondent.SAFE_REGEX.match(sender) or " - " in sender:
|
||||
raise forms.ValidationError("That sender name is suspicious.")
|
||||
return sender
|
||||
if not Correspondent.SAFE_REGEX.match(corresp) or " - " in corresp:
|
||||
raise forms.ValidationError(
|
||||
"That correspondent name is suspicious.")
|
||||
return corresp
|
||||
|
||||
def clean_title(self):
|
||||
title = self.cleaned_data.get("title")
|
||||
@@ -63,10 +64,10 @@ class UploadForm(forms.Form):
|
||||
return document, self.TYPE_LOOKUP[file_type]
|
||||
|
||||
def clean(self):
|
||||
sender = self.clened_data("sender")
|
||||
corresp = self.clened_data("correspondent")
|
||||
title = self.cleaned_data("title")
|
||||
signature = self.cleaned_data("signature")
|
||||
if sha256(sender + title + self.SECRET).hexdigest() == signature:
|
||||
if sha256(corresp + title + self.SECRET).hexdigest() == signature:
|
||||
return True
|
||||
return False
|
||||
|
||||
@@ -77,13 +78,15 @@ class UploadForm(forms.Form):
|
||||
form do that as well. Think of it as a poor-man's queue server.
|
||||
"""
|
||||
|
||||
sender = self.clened_data("sender")
|
||||
correspondent = self.clened_data("correspondent")
|
||||
title = self.cleaned_data("title")
|
||||
document, file_type = self.cleaned_data.get("document")
|
||||
|
||||
t = int(mktime(datetime.now()))
|
||||
file_name = os.path.join(
|
||||
Consumer.CONSUME, "{} - {}.{}".format(sender, title, file_type))
|
||||
Consumer.CONSUME,
|
||||
"{} - {}.{}".format(correspondent, title, file_type)
|
||||
)
|
||||
|
||||
with open(file_name, "wb") as f:
|
||||
f.write(document)
|
||||
|
Reference in New Issue
Block a user