def exe_action(self, action, state, request):
        """Execute the action specified by the caller.

        This application recognizes several actions that the
        client may freely attempt to invoke. If the action is
        recognized, relevant methods are called on the state
        object with needed parameter being queried as needed."""
        if action == 'Go Back':
            state.go_back()
        elif action == 'Reset Session':
            # This session is being deleted and new one made.
            state.reset_session()
            state = self.get_state()
        elif action == 'Choose Quiz':
            # Form created by LIBRARY should be called "quiz."
            quiz_id = request.getParameter('quiz')
            state.load_quiz(quiz_id)
        elif action == 'pickverse':
            # Query: "action=pickverse&id=X" where X is a number.
            verse_id = request.getParameter('id')
            state.pick_verse(verse_id)
        elif action == 'Check Your Answer':
            verses = []
            for verse in range(state.verse_total):
                text = request.getParameter('verse' + str(verse))
                verses.append(text)
            state.check_text(verses)
            self.__status = 0
        elif action == 'checkstatus':
            self.__status = state.check_status()
        return state
Execute the action specified by the caller.

        This application recognizes several actions that the
        client may freely attempt to invoke. If the action is
        recognized, relevant methods are called on the state
        object with needed parameter being queried as needed.
recipes/Python/577043_Bible_Verse_Quiz__VerseMatchpy/recipe-577043.py