Revision 85d444db snf-astakos-app/astakos/im/models.py

b/snf-astakos-app/astakos/im/models.py
85 85
DEFAULT_CONTENT_TYPE = None
86 86
_content_type = None
87 87

  
88
PENDING, APPROVED, REPLACED, UNKNOWN = 'Pending', 'Approved', 'Replaced', 'Unknown'
89

  
90 88
def get_content_type():
91 89
    global _content_type
92 90
    if _content_type is not None:
......
1353 1351

  
1354 1352

  
1355 1353
class ProjectApplication(models.Model):
1356

  
1354
    PENDING, APPROVED, REPLACED, UNKNOWN = 'Pending', 'Approved', 'Replaced', 'Unknown'
1357 1355
    applicant               =   models.ForeignKey(
1358 1356
                                    AstakosUser,
1359 1357
                                    related_name='projects_applied',
......
1390 1388
    comments                =   models.TextField(null=True, blank=True)
1391 1389
    issue_date              =   models.DateTimeField()
1392 1390

  
1393
    states_list =   [PENDING, APPROVED, REPLACED, UNKNOWN]
1394
    states      =   dict((k, v) for v, k in enumerate(states_list))
1395

  
1396 1391
    def add_resource_policy(self, service, resource, uplimit):
1397 1392
        """Raises ObjectDoesNotExist, IntegrityError"""
1398 1393
        q = self.projectresourcegrant_set
......
1436 1431
        self.applicant = applicant
1437 1432
        self.comments = comments
1438 1433
        self.issue_date = datetime.now()
1439
        self.state = PENDING
1434
        self.state = self.PENDING
1440 1435
        self.save()
1441 1436
        self.resource_policies = resource_policies
1442 1437

  
......
1465 1460
            raise AssertionError("NOPE")
1466 1461

  
1467 1462
        new_project_name = self.name
1468
        if self.state != PENDING:
1463
        if self.state != self.PENDING:
1469 1464
            m = _("cannot approve: project '%s' in state '%s'") % (
1470 1465
                    new_project_name, self.state)
1471 1466
            raise PermissionDenied(m) # invalid argument
......
1503 1498

  
1504 1499
        precursor = self.precursor_application
1505 1500
        while precursor:
1506
            precursor.state = REPLACED
1501
            precursor.state = self.REPLACED
1507 1502
            precursor.save()
1508 1503
            precursor = precursor.precursor_application
1509 1504

  
1510
        self.state = APPROVED
1505
        self.state = self.APPROVED
1511 1506
        self.save()
1512 1507

  
1513 1508

  

Also available in: Unified diff