Compare commits
20
Commits
main
..
3e91e33d40
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3e91e33d40 | ||
|
|
3a07ed173e | ||
|
|
2c87abeeda | ||
|
|
6a6ba976b3 | ||
|
|
66147497a8 | ||
|
|
be8519d8b7 | ||
|
|
4fdfd14099 | ||
|
|
745d076fc8 | ||
|
|
1447a16bd1 | ||
|
|
d7ae81ef50 | ||
|
|
169480e56c | ||
|
|
a9dd0ee39f | ||
|
|
e2d471e803 | ||
|
|
1d7c2ce6fa | ||
|
|
d31ba26f46 | ||
|
|
9f2fd2c0b2 | ||
|
|
0dc2120cac | ||
|
|
542ba6a3fc | ||
|
|
2c448a951c | ||
|
|
17820885d6 |
+2
-6
@@ -54,7 +54,6 @@ class TemplateView(BaseView):
|
||||
context = {}
|
||||
context['request'] = self.request
|
||||
context['post'] = await self.request.post()
|
||||
context["template"] = pathlib.Path(path)
|
||||
if not context['post']:
|
||||
context['post'] = None
|
||||
try:
|
||||
@@ -62,9 +61,6 @@ class TemplateView(BaseView):
|
||||
except:
|
||||
context['json'] = None
|
||||
pass
|
||||
self.request.app.jinja2_env.globals["request"] = self.request
|
||||
self.request.app.jinja2_env.globals["context"] = context
|
||||
self.request.app.jinja2_env.globals["template"] = context["template"]
|
||||
|
||||
if str(path).endswith(".md"):
|
||||
renderer = MarkdownRenderer(self.request.app, path)
|
||||
@@ -87,6 +83,8 @@ class TemplateView(BaseView):
|
||||
"<body>{% markdown %}"+content+"{% endmarkdown %}</body>",
|
||||
"</html>"
|
||||
])
|
||||
self.request.app.jinja2_env["request"] = self.request
|
||||
aelf.request.app.jinja2_env["context"] = context
|
||||
with open(".temp.html", "w+") as f:
|
||||
f.write(markdown_default_page)
|
||||
content = aiohttp_jinja2.render_string(".temp.html",self.request,context=context)
|
||||
@@ -125,8 +123,6 @@ class Dreamii(BaseApplication):
|
||||
self.router.add_view("/{tail:.*}", TemplateView)
|
||||
self.jinja2_env.enable_async = False
|
||||
self.jinja2_env.globals["app"] = self
|
||||
self.jinja2_env.globals["request"] = None
|
||||
self.jinja2_env.globals["context"] = {}
|
||||
self.jinja2_env.add_extension(MarkdownExtension)
|
||||
self.jinja2_env.add_extension(PythonExtension)
|
||||
|
||||
|
||||
@@ -22,6 +22,10 @@
|
||||
|
||||
|
||||
from types import SimpleNamespace
|
||||
from mistune import Markdown
|
||||
from pygments import highlight
|
||||
from pygments.formatters import html
|
||||
from pygments.lexers import get_lexer_by_name
|
||||
from jinja2 import TemplateSyntaxError, nodes
|
||||
from jinja2.ext import Extension
|
||||
from jinja2.nodes import Const
|
||||
@@ -93,6 +97,7 @@ class PythonExtension(Extension):
|
||||
]
|
||||
)
|
||||
user_source = str(caller()).strip("\n").strip(" ")
|
||||
print(user_source)
|
||||
source = "\n".join([base_source, user_source])
|
||||
import sys
|
||||
import io
|
||||
@@ -121,13 +126,12 @@ class PythonExtension(Extension):
|
||||
|
||||
return html.escape(result.stdout + result.stderr) if stderr else result.stdout
|
||||
environment = self.environment
|
||||
|
||||
request = self.environment.globals["request"]
|
||||
context = self.environment.globals["context"]
|
||||
template = self.environment.globals["template"]
|
||||
db = self.app.db
|
||||
app = self.app
|
||||
dreamii = self.app
|
||||
#context = self.context
|
||||
exec(base_source)
|
||||
exec(user_source)
|
||||
result = sys.stdout.getvalue()
|
||||
|
||||
Reference in New Issue
Block a user