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 | dd005db8c38c1139c33a5f3b8b9e3e1556b28b38 (patch) | |
| tree | e702a5e335c4366a1e27499a4db51e31b7f5c7b7 /ishtar_common/models.py | |
| parent | c6f301b76291d2f416f6a641fe92b03cd10076a7 (diff) | |
| parent | b3c5ce577b925da4022f21ccdf8d138486557450 (diff) | |
| download | Ishtar-dd005db8c38c1139c33a5f3b8b9e3e1556b28b38.tar.bz2 Ishtar-dd005db8c38c1139c33a5f3b8b9e3e1556b28b38.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):  | 
