roundabout,
created on Wednesday, 3 April 2024, 13:05:15 (1712149515),
received on Wednesday, 31 July 2024, 06:54:44 (1722408884)
Author identity: vlad <vlad.muntoiu@gmail.com>
522f8543263d1eb27891e8a01ed2e8d6983bddbe
app.py
@@ -626,7 +626,8 @@ def repository_commit(username, repository, sha):
is_favourite=get_favourite(flask.session.get("username"), username, repository),
diff={file: git_command(os.path.join(server_repo_location, ".git"), None, "diff",
str(sha) + "^!", "--", file).decode().split("\n") for
file in files}
file in files},
data=db.session.get(Commit, f"/{username}/{repository}/{sha}"),
)
jinja_utils.py
@@ -25,7 +25,7 @@ def strftime(value: datetime, syntax: str):
@app.template_filter("unixtime")
def strftime(value: datetime):
def unixtime(value: datetime):
return round(value.timestamp())
@@ -35,11 +35,16 @@ def decode(value: bytes, codec: str = "UTF-8", errors: str = "strict"):
@app.template_filter("markdown")
def decode(value: str):
def parse_markdown(value: str):
return Markup(markdown.make_html(markdown.tokenise(value)))
@app.template_filter("inline_markdown")
def parse_inline_markdown(value: str):
return Markup(markdown.make_html(markdown.parse_line(value)))
@app.template_filter("parse_diff_location")
def decode(value: str):
def parse_diff_location(value: str):
header = value.split("@@")[1].strip()
return [tuple(int(j) for j in i.lstrip("-+").split(",")) for i in header.split(" ")]
templates/repository/repo-commit.html
@@ -3,11 +3,15 @@
{% set active_page = "log" %}
{% block title %}
{% trans basename=basename, username=username, repository=repository %}{{ basename }} in {{ username }}/{{ repository }}{% endtrans %}
{% trans message=data.message|split("\n\n")|first, username=username, repository=repository %}{{ basename }} in {{ username }}/{{ repository }}{% endtrans %}
{% endblock %}
{% block content %}
<x-vbox>
<x-frame style="--width: 896px;" class="flexible-space">
<h1>{{ data.message | split("\n\n", 1) | first | inline_markdown }}</h1>
<p>
{{ data.message | split("\n\n", 1) | last | markdown }}
</p>
{% for file in diff %}
<h2>{{ file }}</h2>
{% set vars = namespace(original_line=0, modified_line=0, hunk_started=false) %}