diff options
Diffstat (limited to 'ishtar/furnitures/models.py')
-rw-r--r-- | ishtar/furnitures/models.py | 61 |
1 files changed, 47 insertions, 14 deletions
diff --git a/ishtar/furnitures/models.py b/ishtar/furnitures/models.py index 08790018f..c1980f68c 100644 --- a/ishtar/furnitures/models.py +++ b/ishtar/furnitures/models.py @@ -456,7 +456,8 @@ class Parcel(LightHistorizedItem): null=True, verbose_name=_(u"Operation")) year = models.IntegerField(_(u"Year"), default=lambda:datetime.datetime.now().year) - town = models.ForeignKey("Town", related_name='+', verbose_name=_(u"Town")) + town = models.ForeignKey("Town", related_name='parcels', + verbose_name=_(u"Town")) section = models.CharField(_(u"Section"), max_length=4) parcel_number = models.CharField(_(u"Parcel number"), max_length=6) @@ -464,6 +465,11 @@ class Parcel(LightHistorizedItem): verbose_name = _(u"Parcel") verbose_name_plural = _(u"Parcels") + def short_label(self): + return u" - ".join([unicode(item) for item in \ + [self.town, self.section, self.parcel_number] + if item]) + def __unicode__(self): return u" - ".join([unicode(item) for item in \ [self.associated_file, self.operation, self.section, self.parcel_number] @@ -530,28 +536,55 @@ class Dating(models.Model): verbose_name = _(u"Dating") verbose_name_plural = _(u"Datings") -class RegistrationUnit(BaseHistorizedItem, OwnPerms): +class Unit(GeneralType) : + order = models.IntegerField(_(u"Order")) + parent = models.ForeignKey("Unit", verbose_name=_(u"Parent unit"), + blank=True, null=True) + + class Meta: + verbose_name = _(u"Type Unit") + verbose_name_plural = _(u"Types Unit") + + def __unicode__(self): + return self.label + +class ContextRecord(BaseHistorizedItem, OwnPerms): parcel = models.ForeignKey(Parcel, verbose_name=_(u"Parcel")) label = models.CharField(_(u"Label"), max_length=200) - description = models.TextField(_("Description")) + description = models.TextField(_("Description"), blank=True, null=True) lenght = models.IntegerField(_(u"Lenght")) width = models.IntegerField(_(u"Width")) thickness = models.IntegerField(_(u"Thickness")) depth = models.IntegerField(_(u"Depth")) - has_furniture = models.BooleanField(u"Has furniture?") - interpretation = models.TextField(_(u"Interpretation")) - filling = models.TextField(_(u"Filling")) + location = models.CharField(_(u"Location"), blank=True, null=True, + max_length=200, + help_text=_(u"A short description of the location of the context record")) datings = models.ManyToManyField(Dating) + units = models.ManyToManyField(Unit) + has_furniture = models.BooleanField(u"Has furniture?") + filling = models.TextField(_(u"Filling"), blank=True, null=True) + interpretation = models.TextField(_(u"Interpretation"), blank=True, + null=True) + taq = models.IntegerField(_(u"TAQ"), blank=True, null=True, + help_text=_("\"Terminus Ante Quem\" the context record can't have been " + "created after this date")) + taq_estimated = models.IntegerField(_(u"Estimated TAQ"), blank=True, + null=True, help_text=_("Estimation of a \"Terminus Ante Quem\"")) + tpq = models.IntegerField(_(u"TPQ"), blank=True, null=True, + help_text=_("\"Terminus Post Quem\" the context record can't have been " + " created before this date")) + tpq_estimated = models.IntegerField(_(u"Estimated TPQ"), blank=True, + null=True, help_text=_("Estimation of a \"Terminus Post Quem\"")) history = HistoricalRecords() class Meta: - verbose_name = _(u"Registration Unit") - verbose_name_plural = _(u"Registration Units") + verbose_name = _(u"Context Record") + verbose_name_plural = _(u"Context Record") permissions = ( - ("view_own_registrationunit", ugettext(u"Can view own Registration Unit")), - ("add_own_registrationunit", ugettext(u"Can add own Registration Unit")), - ("change_own_registrationunit", ugettext(u"Can change own Registration Unit")), - ("delete_own_registrationunit", ugettext(u"Can delete own Registration Unit")), + ("view_own_contextrecord", ugettext(u"Can view own Context Record")), + ("add_own_contextrecord", ugettext(u"Can add own Context Record")), + ("change_own_contextrecord", ugettext(u"Can change own Context Record")), + ("delete_own_contextrecord", ugettext(u"Can delete own Context Record")), ) def __unicode__(self): @@ -585,8 +618,8 @@ class MaterialType(GeneralType): class BaseItem(BaseHistorizedItem, OwnPerms): label = models.CharField(_(u"Label"), max_length=60) description = models.TextField(_(u"Description")) - registration_unit = models.ForeignKey(RegistrationUnit, - verbose_name=_(u"Registration Unit")) + context_record = models.ForeignKey(ContextRecord, + verbose_name=_(u"Context Record")) is_isolated = models.BooleanField(_(u"Is isolated?")) documentations = models.ManyToManyField(Source) history = HistoricalRecords() |