Mercurial > libervia-web
view libervia/server/html_tools.py @ 1246:aaf28d45ae67
pages: browser code, first draft:
- code for browser can now be specified if a page subdirectory named `_browser` exists
- the default engine used is `Brython` (not yet implemented, so it will do nothing for
now)
- build_path now uses C.SITE_NAME_DEFAULT for default site instead of empty string, to
avoid collision with other sites
- ProtectedFile transtype path (first positional argument) to str, so a pathlib.Path can
be used
author | Goffi <goffi@goffi.org> |
---|---|
date | Sun, 26 Apr 2020 22:01:13 +0200 |
parents | f511f8fbbf8a |
children | 822bd0139769 |
line wrap: on
line source
#!/usr/bin/env python3 # Libervia: a Salut à Toi frontend # Copyright (C) 2011-2020 Jérôme Poisson <goffi@goffi.org> # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. def sanitizeHtml(text): """Sanitize HTML by escaping everything""" # this code comes from official python wiki: http://wiki.python.org/moin/EscapingHtml html_escape_table = { "&": "&", '"': """, "'": "'", ">": ">", "<": "<", } return "".join(html_escape_table.get(c, c) for c in text) def convertNewLinesToXHTML(text): return text.replace("\n", "<br/>")