summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsubstantialnoninfringinguser <substantialnoninfringinguser@gmail.com>2009-05-13 05:18:26 +0100
committersubstantialnoninfringinguser <substantialnoninfringinguser@gmail.com>2009-05-13 05:18:26 +0100
commitf5ddbafcb0899d2c95d8512b1316eaeeee9bedab (patch)
treed8186e9c66191da57bc7bec0f5ffe63e835f5445
parent13d44fe647b6929137ee4f7d18ba407b8ebaa05a (diff)
downloadtroggle-f5ddbafcb0899d2c95d8512b1316eaeeee9bedab.tar.gz
troggle-f5ddbafcb0899d2c95d8512b1316eaeeee9bedab.tar.bz2
troggle-f5ddbafcb0899d2c95d8512b1316eaeeee9bedab.zip
[svn] Wiki_markup imporved to include paragraphs
wiki_to_html should be used when the field will include paragraphs wiki_to_html_short should be used when the field will not include paragraphs Copied from http://cucc@cucc.survex.com/svn/trunk/expoweb/troggle/, rev. 8061 by julian @ 11/6/2008 11:24 PM
-rw-r--r--expo/templatetags/wiki_markup.py15
-rw-r--r--templates/cave.html14
-rw-r--r--templates/caveindex.html2
-rw-r--r--templates/logbookentry.html1
-rw-r--r--templates/person.html8
5 files changed, 27 insertions, 13 deletions
diff --git a/expo/templatetags/wiki_markup.py b/expo/templatetags/wiki_markup.py
index 7634485..e2a9d7e 100644
--- a/expo/templatetags/wiki_markup.py
+++ b/expo/templatetags/wiki_markup.py
@@ -34,6 +34,17 @@ def wiki_list(line, listdepth):
@register.filter()
@stringfilter
def wiki_to_html(value, autoescape=None):
+ #find paragraphs
+ outValue = ""
+ for paragraph in re.split("\n\s*?\n", value, re.DOTALL):
+ outValue += "<p>"
+ outValue += wiki_to_html_short(paragraph, autoescape)
+ outValue += "</p>\n"
+ return mark_safe(outValue)
+
+@register.filter()
+@stringfilter
+def wiki_to_html_short(value, autoescape=None):
if autoescape:
value = conditional_escape(value)
#deescape doubly escaped characters
@@ -42,9 +53,11 @@ def wiki_to_html(value, autoescape=None):
value = re.sub("&#39;&#39;&#39;&#39;([^']+)&#39;&#39;&#39;&#39;", r"<b><i>\1</i></b>", value, re.DOTALL)
value = re.sub("&#39;&#39;&#39;([^']+)&#39;&#39;&#39;", r"<b>\1</b>", value, re.DOTALL)
value = re.sub("&#39;&#39;([^']+)&#39;&#39;", r"<i>\1</i>", value, re.DOTALL)
+ #make cave links
+ value = re.sub("\[\[\s*cave:([^\s]+)\s*\s*\]\]", r'<a href="/troggle/cave/\1/">\1</a>', value, re.DOTALL)
#Make lists from lines starting with lists of [stars and hashes]
- listdepth = []
outValue = ""
+ listdepth = []
for line in value.split("\n"):
t, listdepth = wiki_list(line, listdepth)
outValue += t
diff --git a/templates/cave.html b/templates/cave.html
index a043e7f..e8c597e 100644
--- a/templates/cave.html
+++ b/templates/cave.html
@@ -8,20 +8,20 @@
<tr>
<th id="kat_no">
{% if cave.kataster_number %}
- {{ cave.kataster_number|wiki_to_html }}
+ {{ cave.kataster_number|wiki_to_html_short }}
{% if cave.entrancelist %}
- - {{ cave.entrancelist|wiki_to_html }}
+ - {{ cave.entrancelist|wiki_to_html_short }}
{% endif %}
{% if cave.unofficial_number %}
- <br />({{ cave.unofficial_number|wiki_to_html }})
+ <br />({{ cave.unofficial_number|wiki_to_html_short }})
{% endif %}
{% endif %}
</th>
<th id="name">
- {{ cave.official_name|wiki_to_html }}
+ {{ cave.official_name|wiki_to_html_short }}
</th>
<th id="status">
- {{ cave.kataster_code|wiki_to_html }}
+ {{ cave.kataster_code|wiki_to_html_short }}
</th>
</tr>
</table>
@@ -29,9 +29,9 @@
{% if cave.entrances %}
<h2>Entrances</h2>
{% for ent in cave.entrances %}
- <a href = "./{{ ent.entrance_letter|wiki_to_html }}">{{ ent.entrance_letter|wiki_to_html }}</a>
+ <a href = "./{{ ent.entrance_letter|wiki_to_html_short }}">{{ ent.entrance_letter|wiki_to_html_short }}</a>
{% if ent.entrance.marking %}
- Marking: {{ ent.entrance.marking_val|wiki_to_html }}
+ Marking: {{ ent.entrance.marking_val|wiki_to_html_short }}
{% endif %}
<br>
{% endfor %}
diff --git a/templates/caveindex.html b/templates/caveindex.html
index a19752f..445eddf 100644
--- a/templates/caveindex.html
+++ b/templates/caveindex.html
@@ -5,6 +5,6 @@
{% block content %}
{% for cave in caves %}
-<p>{{ cave }} <a href="./{{ cave.kataster_number }}/">{{ cave.official_name|wiki_to_html }}</a> </p>
+<p>{{ cave }} <a href="./{{ cave.kataster_number }}/">{{ cave.official_name|wiki_to_html_short }}</a> </p>
{% endfor %}
{% endblock %} \ No newline at end of file
diff --git a/templates/logbookentry.html b/templates/logbookentry.html
index f1a1887..b76d9ab 100644
--- a/templates/logbookentry.html
+++ b/templates/logbookentry.html
@@ -20,7 +20,6 @@
</li>
{% endfor %}
</ul>
- <em>[wiki_to_html doesn't do paragraphs. don't know where it is located]</em>
<div>{{logbookentry.text|wiki_to_html}}</div>
</div>
{% endblock %}
diff --git a/templates/person.html b/templates/person.html
index 9d79141..ff1fe62 100644
--- a/templates/person.html
+++ b/templates/person.html
@@ -1,10 +1,10 @@
{% extends "base.html" %}
{% load wiki_markup %}
-{% block title %}Person {{person.id}}{% endblock %}
+{% block title %}Person {{person|wiki_to_html_short}}{% endblock %}
{% block content %}
- <div class="personblock"><a href="/person/{{person.id}}">{{person}}</a>
+ <div class="personblock"><a href="/person/{{person.id}}">{{person|wiki_to_html_short}}</a>
<ul>
{% for personexpedition in person.personexpedition_set.all %}
<li>
@@ -14,7 +14,9 @@
<div>
<ul>
{% for persontrip in personexpedition.persontrip_set.all %}
- <li><a href="/logbookentry/{{persontrip.logbookentry.id}}">{{persontrip.date}}</a> ({{persontrip.logbookentry.place}}) - {{persontrip.logbookentry.title}}</li>
+ <li><a href="/logbookentry/{{persontrip.logbookentry.id}}">{{persontrip.date}}</a>
+ ({{persontrip.logbookentry.place|wiki_to_html_short}}) -
+ {{persontrip.logbookentry.title|wiki_to_html_short}}</li>
{% endfor %}
<ul>
</div>