Changeset View
Changeset View
Standalone View
Standalone View
swh/web/browse/views/directory.py
Show First 20 Lines • Show All 70 Lines • ▼ Show 20 Lines | def _directory_browse(request, sha1_git, path=None): | ||||
breadcrumbs = [] | breadcrumbs = [] | ||||
breadcrumbs.append( | breadcrumbs.append( | ||||
{ | { | ||||
"name": root_sha1_git[:7], | "name": root_sha1_git[:7], | ||||
"url": reverse( | "url": reverse( | ||||
"browse-directory", | "browse-directory", | ||||
url_args={"sha1_git": root_sha1_git}, | url_args={"sha1_git": root_sha1_git}, | ||||
query_params=query_params, | query_params={**query_params, "path": None}, | ||||
), | ), | ||||
} | } | ||||
) | ) | ||||
for pi in path_info: | for pi in path_info: | ||||
breadcrumbs.append( | breadcrumbs.append( | ||||
{ | { | ||||
"name": pi["name"], | "name": pi["name"], | ||||
"url": reverse( | "url": reverse( | ||||
"browse-directory", | "browse-directory", | ||||
url_args={"sha1_git": root_sha1_git}, | url_args={"sha1_git": root_sha1_git}, | ||||
query_params={"path": pi["path"], **query_params}, | query_params={**query_params, "path": pi["path"],}, | ||||
), | ), | ||||
} | } | ||||
) | ) | ||||
path = "" if path is None else (path + "/") | path = "" if path is None else (path + "/") | ||||
for d in dirs: | for d in dirs: | ||||
if d["type"] == "rev": | if d["type"] == "rev": | ||||
d["url"] = reverse( | d["url"] = reverse( | ||||
"browse-revision", | "browse-revision", | ||||
url_args={"sha1_git": d["target"]}, | url_args={"sha1_git": d["target"]}, | ||||
query_params=query_params, | query_params=query_params, | ||||
) | ) | ||||
else: | else: | ||||
d["url"] = reverse( | d["url"] = reverse( | ||||
"browse-directory", | "browse-directory", | ||||
url_args={"sha1_git": root_sha1_git}, | url_args={"sha1_git": root_sha1_git}, | ||||
query_params={"path": path + d["name"], **query_params}, | query_params={**query_params, "path": path + d["name"],}, | ||||
) | ) | ||||
sum_file_sizes = 0 | sum_file_sizes = 0 | ||||
readmes = {} | readmes = {} | ||||
for f in files: | for f in files: | ||||
query_string = "sha1_git:" + f["target"] | query_string = "sha1_git:" + f["target"] | ||||
f["url"] = reverse( | f["url"] = reverse( | ||||
"browse-content", | "browse-content", | ||||
url_args={"query_string": query_string}, | url_args={"query_string": query_string}, | ||||
query_params={ | query_params={ | ||||
"path": root_sha1_git + "/" + path + f["name"], | |||||
**query_params, | **query_params, | ||||
"path": root_sha1_git + "/" + path + f["name"], | |||||
}, | }, | ||||
) | ) | ||||
if f["length"] is not None: | if f["length"] is not None: | ||||
sum_file_sizes += f["length"] | sum_file_sizes += f["length"] | ||||
f["length"] = filesizeformat(f["length"]) | f["length"] = filesizeformat(f["length"]) | ||||
if f["name"].lower().startswith("readme"): | if f["name"].lower().startswith("readme"): | ||||
readmes[f["name"]] = f["checksums"]["sha1"] | readmes[f["name"]] = f["checksums"]["sha1"] | ||||
▲ Show 20 Lines • Show All 142 Lines • Show Last 20 Lines |