예제 #1
0
 def post(self):
     """Validate the user input, and either prompt the user for a
        new answer, or prepare the page for a new question, by
        properly updating the CurrentQuestion entity for the
        given user."""
     user = users.get_current_user()
     current = search_by_user(user.user_id())
     answer = self.request.get('answer')
     if validate(answer,current.solution):
         current.valid = "Correct"
         current.solved += 1
         if current.solved // 10 >= current.level:
             current.level += 1
         previous = current.stmt[0]+' '+current.stmt[1]+' is solved by '
         previous += ' '.join(current.solution)
         current.previous.append(previous)
         solution,stmt = next_question(current.level)
         current.stmt = stmt
         current.solution = solution
     else:
         current.valid = "Try Again"
     current.attempts += 1    
     current.put()
     #self.redirect('/questions')
     self.get()
예제 #2
0
 def post(self):
     user = users.get_current_user()
     current = search_by_user(user.user_id())
     answer = self.request.get('answer')
     if validate(answer,current.sample_sol):
         current.valid = "Correct"
     else:
         current.valid = "Try Again"
     current.put()
     self.get()
예제 #3
0
 def get(self):
     user = users.get_current_user()
     if user:
         current = search_by_user(user.user_id())
         stmt = current.sample_stmt[0]+' '+current.sample_stmt[1]
         context = self.context.extend({'stmt':stmt,
                                        'user':user,
                                        'nickname':current.user.email(),
                                        'is_valid':current.valid})
     else:
         context = self.context
     self.render(self.template,**context)
예제 #4
0
 def get(self):
     """As apposed to previous impleminations, get() will be the only
        rendering method in this handler. Note that necessitates
        pulling updated CurrentQuestion information for each response,
        since the put() method most likely will change the object."""
     user = users.get_current_user()
     current = search_by_user(user.user_id())
     stmt = current.stmt[0]+' '+current.stmt[1]
     context = self.context.extend({'user':user,
                                    'nickname':user.email(),
                                    'stmt':stmt,
                                    'attempt':"",
                                    'problems':current.previous,
                                    'is_valid':current.valid,
                                    'level':current.level,
                                    'solved':current.solved,
                                    'attempts':current.attempts})
     self.render(self.template,**context)