示例#1
0
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()
示例#2
0
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