summaryrefslogtreecommitdiff
path: root/ishtar/furnitures/models.py
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar/furnitures/models.py')
-rw-r--r--ishtar/furnitures/models.py61
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()