From: zwinkau at kit.edu (zwinkau at kit.edu)
Subject: [PATCH 5/8] display updated, use urn/url for atom:id
Date: Tue, 1 Jul 2014 09:40:30 +0200 [thread overview]
Message-ID: <1404200433-30081-5-git-send-email-zwinkau@kit.edu> (raw)
In-Reply-To: <1404200433-30081-1-git-send-email-zwinkau@kit.edu>
From: Matthias Braun <matze at braunis.de>
---
ui-atom.c | 33 +++++++++++++++++++++++++++------
1 file changed, 27 insertions(+), 6 deletions(-)
diff --git a/ui-atom.c b/ui-atom.c
index fdc5cb3..aa6a188 100644
--- a/ui-atom.c
+++ b/ui-atom.c
@@ -12,15 +12,13 @@
#include "ui-shared.h"
#include "ui-diff.h"
-static void add_entry(struct commit *commit, const char *host, int enable_atom_diff)
+static void add_entry(struct commit *commit, struct commitinfo *info, char *host, int enable_atom_diff)
{
char delim = '&';
char *hex;
char *hex_parent;
char *mail, *t, *t2;
- struct commitinfo *info;
- info = cgit_parse_commit(commit);
hex = sha1_to_hex(commit->object.sha1);
if (commit->parents) {
hex_parent = sha1_to_hex(commit->parents->item->object.sha1);
@@ -68,8 +66,15 @@ static void add_entry(struct commit *commit, const char *host, int enable_atom_d
delim = '?';
htmlf("%cid=%s", delim, hex);
html("'/>\n");
+
+ html("<id>");
+ html(cgit_httpscheme());
+ html_attr(host);
+ html_attr(cgit_repourl(ctx.repo->url));
+ htmlf("/commit/?id=%s</id>\n", hex);
+ } else {
+ htmlf("<id>urn:tag:%s</id>\n", hex);
}
- htmlf("<id>%s</id>\n", hex);
html("<content type='text'>\n");
html_txt(info->msg);
html("</content>\n");
@@ -90,7 +95,6 @@ static void add_entry(struct commit *commit, const char *host, int enable_atom_d
html("</div>\n");
html("</content>\n");
html("</entry>\n");
- cgit_free_commitinfo(info);
}
@@ -101,6 +105,7 @@ void cgit_print_atom(char *tip, char *path, int max_count, int enable_atom_diff)
struct commit *commit;
struct rev_info rev;
int argc = 2;
+ int had_global_updated = 0;
if (ctx.qry.show_all)
argv[1] = "--all";
@@ -147,9 +152,25 @@ void cgit_print_atom(char *tip, char *path, int max_count, int enable_atom_diff)
html_attr(host);
html_attr(cgit_repourl(ctx.repo->url));
html("'/>\n");
+
+ html("<id>");
+ html(cgit_httpscheme());
+ html_txt(host);
+ html_txt(cgit_repourl(ctx.repo->url));
+ html("</id>\n");
}
+
while ((commit = get_revision(&rev)) != NULL) {
- add_entry(commit, host, enable_atom_diff);
+ struct commitinfo *info = cgit_parse_commit(commit);
+ if (!had_global_updated) {
+ html("<updated>");
+ cgit_print_date(info->committer_date, FMT_ATOMDATE, 0);
+ html("</updated>\n");
+ had_global_updated = 1;
+ }
+ add_entry(commit, info, host, enable_atom_diff);
+
+ cgit_free_commitinfo(info);
free(commit->buffer);
commit->buffer = NULL;
free_commit_list(commit->parents);
--
1.9.1
next prev parent reply other threads:[~2014-07-01 7:40 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-01 7:40 [PATCH 1/8] Can add diffs to Atom feed entries zwinkau
2014-07-01 7:40 ` [PATCH 2/8] Improved readability zwinkau
2014-07-01 7:40 ` [PATCH 3/8] Skip forbidden characters zwinkau
2014-07-01 20:29 ` john
2014-07-02 11:57 ` qznc
2014-07-01 7:40 ` [PATCH 4/8] add xml-header to atom-feed zwinkau
2014-07-01 7:40 ` zwinkau [this message]
2014-07-01 7:40 ` [PATCH 6/8] only one content tag allowed, so remove the text one zwinkau
2014-07-01 7:40 ` [PATCH 7/8] add <link rel='self'> to atom feed zwinkau
2014-07-01 7:40 ` [PATCH 8/8] fix html error in diff output for binary files zwinkau
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1404200433-30081-5-git-send-email-zwinkau@kit.edu \
--to=cgit@lists.zx2c4.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).