Revision b6fe8bb8 snf-astakos-app/astakos/im/functions.py

b/snf-astakos-app/astakos/im/functions.py
66 66
from astakos.im.notifications import build_notification, NotificationError
67 67
from astakos.im.models import (
68 68
    AstakosUser, ProjectMembership, ProjectApplication, Project,
69
    trigger_sync)
69
    trigger_sync, PendingMembershipError)
70 70
from astakos.im.models import submit_application as models_submit_application
71 71
from astakos.im.project_notif import (
72 72
    membership_change_notify,
......
434 434
    if isinstance(user, int):
435 435
        user = get_user_by_id(user)
436 436
    try:
437
        return ProjectMembership.objects.select_for_update().get(
438
            project=project,
439
            person=user)
437
        sfu = ProjectMembership.objects.select_for_update()
438
        m = sfu.get(project=project, person=user)
439
        if m.is_pending:
440
            raise PendingMembershipError()
441
        return m
440 442
    except ProjectMembership.DoesNotExist:
441 443
        raise IOError(_(astakos_messages.NOT_MEMBERSHIP_REQUEST))
442 444

  

Also available in: Unified diff