diff --git a/core/TESTS/tests_logins.py b/core/TESTS/tests_logins.py index 4a99861..a91e13e 100644 --- a/core/TESTS/tests_logins.py +++ b/core/TESTS/tests_logins.py @@ -206,12 +206,12 @@ class PostTests(TestCase): with open('core/fixtures/test_upload_nosuffix','r') as testf: response = self.client.post('/dwguploadnogit/uploads', data={'name': 'test_upload_nosuffix', 'uploadfiles': testf }) content = response.content.decode() - with open('_test_response.html', 'w') as f: - f.write(content) + # with open('_test_response.html', 'w') as f: + # f.write(content) self.assertEqual(response.status_code, 200) for ph in [ r'test_upload_nosuffix', r'You cannot create folders here', - r'Clicking on a filename only']: + r'Creating a folder is done by a nerd']: phmatch = re.search(ph, content) self.assertIsNotNone(phmatch, "Expect no-suffix file to upload OK. Failed to find expected text: '" + ph +"'") diff --git a/core/views/uploads.py b/core/views/uploads.py index 619ea90..09f612c 100644 --- a/core/views/uploads.py +++ b/core/views/uploads.py @@ -62,7 +62,7 @@ class FilesForm(forms.Form): # not a model-form, just a form-form class FilesRenameForm(forms.Form): # not a model-form, just a form-form uploadfiles = forms.FileField() - renameto = forms.CharField(strip=True) + renameto = forms.CharField(strip=True, required=False) class TextForm(forms.Form): # not a model-form, just a form-form photographer = forms.CharField(strip=True) @@ -503,18 +503,27 @@ def photoupload(request, folder=None): renameto = request.POST["renameto"] actual_saved = [] - if multiple: + if multiple: if len(multiple) == 1: - try: # crashes in Django os.chmod call if on WSL, but does save file! - saved_filename = fs.save(renameto, content=f) - except: - print(f'\n !! Permissions failure ?! on attempting to save file {f.name}') - if 'saved_filename' in locals(): - if saved_filename.is_file(): - actual_saved.append(saved_filename) - filesaved = True - - else: + if renameto != "": + try: # crashes in Django os.chmod call if on WSL, but does save file! + saved_filename = fs.save(renameto, content=f) + except: + print(f'\n !! Permissions failure ?! on attempting to save file {f.name}') + if 'saved_filename' in locals(): + if saved_filename.is_file(): + actual_saved.append(saved_filename) + filesaved = True + else: # multiple is the uploaded content + try: # crashes in Django os.chmod call if on WSL, but does save file! + saved_filename = fs.save(f.name, content=f) + except: + print(f'\n !! Permissions failure ?! on attempting to save file {f.name}') + if 'saved_filename' in locals(): + if saved_filename.is_file(): + actual_saved.append(saved_filename) + filesaved = True + else: # multiole is a list of content for f in multiple: try: # crashes in Django os.chmod call if on WSL, but does save file! saved_filename = fs.save(f.name, content=f)