def debug_vars( writer: HTMLWriter, request: Request, prefix: Optional[str] = None, hide_with_mouse: bool = True, vars_: Optional[Mapping[str, str]] = None, ) -> None: it = request.itervars() if vars_ is None else vars_.items() hover = "this.style.display='none';" writer.open_table(class_=["debug_vars"], onmouseover=hover if hide_with_mouse else None) oddeven = "even" writer.tr(writer.render_th(_("POST / GET Variables"), colspan="2"), class_=oddeven) for name, value in sorted(it): oddeven = "even" if oddeven == "odd" else "odd" if name in ["_password", "password"]: value = "***" if not prefix or name.startswith(prefix): writer.tr( writer.render_td(name, class_="left") + writer.render_td(value, class_="right"), class_=oddeven, ) writer.close_table()
def makeuri( request: Request, addvars: HTTPVariables, filename: Optional[str] = None, remove_prefix: Optional[str] = None, delvars: Optional[Sequence[str]] = None, ) -> str: new_vars = [nv[0] for nv in addvars] vars_: HTTPVariables = [(v, val) for v, val in request.itervars() if v[0] != "_" and v not in new_vars and ( not delvars or v not in delvars)] if remove_prefix is not None: vars_ = [i for i in vars_ if not i[0].startswith(remove_prefix)] vars_ = vars_ + addvars if filename is None: filename = URLEncoder.urlencode(requested_file_name(request)) + ".py" if vars_: return filename + "?" + URLEncoder.urlencode_vars(vars_) return filename