Skip to content

Commit

Permalink
[#104] Add additional properties on Post for common infox
Browse files Browse the repository at this point in the history
  • Loading branch information
punchagan committed Feb 19, 2017
1 parent 94055ff commit 1af39db
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 33 deletions.
20 changes: 20 additions & 0 deletions home/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,10 @@ class Hacker(models.Model):
twitter = models.TextField(blank=True, null=True)
token = models.SlugField(max_length=40, default=token_default, unique=True)

@property
def full_name(self):
return '{} {}'.format(self.user.first_name, self.user.last_name)


class Blog(models.Model):

Expand All @@ -53,6 +57,22 @@ def __unicode__(self):
date_posted_or_crawled = models.DateTimeField('date updated')
slug = models.CharField(max_length=6, default=generate_random_id, unique=True)

@property
def author(self):
return self.blog.user.hacker.full_name

@property
def authorid(self):
return self.blog.user.id

@property
def avatar(self):
return self.blog.user.hacker.avatar_url

@property
def stream(self):
return self.blog.get_stream_display()


class LogEntry(models.Model):

Expand Down
39 changes: 6 additions & 33 deletions home/views.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
from collections import namedtuple
import datetime
from functools import wraps
import math
import re
import uuid

Expand Down Expand Up @@ -48,23 +47,6 @@ def wrapper(request, user_id):
return wrapper


def get_post_info(slug):
""" Gets the post object at a given slug. """

try:
post = Post.objects.get(slug=slug)
user = User.objects.get(blog__id__exact=post.blog_id)
post.author = user.first_name + " " + user.last_name
post.authorid = user.id
post.avatar = Hacker.objects.get(user=user.id).avatar_url
post.slug = slug

except Post.DoesNotExist:
raise Http404('Post does not exist.')

return post


def paginator(queryset, page_number, page_size=10):
paginator = Paginator(queryset, page_size)
try:
Expand All @@ -87,7 +69,12 @@ def view_post(request, slug):
"""

post = get_post_info(slug)
try:
post = Post.objects.get(slug=slug)

except Post.DoesNotExist:
raise Http404('Post does not exist.')

LogEntry.objects.create(
post=post,
date=timezone.now(),
Expand Down Expand Up @@ -247,13 +234,6 @@ def new(request):
page = request.GET.get('page', 1)
post_list = paginator(posts, page)

for post in post_list:
user = User.objects.get(blog__id__exact=post.blog_id)
post.author = user.first_name + " " + user.last_name
post.authorid = user.id
post.avatar = user.hacker.avatar_url
post.stream = post.blog.get_stream_display()

context = {
"post_list": post_list,
'show_avatars': True,
Expand All @@ -272,13 +252,6 @@ def search(request):
page = request.GET.get('page', 1)
post_list = paginator(posts, page)

for post in post_list:
user = User.objects.get(blog__id__exact=post.blog_id)
post.author = user.first_name + " " + user.last_name
post.authorid = user.id
post.avatar = user.hacker.avatar_url
post.stream = post.blog.get_stream_display()

context = {
"count": count,
"query": query,
Expand Down

0 comments on commit 1af39db

Please sign in to comment.