def send_confirm_email(self, user): tracking_code = email_service.confirm_email(user) log = EmailLog(user_id=user.id, type="confirm_email", tracking_code=tracking_code) db.session.add(log) db.session.commit()
def forgot_password(): request_data = request.get_json() email = request_data['email'] user = User.query.filter( func.lower(User.email) == email.lower()).first_or_404() tracking_code = email_service.reset_email(user) log = EmailLog(user_id=user.id, type="reset_email", tracking_code=tracking_code) db.session.add(log) db.session.commit() return ''
def approval_request(): request_data = request.get_json() user_id = request_data['user_id'] resource_id = request_data['resource_id'] resource = ThrivResource.query.filter_by(id=resource_id).first_or_404() # Get admins for the user's institution user = User.query.filter_by(id=user_id).first_or_404() admins = User.query.filter_by(role="Admin", institution_id=user.institution_id).all() # Send approval request email to each admin for the institution for admin in admins: tracking_code = email_service.approval_request_email(user, admin, resource) log = EmailLog(user_id=admin.id, type="approval_request", tracking_code=tracking_code) db.session.add(log) db.session.commit() # Send confirmation email to user confirm_tracking_code = email_service.approval_request_confirm_email(user, resource) confirm_log = EmailLog(user_id=user.id, type="approval_request_confirm", tracking_code=confirm_tracking_code) db.session.add(confirm_log) db.session.commit() return ''
def consult_request(): request_data = request.get_json() user_id = request_data['user_id'] user = User.query.filter_by(id=user_id).first_or_404() admins = User.query.filter_by(role="Admin", institution_id=user.institution_id).all() # Send consult request email to each admin for the institution for admin in admins: tracking_code = email_service.consult_email(user, admin, request_data) log = EmailLog(user_id=admin.id, type="consult_request", tracking_code=tracking_code) db.session.add(log) db.session.commit() return ''