fix 'go next' in articles and meeting-posts and member image url in posts

This commit is contained in:
2020-09-05 18:20:47 +00:00
parent cbc21eafa5
commit b21402f7ae
3 changed files with 26 additions and 20 deletions

View File

@@ -10,7 +10,7 @@ from rest_framework import viewsets
# from rest_framework import permissions
from .models import Post, PostSerializer
# from members.models import Member
from members.models import Member
# from documents import add_ep_to_response, get_ep_sessionid2
from documents import get_pad_link
from documents.etherpadlib import add_ep_cookie
@@ -51,14 +51,18 @@ def show(request, id=None):
elif id != "" and id is not None:
p = Post.objects.get_visible_articles().get(slug=(id))
# post_author = Member.all_members.filter(nickname=p.author)
post_author = Member.all_members.filter(nickname=p.author).first()
author_image = None
if post_author:
author_image = post_author.image['avatar'].url
context = {
"post": p,
"next": get_next_dict().get(p.slug, None),
"author_image": author_image,
"next": get_next_dict(p),
"related_posts": p.tags.similar_objects(),
"ep_link": get_pad_link(p.slug + "-agenda"),
}
response = render(request, 'posts/show.html', context)
@@ -108,17 +112,24 @@ def tag_complete(request):
return HttpResponseServerError("Requires a term field.")
def get_next_dict():
def get_next_dict(post=None):
# TODO: Docstring
posts = Post.articles.get_visible_articles().values('slug')
print(posts)
d = {}
print(d)
# TODO: bad implementation but it works!!
if post.post_type == 'N' or post.post_type == 'E':
posts = Post.articles.get_visible_articles()
elif post.post_type == 'F':
posts = Post.objects.get_visible_articles().filter(post_type='F').order_by('-event_start')
d = ""
for k, v in enumerate(posts):
if k == len(posts) - 1:
if post.slug == v.slug:
if (k + 1) < len(posts):
d = posts[k + 1].slug
else:
d = posts[0].slug
break
d[v['slug']] = posts[k + 1]['slug']
print(d)
return d