def feedback_form(username): """Display a form to add feedback""" authenticated_user = User.query.filter_by(username=username).first() if not authenticated_user: return redirect("/register") if "username" not in session: return redirect("/register") form = FeedbackForm() if form.validate_on_submit(): title = form.title.data feedback = form.feedback.data new_feedback = Feedback(title=title, feedback=feedback) new_feedback.username = authenticated_user.username db.session.add(new_feedback) db.session.commit() return redirect(f"/users/{username}") else: return render_template("feedback-form.html", form=form, user=authenticated_user)
def new_feedback(username): """Show add-feedback form and process it.""" if "user_name" not in session or username != session['user_name']: flash("Please login first!", "danger") return redirect("/") form = FeedbackForm() if form.validate_on_submit(): title = form.title.data content = form.content.data feedback = Feedback( title=title, content=content, username=username, ) db.session.add(feedback) db.session.commit() flash("Sucessfully Added New Feedback", "success") return redirect(f"/users/{feedback.username}") else: return render_template("feedback.html", form=form)
def feedback(username): """Show feedback form (GET) or add feedback to db (POST)""" if "username" in session: form = FeedbackForm() user = User.query.get_or_404(username) if user.username == session['username']: if form.validate_on_submit(): title = form.title.data content = form.content.data username = user.username # create a feedback instance feedback = Feedback(title=title, content=content, username=username) db.session.add(feedback) db.session.commit() return redirect(f"/users/{ username }") return render_template("feedback_form.html", form=form) else: flash("You do not have permission to edit that") return redirect(f"/users/{ session['username'] }") else: flash("Need to be logged in to submit feedback") return render_template("login.html", form=form)
def add_feedback(username): """Show the page to add feedback for the current user or add feedback for the current user""" form = FeedbackForm() if form.validate_on_submit(): title = form.title.data content = form.content.data new_feedback = Feedback(title=title, content=content, username=username) db.session.add(new_feedback) db.session.commit() flash('Successfully added feedback!', 'success') return redirect('/') try: user = User.query.filter_by(username=username).one() if "user_id" not in session: flash('Please log in first.', 'danger') return redirect('/login') if user.username == session['username']: return render_template('add_feedback.html', form=form) else: flash("You don't have permission to access that!", 'danger') return redirect('/') except: flash("Page not found. Redirecting!", 'info') return redirect('/')
def setUp(self): self.item = Messages() self.item.title = "OK" self.item.description = "OK" self.item.save() self.item1 = Event() self.item1.title = "OK" self.item1.description = "OK" self.item1.save() self.item2 = Documentation() self.item2.title = "OK" self.item2.description = "OK" self.item2.save() self.item3 = SignUp() self.item3.title = "OK" self.item3.description = "OK" self.item3.save() self.item4 = Feedback() self.item4.title = "OK" self.item4.description = "OK" self.item4.save()
def new_feedback(username): """Show add-feedback form and process it.""" user = User.query.get_or_404(username) if "username" not in session or username != session['username']: flash('Not Authorized', "danger") return redirect(f"/users/{session['username']}") form = FeedbackForm() if form.validate_on_submit(): title = form.title.data content = form.content.data feedback = Feedback(title=title, content=content, username=username) db.session.add(feedback) db.session.commit() all_feedback = Feedback.query.all() for feedback in all_feedback: print(feedback.title) form = DeleteForm() return render_template('user_page.html', user=user, form=form) else: return render_template("add_feedback.html", form=form, username=username)
def add_feedback(username): """Add feedback.""" if "user_id" not in session or session["user_id"] != username: raise Unauthorized() else: form = AddFeedbackForm() if form.validate_on_submit(): title = form.title.data content = form.content.data feedback = Feedback(title=title, content=content, username=username) db.session.add(feedback) db.session.commit() else: return render_template("add-feedback.html", form=form, username=username) return redirect(f"/users/{username}")
def feedback_user(username): """Add feedback for a certain user""" if "username" not in session: raise Unauthorized() if username != session['username']: raise Forbidden() # flash("Sorry, you don't have permission to add a feedabck. Login first.") # return redirect('/login') form = FeedbackForm() if form.validate_on_submit(): title = form.title.data content = form.content.data new_feedback = Feedback(title=title, content=content, username=username) db.session.add(new_feedback) db.session.commit() flash("Feedback was added.", "info") return redirect(f'/users/{username}') else: return render_template('feedback/add.html', form=form, username=username)
def add_user_feedback(username): form = FeedbackForm() user = User.query.get_or_404(username) session_user = User.query.get(session["username"]) if "username" not in session: flash("You better login!") return redirect("/") if session["username"] != username and not session_user.is_admin: flash("Must be logged in to see form") return redirect("/") if form.validate_on_submit(): title = form.title.data content = form.content.data feedback = Feedback(title=title, content=content, username=session["username"]) db.session.add(feedback) db.session.commit() return redirect(f"/users/{username}") return render_template("add_feedback.html", form=form)
def feedback(request): """ ajax方法,提交用户反馈 :param request: {'account_id': '0', 'feedback_content': ''} :return: """ if request.method == 'POST': account = request.session.get('account') account_id = account.get('id', 0) feedback_content = request.POST.get('feedback_content') if feedback_content: try: fdback = Feedback() fdback.account_id = Account.objects.get(id=account_id) fdback.content = feedback_content fdback.date = datetime.now() fdback.save() return HttpResponse( json.dumps({ 'status': 'ok', 'data': u'提交成功' })) except: return HttpResponse( json.dumps({ 'status': 'error', 'data': u'ops, 系统发生错误' })) return HttpResponse(json.dumps({'status': 'error', 'data': u'提交反馈失败'}))
def post_feedback(id): project = Project.query.get_or_404(id) form = FeedbackForm() if form.validate(): issue = Document(form.summary.data, form.description.data) feedback = Feedback() feedback.project = project feedback.id = Feedback.get_id_from_doc(issue, project=project) existing_feedback = Feedback.query.get(feedback.id) if existing_feedback: feedback = existing_feedback if form.selected_recommendation.data: feedback.selected_recommendation = \ form.selected_recommendation.data if form.confirmed_recommendation.data: feedback.confirmed_recommendation = \ form.confirmed_recommendation.data db.session.add(feedback) db.session.commit() return jsonify(result="success") return jsonify(result="error", errors=form.errors), 400
def add_feedback(username): """ On GET: If <username> is in the session, shows add feedback form""" form = AddFeedbackForm() session_user = session.get("username", None) user = User.validate(session_user, username) if user: if form.validate_on_submit(): data = {k: v for k, v in form.data.items() if k != "csrf_token"} data["username"] = username new_feedback = Feedback(**data) db.session.add(new_feedback) db.session.commit() return redirect(f"/users/{username}") else: return render_template("feedback.html", form=form) flash("Invalid user!") return redirect(f"/")
def display_add_feedback_form(username): """ GET show form for adding feedback as a logged in user POST take the form data """ if "user_username" not in session: flash("You must be logged in to give feedback! Put your name on it!") return redirect("/login") elif session['user_username'] != username: flash("You can't edit someone else's feedback") return redirect('/') else: form = FeedbackForm() if form.validate_on_submit(): username = username title = form.title.data content = form.content.data feedback = Feedback(title=title, content=content, username=username) db.session.add(feedback) db.session.commit() return redirect(f'/users/{username}') else: return render_template("feedback.html", form=form)
def submit(self, url, score, description, user_id): feedback = Feedback( url=url, score=score, description=description, user_id=user_id ) database.session.add(feedback) database.session.commit() return feedback
def update_feedback(feedback_id): """Update feedback.""" feedback = Feedback.query.filter_by(id=feedback_id).first() username = session.get("user_id") if "user_id" not in session or session["user_id"] != username: raise Unauthorized() else: form = UpdateFeedbackForm(obj=feedback) if form.validate_on_submit(): title = form.title.data content = form.content.data feedback = Feedback(title=title, content=content, username=username) db.session.add(feedback) db.session.commit() else: return render_template("update-feedback.html", form=form, username=username, feedback=feedback) return redirect(f"/users/{username}")
def create_feedback(username): form = FeedbackForm() if 'user' not in session: flash('Please sign in or register first') return redirect('/') else: if form.validate_on_submit(): flash("Feedback added") user = User.query.get(username) title = form.title.data content = form.content.data feedback = Feedback(title=title, content=content, username=username) db.session.add(feedback) db.session.commit() return redirect(f'/users/{user.username}') else: user = User.query.get(username) return render_template('feedback.html', form=form, user=user)
def add_feedback(username): """GET: Display a form to add feedback. Only the user who is logged in can see this form POST: Add a new piece of feedback and redirect to /users/<username> Only the user who is logged in can successfully add feedback""" if not 'username' in session: flash('You must be logged in to view that page.', 'error') return redirect('/login') elif not session['username'] == username: flash("You don't have permission to view that page.", 'error') return redirect('/login') form = FeedbackForm() if form.validate_on_submit(): title = form.title.data content = form.content.data fb = Feedback(title=title, content=content, username=username) try: db.session.add(fb) db.session.commit() flash(f"Feedback submitted!", "success") return redirect(f'/users/{username}') except: flash(f"Error submitting feedback.", "error") return render_template('add_feedback.html', form=form)
def add_feedback(username): if 'user_username' not in session: flash("You must login", "warning") return redirect("/login") sessuser = session["user_username"] form = FeedbackForm() if form.validate_on_submit(): title = form.title.data content = form.feedback.data new_feedback = Feedback(title = title, content = content, username = username) db.session.add(new_feedback) try: db.session.commit() except IntegrityError as e: err = str(e) if "feedback_title_key" in err: form.title.errors = ["Title cannot be blank"] if "feedback_feedback_key" in err: form.feedback.errors = ["Feedback cannot be blank"] flash("Successfully created feedback", "success") return redirect(f"/users/{username}") if username == session["user_username"]: return render_template("feedback.html", form = form) flash("You dont have permission to do that", "danger") return redirect(f"/users/{sessuser}")
def new_feedback(username): """Show add-feedback form and process it.""" if "username" not in session or username != session['username']: raise Unauthorized() form = ProvideFeedback() user = User.query.filter(User.username == username).first() if form.validate_on_submit(): title = form.title.data content = form.content.data feedback = Feedback( title=title, content=content, user_id=user.user_id, ) db.session.add(feedback) db.session.commit() return redirect(f"/users/{username}") else: return render_template("new_feedback.html", form=form)
def add_feedback(username): """ Add feedback """ form = FeedbackForm() user_id = session.get('user_id') logged_in_user = User.query.get(user_id) try: user = User.query.filter(User.username == username).one() except Exception: abort(404) if user_id != user.id and not logged_in_user.is_admin: abort(401) if form.validate_on_submit(): feedback = { "title": form.title.data, "content": form.content.data, "username": username } new_feedback = Feedback(**feedback) db.session.add(new_feedback) db.session.commit() return redirect(f"/users/{username}") return render_template('feedback-form.html', user=user, form=form, action=f'/users/{username}/feedback/add')
def new_feedback(username): """Show add-feedback form and process it.""" if "user_id" not in session: flash("You are not authorized", "danger") return redirect('/') id = session['user_id'] main_user = User.query.get_or_404(id) form = FeedbackForm() if form.validate_on_submit(): title = form.title.data content = form.content.data feedback = Feedback( title=title, content=content, username=username, ) db.session.add(feedback) db.session.commit() return redirect(f"/user/{feedback.username}") else: return render_template("new_feedback.html", form=form, main_user=main_user)
def new_feedback(username): """Show add-feedback form and process it.""" if "username" not in session or username != session['username']: raise Unauthorized() form = FeedbackForm() if form.validate_on_submit(): title = form.title.data content = form.content.data feedback = Feedback( title=title, content=content, username=username, ) db.session.add(feedback) db.session.commit() return redirect(f"/users/{feedback.username}") else: return render_template("feedback.html", form=form)
def add_feedback(): if "username" not in session: flash("Please log in first!", "danger") raise Unauthorized() return redirect('/login') form = FeedbackForm() feedback = Feedback.query.all() if form.validate_on_submit(): title = form.title.data content = form.content.data feedback = Feedback( title=title, content=content, username=username, ) db.session.add(feedback) db.session.commit() flash("Feedback created!", "success") return redirect(f'/users/{feedback.username') else: return render_template('feedback.html', form=form)
def add_feedback(username): """ Logged-in user: Add feedback form """ if "username" not in session: flash("You must be logged in to view!") abort(401) elif username != session['username']: flash("You can only give yourself feedback!") abort(401) else: user = User.query.get_or_404(username) form = FeedbackForm() if form.validate_on_submit(): title = form.title.data content = form.content.data new_feedback = Feedback(title=title, content=content, username=username) db.session.add(new_feedback) db.session.commit() return redirect(f'/users/{session["username"]}') return render_template("feedback.html", user=user, form=form)
def add_feedback(username): """Add feedback for a user, or if submitted create a new feedback instance for the user""" curr_user = User.query.filter(User.username == username).first() if "username" not in session or username != session['username']: flash("You must be logged in to add feedback") return redirect("/") form = FeedbackForm() if form.validate_on_submit(): title = form.title.data content = form.content.data new_feedback = Feedback(title=title, content=content, username=curr_user.username) db.session.add(new_feedback) db.session.commit() # on successful adding of feedback bring back to users pages return redirect(f"/users/{username}") else: return render_template("add_feedback.html", form=form)
def contact(request): if request.method == 'POST': c = {} form = ContactForm(request.POST) if form.is_valid(): feedback = Feedback() try: feedback.name = form.cleaned_data["con_name"] feedback.email = form.cleaned_data["con_emailid"] try: feedback.mobile = str(form.cleaned_data["con_mobile"]) except: feedback.mobile = "" #if feedback.mobile is None: # feedback.mobile = 0 feedback.value = form.cleaned_data["con_text"] feedback.save() c.update({"success": True}) except: print sys.exc_info()[1] return HttpResponse('Error in sending feedback' + str(vars(feedback)) + str(sys.exc_info()[0])) c.update(csrf(request)) return render_to_response('contact.html', c) else: c = {} c.update({"form": form}) c.update(csrf(request)) return render_to_response('contact.html', c) c = {} c.update(csrf(request)) return render_to_response('contact.html', c)
def add_feedback(username): form = AddFeedbackForm() if form.validate_on_submit(): title = form.title.data content = form.content.data try: if session['user_id'] == username: fb = Feedback(title=title, content=content, username=username) db.session.add(fb) db.session.commit() return redirect(f'/users/{username}') else: flash(f"Stop trying to add content under {username}!") redirect(f"/users/{session['user_id']}") except KeyError: flash("Please login or register first ;(") return redirect('/register') else: try: if session['user_id'] == username: user = User.query.filter_by(username=username).first() else: flash(f"Stop trying to add content under {username}!") redirect(f"/users/{session['user_id']}") except KeyError: flash("Please login or register first ;(") return redirect('/register') return render_template('add_feedback.html', user=user, form=form)
def add_feedback(username): if 'username' not in session: flash('Please login before continuing.', 'info') return ('/login') if session['username'] == username: form = FeedbackForm() if form.validate_on_submit(): title = form.title.data content = form.content.data user = User.query.get(session['username']) feedback = Feedback(title=title, content=content, username=user.username) db.session.add(feedback) db.session.commit() flash(f'{user.username} Successfully Created Feedback', 'success') return redirect(f'/users/{user.username}') else: return render_template('add_feedback.html', form=form) flash('Your account cannot access that page.', 'info') return redirect('/')
def add_feedback(username): """Add feedback for the current user""" if "user_username" not in session: flash("You must be logged in to view") return redirect('/') if session["user_username"] == username: form = addFeedbackForm() if form.validate_on_submit(): title = form.title.data content = form.content.data f = Feedback(title=title, content=content, username=username) db.session.add(f) db.session.commit() return redirect(f'/users/{username}') return render_template('add-feedback.html', form=form) else: username = session["user_username"] flash(f'To add feedback, {username}, click Add Feedback below') return redirect(f'/users/{username}')
def post(self): try: feedback = Feedback(request.json) g.db.feedback.insert(feedback.__dict__) except Exception: abort(400) return jsonify(code=200)