Example #1
0
 def message_history(self):
     for message in database.get_messages(self.name):
         sender = database.get_user_by_id(message['sender'])
         receiver = database.get_user_by_id(message['receiver'])
         if sender['name'] == self.name:
             self.send_message('USERMSGSNT %s :%s' %
                               (receiver['name'], message['message']))
         else:
             self.send_message('USERMSG %s :%s' %
                               (sender['name'], message['message']))
Example #2
0
def newpost():
    if session["logged"]==0:
        return redirect(url_for("login"))
    elif request.method=="GET":
        username = database.get_user_by_id(session["user"])
        return render_template("newpost.html", uname=username)
    else:
        title = request.form["title"]
        body = request.form["body"]
        session["title"] = title
        session["body"] = body
        session["author"] = database.get_user_by_id(session["user"])
        return redirect(url_for("story", storyid=database.add_story(title, session["user"], body, 1)))
Example #3
0
def change_password():
    response = request.Response()
    data = forms.get_form_data()
    if "old" not in data or "new" not in data:
        login_failure(response)
        return

    session = get_session()
    user_id = session["user_id"]
    user = database.get_user_by_id(user_id)

    current = user["password"]
    salt = user["salt"]
    maybe = data["old"]
    correct_pw = hashing.check_hash(maybe, salt, current)

    if not correct_pw:
        login_failure(response)
        return

    hash_data = hashing.generate_hash(data["new"])
    database.update_password(user_id, hash_data)

    response.data = "success"
    response.send()
Example #4
0
def userpage():
    if session["logged"]==0:
        return redirect(url_for("login"))
    else:
        return render_template("userpage.html",
        uname=database.get_user_by_id(session["user"]),
        posts=reversed(database.get_top_posts(-1)),
        yourposts=database.get_top_posts(session["user"]))
Example #5
0
def story():
    if session["logged"]==0:
        return redirect(url_for("login"))
    return render_template("story.html",
        title="POSTS", author="",
        posts=database.get_top_posts(-1),
        uname=database.get_user_by_id(session["user"]),
        storyid=request.args.get('storyid'),
        content=database.get_story_content(request.args.get('storyid')))
Example #6
0
def get_registered_user_by_id(id: int) -> User:
    global registered_users
    # try get from online
    user = registered_users.get_by_id(id)
    if user is None:
        # try get from db
        user = database.get_user_by_id(id)
        if user is not None:
            registered_users.add(user)
    return user
Example #7
0
def edit():
    if session["logged"]==0:
        return redirect(url_for("login"))
    elif request.method=="GET":
        username = database.get_user_by_id(session["user"])
        return render_template("edit.html", uname=username)
    else:
        title = "<NO TITLE YET>"
        database.update_story_link(database.get_lowest_child(request.args.get('storyid')), database.add_story(title, session["user"], request.form["body"], 0))
        return redirect(url_for('story', storyid=request.args.get('storyid')))
Example #8
0
def get_user_data_bad(user_id):
    logger.debug("Retrieving user %s from database", user_id)
    try:
        user_data = get_user_by_id(user_id)
    except ItemNotFoundError:
        logger.warning("User ID %s was not found", user_id)
    except Exception:
        logger.critical("Error for user %s", user_id, exc_info=True)
    else:
        logger.debug("Retrieved user ID %s from database", user_id)
def home_page():
    list1 = []
    if "logged_in" in session and session['logged_in']:
        photos = database.get_all_photos()
        random.shuffle(photos)
        for i in photos:
            d = database.get_user_by_id(i.user_id)
            list1.append(d)
        return render_template("logged_in_homepage.html",
                               photos=photos,
                               list1=list1)
    else:
        return render_template("homepage.html")
def clicked_img(pic):
    charities = database.get_all_charities()
    photo = database.get_photo_by_name(pic)
    user = database.get_user_by_id(photo.user_id)
    percent_price = photo.percentage * .01 * photo.price
    if request.method == 'POST':
        return render_template("img_selected.html",
                               photo=photo,
                               user=user,
                               charities=charities,
                               buy=True,
                               percent_price=percent_price)
    elif request.method == 'GET':
        return render_template("img_selected.html",
                               photo=photo,
                               user=user,
                               charities=charities,
                               buy=False,
                               percent_price=percent_price)
Example #11
0
def user(user_id):
    def get_user_info(user):
        response = jsonify({
            'user': user.username,
            'movie': user.favorite_movie
        })
        return response

    def post_user_info(user):
        try:
            req_json = request.get_json()
            new_favorite = req_json['movie']
            user.favorite_movie = new_favorite
            response = jsonify({'status': 'success'})
            return response
        except:
            response = jsonify({
                'status': 'failed',
                'fail reason': 'Wrong arguments'
            })
            return response, 500

    user = db.get_user_by_id(user_id)  #CHANGE
    if user is None:
        response = jsonify({
            'status': 'failed',
            'fail reason': 'User not found'
        })
        return response, 404
    if request.method == 'GET':
        return get_user_info(user)
    elif request.method == 'POST':
        return post_user_info(user)
    else:
        response = jsonify({
            'status':
            'failed',
            'fail reason':
            'Wrong method, only POST and GET available'
        })
        return response, 401
def following_user(username):
    if "logged_in" in session and session['logged_in']:
        following = []
        number_of_photos = []
        least_p = []
        most_p = []
        has_photos = []
        user = database.get_user(username)
        following_2 = database.get_following_for(user.id)
        for i in range(len(following_2)):
            following.append(database.get_user_by_id(following_2[i].followed))
            number_of_photos.append(
                len(database.get_photos_by_user_id(following_2[i].followed)))

            prices = []
            if number_of_photos[i] == 0:
                has_photos.append(False)

            else:
                has_photos.append(True)
                for j in database.get_photos_by_user_id(
                        following_2[i].followed):
                    converted_p = converter.convert(j.price, j.currency, 'USD')
                    prices.append(converted_p)
                least_p.append(min(prices))
                most_p.append(max(prices))

        return render_template("following_page.html",
                               following=following,
                               user=user,
                               number_of_photos=number_of_photos,
                               least_p=least_p,
                               most_p=most_p,
                               has_photos=has_photos)
    else:
        return redirect(url_for("home_page"))
def upload_file():
    if "logged_in" in session and session['logged_in']:
        if request.method == 'POST':
            failed = None
            no_file = None
            list1 = []
            file = request.files['file']

            if file and allowed_file(file.filename):
                a = database.get_last_id()
                b = file.filename
                if a == None:
                    f = str(1) + "." + b.rsplit('.', 1)[1].lower()
                else:
                    f = str(
                        (int(a.id) + 1)) + "." + b.rsplit('.', 1)[1].lower()
                target = os.path.join(app.config['UPLOAD_FOLDER'], f)
                file.save(target)
                response = model.predict_by_filename(
                    '/Users/DakMac/Desktop/jennyz/MEET/Whats on the meet laptop/labs/y2l-individual-project/static/user_images/'
                    + f)
                frames = response["outputs"]
                if a == None:
                    for frame in frames:
                        for concept in frame["data"]["concepts"]:
                            list1.append(concept["name"])
                    for i in range(10):
                        database.add_keyword(list1[i], 1)
                    keywords1 = request.form["keywords1"]
                    if keywords1 == '':
                        d = None
                    else:
                        database.add_keyword(keywords1, 1)
                    keywords2 = request.form["keywords2"]
                    if keywords2 == "":
                        b = None
                    else:
                        database.add_keyword(keywords2, 1)
                    keywords3 = request.form["keywords3"]
                    if keywords3 == '':
                        c = None
                    else:
                        database.add_keyword(keywords3, 1)
                else:
                    for frame in frames:
                        for concept in frame["data"]["concepts"]:
                            list1.append(concept["name"])
                    for i in range(10):
                        database.add_keyword(list1[i], a.id + 1)

                    keywords1 = request.form["keywords1"]
                    if keywords1 == '':
                        d = None
                    else:
                        database.add_keyword(keywords1, a.id + 1)
                    keywords2 = request.form["keywords2"]
                    if keywords2 == "":
                        b = None
                    else:
                        database.add_keyword(keywords2, a.id + 1)
                    keywords3 = request.form["keywords3"]
                    if keywords3 == '':
                        c = None
                    else:
                        database.add_keyword(keywords3, a.id + 1)
                c = database.get_user_by_id(session['id'])
                y = c.username
                price = request.form["price"]
                currency = request.form["currency"]
                percentage = request.form["percentage"]
                database.add_photo(f, session['id'], y, price, currency,
                                   percentage)
                return redirect(url_for('home_page'))
            if file and not allowed_file(file.filename):
                failed = True
                return render_template("upload.html", failed=failed)

        return render_template("upload.html")
    else:
        return redirect(url_for("home_page"))
def get_user_by_id(user_id):
    user = db.get_user_by_id(user_id)
    if(len(user) == 0):
        return make_response(jsonify({'error': 'Invalid user ID'}), 404)
    else:
        return make_response(jsonify(user), 200)
Example #15
0
def load_user(user_id):
        return db.get_user_by_id(user_id)
Example #16
0
def get_user_data_good(user_id):
    with db_logger(user_id, "user", logger):
        user_data = get_user_by_id(user_id)
Example #17
0
def id_to_name(user):
	return database.get_user_by_id(user)