def show_all_questions(request): """Show a list of all the questions currently in the databse.""" user = request.user ci = RequestContext(request) context = {} if not is_moderator(user): raise Http404("You are not allowed to view this page !") if request.method == 'POST': if request.POST.get('delete') == 'delete': data = request.POST.getlist('question') if data is not None: question = Question.objects.filter(id__in=data, user_id=user.id).delete() if request.POST.get('upload') == 'upload': form = UploadFileForm(request.POST, request.FILES) if form.is_valid(): questions_file = request.FILES['file'] if questions_file.name.split('.')[-1] == "json": questions_list = questions_file.read() question = Question() question.load_from_json(questions_list, user) else: message = "Please Upload a JSON file" context['message'] = message if request.POST.get('download') == 'download': question_ids = request.POST.getlist('question') if question_ids: question = Question() questions = question.dump_into_json(question_ids, user) response = HttpResponse(questions, content_type='text/json') response['Content-Disposition'] = 'attachment; filename=\ "{0}_questions.json"'.format(user) return response else: msg = "Please select atleast one question" context['msg'] = msg questions = Question.objects.filter(user_id=user.id) form = QuestionFilterForm(user=user) upload_form = UploadFileForm() context['papers'] = [] context['question'] = None context['questions'] = questions context['form'] = form context['upload_form'] = upload_form return my_render_to_response('yaksh/showquestions.html', context, context_instance=ci)