def get( self ): q = get_approving_question() if q == None or q.question == None: q = get_unapproved_question() if q == None: q = Question() """ q_submitters = get_questions_with_submitters() submitters = [] for s in q_submitters: if s.submitter and not s.submitter in submitters: submitters.append( s.submitter ) """ logging.info('Question: %s %s %s' % (q.question, q.category, q.answer)) q.state = 'approving' q.put() template_values = { 'CSS_FILE' : 'admin', 'JS_FILE' : '', 'q' : q, 'num_not_approved' : get_unapproved_question_count() } self.response.out.write( template.render( 'templates/admin.html', template_values ) )
def post( self ): question = self.request.get( 'question' ) correct = self.request.get( 'answer' ) cat = self.request.get( 'category' ) diff = self.request.get( 'difficulty' ) incorrect_1 = self.request.get( 'incorrect_1' ) incorrect_2 = self.request.get( 'incorrect_2' ) incorrect_3 = self.request.get( 'incorrect_3' ) submitter_id = self.request.get( 'submitter_uuid' ) q = get_approving_question() submitter = User.get_by_uuid( submitter_id ) random.seed( question ) a = random.randint( 1, 4 ) if a == 1: q.question = question q.opt_1 = correct q.opt_2 = incorrect_1 q.opt_3 = incorrect_2 q.opt_4 = incorrect_3 q.answer = correct q.state = 'unused' q.category = cat q.difficulty = diff q.submitter = submitter elif a == 2: q.question = question q.opt_1 = incorrect_1 q.opt_2 = correct q.opt_3 = incorrect_2 q.opt_4 = incorrect_3 q.answer = correct q.state = 'unused' q.category = cat q.difficulty = diff q.submitter = submitter elif a == 3: q.question = question q.opt_1 = incorrect_1 q.opt_2 = incorrect_2 q.opt_3 = correct q.opt_4 = incorrect_3 q.answer = correct q.state = 'unused' q.category = cat q.difficulty = diff q.submitter = submitter else: q.question = question q.opt_1 = incorrect_1 q.opt_2 = incorrect_3 q.opt_3 = incorrect_2 q.opt_4 = correct q.answer = correct q.state = 'unused' q.category = cat q.difficulty = diff q.submitter = submitter if submitter: q.put() old_place = submitter.get_place() submitter.add_message( 'The question you submitted was approved!<br /> You\'ve gained 3 points! Keep submitting to gain even more points!' ) submitter.score += 3 submitter.put() new_place = submitter.get_place() if new_place < old_place: submitter.add_message( 'You just overtook someone and scored place #%s' % new_place ) self.redirect( '/admin' )