Exemple #1
0
def write(courseid):
    if courseid < 0:
        abort(404)
    course = Course.query.get_or_404(courseid)

    from datetime import datetime

    form = reviewSubmissionForm()
    if form.validate_on_submit():
        try:

            review = models.Review(review_date= datetime.utcnow(), review_comment=form.comment.data, rating =int(form.rating.data), course_id=course.id,\
                                   user_id =g.user.id)
            db.session.add(review)
            db.session.commit()
            flash("Review posted successfully", "success")
            return redirect('home')
        except:
            db.session.rollback()
            flash(
                "Sorry you can't post more than one review for a single course. Please edit the former one below.",
                "error")
            return redirect(
                url_for('editreview', courseid=course.id, userid=g.user.id))
    return render_template('write.html',
                           form=form,
                           course=course,
                           edit=False,
                           title="Write Review")
Exemple #2
0
def editreview(courseid, userid):
    if courseid < 0:
        abort(404)
    user = User.query.get_or_404(userid)
    course = Course.query.get_or_404(courseid)
    
    from datetime import datetime
    review = Review.query.filter_by(course_id=courseid, user_id=userid).first()
    if review.user_id != g.user.id and g.user.net_id not in SUPERUSERS:
            flash('You cannot edit someonelse review.',"error")
            return redirect(url_for('home'))
    form = reviewSubmissionForm()
    if form.validate_on_submit():
        review.rating = int(form.rating.data)
        review.review_comment = form.comment.data
        review.review_date = datetime.utcnow()
        db.session.commit()
        flash("Review edited successfully","success")
        return redirect('home')
    
    return render_template('write.html',form = form, course=course, rating=review.rating, \
                           comment=review.review_comment, edit =True, title = "Edit Review")
Exemple #3
0
def write(courseid):
    if courseid < 0:
        abort(404)
    course = Course.query.get_or_404(courseid)
    
    from datetime import datetime
    
    form = reviewSubmissionForm()
    if form.validate_on_submit():
        try:
            
            review = models.Review(review_date= datetime.utcnow(), review_comment=form.comment.data, rating =int(form.rating.data), course_id=course.id,\
                                   user_id =g.user.id)
            db.session.add(review)
            db.session.commit()
            flash("Review posted successfully","success")
            return redirect('home')
        except:
            db.session.rollback()
            flash("Sorry you can't post more than one review for a single course. Please edit the former one below.", "error")
            return redirect(url_for('editreview',courseid = course.id, userid = g.user.id))
    return render_template('write.html',form = form, course=course, edit = False, title = "Write Review")
Exemple #4
0
def editreview(courseid, userid):
    if courseid < 0:
        abort(404)
    user = User.query.get_or_404(userid)
    course = Course.query.get_or_404(courseid)

    from datetime import datetime
    review = Review.query.filter_by(course_id=courseid, user_id=userid).first()
    if review.user_id != g.user.id and g.user.net_id not in SUPERUSERS:
        flash('You cannot edit someonelse review.', "error")
        return redirect(url_for('home'))
    form = reviewSubmissionForm()
    if form.validate_on_submit():
        review.rating = int(form.rating.data)
        review.review_comment = form.comment.data
        review.review_date = datetime.utcnow()
        db.session.commit()
        flash("Review edited successfully", "success")
        return redirect('home')

    return render_template('write.html',form = form, course=course, rating=review.rating, \
                           comment=review.review_comment, edit =True, title = "Edit Review")
Exemple #5
0
def write(courseid):
    if courseid < 0:
        abort(404)
    course = Course.query.get_or_404(courseid)
    professor = Professor.query.get_or_404(course.professor[0].id)
    
    from datetime import datetime
    
    form = reviewSubmissionForm()
    if form.validate_on_submit():
        try:
            
            review = models.Review(review_date= datetime.utcnow(), review_comment=form.comment.data, rating =int(form.rating.data), course_id=course.id, user_id =g.user.id)
            db.session.add(review)
            db.session.commit()
            flash("Review posted successfully","success")
            return redirect('home')
        except:
            flash("Sorry you can't post more than one review for a single course", "error")
            db.session.rollback()
            return redirect('home')
            
    return render_template('write.html',form = form, professor = professor, course=course)