aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeLines
...
| * | | ui-tree: Remove unnecessary path breadcrumb navigationGravatar Johan Herland2010-06-19-13/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The path breadcrumb navigation at the top of the 'tree' page has now been duplicated in ui-shared, which leaves the ui-tree implementation unnecessary. This patch removes the breadcrumb navigation from ui-tree, and moves the "(plain)" link that followed the breadcrumb when displaying blobs to the end of the next line, following the blob SHA1. Signed-off-by: Johan Herland <johan@herland.net> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * | | ui-shared: Teach "breadcrumb" navigation to path limit display beneath tab barGravatar Johan Herland2010-06-19-1/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a path limit is in effect, and displayed directly beneath the tab bar, it should offer breadcrumb navigation (like what the 'tree' page does), to allow changing the path limit easily. Implementing this requires a robust way to link back to the current page with a changed ctx->qry.path, but without losing track of the other query arguments. This is solved by adding the new cgit_self_link() function, which is then invoked repeatedly by the new cgit_print_path_crumbs() function while manipulating ctx->qry.path. Signed-off-by: Johan Herland <johan@herland.net> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * | | ui-shared: Display path limit directly beneath tab bar in relevant pagesGravatar Johan Herland2010-06-19-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Design-wise, the path is shown by "expanding" the grey border between the tab bar and the content area of the page to house the current path limit. This is only displayed on pages where the path limit is relevant, and only when a path limit is in effect. Signed-off-by: Johan Herland <johan@herland.net> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * | | ui-shared: Replace ctx.qry.path with ctx.qry.vpathGravatar Johan Herland2010-06-19-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In all cases where ui-shared uses ctx.qry.path, it is done so in the context of a in-project path, and not in the context in which the 'refs' page or the 'clone'-related functionality uses ctx.qry.path. Make this explicit by using ctx.qry.vpath instead. This path introduces no fundamental difference in functionality except for fixing some minor bugs, for example the Atom feed reference from a "$repo/refs/heads/" page. Note that the usage of ctx.qry.path in the other ui-<page>.c files is ok, since that code presumably is only executed in the context of its own <page>, so the correct interpretation of ctx.qry.path is never in question. Signed-off-by: Johan Herland <johan@herland.net> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * | | struct cgit_cmd: Differentiate between various usages of ctx.qry.pathGravatar Johan Herland2010-06-19-22/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For many commands/pages (e.g. 'tree', 'diff', 'plain', etc.), the ctx.qry.path argument is interpreted as a path within the "virtual" project directory structure. However, for some other commands (notably 'refs', and the clone-related commands) ctx.qry.path is used in a different context (as a more or less "real" path within the '.git' directory). This patch differentiates between these two usages of ctx.qry.path, by introducing a new variable - ctx.qry.vpath - which is equal to ctx.qry.path in the former case, and NULL in the latter. This will become useful in future patches when we want various pages and the links between them to preserve existing in-project paths. Signed-off-by: Johan Herland <johan@herland.net> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * | | ui-shared: Remove needless cgit_get_cmd() call, and refactor hc() accordinglyGravatar Johan Herland2010-06-19-19/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The call to cgit_get_cmd() and the following fallback handling (to "summary" or "repoindex") in cgit_print_pageheader() is unnecessary, since the same fallback handling was already done when ctx.qry.page was set when cgit_get_cmd() was called from process_request() in cgit.c. As such, hc() can also be rewritten to simply compare the given 'page' string against ctx.qry.page. Signed-off-by: Johan Herland <johan@herland.net> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * | | ui-shared: Improve const-ness in APIGravatar Johan Herland2010-06-19-65/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This is needed to prevent const-related warnings in later patches. Signed-off-by: Johan Herland <johan@herland.net> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * | | Remove unused variable in shared.cGravatar Johan Herland2010-06-19-1/+0
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Johan Herland <johan@herland.net> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * | | Fix small typo in cgitrc exampleGravatar Johan Herland2010-06-19-1/+1
| | |/ | |/| | | | | | | | | | Signed-off-by: Johan Herland <johan@herland.net> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | | Fix style of commit-filter links in commit-subject.Gravatar Johan Herland2010-06-19-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using the commit-filter functionality to add e.g. bug tracker links to commit messages, the style of those links is mangled by a CSS directive that is meant to only apply to decorations that are listed on the commit-subject line. Fix this directive to only apply to the decorations. Signed-off-by: Johan Herland <johan@herland.net> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | | Merge branch 'stable'Gravatar Lars Hjemli2010-06-19-1/+1
|\ \ \ | | |/ | |/|
| * | CGIT 0.8.3.2Gravatar Lars Hjemli2010-06-19-1/+1
| | | | | | | | | | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | | Merge branch 'ag/atom-fixes'Gravatar Lars Hjemli2010-06-19-2/+15
|\ \ \
| * | | Add 'max-atom-items' config variableGravatar Aaron Griffin2010-03-23-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows one to specify the items in the RSS feeds Signed-off-by: Aaron Griffin <agriffin@datalogics.com> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * | | Add all=1 query param for atom feedsGravatar Aaron Griffin2010-03-23-1/+6
| | |/ | |/| | | | | | | | | | | | | | | | Displays all items from all branches in one feed Signed-off-by: Aaron Griffin <agriffin@datalogics.com> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | | Merge branch 'lh/noweb'Gravatar Lars Hjemli2010-06-19-0/+2
|\ \ \
| * | | scan-tree: add test for noweb-file in repo dirGravatar Lars Hjemli2010-03-01-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | If such a file exists, the repo is not added to the repolist. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | | | Merge branch 'ml/plain-improvements-part1'Gravatar Lars Hjemli2010-06-19-8/+60
|\ \ \ \
| * | | | ui-plain: print directory listingsGravatar Mark Lodato2010-02-01-1/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a user requests a plain view of a tree (as opposed to a blob), print out a directory listing rather than giving a 404 Not Found. Also, fix a segfault when ctx->qry.path is NULL - i.e, when /plain is requested without a path. Signed-off-by: Mark Lodato <lodatom@gmail.com>
| * | | | ui-plain: more efficient walk_tree()Gravatar Mark Lodato2010-02-01-6/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Git's read_tree_recursive() already filters out the objects by pathname, so we only have to compare baselen to the expected. That is, no string matching is required. Additionally, if the requested path is a directory, the old code would walk through all of its immediate children. This is not necessary, this so we no longer do that. Signed-off-by: Mark Lodato <lodatom@gmail.com>
| * | | | ui-plain: remove unused curr_rev variableGravatar Mark Lodato2010-01-31-2/+0
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Mark Lodato <lodatom@gmail.com>
* | | | | Merge branch 'sn/subject-link'Gravatar Lars Hjemli2010-06-19-4/+25
|\ \ \ \ \
| * | | | | Optionally generate verbose parent linksGravatar Lars Hjemli2010-02-27-5/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new option 'enable-subject-links' must be used to enable the verbose parent-links in commit view. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * | | | | display subject instead of sha1 as link title of parentsGravatar Stefan Naewe2010-02-27-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Stefan Naewe <stefan.naewe@atlas-elektronik.com> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | | | | | Merge branch 'stable'Gravatar Lars Hjemli2010-04-08-0/+8
|\ \ \ \ \ \ | |_|_|_|/ / |/| | | | / | | |_|_|/ | |/| | |
| * | | | shared.c: avoid memory leak during diffGravatar Lars Hjemli2010-04-08-0/+8
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | | | | ui-tree: add link to plain view for blobs in tree listingGravatar Lars Hjemli2010-03-01-0/+2
| |_|_|/ |/| | | | | | | | | | | | | | | Suggested-by: Robert Weidlich <mail@robertweidlich.de> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | | | Use GIT-1.7.0Gravatar Lars Hjemli2010-02-27-1/+1
| | | | | | | | | | | | | | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | | | Merge branch 'html-updates' of git://github.com/MarkLodato/cgitGravatar Lars Hjemli2010-02-27-30/+58
|\ \ \ \ | |_|/ / |/| | |
| * | | html: properly percent-escape URLsGravatar Mark Lodato2010-02-10-4/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The only valid characters for a URL are unreserved characters a-zA-Z0-9_-.~ and the reserved characters !*'();:@&=+$,/?%#[] , as per RFC 3986. Everything else must be escaped. Additionally, the # and ? always have special meaning, and the &, =, and + have special meaning in a query string, so they too must be escaped. To make this easier, a table of escapes is now used so that we do not have to call fmt() for each character; if the entry is 0, no escaping is needed. Signed-off-by: Mark Lodato <lodatom@gmail.com>
| * | | html: make all strings 'const char *'Gravatar Mark Lodato2010-02-09-26/+26
| | |/ | |/| | | | | | | | | | | | | | | | | | | None of the html_* functions modify their argument, so they can all be 'const char *' instead of a simple 'char *'. This removes the need to cast (or copy) when trying to print a const string. Signed-off-by: Mark Lodato <lodatom@gmail.com>
* | | Merge branch 'stable'Gravatar Lars Hjemli2010-02-27-3/+3
|\ \ \ | |/ / |/| / | |/
| * Clear the whole contextGravatar Daniel Milde2010-02-27-1/+1
| | | | | | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * ui-shared.c: fix segfault when repo is emptyGravatar Florian Pritz2010-02-27-2/+2
| | | | | | | | | | | | | | | | | | PATH_INFO="/$REPONAME/commit/?id=1" QUERY_STRING="id=1" ./cgit.cgi triggers segfault when the repository is empty and therefore ctx.qry.head is unset Signed-off-by: Florian Pritz <bluewind@xssn.at> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Merge branch 'stable'Gravatar Lars Hjemli2009-12-12-4/+4
|\ \ | |/
| * CGIT 0.8.3.1Gravatar Lars Hjemli2009-12-12-1/+1
| | | | | | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Fix segfault on ppc when browsing treeGravatar Martins Polakovs2009-12-12-3/+3
| |
* | Add .tar.xz-snapshot supportGravatar Andreas Wiese2009-12-09-4/+10
| | | | | | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Merge branch 'lh/remote-branches'Gravatar Lars Hjemli2009-12-09-0/+18
|\ \
| * | Add support for remote branchesGravatar Lars Hjemli2009-11-08-0/+18
| | | | | | | | | | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | | Merge branch 'ro/ssdiff'Gravatar Lars Hjemli2009-12-09-25/+586
|\ \ \
| * | | In side-by-side diff, add support for marking individual characters.Gravatar Ragnar Ouchterlony2009-11-07-25/+130
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refuses to do so if the left hand side of the diff has different amount of differing lines to the right hand side to avoid confusion. Note that I use the naive dynamic programming approach for calculating the longest common subsequence. We could probably be more efficient by using a better algorithm. The LCS calculating function is O(n*m) and uses up n*m amount of memory too (so if we we compare two strings of length 100, I use an array of 10000 for calculating the LCS). Might want to not calculate LCS if the length of the line is too large. Signed-off-by: Ragnar Ouchterlony <ragnar@lysator.liu.se>
| * | | Fixed side-by-side diff bugs related to binary diff and more.Gravatar Ragnar Ouchterlony2009-09-17-6/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The fixed bugs: * "Binary files differ" did not show up either in unidiff or side-by-side-diff. * Subproject diffs did not work for side-by-side diffs. * The ssdiff link on diff pages did not conserve the path. Signed-off-by: Ragnar Ouchterlony <ragnar@lysator.liu.se> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * | | Polishing of how the side-by-side diff looks.Gravatar Ragnar Ouchterlony2009-09-17-30/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Aligned all different files, so that all side-by-side tables look the same. Also made sure that the tables take up the whole browser width. Also various changes to the css to make things easier on the eye. Signed-off-by: Ragnar Ouchterlony <ragnar@lysator.liu.se> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * | | Add possibility to switch between unidiff and side-by-side-diff.Gravatar Ragnar Ouchterlony2009-09-17-16/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A new config option side-by-side-diffs added, defaulting to 0, meaning unidiff. Also a query option (ss) is used toggle this. In the commit page you can switch between the two diff formats by clicking on the link on the "commit"-row, to the right of (patch). In the diff page you can switch by using the link at the start of the page. All commit-links and diff-links will remember the choice. Signed-off-by: Ragnar Ouchterlony <ragnar@lysator.liu.se> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * | | First version of side-by-side diff.Gravatar Ragnar Ouchterlony2009-09-17-2/+325
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This constitutes the first prototype of a side-by-side diff. It is not possible to switch between unidiff and side-by-side diff at all at this stage. Signed-off-by: Ragnar Ouchterlony <ragnar@lysator.liu.se> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | | | Merge branch 'master' of http://op-co.de/cgitGravatar Lars Hjemli2009-12-09-17/+31
|\ \ \ \
| * | | | "max-blob-size" config var to limit generated HTML sizeGravatar Georg Lukas2009-11-28-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes it is not feasible to generate the HTML pretty-print for large files, especially if a source-filter is involved or binary data is to be displayed. The "max-blob-size" config var allows to disable HTML output for blobs bigger than X KBytes. Plain downloads are not affected. Signed-off-by: Georg Lukas <georg@op-co.de>
| * | | | cgit.css: highlight directories in treeGravatar Georg Lukas2009-11-28-0/+5
| | | | |
| * | | | syntax highlighting for all formats supported by "highlight"Gravatar Georg Lukas2009-11-19-17/+12
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The highlight tool can be given any of the supported file extensions as its -S parameter. This patch replaces the case-switch by extracting the extension from the supplied file name and passing it to highlight. However, this requires a shell supporting the ${var##pattern} syntax, like dash or bash. Unknown extensions cause a fall-back to plain text using the --force switch. Error messages are redirected to /dev/null. A special case maps Makefile and Makefile.* to the "mk" extension. The total overhead is reduced by calling "exec highlight". No forks are needed during script execution. Signed-off-by: Georg Lukas <georg@op-co.de>