summaryrefslogtreecommitdiff
path: root/ui-clone.h (unfollow)
Commit message (Collapse)AuthorFilesLines
2010-06-19ui-shared: Remove needless cgit_get_cmd() call, and refactor hc() accordinglyJohan Herland1-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>
2010-06-19ui-shared: Improve const-ness in APIJohan Herland2-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>
2010-06-19Remove unused variable in shared.cJohan Herland1-1/+0
Signed-off-by: Johan Herland <johan@herland.net> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-06-19Fix small typo in cgitrc exampleJohan Herland1-1/+1
Signed-off-by: Johan Herland <johan@herland.net> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-02-28ui-tree: add link to plain view for blobs in tree listingLars Hjemli1-0/+2
Suggested-by: Robert Weidlich <mail@robertweidlich.de> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-02-27Use GIT-1.7.0Lars Hjemli2-1/+1
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-02-27Clear the whole contextDaniel Milde1-1/+1
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-02-27ui-shared.c: fix segfault when repo is emptyFlorian Pritz1-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>
2010-02-09html: properly percent-escape URLsMark Lodato1-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>
2010-02-08html: make all strings 'const char *'Mark Lodato2-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>
2009-12-12CGIT 0.8.3.1v0.8.3.1Lars Hjemli1-1/+1
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-12-12Fix segfault on ppc when browsing treeMartins Polakovs3-3/+3
2009-12-08Add .tar.xz-snapshot supportAndreas Wiese1-4/+10
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-12-08Don't crash when a repo-specific readme file is usedSami Kyöstilä1-2/+2
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-11-28"max-blob-size" config var to limit generated HTML sizeGeorg Lukas4-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>
2009-11-28cgit.css: highlight directories in treeGeorg Lukas1-0/+5
2009-11-19syntax highlighting for all formats supported by "highlight"Georg Lukas1-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>
2009-11-07Add support for remote branchesLars Hjemli5-0/+18
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-11-07shared.c: return original errnoLars Hjemli1-3/+5
Noticed-by: Andreas Schwab <schwab@linux-m68k.org> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-11-07Add NO_OPENSSL optionMikhail Gusarov1-3/+12
Linking with OpenSSL is not always desirable. Add NO_OPENSSL option to use SHA-1 code bundled with Git. Signed-off-by: Mikhail Gusarov <dottedmag@dottedmag.net>
2009-11-07In side-by-side diff, add support for marking individual characters.Ragnar Ouchterlony2-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>
2009-11-07Close fd on error in readfile()Rys Sommefeldt1-2/+7
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-11-07Nov is the correct abbreviationDanijel Tašov1-1/+1
2009-10-16ui-shared.c: prettify download links when generated from tag pageLars Hjemli1-2/+7
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-10-06ui-tag: make output more similar to commit viewLars Hjemli1-6/+6
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-10-06ui-tag: add snapshot linksAlexey Nezhdanov1-0/+12
Signed-off-by: Alexey Nezhdanov <snakeru@gmail.com> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-10-06Skip leading "/" in url querystring valueStefan Bühler1-0/+2
Makes it easier to rewrite :) lighttpd-sandbox: rewrite "/cgit.cgi?url=%{enc:request.path}&%{request.query}"; Signed-off-by: Stefan Bühler <source@stbuehler.de> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-09-20Fix repolist search links with virtual rootGeoff Johnstone2-1/+2
Signed-off-by: Geoff Johnstone <geoff.johnstone@googlemail.com> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-09-16Fixed side-by-side diff bugs related to binary diff and more.Ragnar Ouchterlony2-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>
2009-09-16Polishing of how the side-by-side diff looks.Ragnar Ouchterlony4-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>
2009-09-16Add possibility to switch between unidiff and side-by-side-diff.Ragnar Ouchterlony9-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>
2009-09-16First version of side-by-side diff.Ragnar Ouchterlony5-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>
2009-09-14cgitrc.5.txt: Change repo.group to section in example config.Loui Chang1-4/+4
Signed-off-by: Loui Chang <louipc.ist@gmail.com> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-09-14cgitrc.5.txt: Add mansource and manmanual.Loui Chang1-0/+3
This prevents FIXMEs from appearing. Signed-off-by: Loui Chang <louipc.ist@gmail.com> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-09-13CGIT 0.8.3v0.8.3Lars Hjemli1-1/+1
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-09-13CGIT 0.8.2.2v0.8.2.2Lars Hjemli1-1/+1
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-09-13Use GIT-1.6.4.3Lars Hjemli4-3/+3
Signed-off-by: Lars Hjemli <larsh@slackbox.hjemli.net>
2009-09-06ui-plain.c: only return the blob with the specified pathLars Hjemli1-1/+2
When a path to a directory was specified for the 'plain' view, each blob in the directory used to be returned to the client. This patch fixes the issue by matching the path of each blob against the requested path. Noticed-by: Lars Stoltenow <penma@penma.de> Signed-off-by: Lars Hjemli <larsh@slackbox.hjemli.net>
2009-08-24cgit.c: respect repo-local 'snapshots' option for --scan-pathLars Hjemli1-0/+10
The repo-specific 'snapshots' option is bitwise AND'ed with the global 'snapshots' option during parsing, and since the global cgitrc hasn't been parsed when --scan-path is processed the global 'snapshots' will always be 0 (i.e. no repo-specific 'snapshots' setting will have any effect). This patch fixes the issue by setting the global 'snapshots' mask to 0xFF (hence relying on later parsing of the generated cgitrc repolist to do the right thing). Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-08-24cgit.c: only print first line of repo.desc in print_repo()Lars Hjemli1-2/+14
Since repo.desc might have been populated by reading the 'description' file in GIT_DIR, it may contain newlines. And by printing the literal value, we may then generate an invalid cgitrc include-file. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-08-24Add and use cgit_find_stats_periodname() in print_repo()Lars Hjemli3-0/+12
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-08-24cgit.c: generate repo.snapshots in print_repo()Lars Hjemli1-0/+25
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-08-24cgit.c: add missing options to print_repo()Lars Hjemli1-0/+18
Note: print_repo() still ignores repo.max-stats and repo.snapshots, which both requires additional work since these settings are represented internally as an enum and a bitmap. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-08-24shared.c: initialize cgit_repo structs properlyLars Hjemli1-0/+1
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-08-24Add config option 'enable-filter-overrides'Lars Hjemli3-11/+26
This option must be enabled if repo-specific cgitrc files should be allowed to override any of the 'filter' options. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-08-24cgitrc.5.txt: fix markup errorsLars Hjemli1-9/+10
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-08-24ui-repolist: handle empty sections similar to NULL sectionsLars Hjemli2-7/+12
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-08-24Add support for repo-local cgitrc fileLars Hjemli5-13/+39
When recursively scanning a directory tree looking for git repositories, cgit will now parse cgitrc files found within such repositories. The repo-specific config files can include any repo-specific options except 'repo.url' and 'repo.path'. Also, in such config files the 'repo.' prefix can not be used, i.e. the valid options then becomes: * name * clone-url * desc * ower * defbranch * snapshots * enable-log-filecount * enable-log-linecount * max-stats * module-link * section * about-filter * commit-filter * source-filter * readme Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-08-24cgit.c: refactor repo_config() from config_cb()Lars Hjemli1-41/+48
The new function repo_config() is used to handle all 'simple' repo options, for the following reasons: * code readability * parser performance * upcoming support for repo-local cgitrc files during scanning Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-08-24ui-repolist.c: sort by section name, repo name as defaultLars Hjemli1-0/+15
When no sorting is requested by the client, cgit will now sort by section name followed by repo name. This allows repos to be registered/ discovered independently of their display order. Signed-off-by: Lars Hjemli <hjemli@gmail.com>