X-Git-Url: https://gitweb.ps.run/ps-cgit/blobdiff_plain/ff13396926f3352d9e29c0663154918297dc5af7..73e13e2bf7b7e794e6df9ac170452a8991137d08:/ui-tag.c diff --git a/ui-tag.c b/ui-tag.c index 6d761f3..39e4cb8 100644 --- a/ui-tag.c +++ b/ui-tag.c @@ -7,7 +7,8 @@ */ #include "cgit.h" - +#include "html.h" +#include "ui-shared.h" static void print_tag_content(char *buf) { @@ -29,6 +30,14 @@ static void print_tag_content(char *buf) } } +void print_download_links(char *revname) +{ + html("download"); + cgit_print_snapshot_links(ctx.qry.repo, ctx.qry.head, + revname, ctx.repo->snapshots); + html(""); +} + void cgit_print_tag(char *revname) { unsigned char sha1[20]; @@ -36,7 +45,10 @@ void cgit_print_tag(char *revname) struct tag *tag; struct taginfo *info; - if (get_sha1(revname, sha1)) { + if (!revname) + revname = ctx.qry.head; + + if (get_sha1(fmt("refs/tags/%s", revname), sha1)) { cgit_print_error(fmt("Bad tag reference: %s", revname)); return; } @@ -52,23 +64,41 @@ void cgit_print_tag(char *revname) return; } html("\n"); - htmlf("\n", - revname, sha1_to_hex(sha1)); + htmlf("\n", sha1_to_hex(sha1)); if (info->tagger_date > 0) { - html("\n"); } if (info->tagger) { - html("\n"); } - html("\n"); + if (ctx.repo->snapshots) + print_download_links(revname); html("
Tag name%s (%s)
tag name"); + html_txt(revname); + htmlf(" (%s)
Tag date"); - cgit_print_date(info->tagger_date, FMT_LONGDATE); + html("
tag date"); + cgit_print_date(info->tagger_date, FMT_LONGDATE, ctx.cfg.local_time); html("
Tagged by"); + html("
tagged by"); html_txt(info->tagger); + if (info->tagger_email && !ctx.cfg.noplainemail) { + html(" "); + html_txt(info->tagger_email); + } html("
Tagged object"); + html("
tagged object"); cgit_object_link(tag->tagged); html("
\n"); print_tag_content(info->msg); - } + } else { + html("\n"); + htmlf("\n"); + html("\n"); + if (ctx.repo->snapshots) + print_download_links(revname); + html("
tag name"); + html_txt(revname); + html("
Tagged object"); + cgit_object_link(obj); + html("
\n"); + } return; }