aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/util.py
diff options
context:
space:
mode:
authorJef van Schendel <jefvanschendel@gmail.com>2011-06-20 16:33:14 +0200
committerJef van Schendel <jefvanschendel@gmail.com>2011-06-20 16:33:14 +0200
commit2d1f91cc41aca908502ea1d18687b902a5fd90a1 (patch)
tree1d6d425a8ec7a7bfb8490c88d87806d856336d1e /mediagoblin/util.py
parent76e21adbd8756159d83bef99b335398519b338f3 (diff)
parent5c441e75ebc4ad63c3a5362d9bc451abe97984d2 (diff)
downloadmediagoblin-2d1f91cc41aca908502ea1d18687b902a5fd90a1.tar.lz
mediagoblin-2d1f91cc41aca908502ea1d18687b902a5fd90a1.tar.xz
mediagoblin-2d1f91cc41aca908502ea1d18687b902a5fd90a1.zip
Merge remote-tracking branch 'gitorious/master'
Diffstat (limited to 'mediagoblin/util.py')
-rw-r--r--mediagoblin/util.py38
1 files changed, 12 insertions, 26 deletions
diff --git a/mediagoblin/util.py b/mediagoblin/util.py
index fc380f41..0e43a1f5 100644
--- a/mediagoblin/util.py
+++ b/mediagoblin/util.py
@@ -18,7 +18,6 @@ from email.MIMEText import MIMEText
import gettext
import pkg_resources
import smtplib
-import os
import sys
import re
import urllib
@@ -28,14 +27,13 @@ import copy
from babel.localedata import exists
import jinja2
import translitcodec
-from paste.deploy.loadwsgi import NicerConfigParser
from webob import Response, exc
from lxml.html.clean import Cleaner
+import markdown
from mediagoblin import mg_globals
from mediagoblin.db.util import ObjectId
-
TESTS_ENABLED = False
def _activate_testing():
"""
@@ -100,7 +98,7 @@ def get_jinja_env(template_loader, locale):
template_env = jinja2.Environment(
loader=template_loader, autoescape=True,
- extensions=['jinja2.ext.i18n'])
+ extensions=['jinja2.ext.i18n', 'jinja2.ext.autoescape'])
template_env.install_gettext_callables(
mg_globals.translations.gettext,
@@ -352,28 +350,6 @@ def get_locale_from_request(request):
return locale_to_lower_upper(target_lang)
-def read_config_file(conf_file):
- """
- Read a paste deploy style config file and process it.
- """
- if not os.path.exists(conf_file):
- raise IOError(
- "MEDIAGOBLIN_CONFIG not set or file does not exist")
-
- parser = NicerConfigParser(conf_file)
- parser.read(conf_file)
- parser._defaults.setdefault(
- 'here', os.path.dirname(os.path.abspath(conf_file)))
- parser._defaults.setdefault(
- '__file__', os.path.abspath(conf_file))
-
- mgoblin_conf = dict(
- [(section_name, dict(parser.items(section_name)))
- for section_name in parser.sections()])
-
- return mgoblin_conf
-
-
# A super strict version of the lxml.html cleaner class
HTML_CLEANER = Cleaner(
scripts=True,
@@ -400,6 +376,16 @@ def clean_html(html):
return HTML_CLEANER.clean_html(html)
+MARKDOWN_INSTANCE = markdown.Markdown(safe_mode='escape')
+
+
+def cleaned_markdown_conversion(text):
+ """
+ Take a block of text, run it through MarkDown, and clean its HTML.
+ """
+ return clean_html(MARKDOWN_INSTANCE.convert(text))
+
+
SETUP_GETTEXTS = {}
def setup_gettext(locale):