*/
#include "cgit.h"
+#include "ui-shared.h"
#include "cmd.h"
#include "html.h"
html("</div>\n");
}
-char *cgit_httpscheme()
+const char *cgit_httpscheme()
{
if (ctx.env.https && !strcmp(ctx.env.https, "on"))
return "https://";
return "http://";
}
-char *cgit_hosturl()
+const char *cgit_hosturl()
{
if (ctx.env.http_host)
return ctx.env.http_host;
return xstrdup(fmt("%s:%s", ctx.env.server_name, ctx.env.server_port));
}
-char *cgit_rooturl()
+const char *cgit_rooturl()
{
if (ctx.cfg.virtual_root)
return fmt("%s/", ctx.cfg.virtual_root);
struct cgit_context *ctx)
{
if (!strcmp(ctx->qry.page, "repolist"))
- return cgit_index_link(name, title, class, ctx->qry.search, ctx->qry.sort,
- ctx->qry.ofs);
+ cgit_index_link(name, title, class, ctx->qry.search, ctx->qry.sort,
+ ctx->qry.ofs);
else if (!strcmp(ctx->qry.page, "summary"))
- return cgit_summary_link(name, title, class, ctx->qry.head);
+ cgit_summary_link(name, title, class, ctx->qry.head);
else if (!strcmp(ctx->qry.page, "tag"))
- return cgit_tag_link(name, title, class, ctx->qry.head,
- ctx->qry.has_sha1 ? ctx->qry.sha1 : NULL);
+ cgit_tag_link(name, title, class, ctx->qry.head,
+ ctx->qry.has_sha1 ? ctx->qry.sha1 : NULL);
else if (!strcmp(ctx->qry.page, "tree"))
- return cgit_tree_link(name, title, class, ctx->qry.head,
- ctx->qry.has_sha1 ? ctx->qry.sha1 : NULL,
- ctx->qry.path);
+ cgit_tree_link(name, title, class, ctx->qry.head,
+ ctx->qry.has_sha1 ? ctx->qry.sha1 : NULL,
+ ctx->qry.path);
else if (!strcmp(ctx->qry.page, "plain"))
- return cgit_plain_link(name, title, class, ctx->qry.head,
- ctx->qry.has_sha1 ? ctx->qry.sha1 : NULL,
- ctx->qry.path);
+ cgit_plain_link(name, title, class, ctx->qry.head,
+ ctx->qry.has_sha1 ? ctx->qry.sha1 : NULL,
+ ctx->qry.path);
else if (!strcmp(ctx->qry.page, "log"))
- return cgit_log_link(name, title, class, ctx->qry.head,
- ctx->qry.has_sha1 ? ctx->qry.sha1 : NULL,
- ctx->qry.path, ctx->qry.ofs,
- ctx->qry.grep, ctx->qry.search,
- ctx->qry.showmsg);
+ cgit_log_link(name, title, class, ctx->qry.head,
+ ctx->qry.has_sha1 ? ctx->qry.sha1 : NULL,
+ ctx->qry.path, ctx->qry.ofs,
+ ctx->qry.grep, ctx->qry.search,
+ ctx->qry.showmsg);
else if (!strcmp(ctx->qry.page, "commit"))
- return cgit_commit_link(name, title, class, ctx->qry.head,
- ctx->qry.has_sha1 ? ctx->qry.sha1 : NULL,
- ctx->qry.path, 0);
+ cgit_commit_link(name, title, class, ctx->qry.head,
+ ctx->qry.has_sha1 ? ctx->qry.sha1 : NULL,
+ ctx->qry.path, 0);
else if (!strcmp(ctx->qry.page, "patch"))
- return cgit_patch_link(name, title, class, ctx->qry.head,
- ctx->qry.has_sha1 ? ctx->qry.sha1 : NULL,
- ctx->qry.path);
+ cgit_patch_link(name, title, class, ctx->qry.head,
+ ctx->qry.has_sha1 ? ctx->qry.sha1 : NULL,
+ ctx->qry.path);
else if (!strcmp(ctx->qry.page, "refs"))
- return cgit_refs_link(name, title, class, ctx->qry.head,
- ctx->qry.has_sha1 ? ctx->qry.sha1 : NULL,
- ctx->qry.path);
+ cgit_refs_link(name, title, class, ctx->qry.head,
+ ctx->qry.has_sha1 ? ctx->qry.sha1 : NULL,
+ ctx->qry.path);
else if (!strcmp(ctx->qry.page, "snapshot"))
- return cgit_snapshot_link(name, title, class, ctx->qry.head,
- ctx->qry.has_sha1 ? ctx->qry.sha1 : NULL,
- ctx->qry.path);
+ cgit_snapshot_link(name, title, class, ctx->qry.head,
+ ctx->qry.has_sha1 ? ctx->qry.sha1 : NULL,
+ ctx->qry.path);
else if (!strcmp(ctx->qry.page, "diff"))
- return cgit_diff_link(name, title, class, ctx->qry.head,
- ctx->qry.sha1, ctx->qry.sha2,
- ctx->qry.path, 0);
+ cgit_diff_link(name, title, class, ctx->qry.head,
+ ctx->qry.sha1, ctx->qry.sha2,
+ ctx->qry.path, 0);
else if (!strcmp(ctx->qry.page, "stats"))
- return cgit_stats_link(name, title, class, ctx->qry.head,
- ctx->qry.path);
-
- /* Don't known how to make link for this page */
- repolink(title, class, ctx->qry.page, ctx->qry.head, ctx->qry.path);
- html("><!-- cgit_self_link() doesn't know how to make link for page '");
- html_txt(ctx->qry.page);
- html("' -->");
- html_txt(name);
- html("</a>");
+ cgit_stats_link(name, title, class, ctx->qry.head,
+ ctx->qry.path);
+ else {
+ /* Don't known how to make link for this page */
+ repolink(title, class, ctx->qry.page, ctx->qry.head, ctx->qry.path);
+ html("><!-- cgit_self_link() doesn't know how to make link for page '");
+ html_txt(ctx->qry.page);
+ html("' -->");
+ html_txt(name);
+ html("</a>");
+ }
}
void cgit_object_link(struct object *obj)
char tail, *dir;
size_t len;
+ len = 0;
tail = 0;
list = &ctx.repo->submodules;
item = lookup_path(list, path);
return;
}
- char *host = cgit_hosturl();
+ const char *host = cgit_hosturl();
html(cgit_doctype);
html("<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>\n");
html("<head>\n");
cgit_snapshot_link(filename, NULL, NULL, NULL, NULL, filename);
html("<br/>");
}
+ free(prefix);
}