def join_project(data, request_user): project_id = data.get("project") if not isinstance(project_id, (basestring, int)): raise faults.BadRequest("Invalid project ID: %s" % project_id) with ExceptionHandler(): membership = functions.join_project(project_id, request_user) response = {"id": membership.id} return json_response(response)
def project_join(request, project_uuid): project = get_object_or_404(Project, uuid=project_uuid) with ExceptionHandler(request): with transaction.atomic(): membership = join_project(project_uuid, request.user) if membership.state != membership.REQUESTED: m = _(astakos_messages.USER_JOINED_PROJECT) else: m = _(astakos_messages.USER_JOIN_REQUEST_SUBMITTED) messages.success(request, m) return redirect_to_next(request, 'project_detail', args=(project.uuid, ))
def project_join(request, project_uuid): project = get_object_or_404(Project, uuid=project_uuid) with ExceptionHandler(request): with transaction.commit_on_success(): membership = join_project(project_uuid, request.user) if membership.state != membership.REQUESTED: m = _(astakos_messages.USER_JOINED_PROJECT) else: m = _(astakos_messages.USER_JOIN_REQUEST_SUBMITTED) messages.success(request, m) return redirect_to_next(request, 'project_detail', args=(project.uuid,))
def _project_join(request, chain_id): try: chain_id = int(chain_id) membership = join_project(chain_id, request.user) if membership.state != membership.REQUESTED: m = _(astakos_messages.USER_JOINED_PROJECT) else: m = _(astakos_messages.USER_JOIN_REQUEST_SUBMITTED) messages.success(request, m) except ProjectError as e: messages.error(request, e)
def _project_join(request, chain_id): try: chain_id = int(chain_id) auto_accepted = join_project(chain_id, request.user) if auto_accepted: m = _(astakos_messages.USER_JOINED_PROJECT) else: m = _(astakos_messages.USER_JOIN_REQUEST_SUBMITTED) messages.success(request, m) except (IOError, PermissionDenied), e: messages.error(request, e)
def join(proj_id, user): return join_project(proj_id, user)
def join(proj_id, user_id): join_project(proj_id, get_user_by_id(user_id))
def join_project(data, request_user): project_id = data.get("project") with ExceptionHandler(): membership = functions.join_project(project_id, request_user) response = {"id": membership.id} return json_response(response)