style: made the avatar and name of the person a link

This commit is contained in:
Anand Chitipothu
2021-05-06 20:41:52 +05:30
parent 3382de0ecb
commit 0ad03a3fb5
4 changed files with 12 additions and 4 deletions

View File

@@ -1,4 +1,5 @@
{% set color = member.get_palette() %}
<a href="/{{member.username}}">
<span class="avatar {{ avatar_class }}" title="{{ member.full_name }}">
{% if member.photo %}
<img class="avatar-frame standard-image" src="{{ member.photo }}" title="{{ member.full_name }}">
@@ -9,4 +10,5 @@
{{ member.abbr }}
</span>
{% endif %}
</a>
</span>

View File

@@ -7,7 +7,9 @@
</div>
<div class="course-footer">
<div class="course-author">
<img class="course-author-avatar" src="{{ course.get_instructor().avatar }}" />{{ course.get_instructor().full_name }}
{% with author = course.get_instructor() %}
{{ widgets.Avatar(member=author, avatar_class="avatar-medium") }} <a href="/{{author.username}}">{{ author.full_name }}</a>
{% endwith %}
</div>
</div>
</div>

View File

@@ -9,7 +9,8 @@
<a href="sketches/{{sketch.sketch_id}}">{{sketch.title}}</a>
</div>
<div class="sketch-author">
by {{sketch.get_owner().full_name}}
{% set owner = sketch.get_owner() %}
by <a href="/{{owner.username}}">{{owner.full_name}}</a>
</div>
</div>
</div>

View File

@@ -36,8 +36,9 @@ class Widgets:
'<div>Hello, World!</div>'
"""
def __getattr__(self, name):
widget_globals = {"widgets": self}
if not name.startswith("__"):
return Widget(name)
return Widget(name, widget_globals)
else:
raise AttributeError(name)
@@ -51,11 +52,13 @@ class Widget:
>>> w(name="World!")
'<div>Hello, World!</div>'
"""
def __init__(self, name):
def __init__(self, name, widget_globals={}):
self.widget_globals = widget_globals
self.name = name
def __call__(self, **kwargs):
# the widget could be in any of the modules
paths = [f"{module}/widgets/{self.name}.html" for module in MODULES]
env = get_jenv()
kwargs.update(self.widget_globals)
return env.get_or_select_template(paths).render(kwargs)