from django.db import models
from django import forms, template
from django.forms import ModelForm, extras, widgets, DateField, FileInput, TextInput
from django.forms.extras.widgets import SelectDateWidget
from django.forms.models import BaseModelFormSet
from datetime import datetime
from django.utils.safestring import mark_safe
from sorl.thumbnail import ImageField
from django.utils.translation import get_language, ugettext, ugettext_lazy as _
from django.conf import settings

from product.models import Product

class News(models.Model):
    date = models.DateTimeField(default=datetime.now)
    headline = models.CharField(max_length=200)
    slug = models.SlugField()
    text = models.TextField(null=True, blank=True)
    product = models.ForeignKey(Product, related_name="productnews", null=True, blank=True)
    active = models.BooleanField(default=True)
    class Meta:
        verbose_name = 'News Item'
        verbose_name_plural = 'News'
        ordering = ['-date', 'headline']

    def get_absolute_url(self):
        pass
        return "/news/%s/" % (self.slug)

class NewsImg(models.Model):
    news = models.ForeignKey('News', related_name="newsimages")
    image = ImageField(upload_to='img/news/')
    link = models.CharField(max_length=100, default='/news/')
    ordering = models.PositiveIntegerField(default=0)
    class Meta:
        verbose_name = 'News Image'
        verbose_name_plural = 'News Images'
        ordering = ['ordering']

class Tag(models.Model):
    news = models.ForeignKey('News', related_name="tags")
    tag = models.CharField(max_length=100)
    slug = models.SlugField()
    rank = models.IntegerField(default=0)
    class Meta:
        verbose_name = 'News Tag'
        verbose_name_plural = 'News Tags'
        ordering = ['rank']