def get(self): values = {"page_title": self.page_title()} values['courses'] = COURSE_LIST user = users.get_current_user() if user: rosebotics_student = RoseboticsStudent.get_by_id( user.email().lower()) if rosebotics_student is None: rosebotics_student = RoseboticsStudent(id=user.email().lower()) rosebotics_student.put() values["logout_url"] = users.create_logout_url("/") values["rosebotics_student"] = rosebotics_student most_recent_course = recent_track_utils.get_most_recent_course( rosebotics_student.key) if most_recent_course is not None: values["most_recent_track"] = most_recent_course values.update( recent_track_utils.get_recent_tracks(rosebotics_student.key)) elif self.requires_oauth(): self.redirect("/courses") return else: values["login_url"] = users.create_login_url("/courses") self.update_values(user, values) template = jinja_env.get_template(self.template_file()) self.response.out.write(template.render(values))
def personalize_page_and_get_user(self): """If the user exists, add personalized fields to the navbar.""" user = self.get_user() PageInitializerService.get().initialize(self.template_value) if hasattr(self, 'app_context'): self.template_value['can_register'] = self.app_context.get_environ( )['reg_form']['can_register'] if user: email = user.email() self.template_value['email_no_domain_name'] = ( email[:email.find('@')] if '@' in email else email) self.template_value['email'] = email self.template_value['logoutUrl'] = (users.create_logout_url( self.request.uri)) self.template_value['transient_student'] = False # configure page events self.template_value['record_tag_events'] = ( CAN_PERSIST_TAG_EVENTS.value) self.template_value['record_page_events'] = ( CAN_PERSIST_PAGE_EVENTS.value) self.template_value['record_events'] = ( CAN_PERSIST_ACTIVITY_EVENTS.value) self.template_value['event_xsrf_token'] = ( XsrfTokenManager.create_xsrf_token('event-post')) ## ROSEbotics ## namespace = namespace_manager.get_namespace() namespace_manager.set_namespace('') rosebotics_student = RoseboticsStudent.get_by_id(email.lower()) if rosebotics_student is None: rosebotics_student = RoseboticsStudent(id=user.email().lower()) rosebotics_student.put() recent_track_utils.set_recent_track(rosebotics_student.key, self.request.path_qs) most_recent_course = recent_track_utils.get_most_recent_course( rosebotics_student.key) if most_recent_course is not None: self.template_value["most_recent_track"] = most_recent_course self.template_value.update( recent_track_utils.get_recent_tracks(rosebotics_student.key)) self.template_value["logout_url"] = users.create_logout_url("/") self.template_value["rosebotics_student"] = rosebotics_student namespace_manager.set_namespace(namespace) ## END ## else: self.template_value['loginUrl'] = users.create_login_url( self.request.uri) self.template_value["login_url"] = users.create_login_url( self.request.uri) self.template_value['transient_student'] = True return None return user
def personalize_page_and_get_user(self): """If the user exists, add personalized fields to the navbar.""" user = self.get_user() PageInitializerService.get().initialize(self.template_value) if hasattr(self, 'app_context'): self.template_value['can_register'] = self.app_context.get_environ( )['reg_form']['can_register'] if user: email = user.email() self.template_value['email_no_domain_name'] = ( email[:email.find('@')] if '@' in email else email) self.template_value['email'] = email self.template_value['logoutUrl'] = ( users.create_logout_url(self.request.uri)) self.template_value['transient_student'] = False # configure page events self.template_value['record_tag_events'] = ( CAN_PERSIST_TAG_EVENTS.value) self.template_value['record_page_events'] = ( CAN_PERSIST_PAGE_EVENTS.value) self.template_value['record_events'] = ( CAN_PERSIST_ACTIVITY_EVENTS.value) self.template_value['event_xsrf_token'] = ( XsrfTokenManager.create_xsrf_token('event-post')) ## ROSEbotics ## namespace = namespace_manager.get_namespace() namespace_manager.set_namespace('') rosebotics_student = RoseboticsStudent.get_by_id(email.lower()) if rosebotics_student is None: rosebotics_student = RoseboticsStudent(id=user.email().lower()) rosebotics_student.put() recent_track_utils.set_recent_track(rosebotics_student.key, self.request.path_qs) most_recent_course = recent_track_utils.get_most_recent_course(rosebotics_student.key) if most_recent_course is not None: self.template_value["most_recent_track"] = most_recent_course self.template_value.update(recent_track_utils.get_recent_tracks(rosebotics_student.key)) self.template_value["logout_url"] = users.create_logout_url("/") self.template_value["rosebotics_student"] = rosebotics_student namespace_manager.set_namespace(namespace) ## END ## else: self.template_value['loginUrl'] = users.create_login_url(self.request.uri) self.template_value["login_url"] = users.create_login_url(self.request.uri) self.template_value['transient_student'] = True return None return user
def get(self): values = {"page_title": self.page_title()} values['courses'] = COURSE_LIST user = users.get_current_user() if user: rosebotics_student = RoseboticsStudent.get_by_id(user.email().lower()) if rosebotics_student is None: rosebotics_student = RoseboticsStudent(id=user.email().lower()) rosebotics_student.put() values["logout_url"] = users.create_logout_url("/") values["rosebotics_student"] = rosebotics_student most_recent_course = recent_track_utils.get_most_recent_course(rosebotics_student.key) if most_recent_course is not None: values["most_recent_track"] = most_recent_course values.update(recent_track_utils.get_recent_tracks(rosebotics_student.key)) elif self.requires_oauth(): self.redirect("/courses") return else: values["login_url"] = users.create_login_url("/courses") self.update_values(user, values) template = jinja_env.get_template(self.template_file()) self.response.out.write(template.render(values))