def FeedbackView(request): if request.method == 'POST': fform = FeedbackForm(request.POST) if fform.is_valid(): name = request.POST.get('name', '') rating = request.POST.get('rating', '') feedback = request.POST.get('feedback', '') data = FeedbackData(name=name, rating=rating, date=date1, feedback=feedback) data.save() fform = FeedbackForm() feedbacks = FeedbackData.objects.all() return render(request, 'institute_feedback.html', { 'fform': fform, 'feedbacks': feedbacks }) else: return HttpResponse("Enter all fields") else: fform = FeedbackForm() feedbacks = FeedbackData.objects.all() return render(request, 'institute_feedback.html', { 'fform': fform, 'feedbacks': feedbacks })
def contact(request): """Renders the contact page.""" assert isinstance(request, HttpRequest) args = {} args['formFeedback'] = FeedbackForm() args['title'] = u'Контактная информация' args['year'] = datetime.now().year if request.POST: _form = FeedbackForm(request.POST) if _form.is_valid(): user_mail = _form.cleaned_data['user_mail'] user_question = _form.cleaned_data['user_question'] #отправляем админам письмо о создании коллектива _mails = User.objects.filter(is_superuser=1).values_list('email', flat=True) for mail in _mails: try: print "debug=====================" send_mail(u'Вопрос от: {0}'.format(user_mail), u'{0}'.format(user_question), '*****@*****.**', [mail], fail_silently=False) except Exception as ex: print ex.message messages.add_message(request, messages.SUCCESS, u'Ваш запрос отправлен') return redirect(reverse('contact')) #return redirect('/'); else: # если что то не так , то выводим форму с ошибками args['formFeedback'] = _form return render( request, 'app/contact.html', args #context_instance = RequestContext(request, args) )
def feedback(request): """ sends the feedback modal. """ logged_in = True # CHECKS: # i) user is logged in # ii) request is either ajax for requesting feedback modal # iii) request is a POST request for submitting feedback # else error if (not request.user.is_authenticated()) or \ (not request.is_ajax() and not request.method == "POST"): return HttpResponse("Please login and go to the main page.") form = FeedbackForm() if request.method == 'POST': form = FeedbackForm(request.POST) if form.is_valid(): obj = form.save(commit=False) obj.user = request.user # add user obj.save() messages.success(request, "Thank you for your valuable feedback.") return HttpResponseRedirect(reverse('home')) return render(request, 'feedback.html', { 'form': form, 'logged_in': logged_in })
def send_feedback(request): if request.method == 'POST': form = FeedbackForm(request.POST) if form.is_valid(): form.save() return render(request, 'guestbook/frontend/thanks.html') else: form = FeedbackForm() return render(request, 'guestbook/frontend/send_feedback.html', { 'form': form, })
def add(request): """Gather feedback for a page, and if it is ok show a thanks message and link back to the page.""" submit_was_success = False return_to_url = None submit_error_message = None # If it is a post request try to create the feedback if request.method == 'POST': form = FeedbackForm( request.POST ) if form.is_valid(): feedback = Feedback() feedback.url = form.cleaned_data['url'] feedback.email = form.cleaned_data['email'] feedback.comment = form.cleaned_data['comment'] submit_was_success = True if settings.GOOGLE_RECAPTCHA_SECRET_KEY: recaptcha_response = request.POST.get("g-recaptcha-response") if not recaptcha_client.verify(recaptcha_response): submit_was_success = False submit_error_message = "Sorry, something went wrong. Please try again or email us at <a href='mailto:[email protected]'>[email protected]</a>" # if the comment starts with an html tag it is probably spam if re.search('\A\s*<\w+>', form.cleaned_data['comment']): feedback.status = 'spammy' if request.user.is_authenticated(): feedback.user = request.user if submit_was_success: feedback.save() return_to_url = feedback.url or None else: # use GET to grab the url if set form = FeedbackForm(initial=request.GET) return render( request, 'feedback/add.html', { 'form': form, 'submit_was_success': submit_was_success, 'return_to_url': return_to_url, 'submit_error_message': submit_error_message }, )
def feedback(): if request.method == 'GET': return render_template('feedback.html', form=FeedbackForm()) form = FeedbackForm(request.form) if form.validate_on_submit(): feedback = Feedback(form.name.data, form.email.data, form.message.data) db.session.add(feedback) db.session.commit() flash('Thank you for your comment!') return redirect(url_for('views.profiles')) return render_template('feedback.html', form=form)
def edit_feedback(request, id): feedback = get_object_or_404(Feedback, id=id) if request.method == 'POST': form = FeedbackForm(request.POST, instance=feedback) if form.is_valid(): form.save() return redirect('guestbook:administration:feedbacks_list') else: form = FeedbackForm(instance=feedback) return render(request, 'guestbook/administration/edit_feedback.html', { 'form': form, })
def update_feedback(feedback_id): """ View function to update feedback """ if 'username' not in session: flash('You are not authorized') return redirect('/') feedback = Feedback.query.get(feedback_id) if not feedback: return render_template('404.html') form = FeedbackForm(obj=feedback) if session.get('username' ) == feedback.user.username and form.validate_on_submit(): feedback.title = form.title.data feedback.content = form.content.data db.session.add(feedback) db.session.commit() return redirect(f'/users/{feedback.user.username}') else: return render_template('update-feedback.html', form=form, feedback_id=feedback.id)
def edit_feedback(feedback_id): """Update feedback details""" feedback = Feedback.query.get_or_404(feedback_id) username = feedback.username if 'username' not in session: flash("You have to be logged in to edit feedback!") return redirect("/") # elif not feedback: # username = session['username'] # flash("That feedback does not exist Lord Vader!") # return redirect(f"/users/{username}") elif session['username'] != username: flash("You cant edit feedback for others you sith lowlife!") return redirect("/") form = FeedbackForm(obj=feedback) if form.validate_on_submit(): feedback.title = form.title.data feedback.content = form.content.data db.session.commit() return redirect(f"/users/{username}") return render_template('edit_feedback.html', 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 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 update_feedback(feedback_id): """ Update Feedback """ form = FeedbackForm() user_id = session.get('user_id') logged_in_user = User.query.get(user_id) feedback = Feedback.query.get_or_404(feedback_id) user = feedback.user if user_id != user.id and not logged_in_user.is_admin: abort(401) if form.validate_on_submit(): feedback.title = form.title.data feedback.content = form.content.data db.session.commit() return redirect(f'/users/{user.username}') form.title.data = feedback.title form.content.data = feedback.content return render_template('feedback-form.html', user=user, form=form, action=f'/feedback/{feedback_id}/update')
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 update_feedback(id): """Render form to update feedback and post submission""" if "username" not in session: flash("Please login first!") return redirect('/') our_feedback = Feedback.query.get_or_404(id) our_user = our_feedback.user.username #if the feedback not by person logged in, send error, redirect to / if our_user != session['username']: flash("Wrong User!") return redirect('/') form = FeedbackForm() if form.validate_on_submit(): title = form.title.data content = form.content.data our_feedback.title = title our_feedback.content = content db.session.commit() return redirect(f'/users/{our_user}') return render_template('edit_feedback.html', form=form, feedback = our_feedback)
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 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): 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 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 feedback_save(request): form = FeedbackForm(request.user, data=request.POST.copy() or None) if form.is_bound and form.is_valid(): form.save(request.user) return HttpResponse()
def feedback_edit(feedback_id): """Validate and show feedback edit form""" feedback = Feedback.query.get_or_404(feedback_id) if session["user_id"] == feedback.user.id: form = FeedbackForm() return render_template('/edit_feed.html', form=form, feedback=feedback)
def update_feedback(feedback_id): """Show update-feedback form and process it.""" feedback = Feedback.query.get(feedback_id) 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) if main_user.username != feedback.username: flash("You are not authorized", "danger") return redirect('/') form = FeedbackForm(obj=feedback) if form.validate_on_submit(): feedback.title = form.title.data feedback.content = form.content.data db.session.commit() return redirect(f"/user/{feedback.username}") return render_template("/edit_feedback.html", form=form, feedback=feedback, main_user=main_user)
def update_feedback(feedback_id): feedback = Feedback.query.get_or_404(feedback_id) user = feedback.user form = FeedbackForm(obj=feedback) if form.validate_on_submit(): if user.username == session['user']: username = feedback.user.username feedback.title = request.form['title'] feedback.content = request.form['content'] db.session.commit() return redirect(f'/users/{username}') else: flash('Can only edit your own feedback') username = session['user'] return redirect(f'/users/{username}') elif 'user' not in session: flash('User must be logged in') return redirect('/login') elif user.username == session['user']: return render_template('/update.html', form=form) else: flash('Can only edit your own feedback') username = session['user'] return redirect(f'/users/{username}')
def update_feedback(feedback_id): feedback = Feedback.query.get_or_404(feedback_id) if 'username' in session and session[ 'username'] == feedback.username or User.query.get( session['username']).is_admin: form = FeedbackForm() if form.validate_on_submit(): feedback.title = form.title.data feedback.content = form.content.data db.session.commit() return redirect(f"/users/{session['username']}") form.content.data = feedback.content users = User.query.all() logged_in_user = User.query.get(session['username']) return render_template('update_feedback_form.html', form=form, users=users, logged_in_user=logged_in_user, username=session['username'], feedback=feedback) return redirect('/login')
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 edit_feedback(id): if 'user_username' not in session: flash("You must login", "warning") return redirect("/login") sessuser = session["user_username"] form = FeedbackForm() feedback = Feedback.query.get(id) if form.validate_on_submit(): title = form.title.data content = form.feedback.data feedback.title = title feedback.content = content db.session.add(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 edited feedback", "success") return redirect(f"/users/{sessuser}") if sessuser == feedback.username: form.title.data = feedback.title form.feedback.data = feedback.content return render_template("editfeedback.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 "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 edit_feedback(feedback_id): """ Logged-in user: Edit feedback form """ feedback = Feedback.query.get_or_404(feedback_id) if "username" not in session: flash("You must be logged in to view!") abort(401) elif feedback.user.username != session['username']: flash("You can only give yourself feedback!") abort(401) else: user = User.query.get_or_404(feedback.user.username) form = FeedbackForm(obj=feedback) if form.validate_on_submit(): feedback.title = form.title.data feedback.content = form.content.data db.session.commit() return redirect(f'/users/{session["username"]}') return render_template("edit-feedback.html", user=user, feedback=feedback, form=form)
def update_feedback(feedback_id): """Show update-feedback form and process it.""" feedback = Feedback.query.get(feedback_id) if "username" not in session or feedback.username != session['username']: raise Unauthorized() form = FeedbackForm(obj=feedback) if form.validate_on_submit(): feedback.title = form.title.data feedback.content = form.content.data db.session.commit() return redirect(f"/users/{feedback.username}") return render_template("/feedback_edit.html", form=form, feedback=feedback) # @app.route('/tweets/<int:id>', methods=["POST"]) # def delete_tweet(id): # """Delete tweet""" # if 'user_id' not in session: # flash("Please login first!", "danger") # return redirect('/login') # tweet = Tweet.query.get_or_404(id) # if tweet.user_id == session['user_id']: # db.session.delete(tweet) # db.session.commit() # flash("Tweet deleted!", "info") # return redirect('/tweets') # flash("You don't have permission to do that!", "danger") # return redirect('/tweets')
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(request): if request.method == "POST": form = FeedbackForm(request.POST) if form.is_valid(): form.instance.user = request.user if 'HTTP_REFERER' in request.META: form.instance.page = request.META['HTTP_REFERER'] form.save() return HttpResponse('', mimetype="text/plain") else: logger.debug(form.errors) error_msg = [] for field in form.errors: for error in form.errors[field]: error_msg.append('%s: %s' % (form.fields[field].label, error)) error_msg = '\n'.join(error_msg) return HttpResponseBadRequest(error_msg, mimetype="text/plain") else: return HttpResponseNotAllowed([ "POST", ])