(4,_(u'Starting packet')), ) class NumberPlan(models.Model): """ База номерного ресурса """ phone_number = models.CharField(_(u'Phone Number'), max_length=12, unique=True) #models.PositiveIntegerField(_(u'Phone Number'), unique=True) nt = models.PositiveSmallIntegerField(_(u'Type'), max_length=1, choices=N_TYPES, default=1, blank=False) enables = models.BooleanField(_(u'Enables'), default=False) status = models.PositiveSmallIntegerField(_(u'Status'), max_length=1, choices=N_STATUS, default=0, blank=False) date_active = models.DateField(_(u'Activation Date'), blank=True, null=True) site = models.ForeignKey(Site, default=1, verbose_name=_(u'Site')) objects = NumberPlanManager() class Meta: db_table = 'number_plan' verbose_name = _(u'Number Plan') verbose_name_plural = _(u'Number Plans') def __unicode__(self): return self.phone_number @property def phone(self): return self.phone_number import listeners listeners.start_listening()
@property def enabled_date(self): """docstring for enable_date""" de = '' if ru_strftime(format=u"%Y", date=self.date_end) != "9999": de = u" по %s" % ru_strftime(format=u"%d.%m.%Y", date=self.date_end) return u"c {0}{1}".format(ru_strftime(format=u"%d.%m.%Y", date=self.date_start), de) def rate_currency(self): """docstring for rate_currency""" return "%(rate)0.2f %(currency)s" % {'rate': self.rate, 'currency': self.currency} rate_currency.short_description = _(u'Цена 1 мин.') @property def currency(self): return u'у.е.' # Monkey-patching http://www.alrond.com/ru/2008/may/03/monkey-patching-in-django/ #from contact.models import Contact #Contact.add_to_class('tariff',models.ForeignKey('fsb.tariff.TariffPlan',limit_choices_to = {'enabled': True})) ##Contact._meta.admin.fields += (('Additional', {'fields': ('tariff',)}),) ##Contact._meta.admin.list_display = Contact._meta.admin.list_display + ('tariff', ) ##Contact._meta.admin.list_display += ('tariff', ) import listeners listeners.start_listening()
import datetime from django.db import models from django.conf import settings from django.db.models import signals from django.db.models.query import QuerySet from django.contrib.auth.models import User from django.utils.translation import ugettext_lazy as _ from django.db.models import F, Q from django.db.models import Avg, Max, Min, Count from listeners import start_listening start_listening() class MessageManager(models.Manager): def inbox_for(self, user, read=None, only_unreplied=None): """ Returns all messages that were received by the given user and are not marked as deleted. """ inbox = self.filter( user=user, deleted_at__isnull=True, ) if read != None: if read == True: # read messages have read_at set to a later value then last message of the thread inbox = inbox.exclude(read_at__isnull=True)\ .filter(read_at__gt=F("thread__latest_msg__sent_at")) else: # unread threads are the ones that either have not been read at all or before the last message arrived
import datetime from django.db import models from django.conf import settings from django.db.models import signals from django.db.models.query import QuerySet from django.contrib.auth.models import User from django.utils.translation import ugettext_lazy as _ from django.db.models import F, Q from django.db.models import Avg, Max, Min, Count from listeners import start_listening start_listening() class MessageManager(models.Manager): def inbox_for(self, user, read=None, only_unreplied=None): """ Returns all messages that were received by the given user and are not marked as deleted. """ inbox = self.filter( user=user, deleted_at__isnull=True, ) if read != None: if read == True: # read messages have read_at set to a later value then last message of the thread inbox = inbox.exclude(read_at__isnull=True)\ .filter(read_at__gt=F("thread__latest_msg__sent_at")) else: # unread threads are the ones that either have not been read at all or before the last message arrived