Revision 673f8f42 snf-astakos-app/astakos/im/models.py

b/snf-astakos-app/astakos/im/models.py
1669 1669
        project.name = new_project_name
1670 1670
        project.application = self
1671 1671
        project.last_approval_date = now
1672
        if not new_project:
1673
            project.is_modified = True
1674 1672

  
1675 1673
        project.save()
1676 1674

  
......
1760 1758
        q = self.model.Q_DEACTIVATED
1761 1759
        return self.filter(q)
1762 1760

  
1763
    def modified_projects(self):
1764
        return self.filter(is_modified=True)
1765

  
1766 1761
    def expired_projects(self):
1767 1762
        q = (~Q(state=Project.TERMINATED) &
1768 1763
              Q(application__end_date__lt=datetime.now()))
......
1805 1800
    SUSPENDED   = 10
1806 1801
    TERMINATED  = 100
1807 1802

  
1808
    is_modified                 =   models.BooleanField(default=False,
1809
                                                        db_index=True)
1810
    is_active                   =   models.BooleanField(default=True,
1811
                                                        db_index=True)
1812 1803
    state                       =   models.IntegerField(default=APPROVED,
1813 1804
                                                        db_index=True)
1814 1805

  
......
1877 1868
                 self.deactivation_date]
1878 1869
        return any([date > now for date in dates])
1879 1870

  
1880
    def is_active_strict(self):
1881
        return self.is_active and self.state == self.APPROVED
1882

  
1883 1871
    def is_approved(self):
1884 1872
        return self.state == self.APPROVED
1885 1873

  
......
2024 2012

  
2025 2013
    state               =   models.IntegerField(default=REQUESTED,
2026 2014
                                                db_index=True)
2027
    is_pending          =   models.BooleanField(default=False, db_index=True)
2028
    is_active           =   models.BooleanField(default=False, db_index=True)
2029
    application         =   models.ForeignKey(
2030
                                ProjectApplication,
2031
                                null=True,
2032
                                related_name='memberships')
2033
    pending_application =   models.ForeignKey(
2034
                                ProjectApplication,
2035
                                null=True,
2036
                                related_name='pending_memberships')
2037
    pending_serial      =   models.BigIntegerField(null=True, db_index=True)
2038

  
2039 2015
    acceptance_date     =   models.DateField(null=True, db_index=True)
2040 2016
    leave_request_date  =   models.DateField(null=True)
2041 2017

  

Also available in: Unified diff