def render_hello_page( self, request: custom_types.HttpRequest, new_user: custom_types.User, saved_user: custom_types.User, ) -> str: css_class_for_name = css_class_for_age = "" label_for_name = "Your name: " label_for_age = "Your age: " age_new = age_saved = saved_user.age name_new = name_saved = saved_user.name year = date.today().year - age_saved if new_user.errors: if "name" in new_user.errors: error = new_user.errors["name"] label_for_name = f"ERROR: {error}" css_class_for_name = consts.CSS_CLASS_ERROR if "age" in new_user.errors: error = new_user.errors["age"] label_for_age = f"ERROR: {error}" css_class_for_age = consts.CSS_CLASS_ERROR name_new = new_user.name age_new = new_user.age theme = utils.load_theme(request.session) html = utils.read_static("hello.html").decode() template = Template(html) context = { "age_new": age_new or "", "label_for_age": label_for_age, "label_for_name": label_for_name, "name_new": name_new or "", "name_saved": name_saved or "", "class_for_age": css_class_for_age, "class_for_name": css_class_for_name, "year": year, "fdsfdsfds": 2354234532, "theme": theme, } content = template.render(**context) return content
def handle_theme(self, request: HttpRequest) -> None: if request.method != "post": raise MethodNotAllowed response_kwargs = {} session = request.session if not session: session = generate_new_session() response_kwargs["session"] = session current_theme = load_theme(session) new_theme = switch_theme(current_theme) store_theme(session, new_theme) self.redirect("/hello", **response_kwargs)