cast memory attributes (originally float) to int
[qcg-portal.git] / filex / views.py
index ada8b7b..108f7c3 100644 (file)
@@ -1,4 +1,3 @@
-from itertools import islice
 import logging
 import mimetypes
 import os
@@ -62,12 +61,12 @@ class ListView(FTPView):
         listing = ftp.listing(make_url(params, 'path'))
 
         data = []
-        # ignore . and .. from beginning of the listing
-        for item in islice(listing, 2, None):
-            item['size'] = filesizeformat(item['size'])
-            item['date'] = date_format(item['date'], 'CUSTOM_DATETIME_FORMAT')
+        for item in listing:
+            if item['name'] not in ['.', '..']:
+                item['size'] = filesizeformat(item['size'])
+                item['date'] = date_format(item['date'], 'CUSTOM_DATETIME_FORMAT')
 
-            data.append(item)
+                data.append(item)
 
         return JsonResponse(data, safe=False)
 
@@ -89,7 +88,7 @@ class DownloadView(FTPView):
         mime_type, encoding = mimetypes.guess_type(name)
 
         response = StreamingHttpResponse(data, content_type=mime_type or 'application/octet-stream')
-        response['Content-Disposition'] = u'attachment; filename={}'.format(name)
+        response['Content-Disposition'] = 'attachment; filename*={}'.format(urlquote(name))
         response['Content-Length'] = stats['size']
 
         if encoding: