Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
D
django-wiki
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
OpenEdx
django-wiki
Commits
d0047006
Commit
d0047006
authored
Feb 03, 2013
by
benjaoming
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of github.com:benjaoming/django-wiki
parents
b3365861
365793db
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
17 additions
and
16 deletions
+17
-16
wiki/plugins/macros/markdown_extensions.py
+11
-10
wiki/plugins/macros/templates/wiki/plugins/macros/article_list.html
+1
-1
wiki/plugins/macros/templates/wiki/plugins/templatetags/article_list.html
+2
-2
wiki/plugins/macros/templatetags/wiki_macro_tags.py
+3
-3
No files found.
wiki/plugins/macros/markdown_extensions.py
View file @
d0047006
...
...
@@ -5,7 +5,8 @@ from django.utils.translation import ugettext as _
from
django.template.loader
import
render_to_string
from
django.template
import
Context
MACRO_RE
=
re
.
compile
(
r'.*(\[(?P<macro>\w+)(\:(?P<arg>\w+))?\]).*'
,
re
.
IGNORECASE
)
MACRO_RE
=
re
.
compile
(
r'.*(\[(?P<macro>\w+)(?P<kwargs>\s\w+\:.+)*\]).*'
,
re
.
IGNORECASE
)
KWARG_RE
=
re
.
compile
(
r'([^ |:]+):([^ |$]+)'
,
re
.
IGNORECASE
)
from
wiki.plugins.macros
import
settings
...
...
@@ -19,7 +20,7 @@ class MacroExtension(markdown.Extension):
class
MacroPreprocessor
(
markdown
.
preprocessors
.
Preprocessor
):
"""django-wiki macro preprocessor - parse text for various [some_macro] and
[some_macro
:arg
] references. """
[some_macro
(kw:arg)*
] references. """
allowed_methods
=
settings
.
METHODS
...
...
@@ -31,22 +32,22 @@ class MacroPreprocessor(markdown.preprocessors.Preprocessor):
macro
=
m
.
group
(
'macro'
)
.
strip
()
if
not
macro
in
MacroPreprocessor
.
allowed_methods
:
continue
arg
=
m
.
group
(
'arg'
)
if
arg
:
arg
=
arg
.
strip
()
try
:
line
=
getattr
(
self
,
macro
)(
arg
)
except
AttributeError
:
pass
kwargs
=
m
.
group
(
'kwargs'
)
if
kwargs
:
kwargs
=
eval
(
'{'
+
KWARG_RE
.
sub
(
r'"\1":"\2",'
,
kwargs
)
+
'}'
)
line
=
getattr
(
self
,
macro
)(
**
kwargs
)
else
:
line
=
getattr
(
self
,
macro
)()
if
not
line
is
None
:
new_text
.
append
(
line
)
return
new_text
def
article_list
(
self
,
arg
=
None
):
def
article_list
(
self
,
depth
=
2
):
html
=
render_to_string
(
"wiki/plugins/macros/article_list.html"
,
Context
({
'article_children'
:
self
.
markdown
.
article
.
get_children
,
'depth'
:
int
(
depth
)
+
1
,
})
)
return
self
.
markdown
.
htmlStash
.
store
(
html
,
safe
=
True
)
...
...
wiki/plugins/macros/templates/wiki/plugins/macros/article_list.html
View file @
d0047006
...
...
@@ -5,7 +5,7 @@
<h3>
{% trans "Articles" %}
</h3>
<br/>
{% for child in article_children %}
{% article_list child %}
{% article_list child
depth
%}
{% endfor %}
</div>
{% endif %}
wiki/plugins/macros/templates/wiki/plugins/templatetags/article_list.html
View file @
d0047006
...
...
@@ -2,11 +2,11 @@
{% load url from future %}
<p><a
href=
"{% url 'wiki:get' path=parent.path article_id=parent.article.id %}"
>
{{ parent.article }}
</a></p>
{% if parent.children.count %}
{% if parent.children.count
and parent.level
<
depth
%}
<
div
class=
"wiki-article-sublist"
>
<ul>
{% for child in parent.children.all %}
<li>
{% article_list child %}
</li>
<li>
{% article_list child
depth
%}
</li>
{% endfor %}
</ul>
</div>
...
...
wiki/plugins/macros/templatetags/wiki_macro_tags.py
View file @
d0047006
...
...
@@ -8,8 +8,9 @@ register = template.Library()
'wiki/plugins/templatetags/article_list.html'
,
takes_context
=
True
)
def
article_list
(
context
,
urlpath
):
def
article_list
(
context
,
urlpath
,
depth
):
context
[
'parent'
]
=
urlpath
context
[
'depth'
]
=
depth
return
context
...
...
@@ -21,4 +22,4 @@ def allowed_macros():
except
AttributeError
:
continue
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment