summaryrefslogtreecommitdiff
path: root/archaeological_operations/models.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2016-08-17 13:52:44 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2016-08-17 13:53:44 +0200
commita39de3c54cf2f76cd40dd83a0f780e8780267c0c (patch)
tree8c0b91b41ceb45dcfc72bb3ac8d55bc1b945089c /archaeological_operations/models.py
parent64380cbd4141966848695dc3a8ee52e0acee5e3c (diff)
downloadIshtar-a39de3c54cf2f76cd40dd83a0f780e8780267c0c.tar.bz2
Ishtar-a39de3c54cf2f76cd40dd83a0f780e8780267c0c.zip
Parcels: add public domain field - better management of parcel formsets (refs #2284)
Diffstat (limited to 'archaeological_operations/models.py')
-rw-r--r--archaeological_operations/models.py24
1 files changed, 17 insertions, 7 deletions
diff --git a/archaeological_operations/models.py b/archaeological_operations/models.py
index ff51f78e8..ec2a29f51 100644
--- a/archaeological_operations/models.py
+++ b/archaeological_operations/models.py
@@ -773,9 +773,11 @@ class Parcel(LightHistorizedItem):
year = models.IntegerField(_(u"Year"), blank=True, null=True)
town = models.ForeignKey(Town, related_name='parcels',
verbose_name=_(u"Town"))
- section = models.CharField(_(u"Section"), max_length=4)
+ section = models.CharField(_(u"Section"), max_length=4,
+ null=True, blank=True)
parcel_number = models.CharField(_(u"Parcel number"), max_length=6,
null=True, blank=True)
+ public_domain = models.BooleanField(_(u"Public domain"), default=False)
external_id = models.CharField(_(u"External ID"), max_length=100,
null=True, blank=True)
auto_external_id = models.BooleanField(
@@ -789,9 +791,11 @@ class Parcel(LightHistorizedItem):
@property
def short_label(self):
- return settings.JOINT.join(
- [unicode(item) for item in [self.section, self.parcel_number]
- if item])
+ items = [unicode(item) for item in [self.section, self.parcel_number]
+ if item]
+ if self.public_domain:
+ items.append(unicode(_(u"Public domain")))
+ return settings.JOINT.join(items)
def __unicode__(self):
return self.short_label
@@ -832,9 +836,15 @@ class Parcel(LightHistorizedItem):
if not idx:
grouped.append(parcel)
grouped[-1].parcel_numbers = []
- grouped[-1].parcel_numbers.append(
- u"0" * (12 - len(parcel.parcel_number)) +
- parcel.parcel_number)
+ nb = ""
+ if parcel.parcel_number:
+ nb = u"0" * (12 - len(parcel.parcel_number)) + \
+ parcel.parcel_number
+ if parcel.public_domain:
+ if nb:
+ nb += " "
+ nb += unicode(_(u"Public domain"))
+ grouped[-1].parcel_numbers.append(nb)
grouped[-1].parcel_numbers.sort()
grouped[-1].parcel_numbers = [strip_zero(nb)
for nb in grouped[-1].parcel_numbers]