in airavata_django_portal_sdk/experiment_util/api.py [0:0]
def _get_writeable_project(request, experiment):
# figure what project to clone into:
# 1) project of this experiment if writeable
# 2) else, first writeable project
project_id = experiment.projectId
if _can_write(request, project_id):
return project_id
user_projects = request.airavata_client.getUserProjects(
request.authz_token, settings.GATEWAY_ID, request.user.username, -1, 0)
for user_project in user_projects:
if _can_write(request, user_project.projectID):
return user_project.projectID
raise Exception(
"Could not find writeable project for user {} in "
"gateway {}".format(request.user.username, settings.GATEWAY_ID))