changeset 7645:e0626084e9c5 stable

files: remove need for webhelpers.html.literal The following code is unnecessarily complex: h.literal(_('There are no files yet. %s') % add_new) First of all, the '%s' part in the translatable string is a whole new sentence, independent of the first. There is no reason it needs to be part of the same translatable string. Secondly, the only reason for h.literal is to preserve the link in 'add_new' (which contains the result of 'h.link_to'). But, h.link_to actually already is a 'literal' object. The problem is that the special 'literal' property is lost due to the coercion into a plain string via the '%' operator. The following code would be a possible solution for the second issue: h.HTML(_('There are no files yet. %s')) % add_new i.e. make sure that the format string is not a plain string but itself a literal object (after its contents being escaped), before applying the '%' operator. To handle the first issue, this would become: h.HTML(_('There are no files yet.')) + ' ' + h.HTML(add_new) but, here h.HTML is unnecessary on the first string because there is nothing special about it, and equally unnecessary on the 'add_new' variable because h.link_to already returns a literal object. So, the final code becomes: _('There are no files yet.') + ' ' + add_new
author Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
date Thu, 18 Apr 2019 21:33:23 +0200
parents f4b050aceb1e
children 7aff9a999536
files kallithea/controllers/files.py
diffstat 1 files changed, 1 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/kallithea/controllers/files.py	Mon Apr 29 21:26:00 2019 +0200
+++ b/kallithea/controllers/files.py	Thu Apr 18 21:33:23 2019 +0200
@@ -90,8 +90,7 @@
                        repo_name=c.repo_name,
                        revision=0, f_path='', anchor='edit')
             add_new = h.link_to(_('Click here to add new file'), url_, class_="alert-link")
-            h.flash(h.literal(_('There are no files yet. %s') % add_new),
-                    category='warning')
+            h.flash(_('There are no files yet.') + ' ' + add_new, category='warning')
             raise HTTPNotFound()
         except (ChangesetDoesNotExistError, LookupError):
             msg = _('Such revision does not exist for this repository')