diff options
author | Étienne Loks <etienne.loks@peacefrogs.net> | 2013-12-14 23:52:13 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@peacefrogs.net> | 2013-12-14 23:52:13 +0100 |
commit | ccb709bfa5d06737e70c171202ba85aa5410194c (patch) | |
tree | e702a5e335c4366a1e27499a4db51e31b7f5c7b7 /ishtar_common/models.py | |
parent | 9b3ede3e6d5d2b076975c188454a39c2b45d155d (diff) | |
parent | 1a1040243a10366b01b9bc2c4d3140f2fbd321e4 (diff) | |
download | Ishtar-ccb709bfa5d06737e70c171202ba85aa5410194c.tar.bz2 Ishtar-ccb709bfa5d06737e70c171202ba85aa5410194c.zip |
Merge branch 'master' of lysithea.proxience.net:/home/proxience/git/ishtar
Diffstat (limited to 'ishtar_common/models.py')
-rw-r--r-- | ishtar_common/models.py | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/ishtar_common/models.py b/ishtar_common/models.py index aacc9f2d0..76ffb761f 100644 --- a/ishtar_common/models.py +++ b/ishtar_common/models.py @@ -76,6 +76,15 @@ class ValueGetter(object): values[prefix + field_name] = value return values + @classmethod + def get_empty_values(cls, prefix=''): + if not prefix: + prefix = self._prefix + values = {} + for field_name in cls._meta.get_all_field_names(): + values[prefix + field_name] = '' + return values + class HistoricalRecords(BaseHistoricalRecords): def create_historical_record(self, instance, type): history_modifier = getattr(instance, 'history_modifier', None) @@ -650,7 +659,7 @@ class DocumentTemplate(models.Model): def publish(self, c_object): tempdir = tempfile.mkdtemp("-ishtardocs") output_name = tempdir + os.path.sep + \ - self.name.replace(' ', '_').lower() + u'-' +\ + slugify(self.name.replace(' ', '_').lower()) + u'-' +\ datetime.date.today().strftime('%Y-%m-%d') +\ u"." + self.template.name.split('.')[-1] missing = ooo_replace(self.template, output_name, c_object.get_values()) @@ -691,7 +700,7 @@ class OrganizationType(GeneralType): verbose_name_plural = _(u"Organization types") ordering = ('label',) -class Organization(Address, OwnPerms): +class Organization(Address, OwnPerms, ValueGetter): name = models.CharField(_(u"Name"), max_length=100) organization_type = models.ForeignKey(OrganizationType, verbose_name=_(u"Type")) @@ -753,6 +762,13 @@ class Person(Address, OwnPerms, ValueGetter) : if getattr(self, attr)] return u" ".join(values) + def get_values(self, prefix=''): + values = super(Person, self).get_values(prefix=prefix) + values[prefix+'title'] = dict(self.TYPE)[self.title] + if not self.attached_to: + values.update(Person.get_empty_values(prefix=prefix + 'attached_to_')) + return values + person_types_list_lbl = _(u"Types") @property def person_types_list(self): |