# -*- coding: utf-8 -*-
from __future__ import unicode_literals

from django.db import models
from django.utils import timezone
from django.core.urlresolvers import reverse
from redactor.fields import RedactorField

# Create your models here.

class Post(models.Model):
	author = models.ForeignKey('auth.User')
	title = models.CharField(max_length=200)
	text = RedactorField(allow_image_upload=True)
	feature = models.ImageField(upload_to='uploads/%Y/%m/%d',blank=True,null=True)
	create_date = models.DateTimeField(default=timezone.now)
	published_date = models.DateTimeField(blank=True,null=True)

	def publish(self):
		self.published_date = timezone.now()
		self.save()

	def approve_comment(self):
		return self.comments.filter(approved_comment=True)

	def get_absolute_url(self):
		return reverse("post_detail",kwargs={'pk':self.pk})

	def __str__(self):
		return self.title

class Comment(models.Model):
	post = models.ForeignKey('blog.Post',related_name='comments')
	author = models.CharField(max_length=200)
	text = models.TextField()
	create_date = models.DateTimeField(default=timezone.now)
	approved_comment = models.BooleanField(default=False)

	def approve(self):
		self.approved_comment = True
		self.save()

	def get_absolute_url(self):
		return reverse("post_detail",kwargs={'pk':self.pk})

	def __str__(self):
		return self.text