Пример #1
0
    def verify_phone():
        session.pop("phone_verify_id", None)
        session.pop("verified_phone", None)

        form = VerifyPhoneForm(csrf_enabled=False)

        if form.validate():

            while True:
                token = str(random.randint(100000, 999999))

                try:
                    # Make sure a random token doesn't exist yet
                    current_app.cdw.phoneverifications.with_token(token)
                except:
                    expires = datetime.datetime.utcnow() + datetime.timedelta(minutes=5)

                    phone = utils.normalize_phonenumber(form.phonenumber.data)

                    pva = PhoneVerificationAttempt(expires=expires, token=token, phoneNumber=phone)

                    current_app.cdw.phoneverifications.save(pva)
                    session["phone_verify_id"] = str(pva.id)

                    current_app.logger.debug("Saved phone number verification attempt: %s" % pva)

                    break  # out of the while loop

            try:
                config = current_app.config["CDW"]["twilio"]
                sender = config["switchboard_number"]
                current_app.twilio.send_message(pva.token, sender, [phone])
                return jsonify({"success": True})
            except Exception, e:
                return jsonify({"success": False, "error": "%s" % e})
Пример #2
0
    def verify_phone():
        session.pop('phone_verify_id', None)
        session.pop('verified_phone', None)

        form = VerifyPhoneForm(csrf_enabled=False)

        if form.validate():

            while (True):
                token = str(random.randint(100000, 999999))

                try:
                    # Make sure a random token doesn't exist yet
                    current_app.cdw.phoneverifications.with_token(token)
                except:
                    expires = (datetime.datetime.utcnow() +
                               datetime.timedelta(minutes=5))

                    phone = utils.normalize_phonenumber(form.phonenumber.data)

                    pva = PhoneVerificationAttempt(expires=expires,
                                                   token=token,
                                                   phoneNumber=phone)

                    current_app.cdw.phoneverifications.save(pva)
                    session['phone_verify_id'] = str(pva.id)

                    current_app.logger.debug(
                        'Saved phone number verification attempt: %s' % pva)

                    break  # out of the while loop

            try:
                config = current_app.config['CDW']['twilio']
                sender = config['switchboard_number']
                current_app.twilio.send_message(pva.token, sender, [phone])
                return jsonify({"success": True})
            except Exception, e:
                return jsonify({"success": False, "error": '%s' % e})
Пример #3
0
def validate_phonenumber(form, field):
    try:
        normalize_phonenumber(field.data)
    except InvalidPhoneNumberException, e:
        raise ValidationError("Invalid phone number: %s" % field.data)
Пример #4
0
def validate_phonenumber(form, field):
    try:
        normalize_phonenumber(field.data)
    except InvalidPhoneNumberException, e:
        raise ValidationError("Invalid phone number: %s" % field.data)