def activate_invite(token):
    password = request.form['password']
    Invite.activate(token, password)

    response_data = create_response_data(
        "Success!",
        200
    )
    return jsonify(response_data), response_data['status_code']
예제 #2
0
    def test_activate_email_invite(self):
        inviter = self._sample_user()
        invite = Invite.create("*****@*****.**", inviter.id)

        with self.app_context:
            invite.save()
            Invite.activate(invite.token, "pass")
            user = User.get_by_email(invite.email)
            self.assertIsNotNone(user)
            self.assertEqual(user.email, invite.email)
            User.remove(user.id)
            Group.remove_member(invite.inviter_id, user.id)
예제 #3
0
def add_member_to_group(group_id):
    log("Adding member to group...")
    user_id = request.json.get('user_id')
    user_email = request.json.get('email')

    log("Going to check e-mail and user id...")

    if user_email != "" and user_email is not None and Utils.email_is_valid(
            user_email):
        user = User.get_by_email(user_email)
        if user is not None:
            log("Email: Adding {} to group {}".format(user_email, group_id))
            Group.add_member(group_id, user.id)
        else:
            invite = Invite.create(user_email, g.user.id)
            invite.save()
            invite.send()
    else:
        if user_id != "" and user_id is not None:
            log("ID: Adding {} to group {}".format(user_id, group_id))
            Group.add_member(group_id, user_id)
        else:
            response_data = Utils.create_response_error(
                "InternalServerError",
                "The server could not fulfil your request", 500)
            return jsonify(response_data), response_data['status_code']

    response_data = Utils.create_response_data(
        Group.get_by_id(group_id).to_dict(), 200)
    return jsonify(response_data), response_data['status_code']
예제 #4
0
    def test_create_email_invite(self):
        inviter = self._sample_user()
        invite = Invite.create("*****@*****.**", inviter.id)

        self.assertEqual(invite.email, "*****@*****.**")
        self.assertEqual(invite.inviter_id, inviter.id)
        self.assertIsNotNone(invite.token)
        self.assertIsNotNone(invite.created_date)
        self.assertTrue(invite.pending)
예제 #5
0
def confirm(token):
    log("Starting confirmation...")
    invite = Invite.get_by_token(token)
    log("Inviter ID: {}".format(invite.inviter_id))
    inviter = User.get_by_id(invite.inviter_id)
    log("Invited by: {}".format(inviter.email))

    try:
        return render_template('invite.html',
                               email=invite.email,
                               token=token,
                               inviter_email=inviter.email), 200
    except jinja2.TemplateNotFound:
        response_data = Utils.create_response_error(
            "InternalServerError", "The server could not display the template",
            500)
        return jsonify(response_data), response_data['status_code']
def confirm(token):
    log("Starting confirmation...")
    invite = Invite.get_by_token(token)
    log("Inviter ID: {}".format(invite.inviter_id))
    inviter = User.get_by_id(invite.inviter_id)
    log("Invited by: {}".format(inviter.email))

    try:
        return render_template('invite.html',
                               email=invite.email,
                               token=token,
                               inviter_email=inviter.email), 200
    except Exception:
        type, ex, trace = sys.exc_info()
        loggerObject.error(path + " | " + os.path.join(path, '../../app/templates/'))
        loggerObject.error(type)
        loggerObject.error(ex.message)
        response_data = create_response_error(
            "InternalServerError",
            "The server could not display the template",
            500
        )
        return jsonify(response_data), response_data['status_code']