Commit 7e7a6206 authored by PJ Janse van Rensburg's avatar PJ Janse van Rensburg

Merge branch 'file-admin-windows'

parents 99a62362 a7394f51
...@@ -11,7 +11,7 @@ next release ...@@ -11,7 +11,7 @@ next release
* SQLAlchemy fix that lets you use inline model forms where models have multiple primary keys * SQLAlchemy fix that lets you use inline model forms where models have multiple primary keys
* Peewee: support composite keys * Peewee: support composite keys
* MongoEngine: when searching/filtering the input is now regarded as case-insensitive by default * MongoEngine: when searching/filtering the input is now regarded as case-insensitive by default
* FileAdmin: handle special characters in filename * FileAdmin: handle special characters in filename + fix a bug with listing directories on Windows
1.5.2 1.5.2
----- -----
......
...@@ -607,6 +607,9 @@ class BaseFileAdmin(BaseView, ActionsMixin): ...@@ -607,6 +607,9 @@ class BaseFileAdmin(BaseView, ActionsMixin):
:param path: :param path:
Static file path Static file path
""" """
if self._on_windows:
path = path.replace('\\', '/')
if self.is_file_editable(path): if self.is_file_editable(path):
route = '.edit' route = '.edit'
else: else:
...@@ -832,8 +835,8 @@ class BaseFileAdmin(BaseView, ActionsMixin): ...@@ -832,8 +835,8 @@ class BaseFileAdmin(BaseView, ActionsMixin):
if self.is_accessible_path(rel_path): if self.is_accessible_path(rel_path):
items.append(item) items.append(item)
sort_column = request.args.get('sort', None, type=str) sort_column = request.args.get('sort', None, type=str) or self.default_sort_column
sort_desc = request.args.get('desc', 0, type=int) sort_desc = request.args.get('desc', 0, type=int) or self.default_desc
if sort_column is None: if sort_column is None:
if self.default_sort_column: if self.default_sort_column:
...@@ -846,8 +849,9 @@ class BaseFileAdmin(BaseView, ActionsMixin): ...@@ -846,8 +849,9 @@ class BaseFileAdmin(BaseView, ActionsMixin):
items.sort(key=itemgetter(0)) items.sort(key=itemgetter(0))
# Sort by type # Sort by type
items.sort(key=itemgetter(2), reverse=True) items.sort(key=itemgetter(2), reverse=True)
# Sort by modified date if not self._on_windows:
items.sort(key=lambda x: (x[0], x[1], x[2], x[3], datetime.utcfromtimestamp(x[4])), reverse=True) # Sort by modified date
items.sort(key=lambda x: (x[0], x[1], x[2], x[3], datetime.utcfromtimestamp(x[4])), reverse=True)
else: else:
column_index = self.possible_columns.index(sort_column) column_index = self.possible_columns.index(sort_column)
items.sort(key=itemgetter(column_index), reverse=sort_desc) items.sort(key=itemgetter(column_index), reverse=sort_desc)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment