aboutsummaryrefslogtreecommitdiffstats
path: root/ui-shared.c
Commit message (Expand)AuthorAgeFilesLines
* Merge branch 'lh/embedded'•••Conflicts: cgitrc.5.txt ui-shared.c Lars Hjemli2009-07-251-6/+22
|\
| * Add support for 'noheader' option•••This option can be used to disable the standard cgit page header, which might be useful in combination with the 'embedded' option. Suggested-by: Mark Constable <markc@renta.net> Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2009-07-251-7/+13
| * Add support for an 'embedded' option in cgitrc•••When activated, cgit will neither generate http headers nor any 'framing' html elements (like <html> and <body>). Also, all page content is now wrapped in a <div id='cgit'> element to make it easier to select the correct cgit classes when embedded/themed. Suggested-by: Matt Sealey <matt@genesi-usa.com> Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2009-02-021-0/+10
* | Merge branch 'ml/head-include'Lars Hjemli2009-07-251-1/+3
|\ \
| * | Add head-include configuration option.•••This patch adds an option to the configuration file, "head-include", which works just like "header" or "footer", except the content is put into the HTML's <head> tag. Mark Lodato2009-06-071-1/+3
| |/
* | Merge branch 'plain-etag'•••Conflicts: ui-shared.c Lars Hjemli2009-07-251-0/+6
|\ \
| * | Add support for HEAD requests•••This is a quick 'n dirty hack which makes cgit honor HEAD requests. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2009-02-191-0/+4
| * | Add support for ETag in 'plain' view•••When downloading a blob identified by its path, the client might want to know if the blob has been modified since a previous download of the same path. To this end, an ETag containing the blob SHA1 seems to be ideal. Todo: add support for HEAD requests... Suggested-by: Owen Taylor <otaylor@redhat.com> Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2009-02-191-0/+2
| |/
* | Merge branch 'do/https'•••Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2009-07-251-1/+13
|\ \
| * | use cgit_httpscheme() for atom feedDiego Ongaro2009-06-111-1/+2
| * | add cgit_httpscheme() -> http:// or https://Diego Ongaro2009-06-111-0/+11
| |/
* / Return http statuscode 404 on unknown branch•••Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2009-06-071-0/+2
|/
* Add support for a custom header•••Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2009-01-291-0/+2
* Merge branch 'lh/stats'•••Conflicts: cgit.c cgit.css cgit.h ui-tree.c Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2009-01-271-3/+12
|\
| * ui-shared: externalize add_hidden_formfields()•••This function will be reused by ui-stats.c in the next commit. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-12-071-3/+3
| * ui-shared: add and use cgit_stats_link()•••Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-12-071-2/+8
| * ui-stats: replace 'enable-stats' setting with 'max-stats'•••The new 'max-stats' and 'repo.max-stats' settings makes it possible to define the maximum statistics period, both globally and per repo. Hence, it is now feasible to allow statistics on repositories with a high commit frequency, like linux-2.6, by setting repo.max-stats to e.g. 'month'. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-12-071-1/+1
| * Add a 'stats' page to each repo•••This new page, which is disabled by default, can be used to print some statistics about the number of commits per period in the repository, where period can be either weeks, months, quarters or years. The function can be activated globally by setting 'enable-stats=1' in cgitrc and disabled for individual repos by setting 'repo.enable-stats=0'. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-12-061-0/+3
* | Merge branch 'stable'Lars Hjemli2009-01-111-1/+6
|\ \
| * | Avoid SEGFAULT on invalid requests•••When an unknown page is requested, either on the querystring or via PATH_INFO, we end up with a null-referencing cgit_cmd. This null- pointer is then used as argument to the hc() function (which decides what tab to render as 'active'), but this function failed to check if a valid cmd was specified and a SEGFAULT would occur. This patch fixes the issue by introducing a 'fallback-cmd' which specifies what tab to render as 'active' when no valid cmd is requested. While at it, we now also keep track of the active repository even if an invalid cmd was requested since we want to show the error message about the invalid request in the correct context. Noticed-by: Robin Redeker <elmex@ta-sa.org> Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2009-01-111-1/+6
| |/
* | Merge branch 'full-log'•••Conflicts: cgit.c cgit.h Lars Hjemli2008-12-061-2/+10
|\ \
| * | ui-log: add support for showing the full commit message•••Some users prefer to see the full message, so to make these users happy the new querystring parameter "showmsg" can be used to print the full commit message per log entry. A link is provided in the log heading to make this function accessible, and all links and forms tries to preserve the users preference. Note: the new link is not displayed on the summary page since the point of the summary page is to be a summary, but it is still obeyed if specified manually. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-11-291-2/+10
| |/
* | ui-shared: shorten the sha1 printed by cgit_object_link•••Such links was printed as the object type followed by the objects complete sha1. We still use the complete sha1 in the link but we no longer show it in all its glory; only the first 10 hex chars are printed. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-12-011-6/+8
* | ui-shared: exploit snapshot dwimmery in cgit_print_snapshot_links•••Since we know that ui-snapshot.c is able to extract the revision from the filename, there's no longer necessary to specify the revision with a 'id' querystring argument. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-12-011-2/+1
|/
* ui-shared: specify correct css class for summary tab•••When introducing cgit_summary_link() in 49ecbbdd I forgot to specify the css class. This fixes it. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-10-061-1/+2
* ui-shared: add cgit_tag_link()•••This function can be used to generate properly escaped links to the tag page. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-10-051-0/+6
* ui-shared: generate proper links in cgit_object_link()•••Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-10-051-15/+7
* ui-shared: use html_url_path() to get properly escaped url in form action•••When a repo uses an url with e.g. '#' or '?' characters this needs to be properly escaped when used as action in a form tag. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-10-051-2/+2
* ui-shared: reword the standard page footer•••Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-10-051-2/+2
* ui-shared: do not print repo name on the "summary" tab•••Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-10-051-2/+1
* ui-repolist + ui-shared: Use cgit_summary_link()•••This makes is possible to use cgit with repository urls containing special url characters like '#' and '?'. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-10-051-4/+3
* ui-shared.c: add cgit_summary_link()•••This function can be used to generate a link to the summary page for the currently active repo. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-10-051-0/+5
* ui-shared.c: use html_url_path() in repolink()•••This makes sure that reponames and paths are properly escaped when used as urls. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-10-051-4/+4
* ui-shared.c: use html_url_arg()•••The link-generating functions are updated to use the new html_url_arg function, thereby fixing links to strange repos, branches and files. Also, the test-suite is updated to verify some cases of strange urls. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-10-051-10/+10
* use Host: header to generate cgit_hosturl•••I run an instance of lighttpd for cgit behind nginx (nginx doesn't execute CGI). So the port (SERVER_PORT=33333) that lighttpd runs on sends to cgit is different from the standard port 80 that public clients connect to (via nginx). This was causing the Atom feed URL to show the private port number that lighttpd was running on. Since the HTTP/1.1 "Host" header includes the port number if running on a non-standard port, it allows non-client-facing HTTP servers to transparently generate public URLs that clients can see. So use the "Host" header if it is available and fall back to SERVER_NAME/SERVER_PORT for some clients that don't set HTTP_HOST. Signed-off-by: Eric Wong <normalperson@yhbt.net> Eric Wong2008-09-021-7/+12
* Merge branch 'lh/plain'•••* lh/plain: Supply status description to html_status() ui-tree: link to plain view instead of blob view Implement plain view Lars Hjemli2008-09-011-0/+8
|\
| * ui-tree: link to plain view instead of blob view•••The urls for plain view makes it possible to download blobs without knowing their SHA1, but the function needs to be promoted and the link from tree view seems like a perfect fit. PS: Although hidden, the blob view still is nice for direct blob access so there's no point in removing it. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-08-061-0/+6
| * Implement plain view•••This implements a way to access plain blobs by path (similar to the tree view) instead of by sha1. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-08-061-0/+2
* | Add atom-support•••This enables a page which generates atom feeds for the current branch and path, heavily inspired by the atom-support in gitweb. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-08-011-0/+23
|/
* Added `local-time` option to cgitrc•••When `local-time` is set, commit, tag and patch timestamps will be printed in the servers timezone. Also, regardless of the value of `local-time`, these timestamps will now always show the timezone. Signed-off-by: Stefan Naewe <stefan.naewe@atlas-elektronik.com> Signed-off-by: Lars Hjemli <hjemli@gmail.com> Stefan Naewe2008-08-011-4/+7
* Be prepared for empty repositories•••Before this patch, cgit would segfault on repositories with no refs. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-07-271-1/+2
* ui-shared: show repo owner along with description•••Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-07-271-3/+3
* Add a favicon option to cgitrc•••This option is used to specify a shortcut icon on all cgit pages. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-07-191-0/+5
* Add support for including a footer on all pages•••The new cgitrc option `footer` can be used to include a html-file which replaces the standard 'generated by cgit' message at the bottom of each page. Suggested-by: Peter Danenberg <pcd@wikitex.org> Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-06-261-4/+10
* Add link to index page from repo header, remove page name•••This makes it more obvious how to get back to the index, especially when the config option `logo-link` is used. And the page name displayed in the header provided no extra information. It only consumed space and deserved to die. While at it, make sure that the different parts of the header doesn't wrap when horizontal space is limited. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-05-041-2/+2
* Add footer with page creation time and cgit version on all pages•••Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-05-031-0/+3
* Add cgit_index_link() function with support for offset•••This function will be used to build a pager in ui-repolist. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-05-031-5/+17
* Add 'about site' and 'about repo' pages•••This commit uses the options and changes from the last few commits to implement a new 'about' command which works both with and without a repo. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-04-291-3/+50
* Re-enable 'index-info' and add support for 'root-desc' in cgitrc•••The 'index-info' option got lost when the layout was converted from sidebar to old-fashioned header (noticed by Harley Laue, thanks!), and this commit re-enables it. But there is now also an alternative in the 'root-desc' option; where 'index-info' specifies a file to include, 'root-desc' specifies the text literally. This might be nicer for the one-liner descriptions which these options typically provides. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-04-291-1/+4
* Cleanup page header•••Fix some invalid html, remove dead code. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Lars Hjemli2008-04-151-17/+4