# HG changeset patch # User Ludovic Chabant # Date 1467448251 25200 # Node ID a7726e4862c4fc4b97cf3b882e9de39c87d6c055 # Parent d841716d8e0d245d12f542d07318a94c6dea029d admin: Fix API changes, don't crash the dashboard on non-binary WIP files. Treat new/edited files that have no `auto_format` supported extension as "miscellaneous" files, which are shown separately on the dashboard. diff -r d841716d8e0d -r a7726e4862c4 foodtruck/assets/sass/foodtruck/_base.scss --- a/foodtruck/assets/sass/foodtruck/_base.scss Sat Jul 02 01:28:29 2016 -0700 +++ b/foodtruck/assets/sass/foodtruck/_base.scss Sat Jul 02 01:30:51 2016 -0700 @@ -49,3 +49,7 @@ padding: 0 0.2em; } +.ft-dash-misc { + color: $ft-color-gray-light; +} + diff -r d841716d8e0d -r a7726e4862c4 foodtruck/templates/dashboard.html --- a/foodtruck/templates/dashboard.html Sat Jul 02 01:28:29 2016 -0700 +++ b/foodtruck/templates/dashboard.html Sat Jul 02 01:30:51 2016 -0700 @@ -33,7 +33,7 @@

Work in Progress

{% if new_pages %} -

New pages

+

New pages:

{% endif %} {% if edited_pages %} -

Edited pages

+

Edited pages:

diff -r d841716d8e0d -r a7726e4862c4 foodtruck/views/create.py --- a/foodtruck/views/create.py Sat Jul 02 01:28:29 2016 -0700 +++ b/foodtruck/views/create.py Sat Jul 02 01:30:51 2016 -0700 @@ -45,8 +45,7 @@ fp.write('') flash("%s was created." % os.path.relpath(fac.path, site.root_dir)) - route = site.getRoute(source.name, fac.metadata, - skip_taxonomies=True) + route = site.getSourceRoute(source.name, fac.metadata) if route is None: logger.error("Can't find route for page: %s" % fac.path) abort(500) diff -r d841716d8e0d -r a7726e4862c4 foodtruck/views/dashboard.py --- a/foodtruck/views/dashboard.py Sat Jul 02 01:28:29 2016 -0700 +++ b/foodtruck/views/dashboard.py Sat Jul 02 01:30:51 2016 -0700 @@ -39,16 +39,21 @@ data['new_pages'] = [] data['edited_pages'] = [] + data['misc_files'] = [] if site.scm: st = site.scm.getStatus() for p in st.new_files: pd = _getWipData(p, site, fs_endpoints) if pd: data['new_pages'].append(pd) + else: + data['misc_files'].append(p) for p in st.edited_files: pd = _getWipData(p, site, fs_endpoints) if pd: data['edited_pages'].append(pd) + else: + data['misc_files'].append(p) data['site_name'] = site.name data['site_title'] = site.piecrust_app.config.get('site/title', site.name) @@ -70,6 +75,11 @@ def _getWipData(path, site, fs_endpoints): + auto_formats = site.piecrust_app.config.get('site/auto_formats', ['html']) + pathname, pathext = os.path.splitext(path) + if pathext not in auto_formats: + return None + source = None for endpoint, s in fs_endpoints.items(): if path.startswith(endpoint): @@ -79,8 +89,7 @@ return None fac = source.buildPageFactory(os.path.join(site.root_dir, path)) - route = site.piecrust_app.getRoute( - source.name, fac.metadata, skip_taxonomies=True) + route = site.piecrust_app.getSourceRoute(source.name, fac.metadata) if not route: return None