def get(self): domainType = self.request.get('domain', default_value='whole') questionType = self.request.get('type', default_value='mc') highlightAnswer = int(self.request.get('answermode', default_value='1')) syllabus = self.request.get('syllabus', default_value='BODMAS rule') domain = Domain.defaultDomain(Domain.externalToInternalType(domainType)) syllabusUnits = SyllabusUnit.all().filter("name = ", syllabus) knowledgeUnits = [s.knowledgeUnit for s in syllabusUnits] modelProblems = ModelProblem.findModelProblemsMatchingKnowledgeUnits(knowledgeUnits) problems = [] tags = self.request.get_all("tag") numquestions = int(self.request.get('numquestions', default_value=3)) outputFormat = self.request.get('format', default_value='json') self.html_form = 'html/quiz.html' if outputFormat == 'html' else 'html/quiz.json' # At least one tag must match while len(problems) < numquestions: problem = GenerateQuestionForModelProblems(modelProblems, domain, tags, questionType, highlightAnswer, outputFormat) logging.info("Num problems generated = " + str(len(problems))) if problem: problems.append(problem) self.template_values = { 'problems' : problems, } FormHandler.get(self)
def get(self): key = self.request.params.get("_key") if key: template = ProblemTemplate.retrieve(ProblemTemplate, key) problemName = template.problemName self.variables = [] for v in Variable.all().ancestor(template): varDomains = {"name": v.name, "type": Domain.internalToExternalType(v.domain.type)} self.variables.append(varDomains) else: problemName = self.request.params["problemName"] template = ProblemTemplate(problemName) problem = Category.allProblems[problemName] self.variables = [] for v in problem.variables: varDomains = {"name": v.name, "type": Domain.internalToExternalType(Domain.ANY)} self.variables.append(varDomains) self.template_values = { "problemName": problemName, "template": template, "variables": self.variables, "deleted": False, "preview": "", } FormHandler.get(self)
def get(self): current_user = users.get_current_user() user = User.retrieve(User, current_user.nickname()) # session = sessions.Session(writer = "cookie") domainType = user.domainType questionType = user.questionType if not user.answermode: user.answermode = '1' highlightAnswer = int(self.request.get('answermode', default_value=user.answermode)) domain = Domain.defaultDomain(Domain.externalToInternalType(domainType)) syllabusUnits = db.get(user.syllabusUnitKeys) knowledgeUnits = [s.knowledgeUnit for s in syllabusUnits] modelProblems = ModelProblem.findModelProblemsMatchingKnowledgeUnits(knowledgeUnits) problems = [] tags = self.request.get_all("tag") numquestions = int(self.request.get('numquestions', default_value=user.numquestions)) format = self.request.get('format', default_value='html') self.html_form = 'html/quiz.html' if format == 'html' else 'html/quiz.txt' # Allows sub-selection of templates by matching tags. # At least one tag must match while len(problems) < numquestions: problem = GenerateQuestionForModelProblems(modelProblems, domain, tags, questionType, highlightAnswer, format) if problem: problems.append(problem) self.template_values = { 'problems' : problems, } FormHandler.get(self)
def render(self, learner): action = self.request.params.get('action') if learner: if action == 'Submit' or action == 'Delete': self.html_form = "html/learner.html" self.template_values = { 'learner': learner, 'deleted': action == 'Delete', } FormHandler.render(self, learner)
def get(self): problems = Category.allProblems.keys() problemName = self.request.params.get('problemName') if problemName: problem = Category.allProblems[problemName] variableList = [v.name for v in problem.varDomains] templateList = ProblemTemplate.all().filter("problemName = ", problemName) else: variableList = [] templateList = [] self.template_values = { 'problems' : problems, 'problemName' : problemName, 'variables': str(variableList), 'templates': templateList, } FormHandler.get(self)
def get(self): user = users.get_current_user() username = "" syllabus = "" if user: username = user.nickname() user = User.retrieve(User, username) root = SyllabusUnit.all().filter('name', "CBSE Mathematics 6th").fetch(1)[0] syllabus = self.fetchChildren(root) self.template_values = { 'username' : username, 'domainType' : user.domainType if hasattr(user, 'domainType') else "dec", 'questionType': user.questionType if hasattr(user, 'questionType') else "mc", 'answermode': user.answermode if hasattr(user, 'answermode') else "No", 'syllabus': str(syllabus), } FormHandler.get(self)
def render(self, item): # session = sessions.Session(writer="cookie") # session["domain"] = self.request.params['domain'] if self.request.params.has_key('domain') else "int" # session["type"] = self.request.params['type'] if self.request.params.has_key('type') else 'mc' # session["answer"] = self.request.params.has_key('answer') user = item if item else User.retrieve(User, self.user.nickname()) domains = { 'whole': 'Whole Numbers', 'dec': 'Decimals', 'int': 'Integers', 'frac': 'Fractions'} syllabusUnits = db.get(user.syllabusUnitKeys) syllabusItems = [s.name for s in syllabusUnits] self.template_values = { 'username' : self.user.nickname(), 'domainType' : domains[user.domainType], 'questionType': "Multiple Choice" if user.questionType == "mc" else "Text", 'numquestions': user.numquestions, 'answermode': "Show Answers" if "on" == user.answermode else "Do not show answers", 'syllabusUnits': syllabusItems, } FormHandler.render(self, item)
def get(self): key = self.request.params.get('_key') idval = self.request.params.get(Learner.id_field) learner = None if key: learner = Learner.retrieve(Learner, key) elif idval: learner = Learner.retrieve(Learner, idval) if not learner: learner = Learner() if idval: learner.MobileNumber = db.PhoneNumber(idval) self.template_values = { 'learner' : learner, 'deleted': False, } FormHandler.get(self)
def render(self, template): action = self.request.params.get("action") if template: if action == "Submit" or action == "Delete": self.html_form = "html/template.html" variables = [] preview = "" if action != "Delete": for v in Variable.all().ancestor(template): varDomains = {"name": v.name, "type": Domain.internalToExternalType(v.domain.type)} variables.append(varDomains) defaultVarDomain = Domain.defaultDomain(Domain.WHOLE_NUMBER) preview = template.generateProblemStatement(defaultVarDomain, "text", False) self.template_values = { "problemName": template.problemName, "template": template, "variables": variables, "deleted": action == "Delete", "preview": preview, } FormHandler.render(self, template)
def __init__(self): FormHandler.__init__(self) self.user = users.get_current_user() self.template_values = {'username': self.user.nickname()}