fix 'go next' in articles and meeting-posts and member image url in posts
This commit is contained in:
@@ -5,7 +5,6 @@ from django.urls import reverse
|
||||
from django.utils import timezone
|
||||
from django.utils.text import slugify
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
from members.models import Member
|
||||
from taggit.managers import TaggableManager
|
||||
|
||||
from .managers import (
|
||||
@@ -138,10 +137,6 @@ class Post(models.Model):
|
||||
def url(self):
|
||||
return reverse('posts.show', kwargs={"id": self.slug})
|
||||
|
||||
@property
|
||||
def author_member(self):
|
||||
return Member.all_members.filter(nickname=self.author.username).first()
|
||||
|
||||
def save(self, *args, **kwargs):
|
||||
"save the post with some defaults"
|
||||
if (self.id is None) and (not self.slug):
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
|
||||
@@ -15,9 +15,9 @@
|
||||
</div>
|
||||
<div class="article-details">
|
||||
{{post.subtitle | tags_to_url }}
|
||||
{% if post.author_member != None %}
|
||||
<div class="article-author"><a href="{% url 'member' post.author_member.nickname %}">
|
||||
<img src="{{post.author_member.image | thumbnail_url:'avatar'}}" alt="" />{{post.author_member.nickname}}
|
||||
{% if post.author != None %}
|
||||
<div class="article-author"><a href="{% url 'member' post.author %}">
|
||||
<img src="{{author_image}}" alt="" /> {{post.author}}
|
||||
</a>
|
||||
</div>
|
||||
{% else %}
|
||||
|
||||
Reference in New Issue
Block a user