diff options
Diffstat (limited to 'ishtar/ishtar_base/models.py')
-rw-r--r-- | ishtar/ishtar_base/models.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/ishtar/ishtar_base/models.py b/ishtar/ishtar_base/models.py index caa67a513..41979129b 100644 --- a/ishtar/ishtar_base/models.py +++ b/ishtar/ishtar_base/models.py @@ -356,6 +356,27 @@ class LightHistorizedItem(BaseHistorizedItem): super(LightHistorizedItem, self).save(*args, **kwargs) return True +class Wizard(models.Model): + url_name = models.CharField(_(u"URL name"), max_length=128, unique=True) + class Meta: + verbose_name = _(u"Wizard") + ordering = ['url_name'] + + def __unicode__(self): + return unicode(self.url_name) + +class WizardStep(models.Model): + order = models.IntegerField(_(u"Order")) + wizard = models.ForeignKey(Wizard, verbose_name=_(u"Wizard")) + url_name = models.CharField(_(u"URL name"), max_length=128) + name = models.CharField(_(u"Label"), max_length=128) + class Meta: + verbose_name = _(u"Wizard step") + ordering = ['wizard', 'order'] + + def __unicode__(self): + return u"%s » %s" % (unicode(self.wizard), unicode(self.name)) + class UserDashboard: def __init__(self): types = IshtarUser.objects.values('person__person_type', @@ -1071,6 +1092,7 @@ class Organization(Address, OwnPerms): return self.name class PersonType(GeneralType): + rights = models.ManyToManyField(WizardStep, verbose_name=_(u"Rights")) class Meta: verbose_name = _(u"Person type") verbose_name_plural = _(u"Person types") |