X-Git-Url: https://git.mdrn.pl/audio.git/blobdiff_plain/2d1d955bb3b4a5ca4dad1153c062c9ab3b6319e7..6b9d2a8ea0a58826f0f30f135a3f7d065b3bb435:/apps/archive/forms.py diff --git a/apps/archive/forms.py b/apps/archive/forms.py old mode 100755 new mode 100644 index 772ec0a..81568c6 --- a/apps/archive/forms.py +++ b/apps/archive/forms.py @@ -1,20 +1,25 @@ +from datetime import datetime import os import os.path -from datetime import datetime from django import forms from django.utils.translation import ugettext_lazy as _ import mutagen +from django.utils.encoding import force_bytes from archive.models import Audiobook -from archive.settings import FILES_PATH -from archive.utils import ExistingFile +from archive.settings import FILES_PATH, NEW_PATH +from archive.utils import ExistingFile, sha1_file class AudiobookForm(forms.ModelForm): class Meta: model = Audiobook def save(self, commit=True, path=None): + """ Performs normal save, with given file as an source audiobook. + + `path' is relative to NEW_PATH. + """ m = super(AudiobookForm, self).save(commit=False) m.modified = datetime.now() @@ -23,8 +28,15 @@ class AudiobookForm(forms.ModelForm): if not os.path.isdir(FILES_PATH): os.makedirs(FILES_PATH) # save the file in model - m.source_file.save(os.path.basename(path), ExistingFile(path)) + + abs_path = os.path.join(NEW_PATH, path) + m.source_file.save( + path, + ExistingFile(abs_path)) + +# f = open(force_bytes(m.source_file.path)) +# m.source_sha1 = sha1_file(f) +# f.close() if commit: m.save() -