def edit_question(request, question_id): context = {} question = Question.objects.get(pk=question_id) old_revision = question.get_active_revision() if request.method == "POST": form = QuestionForm(request.POST, instance=question) if form.is_valid(): form.save() question = form.save() if old_revision.text != form.cleaned_data["body"]: new_revision = QuestionRevision(question=question, user=request.user, text=form.cleaned_data["body"], active=True) new_revision.save() old_revision.active = False old_revision.save() return HttpResponseRedirect("/question/%s" % question_id) else: form = QuestionForm(instance=question, initial={"body": old_revision.text}) context["form"] = form return r2r(request, "edit_question", context)
def edit_question(request, question_id): context = {} question = Question.objects.get(pk=question_id) old_revision = question.get_active_revision() if request.method == "POST": form = QuestionForm(request.POST, instance=question) if form.is_valid(): form.save() question = form.save() if old_revision.text != form.cleaned_data["body"]: new_revision = QuestionRevision( question=question, user=request.user, text=form.cleaned_data["body"], active=True) new_revision.save() old_revision.active = False old_revision.save() return HttpResponseRedirect("/question/%s" % question_id) else: form = QuestionForm(instance=question, initial={ "body": old_revision.text }) context["form"] = form return r2r(request, "edit_question", context)
def question_entry(request): '''Submit question/answer pairs''' args = {} args["added"] = False if request.method == 'POST': question_form = QuestionForm(request.POST) if question_form.is_valid(): question_form.save() args["added"] = True args["prev_question"] = str(question_form.instance.question) args["prev_topic"] = str(question_form.instance.subtopic) # clear form so next question can be entered. question_form = QuestionForm() else: question_form = QuestionForm() args["question_form"] = question_form return render_to_response( 'questionEntry.html', args, context_instance=RequestContext(request), )
def add_question(request): form = QuestionForm() if request.method == 'POST': form = QuestionForm(request.POST) if form.is_valid(): form.instance.user = request.user form.save() return HttpResponseRedirect(reverse('index')) return request_response(request, 'answers/add_question.html', {'form':form})
def create(request): if request.method == 'POST': form = QuestionForm(request.POST) if form.is_valid(): form.save() mail_admins('Someone made a question!', 'http://' + request.get_host() + '/admin/quiz/question/?state=NEW') return HttpResponseRedirect('/quiz/created') else: form = QuestionForm() return render(request, 'quiz/create.html', {'form':form, 'title':'Create question'})
def create(request): if request.method == 'POST': form = QuestionForm(request.POST) if form.is_valid(): form.save() return redirect('index') else: form = QuestionForm() return render_to_response('questionsandanswers/create.html', {'form': form}, context_instance=RequestContext(request))
def create(request): if request.method == "POST": form = QuestionForm(request.POST) if form.is_valid(): form.save() mail_admins( "Someone made a question!", "http://" + request.get_host() + "/admin/quiz/question/?published__exact=0" ) return HttpResponseRedirect("/quiz/created") else: form = QuestionForm() return render_to_response("quiz/create.html", {"form": form}, context_instance=RequestContext(request))
def edit(request, question_id): question = get_object_or_404(Question, pk=question_id) if request.method == 'POST': form = QuestionForm(request.POST, instance=question) if form.is_valid(): form.save() return redirect('index') else: form = QuestionForm(instance=question) return render_to_response('questionsandanswers/edit.html', {'form': form}, context_instance=RequestContext(request))
def create(request): if request.method == 'POST': form = QuestionForm(request.POST) if form.is_valid(): form.save() mail_admins( 'Someone made a question!', 'http://' + request.get_host() + '/admin/quiz/question/?published__exact=0') return HttpResponseRedirect('/quiz/created') else: form = QuestionForm() return render_to_response('quiz/create.html', {'form': form}, context_instance=RequestContext(request))
def create(request): if request.method == 'POST': form = QuestionForm(request.POST) if form.is_valid(): form.save() mail_admins('Someone made a question!', 'http://' + request.get_host() + '/admin/quiz/question/?published__exact=0') return HttpResponseRedirect('/quiz/created') else: form = QuestionForm() return render_to_response('quiz/create.html', {'form':form, 'title':'Create question'}, context_instance=RequestContext(request) )
def edit_question(request, question_id): question_to_edit = Question.objects.get(id=question_id) if request.method == 'POST': form = QuestionForm(request.POST, instance=question_to_edit) if form.is_valid(): form.save() return questions(request) else: form = QuestionForm(instance=question_to_edit) return render(request, 'edit_questions.html', {'form' : form})
def editQuestion(request, project_id, question_id): p = get_object_or_404(Project, pk = project_id, owner = request.user) q = get_object_or_404(Question, pk = question_id) #answer = Answer.objects.get(pk=p) if request.method == 'POST': # If the form has been submitted... form = QuestionForm(request.POST, instance = q) # A form bound to the POST data if form.is_valid(): # All validation rules pass form.save() return HttpResponseRedirect('/flow/' + project_id +'/#' + question_id) # Redirect after POST else: form = QuestionForm(instance=q) # A form initiated with the question data variables = RequestContext(request, { 'form': form, 'url_project' : p, 'url_question' : q }) return render_to_response('flow/editQuestion.html', variables)
def game_modify(request, gameid=None, qmod=False): question_form = None inst = None if gameid != "new": inst = Game.objects.get(id=gameid) questions = Question.objects.all() question_form = QuestionForm() fields = {} our_questions = inst.questionforgame_set for question in questions: fields["%s" % question.id] = BooleanField(label=question.uniq_name, required=False, widget=CheckboxInput) fields["%s_required" % question.id] = BooleanField(label=" %s povinne" % question.uniq_name, required=False, widget=CheckboxInput) if question in [ que.question for que in our_questions.all() ]: fields["%s" % question.id].initial = True if our_questions.get(question=question).required: fields["%s_required" % question.id].initial = True question_form.setFields(fields) if request.method == 'POST': if qmod: form = QuestionForm() fields={} for question in Question.objects.all(): fields["%s" % question.id] = BooleanField(label=question.uniq_name, required=False, widget=CheckboxInput) fields["%s_required" % question.id] = BooleanField(label=" %s povinne" % question.uniq_name, required=False, widget=CheckboxInput) form.setFields(fields) form.setData(request.POST) form.validate(request.POST) if form.is_valid(): form.save(gameid) return HttpResponseRedirect('/admin/games/') else: form = GameForm(request.POST, instance=inst) print "We should end here" if form.is_valid(): form.save() return HttpResponseRedirect('/admin/games/') else: form = GameForm(instance=inst) return render_to_response('admin/gameform.html', {'form': form, 'gameid': gameid, 'menuitems' : createMenuItems(), 'user' : request.user, 'title' : "Editace hry", 'questions' : question_form})
def create(request): if request.method == 'POST': form = QuestionForm(request.POST) if form.is_valid(): form.save() mail_admins( 'Someone made a question!', 'http://' + request.get_host() + '/admin/quiz/question/?state=NEW') return HttpResponseRedirect('/quiz/created') else: form = QuestionForm() return render(request, 'quiz/create.html', { 'form': form, 'title': 'Create question' })
def questionCreateView(request): args={} args.update(csrf(request)) args['error']='' objQuestionForm = QuestionForm(request.POST or None) objOptionForm = OptionFrom(request.POST or None) if request.method == 'POST': if request.POST['type_text'] == 'MCQ': # objOptionForm.clean_optionheadertext(sOptionHeaderText=request.POST['option_header_text'],nOptionHeaderID=request.POST['option_header_id']) if objQuestionForm.is_valid() and objOptionForm.is_valid(): flag=True else: flag=False else: objOptionForm = OptionFrom() if objQuestionForm.is_valid(): flag=True else: flag=False if flag == True: iOptionHeaderID = 0 i_UserId = UserDetails.objects.get(user_id=request.session['UserID']) if request.POST['type_text'] == 'MCQ': if request.POST['option_header_id']=='0': objOptionHeader = OptionHeader.objects.create(title=request.POST['option_header_text'], modified_by=i_UserId, modified_on=timezone.now()) iOptionHeaderID = OptionHeader.objects.latest('option_header_id') objOptionForm.save(commit=False, userId=i_UserId, optionHeaderId=iOptionHeaderID) else: iOptionHeaderID = OptionHeader.objects.get(option_header_id=request.POST['option_header_id']) objQuestionForm.save(commit=False, userId = i_UserId, optionHeaderId = iOptionHeaderID) args['successMsg']="Question created successfully" objOptionForm = OptionFrom() initial = {'type_text' : request.POST['type_text']} objQuestionForm = QuestionForm() args['questionCreateform']=objQuestionForm args['optionCreateform']=objOptionForm return render_to_response('Questions/CreateQuestion.html',args) else: args['questionCreateform']=objQuestionForm args['optionCreateform']=objOptionForm return render_to_response('Questions/CreateQuestion.html',args) else: args['questionCreateform']=objQuestionForm args['optionCreateform']=objOptionForm return render_to_response('Questions/CreateQuestion.html',args)
def ask(request): if request.method == 'POST': form = QuestionForm(request.POST) if form.is_valid(): question = form.save(commit=False) if request.user.is_authenticated(): question.user = request.user question.save() return render(request, 'ask_librarian/frontend/thanks.html', { 'question': question, }) else: if request.user.is_authenticated(): form = QuestionForm( initial={ 'fio': request.user.last_name + u' ' + request.user.first_name, 'email': request.user.email, } ) else: form = QuestionForm() return render(request, 'ask_librarian/frontend/ask.html', { 'form': form })
def qpool_edit(request, id): question = get_object_or_404(Question, pk=id) categs = [(c.name.capitalize(), c.name) for c in Category.objects.all()] if request.method == 'POST': form = QuestionForm(request.POST, instance=question) if form.is_valid(): newq = form.save() newq.proposed_by = request.user if newq.endorsed_by is None: newq.endorsed_by = request.user newq.save() return redirect('qpool_home', cat=newq.category.name) else: print "nevalid" else: show_users = False if question: if question.category: if question.category.name == 'proposed': show_users = True form = QuestionForm(instance=question) return render_to_response('cpanel/qpool_edit.html', {'question': question, 'form': form, 'module': 'qpool', 'categs': categs}, context_instance=RequestContext(request))
def add_question(request): context = {} settings = Settings.get_by_user(request.user) initial = {} if settings.group: initial["groups"] = [settings.group.id] if request.method == "POST": form = QuestionForm(request.POST) if form.is_valid(): question = form.save(commit=False) question.added_by = request.user question.save() revision = QuestionRevision(question=question, user=request.user, text=form.cleaned_data["body"], active=True) revision.save() return HttpResponseRedirect("/question/%s" % question.id) else: form = QuestionForm(initial=initial) context["form"] = form return r2r(request, "add_question", context)
def questions_edit(request, instance_pk=None): if instance_pk is not None: instance = get_object_or_404(Question, pk=instance_pk) else: instance = None if request.method == 'POST': form = QuestionForm(request.POST, instance=instance) if form.is_valid(): question = form.save(commit=False) question.user = request.user question.save() # form.save_m2m() # return a message messages.success(request, 'Question Created') # return a redirect return HttpResponseRedirect(reverse('journals:journal_today')) if request.method == 'GET': form = QuestionForm(instance=instance) return render_to_response('journals/questions_edit.html', RequestContext(request,{ 'form' : form, 'instance' : instance, }))
def add_question(request): context = {} settings = Settings.get_by_user(request.user) initial = {} if settings.group: initial["groups"] = [settings.group.id] if request.method == "POST": form = QuestionForm(request.POST) if form.is_valid(): question = form.save(commit=False) question.added_by = request.user question.save() revision = QuestionRevision( question=question, user=request.user, text=form.cleaned_data["body"], active=True) revision.save() return HttpResponseRedirect("/question/%s" % question.id) else: form = QuestionForm(initial=initial) context["form"] = form return r2r(request, "add_question", context)
def createQuestion(request, poll_id): if (poll_id == None): return redirect("/") poll = Poll.objects.get(id=poll_id) if (poll.creator != request.user): return redirect("/") if request.method == "POST": question_form = QuestionForm(data=request.POST) if question_form.is_valid(): #falta validar por la respuesta. question = question_form.save(commit=False) question.poll = Poll.objects.get(id=poll_id) type = Type.objects.get(id=1) question.type = type question.save() for ans in request.POST.getlist('answers'): answer = Answer(question=question, text=ans) answer.save() if request.POST['continuar'] == "1": return render_to_response( "create_question.html", context_instance=RequestContext(request)) else: return redirect('/invitation_list/' + poll_id) return render_to_response("create_question.html", {'poll': poll}, context_instance=RequestContext(request))
def SaveQuestionForm(request): if request.is_ajax(): data = request.POST.copy() faq_form = QuestionForm(data) if faq_form.is_valid(): saved_object = faq_form.save() subject = u'%s - Новый вопрос' % settings.SITE_NAME subject = u''.join(subject.splitlines()) message = render_to_string( 'faq/admin_message_template.html', { 'saved_object': saved_object, 'site_name': settings.SITE_NAME, } ) try: emailto = Settings.objects.get(name='workemail').value except Settings.DoesNotExist: emailto = False if emailto: msg = EmailMessage(subject, message, settings.DEFAULT_FROM_EMAIL, [emailto]) msg.content_subtype = "html" msg.send() return HttpResponse('success') else: faq_form_html = render_to_string( 'faq/faq_form.html', {'form': faq_form} ) return HttpResponse(faq_form_html) else: return HttpResponseBadRequest()
def question_edit(request, id=None): if id is not None: question = get_object_or_404(Question, pk=id) else: question = None categs = [(c.name.capitalize(), c.name) for c in Category.objects.all()] if request.method == 'POST': form = QuestionForm(request.POST, instance=question) if form.is_valid(): newq = form.save() if (newq.endorsed_by is None): newq.endorsed_by = request.user newq.save() return HttpResponseRedirect( reverse('wouso.interface.cpanel.views.qpool_home', args=(newq.category.name, ))) else: show_users = False if question: if question.category: if question.category.name == 'proposed': show_users = True form = QuestionForm(instance=question, users=show_users) return render_to_response('cpanel/question_edit.html', { 'question': question, 'form': form, 'module': 'qpool', 'categs': categs }, context_instance=RequestContext(request))
def question_edit(request, id=None): if id is not None: question = get_object_or_404(Question, pk=id) else: question = None categs = [(c.name.capitalize(), c.name) for c in Category.objects.all()] if request.method == 'POST': form = QuestionForm(request.POST, instance=question) if form.is_valid(): newq = form.save() if (newq.endorsed_by is None): newq.endorsed_by = request.user newq.save() return HttpResponseRedirect(reverse('wouso.interface.cpanel.views.qpool_home', args = (newq.category.name,))) else: show_users = False if question: if question.category: if question.category.name == 'proposed': show_users = True form = QuestionForm(instance=question, users=show_users) return render_to_response('cpanel/question_edit.html', {'question': question, 'form': form, 'module': 'qpool', 'categs': categs}, context_instance=RequestContext(request))
def edit_question(request, question_id): a_question = get_object_or_404(Question, pk=question_id) form = QuestionForm (request.POST or None, instance = a_question) if form.is_valid(): question = form.save() return redirect(reverse("polls:index")) return render (request, "polls/edit_template.html", {'form': form })
def write_question(request, quiz_id): """Shows all questions for a quiz and lets user create a new one""" quiz = get_object_or_404(Quiz, pk=quiz_id) if request.method == "POST": # copies the form data to a new dictionary and adds the quiz id data = request.POST mydata = dict() for key, value in data.iteritems(): mydata[key] = value mydata['quiz'] = quiz_id form = QuestionForm(mydata) if form.is_valid(): form.save() return HttpResponseRedirect('') else: questions = Question.objects.all().filter(quiz=quiz_id) form = QuestionForm() return render(request, 'quiz/write_question.html', {'quiz': quiz, 'form': form, 'questions': questions})
def edit_dsg_survey(request, entity_id, data_series_group_name, survey_id, data_series_name): entity = Entity.objects.get(pk=entity_id) survey = Survey.objects.get(pk=survey_id) if not request.user.is_staff and 'change_entity' not in get_perms(request.user, entity) or survey.active == False: raise Http404 data_series_group = DataSeriesGroup.objects.get(pk=data_series_group_name) data_series = get_objects_for_user(request.user, 'can_use', data_series_group.dataseries_set.all()) if len(data_series) == 0: data_series = data_series_group.dataseries_set.all() key = {} try: key['pk'] = int(data_series_name) except ValueError: key['name'] = data_series_name data_series = get_object_or_404(data_series, **key) if entity.entity_type_id == 'government' and data_series.name != entity.abbreviation: raise Http404 categories = DataSeriesGroup.objects.get(pk='Data collection year').dataseries_set.filter(visible=True) if request.POST: form = QuestionForm(request.POST, entity=entity, user=request.user, survey=survey, country=data_series, series=categories) if form.is_valid(): form.save() next_section = request.POST.get('next') if next_section: return HttpResponseRedirect('#%s' % next_section) else: return HttpResponseRedirect(entity.get_absolute_url()+"#responseset_"+data_series.name) else: form = QuestionForm(entity=entity, user=request.user, survey=survey, country=data_series, series=categories) context = { 'entity':entity, 'survey':survey, 'data_series_group':data_series_group, 'form':form, 'data_series':data_series } return render_to_response('ihp_results/edit_dsg_survey.html',context,RequestContext(request))
def add_new_question(request): if request.POST: form = QuestionForm(request.POST) if form.is_valid(): new_question = form.save() # return HttpResponseRedirect('/question/updated/%s/' %(new_question.id)) return HttpResponseRedirect('/question/show/') else: form = QuestionForm() return render_to_response('question_model_form.html', dict(form=form))
def questionEdit(request, mode, type, test_id, question_id=0): render = render_options(request) if request.method == 'GET': if mode == 'add': render['form'] = QuestionForm() elif mode == 'edit': render['form'] = QuestionForm( instance=get_object_or_404(Question, id=question_id)) else: question = get_object_or_404(Question, id=question_id) question.delete() return HttpResponseRedirect('/tests/test/%s/' % test_id) return render_to_response('question.html', render) else: if mode == 'add': form = QuestionForm(request.POST) if form.is_valid(): from django.db.models import Max question = form.save(commit=False) question.test = get_object_or_404(Test, id=test_id) question.type = type number = Question.objects.aggregate( Max('number'))['number__max'] if number == None: number = 0 question.number = number + 1 question.save() return HttpResponseRedirect('/tests/test/%s/#%s' % (test_id, question.id)) else: return render_to_response('question.html', render) elif mode == 'edit': form = QuestionForm(request.POST, instance=get_object_or_404(Question, id=question_id)) if form.is_valid(): form.save() return HttpResponseRedirect('/tests/test/%s/#%s' % (test_id, question.id)) else: return render_to_response('question.html', render) else: return HttpResponseRedirect('/tests/test/%s/' % test_id)
def create_question(request, question_id=None): '''create or update a answer based on a question id''' user = request.user if request.POST: #save form question = None question_id = request.POST["question_id"] if question_id: #editing question = Question.objects.get(id=question_id) form = QuestionForm(request.POST, instance=question) if form.is_valid(): author = user.username question = form.save(commit=False) question.author = user question.save() currentTags = question.tags.all() for eachTag in currentTags: question.tags.remove(eachTag) tags = request.POST['tags'] if tags: tags = tags.split(",") print >> sys.stderr, repr(tags) for eachTag in tags: thisTag = Tag.objects.filter(text=eachTag) if not thisTag: #new tag tag = Tag(text=eachTag.strip()) tag.save() else: #old tag tag = thisTag[0] question.tags.add(tag) return HttpResponseRedirect('/hello/question/%s' % question.id) else: #show form args = {} question = None tags = "" if question_id: #editing current question = Question.objects.get(id=question_id) args['question'] = question args['command'] = "Update" tags = ",".join(question.tags.values_list("text", flat=True)) else: args['command'] = "Create" form = QuestionForm(tags=tags, instance=question) args['form'] = form return render_to_response("create_question.html", args, context_instance=RequestContext(request))
def add_question(request, quiz_id): """Add the new question that superuser created to the database.""" form = QuestionForm(request.POST) if form.is_valid(): new_ques = form.save() new_ques.save() return HttpResponseRedirect( reverse('create_question', kwargs={'quiz_id': quiz_id})) else: return render(request, 'invalidAttempt.html', {'message': 'Invalid input!'})
def create_question(request, question_id=None): '''create or update a answer based on a question id''' user = request.user if request.POST: #save form question=None question_id = request.POST["question_id"] if question_id: #editing question=Question.objects.get(id=question_id) form = QuestionForm(request.POST, instance=question) if form.is_valid(): author = user.username question=form.save(commit=False) question.author = user question.save() currentTags=question.tags.all() for eachTag in currentTags: question.tags.remove(eachTag) tags=request.POST['tags'] if tags: tags=tags.split(",") print >>sys.stderr, repr(tags) for eachTag in tags: thisTag=Tag.objects.filter(text=eachTag) if not thisTag: #new tag tag = Tag(text=eachTag.strip()) tag.save() else: #old tag tag=thisTag[0] question.tags.add(tag) return HttpResponseRedirect('/hello/question/%s'%question.id) else: #show form args={} question=None tags="" if question_id: #editing current question=Question.objects.get(id=question_id) args['question']=question args['command']="Update" tags=",".join(question.tags.values_list("text", flat=True)) else: args['command']="Create" form = QuestionForm(tags=tags, instance=question) args['form'] = form return render_to_response("create_question.html", args, context_instance=RequestContext(request))
def question_admin(request, slug): q = get_object_or_404(Question, slug=slug) if request.method == 'POST': form = QuestionForm(request.POST, request.FILES, instance=q) if form.is_valid(): return HttpResponseRedirect(form.save().get_absolute_url()) else: form = QuestionForm(instance=q) return render_to_response('qna/admin.html', { 'question':q, 'form':form, }, context_instance=RequestContext(request))
def question_admin(request, slug): q = get_object_or_404(Question, slug=slug) if request.method == 'POST': form = QuestionForm(request.POST, request.FILES, instance=q) if form.is_valid(): return HttpResponseRedirect(form.save().get_absolute_url()) else: form = QuestionForm(instance=q) return render_to_response('qna/admin.html', { 'question': q, 'form': form, }, context_instance=RequestContext(request))
def create_question(request): form = QuestionForm(request.POST or None) #choice_form = ChoiceForm(request.POST or None) if form.is_valid(): #and choice_form.is_valid(): #choice = choice_form.save(commit=False) question = form.save(commit=False) question.pub_date = timezone.now() question.save() #choice.question = question #choice.save() return redirect(reverse("polls:index")) return render(request, 'polls/my_template.html', {'form':form,})# 'choice_form':choice_form})
def question_entry(request): '''Submit question/answer pairs''' args = {} args["added"] = False if request.method == 'POST': question_form = QuestionForm(request.POST) if question_form.is_valid(): question_form.save() args["added"] = True args["prev_question"] = str(question_form.instance.question) args["prev_topic"] = str(question_form.instance.subtopic) # clear form so next question can be entered. question_form = QuestionForm() else: question_form = QuestionForm() args["question_form"] = question_form return render_to_response('questionEntry.html', args, context_instance=RequestContext(request), )
def questionEdit(request, mode, type, test_id, question_id = 0): render = render_options(request) if request.method == 'GET': if mode == 'add': render['form'] = QuestionForm() elif mode == 'edit': render['form'] = QuestionForm(instance = get_object_or_404(Question, id = question_id)) else: question = get_object_or_404(Question, id = question_id) question.delete() return HttpResponseRedirect('/tests/test/%s/' % test_id) return render_to_response('tests/question.html', render) else: if mode == 'add': form = QuestionForm(request.POST) if form.is_valid(): from django.db.models import Max question = form.save(commit = False) question.test = get_object_or_404(Test, id = test_id) question.type = type number = Question.objects.aggregate(Max('number'))['number__max'] if number == None: number = 0 question.number = number + 1 question.save() return HttpResponseRedirect('/tests/test/%s/#%s' % (test_id, question.id)) else: return render_to_response('tests/question.html', render) elif mode == 'edit': form = QuestionForm(request.POST, instance = get_object_or_404(Question, id = question_id)) if form.is_valid(): form.save() return HttpResponseRedirect('/tests/test/%s/#%s' % (test_id, question.id)) else: return render_to_response('tests/question.html', render) else: return HttpResponseRedirect('/tests/test/%s/' % test_id)
def landing_page(request): if request.method == 'POST': form = QuestionForm(request.POST) if form.is_valid(): instance = form.save() #return HttpResponseRedirect("qanda.views.question", kwargs={'qid': instance.pk}) else: form = QuestionForm() form.action = reverse("qanda.views.landing_page") return render_to_response( "qanda/landing.html", { "form": form, }, RequestContext (request) )
def qpool_new(request, cat=None): form = QuestionForm() categs = [(c.name.capitalize(), c.name) for c in Category.objects.all()] if request.method == "POST": question = QuestionForm(data = request.POST) if question.is_valid(): newq = question.save() return redirect('qpool_home', cat=newq.category.name) else: form = question return render_to_response('cpanel/qpool_new.html', {'form': form, 'module': 'qpool', 'categs': categs}, context_instance=RequestContext(request) )
def qpool_new(request, cat=None): form = QuestionForm() categs = [(c.name.capitalize(), c.name) for c in Category.objects.all()] if request.method == "POST": question = QuestionForm(data=request.POST) if question.is_valid(): newq = question.save() return redirect('qpool_home', cat=newq.category.name) else: form = question return render_to_response('cpanel/qpool_new.html', { 'form': form, 'module': 'qpool', 'categs': categs }, context_instance=RequestContext(request))
def ask(request): if request.method == 'POST': form = QuestionForm(request.POST) if form.is_valid(): question = form.save(commit=False) if request.user.is_authenticated(): question.user = request.user question.save() ask_librarian_settings = getattr(settings, 'ASK_LIBRARIAN', {}) print ask_librarian_settings main_dispatcher = ask_librarian_settings.get('MAIN_DISPATCHER', None) print main_dispatcher if main_dispatcher: fail_silently = True if settings.DEBUG: fail_silently = False domain = getattr(settings, 'SITE_DOMAIN', 'localhost') from_mail = settings.DEFAULT_FROM_EMAIL send_mail(u"Спроси библиографа. Новый вопрос.", u'Поступил новый вопрос. Информация находится по адресу http://%s%s' % (domain, reverse('ask_librarian:administration:question_detail', args=(question.id,))), from_mail, [main_dispatcher], fail_silently=fail_silently ) return render(request, 'ask_librarian/frontend/thanks.html', { 'question': question, }) else: if request.user.is_authenticated(): form = QuestionForm( initial={ 'fio': request.user.last_name + u' ' + request.user.first_name, 'email': request.user.email, } ) else: form = QuestionForm() return render(request, 'ask_librarian/frontend/ask.html', { 'form': form })
def createQuestion(request, project_id): p = get_object_or_404(Project, pk = project_id, owner = request.user) if request.method == 'POST': # If the form has been submitted... question = Question(relatedProject = p) # set the relatedProject field which is not included in the form #form = QuestionForm(sanitized, instance = question) # A form bound to the POST data form = QuestionForm(request.POST, instance = question) # A form bound to the POST data if form.is_valid(): # All validation rules pass #title = form.cleaned_data['title'] form.cleaned_data['explanation'] = sanitizeHtml(form.cleaned_data['explanation']) #relatedProject = form.cleaned_data['relatedProject'] #tags = form.cleaned_data['tags'] #new_question = new_question = form.save() qid = str(new_question.pk) return HttpResponseRedirect('/flow/' + project_id + '/' + qid + '/' + '#' + qid) # Redirect after POST else: form = QuestionForm() # An unbound form variables = RequestContext(request, { 'form': form, 'url_project' : p }) return render_to_response('flow/createquestion.html', variables)
def add_question(request,classes,lecture_number,noteslug): lectures = Lecture.objects.filter(slug=classes, lecture_number=lecture_number) notes = Note.objects.filter(slug=noteslug) if request.POST: questionform = QuestionForm(request.POST) if questionform.is_valid(): newquestion = questionform.save(commit=False) newquestion.author = User.objects.get(username=request.user) newquestion.note = notes[0] newquestion.save() return HttpResponseRedirect('../..') else: questionform = QuestionForm(request.POST) args = {} args.update(csrf(request)) args['form'] = questionform args['classes'] = classes args['lecture_number'] = lecture_number args['note'] = notes[0] return render_to_response('add_question.html', args)