示例#1
0
def mail(request, token_object):
    #token_object = token(request)
    access_token = token_object[0]
    current_user = token_object[1]
    print "access_token : " + str(access_token)
    print "current_user : " + str(current_user)
    # If there is no token in the session, redirect to home
    current_user_obj = Users.objects.get(email=current_user)
    if not access_token:
        return HttpResponseRedirect(reverse('oauth:home'))
    else:
        message = get_my_messages(access_token)
        time_now = datetime.datetime.utcnow()
        for i in range(10):
            todo = Emails()
            todo.username = current_user_obj
            rt = message['value'][i]['receivedDateTime']
            rt_dt = datetime.datetime(int(rt[0:4]),
                                      int(rt[5:7]), int(rt[8:10]),
                                      int(rt[11:13]), int(rt[14:16]),
                                      int(rt[17:19]), 0, pytz.UTC)
            if (rt_dt > current_user_obj.lastchecked):
                todo.receivedDateTime = rt_dt
                todo.title = message['value'][i]['body']['content']
                todo.date = rt_dt.date()
                todo.start_time = rt_dt.time()
                todo.end_time = rt_dt.time()
                todo.save()
        current_user_obj.lastchecked = datetime.datetime.utcnow()
        current_user_obj.save()
        return current_user
示例#2
0
def verify(request):
    if "email_added" not in request.session:
        request.session['email_added'] = False
    if request.method == "POST":
        if Emails.objects.email_validation(request.POST['email']):
            d = Emails(email = request.POST['email'])
            d.save()
            request.session['email_added'] = True
            request.session['email'] = request.POST['email']
            return redirect('/success')
        else:
            print "{} invalid!".format(request.POST['email'])
            request.session['error'] = True
            request.session['email'] = request.POST['email']
            return redirect('/')
示例#3
0
def emails():
    if request.method == "POST":
        message = Emails(emails=request.form['ss'])
        db.session.add(message)
        db.session.commit()
        flash('Your request was successful!', 'success')
    return redirect(url_for('index'))
示例#4
0
def save_email():
    req_data = request.form

    # check request with params
    if req_data:
        event_id = req_data['event_id']
        email_subject = req_data['email_subject']
        email_content = req_data['email_content']
        timestamp = datetime.strptime(req_data['timestamp'], '%d-%m-%Y %H:%M')

        emails = Emails(event_id=event_id,
                        email_subject=email_subject,
                        email_content=email_content,
                        timestamp=timestamp)
        db.session.add(emails)
        db.session.commit()
        print(event_id, email_subject, email_content, timestamp)
    else:
        raise BadRequest()

    response = {
        "status_code": 200,
        "message": "successful",
    }

    return jsonify(response)
示例#5
0
def model_create(user_dict):
    """prepare data for primary table extracting from form"""
    user = Users(username=user_dict["username"], password=user_dict["password"])
    """add and commit data to user table"""
    db.session.add(user)
    db.session.commit()
    """prepare data for related tables extracting from form and using new UserID """
    userid = db.session.query(func.max(Users.UserID))
    email = Emails(email_address=user_dict["email"], UserID=userid)
    phone_number = PhoneNumbers(phone_number=user_dict["phone_number"], UserID=userid)
    """email table add and commit"""
    db.session.add(email)
    db.session.commit()
    """phone number table add and commit"""
    db.session.add(phone_number)
    db.session.commit()
示例#6
0
def model_update(user_dict):
    """fetch userid"""
    userid = user_dict["userid"]
    """update email in table from data in form if it exists, insert if not"""
    if Emails.query.filter_by(UserID=userid).first() is not None:
        db.session.query(Emails).filter_by(UserID=userid).update({Emails.email_address: user_dict["email"]})
    else:
        email = Emails(email_address=user_dict["email"], UserID=userid)
        db.session.add(email)
    """update phone number in table from data in form"""
    if PhoneNumbers.query.filter_by(UserID=userid).first() is not None:
        db.session.query(PhoneNumbers).filter_by(UserID=userid).update(
            {PhoneNumbers.phone_number: user_dict["phone_number"]})
    else:
        phone_number = PhoneNumbers(phone_number=user_dict["phone_number"], UserID=userid)
        db.session.add(phone_number)

    """commit changes to database"""
    db.session.commit()
示例#7
0
def create():
    if request.form:
        """prepare data for primary table extracting from form"""
        user = Users(username=request.form.get("username"),
                     password=request.form.get("password"))
        """add and commit data to user table"""
        db.session.add(user)
        db.session.commit()
        """prepare data for related tables extracting from form and using new UserID """
        userid = db.session.query(func.max(Users.UserID))
        email = Emails(email_address=request.form.get("email"), UserID=userid)
        phone_number = PhoneNumbers(
            phone_number=request.form.get("phone_number"), UserID=userid)
        """email table add and commit"""
        db.session.add(email)
        db.session.commit()
        """phone number table add and commit"""
        db.session.add(phone_number)
        db.session.commit()
    return redirect(url_for('pythondb_bp.databases'))
    def post(self, key):
        """Worker that runs in the 'background'"""
        # Get the object from the database
        email = Emails.get(key)

        # Construct a appengine.api.mail object
        message = mail.EmailMessage()
        message.sender = "Your Name <[email protected]>"
        message.to = email.to
        message.subject = email.subject

        # Set text and html body
        message.body = email.body_text
        message.html = email.body_html

        # Send. Important: Sometimes emails fail to send, which will throw an
        # exception and end the function there. Next round tries again.
        message.send()

        # Now the message was sent and we can safely delete it.
        email.delete()
    def post(self, key):
        """Worker that runs in the 'background'"""
        # Get the object from the database
        email = Emails.get(key)

        # Construct a appengine.api.mail object
        message = mail.EmailMessage()
        message.sender = "Your Name <[email protected]>"
        message.to = email.to
        message.subject = email.subject

        # Set text and html body
        message.body = email.body_text
        message.html = email.body_html

        # Send. Important: Sometimes emails fail to send, which will throw an
        # exception and end the function there. Next round tries again.
        message.send()

        # Now the message was sent and we can safely delete it.
        message.delete()
示例#10
0
def update():
    if request.form:
        """fetch userid"""
        userid = request.form.get("ID")
        """update email in table from data in form if it exists, insert if not"""
        if Emails.query.filter_by(UserID=userid).first() is not None:
            db.session.query(Emails).filter_by(UserID=userid).update(
                {Emails.email_address: request.form.get("email")})
        else:
            email = Emails(email_address=request.form.get("email"),
                           UserID=userid)
            db.session.add(email)
        """update phone number in table from data in form"""
        if PhoneNumbers.query.filter_by(UserID=userid).first() is not None:
            db.session.query(PhoneNumbers).filter_by(UserID=userid).update(
                {PhoneNumbers.phone_number: request.form.get("phone_number")})
        else:
            phone_number = PhoneNumbers(
                phone_number=request.form.get("phone_number"), UserID=userid)
            db.session.add(phone_number)
        """commit changes to database"""
        db.session.commit()
    return redirect(url_for('pythondb_bp.databases'))