def user(username): if 'username' in session: form = ReviewForm(request.form) userFire = firebase.FirebaseApplication('https://oopproject-f5214.firebaseio.com') allUser = userFire.get('userInfo', None) bioList = [] titleList = [] timeList = [] reviewList = [] posterList = [] allList = [] bio = root.child('userInfo').get() for key in bio: if username == bio[key]['username']: bioList.append(bio[key]['about_me']) print(bioList) review = root.child('review').get() if review != None: for reviews in review: if username == review[reviews]['username']: titleList.append(review[reviews]['title']) timeList.append(review[reviews]['time']) reviewList.append(review[reviews]['review']) posterList.append(review[reviews]['poster']) allList.append(titleList) allList.append(reviewList) allList.append(posterList) allList.append(timeList) if request.method == 'POST' and form.validate(): title = form.title.data review = form.review.data review = Review(title, review) review_db = root.child('review') review_db.push({ 'username' : username, 'title' : review.get_title(), 'review' : review.get_review(), 'time' : review.get_date(), 'poster' : session['username'] }) return redirect(url_for('user',username=username)) ''' titleList = [] reviewList = [] bio = root.child('userInfo').get() for key in bio: print(allUser[key]['about_me']) if username == bio[key]['username']: bioList.append(bio[key]['review']) usernameList.append((bio[key])['']) return redirect(url_for('user')) ''' return render_template('userProfile.html', form=form, username=username, bioList=bioList,allList=allList)
def review(filename): if 'logged_in' and 'reviewer' not in session: flash("You Are Not Authorized To Access This Page..!!") return redirect(url_for('login')) form = ReviewForm(request.form) if form.validate(): review_result = reviewArticle(form, filename) flash(review_result) return redirect(request.referrer)
def outcomes(): form = ReviewForm() if request.method == 'POST' and form.validate(): review = form.review.data y, proba = classify(review) return render_template('outcomes.html', content=review, prediction=y, probability=round(proba * 100, 2), form=form) return render_template('outcomes.html', form=form)
def review(id_val): form = ReviewForm(request.form) if request.method == 'POST' and form.validate(): movieId = id_val reviewerId = current_user.get_id() reviewTime = datetime.datetime.now() review = form.review.data rating = form.rating.data add_review(db, movieId, reviewerId, reviewTime, review, rating) flash('Review successfully entered.') return redirect(url_for('show_movie_info',id_val= id_val)) return render_template('Review_page.html', form=form)
def create_review(film_id): review_form = ReviewForm() if review_form.validate(): rating = review_form.rating.data body = review_form.body.data user_id = current_user.id review = Review(rating=rating, body=body, film_id=film_id, user_id=user_id) db.session.add(review) db.session.commit() return redirect(url_for('get_film', film_id=film_id)) return redirect(url_for('get_film', film_id=film_id))
def add_review(): global user_id print("Add review, user id: ", user_id) form = ReviewForm(request.form) if request.method == 'POST' and form.validate(): fmt = BlankFormatter() sql = """INSERT INTO reviews (username, wine_name, winery, year, designation, variety, description, points, user_id) VALUES('{username}',REPLACE(CONCAT_WS(' ', '{winery}', {year}, '{designation}', '{variety}'), ' ', ' '), '{winery}', {year}, '{designation}', '{variety}', '{description}', {points}, {user_id} ) ON DUPLICATE KEY UPDATE description=VALUES(description), points=VALUES(points)""" fixdes = form.description.data fixdes = fixdes.replace("'", "''") args = { 'username': username, 'winery': form.winery.data, 'year': form.year.data, 'designation': form.designation.data, 'variety': form.variety.data, 'description': fixdes, 'points': form.points.data, 'user_id': user_id } query = fmt.format(sql, **args) connection = mysqlConnection() cur = connection.cursor() cur.execute(query) connection.commit() #Close connection cur.close() flash('Review Created', 'success') return redirect(url_for('add_review')) return render_template('add_review.html', form=form)
def editReview(): form = ReviewForm(request.form) if request.method == 'POST' and form.validate(): rating = form.rating.data review = form.review.data query_update = db.execute("UPDATE reviews SET rating = :rating, review = :review WHERE bookid = :bookid AND userid = :userid", {'rating': rating, 'review': review, 'bookid': session['bookid'], 'userid': session['userid']}) db.commit() flash('Review successfully updated.', 'success') return redirect(url_for('book', id=session['bookid'])) return render_template('editReview.html', form=form)
def addReview(): form = ReviewForm(request.form) if request.method == 'POST' and form.validate(): rating = form.rating.data review = form.review.data query_insert = db.execute("INSERT INTO reviews(rating, review, userid, bookid) VALUES(:rating, :review, :userid, :bookid)", {'rating': rating, 'review': review, 'userid': session['userid'], 'bookid': session['bookid']}) db.commit() flash('Review successfully added.', 'success') return redirect(url_for('book', id=session['bookid'])) return render_template('addReview.html', form=form)
def create_review(game_id): review_form = ReviewForm() print(type(review_form.rating.data)) print(review_form.body.data) if review_form.validate(): rating = review_form.rating.data body = review_form.body.data user_id = current_user.id review = Review(rating=rating, body=body, game_id=game_id, user_id=user_id) db.session.add(review) db.session.commit() return redirect(url_for('get_game', game_id=game_id)) return redirect(url_for('get_game', game_id=game_id))
def reviewDetails(): reviews = Reviews.query.all() form = ReviewForm(request.form) if request.method == 'POST': if form.validate(): if form.id.data == '': r = Reviews(form.doctorID.data, form.description.data, form.username.data) db_session.add(r) db_session.commit() else: r = Reviews.query.get(int(form.id.data)) r.doctorID = form.doctorID.data r.description = form.description.data r.username = form.username.data db_session.commit() reviews = Reviews.query.all() return render_template('review.html', reviews=reviews)
def create_comment(): from models import Review from forms import ReviewForm form = ReviewForm(request.form) if form.validate(): review = Review(**form.data) db.session.add(review) db.session.commit() reviews = Review.query.order_by(Review.time).all() result = reviews_schema.dump(reviews) return jsonify(result.data) else: result = jsonify({'status': 'error'}) result.status_code = 500 print(form.data) return result
def make_review(): form = ReviewForm() form.name.choices = [] for row in fetch_available_items('beer_choices', 'products'): stock = str(row[0]) form.name.choices += [(stock, stock)] if request.method == "POST" and form.validate(): username = form.username.data name = form.name.data score = form.score.data post = form.post.data c, conn = connection() c.execute("SELECT id FROM users where username LIKE %s", [thwart(username)]) current_id = c.fetchone() c.execute("SELECT id FROM beer where name LIKE %s", [thwart(name)]) current_beer = c.fetchone() c.execute("SELECT CURDATE()") current_date = c.fetchone() # print current_id # print current_beer c.execute( """INSERT INTO Review (user_id, beer_id, userName, score, body, date) VALUES (%s, %s, %s, %s, %s, %s)""", (current_id, current_beer, thwart(username), thwart( str(score)), thwart(post), current_date)) conn.commit() flash("Thanks for submitting your review!") c.close() conn.close() gc.collect() return redirect(url_for("homepage")) return render_template("make_review.html", form=form)
def user(username): if 'username' in session: form = ReviewForm(request.form) bioList = [] titleList = [] timeList = [] reviewList = [] posterList = [] allList = [] bio = root.child('userInfo').get() for key in bio: if username == bio[key]['username']: bioList.append(bio[key]['about_me']) forumList = [] forum = root.child('Forum').get() for key in forum: if username == forum[key]['username']: forumList.append(forum[key]['username']) review = root.child('review').get() if review != None: for reviews in review: if username == review[reviews]['username']: titleList.append(review[reviews]['title']) timeList.append(review[reviews]['time']) reviewList.append(review[reviews]['review']) posterList.append(review[reviews]['poster']) titleList.reverse() timeList.reverse() reviewList.reverse() posterList.reverse() allList.append(titleList) allList.append(reviewList) allList.append(posterList) allList.append(timeList) fire = firebase.FirebaseApplication( 'https://oopproject-f5214.firebaseio.com/') ref = fire.get('/profilePic', None) pictureList = [] if ref != None: for key in ref: if username == ref[key]['username']: pictureList.append(ref[key]['photo']) if request.method == 'POST' and form.validate(): title = form.title.data review = form.review.data review = Review(title, review) review_db = root.child('review') review_db.push({ 'username': username, 'title': review.get_title(), 'review': review.get_review(), 'time': review.get_date(), 'poster': session['username'] }) return redirect(url_for('user', username=username)) return render_template('userProfile.html', form=form, username=username, bioList=bioList, allList=allList, reviewList=len(reviewList), forumList=len(forumList), pictureList=pictureList)
def edit_review(id): connection = mysqlConnection() # Create cursor cur = connection.cursor() # Get review by id result = cur.execute("SELECT * FROM reviews WHERE id = %s", [id]) review = cur.fetchone() cur.close() # Get form form = ReviewForm(request.form) # Populate review form fields form.winery.data = review['winery'] form.year.data = review['year'] form.designation.data = review['designation'] form.variety.data = review['variety'] form.description.data = review['description'] form.points.data = review['points'] if request.method == 'POST' and form.validate(): print('THIS IS WORKS') fixdes = request.form['description'] fixdes = fixdes.replace("'", "''") args = { 'winery': request.form['winery'], 'year': request.form['year'], 'designation': request.form['designation'], 'variety': request.form['variety'], 'description': fixdes, 'points': request.form['points'], 'id': id } # Create Cursor cur = connection.cursor() # Execute sql = """UPDATE reviews SET wine_name = REPLACE(CONCAT_WS(' ', '{winery}', {year}, '{designation}', '{variety}'), ' ', ' '), winery = '{winery}', year = {year}, designation = '{designation}', variety = '{variety}', description = '{description}', points = {points} WHERE id = {id} """ fmt = BlankFormatter() query = fmt.format(sql, **args) cur = connection.cursor() cur.execute(query) connection.commit() # Close connection cur.close() flash('Review Updated', 'success') return redirect(url_for('reviews')) return render_template('edit_review.html', form=form)
def review(): review_form = ReviewForm(request.form) profile_form = ProfileForm() if request.method == 'POST' and review_form.validate(): reviewerid = review_form['reviewerid'] partnerid = review_form['partnerid'] reviewerid = int(reviewerid.raw_data[0]) partnerid = int(partnerid.raw_data[0]) classID = review_form['classID'] classID = int(classID.raw_data[0]) percentage = review_form['percentage'] percentage = int(percentage.raw_data[0]) repartner = review_form['repartner'] repartner = int(repartner.raw_data[0]) prof = review_form['professorid'] prof = str(prof.raw_data[0]) grade = review_form['grade'] grade = int(grade.raw_data[0]) / 25 #make sure that the reviewer has a profile - if they don't make them make one if len(student_exists(reviewerid)) == 0: return render_template( 'create_profile.html', form=profile_form, error= 'No fair reviewing a friend if you don\'t have your own profile! Make one before you proceed.' ) if len(student_exists(partnerid)) == 0: return render_template( 'create_profile.html', form=profile_form, error= 'That person\'s not registered yet. Make a profile for them before you review!' ) #make sure that both are listed as having taken the class if taken_class(reviewerid, classID) == 0: session.execute( "insert into taken(classID, studentID) values (:classID, :reviewerid)", { 'reviewerid': reviewerid, 'classID': classID }) if taken_class(partnerid, classID) == 0: session.execute( "insert into taken(classID, studentID) values (:classID, :partnerid)", { 'partnerid': partnerid, 'classID': classID }) try: session.execute( "insert into reviews (classID, reviewerid, partnerid, grade, percentage, repartner, prof) values (:classID, :reviewerid, :partnerid, :grade, :percentage, :repartner, :prof)", { 'classID': classID, 'reviewerid': reviewerid, 'partnerid': partnerid, 'grade': grade, 'percentage': percentage, 'repartner': repartner, 'prof': prof }) session.commit() return redirect(url_for('get_student_profile', id=partnerid)) except exc.SQLAlchemyError: return render_template( 'error.html', error= 'Hey now - you can\'t take a class more than once. You or your partner is already registered.', link="/review", destination='back') return render_template('create_review.html', form=review_form)