summaryrefslogtreecommitdiff
path: root/ui-shared.c
AgeCommit message (Collapse)Author
2008-03-23Add struct cgit_page to cgit_contextLars Hjemli
This struct is used when generating http headers, and as such is another small step towards the goal of the whole cleanup series; to invoke each page/view function with a function pointer. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-03-18Introduce html.hLars Hjemli
All html-functions can be quite easily separated from the rest of cgit, so lets do it; the only issue was html_filemode which uses some git-defined macros so the function is moved into ui-shared.c::cgit_print_filemode(). Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-02-16Improve initialization of git directoryLars Hjemli
Using the functions offered by libgit feels like the right thing to do. Also, make sure that config errors gets properly reported. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-02-16Move cgit_repo into cgit_contextLars Hjemli
This removes the global variable which is used to keep track of the currently selected repository, and adds a new variable in the cgit_context structure. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-02-16Add all config variables into struct cgit_contextLars Hjemli
This removes another big set of global variables, and introduces the cgit_prepare_context() function which populates a context-variable with compile-time default values. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2008-02-16Introduce struct cgit_contextLars Hjemli
This struct will hold all the cgit runtime information currently found in a multitude of global variables. The first cleanup removes all querystring-related variables. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-12-11Add plain patch viewLars Hjemli
The new view mimics the output from `git format-patch`, making it possible to cherry-pick directly from cgit with something like `curl $url | git am`. Inspired by a patch to `git-apply` by Mike Hommey: http://thread.gmane.org/gmane.comp.version-control.git/67611/focus=67610 Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-12-03Add support for automatic and custom clone urlsLars Hjemli
This adds support for two new parameters to cgitrc: clone-prefix and repo.clone-url. If clone-prefix is specified, all repos will get a clone url printed in the sidebar; the url is generated by clone-prefix + repo.url. Additionally, each repo can specify repo.clone-url which will override any such auto-generated url. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-12-02Merge branch 'stable'Lars Hjemli
* stable: Handle missing timestamp in commit/tag objects Set commit date on snapshot contents
2007-12-02Handle missing timestamp in commit/tag objectsLars Hjemli
When a commit or tag lacks author/committer/tagger timestamp, do not skip the next line in the commit/tag object. Also, do not bother to print timestamps with value 0 as it is close to certain to be bogus. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-16Add cell-spacing in htmlLars Hjemli
There are some browsers which don't support the border-spacing property Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-16Use tables for page layoutLars Hjemli
It feels like the Right Thing, and it fixes some rendering problems in a much used webbrowser. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-11Add support for "robots" meta-tagLars Hjemli
With this change, cgit will start to generate the "robots" meta-tag, using a default value of "index, nofollow". The default value can be modified with a new cgitrc variable, "robots". Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-11Generate valid html for "downloads" menu headerLars Hjemli
Noticed-by: http://validator.w3.org Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-11Fix html error detected by test-suiteLars Hjemli
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-05Add commit->msg_encoding, allocate msg dynamicly.Jonathan Bastien-Filiatrault
2007-11-03Don't show the the branch selector button if javascript is enabledLars Hjemli
Suggested-by: Olivier Ramonat <olivier@ramonat.fr> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-03Do not require javascript-enabled clientsLars Hjemli
A simple submit-button is all that's required to make the branch selector drop-down work on any client, so lets add one. Noticed-by: Olivier Ramonat <olivier@ramonat.fr> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-03Don't include current SHA1 in 'log' menu-itemLars Hjemli
This ensures that the menu-item always prints the log for the active branch. Predictability is good. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-03Don't include current path in menu linksLars Hjemli
The menu-links are a lot more predictable this way. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-03Fix search form action/hidden fieldsLars Hjemli
The search form didn't properly honor the current path, so this commit fixes cgit_fileurl() and add_hidden_formfields() to make the issue go away. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-11-03Add search parameters to cgit_log_linkLars Hjemli
This makes the [prev] and [next] links work correctly on search results. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-10-30Change the cgit layoutLars Hjemli
This modifies and hopefully improves the layout of all cgit pages: * Remove the header from all pages and replace it with a sidebar; most pages have sufficient width but many needs more height. * Add a dropdown-box to switch between branches, using a one-liner javascript to reload the current page in context of the selected branch. * Include refs found below refs/archives in the sidebar, appearing as a set of menuitems below a 'download' heading. * Include the brand new cgit logo Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-10-28Teach cgit_object_link() about tag objectsLars Hjemli
This makes random tag links more helpfull, e.g. when a branch head references a tag object, link to the tag page. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-10-28Teach log search about --grep, --author and --committerLars Hjemli
This makes the log searching more explicit, using a dropdown box to specify the commit field to match against. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-10-27Add links to the new refs page from summary pageLars Hjemli
If either branches or tags are filtered on the summary page, add a link to refs/heads and/or refs/tags right below the last branch/tag. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-07-22cgit_print_snapshot_links: use url to specify snapshot nameLars Hjemli
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-07-22Merge branch 'master' of git://git.klever.net/patchwork/cgitLars Hjemli
* 'master' of git://git.klever.net/patchwork/cgit: link raw blob from tree file view fix: changed view link to blob in summary. allow selective enabling of snapshots shorten snapshot names to repo basename introduce cgit_repobasename added snapshot filename to the link add plain uncompressed tar snapshort format introduced .tar.bz2 snapshots compress .tar.gz using gzip as a filter added a chk_non_negative check css: adjust vertical-align of commit info th cells add support for snapshot tarballs Conflicts: ui-summary.c Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-07-22Add ui-tag.cLars Hjemli
This file implements the tag-command, i.e. printing of annotated tags. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-07-21introduce cgit_repobasenameMichael Krelin
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-21added snapshot filename to the linkMichael Krelin
- 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-06-29Merge branch 'lh/menu'Lars Hjemli
* 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-29Add ofs argument to cgit_log_link and use it in ui-log.cLars Hjemli
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-26Do not include current path in the "tree" menu linkLars Hjemli
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-18Change "files" to "tree"Lars Hjemli
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-18Add version info from git-describeLars Hjemli
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-18Add more menuitems on repo pagesLars Hjemli
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-17Add cgit_diff_link()Lars Hjemli
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-17Add cgit_commit_link() + support for id=sha1 to commit viewLars Hjemli
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-17Add git_log_link() and fix bug in generic repolink functionLars Hjemli
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-17ui-shared: use strcmp() to compare stringsLars Hjemli
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-16Add and use cgit_tree_link()Lars Hjemli
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-05-31Use &amp; instead of & in URLs.Ondrej Jirman
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-23Bad html: it's nice to add alt-attributesLars Hjemli
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-23Bad html: <form> should have an action-attributeLars Hjemli
Don't know how the href-attribute got in there... Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-22Add cgit_print_age() functionLars Hjemli
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-18Enable url=value querystring parameterLars Hjemli
This makes is possible to use repo-urls like '/pub/scm/git/git.git' and even add path specifications, like '/pub/scm/git/git.git/log/documentation'. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-16Make git_pageurl handle NULL querystringsLars Hjemli
This is suddenly useful after the repo.defbranch-related changes. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-14Don't hardcode urls when SCRIPT_NAME is availableLars Hjemli
Also, let the makefile define the name of the installed cgi and use that definition as a default value for cgit_script_name variable. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2007-05-14ui-shared.c: fix whitespace breakageLars Hjemli
Signed-off-by: Lars Hjemli <hjemli@gmail.com>