Esempio n. 1
0
def user_blog(user_id=None):
    if user_id is not None:
        user = User.get_by_id(user_id)
    else:
        user = User.get_by_email(session['email'])
    blogs = user.get_blogs()
    return render_template('user_blog.html', blogs=blogs, user_email = session['email'])
Esempio n. 2
0
def user_blogs(user_id=None):
    if user_id is not None:
        user = User.get_by_id(user_id)
    else:
        user = User.get_by_email(session['email'])
    blogs = user.get_blogs()
    return render_template("user_blogs.html", blogs=blogs, email=user.email)
Esempio n. 3
0
def user_blogs(user_id=None):
    if user_id is not None:
        user = User.get_by_id(user_id)
    else:
        user = User.get_by_email(session['email'])
    blogs = user.get_blogs()
    return render_template('user_blogs.html', blogs=blogs, email=user.email)
Esempio n. 4
0
    def get(self):
        if not self.request.get('code'):
            redirect_url = self.request.get(
                'target') or self.request.referer or '/'
            self.redirect('/authenticate?' +
                          urllib.urlencode({
                              'callback': self.request.path,
                              'handler_data': redirect_url,
                          }))
            return

        OAuthBaseHandler.GetTokenFromCode(self)
        if not self.auth_token:
            return

        response = self.GetWcaApi('/api/v0/me')

        wca_info = json.loads(response)['me']
        self.session['wca_account_number'] = wca_info['id']
        self.session['login_time'] = (
            datetime.datetime.now() -
            datetime.datetime.utcfromtimestamp(0)).total_seconds()
        user = User.get_by_id(wca_info['id']) or User(id=wca_info['id'])
        user.FromDict(json.dumps(wca_info))

        user.last_login = datetime.datetime.now()
        user.put()

        self.redirect(str(self.handler_data))
Esempio n. 5
0
def delete_account(user_id):

    user = User.get_by_id(user_id)
    User.delete_user(user_id)

    images = Image.images_from_mongo(user.username)
    Image.delete_images(user.username)

    # delete images from folder
    for image in images:
        target = os.path.join(APP_ROOT,
                              'static/images/{}'.format(image.filename))
        os.remove(target)

    # delete the profile_pic as well
    if user.profile_image != 'Anonyymi.jpeg':
        target2 = os.path.join(
            APP_ROOT, "static/profile_pics/{}".format(user.profile_image))
        os.remove(target2)

    # log out
    session.clear()
    logout_user()

    flash('Your account and all images associated with it are now deleted',
          "success")
    return render_template("home.html", images=all_images())
Esempio n. 6
0
def author_blogs(author_id, ):
    user = User.get_by_id(author_id)
    user_email = User.get_by_email(session['email'])
    user_blogs = user_email.get_blogs()
    blogs = user.get_blogs()
    return render_template('user_author_blogs.html',
                           blogs=blogs,
                           user_blogs=user_blogs)
Esempio n. 7
0
def user_blogs(user_id=None):
    if user_id:
        user = User.get_by_id(user_id)
    else:
        user = User.get_by_email(session['email'])
    blogs = user.get_blogs()

    return render_template('user_blogs.html', email=user.email, blogs=blogs)
Esempio n. 8
0
def user_blogs(user_id=None):
    """ Get the blog of a particular user """
    if user_id is not None:
        user = User.get_by_id(user_id)
    else:
        user = User.get_by_email(session['email'])
    blogs = user.get_blogs()

    return render_template("user_blogs.html", blogs=blogs, email=user.email)
Esempio n. 9
0
def user_goals(user_id=None):
    if user_id is not None:
        user = User.get_by_id(user_id)
    else:
        user = User.get_by_email(session['email'])

    goals = user.get_goal(user._id)

    return render_template("goals.html", goals=goals, email=user.email)
Esempio n. 10
0
def user_dailys(user_id=None):
    if user_id is not None:
        user = User.get_by_id(user_id)
    else:
        user = User.get_by_email(session['email'])

    dailys = user.get_daily(user._id)

    return render_template("dailys.html", dailys=dailys, email=user.email)
Esempio n. 11
0
def user_blogs(user_id=None):
    if user_id is not None:
        user = User.get_by_id(user_id)  # find the user with submitted id
    else:
        user = User.get_by_email(session['email'])

    blogs = user.get_blogs()  # get user's blogs

    return render_template("user_blogs.html", blogs=blogs, email=user.email)
Esempio n. 12
0
def user_blogs(user_id=None):
    """Show user's blogs on navigation to the blogs page"""
    if user_id is not None:
        user = User.get_by_id(user_id)
    else:
        user = User.get_by_email(session['email'])
    blogs = user.get_blogs()

    return render_template('user_blogs.html', blogs=blogs, email=user.email)
Esempio n. 13
0
def user_blogs(user_id=None):
    if user_id is not None:
        user = User.get_by_id(user_id)
    else:
        user = User.get_by_email(session["email"])
    blogs = user.get_blogs()

    return render_template("user_blogs.html",
                           blogs=blogs,
                           first_name=user.first_name)
Esempio n. 14
0
def logout_user(user_id=None):
    """Logout the user"""
    if user_id is not None:
        user = User.get_by_id(user_id)
    else:
        user = User.get_by_email(session['email'])

    user.logout()

    render_template('logout.html')
Esempio n. 15
0
def user_blogs(user_id=None):
    print("asdf")
    if user_id is not None:
        user = User.get_by_id(user_id)
    else:
        user = User.get_by_email(session['email'])

    blogs = user.get_blogs()
    print("blogs: ", blogs)
    print("user.email: ", user.email)
    return render_template('user_blogs.html', blogs=blogs, email=user.email)
Esempio n. 16
0
def user_blogs(user_id=None):
    print "user_id is " + str(
        user_id) + "session[email] is: " + session['email']
    if user_id is not None:
        user = User.get_by_id(user_id)
    else:
        print "Getting User class by session email!!!"
        user = User.get_by_email(session['email'])

    blogs = user.get_blogs()
    return render_template("user_blogs.html", blogs=blogs, email=user.email)
Esempio n. 17
0
def user_blogs_list(user_id=None):
    # Note: This breaks if a user is not logged in

    if user_id is None:
        user = User.get_by_email(session["email"])
    else:
        user = User.get_by_id(user_id)
    blogs = user.get_blogs() # A list of Blog objects
    email = user.email

    return render_template("user_blogs.html", blogs=blogs, email=email)
Esempio n. 18
0
def user_blogs(user_id=None):
    if request.method == 'POST':
        return redirect(url_for('user_blogs'))

    if user_id is not None:
        user = User.get_by_id(user_id)
    else:
        user = User.get_by_email(session['email'])

    blogs = user.get_blogs()

    return render_template('user_blogs.html', blogs=blogs, email=user.email)
Esempio n. 19
0
def user_blogs(user_id=None):
    if user_id is not None:
        user = User.get_by_id(user_id)
    else:
        user = User.get_by_email(email=session['email'])


#        user = User.get_by_email("*****@*****.**")

    blogs = user.get_blogs()

    return render_template('user_blogs.html', blogs=blogs, email=user.email)
Esempio n. 20
0
def user_blogs(user_id=None):
    if user_id is not None:
        # find user with a specific id
        user = User.get_by_id(user_id)
    else:
        user = User.get_by_email(session['email'])

    # get the blogs written by the user
    blogs = user.get_blogs()

    # render a template with blogs as a parameter, to display a list of blogs
    return render_template("user_blogs.html", blogs=blogs, email=user.email)
Esempio n. 21
0
def user_blogs(user_id=None):
    if user_id is not None:
        # print("@ Not None")
        user = User.get_by_id(user_id)
    else:
        # print("@ None")
        # print("Email: {}".format(session['email']))
        user = User.get_by_email(session['email'])
        # print("User: {}".format(user))
    blogs = user.get_blogs()

    return render_template("user_blogs.html", blogs=blogs, email=user.email)
Esempio n. 22
0
def user_blogs(user_id=None):
    if user_id is not None:
        author = User.get_by_id(user_id)
        myPage = False
    else:
        author = User.get_by_email(session['email'])
        myPage = True
    blogs = author.get_blogs()

    return render_template('user_blogs.html',
                           blogs=blogs,
                           email=author.email,
                           myPage=myPage)
Esempio n. 23
0
def user_blogs(user_id=None):
    parameter = False
    if session['email'] is not None:
        parameter = True
    if user_id is not None:
        usr = User.get_by_id(user_id)
    else:
        usr = User.get_by_email(session['email'])

    blogs = usr.get_blogs()
    return render_template("user_blogs.html",
                           blogs=blogs,
                           email=usr.email,
                           parameter=parameter)
Esempio n. 24
0
def blog_posts(blog_id):
    blog = Blog.from_mongo(blog_id)
    user = User.get_by_id(blog.author_id)
    if user.email == session['email']:
        myPage = True
    else:
        myPage = False
    posts = blog.get_posts()

    return render_template('posts.html',
                           posts=posts,
                           blog_title=blog.title,
                           blog_id=blog._id,
                           myPage=myPage)
Esempio n. 25
0
def user_blogs(user_id=None):
    # takes the string after blogs - gets the user_id

    # Finds the user depending on route
    if user_id is not None:
        user = User.get_by_id(user_id)
    else:
        print("Trying to get user by email")
        print("email is {}".format(session['email']))
        user = User.get_by_email(session['email'])

    # get's the user's blogs, stores in blogs
    blogs = user.get_blogs()

    # renders the template while passing the blogs
    return render_template("user_blogs.html", blogs=blogs, email=user.email)
Esempio n. 26
0
 def get(self, user_id, role):
   user = (User.get_by_id(user_id) or
           User.query(User.wca_person == ndb.Key(Person, user_id))).get()
   if not user:
     self.response.write('error: unrecognized user %s' % user_id)
     self.response.set_status(400)
     return
   if role not in Roles.AllRoles():
     self.response.write('error: unrecognized role %s' % role)
     self.response.set_status(400)
     return
   if user.HasAnyRole(role):
     self.response.write('user already had role %s' % role)
     return
   user.roles.append(role)
   user.put()
   self.response.write('ok')
Esempio n. 27
0
File: app.py Progetto: CN-0/blog
def my_blogs(user_id=None):
    if user_id is not None:
        user = User.get_by_id(user_id)
    else:
        user = User.get_by_email(session['email'])

    blogs = user.get_blogs()
    postsno = 0
    for blog in blogs:
        blog = Blog.from_mongo(blog._id)
        posts = blog.get_posts()
        postsno = postsno + len(posts)

    return render_template("my_blog.html",
                           blogs=blogs,
                           user=user,
                           postsno=postsno)
Esempio n. 28
0
File: app.py Progetto: anbax2000/RMI
def change_password(_id):
    user = User.get_by_id(_id)
    if request.method == 'GET':
        return render_template('update_password.html', user=user)
    else:
        old_password = request.form['oldPassword']
        newPassword = request.form['newPassword']
        newPasswordAgain = request.form['newPasswordAgain']

    if user.password == old_password:
        if newPassword == newPasswordAgain:
            User.change_password(user._id, new_password=newPassword)
            return render_template('passwords_changed.html', user=user)
        else:
            return render_template('passwords_dont_match.html', user=user)
    else:
        return render_template('passwords_dont_match.html', user=user)
Esempio n. 29
0
 def post(self):
     uploader = User.get_by_id(self.request.get('uploader'))
     if not uploader:
         logging.error('no uploader')
         self.error(404)
         return
     for upload in self.get_uploads():
         document = Document()
         document.uploader = uploader.key
         document.upload_time = datetime.datetime.now()
         if self.request.get('section') == '_other':
             document.section = self.request.get('other')
         else:
             document.section = self.request.get('section')
         document.blob_key = upload.key()
         document.original_filename = upload.filename
         document.name = self.request.get('name')
         document.put()
     self.redirect(webapp2.uri_for('documents') + '?success=1')
Esempio n. 30
0
def job():
    with app.app_context():
        log.info('Checking alerts')
        allalerts = AlertModel.list_to_dict(AlertModel.get_all_active_alerts())
        allalerts = sorted(allalerts, key=lambda x: x['user'])
        allalerts = itertools.groupby(allalerts, lambda x: x['user'])

        for userid, alerts in allalerts:
            productlist = []
            alerts_to_deactivate = []

            for alert in alerts:
                r = requests.get(f'http://search:5000/{alert["product"]}')
                if r.status_code != 201:
                    continue
                productnum = len(productlist)

                for shop in r.json().values():
                    productlist += [
                        product for product in shop['products']
                        if product['price'] <= alert['price']
                    ]

                if productnum != len(productlist):
                    alerts_to_deactivate.append(alert)

            if len(productlist) == 0:
                continue
            user = User.get_by_id(userid)
            log.info(f'Sending notifications to {user.username}')
            r2 = requests.post('http://mail:5005/alertmail',
                               headers={
                                   'Content-Type': 'application/json',
                                   'username': user.username
                               },
                               json={'products': productlist})

            if r2.status_code != 201:
                continue

            for alert in alerts_to_deactivate:
                AlertModel.get_alert_by_id(alert['id']).change_active()
Esempio n. 31
0
    def send_email(author_id, posts, passed_msg):
        user = User.get_by_id(author_id)
        gmail_user = '******'
        gmail_password = '******'
        fromx = '*****@*****.**'
        to = user.email

        server = smtplib.SMTP('smtp.gmail.com:587')
        server.starttls()
        server.ehlo()
        server.login(gmail_user, gmail_password)
        for post in posts:
            print(post.prices)
            print(post.prices[0])
            title = str(post.title.encode('ascii', errors='ignore'))
            prices0 = str(post.prices[0])
            url = str(post.url)
            location = str(post.location)
            kms = str(post.kms)
            transmission = str(post.transmission)
            description = str(post.description)
            print('Emailing regarding this URL: {}, MSG = {}'.format(
                url, passed_msg))
            msg = MIMEText(
                "{} - {} \n{}\nLocation: {}\nMileage: {}\nTransmission: {} \nDescription: {}"
                .format(title, prices0, url, location, kms, transmission,
                        description))
            if all([(passed_msg == 'new_post'),
                    (user.new_post_email is True)]):
                msg['Subject'] = 'New post! - {} - {}'.format(title, prices0)
            elif all([(passed_msg == 'price_drop'),
                      (user.price_drop_email is True)]):
                print(post.prices[1])
                prices1 = str(post.prices[1])
                msg['Subject'] = 'Price drop! - {} - {} <-- {}'.format(
                    title, prices0, prices1)
            msg['From'] = fromx
            msg['To'] = to
            server.sendmail(fromx, to, msg.as_string())
            print('{} email sent!').format(passed_msg)
        server.quit()