annotate server_side/html_tools.py @ 239:b911f2b43fd4

browser_side: added input history in the unibox: This functionality uses a file from the sat project: use the -I parameter of pyjsbuild to add sat library to your PYJSPATH. To ease also possible to use your sat source directory instead of the library, you just need to trick pyjsbuild with a symbolic link: SAT=~/workspace/sat if [[ ! -e $SAT/sat ]]; then ln -sf $SAT/src $SAT/sat; fi This will allow you to import like that in libervia.py: from sat.tools.frontend.misc import InputHistory And then you can build with: $PYJS/bin/pyjsbuild libervia --no-compile-inplace -m -I $SAT
author souliane <souliane@mailoo.org>
date Mon, 14 Oct 2013 20:54:13 +0200
parents 9763dec220ed
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
1 #!/usr/bin/python
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
2 # -*- coding: utf-8 -*-
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
3
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
4 """
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
5 Libervia: a Salut à Toi frontend
165
9763dec220ed dates update
Goffi <goffi@goffi.org>
parents: 131
diff changeset
6 Copyright (C) 2011, 2012, 2013 Jérôme Poisson <goffi@goffi.org>
8
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
7
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
8 This program is free software: you can redistribute it and/or modify
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
9 it under the terms of the GNU Affero General Public License as published by
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
10 the Free Software Foundation, either version 3 of the License, or
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
11 (at your option) any later version.
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
12
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
13 This program is distributed in the hope that it will be useful,
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
16 GNU Affero General Public License for more details.
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
17
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
18 You should have received a copy of the GNU Affero General Public License
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
19 along with this program. If not, see <http://www.gnu.org/licenses/>.
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
20 """
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
21
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
22 def sanitizeHtml(text):
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
23 """Sanitize HTML by escaping everything"""
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
24 #this code comes from official python wiki: http://wiki.python.org/moin/EscapingHtml
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
25 html_escape_table = {
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
26 "&": "&amp;",
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
27 '"': "&quot;",
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
28 "'": "&apos;",
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
29 ">": "&gt;",
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
30 "<": "&lt;",
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
31 }
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
32
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
33 return "".join(html_escape_table.get(c,c) for c in text)
88ae360198ee html tools
Goffi <goffi@goffi.org>
parents:
diff changeset
34