Commit Graph

194 Commitit

Tekijä SHA1 Viesti Päivämäärä
Michael Krelin
dc3c9b5bc4 allow selective enabling of snapshots
snapshot configuration parameter now can be a
 space/slash/comma/colon/semicolon/pipe-separated list of snaphot suffixes as
 listed in ui-snapshot.c

Signed-off-by: Michael Krelin <hacker@klever.net>
2007-07-21 18:00:53 +02:00
Michael Krelin
97c025ae8e shorten snapshot names to repo basename
Signed-off-by: Michael Krelin <hacker@klever.net>
2007-07-21 15:29:55 +02:00
Michael Krelin
1cb8bedf1e introduce cgit_repobasename
that shortens reponame stripping any directories and .git suffixes, that is
 turning 'dir/repo.git/' or 'dir/repo/.git/' or alikes into mere 'repo'.

Signed-off-by: Michael Krelin <hacker@klever.net>
2007-07-21 15:24:07 +02:00
Michael Krelin
0df096f6e1 added snapshot filename to the link
- changed cgit_pageurl into cgit_fileurl with the filename parameter
 - rewritten cgit_pageurl as a wrapper around cgit_fileurl

Signed-off-by: Michael Krelin <hacker@klever.net>
2007-07-21 13:13:40 +02:00
Michael Krelin
86ca02231f add plain uncompressed tar snapshort format
time to make available snapshots selectable

Signed-off-by: Michael Krelin <hacker@klever.net>
2007-07-21 02:14:35 +02:00
Michael Krelin
18a99bdf87 introduced .tar.bz2 snapshots
- reworked write_tar_gzip_archive to handle arbitrary filter as a
   write_compressed_tar_archive
 - reformatted whitespaces in the said function to adhere to common cgit
   standards
 - added wrappers around write_compressed_tar_archive for .tar.gz and .tar.bz2
 - added a hint for vim to use 8 characters shift width by default

Signed-off-by: Michael Krelin <hacker@klever.net>
2007-07-21 02:05:34 +02:00
Michael Krelin
4a92cbb7fd compress .tar.gz using gzip as a filter 2007-07-20 20:58:23 +02:00
Michael Krelin
127f43d4e2 added a chk_non_negative check 2007-07-20 20:56:43 +02:00
Michael Krelin
3aae82703b css: adjust vertical-align of commit info th cells 2007-07-18 14:55:40 +02:00
Michael Krelin
f97c707a3b add support for snapshot tarballs
- reworked cgit_print_snapshot to use a list of supported archivers and pick
	one for the suffix supplied
- moved printing of snaphot links into ui-snapshot and make it iterate through
	the said list
2007-07-18 14:40:03 +02:00
Michael Krelin
71ebcbe23a make gen-version.sh run even if . is not in PATH
Signed-off-by: Michael Krelin <hacker@klever.net>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-07-03 21:30:05 +02:00
Michael Krelin
51f6547879 make config adjustable via env variable CGIT_CONFIG
Signed-off-by: Michael Krelin <hacker@klever.net>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-07-03 21:28:13 +02:00
Lars Hjemli
16a3d2779c Merge branch 'lh/menu'
* lh/menu:
  Add ofs argument to cgit_log_link and use it in ui-log.c
  Add trim_end() and use it to remove trailing slashes from repo paths
  Do not include current path in the "tree" menu link
  Add setting to enable/disable extra links on index page
  Change S/L/T to summary/log/tree
  Change "files" to "tree"
  Include querystring as part of cached filename for repo summary page
  Add more menuitems on repo pages
2007-06-29 20:32:08 +02:00
Lars Hjemli
103940fe6b Add ofs argument to cgit_log_link and use it in ui-log.c
This fixes a bug in the prev/next links on the log page: when on the default
branch the links to prev/next page would contain h=(null).

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-29 20:31:00 +02:00
Lars Hjemli
382805ee83 Add trim_end() and use it to remove trailing slashes from repo paths
The new function removes all trailing instances of an arbitrary character
from a copy of the supplied char array. This is then used to remove any
trailing slashes from cgit_query_path.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-26 18:04:39 +02:00
Lars Hjemli
42e459bb1f Do not include current path in the "tree" menu link
When generating the menu links on repo pages the tree link included the
current path. This made the link pretty useless whenever the current path
was set so this commit just passes NULL instead.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-26 17:32:08 +02:00
Lars Hjemli
0d05bca502 Add setting to enable/disable extra links on index page
The summary/log/tree links displayed for each repository on the index
page lost some of their purpose when the header menu was added, so this
commit introduces the parameter 'enable-index-links' which must be set
to 1 to enable these links.

Suggested-by: Kristian Høgsberg <krh@bitplanet.net>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-19 00:56:40 +02:00
Lars Hjemli
a215bf4620 Change S/L/T to summary/log/tree
In yet another attempt at better usability, the cryptic S/L/T links are
changed to show their full name.

Suggested-by: Kristian Høgsberg <krh@bitplanet.net>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-18 22:14:17 +02:00
Lars Hjemli
1f34fb9d4f Change "files" to "tree"
This renames the menu link and the shortcut on the repo index page from
the strange "files" to the more gittish "tree".

Suggested-by: Kristian Høgsberg <krh@bitplanet.net>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-18 22:06:00 +02:00
Lars Hjemli
7d6ee4ee8a Include querystring as part of cached filename for repo summary page
When adding support for the h parameter to the summary page (passing current
branch between pages), the builtin cache returned basically random results
for summary page since the cached filename didn't honour the querystring.

This fixes the issue for now, but someday it might be worthwhile to generate
'canonical' filenames in the cache for all pages, i.e. something a bit more
clever than just including the querystring.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-18 21:17:24 +02:00
Lars Hjemli
f69250358a Add version info from git-describe
A new script, gen-version.sh, is now invoked from 'make version' to generate
the file VERSION. This file contains a version identifier generated by
git-describe and is included in the Makefile.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-18 10:38:40 +02:00
Lars Hjemli
b8be028a30 Add more menuitems on repo pages
In an attempt to get better usability, a set of 'semistatic' menuitems
are added to the page header on all pages except the repository index.

The menuitems (summary, log, files, commit and diff) honours the current
branch and revision. To switch the current branch one can use the branch
links on the summary page.

The backlink to the repository index page is now available by clicking
the static page heading.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-18 08:29:53 +02:00
Lars Hjemli
4a0be58666 Add cgit_diff_link()
This adds a new function used to generate links to the diff page and uses
it everywhere such links appear (expect for single files in the diffstat
displayed on the commit page: this is now a link to the tree page).

The updated diff-page now expects zero, one or two revision specifiers, in
parameters head, id and id2. Id defaults to head unless otherwise specified,
while head (as usual) defaults to repo.defbranch. If id2 isn't specified, it
defaults to the first parent of id1.

The most important change is of course that now all repo pages (summary, log,
tree, commit and diff) has support for passing on the current branch and
revision, i.e. the road is now open for a 'static' menu with links to all
of these pages.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-17 18:12:03 +02:00
Lars Hjemli
faaca447b0 ui-commit: use cgit_commit_link() for parent links
This replaces the old cgit_pageurl() function with the brand new
cgit_commit_link() function, making parent links in commit view preserve
the current branch.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-17 15:44:22 +02:00
Lars Hjemli
cd79c16844 ui-log: honor id=sha1 on querystring
This teaches ui-log to prefer id=sha1 and fallback to h=rev if no id-
parameter is specified. With this change, summary, log, commit and tree
views now passes current branch using h parameter and current revision
using id parameter.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-17 14:58:45 +02:00
Lars Hjemli
42a7eb9c73 Add cgit_commit_link() + support for id=sha1 to commit view
This adds a function to generate links to the commit page and extends said
page to use id from querystring as primary revision specified (fallback to
h).

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-17 14:53:02 +02:00
Lars Hjemli
48c487d72d Add git_log_link() and fix bug in generic repolink function
The generic repolink function compared head with cgit_query_head, which
almost always would be the same pointer. The test now compares with
repo.defbranch, which is the wanted behavour.

Bug discovered while adding cgit_log_link(), so this commit also contain
that change.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-17 13:57:51 +02:00
Lars Hjemli
426032f767 ui-tree: html/css cleanup
Various fixes to make html and css more "clean". The only visible change
is the link to file/directory log: it is now printed as "L" (for Log)
instead of "H" (for History).

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-17 13:17:00 +02:00
Lars Hjemli
486c87ec29 ui-shared: use strcmp() to compare strings
Somehow a couple of pointer comparisions crept into the new repolink()
and cgit_tree_link() functions. Fix it.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-17 12:58:59 +02:00
Lars Hjemli
44947bfcdc Add and use cgit_tree_link()
This creates a new function used to generate links to 'tree' page and uses
the function everywhere a link to the 'tree' page is generated.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-17 01:39:05 +02:00
Lars Hjemli
f91b9696a3 ui-tree: make blob viewer generate valid html
A leftover '</td></tr>' made ui-tree generate invalid html for blob
content. Fix it.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-16 21:35:58 +02:00
Lars Hjemli
ffc69736a6 ui-tree: unify with ui-view, use path to select tree/blob
This teaches ui-tree to show both trees and blobs, thereby making ui-view
superfluous. At the same time, ui-tree is extended to honour the specified
path instead of requiering a tree/blob sha1.
2007-06-16 20:20:42 +02:00
Lars Hjemli
849f0f0f02 cgit.css: make it validate
This fixes a few validation-issues in the css.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-07 00:43:07 +02:00
Lars Hjemli
c83db796a1 ui-diff: close td/tr/table properly
The previous commit fixed the diff-view when two trees where specified on
the querystring (sha1/sha2) but made the generated html invalid when only
a commit sha1 is specified. This fixes it.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-06 23:02:48 +02:00
Lars Hjemli
4a6201e318 ui-diff: emit table/tr/td at better locations
This fixes a bug which made the diff-link for each parent of a commit
output a diff without correct styles.

It also adds an error-message if the head commit specified on the querystring
isn't a valid commit object.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-06-05 11:44:53 +02:00
Ondrej Jirman
51a960a3ca Implemented configurable HEAD shortlog on summary page.
This mirrors similiar functionality in gitweb. After clicking on
project on projectlist you will immediatelly see quick summary
of last N commits on HEAD.

[lh: changed from HEAD to cgit_query_head]

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-31 10:25:48 +02:00
Ondrej Jirman
6130231ed5 Check for NULL commit buffer in cgit_parse_commit()
This can be NULL, so try not to segfault.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-31 10:24:43 +02:00
Ondrej Jirman
a922615dae Add option to disable pager to cgit_print_log().
This is needed for upcomming shortlog on summary page
patch.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-31 10:24:37 +02:00
Ondrej Jirman
3ce6fc16ef Handle single-line and empty commit subjects
If commit object ends with \0 after subject line, then info->subject
was not set.

This commit fixes this and also sets subject to ** empty ** if it
would otherwise be empty, so that there is something to click on.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-31 10:21:50 +02:00
Ondrej Jirman
1a63cfcc3d Use &amp; instead of & in URLs.
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-31 10:18:38 +02:00
Ondrej Jirman
0928d8827a Fixed unexpected tags in html output.
At least those that were catched by tidy.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-31 10:18:00 +02:00
Lars Hjemli
2a09c0d184 cgit v0.5
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-24 00:18:16 +02:00
Lars Hjemli
7dc99a4bbb Bad html: it's nice to add alt-attributes
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-24 00:08:36 +02:00
Lars Hjemli
ef473df0b3 Bad html: <form> should have an action-attribute
Don't know how the href-attribute got in there...

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-24 00:06:25 +02:00
Lars Hjemli
62dcc05c27 Close a <tr> properly
No reason to generate illegal html.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-24 00:02:18 +02:00
Lars Hjemli
bbcdc290c6 Add repo.readme parameter
This parameter can be used to specify a repo-specific includefile, which will
then be printed on the summary page for the repo.

If the parametervalue is a not an absolute path, it is taken to be relative
to repo.path.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-23 22:46:54 +02:00
Lars Hjemli
25da3f7625 Remove unused variable from ui-repolist.c:read_agefile()
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-23 19:22:20 +02:00
Lars Hjemli
57f6a8bf0d Show time since last change on index page
When creating the index page, an optional file can be scanned per repository
to obtain a timestamp for last modification within the repo. If such a file
cannot be found, st_mtime for repo.defbranch is used instead.

This information is then printed in a new column, "Idle", using the new
function cgit_print_age().

The new parameter "repo.agefile" can be used to specify (globally) a relative
path to scan (default value is "info/web/last-modified").

The content of the "last-modified" file can be generated by the post-receive
hook with a command like this:

	git-for-each-ref --format="%(committerdate)" --sort=-committerdate \
	--count=1 > $GIT_DIR/info/web/last-modified

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-22 23:25:25 +02:00
Lars Hjemli
237ef7b06d Use cgit_print_age() on summary and log pages
Update the pages to show relative dates instead of yyyy-mm-dd hh:mm:ss

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-22 23:15:36 +02:00
Lars Hjemli
5db39170b6 Add cgit_print_age() function
This function can be used to print relative dates, just as in gitweb. Next
step will be to actually use the new function.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-22 23:12:41 +02:00