def ans_business_questions(request,bus_id): if not request.user.is_authenticated(): return HttpResponseRedirect('/accounts/login/?next=%s'%request.path) if request.method != 'POST': b = get_object_or_404(Business, pk=bus_id) try: b.photourl = get_photo_web_url(b) except: b.photourl= "" #NONE questions = get_questions(b,request.user) b = get_single_bus_data(b,request.user) context = get_default_bus_context(b, request.user) context['questions'] = questions context['value_questions'] = getValueTagsWithOptions() print(context['value_questions'][0].options) return render_to_response('ratings/contribute/ans_questions.html', context_instance=RequestContext(request,context)) else: bid = request.POST['bid'] values = [] booleans = [] #get the list of anwers for key in request.POST: if key.find('answer') > -1: booleans.append(request.POST[key]) for key in request.POST: if key.find('values') > -1: values.append(request.POST[key]) b = Business.objects.get(id=bid) for v in booleans: ans = v.split('_')[1] qid = v.split('_')[0] hardtag = HardTag.objects.get(id=qid) if ans == 'y': BooleanQuestion.objects.create(hardtag=hardtag,business = b,user=request.user,agree=True) else: BooleanQuestion.objects.create(hardtag=hardtag,business = b,user=request.user,agree=False) for v in values: ans = v.split('_')[1] vid = v.split('_')[0] valuetag = ValueTag.objects.get(id=vid) IntegerQuestion.objects.create(valuetag=valuetag,business = b,user=request.user,value=ans) return redirect('/ratings/'+str(bus_id)+'/')
def add_question(request): if not request.user.is_authenticated(): return HttpResponseRedirect('/accounts/login/?next=%s'%request.path) #post a question if request.method=='POST': form = HardTagForm(request.POST) question = form.data['question'] if 'tag' in form.data: descr = form.data['tag'] else: descr = 'unset' HardTag.objects.create(creator=request.user,question=question,descr=descr) f = HardTagForm() context = get_default_blank_context(request.user) context['form'] = f context['type'] = 'question' context['value_questions'] = getValueTagsWithOptions() return render_to_response('ratings/contribute/add_content.html', context, context_instance=RequestContext(request))