Revision 7dd3047d snf-astakos-app/astakos/im/functions.py
b/snf-astakos-app/astakos/im/functions.py | ||
---|---|---|
431 | 431 |
except AstakosUser.DoesNotExist: |
432 | 432 |
raise IOError(_(astakos_messages.UNKNOWN_USER_ID) % user_id) |
433 | 433 |
|
434 |
def create_membership(project_application_id, user_id): |
|
434 |
def create_membership(project, user): |
|
435 |
if isinstance(project, int): |
|
436 |
project = get_project_by_application_id(project) |
|
437 |
if isinstance(user, int): |
|
438 |
user = get_user_by_id(user) |
|
439 |
m = ProjectMembership( |
|
440 |
project=project, |
|
441 |
person=user, |
|
442 |
request_date=datetime.now()) |
|
435 | 443 |
try: |
436 |
project = get_project_by_application_id(project_application_id) |
|
437 |
m = ProjectMembership( |
|
438 |
project=project, |
|
439 |
person=user_id, |
|
440 |
request_date=datetime.now()) |
|
444 |
m.save() |
|
441 | 445 |
except IntegrityError, e: |
442 | 446 |
raise IOError(_(astakos_messages.MEMBERSHIP_REQUEST_EXISTS)) |
443 | 447 |
else: |
444 |
m.save() |
|
445 | 448 |
return m |
446 | 449 |
|
447 | 450 |
def get_membership(project, user): |
... | ... | |
546 | 549 |
logger.error(e.message) |
547 | 550 |
return membership |
548 | 551 |
|
552 |
def enroll_member(project, user, request_user=None): |
|
553 |
membership = create_membership(project, user) |
|
554 |
accept_membership(project, user, request_user) |
|
555 |
|
|
549 | 556 |
def leave_project(project_application_id, user_id): |
550 | 557 |
""" |
551 | 558 |
Raises: |
Also available in: Unified diff