def get(self): teacher = self.get_current_teacher() if not teacher: self.redirect('/') return class_key = db.Key(encoded=self.request.get('class')) clss = Class.get(class_key) students = get_class_students(clss) courses = get_courses(clss) # add course progress to each student for stu in students: prog = [] for c in courses: s = '{:.2%}'.format(c.get_progress(stu)) prog.append( s ) stu.progress = prog #raise Exception('stu:'+str(len(clss))) template_values = {'students': students, 'clss': clss, 'qlists': get_question_list(clss), 'courses': courses } write_template(self, teacher, 'teacher_class.html', template_values)
def get(self): user = self.get_current_student() if not user: self.redirect('/') return key = db.Key(encoded=self.request.get('course')) course = Course.get(key) chapters = [] chapter_keys = [] for q in course.chapters: chapter = Chapter.get(q) if chapter: chapters.append(chapter) chapter_keys.append(str(chapter.key())) goto = self.request.get("goto") if goto == None or goto == '': goto = '/' template_values = {'course': course, 'chapters': chapters, 'chapter_keys': chapter_keys, 'goto': goto, } write_template(self, user, 'student_course.html', template_values)
def get(self): user = self.get_current_user() if not user: self.redirect('/') return encoded_chapter_key = self.request.get('chapter') chapter, encoded_chapter_key = get_chapter_by_encoded_key(encoded_chapter_key) questions = list_questions(chapter) for q in questions: if q.refresh: text = q.text set_question_text(chapter, q, text, True) q.formatted_text = mymarkdown(q.text) has_questions = len(questions) > 0 has_text = chapter.text and len(chapter.text) > 0 template_values = { 'questions' : questions, 'has_questions' : has_questions, 'has_text': has_text, } add_chapter_values(template_values, chapter) template_values['title'] = 'Edit chapter ' + chapter.title write_template(self, user, 'chapter_edit.html',template_values)
def get(self): teacher = self.get_current_teacher() if not teacher: self.redirect('/') return template_values = {'classes': get_teacher_classes(teacher)} write_template(self, teacher, 'teacher_start.html', template_values)
def get(self): admin = self.get_current_admin() if not admin: self.redirect('/') return query = MyUser.all().filter('roles = ', 'teacher') teachers = query.fetch(1000) template_values = {'teachers':teachers} write_template(self, admin, 'admin_start.html', template_values)
def get(self): teacher = self.get_current_teacher() if not teacher: self.redirect('/') return class_key = db.Key(encoded=self.request.get('class')) clss = Class.get(class_key) students = get_class_students(clss) template_values = {'students': students, 'clss': clss, } write_template(self, teacher, 'teacher_class_edit.html', template_values)
def get(self): student = self.get_current_student() if not student: self.redirect('/') return classes = get_student_classes(student) if len(classes) == 1: self.redirect('/studentselectclass?class='+str(classes[0].key())) template_values = { 'classes': classes, } write_template(self, student, 'student_start.html',template_values)
def get(self): user = self.get_current_user() if not user: self.redirect('/') return chapter = db.get( self.request.get('chapter') ) query = db.Query(Image).filter('chapter =',chapter) images = query.fetch(1000) not_empty = len(images) > 0 template_values = {'images': images, 'not_empty': not_empty, 'chapter': chapter, } write_template(self, user, 'image_list.html', template_values)
def get(self): user = self.get_current_user() template_values = {} if user: if user.isAdmin(): self.redirect('/adminstart') return elif user.isTeacher(): self.redirect('/teacherstart') return elif user.isStudent(): self.redirect('/studentstart') return else: write_template(self, user, 'index.html', template_values) else: write_template(self, user, 'index.html', template_values)
def get(self): user = self.get_current_user() if not user: self.redirect('/') return chapter = db.get( self.request.get('chapter') ) try: image = db.get( self.request.get('image') ) except: self.redirect('/imagelistpage?%s' % urllib.urlencode({'chapter': chapter.key()})) return template_values = {'image': image, 'chapter': chapter, } write_template(self, user, 'image.html', template_values)
def get(self): user = self.get_current_student() if not user: self.redirect('/') return encoded_chapter_key = self.request.get('chapter') chapter, encoded_chapter_key = get_chapter_by_encoded_key(encoded_chapter_key) encoded_course_key = self.request.get('course') course = Course.get(db.Key(encoded=encoded_course_key)) if not course.has_chapter(chapter): self.redirect('/studentcoursepage?course='+encoded_course_key) subchapters = chapter.subchapters() subchapters_empty = len(subchapters) == 0 parents = list_parents(chapter) parents.reverse() if chapter.text != None: chapter_formatted_text = mymarkdown(chapter.text) else: chapter_formatted_text = '' questions = list_questions(chapter) for q in questions: q.result = get_result(user,q) q.formatted_text = mymarkdown(q.text) has_questions = len(questions) > 0 template_values = { 'subchapters': subchapters, 'subchapters_empty': subchapters_empty, 'parents' : parents, 'chapter_formatted_text' : chapter_formatted_text, 'questions' : questions, 'has_questions' : has_questions, 'course' : course, } add_chapter_values(template_values, chapter) write_template(self, user, 'student_chapter.html',template_values)
def get(self): student = self.get_current_student() if not student: self.redirect('/') return classes = get_student_classes(student) clss = memcache.get('student_class') if not clss: self.redirect('/') courses = get_courses(clss) if len(courses) == 1: self.redirect('/studentcoursepage?course='+str(courses[0].key())) template_values = { 'courses': courses, } write_template(self, student, 'student_courses.html',template_values)
def get(self): user = self.get_current_user() if not user: self.redirect('/') return encoded_chapter_key = self.request.get('chapter') chapter, encoded_chapter_key = get_chapter_by_encoded_key(encoded_chapter_key) subchapters = list_edit_chapters(user, chapter) subchapters_empty = len(subchapters) == 0 parents = list_parents(chapter) parents.reverse() if chapter.text != None: if chapter.refresh: text = chapter.text set_chapter_text(chapter, text, True) chapter_formatted_text = mymarkdown(chapter.text) else: chapter_formatted_text = '' questions = list_questions(chapter) for q in questions: if q.refresh: text = q.text set_question_text(chapter, q, text, True) q.formatted_text = mymarkdown(q.text) has_questions = len(questions) > 0 template_values = { 'subchapters': subchapters, 'subchapters_empty': subchapters_empty, 'parents' : parents, 'chapter_formatted_text' : chapter_formatted_text, 'questions' : questions, 'has_questions' : has_questions, } add_chapter_values(template_values, chapter) write_template(self, user, 'chapter.html',template_values)
def get(self): user = self.get_current_user() if not user: self.redirect('/') return #raise Exception('chapter '+self.request.get('chapter')) chapter = db.get( self.request.get('chapter') ) key = self.request.get('image') if key: image = db.get( key ) else: image = None error = self.request.get('error') if error == '': error = None template_values = {'image':image, 'error': error, 'chapter': chapter, } write_template(self, user, 'image_upload.html', template_values)
def get(self): user = self.get_current_user() if not user: self.redirect("/") return key = db.Key(encoded=self.request.get("key")) course = Course.get(key) chapters = [] chapter_keys = [] for q in course.chapters: chapter = Chapter.get(q) if chapter: chapters.append(chapter) chapter_keys.append(str(chapter.key())) edit = self.request.get("edit") if edit == "true" and user.isTeacher(): edit = True class_list = get_teacher_classes(user) self.start_edit_course(course) else: edit = False class_list = [] goto = self.request.get("goto") if goto == None or goto == "": goto = "/" template_values = { "course": course, "chapters": chapters, "chapter_keys": chapter_keys, "edit": edit, "class_list": class_list, "goto": goto, } write_template(self, user, "course.html", template_values)
def get(self): user = self.get_current_user() if not user: self.redirect('/') return key = db.Key(encoded=self.request.get('key')) qlist = QuestionList.get(key) questions = [] question_keys = [] for q in qlist.questions: question = Question.get(q) if question: question.formatted_text = mymarkdown(question.text) questions.append(question) question_keys.append(str(question.key())) edit = self.request.get("edit") if edit == 'true' and user.isTeacher(): edit = True class_list = get_teacher_classes(user) self.start_edit_question_list(qlist) else: edit = False class_list = [] goto = self.request.get("goto") if goto == None or goto == '': goto = '/' template_values = {'qlist': qlist, 'questions': questions, 'question_keys': question_keys, 'edit': edit, 'class_list': class_list, 'goto': goto, } write_template(self, user, 'question_list.html', template_values)
def get(self): teacher = self.get_current_teacher() if not teacher: self.redirect('/') return clss = db.get( self.request.get('class') ) student = db.get( self.request.get('student') ) qlists = get_question_list(clss) markdown_questionlists(qlists) courses = get_courses(clss) for course in courses: course.qlists = course.get_chapters() markdown_questionlists(course.qlists) for qlist in course.qlists: for q in qlist.questions: q.result = get_student_result(student, q) template_values = { 'student': student, 'clss': clss, 'qlists': qlists, 'courses': courses, } write_template(self, teacher, 'teacher_student.html', template_values)
def get(self): user = self.get_current_user() if not user: self.redirect('/') return encoded_chapter_key = self.request.get('chapter') chapter, encoded_chapter_key = get_chapter_by_encoded_key(encoded_chapter_key) question_key = self.request.get('question') if question_key == 'new': question = Question.create(chapter) else: question = Question.get(db.Key(encoded=question_key)) question_key = question.key() template_values = { 'chapter' : chapter, 'question' : question, } template_values['title'] = 'Edit question in ' + chapter.title write_template(self, user, 'question_edit.html',template_values)
def get(self): user = self.get_current_user() values = {'page': self.request.get('page')} write_template(self, user, 'test.html', values)
def get(self): values = {'in_local_login': True,'page': self.request.get('page')} write_template(self, None, 'student_login.html', values)