Revision a5aa11ee snf-astakos-app/astakos/im/functions.py
b/snf-astakos-app/astakos/im/functions.py | ||
---|---|---|
513 | 513 |
if not membership.check_action("enroll"): |
514 | 514 |
m = _(astakos_messages.MEMBERSHIP_ACCEPTED) |
515 | 515 |
raise ProjectConflict(m) |
516 |
membership.perform_action("join", actor=request_user, reason=reason)
|
|
516 |
membership.perform_action("enroll", actor=request_user, reason=reason)
|
|
517 | 517 |
except ProjectNotFound: |
518 |
membership = new_membership(project, user, actor=request_user) |
|
518 |
membership = new_membership(project, user, actor=request_user, |
|
519 |
enroll=True) |
|
519 | 520 |
|
520 |
membership.perform_action("accept", actor=request_user, reason=reason) |
|
521 | 521 |
qh_sync_user(user) |
522 | 522 |
logger.info("User %s has been enrolled in %s." % |
523 | 523 |
(membership.person.log_display, project)) |
... | ... | |
599 | 599 |
return m.check_action("join") |
600 | 600 |
|
601 | 601 |
|
602 |
def new_membership(project, user, actor=None, reason=None): |
|
603 |
m = ProjectMembership.objects.create(project=project, person=user) |
|
604 |
m._log_create(None, ProjectMembership.REQUESTED, actor=actor, |
|
605 |
reason=reason) |
|
602 |
def new_membership(project, user, actor=None, reason=None, enroll=False): |
|
603 |
state = (ProjectMembership.ACCEPTED if enroll |
|
604 |
else ProjectMembership.REQUESTED) |
|
605 |
m = ProjectMembership.objects.create( |
|
606 |
project=project, person=user, state=state) |
|
607 |
m._log_create(None, state, actor=actor, reason=reason) |
|
606 | 608 |
return m |
607 | 609 |
|
608 | 610 |
|
Also available in: Unified diff