def leave_project(request, project_id): volunteer_relation = VolunteerRelation.objects.filter( project_id=project_id, volunteer_id=request.user.id).first() if request.user.id == volunteer_relation.volunteer.id: body = json.loads(request.body) message = body['departure_message'] if len(message) > 0: email_template = HtmlEmailTemplate()\ .paragraph('{volunteer_name} is leaving {project_name} for the following reason:'.format( volunteer_name=volunteer_relation.volunteer.full_name(), project_name=volunteer_relation.project.project_name))\ .paragraph('\"{message}\"'.format(message=message)) else: email_template = HtmlEmailTemplate() \ .paragraph('{volunteer_name} is leaving {project_name} for unspecified reasons.'.format( volunteer_name=volunteer_relation.volunteer.full_name(), project_name=volunteer_relation.project.project_name)) email_subject = '{volunteer_name} is leaving {project_name}'.format( volunteer_name=volunteer_relation.volunteer.full_name(), project_name=volunteer_relation.project.project_name) send_to_project_owners(project=volunteer_relation.project, sender=volunteer_relation.volunteer, subject=email_subject, template=email_template) update_project_timestamp(request, volunteer_relation.project) volunteer_relation.delete() return HttpResponse(status=200) else: raise PermissionDenied()
def contact_project_owner(request, project_id): if not request.user.is_authenticated(): return HttpResponse(status=401) user = get_request_contributor(request) if not user.email_verified: return HttpResponse(status=403) body = json.loads(request.body) message = body['message'] project = Project.objects.get(id=project_id) email_subject = '{firstname} {lastname} would like to connect with {project}'.format( firstname=user.first_name, lastname=user.last_name, project=project.project_name) email_template = HtmlEmailTemplate(use_signature=False)\ .paragraph('\"{message}\" - {firstname} {lastname}'.format( message=message, firstname=user.first_name, lastname=user.last_name))\ .paragraph('To contact this person, email them at {email}'.format(email=user.email)) send_to_project_owners(project=project, sender=user, subject=email_subject, template=email_template) return HttpResponse(status=200)
def contact_project_owner(request, project_id): if not request.user.is_authenticated(): return HttpResponse(status=401) user = get_request_contributor(request) if not user.email_verified: return HttpResponse(status=403) body = json.loads(request.body) message = body['message'] project = Project.objects.get(id=project_id) email_subject = '{firstname} {lastname} would like to connect with {project}'.format( firstname=user.first_name, lastname=user.last_name, project=project.project_name) email_body = '{message} \n -- \n To contact this person, email {user}'.format(message=message, user=user.email) send_to_project_owners(project=project, sender=user, subject=email_subject, body=email_body) return HttpResponse(status=200)
def leave_project(request, project_id): volunteer_relation = VolunteerRelation.objects.filter(project_id=project_id, volunteer_id=request.user.id).first() if request.user.id == volunteer_relation.volunteer.id: body = json.loads(request.body) message = body['departure_message'] email_body = '{volunteer_name} is leaving {project_name} for the following reason:\n{message}'.format( volunteer_name=volunteer_relation.volunteer.full_name(), project_name=volunteer_relation.project.project_name, message=message) email_subject = '{volunteer_name} is leaving {project_name}'.format( volunteer_name=volunteer_relation.volunteer.full_name(), project_name=volunteer_relation.project.project_name) send_to_project_owners(project=volunteer_relation.project, sender=volunteer_relation.volunteer, subject=email_subject, body=email_body) volunteer_relation.update_project_timestamp() volunteer_relation.delete() return HttpResponse(status=200) else: raise PermissionDenied()