def post(self): """ Ajax call to send an invitation on behalf of a user. path: /account/quick-send-initation """ current_user_obj = self.get_current_user_object() if current_user_obj.invitation_count < 0: #free day return self.write({'error': 'No invitations left'}) email_address = self.get_argument('email_address', None) if not email_address: return self.write({'error': 'You need to specify an email.'}) if not email_re.match(email_address): return self.write({'error': 'That email doesn\'t look right.'}) Invitation.create_for_email(email_address, current_user_obj.id) current_user_obj.invitation_count = current_user_obj.invitation_count - 1 current_user_obj.save() message = "<p>You've sent invitations to:</p> <ul>" for invitation in Invitation.by_user(current_user_obj): message += "<li>%s</li>" % invitation.email_address message += "</ul>" return self.write({ 'response': 'ok', 'count': current_user_obj.invitation_count, 'message': message })